銷售管理系統(tǒng)的UML分析與設計_第1頁
銷售管理系統(tǒng)的UML分析與設計_第2頁
銷售管理系統(tǒng)的UML分析與設計_第3頁
銷售管理系統(tǒng)的UML分析與設計_第4頁
銷售管理系統(tǒng)的UML分析與設計_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上銷售管理系統(tǒng)的UML分析與設計作者:王文豪摘 要 銷售管理系統(tǒng)是現(xiàn)代企業(yè)管理系統(tǒng)的一個重要組成部分,傳統(tǒng)的系統(tǒng)分析設計方法已經(jīng)難以保證軟件開發(fā)的效率和質量,通過將UML應用于銷售管理系統(tǒng)建模,可以加速軟件開發(fā)進程,提高軟件質量,支持動態(tài)的業(yè)務需求,并方便地集成已有的企業(yè)管理資源。 關鍵詞 銷售管理系統(tǒng);UML;分析;實現(xiàn)1 引言當前社會對信息系統(tǒng)的需求日益增長,需求變化也越來越快,軟件開發(fā)的技術發(fā)展方向已經(jīng)從“提升被開發(fā)系統(tǒng)的執(zhí)行效率”轉變?yōu)椤疤嵘_發(fā)效率”。面向對象(OO)技術降低了解決方法域與問題域的差別,提供了良好的復用機制,能夠更加有效提高軟件開發(fā)效率,完全順

2、應了軟件開發(fā)技術的發(fā)展方向。 UML(The Unified Modeling Language,即統(tǒng)一建模語言) 是一個通用的標準建模語言,可以對復雜的系統(tǒng)建立可視化系統(tǒng)模型,目前已經(jīng)被工業(yè)標準組織OMG(Object Management Group)接受,一經(jīng)推出便得到許多著名計算機廠商如Microsoft,HP,IBM,Oracle等支持,在國際上應用日益廣泛。本文通過一個銷售管理系統(tǒng)的分析與設計,闡述如何通過UML降低開發(fā)難度和提高開發(fā)效率。2 銷售管理系統(tǒng)的基本特征和功能模塊本系統(tǒng)以“訂單”為核心,構建出了以“客戶”為中心的管理模式。該系統(tǒng)具有以下一些特征:(1) 先進的

3、系統(tǒng)結構,面向銷售流程,能適應原有銷售工作流程并進行合理的改進,從而更貼近實際的應用;(2) 針對大型企業(yè)銷售管理人員多,銷售管理復雜的特點,通過系統(tǒng)提供的靈活的人員權限設置和全面的財務核算方式,實現(xiàn)真正的銷售網(wǎng)絡化辦公;(3) 在實現(xiàn)訂單的電子化、工作流程的數(shù)字化同時,幫助公司領導提高決策的科學化水平;(4) 通過對客戶信息的管理,實現(xiàn)對客戶廣告走勢和重要客戶情況統(tǒng)計和分析。整個系統(tǒng)操作業(yè)務人員包括:銷售員、銷售經(jīng)理、倉庫管理員、審計員、公司銷售主管、和系統(tǒng)管理員。各個角色承擔不同的系統(tǒng)任務,通過網(wǎng)絡和通信系統(tǒng),連接到銷售管理系統(tǒng),使用統(tǒng)一的訪問界面,進行日常的銷售業(yè)務操作,最終實現(xiàn)銷售部門

4、業(yè)務的正常運轉。3 系統(tǒng)的UML分析與實現(xiàn)UML概述及特點UML是一種編制系統(tǒng)藍圖的標準化語言,可以對大型復雜系統(tǒng)的各種成分可視化說明并構造系統(tǒng)模型,以及建立各種必要的文檔。UML通過三類圖形建立系統(tǒng)模型:Use Case圖,靜態(tài)結構圖(類圖,對象圖,組件圖,配置圖)和動態(tài)行為圖(順序圖,協(xié)同圖,狀態(tài)圖,活動圖),這些圖可以從不同抽象角度使系統(tǒng)可視化。UML具有面向對象、可視化、獨立與開發(fā)過程和程序設計語言以及易于掌握使用等特點。UML適用于各種規(guī)模的系統(tǒng)開發(fā),能促進軟件復用,方便地集成已有的系統(tǒng)并有效減少開發(fā)中的各種風險。UML在銷售管理系統(tǒng)中的實際應用UML是一種建模語言,是系統(tǒng)開發(fā)的一個

5、組成部分,本身并沒有關于開發(fā)過程概念的定義和表示符號。UML的創(chuàng)始人 booch,Jacobson和Rum Baugh在rational公司的支持下綜合了多種系統(tǒng)開發(fā)過程的長處,提出新的面向對象的開發(fā)過程,稱為Rational統(tǒng)一過程(Rational Unified Process,RUP)。RUP過程的核心工作流程包括:業(yè)務建模、需求分析、系統(tǒng)分析與設計和實現(xiàn)、實現(xiàn)、測試和系統(tǒng)部署。下面通過UML來分析并構造銷售管理系統(tǒng)模型,并結合Rational統(tǒng)一過程加以描述,圖形使用Rational Rose 工具軟件繪制。3.1 銷售管理系統(tǒng)的業(yè)務建模和需求分析業(yè)務模型和需求分析的目的是對系統(tǒng)進行

6、評估,采集和分析系統(tǒng)的需求,理解系統(tǒng)要解決的問題,重點是充分考慮系統(tǒng)的實用性。結果可以用一個業(yè)務用例(Business Use Case)框圖表達,根據(jù)銷售系統(tǒng)的基本特征和功能可得到 本系統(tǒng)的用例圖,如圖2。圖1 銷售管理系統(tǒng)業(yè)務用例框圖模型中的活動者代表外部與系統(tǒng)交互的單元,包括銷售員、銷售經(jīng)理、倉庫管理員、審計員、公司銷售主管、和系統(tǒng)管理員;業(yè)務用例框圖是對系統(tǒng)需求的描述,表達了系統(tǒng)的功能和所提供的服務,包括客戶管理子系統(tǒng)、訂單管理子系統(tǒng)、銷售統(tǒng)計子系統(tǒng)、產(chǎn)品管理子系統(tǒng)系統(tǒng)管理子系統(tǒng)。圖2是銷售管理系統(tǒng)層次的用例模型,只包含了最基本的Use Case模型,是系統(tǒng)的高層抽象。在開發(fā)過程中,隨

7、著對系統(tǒng)需求認識的不斷加深,用例模型可以從頂向下不斷細化,演化出更加詳細的Use Case模型。 根據(jù)系統(tǒng)的用例圖,可以對系統(tǒng)的持久對象進行設計,下圖是本系統(tǒng)持久對象類及類之間關系圖。圖2 核心業(yè)務對象類及類之間關系3.2 銷售管理系統(tǒng)設計系統(tǒng)分析與設計是研究欲采用的實現(xiàn)環(huán)境和系統(tǒng)結構,結果是產(chǎn)生一個對象模型,也就是設計模型。設計模型包含了Use Case的實現(xiàn),可以表現(xiàn)對象如何相互通信和運作來實現(xiàn)Use Case流的。對于系統(tǒng)的靜態(tài)結構,可以通過類圖、對象圖、組件圖和配置圖來描述;對于系統(tǒng)的動態(tài)行為,可以通過順序圖、協(xié)同圖、狀態(tài)圖、活動圖描述。這些圖在加上說明文檔就構成一個完整的設計模型。3

8、.2.1系統(tǒng)架構設計銷售管理系統(tǒng)擁有大量銷售信息資源,這些資源包括各種客戶、訂單、和產(chǎn)品等信息。其數(shù)據(jù)量大、信息變化快,非結構化信息與結構化信息共存。使用UML對銷售管理系統(tǒng)進行基于面向對象的分析和實現(xiàn),可以從開發(fā)的第一步開始,從系統(tǒng)的底層就把握住銷售信息資源的特征,為下一步具體實現(xiàn)打好基礎。在銷售管理系統(tǒng)建立模型時要涉及到處理大量的模型元素,如類、進口、組件、節(jié)點、圖等,可以將語意上相近的模型元素組織在一起,這就構成了UML的包,包從較高的層次來組織管理系統(tǒng)模型。系統(tǒng)主要有以下四個包:(1)用戶接口包(ser Interface Package)用戶接口包在其他包的頂層次,為系統(tǒng)用戶提供訪問

9、信息和服務。要注意一點,由于開發(fā)工具使用不同,該接口描述也是有區(qū)別的。如果采用Java Web開發(fā),就要以JSP(Java Server Pages)為基礎,如果采取Microsoft的A開發(fā),其基礎就是標準化控件組。本系統(tǒng)在此將使用Java Web開發(fā),下面有關代碼的描述都是基于Java的。(2)業(yè)務邏輯包(Business Rule Package)該包是銷售管理系統(tǒng)業(yè)務的核心實現(xiàn)部分,包括客戶管理、訂單管理、產(chǎn)品管理等,其他包可以通過訪問該包提供的接口,實現(xiàn)業(yè)務邏輯,如客戶管理業(yè)務等。(3)數(shù)據(jù)持久訪問包(Data Persistence Package)該包實現(xiàn)數(shù)據(jù)的持久化,也就是與數(shù)

10、據(jù)庫交互,實現(xiàn)數(shù)據(jù)的存取、修改等操作。(4)通用工具包(til Package)該包主要包括應用程序安全檢查的類,可以為上面三個包提供安全檢查,如客戶端檢查和服務器端業(yè)務規(guī)則檢查等,同時包括一些系統(tǒng)異常檢查與拋出處理以及系統(tǒng)日志服務等。3.2.2系統(tǒng)詳細設計詳細設計主要是描述在系統(tǒng)分析階段產(chǎn)生的類,與分析階段類的區(qū)別就是偏重于技術層面和類的細節(jié)實現(xiàn)。銷售管理系統(tǒng)提供的各種服務都是建立在分布、開放的信息結構之上,依托高速、可靠的網(wǎng)絡環(huán)境來完成的。每項服務都可以看作一個事件流,由若干相關的對象交互合作來完成。對于這種系統(tǒng)內部的協(xié)作關系和過程行為,可以通過繪制序列(Sequence)框圖和協(xié)作(Co

11、llaboration)框圖來幫助觀察和理解。此外,描述工作流和并發(fā)行為還可以通過活動框圖,表達從一個活動到另一個活動的控制流。同時,可以在理解這些圖的基礎上,抽象出系統(tǒng)的類圖,為系統(tǒng)編碼階段繼續(xù)細化提供基礎。下面以Java Web開發(fā)為例,介紹客戶管理子系統(tǒng)的詳細設計1.客戶管理子系統(tǒng)的基本結構建模:下圖是客戶管理子系統(tǒng)主要類極其關系的詳細設計圖3 客戶關系子系統(tǒng)類的詳細設計及類之間關系2.序列圖:序列圖是一種對象交互圖,著重強調了時間序列,而不是靜態(tài)對象的關系,通過序列圖可以清楚地看到“誰在什么時間對誰說了寫什么”。圖4 客戶管理的序列框圖圖5 銷售人員對客戶管理的順序框圖圖4是一個客戶管

12、理的序列框圖例子。描述了先加載某個客戶;顯示某些狀態(tài);再更改某些屬性值,最后更新數(shù)據(jù)庫狀態(tài)的一次執(zhí)行過程。此圖可設計Customer類的loadCustomer(int)和updateCustomer()方法實現(xiàn)。通過序列框圖可以清晰看出系統(tǒng)用戶、客戶管理子系統(tǒng)的用戶接口、數(shù)據(jù)庫連接模塊之間以時間為順序的消息交換,這對于把握系統(tǒng)的控制流、順序行為和交互行為是非常有益的。建立在分布網(wǎng)絡環(huán)境下的銷售管理系統(tǒng)的事件流和控制流是非常復雜的,需要從頂層到底層進行一步步分解,用多幅能反映動態(tài)結構的圖來分析與說明。圖5反映了銷售人員對客戶管理的順序框圖。3.狀態(tài)圖適合描述一個對象穿越多個Use Case的行

13、為。類的狀態(tài)圖表示類的對象可以呈現(xiàn)的狀態(tài)和這個對象從一種狀態(tài)到另一種狀態(tài)的轉換。圖6 Customer對象狀態(tài)圖圖6描述了Customer對象的生命期中可能的狀態(tài)及狀態(tài)變化(從創(chuàng)建、更新到消亡的轉變過程),其中insertOrder/deleteOrder不是直接作用于當前customer對象,而是指當前customer對象所涉及的訂單操作。此例說明其他對象的操作可能改變當前對象的狀態(tài)。4.協(xié)作圖:協(xié)作圖和序列圖相似,兩種圖所表達的是同一種信息,可以將序列圖轉換為協(xié)作圖,反之也然。但兩者是有區(qū)別的,序列圖強調的是交互的時間序列,協(xié)作圖強調的是交互的語境和參與交互的對象的整體組織。下圖描述的是查

14、詢一個客戶信息消息傳遞的過程。圖7、查詢客戶信息的協(xié)作圖5.活動圖:用于描述業(yè)務過程和類的操作,類似與舊流程圖,是對業(yè)務處理工作流建模,在活動圖中可以增加角色的可視化的維數(shù),下圖是增加了Customer、Saleman、Warehouse三個角色的系統(tǒng)活動圖,反映了在業(yè)務處理過程中,每個角色執(zhí)行的過程。圖8 活動圖通過框圖,設計和開發(fā)人員可以確定需要開發(fā)的類,類之間的關系和每個類操作和責任。序列框圖按照時間排序,用于通過情境檢查邏輯流程。協(xié)作框圖用于了解改變后的影響,可以很容易看出對象之間的通信,狀態(tài)圖描述了對象在系統(tǒng)可能中的狀態(tài),如果要改變對象,就可以方便地看到受影響的對象。6.軟件系統(tǒng)一般

15、由一組部件組成,換句話說,部件是相對獨立的部分軟件實施,有自己特有的功能,并可在系統(tǒng)中安裝使用,系統(tǒng)中各部件是相互協(xié)作合作,給系統(tǒng)提供完整的功能。下圖是本系統(tǒng)運行時的主要部件圖9 運行的部件圖3.2.3銷售管理系統(tǒng)的實現(xiàn)、測試和系統(tǒng)配置系統(tǒng)采用五層邏輯結構:客戶端只需中文瀏覽器;表示層用12個JSP(Java Server Page)文檔實現(xiàn)動態(tài)頁面以創(chuàng)建、操作業(yè)務對象;核心對象層用6個Java類以JavaBean形式構成業(yè)務處理的核心對象;連接層采用JDBC2提供兩種連接方式:一種是基于DriverManager,主要支持Java應用和測試;另一種基于DataSource;資源層即數(shù)據(jù)庫服務器。經(jīng)過系統(tǒng)分析和設計后,就可以根據(jù)設計模型在具體的環(huán)境中實現(xiàn)系統(tǒng),生成系統(tǒng)的源代碼、可執(zhí)行程序和相應的軟件文檔,建立一個可執(zhí)行系統(tǒng);進而需要對系統(tǒng)進行測試和排錯,保證系統(tǒng)符合預定的要求,獲得一個無錯的系統(tǒng)實現(xiàn)。測試結果將確認所完成的系統(tǒng)可以真正使用;最后完成系統(tǒng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論