版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
在軟件開發(fā)過程中,選擇適當(dāng)?shù)能浖ぞ哌M(jìn)行自動(dòng)化和半自動(dòng)化的開發(fā),可以極大地簡(jiǎn)化開發(fā)工作(包括軟件分析設(shè)計(jì)、測(cè)試、維護(hù))、提高軟件生產(chǎn)率和改善軟件的質(zhì)量。
一般軟件工具分為六類:模擬工具、開發(fā)工具、測(cè)試和評(píng)估工具、運(yùn)行和維護(hù)工具、性能質(zhì)量工具和程序設(shè)計(jì)支持工具。工具既有支持單個(gè)任務(wù)的工具,也有囊括生命周期全過程或部分過程的工具。
按照工具在軟件開發(fā)過程承擔(dān)的任務(wù),可以把它們分為六類:軟件需求工具(包括需求建模工具和需求追蹤工具)、軟件設(shè)計(jì)工具(用于創(chuàng)建和檢查軟件設(shè)計(jì))、軟件構(gòu)造工具(包括程序編輯器、編譯器和代碼生成器、解釋器和調(diào)試器等)、軟件測(cè)試工具(包括測(cè)試生成器、測(cè)試執(zhí)行框架、測(cè)試評(píng)價(jià)工具、測(cè)試管理工具和性能分析工具)、軟件維護(hù)工具(包括可視化工具和重構(gòu)工具)、軟件配置管理工具。第二章軟件開發(fā)工具在軟件開發(fā)過程中,選擇適當(dāng)?shù)能浖ぞ哌M(jìn)行自動(dòng)化和半自12.1visio2.2starUML2.3RationalRose2.4建模工具的比較第二章軟件開發(fā)工具2.1visio第二章軟件開發(fā)工具22.1visio2.1.1Visio簡(jiǎn)介2.1.2Visio2013基本操作2.1.3Visio2013建模示例2.1visio2.1.1Visio簡(jiǎn)介32.1.1Visio簡(jiǎn)介Visio是一款就復(fù)雜信息、系統(tǒng)和流程進(jìn)行可視化處理、分析和交流的專業(yè)商用矢量繪圖軟件,其提供了大量的矢量圖形基本素材,幫助用戶繪制各種流程圖、結(jié)構(gòu)圖或軟件開發(fā)模型,可以促進(jìn)對(duì)系統(tǒng)和流程的了解,深入了解復(fù)雜信息并利用這些知識(shí)做出更好的業(yè)務(wù)決策。
使用Visio,軟件開發(fā)人員能夠進(jìn)行項(xiàng)目前期階段的組織建模(組織結(jié)構(gòu)圖)和業(yè)務(wù)建模(業(yè)務(wù)流程圖)、粗略設(shè)計(jì)的軟件系統(tǒng)體系(體系結(jié)構(gòu)圖)、硬件配置(網(wǎng)絡(luò)拓?fù)鋱D)、系統(tǒng)框架(系統(tǒng)架構(gòu)圖)、系統(tǒng)組成(系統(tǒng)流程圖)、功能結(jié)構(gòu)(功能結(jié)構(gòu)圖);可以繪制需求分析階段的分析模型(數(shù)據(jù)流圖);總體設(shè)計(jì)階段的系統(tǒng)組成(系統(tǒng)流程圖)、功能結(jié)構(gòu)(功能結(jié)構(gòu)圖)、軟件模塊構(gòu)成(IPO圖)、數(shù)據(jù)構(gòu)成(ER模型);還可用于描述詳細(xì)設(shè)計(jì)階段的模塊細(xì)節(jié)(程序流程圖)。2.1.1Visio簡(jiǎn)介Visio是一款就復(fù)雜信42.1.1Visio簡(jiǎn)介圖2-1Visio軟件的啟動(dòng)界面2.1.1Visio簡(jiǎn)介圖2-1Visio軟件的啟動(dòng)界面52.1.1Visio簡(jiǎn)介圖2-2軟件的基本界面2.1.1Visio簡(jiǎn)介圖2-2軟件的基本界面62.1.1Visio簡(jiǎn)介圖2-3軟件界面2.1.1Visio簡(jiǎn)介圖2-3軟件界面72.1.1Visio簡(jiǎn)介Visio軟件的界面主要由6部分組成,其作用如下:標(biāo)題欄由Visio標(biāo)志、快速訪問工具欄、窗口管理按鈕3個(gè)部分組成;其中,快速訪問工具欄是Visio提供的一組快捷按鈕。窗口管理按鈕提供了4種按鈕供用戶操作Visio窗口;工具選項(xiàng)卡是一組重要的按鈕欄,其提供了多種按鈕,允許用戶切換功能區(qū)及應(yīng)用Visio中的各種工具。主要包括【開始】、【插入】、【設(shè)計(jì)】、【數(shù)據(jù)】、【進(jìn)程】、【審閱】、【視圖】等選項(xiàng)卡。選項(xiàng)卡中的工具通常按組的方式排列,各組之間以分隔線的方式隔開。例如,【開始】選項(xiàng)卡就包括了【剪貼板】、【字體】、【段落】、【工具】、【形狀格式】、【排列】和【編輯】等組;功能區(qū)中提供了Visio軟件的各種基本工具。單擊工具選項(xiàng)卡中的特定按鈕,即可切換功能區(qū)中的內(nèi)容;【形狀】窗格,在使用Visio的模板功能創(chuàng)建Visio繪圖之后,會(huì)自動(dòng)打開【形狀】窗格,并在該窗格中提供各種模具組供用戶選擇,可將其拖動(dòng)添加到Visio繪圖中;繪圖窗格是Visio中最重要的窗格,在其中提供了標(biāo)尺、繪圖頁(yè)以及網(wǎng)格等工具,允許用戶在繪圖頁(yè)上繪制各種圖形,并使用標(biāo)尺來規(guī)范圖形的尺寸;在繪圖窗格的底部,還提供了頁(yè)標(biāo)簽的功能,允許用戶為一個(gè)Visio繪圖創(chuàng)建多個(gè)繪圖頁(yè),并設(shè)置繪圖頁(yè)的名稱;狀態(tài)欄的作用是顯示繪圖頁(yè)或其上各種對(duì)象的狀態(tài),以供用戶參考和編輯。2.1.1Visio簡(jiǎn)介Visio軟件的界面主要由6部分組82.1.2Visio2013基本操作這里可以打開.vsdx格式的所有的繪圖如在已有的模板中找不到適用的模板,可以在這邊輸入所需要的模板類型圖2-3模板選擇窗口2.1.2Visio2013基本操作這里可以打開.vs92.1.2Visio2013基本操作圖2-4Visio軟件操作界面2.1.2Visio2013基本操作圖2-4Visi102.1.3Visio2013建模示例圖2-5Visio繪制組織結(jié)構(gòu)圖2.1.3Visio2013建模示例圖2-5Visio112.1.3Visio2013建模示例
在項(xiàng)目前期,組織結(jié)構(gòu)圖用于描述目標(biāo)單位的組織崗位構(gòu)成,為后續(xù)的業(yè)務(wù)分析打下基礎(chǔ)。
需要注意的是,Visio提供的組織結(jié)構(gòu)圖基本形式,通常都是體現(xiàn)上層元素對(duì)下層元素的領(lǐng)導(dǎo)、管理關(guān)系,與本書要求的組織結(jié)構(gòu)圖應(yīng)體現(xiàn)組織機(jī)構(gòu)的包含關(guān)系有一定的差異,需要進(jìn)行一定的改進(jìn),以體現(xiàn)組織機(jī)構(gòu)的包含關(guān)系,才能夠更好地用于組織分析的結(jié)果描述。
面向?qū)ο蠓椒ǖ腞ationalRose及StarUML工具,沒有提供相應(yīng)元素進(jìn)行組織結(jié)構(gòu)的描述,此時(shí)可以借助Visio進(jìn)行組織結(jié)構(gòu)描述。2.1.3Visio2013建模示例在項(xiàng)目前期,組織結(jié)122.1.3Visio2013建模示例圖2-6Visio繪制業(yè)務(wù)流程圖2.1.3Visio2013建模示例圖2-6Visio132.1.3Visio2013建模示例項(xiàng)目前期業(yè)務(wù)分析的結(jié)果,以業(yè)務(wù)流程圖的形式進(jìn)行描述。業(yè)務(wù)流程將是后續(xù)粗略設(shè)計(jì)以及需求分析階段進(jìn)行需求分析的基礎(chǔ)。Visio提供的業(yè)務(wù)流程圖有多種,其中的“跨職能流程圖”樣式,能夠最好地滿足結(jié)構(gòu)化業(yè)務(wù)建模的需要。跨職能流程圖有橫向、縱向兩種方式,為方便用戶直觀觀察和理解,建議選擇縱向的跨職能流程圖描述業(yè)務(wù)分析的結(jié)果。2.1.3Visio2013建模示例項(xiàng)目前期業(yè)務(wù)分析的結(jié)142.1.3Visio2013建模示例圖2-7Visio繪制系統(tǒng)體系結(jié)構(gòu)圖2.1.3Visio2013建模示例圖2-7Visi152.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)階段,體系結(jié)構(gòu)圖反映目標(biāo)系統(tǒng)的抽象構(gòu)成及構(gòu)成部分之間的相互關(guān)系,這些構(gòu)成既包括硬件網(wǎng)絡(luò),也包括軟件。Visio沒有提供專門的體系結(jié)構(gòu)圖樣式,可借助其中的“基本框圖”和“基本流程圖”元素,進(jìn)行系統(tǒng)的體系結(jié)構(gòu)描述。
面向?qū)ο蠊ぞ逺ationalRose及StarUML,沒有提供專門模型來支持體系結(jié)構(gòu)圖的繪制,此時(shí)可以借助Visio進(jìn)行系統(tǒng)體系結(jié)構(gòu)圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)162.1.3Visio2013建模示例圖2-8Visio繪制網(wǎng)絡(luò)拓?fù)鋱D2.1.3Visio2013建模示例圖2-8Visi172.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)階段,網(wǎng)絡(luò)拓?fù)鋱D反映目標(biāo)系統(tǒng)的硬件網(wǎng)絡(luò)構(gòu)成和它們之間的連接方式。Visio提供了各種豐富的網(wǎng)絡(luò)節(jié)點(diǎn)元素,方便開發(fā)人員繪制直觀的網(wǎng)絡(luò)拓?fù)鋱D。面向?qū)ο蠓椒ǖ腞ationalRose及StarUML工具,提供的配置圖元素很少,往往不足以全面完整地描述復(fù)雜系統(tǒng)中的硬件設(shè)施及網(wǎng)絡(luò)配置,此時(shí)可以借助Visio進(jìn)行系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)182.1.3Visio2013建模示例圖2-9Visio繪制系統(tǒng)架構(gòu)圖2.1.3Visio2013建模示例圖2-9Visi192.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)階段,系統(tǒng)架構(gòu)圖體現(xiàn)軟件部件之間的聯(lián)系和部件的布局。Visio也沒有提供專門模型來支持系統(tǒng)架構(gòu)圖的繪制,此時(shí)可以借助Visio“基本框圖”、“基本流程圖”中的部分元素,進(jìn)行系統(tǒng)結(jié)構(gòu)圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)202.1.3Visio2013建模示例圖2-10Visio繪制系統(tǒng)流程圖2.1.3Visio2013建模示例圖2-10Vis212.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)和總體設(shè)計(jì)階段,系統(tǒng)流程圖是結(jié)構(gòu)化方法下描述系統(tǒng)物理構(gòu)成的模型。Visio沒有提供專門的系統(tǒng)流程圖樣式,可借助其中的“基本框圖”、“基本流程圖”、“網(wǎng)絡(luò)拓?fù)鋱D”部分元素,組合在一起進(jìn)行系統(tǒng)流程圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)222.1.3Visio2013建模示例圖2-11Visio繪制功能結(jié)構(gòu)圖2.1.3Visio2013建模示例圖2-11Vis232.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)和總體設(shè)計(jì)階段,功能結(jié)構(gòu)圖從用戶角度反映目標(biāo)系統(tǒng)的整體構(gòu)成,也是體現(xiàn)一種包含關(guān)系。Visio沒有提供專門的系統(tǒng)流程圖樣式,可借助其中的“基本框圖”、“基本流程圖”部分元素,組合在一起進(jìn)行功能結(jié)構(gòu)圖的描述。面向?qū)ο蠊ぞ逺ationalRose及StarUML,沒有提供專門模型來支持功能結(jié)構(gòu)圖的繪制,此時(shí)可以借助Visio進(jìn)行進(jìn)行系統(tǒng)功能結(jié)構(gòu)圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)242.1.3Visio2013建模示例圖2-12Visio繪制數(shù)據(jù)流圖2.1.3Visio2013建模示例圖2-12Vis252.1.3Visio2013建模示例在需求分析階段,數(shù)據(jù)流圖是結(jié)構(gòu)化方法下需求模型的主要構(gòu)成部分。通常繪制數(shù)據(jù)流圖逐步細(xì)化、逐步精化的一個(gè)過程。Visio提供了專門的“數(shù)據(jù)流圖表”樣式,支持系統(tǒng)數(shù)據(jù)流圖的的描述。2.1.3Visio2013建模示例在需求分析階段,數(shù)據(jù)262.1.3Visio2013建模示例圖2-13Visio繪制IPO圖2.1.3Visio2013建模示例圖2-13Vis272.1.3Visio2013建模示例在總體設(shè)計(jì)階段,IPO圖從軟件角度描述了目標(biāo)系統(tǒng)的構(gòu)成,通常繪制IPO圖是逐步細(xì)化、逐步精化的一個(gè)過程。Visio沒有提供專門的IPO圖,開發(fā)人員可借助其中的“基本框圖”、“基本流程圖”部分元素,組合在一起進(jìn)行IPO圖的描述。2.1.3Visio2013建模示例在總體設(shè)計(jì)階段,IP282.1.3Visio2013建模示例圖2-14Visio繪制E-R模型2.1.3Visio2013建模示例圖2-14Vis292.1.3Visio2013建模示例在總體設(shè)計(jì)階段,ER模型用于描述數(shù)據(jù)的概念模型。Visio提供了專門的“數(shù)據(jù)庫(kù)模型圖”樣式,支持系統(tǒng)的實(shí)體關(guān)系模型描述。2.1.3Visio2013建模示例在總體設(shè)計(jì)階段,ER302.1.3Visio2013建模示例圖2-15Visio繪制程序流程圖模型2.1.3Visio2013建模示例圖2-15Vis312.1.3Visio2013建模示例在項(xiàng)目的詳細(xì)設(shè)計(jì)階段,程序流程圖描述各個(gè)模塊的算法實(shí)現(xiàn)細(xì)節(jié)。Visio沒有提供專門的“程序流程圖”樣式,可以用基本流程圖進(jìn)行模塊算法的詳細(xì)描述。2.1.3Visio2013建模示例在項(xiàng)目的詳細(xì)設(shè)計(jì)階段322.2starUML2.2.1StarUML簡(jiǎn)介2.2.2StarUML基本操作2.2.3StarUML建模示例2.2starUML2.2.1StarUML簡(jiǎn)介332.2.1StarUML簡(jiǎn)介StarUML嚴(yán)格遵循UML規(guī)則,提供包括用例圖、類圖、序列圖、狀態(tài)圖、活動(dòng)圖、協(xié)作圖、組件圖、部署圖以及復(fù)合結(jié)構(gòu)圖(CompositeStructureDiagram)、魯棒圖(RobustnessDiagram)、包圖等十一種圖。其中復(fù)合結(jié)構(gòu)圖、魯棒圖可以看成特殊的類圖,復(fù)合結(jié)構(gòu)圖主要用于反映類之間繼承、抽象、構(gòu)成、組合之類的關(guān)系,魯棒圖主要按照MVC設(shè)計(jì)模式,反映同層次類中的抽象繼承關(guān)系、不同層次類之間的調(diào)用關(guān)系。包圖主要用來對(duì)系統(tǒng)的構(gòu)成進(jìn)行包含關(guān)系的描述。2.2.1StarUML簡(jiǎn)介StarUML嚴(yán)格遵循UML規(guī)342.2.1StarUML簡(jiǎn)介根據(jù)圖的特點(diǎn),StarUML把所有的UML圖分為五類,包括用例視、分析視、設(shè)計(jì)視、實(shí)現(xiàn)視和發(fā)布視。StarUML只支持圖內(nèi)部的語(yǔ)法檢查,并不支持模型驗(yàn)證和一致性檢查,這表明在各種圖內(nèi)部,工具能夠很好地保證模型元素的合法使用,但不能保證圖與圖之間的聯(lián)系是否合法正確。StarUML的缺陷在于不支持業(yè)務(wù)建模,當(dāng)進(jìn)行管理信息系統(tǒng)等事務(wù)處理軟件的時(shí)候,可以借助Rationalrose進(jìn)行業(yè)務(wù)分析和建模工作。2.2.1StarUML簡(jiǎn)介根據(jù)圖的特點(diǎn),StarUML把352.2.2StarUML基本操作圖2-16StarUML軟件界面2.2.2StarUML基本操作圖2-16StarUM362.2.2StarUML基本操作圖2-17添加新工程2.2.2StarUML基本操作圖2-17添加新工程372.2.2StarUML基本操作圖2-17工程選擇2.2.2StarUML基本操作圖2-17工程選擇382.2.2StarUML基本操作圖2-18模型添加2.2.2StarUML基本操作圖2-18模型添加392.2.2StarUML基本操作圖2-19通過菜單添加圖2.2.2StarUML基本操作圖2-19通過菜單添加圖402.2.2StarUML基本操作
圖2-20通過ModelExplorer添加圖2.2.2StarUML基本操作圖2-20通412.2.2StarUML基本操作圖2-21通過菜單添加元素2.2.2StarUML基本操作圖2-21通過菜單添加元素422.2.2StarUML基本操作圖2-22通過ModelExplorer添加元素2.2.2StarUML基本操作圖2-22通過Model432.2.2StarUML基本操作圖2-23保存后的模型2.2.2StarUML基本操作圖2-23保存后的模型442.2.3StarUML建模示例圖2-24StarUML用例圖繪制示例2.2.3StarUML建模示例圖2-24StarUML452.2.3StarUML建模示例StarUML提供用例圖來支持需求建模。通常所有用例建立在一張用例圖中,當(dāng)系統(tǒng)規(guī)模龐大時(shí),可以分別用包圖來進(jìn)行分割組織。通常每個(gè)用例還應(yīng)該用活動(dòng)圖描述其過程細(xì)節(jié)。需求分析階段用例圖是需求分析模型的主要構(gòu)成部分。2.2.3StarUML建模示例StarUML提供用例圖來462.2.3StarUML建模示例2.2.3StarUML建模示例472.2.3StarUML建模示例圖2-25bStarUML類圖繪制示例2.2.3StarUML建模示例圖2-25bStarU482.2.3StarUML建模示例StarUML類圖包括(普通的)類圖、復(fù)合結(jié)構(gòu)圖、魯棒圖,復(fù)合結(jié)構(gòu)圖、魯棒圖是特殊形式的類圖。圖2-25a的類圖以復(fù)合結(jié)構(gòu)圖的格式繪制,圖2-25b的類圖以魯棒圖的格式繪制。復(fù)合結(jié)構(gòu)圖可以用于需求分析階段的分析類/實(shí)體類描述,魯棒圖可以用于設(shè)計(jì)階段的三層類圖描述。開發(fā)人員也可以(普通的)類圖為基礎(chǔ),進(jìn)行不同形式的類圖繪制。2.2.3StarUML建模示例StarUML類圖包括(普492.2.3StarUML建模示例圖2-26StarUML活動(dòng)圖繪制示例2.2.3StarUML建模示例圖2-26StarUM502.2.3StarUML建模示例StarUML不支持業(yè)務(wù)模型建模,因此使用StarUML只能用來描述用例過程和(詳細(xì)設(shè)計(jì)階段)的類方法進(jìn)行建模?;顒?dòng)圖可以在需求分析階段用來從用例行為者角度描述用例的操作過程,為后續(xù)使用狀態(tài)圖、時(shí)序圖、協(xié)作圖給類填充方法提供基礎(chǔ);活動(dòng)圖也可以在詳細(xì)設(shè)計(jì)中用來描述具體類方法的執(zhí)行過程,在業(yè)務(wù)分析時(shí)也可以用來描述業(yè)務(wù)用例的活動(dòng)過程。2.2.3StarUML建模示例StarUML不支持業(yè)務(wù)模512.2.3StarUML建模示例圖2-27StarUML狀態(tài)圖繪制示例2.2.3StarUML建模示例圖2-27StarUM522.2.3StarUML建模示例通常狀態(tài)多的重要類對(duì)象才會(huì)用StarUML的狀態(tài)圖來描述。狀態(tài)圖反映一個(gè)對(duì)象在其生命期內(nèi)經(jīng)歷的各個(gè)狀態(tài)的順序。狀態(tài)圖用來在設(shè)計(jì)階段幫助找出類圖中類的方法,每個(gè)狀態(tài)圖中的事件,實(shí)際上就是相應(yīng)類的一個(gè)方法。2.2.3StarUML建模示例通常狀態(tài)多的重要類對(duì)象才會(huì)532.2.3StarUML建模示例圖2-28StarUML序列圖繪制示例2.2.3StarUML建模示例圖2-28StarUM542.2.3StarUML建模示例StarUML使用序列圖來顯示某個(gè)用例中參與交互的對(duì)象的某個(gè)交互場(chǎng)景(全部場(chǎng)景可以由活動(dòng)圖進(jìn)行描述),這個(gè)交互場(chǎng)景中的事件是按時(shí)間順序排列的。設(shè)計(jì)階段,時(shí)序圖是用例活動(dòng)圖的一個(gè)場(chǎng)景,可以很好地幫助開發(fā)人員找出類的方法。2.2.3StarUML建模示例StarUML使用序列圖來552.2.3StarUML建模示例圖2-29StarUML協(xié)作圖繪制示例2.2.3StarUML建模示例圖2-29StarUM562.2.3StarUML建模示例StarUML使用協(xié)作圖全面反映一組對(duì)象之間的協(xié)作關(guān)系,對(duì)象之間的事件交互順序關(guān)系不再一目了然,除非對(duì)事件進(jìn)行編號(hào);當(dāng)協(xié)作圖反映多個(gè)場(chǎng)景下對(duì)象之間的交互事件時(shí),將無法進(jìn)行編號(hào),此時(shí)協(xié)作圖只能單純反映類對(duì)象之間的調(diào)用關(guān)系了。設(shè)計(jì)階段,協(xié)作圖全面反映各種類之間的調(diào)用關(guān)系。2.2.3StarUML建模示例StarUML使用協(xié)作圖全572.2.3StarUML建模示例圖2-30StarUML組件圖繪制示例2.2.3StarUML建模示例圖2-30StarUM582.2.3StarUML建模示例StarUML使用使用組件圖編譯后系統(tǒng)構(gòu)成(由組件為單位),組件指系統(tǒng)中的可分配實(shí)現(xiàn)單元。在系統(tǒng)設(shè)計(jì)和系統(tǒng)配置階段,配置圖描述系統(tǒng)的物理構(gòu)成。2.2.3StarUML建模示例StarUML使用使用組件592.2.3StarUML建模示例圖2-31StarUML部署圖繪制示例2.2.3StarUML建模示例圖2-31StarUM602.2.3StarUML建模示例StarUML使用部署圖顯示運(yùn)行時(shí)系統(tǒng)結(jié)構(gòu)的實(shí)現(xiàn)圖。在設(shè)計(jì)階段和配置階段,從部署圖中可以了解到軟件和硬件組件之間的物理關(guān)系以及處理節(jié)點(diǎn)的組件分布情況。2.2.3StarUML建模示例StarUML使用部署圖顯612.3RationalRose2.3.1RationalRose簡(jiǎn)介2.3.2RationalRose基本操作2.4.3RationalRose建模示例2.3RationalRose2.3.1Rationa622.3.1RationalRose簡(jiǎn)介RationalRose是基于UML的面向?qū)ο罂梢暬9ぞ撸梢杂脕磉M(jìn)行軟件系統(tǒng)的面向?qū)ο髽I(yè)務(wù)分析、需求分析與設(shè)計(jì),是當(dāng)前最流行的可視化軟件開發(fā)工具之一。RationalRose和現(xiàn)有的各種建模環(huán)境和開發(fā)環(huán)境(數(shù)據(jù)建模,Web開發(fā),VisualStudio和C++)很好地結(jié)合起來,支持靈活性需求、快捷方便溝通的一種迭代式開發(fā)解決方案。與StarUML一樣,嚴(yán)格遵循UML規(guī)則,提供包括業(yè)務(wù)用例圖、用例圖、類圖、序列圖、狀態(tài)圖、活動(dòng)圖、協(xié)作圖、組件圖、部署圖以及包圖等十種圖。根據(jù)各種圖自身的特點(diǎn),RationalRose把所有的UML圖分為四類,包括用例視、邏輯視、實(shí)現(xiàn)視和發(fā)布視。用例視圖:只關(guān)心系統(tǒng)的高級(jí)功能,不關(guān)心系統(tǒng)的具體實(shí)現(xiàn)細(xì)節(jié)。邏輯視圖:關(guān)注系統(tǒng)實(shí)現(xiàn)什么功能、以及如何實(shí)現(xiàn)這些功能。構(gòu)件視圖:可看出系統(tǒng)實(shí)現(xiàn)的物理結(jié)構(gòu)。部署視圖:關(guān)心系統(tǒng)的實(shí)際部署情況。RationalRose支持圖內(nèi)部的語(yǔ)法檢查,也支持模型驗(yàn)證和一致性檢查,利用這一點(diǎn),開發(fā)人員可以實(shí)現(xiàn)連貫一致的軟件開發(fā)。2.3.1RationalRose簡(jiǎn)介Rational632.3.2RationalRose基本操作RationalRose工程框架選擇界面2.3.2RationalRose基本操作Rationa642.3.2RationalRose基本操作RationalRose的主界面2.3.2RationalRose基本操作Rationa652.3.2RationalRose基本操作在“rationalunifiedprocess”工程框架下,每個(gè)工程由“UseCaseView”、“LogicalView”、“ComponentView”、“DeploymentView”等四個(gè)視圖構(gòu)成,“UseCaseView”包括“BusinessUseCaseModel”和“UseCaseModel”兩種模型組成,“LogicalView”由“AnalysisModel”、“BusinessObjectModel”、“DesignModel”三種模型組成,“ComponentView”由“ImplementationModel”模型,“DeploymentView”由配置圖構(gòu)成。為了方便開發(fā)團(tuán)隊(duì)人員交流溝通,減少圖的冗余,建議開發(fā)團(tuán)隊(duì)按照開發(fā)過程不同階段的需要對(duì)不同模型下的圖進(jìn)行組織。在“BusinessUseCaseModel”中包括業(yè)務(wù)用例圖以及描述每個(gè)用例過程的活動(dòng)圖;在“UseCaseModel”中包括用例圖;在“AnalysisModel”中包括描述每個(gè)用例的活動(dòng)圖;在“BusinessObjectModel”中描述問題域的系統(tǒng)類;這三個(gè)模型合在一起,構(gòu)成完整的需求分析模型。在“DesignModel”中包括三層設(shè)計(jì)類圖,并用時(shí)序圖、狀態(tài)圖、交互圖對(duì)三層設(shè)計(jì)類圖進(jìn)行輔助描述。設(shè)計(jì)過程是迭代進(jìn)行的,開始的設(shè)計(jì)類圖只有相應(yīng)的類名,實(shí)體類只有屬性,每個(gè)類的類方法是空白的。通過繪制時(shí)序圖、狀態(tài)圖、交互圖,可以不斷給類找到方法并添加到類中,最終得倒的設(shè)計(jì)類圖是較為完整的,既包括屬性,也包括方法。2.3.2RationalRose基本操作在“ratio662.3.2RationalRose基本操作RationalRose中創(chuàng)建新圖或新的圖元素對(duì)象2.3.2RationalRose基本操作Rationa67
2.4.3RationalRose建模示例
RationalRose
2.4.3RationalRose建模示例
Ratio68
2.4.3RationalRose建模示例
在RationalRose中,業(yè)務(wù)用例圖本質(zhì)上是用例圖的特例?!癇usinessUseCaseModel”,選擇“NEW→用例圖”,就可以建立業(yè)務(wù)用例圖。選中欲操作的業(yè)務(wù)用例圖,在圖中添加角色、用例,并給建立的“用例”和“角色”選擇“businessusecase”和“businessactor”版型,把“業(yè)務(wù)用例”和“業(yè)務(wù)角色”以不同于用例和角色的外觀呈現(xiàn)。RationalRose中其他圖的繪制,與StarUML中相應(yīng)圖的繪制雷同。具體可參照RationalRose的用戶手冊(cè)。
2.4.3RationalRose建模示例
在Rati69
2.4建模工具的比較
Visio能夠用來描述各種軟件開發(fā)的模型,可以說是目前最能夠用圖形方式來表達(dá)各種商業(yè)圖形用途的工具,不僅提供包括結(jié)構(gòu)化模型的各種模型元素,也包括面向?qū)ο竽P偷母鞣NUML模型元素。它跟微軟的office產(chǎn)品的能夠很好兼容,能夠把圖形直接復(fù)制或者內(nèi)嵌到WORD的文檔中??梢苑奖愕赜糜诮Y(jié)構(gòu)化建模,也可用于面向?qū)ο蠼?。由于Visio本身沒有提供模型語(yǔ)法檢查(一個(gè)圖內(nèi)部,模型元素使用是否合法、模型元素是否能夠放在特定圖中)、模型驗(yàn)證(不同圖之間,模型是否能夠彼此組合,組合形式是否合法)和一致性檢查(不同開發(fā)階段的不同模型之間是否滿足前后一致性)等功能,因此這些任務(wù)都只能由開發(fā)人員自己來完成,自動(dòng)化程度不高。且Visio工具沒有體現(xiàn)面向?qū)ο笏枷耄糜诿嫦驅(qū)ο蠓椒ㄏ碌牡_發(fā)則有點(diǎn)牽強(qiáng)。當(dāng)然,由于目前的面向?qū)ο蠼9ぞ咴谀承┓矫鏇]有提供相應(yīng)模型,或者某些建模功能不夠強(qiáng)大,開發(fā)人員也可以使用Visio,開發(fā)面向?qū)ο蟮_發(fā)過程中的部分次要模型。
2.4建模工具的比較
Visio能夠用來描述各種軟件開發(fā)70Rose是市場(chǎng)上第一個(gè)提供對(duì)基于UML的面向建模工具。在面向?qū)ο髴?yīng)用程序開發(fā)領(lǐng)域,RationalRose自推出以來就受到了業(yè)界的矚目,并一直引領(lǐng)著可視化建模工具的發(fā)展。越來越多的軟件公司和開發(fā)團(tuán)隊(duì)開始或者已經(jīng)采用RationalRose,用于大型項(xiàng)目開發(fā)的分析、建模與設(shè)計(jì)等方面。RationalRose支持包括業(yè)務(wù)建模、分析、設(shè)計(jì)等整個(gè)開發(fā)過程活動(dòng)中的復(fù)雜系統(tǒng)建模;支持UML的模型語(yǔ)法檢查、模型驗(yàn)證和一致性檢查;其團(tuán)隊(duì)管理特性能夠很好地支持大型、復(fù)雜的項(xiàng)目和分布式開發(fā)團(tuán)隊(duì);支持有關(guān)模型文檔的自動(dòng)發(fā)布;允許利用雙向工程技術(shù)可以實(shí)現(xiàn)面向?qū)ο蟮牡介_發(fā)。此外,Rose還為其他一些領(lǐng)域提供支持,如用戶定制和產(chǎn)品性能改進(jìn)。
2.4建模工具的比較
Rose是市場(chǎng)上第一個(gè)提供對(duì)基于UML的面向建模工具。在面向71StarUML可以視為RationalRose的簡(jiǎn)化版本,它支持了基本的面向?qū)ο笮枨蠓治?、設(shè)計(jì)模型開發(fā),但沒有支持項(xiàng)目前期的業(yè)務(wù)過程分析。StarUML支持模型語(yǔ)法檢查,但不支持模型驗(yàn)證和一致性檢查,模型驗(yàn)證和一致性檢查必須由用戶自己完成;StarUML支持有關(guān)模型文檔的自動(dòng)發(fā)布;也支持RationalRose模型在工具中的重用。
2.4建模工具的比較
StarUML可以視為RationalRose的簡(jiǎn)化版本,72
在具體實(shí)踐中,Visio適用于建立結(jié)構(gòu)化方法下的各種模型。在項(xiàng)目前期,Visio的組織結(jié)構(gòu)圖可以稍加改造,用于項(xiàng)目目標(biāo)單位的組織結(jié)構(gòu)模型構(gòu)建(必須注意:Visio的組織結(jié)構(gòu)圖是以層次管理的形式來描述組織,不適于直接使用);Visio的業(yè)務(wù)流程圖可以用于描述目標(biāo)單位的業(yè)務(wù)流程。其他的粗略設(shè)計(jì)模型(如體系結(jié)構(gòu)圖、網(wǎng)絡(luò)拓?fù)鋱D、系統(tǒng)架構(gòu)圖、系統(tǒng)流程圖、功能結(jié)構(gòu)圖)均可用Visio描述。在需求分析階段,可以描述層次化的數(shù)據(jù)流圖;在總體設(shè)計(jì)階段,可以描述系統(tǒng)構(gòu)成(系統(tǒng)流程圖)、功能結(jié)構(gòu)圖、IPO圖和ER模型;在詳細(xì)設(shè)計(jì)階段,可以描述具體模塊的程序流程。
2.4建模工具的比較
在具體實(shí)踐中,Visio適用于建立結(jié)構(gòu)化方法下的各種73
在具體實(shí)踐中,StarUML和RationalRose用于面向?qū)ο蠓椒ㄏ碌母鞣N模型構(gòu)建,由于面向?qū)ο蠼9ぞ咴谀P蜕喜粔驈?qiáng)大,因此采用面向?qū)ο笏枷脒M(jìn)行軟件項(xiàng)目開發(fā)時(shí),依然需要使用Visio建立一些結(jié)構(gòu)化模型。在項(xiàng)目前期,對(duì)Visio的組織結(jié)構(gòu)圖稍加改造,用于項(xiàng)目目標(biāo)單位的組織結(jié)構(gòu)模型構(gòu)建;用RationalRose的業(yè)務(wù)模型中的業(yè)務(wù)用例圖,建立目標(biāo)系統(tǒng)概要性的業(yè)務(wù)服務(wù),用活動(dòng)圖進(jìn)一步描述每個(gè)業(yè)務(wù)用例的流程;用Visio描述系統(tǒng)體系結(jié)構(gòu);用配置圖描述粗略設(shè)計(jì)的網(wǎng)絡(luò)拓?fù)鋱D和系統(tǒng)架構(gòu),用RationalRose的組件圖描述系統(tǒng)構(gòu)成;用Visio描述系統(tǒng)的功能結(jié)構(gòu)圖。在需求分析階段,RationalRose的用例圖、活動(dòng)圖分別描述系統(tǒng)所有用例和用例過程,用類圖描述系統(tǒng)中的實(shí)體類/分析類。(3)在總體設(shè)計(jì)階段,用三層類圖描述系統(tǒng)構(gòu)成,活動(dòng)圖、狀態(tài)圖、協(xié)作圖、時(shí)序圖用于查找類圖中的方法;用Visio描述功能結(jié)構(gòu)和ER模型;用組件圖描述系統(tǒng)構(gòu)成。在詳細(xì)設(shè)計(jì)階段,可以用活動(dòng)圖描述類中方法的程序流程。
2.4建模工具的比較
在具體實(shí)踐中,StarUML和Rational74
在軟件開發(fā)過程中,選擇適當(dāng)?shù)能浖ぞ哌M(jìn)行自動(dòng)化和半自動(dòng)化的開發(fā),可以極大地簡(jiǎn)化開發(fā)工作(包括軟件分析設(shè)計(jì)、測(cè)試、維護(hù))、提高軟件生產(chǎn)率和改善軟件的質(zhì)量。
一般軟件工具分為六類:模擬工具、開發(fā)工具、測(cè)試和評(píng)估工具、運(yùn)行和維護(hù)工具、性能質(zhì)量工具和程序設(shè)計(jì)支持工具。工具既有支持單個(gè)任務(wù)的工具,也有囊括生命周期全過程或部分過程的工具。
按照工具在軟件開發(fā)過程承擔(dān)的任務(wù),可以把它們分為六類:軟件需求工具(包括需求建模工具和需求追蹤工具)、軟件設(shè)計(jì)工具(用于創(chuàng)建和檢查軟件設(shè)計(jì))、軟件構(gòu)造工具(包括程序編輯器、編譯器和代碼生成器、解釋器和調(diào)試器等)、軟件測(cè)試工具(包括測(cè)試生成器、測(cè)試執(zhí)行框架、測(cè)試評(píng)價(jià)工具、測(cè)試管理工具和性能分析工具)、軟件維護(hù)工具(包括可視化工具和重構(gòu)工具)、軟件配置管理工具。第二章軟件開發(fā)工具在軟件開發(fā)過程中,選擇適當(dāng)?shù)能浖ぞ哌M(jìn)行自動(dòng)化和半自752.1visio2.2starUML2.3RationalRose2.4建模工具的比較第二章軟件開發(fā)工具2.1visio第二章軟件開發(fā)工具762.1visio2.1.1Visio簡(jiǎn)介2.1.2Visio2013基本操作2.1.3Visio2013建模示例2.1visio2.1.1Visio簡(jiǎn)介772.1.1Visio簡(jiǎn)介Visio是一款就復(fù)雜信息、系統(tǒng)和流程進(jìn)行可視化處理、分析和交流的專業(yè)商用矢量繪圖軟件,其提供了大量的矢量圖形基本素材,幫助用戶繪制各種流程圖、結(jié)構(gòu)圖或軟件開發(fā)模型,可以促進(jìn)對(duì)系統(tǒng)和流程的了解,深入了解復(fù)雜信息并利用這些知識(shí)做出更好的業(yè)務(wù)決策。
使用Visio,軟件開發(fā)人員能夠進(jìn)行項(xiàng)目前期階段的組織建模(組織結(jié)構(gòu)圖)和業(yè)務(wù)建模(業(yè)務(wù)流程圖)、粗略設(shè)計(jì)的軟件系統(tǒng)體系(體系結(jié)構(gòu)圖)、硬件配置(網(wǎng)絡(luò)拓?fù)鋱D)、系統(tǒng)框架(系統(tǒng)架構(gòu)圖)、系統(tǒng)組成(系統(tǒng)流程圖)、功能結(jié)構(gòu)(功能結(jié)構(gòu)圖);可以繪制需求分析階段的分析模型(數(shù)據(jù)流圖);總體設(shè)計(jì)階段的系統(tǒng)組成(系統(tǒng)流程圖)、功能結(jié)構(gòu)(功能結(jié)構(gòu)圖)、軟件模塊構(gòu)成(IPO圖)、數(shù)據(jù)構(gòu)成(ER模型);還可用于描述詳細(xì)設(shè)計(jì)階段的模塊細(xì)節(jié)(程序流程圖)。2.1.1Visio簡(jiǎn)介Visio是一款就復(fù)雜信782.1.1Visio簡(jiǎn)介圖2-1Visio軟件的啟動(dòng)界面2.1.1Visio簡(jiǎn)介圖2-1Visio軟件的啟動(dòng)界面792.1.1Visio簡(jiǎn)介圖2-2軟件的基本界面2.1.1Visio簡(jiǎn)介圖2-2軟件的基本界面802.1.1Visio簡(jiǎn)介圖2-3軟件界面2.1.1Visio簡(jiǎn)介圖2-3軟件界面812.1.1Visio簡(jiǎn)介Visio軟件的界面主要由6部分組成,其作用如下:標(biāo)題欄由Visio標(biāo)志、快速訪問工具欄、窗口管理按鈕3個(gè)部分組成;其中,快速訪問工具欄是Visio提供的一組快捷按鈕。窗口管理按鈕提供了4種按鈕供用戶操作Visio窗口;工具選項(xiàng)卡是一組重要的按鈕欄,其提供了多種按鈕,允許用戶切換功能區(qū)及應(yīng)用Visio中的各種工具。主要包括【開始】、【插入】、【設(shè)計(jì)】、【數(shù)據(jù)】、【進(jìn)程】、【審閱】、【視圖】等選項(xiàng)卡。選項(xiàng)卡中的工具通常按組的方式排列,各組之間以分隔線的方式隔開。例如,【開始】選項(xiàng)卡就包括了【剪貼板】、【字體】、【段落】、【工具】、【形狀格式】、【排列】和【編輯】等組;功能區(qū)中提供了Visio軟件的各種基本工具。單擊工具選項(xiàng)卡中的特定按鈕,即可切換功能區(qū)中的內(nèi)容;【形狀】窗格,在使用Visio的模板功能創(chuàng)建Visio繪圖之后,會(huì)自動(dòng)打開【形狀】窗格,并在該窗格中提供各種模具組供用戶選擇,可將其拖動(dòng)添加到Visio繪圖中;繪圖窗格是Visio中最重要的窗格,在其中提供了標(biāo)尺、繪圖頁(yè)以及網(wǎng)格等工具,允許用戶在繪圖頁(yè)上繪制各種圖形,并使用標(biāo)尺來規(guī)范圖形的尺寸;在繪圖窗格的底部,還提供了頁(yè)標(biāo)簽的功能,允許用戶為一個(gè)Visio繪圖創(chuàng)建多個(gè)繪圖頁(yè),并設(shè)置繪圖頁(yè)的名稱;狀態(tài)欄的作用是顯示繪圖頁(yè)或其上各種對(duì)象的狀態(tài),以供用戶參考和編輯。2.1.1Visio簡(jiǎn)介Visio軟件的界面主要由6部分組822.1.2Visio2013基本操作這里可以打開.vsdx格式的所有的繪圖如在已有的模板中找不到適用的模板,可以在這邊輸入所需要的模板類型圖2-3模板選擇窗口2.1.2Visio2013基本操作這里可以打開.vs832.1.2Visio2013基本操作圖2-4Visio軟件操作界面2.1.2Visio2013基本操作圖2-4Visi842.1.3Visio2013建模示例圖2-5Visio繪制組織結(jié)構(gòu)圖2.1.3Visio2013建模示例圖2-5Visio852.1.3Visio2013建模示例
在項(xiàng)目前期,組織結(jié)構(gòu)圖用于描述目標(biāo)單位的組織崗位構(gòu)成,為后續(xù)的業(yè)務(wù)分析打下基礎(chǔ)。
需要注意的是,Visio提供的組織結(jié)構(gòu)圖基本形式,通常都是體現(xiàn)上層元素對(duì)下層元素的領(lǐng)導(dǎo)、管理關(guān)系,與本書要求的組織結(jié)構(gòu)圖應(yīng)體現(xiàn)組織機(jī)構(gòu)的包含關(guān)系有一定的差異,需要進(jìn)行一定的改進(jìn),以體現(xiàn)組織機(jī)構(gòu)的包含關(guān)系,才能夠更好地用于組織分析的結(jié)果描述。
面向?qū)ο蠓椒ǖ腞ationalRose及StarUML工具,沒有提供相應(yīng)元素進(jìn)行組織結(jié)構(gòu)的描述,此時(shí)可以借助Visio進(jìn)行組織結(jié)構(gòu)描述。2.1.3Visio2013建模示例在項(xiàng)目前期,組織結(jié)862.1.3Visio2013建模示例圖2-6Visio繪制業(yè)務(wù)流程圖2.1.3Visio2013建模示例圖2-6Visio872.1.3Visio2013建模示例項(xiàng)目前期業(yè)務(wù)分析的結(jié)果,以業(yè)務(wù)流程圖的形式進(jìn)行描述。業(yè)務(wù)流程將是后續(xù)粗略設(shè)計(jì)以及需求分析階段進(jìn)行需求分析的基礎(chǔ)。Visio提供的業(yè)務(wù)流程圖有多種,其中的“跨職能流程圖”樣式,能夠最好地滿足結(jié)構(gòu)化業(yè)務(wù)建模的需要??缏毮芰鞒虉D有橫向、縱向兩種方式,為方便用戶直觀觀察和理解,建議選擇縱向的跨職能流程圖描述業(yè)務(wù)分析的結(jié)果。2.1.3Visio2013建模示例項(xiàng)目前期業(yè)務(wù)分析的結(jié)882.1.3Visio2013建模示例圖2-7Visio繪制系統(tǒng)體系結(jié)構(gòu)圖2.1.3Visio2013建模示例圖2-7Visi892.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)階段,體系結(jié)構(gòu)圖反映目標(biāo)系統(tǒng)的抽象構(gòu)成及構(gòu)成部分之間的相互關(guān)系,這些構(gòu)成既包括硬件網(wǎng)絡(luò),也包括軟件。Visio沒有提供專門的體系結(jié)構(gòu)圖樣式,可借助其中的“基本框圖”和“基本流程圖”元素,進(jìn)行系統(tǒng)的體系結(jié)構(gòu)描述。
面向?qū)ο蠊ぞ逺ationalRose及StarUML,沒有提供專門模型來支持體系結(jié)構(gòu)圖的繪制,此時(shí)可以借助Visio進(jìn)行系統(tǒng)體系結(jié)構(gòu)圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)902.1.3Visio2013建模示例圖2-8Visio繪制網(wǎng)絡(luò)拓?fù)鋱D2.1.3Visio2013建模示例圖2-8Visi912.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)階段,網(wǎng)絡(luò)拓?fù)鋱D反映目標(biāo)系統(tǒng)的硬件網(wǎng)絡(luò)構(gòu)成和它們之間的連接方式。Visio提供了各種豐富的網(wǎng)絡(luò)節(jié)點(diǎn)元素,方便開發(fā)人員繪制直觀的網(wǎng)絡(luò)拓?fù)鋱D。面向?qū)ο蠓椒ǖ腞ationalRose及StarUML工具,提供的配置圖元素很少,往往不足以全面完整地描述復(fù)雜系統(tǒng)中的硬件設(shè)施及網(wǎng)絡(luò)配置,此時(shí)可以借助Visio進(jìn)行系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)922.1.3Visio2013建模示例圖2-9Visio繪制系統(tǒng)架構(gòu)圖2.1.3Visio2013建模示例圖2-9Visi932.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)階段,系統(tǒng)架構(gòu)圖體現(xiàn)軟件部件之間的聯(lián)系和部件的布局。Visio也沒有提供專門模型來支持系統(tǒng)架構(gòu)圖的繪制,此時(shí)可以借助Visio“基本框圖”、“基本流程圖”中的部分元素,進(jìn)行系統(tǒng)結(jié)構(gòu)圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)942.1.3Visio2013建模示例圖2-10Visio繪制系統(tǒng)流程圖2.1.3Visio2013建模示例圖2-10Vis952.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)和總體設(shè)計(jì)階段,系統(tǒng)流程圖是結(jié)構(gòu)化方法下描述系統(tǒng)物理構(gòu)成的模型。Visio沒有提供專門的系統(tǒng)流程圖樣式,可借助其中的“基本框圖”、“基本流程圖”、“網(wǎng)絡(luò)拓?fù)鋱D”部分元素,組合在一起進(jìn)行系統(tǒng)流程圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)962.1.3Visio2013建模示例圖2-11Visio繪制功能結(jié)構(gòu)圖2.1.3Visio2013建模示例圖2-11Vis972.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)和總體設(shè)計(jì)階段,功能結(jié)構(gòu)圖從用戶角度反映目標(biāo)系統(tǒng)的整體構(gòu)成,也是體現(xiàn)一種包含關(guān)系。Visio沒有提供專門的系統(tǒng)流程圖樣式,可借助其中的“基本框圖”、“基本流程圖”部分元素,組合在一起進(jìn)行功能結(jié)構(gòu)圖的描述。面向?qū)ο蠊ぞ逺ationalRose及StarUML,沒有提供專門模型來支持功能結(jié)構(gòu)圖的繪制,此時(shí)可以借助Visio進(jìn)行進(jìn)行系統(tǒng)功能結(jié)構(gòu)圖的描述。2.1.3Visio2013建模示例在項(xiàng)目前期的粗略設(shè)計(jì)982.1.3Visio2013建模示例圖2-12Visio繪制數(shù)據(jù)流圖2.1.3Visio2013建模示例圖2-12Vis992.1.3Visio2013建模示例在需求分析階段,數(shù)據(jù)流圖是結(jié)構(gòu)化方法下需求模型的主要構(gòu)成部分。通常繪制數(shù)據(jù)流圖逐步細(xì)化、逐步精化的一個(gè)過程。Visio提供了專門的“數(shù)據(jù)流圖表”樣式,支持系統(tǒng)數(shù)據(jù)流圖的的描述。2.1.3Visio2013建模示例在需求分析階段,數(shù)據(jù)1002.1.3Visio2013建模示例圖2-13Visio繪制IPO圖2.1.3Visio2013建模示例圖2-13Vis1012.1.3Visio2013建模示例在總體設(shè)計(jì)階段,IPO圖從軟件角度描述了目標(biāo)系統(tǒng)的構(gòu)成,通常繪制IPO圖是逐步細(xì)化、逐步精化的一個(gè)過程。Visio沒有提供專門的IPO圖,開發(fā)人員可借助其中的“基本框圖”、“基本流程圖”部分元素,組合在一起進(jìn)行IPO圖的描述。2.1.3Visio2013建模示例在總體設(shè)計(jì)階段,IP1022.1.3Visio2013建模示例圖2-14Visio繪制E-R模型2.1.3Visio2013建模示例圖2-14Vis1032.1.3Visio2013建模示例在總體設(shè)計(jì)階段,ER模型用于描述數(shù)據(jù)的概念模型。Visio提供了專門的“數(shù)據(jù)庫(kù)模型圖”樣式,支持系統(tǒng)的實(shí)體關(guān)系模型描述。2.1.3Visio2013建模示例在總體設(shè)計(jì)階段,ER1042.1.3Visio2013建模示例圖2-15Visio繪制程序流程圖模型2.1.3Visio2013建模示例圖2-15Vis1052.1.3Visio2013建模示例在項(xiàng)目的詳細(xì)設(shè)計(jì)階段,程序流程圖描述各個(gè)模塊的算法實(shí)現(xiàn)細(xì)節(jié)。Visio沒有提供專門的“程序流程圖”樣式,可以用基本流程圖進(jìn)行模塊算法的詳細(xì)描述。2.1.3Visio2013建模示例在項(xiàng)目的詳細(xì)設(shè)計(jì)階段1062.2starUML2.2.1StarUML簡(jiǎn)介2.2.2StarUML基本操作2.2.3StarUML建模示例2.2starUML2.2.1StarUML簡(jiǎn)介1072.2.1StarUML簡(jiǎn)介StarUML嚴(yán)格遵循UML規(guī)則,提供包括用例圖、類圖、序列圖、狀態(tài)圖、活動(dòng)圖、協(xié)作圖、組件圖、部署圖以及復(fù)合結(jié)構(gòu)圖(CompositeStructureDiagram)、魯棒圖(RobustnessDiagram)、包圖等十一種圖。其中復(fù)合結(jié)構(gòu)圖、魯棒圖可以看成特殊的類圖,復(fù)合結(jié)構(gòu)圖主要用于反映類之間繼承、抽象、構(gòu)成、組合之類的關(guān)系,魯棒圖主要按照MVC設(shè)計(jì)模式,反映同層次類中的抽象繼承關(guān)系、不同層次類之間的調(diào)用關(guān)系。包圖主要用來對(duì)系統(tǒng)的構(gòu)成進(jìn)行包含關(guān)系的描述。2.2.1StarUML簡(jiǎn)介StarUML嚴(yán)格遵循UML規(guī)1082.2.1StarUML簡(jiǎn)介根據(jù)圖的特點(diǎn),StarUML把所有的UML圖分為五類,包括用例視、分析視、設(shè)計(jì)視、實(shí)現(xiàn)視和發(fā)布視。StarUML只支持圖內(nèi)部的語(yǔ)法檢查,并不支持模型驗(yàn)證和一致性檢查,這表明在各種圖內(nèi)部,工具能夠很好地保證模型元素的合法使用,但不能保證圖與圖之間的聯(lián)系是否合法正確。StarUML的缺陷在于不支持業(yè)務(wù)建模,當(dāng)進(jìn)行管理信息系統(tǒng)等事務(wù)處理軟件的時(shí)候,可以借助Rationalrose進(jìn)行業(yè)務(wù)分析和建模工作。2.2.1StarUML簡(jiǎn)介根據(jù)圖的特點(diǎn),StarUML把1092.2.2StarUML基本操作圖2-16StarUML軟件界面2.2.2StarUML基本操作圖2-16StarUM1102.2.2StarUML基本操作圖2-17添加新工程2.2.2StarUML基本操作圖2-17添加新工程1112.2.2StarUML基本操作圖2-17工程選擇2.2.2StarUML基本操作圖2-17工程選擇1122.2.2StarUML基本操作圖2-18模型添加2.2.2StarUML基本操作圖2-18模型添加1132.2.2StarUML基本操作圖2-19通過菜單添加圖2.2.2StarUML基本操作圖2-19通過菜單添加圖1142.2.2StarUML基本操作
圖2-20通過ModelExplorer添加圖2.2.2StarUML基本操作圖2-20通1152.2.2StarUML基本操作圖2-21通過菜單添加元素2.2.2StarUML基本操作圖2-21通過菜單添加元素1162.2.2StarUML基本操作圖2-22通過ModelExplorer添加元素2.2.2StarUML基本操作圖2-22通過Model1172.2.2StarUML基本操作圖2-23保存后的模型2.2.2StarUML基本操作圖2-23保存后的模型1182.2.3StarUML建模示例圖2-24StarUML用例圖繪制示例2.2.3StarUML建模示例圖2-24StarUML1192.2.3StarUML建模示例StarUML提供用例圖來支持需求建模。通常所有用例建立在一張用例圖中,當(dāng)系統(tǒng)規(guī)模龐大時(shí),可以分別用包圖來進(jìn)行分割組織。通常每個(gè)用例還應(yīng)該用活動(dòng)圖描述其過程細(xì)節(jié)。需求分析階段用例圖是需求分析模型的主要構(gòu)成部分。2.2.3StarUML建模示例StarUML提供用例圖來1202.2.3StarUML建模示例2.2.3StarUML建模示例1212.2.3StarUML建模示例圖2-25bStarUML類圖繪制示例2.2.3StarUML建模示例圖2-25bStarU1222.2.3StarUML建模示例StarUML類圖包括(普通的)類圖、復(fù)合結(jié)構(gòu)圖、魯棒圖,復(fù)合結(jié)構(gòu)圖、魯棒圖是特殊形式的類圖。圖2-25a的類圖以復(fù)合結(jié)構(gòu)圖的格式繪制,圖2-25b的類圖以魯棒圖的格式繪制。復(fù)合結(jié)構(gòu)圖可以用于需求分析階段的分析類/實(shí)體類描述,魯棒圖可以用于設(shè)計(jì)階段的三層類圖描述。開發(fā)人員也可以(普通的)類圖為基礎(chǔ),進(jìn)行不同形式的類圖繪制。2.2.3StarUML建模示例StarUML類圖包括(普1232.2.3StarUML建模示例圖2-26StarUML活動(dòng)圖繪制示例2.2.3StarUML建模示例圖2-26StarUM1242.2.3StarUML建模示例StarUML不支持業(yè)務(wù)模型建模,因此使用StarUML只能用來描述用例過程和(詳細(xì)設(shè)計(jì)階段)的類方法進(jìn)行建模?;顒?dòng)圖可以在需求分析階段用來從用例行為者角度描述用例的操作過程,為后續(xù)使用狀態(tài)圖、時(shí)序圖、協(xié)作圖給類填充方法提供基礎(chǔ);活動(dòng)圖也可以在詳細(xì)設(shè)計(jì)中用來描述具體類方法的執(zhí)行過程,在業(yè)務(wù)分析時(shí)也可以用來描述業(yè)務(wù)用例的活動(dòng)過程。2.2.3StarUML建模示例StarUML不支持業(yè)務(wù)模1252.2.3StarUML建模示例圖2-27StarUML狀態(tài)圖繪制示例2.2.3StarUML建模示例圖2-27StarUM1262.2.3StarUML建模示例通常狀態(tài)多的重要類對(duì)象才會(huì)用StarUML的狀態(tài)圖來描述。狀態(tài)圖反映一個(gè)對(duì)象在其生命期內(nèi)經(jīng)歷的各個(gè)狀態(tài)的順序。狀態(tài)圖用來在設(shè)計(jì)階段幫助找出類圖中類的方法,每個(gè)狀態(tài)圖中的事件,實(shí)際上就是相應(yīng)類的一個(gè)方法。2.2.3StarUML建模示例通常狀態(tài)多的重要類對(duì)象才會(huì)1272.2.3StarUML建模示例圖2-28StarUML序列圖繪制示例2.2.3StarUML建模示例圖2-28StarUM1282.2.3StarUML建模示例StarUML使用序列圖來顯示某個(gè)用例中參與交互的對(duì)象的某個(gè)交互場(chǎng)景(全部場(chǎng)景可以由活動(dòng)圖進(jìn)行描述),這個(gè)交互場(chǎng)景中的事件是按時(shí)間順序排列的。設(shè)計(jì)階段,時(shí)序圖是用例活動(dòng)圖的一個(gè)場(chǎng)景,可以很好地幫助開發(fā)人員找出類的方法。2.2.3StarUML建模示例StarUML使用序列圖來1292.2.3StarUML建模示例圖2-29StarUML協(xié)作圖繪制示例2.2.3StarUML建模示例圖2-29StarUM1302.2.3StarUML建模示例StarUML使用協(xié)作圖全面反映一組對(duì)象之間的協(xié)作關(guān)系,對(duì)象之間的事件交互順序關(guān)系不再一目了然,除非對(duì)事件進(jìn)行編號(hào);當(dāng)協(xié)作圖反映多個(gè)場(chǎng)景下對(duì)象之間的交互事件時(shí),將無法進(jìn)行編號(hào),此時(shí)協(xié)作圖只能單純反映類對(duì)象之間的調(diào)用關(guān)系了。設(shè)計(jì)階段,協(xié)作圖全面反映各種類之間的調(diào)用關(guān)系。2.2.3StarUML建模示例StarUML使用協(xié)作圖全1312.2.3StarUML建模示例圖2-30StarUML組件圖繪制示例2.2.3StarUML建模示例圖2-30StarUM1322.2.3StarUML建模示例StarUML使用使用組件圖編譯后系統(tǒng)構(gòu)成(由組件為單位),組件指系統(tǒng)中的可分配實(shí)現(xiàn)單元。在系統(tǒng)設(shè)計(jì)和系統(tǒng)配置階段,配置圖描述系統(tǒng)的物理構(gòu)成。2.2.3StarUML建模示例StarUML使用使用組件1332.2.3StarUML建模示例圖2-31StarUML部署圖繪制示例2.2.3StarUML建模示例圖2-31StarUM1342.2.3StarUML建模示例StarUML使用部署圖顯示運(yùn)行時(shí)系統(tǒng)結(jié)構(gòu)的實(shí)現(xiàn)圖。在設(shè)計(jì)階段和配置階段,從部署圖中可以了解到軟件和硬件組件之間的物理關(guān)系以及處理節(jié)點(diǎn)的組件分布情況。2.2.3StarUML建模示例StarUML使用部署圖顯1352.3RationalRose2.3.1RationalRose簡(jiǎn)介2.3.2RationalRose基本操作2.4.3RationalRose建模示例2.3RationalRose2.3.1Rationa1362.3.1RationalRose簡(jiǎn)介RationalRose是基于UML的面向?qū)ο罂梢暬9ぞ撸梢杂脕磉M(jìn)行軟件系統(tǒng)的面向?qū)ο髽I(yè)務(wù)分析、需求分析與設(shè)計(jì),是當(dāng)前最流行的可視化軟件開發(fā)工具之一。RationalRose和現(xiàn)有的各種建模環(huán)境和開發(fā)環(huán)境(數(shù)據(jù)建模,Web開發(fā),VisualStudio和C++)很好地結(jié)合起來,支持靈活性需求、快捷方便溝通的一種迭代式開發(fā)解決方案。與StarUML一樣,嚴(yán)格遵循UML規(guī)則,提供包括業(yè)務(wù)用例圖、用例圖、類圖、序列圖、狀態(tài)圖、活動(dòng)圖、協(xié)作圖、組件圖、部署圖以及包圖等十種圖。根據(jù)各種圖自身的特點(diǎn),RationalRose把所有的UML圖分為四類,包括用例視、邏輯視、實(shí)現(xiàn)視和發(fā)布視。用例視圖:只關(guān)心系統(tǒng)的高級(jí)功能,不關(guān)心系統(tǒng)的具體實(shí)現(xiàn)細(xì)節(jié)。邏輯視圖:關(guān)注系統(tǒng)實(shí)現(xiàn)什么功能、以及如何實(shí)現(xiàn)這些功能。構(gòu)件視圖:可看出系統(tǒng)實(shí)現(xiàn)的物理結(jié)構(gòu)。部署視圖:關(guān)心系統(tǒng)的實(shí)際部署情況。RationalRose支持圖內(nèi)部的語(yǔ)法檢查,也支持模型驗(yàn)證和一致性檢查,利用這一點(diǎn),開發(fā)人員可以實(shí)現(xiàn)連貫一致的軟件開發(fā)。2.3.1RationalRose簡(jiǎn)介Rational1372.3.2RationalRose基本操作RationalRose工程框架選擇界面2.3.2RationalRose基本操作Rationa1382.3.2RationalRose基本操作RationalRose的主界面2.3.2RationalRose基本操作Rationa1392.3.2RationalRose基本操作在“rationalunifiedprocess”工程框架下,每個(gè)工程由“UseCaseView”、“LogicalView”、“ComponentView”、“DeploymentView”等四個(gè)視圖構(gòu)成,“UseCaseView”包括“BusinessUseCaseModel”和“UseCaseModel”兩種模型組成,“LogicalView”由“AnalysisModel”、“BusinessObjectModel”、“DesignModel”三種模型組成,“ComponentView”由“ImplementationModel”模型,“DeploymentView”由配置圖構(gòu)成。為了方便開發(fā)團(tuán)隊(duì)人員交流溝通,減少圖的冗余,建議開發(fā)團(tuán)隊(duì)按照開發(fā)過程不同階段的需要對(duì)不同模型下的圖進(jìn)行組織。在“BusinessUseCaseModel”中包括業(yè)務(wù)用例圖以及描述每個(gè)用例過程的活動(dòng)圖;在“UseCaseModel”中包括用例圖;在“AnalysisModel”中包括描述每個(gè)用例的活動(dòng)圖;在“BusinessObjectModel”中描述問題域的系統(tǒng)類;這三個(gè)模型合在一起,構(gòu)成完整的需求分析模型。在“DesignModel”中包括三層設(shè)計(jì)類圖,并用時(shí)序圖、狀態(tài)圖、交互圖對(duì)三層設(shè)計(jì)類圖進(jìn)行輔助描述。設(shè)計(jì)過程是迭代進(jìn)行的,開始的設(shè)計(jì)類圖只有相應(yīng)的類名,實(shí)體類只有屬性,每個(gè)類的類方法是空白的。通過繪制時(shí)序圖、狀態(tài)圖、交互圖,可以不斷給類找到方法并添加到類中,最終得倒的設(shè)計(jì)類圖是較為完整的,既包括屬性,也包括方法。2.3.2RationalRos
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度土地整治項(xiàng)目個(gè)人土地承包合同2篇
- 2025年廣西中油昆侖投資有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年浙江溫嶺飛洲集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年福建廈門鼓旅會(huì)務(wù)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年浙江中合工程管理有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年牛津譯林版九年級(jí)歷史下冊(cè)月考試卷
- 2025年湘教版必修2物理下冊(cè)階段測(cè)試試卷含答案
- 2025年度魚塘租賃合同(含漁業(yè)產(chǎn)業(yè)鏈整合及供應(yīng)鏈管理)3篇
- 2025年度牛奶包裝設(shè)計(jì)及定制采購(gòu)合同4篇
- 2025年粵教滬科版九年級(jí)歷史下冊(cè)月考試卷含答案
- 疥瘡病人的護(hù)理
- 人工智能算法與實(shí)踐-第16章 LSTM神經(jīng)網(wǎng)絡(luò)
- 17個(gè)崗位安全操作規(guī)程手冊(cè)
- 2025年山東省濟(jì)南市第一中學(xué)高三下學(xué)期期末統(tǒng)一考試物理試題含解析
- 中學(xué)安全辦2024-2025學(xué)年工作計(jì)劃
- 網(wǎng)絡(luò)安全保障服務(wù)方案(網(wǎng)絡(luò)安全運(yùn)維、重保服務(wù))
- 2024年鄉(xiāng)村振興(產(chǎn)業(yè)、文化、生態(tài))等實(shí)施戰(zhàn)略知識(shí)考試題庫(kù)與答案
- 現(xiàn)代科學(xué)技術(shù)概論智慧樹知到期末考試答案章節(jié)答案2024年成都師范學(xué)院
- 軟件模塊化設(shè)計(jì)與開發(fā)標(biāo)準(zhǔn)與規(guī)范
- 2024年遼寧鐵道職業(yè)技術(shù)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 有機(jī)農(nóng)業(yè)種植模式
評(píng)論
0/150
提交評(píng)論