2. 需求分析
由上面所提供的需求我們可以提煉出以下幾個類:
名稱 描述 Customer 客戶,包含屬性有:Name(名字)、Phone(聯系電話) Address(住址) Person 個人客戶,除了包括客戶的屬性外還有Sex(性別)屬性 Company 公司客戶,其具有Customer的全部屬性 Car 汽車,包含的屬性有ID(汽車編號) Name(汽車名稱) CarType(汽車型號) CarSell 汽車的銷售記錄,包含的屬性有BuyDate(購車時間)Fee(價格)各個類之間的對應關系如下:
Person和Company都是Customer的子類,它們都擁有Customer的屬性。汽車的銷售記錄中包含所銷售的車輛,CarSell和Car有一對一或一對多的對應關系,也就是一條銷售記錄可能對應多個車輛,同樣客戶和銷售記錄也有一對一或一對多的對應關系。
3. 設計模型
根據上面的分析結果我們可以開始從ECO中進行建模,首先選擇模型視圖,打開CoreClasses包,然後雙擊CoreClasses打開模型設計面板。
Tool Palette 中的UML Class Diagram 中共包含6個組件他們分別是:
名稱 描述 Eco Package 模型包,如果系統結構復雜可用其來進行分解以降低復雜度,CoreClasses包是ECO Application Wizard默認生成的包 Class 類 Generalization/Implementation 繼承關系 Association 聯合關系 Note 注釋 Note Link 注釋鏈接首先我們將一個Class拖放到設計器中,將其命名為Customer,再點擊右鍵選擇 Add →Attribute為其添加一個屬性,並設置該屬性的名稱為"Name"類型為String。在屬性的類型設置中,你可以輸入Delphi支持的類型。同過設置Alias屬性還可以在模型中顯示中文別名,方便我們進行建模。Class常用的屬性如下:
屬性名 默認值 描述 Abstract False 抽象類 Sealed False 能否被繼承 Alias '' 別名,顯示在模型編輯器中的名字 Persistence persistent 是否被存儲 DefaultStringRepresentation '' 默認顯示字符,可將其設置為關鍵的屬性名