天天看點

《Power Designer系統分析與模組化實戰》——1.1 軟體模組化

本節書摘來自華章計算機《power designer系統分析與模組化實戰》一書中的第1章,第1.1節,作者:謝星星,朱婵著, 更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

在軟體工程的整個實施過程中都采用模型而非文字來描述,這樣的實作過程稱為軟體全程模組化。

軟體全程模組化的特點如下:

1)模型互相之間是有關聯的,模型代替文字和圖形等成為軟體工程過程各階段展現的主體,通過模組化的方式将原來純文字加圖形描述的各種文檔模型化,使從需求到代碼能夠統一起來,實作需求的變動直接影響代碼的變化,提高代碼對需求的有效性聯系。

2)解決過去經常出現的“編碼改動, 文檔就失效”的問題。

随着軟體工程理論研究的深入和軟體技術的不斷發展,軟體模組化也日益完善。盡管不同的軟體模組化平台的模組化工作存在差異,但大體可以把軟體模組化分成3類,即業務模組化、資料模組化和應用程式模組化。

1.1.1 業務模組化

業務模組化(business modeling)是以軟體模型方式描述企業管理和業務涉及的對象和要素,以及它們的屬性、行為和彼此關系,業務模組化強調以體系的方式來了解、設計和構架企業資訊系統。

業務模組化的目的是對業務進行模組化,主要包括對業務流程模組化、對業務組織模組化、改進業務流程、領域模組化等方面。power designer提供的企業架構模型和業務處理模型等都屬于業務模組化的範疇。

1.1.2 資料模組化

資料模組化是指對現實世界各類資料的抽象組織,确定資料庫需管轄的範圍、資料的組織形式等,直至轉化成現實的資料庫。

資料模組化大緻分為3個階段,分别為概念模組化階段、邏輯模組化階段和實體模組化階段。其中,概念模組化和邏輯模組化階段與資料庫廠商沒有關系,換言之,與mysql、oracle、informix、db2或sql server等資料庫沒有關系。實體模組化階段和資料庫廠商存在很大的聯系,因為不同廠商對同一功能的支援方式不同,如高可用性、讀寫分離、索引和分區等。

power designer的概念資料模型對應概念模組化階段,在概念模組化階段,主要做3件事:

1)客戶交流。

2)了解需求。

3)形成實體。

power designer的邏輯資料模型對應邏輯模組化階段。在邏輯模組化階段,需要将實體細化成具體的表,同時豐富表結構。該階段的産物是,可以在資料庫中生成的具體表及其他資料庫對象,如主鍵、外鍵、屬性列、索引、限制、視圖和存儲過程等。

power designer的實體資料模型對應實體模組化階段。在實體模組化階段,可以将在邏輯模組化階段建立的各種資料庫對象進一步細化,生成相應的sql代碼,以便用于建立具體資料庫對象(大多數模組化工具都可以自動生成ddl sql代碼)。但是這個階段不僅僅需要建立資料庫對象,針對業務需求,設計人員也可能進行資料拆分(水準或垂直拆分)等操作。

1.1.3 應用程式模組化

統一模組化語言或标準模組化語言(unified modeling language,uml)是始于1997年的一個omg标準,它是一個支援模型化和軟體系統開發的圖形化語言,為軟體開發的所有階段提供模型化和可視化支援,包括由需求分析到規格,再到構造和配置。面向對象的分析與設計方法的發展在20世紀80年代末至20世紀90年代中出現了一個高潮,uml是這個高潮的産物。它不僅統一了booch、rumbaugh和jacobson的表示方法,而且對其做了進一步的發展,并最終統一為大衆所接受的标準模組化語言。

應用程式日漸複雜,而且重要性也與日俱增。為了幫助管理這種複雜性,需要為 web 應用程式模組化。可以使用uml對應用程式模組化,power designer的面向對象模組化中提供用例圖、時序圖、類圖和包圖等uml圖形用于對應用程式模組化。