国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開(kāi)通VIP
用UML做好系統(tǒng)分析
2009-05-15 作者:邱郁惠 來(lái)源:infoq.com
使用UML如何能讓我們做好系統(tǒng)分析的工作呢?就讓我們通過(guò)本章的基金模擬項(xiàng)目,先睹 為快,搶先體驗(yàn)一番。
CIM-1:定義業(yè)務(wù)流程
定義及分析業(yè)務(wù)流程(Business Process)是為了盡快理清系統(tǒng)范圍,以便估算開(kāi)發(fā)成本及時(shí)間,可不是為了要改造業(yè)務(wù)流程。系統(tǒng)分析員千萬(wàn)別誤解了此步驟的目的。所以,系統(tǒng)分析員在定義及分析業(yè)務(wù)流程時(shí),要記得挑選跟系統(tǒng)有關(guān)的業(yè)務(wù)流程。
CIM-1定義業(yè)務(wù)流程的生成,主要有如下的業(yè)務(wù)用例圖和簡(jiǎn)述。請(qǐng)看圖2-1的業(yè)務(wù)用例圖,圖中的每一個(gè)業(yè)務(wù)用例代表一條業(yè)務(wù)流程,業(yè)務(wù)執(zhí)行者則代表位于企業(yè)外但會(huì)啟動(dòng)或參與業(yè)務(wù)流程的人。投資人到銀行臨柜申購(gòu)基金,啟動(dòng)了銀行內(nèi)部的一段關(guān)于申購(gòu)基金的業(yè)務(wù)流程。再者,投資人也可能臨柜辦理贖回基金,這又引發(fā)了另一條業(yè)務(wù)流程。
至于業(yè)務(wù)用例簡(jiǎn)述,簡(jiǎn)潔扼要即可,我們主要用它來(lái)記錄和區(qū)分業(yè)務(wù)流程。
CIM-2:分析業(yè)務(wù)流程
通過(guò)CIM-1圈出了系統(tǒng)將參與的業(yè)務(wù)流程之后,針對(duì)每一個(gè)業(yè)務(wù)用例,系統(tǒng)分析員得開(kāi)始分析它的工作流程,并且繪制活動(dòng)圖(Activity Diagram)與業(yè)務(wù)人員取得共識(shí)。隨后到了CIM-3時(shí),才能夠依此定義出系統(tǒng)可以協(xié)助之處,并且規(guī)劃出系統(tǒng)范圍。
此處,我們挑選一般的申購(gòu)基金流程當(dāng)示范,并繪制出如圖2-2所示的活動(dòng)圖,展示了單筆申購(gòu)基金的一般交易流程。
CIM-3:定義系統(tǒng)范圍
經(jīng)過(guò)了CIM-1的定義業(yè)務(wù)流程,以及CIM-2的分析業(yè)務(wù)流程之后,終于進(jìn)入到CIM-3這場(chǎng)壓軸戲了。CIM-1和CIM-2的生成文件,跟CIM-3的生成文件之間,有如下的關(guān)聯(lián)性:
CIM-2活動(dòng)圖中的每一個(gè)動(dòng)作,都可能成為CIM-3的系統(tǒng)用例。 CIM-1中的業(yè)務(wù)執(zhí)行者,以及CIM-2中的動(dòng)作負(fù)責(zé)人,都可能成為CIM-3的系統(tǒng)執(zhí)行者(System Actor)。
針對(duì)上述的圖2-2一般流程的活動(dòng)圖,我們分析得出如圖2-3的系統(tǒng)用例圖,以及下述的用例簡(jiǎn)述。
PIM-1:分析系統(tǒng)流程
在CIM階段,系統(tǒng)分析員大約花1~2周的時(shí)間,盡快生成初步的系統(tǒng)用例,以便讓相關(guān)的決策人員可以從中挑選出首期開(kāi)發(fā)的系統(tǒng)用例,而這也就是首期的系統(tǒng)范圍。
隨后,項(xiàng)目正式進(jìn)入PIM階段,也是正式進(jìn)入分析階段,所以系統(tǒng)分析員將投入更多的時(shí)間,針對(duì)首期的系統(tǒng)用例詳述規(guī)格,作為正式需求文件的一部分,也作為業(yè)務(wù)人員與開(kāi)發(fā)人員之間的溝通文件。
所以,系統(tǒng)分析員在PIM-1的主要工作,將針對(duì)每一個(gè)系統(tǒng)用例,分析其內(nèi)部細(xì)節(jié),并編寫詳盡的系統(tǒng)用例敘述(UC Description)。UML并未提出標(biāo)準(zhǔn)的敘述格式可供遵守,不過(guò)系統(tǒng)分析員可以在網(wǎng)絡(luò)上找到許多實(shí)用的用例敘述格式,或者翻閱一些UML或用例相關(guān)書籍,也可以發(fā)現(xiàn)許多很有特色的用例敘述格式。
此處,我們示范編寫“網(wǎng)絡(luò)申購(gòu)單筆基金”和“網(wǎng)絡(luò)申購(gòu)定期定額基金”的系統(tǒng)用例敘述,如下圖2-4和圖2-5所示:
PIM-2:分析業(yè)務(wù)規(guī)則
企業(yè)通過(guò)一組規(guī)則(Buisness Rules)來(lái)控制整體的運(yùn)作,包括人員、流程、系統(tǒng)、概念的運(yùn)作,皆受制于業(yè)務(wù)規(guī)則。由此足見(jiàn)業(yè)務(wù)規(guī)則之重要,所以早從PIM-1的系統(tǒng)用例敘述,一直到此處的PIM-2狀態(tài)圖以及稍后的PIM-3類圖,我們都會(huì)要求系統(tǒng)分析員必需通過(guò)這些UML圖,記錄且呈現(xiàn)重要的業(yè)務(wù)規(guī)則。
例如,在經(jīng)過(guò)PIM-1的步驟之后,我們認(rèn)為“定期定額申購(gòu)”是很重要的業(yè)務(wù)對(duì)象,而且涉及許多重要的業(yè)務(wù)規(guī)則,所以決定為它繪制如圖2-6的狀態(tài)圖,以便組織業(yè)務(wù)規(guī)則,同時(shí)也對(duì)定期定額申購(gòu)有更深入的理解。
PIM-3:定義靜態(tài)結(jié)構(gòu)
在PIM-3中,系統(tǒng)分析員用類圖來(lái)表達(dá)系統(tǒng)內(nèi)部的靜態(tài)結(jié)構(gòu)。系統(tǒng)只有具備穩(wěn)定且具彈性的靜態(tài)結(jié)構(gòu),才能夠順應(yīng)需求變更,迅速支撐多樣化的系統(tǒng)用例。之后,類圖可能通過(guò)設(shè)計(jì)師之手,進(jìn)行調(diào)整,并且成為程序員最關(guān)切的設(shè)計(jì)圖之一。程序員通常會(huì)按照類圖的內(nèi)容,來(lái)編寫并組織源代碼。
在PIM-3的過(guò)程中,系統(tǒng)分析員尋找操作絕對(duì)優(yōu)先于尋找屬性。因?yàn)閷傩噪S處可見(jiàn),特別是從PIM-1搜集而來(lái)的窗體,里頭多的是對(duì)象必須保存的屬性。而尋找操作就沒(méi)這么直接簡(jiǎn)單了,系統(tǒng)分析員必須多動(dòng)腦筋才能定義出操作,所以先別管屬性了,記得優(yōu)先找操作。
進(jìn)行PIM-3時(shí),系統(tǒng)分析員可以通過(guò)下列步驟,建立出如圖2-7的類圖:
套用交易模式,并且經(jīng)過(guò)調(diào)整之后,系統(tǒng)分析員可以獲得初步的靜態(tài)結(jié)構(gòu)。 分析PIM-2的狀態(tài)圖之后,系統(tǒng)分析員可以為類增加屬性及操作。 分析PIM-1搜集來(lái)的窗體,系統(tǒng)分析員可以為類增加更多的屬性。 經(jīng)過(guò)PIM-4的序列圖,系統(tǒng)分析員可以為類增加更多的操作,并且描述操作的方法。
PIM-4:定義操作及方法
在PIM-4中,系統(tǒng)分析員可以用序列圖來(lái)表達(dá),系統(tǒng)內(nèi)部一群對(duì)象合力完成某一個(gè)系統(tǒng)用例時(shí),執(zhí)行期間的交互情形。之后,序列圖可能通過(guò)設(shè)計(jì)師之手,進(jìn)行調(diào)整,并且成為程序員最關(guān)切的設(shè)計(jì)圖之二(另一張是類圖)。程序員通常會(huì)按照序列圖的內(nèi)容,編寫出方法的源代碼雛型。
此外,PIM-1的系統(tǒng)用例敘述和PIM-3的類圖,對(duì)PIM-4的序列圖有不可或缺的貢獻(xiàn)。從PIM-1的系統(tǒng)用例敘述中,系統(tǒng)分析員可以分析出系統(tǒng)流程。而在PIM-3的類圖中,系統(tǒng)分析員定義出系統(tǒng)內(nèi)部的靜態(tài)結(jié)構(gòu)。隨后,到了PIM-4的序列圖時(shí),則結(jié)合了系統(tǒng)用例以及靜態(tài)結(jié)構(gòu)兩者。
系統(tǒng)分析員通過(guò)序列圖的思考與表達(dá),試圖安排依據(jù)類們所生成的一群對(duì)象之間的交互,讓這一群對(duì)象可以合力完成某一個(gè)系統(tǒng)用例。同時(shí),在序列圖中,一群對(duì)象交互所引發(fā)的操作,則可以反饋給類圖,定義出更多的操作及屬性,甚至發(fā)現(xiàn)之前未發(fā)現(xiàn)的其他類及關(guān)系。
系統(tǒng)分析員可參考下述步驟來(lái)繪制序列圖:
扮演啟動(dòng)者的執(zhí)行者對(duì)象放置于序列圖最左方;扮演支持者的執(zhí)行者對(duì)象放至于序列圖的最右方。 針對(duì)系統(tǒng)用例敘述里所記載每項(xiàng)流程步驟,判斷執(zhí)行時(shí)需要使用到哪些數(shù)據(jù),且可指派擁有該數(shù)據(jù)的對(duì)象負(fù)責(zé)該項(xiàng)工作。 試著執(zhí)行序列圖,以便調(diào)整流程,并且為操作加上參數(shù)。 把繪制序列圖時(shí)所找到的操作及屬性,反饋給類圖。
以“網(wǎng)絡(luò)申購(gòu)單筆基金”系統(tǒng)用例之主要流程為例,我們示范繪制出如圖2-8所示的序列圖。
最后,系統(tǒng)分析員可以試著執(zhí)行一次序列圖的流程,并且為操作加上參數(shù)。增加輸入(in)及輸出(out)參數(shù)如下:
查詢托售基金清單(out 基金名稱清單) 查詢基金名稱(out 基金名稱,基金代號(hào)) 查詢扣款賬號(hào)(out 扣款賬號(hào)) 單筆申購(gòu)基金(in 基金代號(hào),申購(gòu)金額) 計(jì)算手續(xù)費(fèi)(in 申購(gòu)金額,out 手續(xù)費(fèi)) 查詢銀行折扣(out 銀行折扣) 查詢基金管理費(fèi)(out 基金管理費(fèi)) 查詢綜存賬戶余額(out 綜存賬戶余額) 查詢綜存賬戶余額(in 扣款賬號(hào),out 綜存賬戶余額) 確認(rèn)單筆申購(gòu)(out 憑證號(hào)碼) 扣款() 扣款(in 交易金額) 設(shè)定申購(gòu)日期() 產(chǎn)生交易編號(hào)(out 憑證號(hào)碼)
由于,單筆申購(gòu)和定期定額申購(gòu)計(jì)算手續(xù)費(fèi)的方法相同,所以系統(tǒng)分析員可以將單筆申購(gòu)類里的“計(jì)算手續(xù)費(fèi)”操作移至申購(gòu)交易類,并匯總上述序列圖所新增的操作與相關(guān)屬性,更新類圖如2-9所示。
在CIM與PIM之后
由于我們采用MDA(Model-Driven Architecture)開(kāi)發(fā)程序,作為專業(yè)分工的依據(jù),因此系統(tǒng)分析員的工作聚焦于CIM與PIM階段,至于PSM及編碼階段,則交由其他的設(shè)計(jì)師負(fù)責(zé)之。MDA主要將生成的UML模型,分為下列三個(gè)階段:
CIM(Computation Independent Model)──聚焦于系統(tǒng)環(huán)境及需求,但不涉及系統(tǒng)內(nèi)部的結(jié)構(gòu)與運(yùn)作細(xì)節(jié)。 PIM(Platform Independent Model)──聚焦于系統(tǒng)內(nèi)部細(xì)節(jié),但不涉及實(shí)現(xiàn)系統(tǒng)的具體平臺(tái)(Platform)。 PSM(Platform Specific Model)──聚焦于系統(tǒng)落實(shí)于特定具體平臺(tái)的細(xì)節(jié)。例如,Spring、EJB2或.NET都是一種具體平臺(tái)。
因此,系統(tǒng)分析員執(zhí)行了前述的CIM與PIM步驟,并且獲得高質(zhì)量的生成之后,設(shè)計(jì)師會(huì)依據(jù)具體平臺(tái)進(jìn)一步生成PSM階段的設(shè)計(jì),并交由程序員按圖編碼,編寫出適用于特定具體平臺(tái)的代碼。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
需求的用例表達(dá)
軟件項(xiàng)目管理實(shí)踐之如何實(shí)施質(zhì)量控制?
90天搞定系統(tǒng)分析員考試回顧
用UML描述工作流管理
基于UML的需求分析和系統(tǒng)設(shè)計(jì)(完整案例和UML圖形演示)
UML動(dòng)態(tài)模型圖簡(jiǎn)單介紹
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服