企業(yè)管理信息系統(tǒng)對組件化數(shù)據(jù)庫的需求
企業(yè)ERP管理信息系統(tǒng)需要不斷地變化和發(fā)展。達(dá)到變化和發(fā)展目的的手段一般分為兩種,一種是采用漸進(jìn)的方式,通過對原有系統(tǒng)的升級、改造與整合,使系統(tǒng)能夠適應(yīng)發(fā)展的需要;另一種是革命性的,采用最先進(jìn)的技術(shù)、最先進(jìn)的管理模式,重新設(shè)計(jì)系統(tǒng)。
當(dāng)組織沒有計(jì)算機(jī)信息系統(tǒng)或者原有的計(jì)算機(jī)信息系統(tǒng)已經(jīng)完全不能適應(yīng)需求時(shí)。需要進(jìn)行徹底的變革。需要進(jìn)行完全徹底的整體規(guī)劃,采用最先進(jìn)的技術(shù)對系統(tǒng)進(jìn)行設(shè)計(jì)。然而,在大部分情況下。組織需要保護(hù)原有的投資,需要充分利用己有的各種資源,需要在原有管理信息系統(tǒng)運(yùn)行中進(jìn)行持續(xù)的改進(jìn),這時(shí),管理信息系統(tǒng)的演化需要通過整合與擴(kuò)展來完成。例如,企業(yè)管理信息系統(tǒng)向電子商務(wù)的整合與擴(kuò)展就是按漸進(jìn)方式實(shí)現(xiàn)自身的發(fā)展。
(一)企業(yè)管理信息系統(tǒng)開發(fā)需求
在組件方法的研究中,較多的研究是在開發(fā)過程、建模等方面,一直較少討論組件與數(shù)據(jù)庫關(guān)系、組件方法中的數(shù)據(jù)庫設(shè)計(jì)問題。但數(shù)據(jù)庫作為整個(gè)應(yīng)用系統(tǒng)的一個(gè)重要組成部分,是任何一個(gè)完備的、完善的軟件開發(fā)方法所必須具有的。傳統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)是面向整個(gè)應(yīng)用業(yè)務(wù),在傳統(tǒng)方法中將應(yīng)用軟件系統(tǒng)分為業(yè)務(wù)邏輯的開發(fā)和數(shù)據(jù)庫設(shè)計(jì)兩個(gè)平行方向,業(yè)務(wù)邏輯的任何模塊都能無約束地訪問數(shù)據(jù)庫,如果業(yè)務(wù)邏輯是組件化的,則這種訪問嚴(yán)重約束了組件的自治能力,而組件的自治能力要求直接與組件關(guān)聯(lián)的一切都應(yīng)該是組件的一部分。
(二)企業(yè)管理信息系統(tǒng)整合與擴(kuò)展的需求
擴(kuò)展與整合必須充分考慮對原有信息資源和原有投資的保護(hù),以提高用戶的投資效益。信息資源是組織的寶貴財(cái)富,也是信息系統(tǒng)價(jià)值的體現(xiàn)。隨著時(shí)代的進(jìn)步,信息設(shè)備的價(jià)值越來越小,但信息資源的價(jià)值卻越來越高。保護(hù)信息資源既是信息系統(tǒng)升級與整合的一個(gè)理由,也是其實(shí)現(xiàn)過程中所必須達(dá)到的一個(gè)目標(biāo),保護(hù)信息資源不僅僅是將歷史數(shù)據(jù)完整地遷移到新的系統(tǒng)中,而且還要確保這些歷史數(shù)據(jù)適應(yīng)新的應(yīng)用。
企業(yè)管理信息系統(tǒng)的整合包含了信息資源系統(tǒng)整合與應(yīng)用軟件整合,往往伴隨有系統(tǒng)的重構(gòu),在這種情況下,支撐系統(tǒng)的環(huán)境往往沒有變化,由于客戶業(yè)務(wù)流程的變化等因素,需要系統(tǒng)功能和信息資源存儲結(jié)構(gòu)進(jìn)行相應(yīng)的調(diào)整,就產(chǎn)生系統(tǒng)整合的需求,這個(gè)過程中往往伴隨有數(shù)據(jù)庫結(jié)構(gòu)的改變和應(yīng)用軟件程序的修改。企業(yè)管理信息系統(tǒng)的擴(kuò)展是指系統(tǒng)內(nèi)部沒有需求的變化和支撐系統(tǒng)環(huán)境的變化,系統(tǒng)需要與外部系統(tǒng)進(jìn)行數(shù)據(jù)交換或功能集成,與其他系統(tǒng)一起構(gòu)成更大的系統(tǒng),將這種過程稱為系統(tǒng)擴(kuò)展。企業(yè)的擴(kuò)展性升級與整合是包括系統(tǒng)擴(kuò)展和應(yīng)用軟件系統(tǒng)的整合,企業(yè)原有信息系統(tǒng)并非是按組件方法開發(fā)的,但可以實(shí)施組件化的包裝,盡管包裝了的原有信息系統(tǒng)仍不一定是組件。對原有信息系統(tǒng)需擴(kuò)展的業(yè)務(wù)按組件方法開發(fā)成一個(gè)組件,并按組件方法將組件化包裝的原有信息系統(tǒng)與擴(kuò)展業(yè)務(wù)的組件合成為一個(gè)新的、更大的系統(tǒng)。組件化包裝原有信息系統(tǒng),就是根據(jù)擴(kuò)展業(yè)務(wù)與原有信息系統(tǒng)的業(yè)務(wù)關(guān)聯(lián)開發(fā)出基于原有信息系統(tǒng)的連接組件,原有信息系統(tǒng)作為該類組件的插座,通過該類組件實(shí)現(xiàn)原有信息系統(tǒng)實(shí)現(xiàn)與擴(kuò)展業(yè)務(wù)系統(tǒng)的功能和數(shù)據(jù)的集成與整合。
面向企業(yè)信息管理的組件數(shù)據(jù)完備性
組件化應(yīng)用軟件的外部信息資源來源分為三類:個(gè)別數(shù)據(jù)、數(shù)據(jù)文件、數(shù)據(jù)庫。本文只討論數(shù)據(jù)庫中的數(shù)據(jù)。組件的數(shù)據(jù)完備性含義:是指組件作為一種高度自治的軟件,在獨(dú)立發(fā)布和部署,以及協(xié)同性合成是建立在一個(gè)統(tǒng)一的數(shù)據(jù)上,它確定對數(shù)據(jù)全部操作需求,確定了數(shù)據(jù)的邊界,邊界中的數(shù)據(jù)完全滿足組件對數(shù)據(jù)的要求。
若僅是應(yīng)用系統(tǒng)業(yè)務(wù)邏輯組件化,組件仍是直接連接數(shù)據(jù)庫,組件的重用性、可替換性將大大降低,組件之間通過數(shù)據(jù)庫的關(guān)聯(lián)耦合增大。在某粒度層次上的組件建立數(shù)據(jù)庫表單集合,要在兩個(gè)方向上符合組件開發(fā)的要求,即這種粒度應(yīng)保證組件對表單集的完整性、安全性、并發(fā)性、事務(wù)性的管理,另一方面又要保證組件的重用性和可替換性。該粒度組件應(yīng)為面向業(yè)務(wù)的組件,因?yàn)橄到y(tǒng)的數(shù)據(jù)都是具有業(yè)務(wù)性的。比面向業(yè)務(wù)的組件更小粒度的組件,由于不是面向業(yè)務(wù)的,其數(shù)據(jù)不具有業(yè)務(wù)性,而無法明確數(shù)據(jù)邊界,得以實(shí)現(xiàn)組件的數(shù)據(jù)完備。比面向業(yè)務(wù)的組件更大粒度的組件,則是基于數(shù)據(jù)庫而回歸傳統(tǒng)。面向業(yè)務(wù)的組件是具有高度自治能力的組件,定義數(shù)據(jù)庫是該組件的一部分,面向業(yè)務(wù)的組件貫穿于從需求分析、設(shè)計(jì)、實(shí)施、測試、部署整個(gè)開發(fā)生命周期,因此,面向業(yè)務(wù)的數(shù)據(jù)庫設(shè)計(jì)具有業(yè)務(wù)上的整體性和一致性。
面向業(yè)務(wù)的組件的內(nèi)部組件和外部組件,通過該面向業(yè)務(wù)的組件中的數(shù)據(jù)庫管理組件實(shí)現(xiàn)與數(shù)據(jù)庫連接和操作。在設(shè)計(jì)階段,按業(yè)務(wù)設(shè)計(jì)出數(shù)據(jù)庫表單集,面向業(yè)務(wù)的組件合成應(yīng)用系統(tǒng)時(shí),面向業(yè)務(wù)的組件所對應(yīng)的數(shù)據(jù)庫表單集在運(yùn)行時(shí)也相應(yīng)合成一個(gè)單一物理的數(shù)據(jù)庫。將符合上述要求的數(shù)據(jù)庫表單集稱為組件化表單集。
企業(yè)管理信息系統(tǒng)的組件化數(shù)據(jù)庫設(shè)計(jì)與應(yīng)用
(一)企業(yè)管理信息系統(tǒng)的組件化數(shù)據(jù)庫設(shè)計(jì)
要解決和實(shí)現(xiàn)組件化的數(shù)據(jù)庫設(shè)計(jì),就是要實(shí)現(xiàn)組件化表單集。在設(shè)計(jì)階段,以面向業(yè)務(wù)組件來設(shè)計(jì)組件化表單集,組件可以是對象也可以是函數(shù)集合,若面向業(yè)務(wù)組件為函數(shù)集合,則將具有功能性的面向業(yè)務(wù)組件與組件化表單集分別進(jìn)行設(shè)計(jì);若面向業(yè)務(wù)組件為對象集合。則按照對象模型與關(guān)系型數(shù)據(jù)庫的映射來設(shè)計(jì)組件化表單集,而對象模型到關(guān)系型數(shù)據(jù)庫的映射主要困難是對象繼承關(guān)系的轉(zhuǎn)換,這種繼承關(guān)系的轉(zhuǎn)換有三種方式來實(shí)現(xiàn)。分別獨(dú)立地設(shè)計(jì)對象模型和關(guān)系模型,還能更大地提高系統(tǒng)的性能和伸縮性。
組件化表單集要在兩個(gè)層面上規(guī)范化,在單個(gè)組件化表單集內(nèi)規(guī)范化;在組件化表單集之間規(guī)范化。由于是以單個(gè)組件化表單集內(nèi)規(guī)范化為基礎(chǔ),在組件化表單集之間存在著數(shù)據(jù)重復(fù)性較高的冗余問題,這是組件化表單集設(shè)計(jì)所付出的代價(jià),應(yīng)嚴(yán)格控制,組件化表單集之問的表單重復(fù)
應(yīng)用不同名稱加以區(qū)別。
作為應(yīng)用系統(tǒng)需要有數(shù)據(jù)庫的支撐,并且作為解決具有數(shù)據(jù)庫支撐的組件化應(yīng)用系統(tǒng)方法是:一方面對數(shù)據(jù)庫組件化設(shè)計(jì);另一方面對面向業(yè)務(wù)組件劃分層次,在資源層上建立一個(gè)數(shù)據(jù)庫管理組件為整個(gè)業(yè)務(wù)提供數(shù)據(jù)庫的數(shù)據(jù)服務(wù)接口,它是一個(gè)面向業(yè)務(wù)組件中唯一與數(shù)據(jù)庫連接的組件。在數(shù)據(jù)庫管理組件中嵌入SQL訪問,實(shí)現(xiàn)數(shù)據(jù)庫到面向業(yè)務(wù)組件的映射,數(shù)據(jù)庫管理組件隱蔽了面向業(yè)務(wù)組件中的其它組件對數(shù)據(jù)庫的訪問,它負(fù)責(zé)數(shù)據(jù)的存取,并提供了數(shù)據(jù)的存取接口。
數(shù)據(jù)庫管理組件實(shí)現(xiàn)了數(shù)據(jù)存取與數(shù)據(jù)使用分離,具有較高的重用性。在組件化的數(shù)據(jù)庫設(shè)計(jì)方法中。對具有一對多關(guān)系的實(shí)體轉(zhuǎn)換成關(guān)系模型的表時(shí),與傳統(tǒng)方法一樣可生成兩個(gè)表。這兩個(gè)表根據(jù)對應(yīng)實(shí)體所屬的業(yè)務(wù)歸屬于相應(yīng)的組件化表單集。對具有多對多關(guān)系的實(shí)體轉(zhuǎn)換成關(guān)系模型的表時(shí),生成三個(gè)表即兩個(gè)實(shí)體對應(yīng)表和一個(gè)實(shí)體之間的多對多關(guān)系對應(yīng)表,兩個(gè)實(shí)體對應(yīng)表根據(jù)對應(yīng)實(shí)體所屬的業(yè)務(wù)歸屬于相應(yīng)的組件化表單集,若這兩個(gè)實(shí)體屬于同一個(gè)業(yè)務(wù),則實(shí)體之間的多對多關(guān)系對應(yīng)表也歸屬于該業(yè)務(wù)的組件化表單集;若這兩個(gè)實(shí)體屬于不同的業(yè)務(wù),則實(shí)體之間的多對多關(guān)系對應(yīng)表歸屬于協(xié)作組件的組件化表單集。
(二)企業(yè)管理信息系統(tǒng)的組件化數(shù)據(jù)完整性管理
在組件方法中,組件要具有高度的自治,就需由組件去管理數(shù)據(jù)庫數(shù)據(jù)完整性,而不是由DBMS去管理數(shù)據(jù)庫數(shù)據(jù)完整性。對關(guān)系型的數(shù)據(jù)庫組件要實(shí)現(xiàn)參照完整性,則一個(gè)面向業(yè)務(wù)組件中的組件所使用的數(shù)據(jù)庫中的數(shù)據(jù)是跨組件化表單集的,那么該組件可通過自己的面向業(yè)務(wù)組件中的數(shù)據(jù)庫管理組件進(jìn)行連接,要注意的是表單外碼的連接不能采用DBMS的連接.這里的表單外碼只是邏緝意義上的而非物理的,數(shù)據(jù)庫管理組件通過表單外碼檢索出外部組件化表單集中的數(shù)據(jù)。
由于表單外碼作為數(shù)據(jù)庫管理組件的接口中的一部分,使用上具有更大的靈活性。由于使用組件化表單集之間數(shù)據(jù)時(shí),表單外碼的連接不能采用DBMS的連接,而只能采用數(shù)據(jù)庫管理組件進(jìn)行連接,確保了面向業(yè)務(wù)組件的數(shù)據(jù)完備和數(shù)據(jù)庫的組件化,而且保證了系統(tǒng)的完整性和一致性。數(shù)據(jù)庫的觸發(fā)器主要作用就是能夠?qū)崿F(xiàn)由主碼和外碼所不能保證的、復(fù)雜的參照完整性和數(shù)據(jù)的一致性。組件化的數(shù)據(jù)庫設(shè)計(jì)時(shí),數(shù)據(jù)庫的觸發(fā)器可嵌入到數(shù)據(jù)庫管理組件中,考慮到面向業(yè)務(wù)組件的組件化表單集可能是分布的、由不同的DBMS管理的,不同的數(shù)據(jù)庫它的觸發(fā)器也不同,若仍將數(shù)據(jù)庫的觸發(fā)器嵌入到數(shù)據(jù)庫管理組件中,則組件的可重用性、可替換性將大大降低,在這種情況下,應(yīng)避免使用數(shù)據(jù)庫的觸發(fā)器。
對企業(yè)ERP管理信息系統(tǒng)的信息資源進(jìn)行組件化分析與設(shè)計(jì),增加軟件的復(fù)雜度、增加了軟件開發(fā)的前期投入,且有一定的數(shù)據(jù)冗余度等問題。但組件化的應(yīng)用系統(tǒng)的維護(hù)和升級變得簡單和容易,而組件又有高重用性、可替換性。從長遠(yuǎn)的角度是降低了軟件成本和企業(yè)投入。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:ERP系統(tǒng)組件化的分析與設(shè)計(jì)
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10819915212.html