銷(xiāo)售管理系統(tǒng)的UML分析與設(shè)計(jì)_第1頁(yè)
銷(xiāo)售管理系統(tǒng)的UML分析與設(shè)計(jì)_第2頁(yè)
銷(xiāo)售管理系統(tǒng)的UML分析與設(shè)計(jì)_第3頁(yè)
銷(xiāo)售管理系統(tǒng)的UML分析與設(shè)計(jì)_第4頁(yè)
銷(xiāo)售管理系統(tǒng)的UML分析與設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、銷(xiāo)售管理系統(tǒng)的UML分析與設(shè)計(jì)摘 要 銷(xiāo)售管理系統(tǒng)是現(xiàn)代企業(yè)管理系統(tǒng)的一個(gè)重要組成部分,傳統(tǒng)的系統(tǒng)分析設(shè)計(jì)方法已經(jīng)難以保證軟件開(kāi)發(fā)的效率和質(zhì)量,通過(guò)將UML應(yīng)用于銷(xiāo)售管理系統(tǒng)建模,可以加速軟件開(kāi)發(fā)進(jìn)程,提高軟件質(zhì)量,支持動(dòng)態(tài)的業(yè)務(wù)需求,并方便地集成已有的企業(yè)管理資源。 關(guān)鍵詞 銷(xiāo)售管理系統(tǒng);UML;分析;實(shí)現(xiàn) 1 引言 當(dāng)前社會(huì)對(duì)信息系統(tǒng)的需求日益增長(zhǎng),需求變化也越來(lái)越快,軟件開(kāi)發(fā)的技術(shù)發(fā)展方向已經(jīng)從“提升被開(kāi)發(fā)系統(tǒng)的執(zhí)行效率”轉(zhuǎn)變?yōu)椤疤嵘_(kāi)發(fā)效率”。面向?qū)ο螅∣O)技術(shù)降低了解決方法域與問(wèn)題域的差別,提供了良好的復(fù)用機(jī)制,能夠更加有效提高軟件開(kāi)發(fā)效率,完全順應(yīng)了軟件開(kāi)發(fā)技術(shù)的發(fā)展方向。 UM

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

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

4、的UML分析與實(shí)現(xiàn) UML概述及特點(diǎn) UML 是一種編制系統(tǒng)藍(lán)圖的標(biāo)準(zhǔn)化語(yǔ)言,可以對(duì)大型復(fù)雜系統(tǒng)的各種成分可視化說(shuō)明并構(gòu)造系統(tǒng)模型,以及建立各種必要的文檔。UML通過(guò)三類(lèi)圖形建立系統(tǒng)模型: Use Case圖,靜態(tài)結(jié)構(gòu)圖(類(lèi)圖,對(duì)象圖,組件圖,配置圖)和動(dòng)態(tài)行為圖(順序圖,協(xié)同圖,狀態(tài)圖,活動(dòng)圖),這些圖可以從不同抽象角度使系統(tǒng)可視化。 UML具有面向?qū)ο?、可視化、?dú)立與開(kāi)發(fā)過(guò)程和程序設(shè)計(jì)語(yǔ)言以及易于掌握使用等特點(diǎn)。UML適用于各種規(guī)模的系統(tǒng)開(kāi)發(fā),能促進(jìn)軟件復(fù)用,方便地集成已有的系統(tǒng)并有效減少開(kāi)發(fā)中的各種風(fēng)險(xiǎn)。 UML在銷(xiāo)售管理系統(tǒng)中的實(shí)際應(yīng)用 UML 是一種建模語(yǔ)言,是系統(tǒng)開(kāi)發(fā)的一個(gè)組成部分

5、,本身并沒(méi)有關(guān)于開(kāi)發(fā)過(guò)程概念的定義和表示符號(hào)。UML的創(chuàng)始人 booch,Jacobson和Rum Baugh在rational公司的支持下綜合了多種系統(tǒng)開(kāi)發(fā)過(guò)程的長(zhǎng)處,提出新的面向?qū)ο蟮拈_(kāi)發(fā)過(guò)程,稱為Rational統(tǒng)一過(guò)程(Rational Unified Process,RUP)。RUP過(guò)程的核心工作流程包括:業(yè)務(wù)建模、需求分析、系統(tǒng)分析與設(shè)計(jì)和實(shí)現(xiàn)、實(shí)現(xiàn)、測(cè)試和系統(tǒng)部署。下面通過(guò)UML來(lái)分析并構(gòu)造銷(xiāo)售管理系統(tǒng)模型,并結(jié)合Rational統(tǒng)一過(guò)程加以描述,圖形使用Rational Rose 工具軟件繪制。 3.1 銷(xiāo)售管理系統(tǒng)的業(yè)務(wù)建模和需求分析 業(yè)務(wù)模型和需求分析的目的是對(duì)系統(tǒng)進(jìn)行評(píng)估

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

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

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

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

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

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

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

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

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

15、件系統(tǒng)一般由一組部件組成,換句話說(shuō),部件是相對(duì)獨(dú)立的部分軟件實(shí)施,有自己特有的功能,并可在系統(tǒng)中安裝使用,系統(tǒng)中各部件是相互協(xié)作合作,給系統(tǒng)提供完整的功能。下圖是本系統(tǒng)運(yùn)行時(shí)的主要部件圖9 運(yùn)行的部件圖 3.2.3銷(xiāo)售管理系統(tǒng)的實(shí)現(xiàn)、測(cè)試和系統(tǒng)配置 系統(tǒng)采用五層邏輯結(jié)構(gòu):客戶端只需中文瀏覽器;表示層用12個(gè)JSP(Java Server Page)文檔實(shí)現(xiàn)動(dòng)態(tài)頁(yè)面以創(chuàng)建、操作業(yè)務(wù)對(duì)象;核心對(duì)象層用6個(gè)Java類(lèi)以JavaBean形式構(gòu)成業(yè)務(wù)處理的核心對(duì)象;連接層采用JDBC2提供兩種連接方式:一種是基于DriverManager,主要支持Java應(yīng)用和測(cè)試;另一種基于DataSource;資源層即數(shù)據(jù)庫(kù)服務(wù)器。 經(jīng)過(guò)系統(tǒng)分析和設(shè)計(jì)后,就可以根據(jù)設(shè)計(jì)模型在具體的環(huán)境中實(shí)現(xiàn)系統(tǒng),生成系統(tǒng)的源代碼、可執(zhí)行程序和相應(yīng)的軟件文檔,建立一個(gè)可執(zhí)行系統(tǒng);進(jìn)而需要對(duì)系統(tǒng)進(jìn)行測(cè)試和排錯(cuò),保證系統(tǒng)符合預(yù)定的要求,獲得一個(gè)無(wú)錯(cuò)的系統(tǒng)實(shí)現(xiàn)。測(cè)試結(jié)果將確認(rèn)所完成的系統(tǒng)可以真正使用;最后完成系統(tǒng)配置,其任務(wù)是在真實(shí)的運(yùn)行環(huán)境中配置、調(diào)試系統(tǒng),解決系統(tǒng)正式使用前可能存在的任何問(wèn)題。 4 結(jié)束語(yǔ) 銷(xiāo)售管理系統(tǒng)的發(fā)展方興未艾,目前正處于傳統(tǒng)手工、半手工管理向數(shù)字化過(guò)渡的階段,轉(zhuǎn)變過(guò)程

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論