版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程軟件工程1 1軟件工程軟件工程第二章第二章 需求分析需求分析2.1 2.1 系統(tǒng)分析系統(tǒng)分析2.2 2.2 軟件需求分析軟件需求分析2.3 2.3 結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析方法2.4 2.4 快速原型化方法快速原型化方法2.5 2.5 需求定義與評(píng)審需求定義與評(píng)審軟件工程軟件工程2 22.1 2.1 系統(tǒng)分析系統(tǒng)分析基于計(jì)算機(jī)的系統(tǒng)的系統(tǒng)元素包括硬件、軟件、基于計(jì)算機(jī)的系統(tǒng)的系統(tǒng)元素包括硬件、軟件、人、數(shù)據(jù)庫(kù)、文檔和過(guò)程。人、數(shù)據(jù)庫(kù)、文檔和過(guò)程。系統(tǒng)分析的目標(biāo)系統(tǒng)分析的目標(biāo)1) 識(shí)別用戶要求識(shí)別用戶要求2) 評(píng)價(jià)系統(tǒng)的可行性,進(jìn)行經(jīng)濟(jì)和技術(shù)分析評(píng)價(jià)系統(tǒng)的可行性,進(jìn)行經(jīng)濟(jì)和技術(shù)分析3)
2、把功能分配給硬件、軟件、人、數(shù)據(jù)庫(kù)和其把功能分配給硬件、軟件、人、數(shù)據(jù)庫(kù)和其它系統(tǒng)元素它系統(tǒng)元素4) 建立成本和進(jìn)度限制建立成本和進(jìn)度限制5) 生成系統(tǒng)規(guī)格說(shuō)明生成系統(tǒng)規(guī)格說(shuō)明軟件工程軟件工程3 3識(shí)別用戶要求識(shí)別用戶要求n分析員必須考慮以下問(wèn)題:分析員必須考慮以下問(wèn)題:n識(shí)別希望的功能和性能范圍識(shí)別希望的功能和性能范圍; ; n確定系統(tǒng)的功能、性能、約束和接口確定系統(tǒng)的功能、性能、約束和接口; ;功能功能和和性能性能v 可靠性可靠性和和質(zhì)量質(zhì)量v 總的系統(tǒng)目標(biāo)總的系統(tǒng)目標(biāo)v 成本成本與與進(jìn)度限制進(jìn)度限制制造需求制造需求v 市場(chǎng)與競(jìng)爭(zhēng)情況市場(chǎng)與競(jìng)爭(zhēng)情況v 有效的技術(shù)有效的技術(shù)v 將來(lái)可能的擴(kuò)充
3、將來(lái)可能的擴(kuò)充軟件工程軟件工程4 4可行性研究可行性研究n可行性研究可行性研究v從經(jīng)濟(jì)可行性、技術(shù)可行性、法律可行性和從經(jīng)濟(jì)可行性、技術(shù)可行性、法律可行性和用戶操作可行性等方面評(píng)價(jià)系統(tǒng)是否值得做,用戶操作可行性等方面評(píng)價(jià)系統(tǒng)是否值得做,是否能做。是否能做??尚行匝芯康牟襟E可行性研究的步驟 1) 確定項(xiàng)目的規(guī)模和目標(biāo)確定項(xiàng)目的規(guī)模和目標(biāo) 2) 研究當(dāng)前正在運(yùn)行的系統(tǒng)研究當(dāng)前正在運(yùn)行的系統(tǒng) 3) 建立新系統(tǒng)的高層邏輯模型建立新系統(tǒng)的高層邏輯模型 4) 導(dǎo)出和評(píng)價(jià)各種方案導(dǎo)出和評(píng)價(jià)各種方案軟件工程軟件工程5 55) 推薦可行的方案推薦可行的方案6) 編寫(xiě)可行性研究報(bào)告編寫(xiě)可行性研究報(bào)告n成本估算成本
4、估算 專家估算技術(shù)(專家估算技術(shù)(delphi技術(shù))技術(shù)) 成本估算模型(成本估算模型(cocomo)n效益估算效益估算 投資回收期投資回收期 純收入純收入 投資回收率投資回收率經(jīng)濟(jì)可行性經(jīng)濟(jì)可行性 成本成本效益分析效益分析軟件工程軟件工程6 6技術(shù)可行性技術(shù)可行性 技術(shù)風(fēng)險(xiǎn)分析技術(shù)風(fēng)險(xiǎn)分析n技術(shù)解決方案的實(shí)用性技術(shù)解決方案的實(shí)用性使用的技術(shù)實(shí)用化程度使用的技術(shù)實(shí)用化程度技術(shù)解決方案合理程度技術(shù)解決方案合理程度n技術(shù)資源的可用性技術(shù)資源的可用性參與人員的工作基礎(chǔ)參與人員的工作基礎(chǔ)基礎(chǔ)硬件基礎(chǔ)硬件/軟件的可用性軟件的可用性軟件工具實(shí)用性軟件工具實(shí)用性軟件工程軟件工程7 7法律可行性法律可行性 侵
5、權(quán)和責(zé)任問(wèn)題侵權(quán)和責(zé)任問(wèn)題n專利法專利法n著作權(quán)法著作權(quán)法n軟件保護(hù)條例軟件保護(hù)條例n用戶類型:用戶類型:外行型熟練型專家型外行型熟練型專家型n操作習(xí)慣操作習(xí)慣n使用單位的計(jì)算機(jī)使用情況使用單位的計(jì)算機(jī)使用情況n使用單位的規(guī)章制度使用單位的規(guī)章制度用戶操作可行性用戶操作可行性軟件工程軟件工程8 82.2 2.2 軟件需求分析軟件需求分析n需求分析是一項(xiàng)軟件工程活動(dòng),其目的是:需求分析是一項(xiàng)軟件工程活動(dòng),其目的是: 清楚地理解所要解決的問(wèn)題,完整地獲取用清楚地理解所要解決的問(wèn)題,完整地獲取用戶要求;戶要求; 刻劃出軟件的功能和性能;刻劃出軟件的功能和性能; 指明軟件與其他系統(tǒng)元素的接口;指明軟件
6、與其他系統(tǒng)元素的接口; 建立軟件必須滿足的約束。建立軟件必須滿足的約束。1. 1. 軟件需求分析的目的軟件需求分析的目的 軟件工程軟件工程9 9n需求分析是一項(xiàng)軟件工程活動(dòng),它包括:需求分析是一項(xiàng)軟件工程活動(dòng),它包括:1) 需求獲取需求獲取 刻劃出軟件的刻劃出軟件的功能功能和和性能性能; 指明軟件與其他系統(tǒng)元素的指明軟件與其他系統(tǒng)元素的接口接口; 建立軟件必須滿足的建立軟件必須滿足的約束約束。2) 需求建模需求建模需求分析建立起來(lái)的模型為日后軟件設(shè)計(jì)需求分析建立起來(lái)的模型為日后軟件設(shè)計(jì)人員提供了可被翻譯成人員提供了可被翻譯成數(shù)據(jù)數(shù)據(jù)、體系結(jié)構(gòu)體系結(jié)構(gòu)、接口接口和和處理過(guò)程處理過(guò)程設(shè)計(jì)的模型。設(shè)
7、計(jì)的模型。2. 2. 需求分析的任務(wù)需求分析的任務(wù)軟件工程軟件工程10103) 需求規(guī)格說(shuō)明需求規(guī)格說(shuō)明需求規(guī)格說(shuō)明為開(kāi)發(fā)人員和用戶提供軟件需求規(guī)格說(shuō)明為開(kāi)發(fā)人員和用戶提供軟件開(kāi)發(fā)完成時(shí)質(zhì)量評(píng)價(jià)的依據(jù)。開(kāi)發(fā)完成時(shí)質(zhì)量評(píng)價(jià)的依據(jù)。4) 需求評(píng)審需求評(píng)審 需求分析研究的對(duì)象是需求分析研究的對(duì)象是用戶的要求用戶的要求。 必須必須全面理解全面理解用戶的各項(xiàng)要求,用戶的各項(xiàng)要求,準(zhǔn)確表準(zhǔn)確表達(dá)達(dá)被接受的用戶要求。被接受的用戶要求。 只有經(jīng)過(guò)確切描述的軟件需求才能成為只有經(jīng)過(guò)確切描述的軟件需求才能成為軟件設(shè)計(jì)的基礎(chǔ)。軟件設(shè)計(jì)的基礎(chǔ)。 軟件工程軟件工程11 11n軟件開(kāi)發(fā)是要實(shí)現(xiàn)軟件開(kāi)發(fā)是要實(shí)現(xiàn)目標(biāo)系統(tǒng)的物
8、理模型目標(biāo)系統(tǒng)的物理模型。需求。需求分析的任務(wù)就是借助于分析的任務(wù)就是借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)的邏輯模型出目標(biāo)系統(tǒng)的邏輯模型,解決目標(biāo)系統(tǒng),解決目標(biāo)系統(tǒng) “ “做做什么什么” ” 的問(wèn)題。的問(wèn)題。目標(biāo)系統(tǒng)目標(biāo)系統(tǒng)當(dāng)前系統(tǒng)當(dāng)前系統(tǒng)物理模型物理模型邏輯模型邏輯模型模型化模型化抽象化抽象化物理模型物理模型邏輯模型邏輯模型具體化具體化實(shí)例化實(shí)例化理理解解需需求求導(dǎo)導(dǎo)出出怎么做怎么做做什么做什么軟件工程軟件工程12123 3、需求獲取、需求獲取n需求獲取是在問(wèn)題及其最終解決方案之間架設(shè)需求獲取是在問(wèn)題及其最終解決方案之間架設(shè)橋梁的第一步。橋梁的第一步。n需求獲取的目的是清
9、楚地理解所要解決的問(wèn)題,需求獲取的目的是清楚地理解所要解決的問(wèn)題,完整地獲得用戶的需求。完整地獲得用戶的需求。n獲取需求的一個(gè)必不可少的結(jié)果是對(duì)項(xiàng)目中描獲取需求的一個(gè)必不可少的結(jié)果是對(duì)項(xiàng)目中描述的客戶需求的普遍理解。一旦理解了需求,述的客戶需求的普遍理解。一旦理解了需求,分析者、開(kāi)發(fā)者和客戶就能探索出描述這些需分析者、開(kāi)發(fā)者和客戶就能探索出描述這些需求的多種解決方案。求的多種解決方案。軟件工程軟件工程1313軟件需求的層次軟件需求的層次1)業(yè)務(wù)需求業(yè)務(wù)需求 反映了組織或客戶對(duì)系統(tǒng)、產(chǎn)品反映了組織或客戶對(duì)系統(tǒng)、產(chǎn)品高層次的目標(biāo)要求,它們一般在項(xiàng)目視圖和高層次的目標(biāo)要求,它們一般在項(xiàng)目視圖和范圍文
10、檔中給予說(shuō)明。范圍文檔中給予說(shuō)明。2)用戶需求用戶需求 描述用戶使用軟件需要完成哪些描述用戶使用軟件需要完成哪些任務(wù),它們可通過(guò)使用實(shí)例圖或腳本說(shuō)明加任務(wù),它們可通過(guò)使用實(shí)例圖或腳本說(shuō)明加以闡明。以闡明。3)功能功能非功能需求非功能需求 定義了開(kāi)發(fā)者必須實(shí)現(xiàn)定義了開(kāi)發(fā)者必須實(shí)現(xiàn)的軟件功能,而非功能需求如表所示的軟件功能,而非功能需求如表所示:軟件工程軟件工程1414 性性能能要要求求 實(shí)實(shí)時(shí)時(shí)性性; 其其他他時(shí)時(shí)間間要要求求, 如如響響應(yīng)應(yīng)時(shí)時(shí)間間、 處處理理時(shí)時(shí)間間、包包傳傳送送時(shí)時(shí)間間等等; 資資源源配配置置要要求求; 精精確確度度、處處理理量量等等要要求求 可可靠靠性性要要求求 有有效效
11、性性; 數(shù)數(shù)據(jù)據(jù)完完整整性性 安安全全保保密密要要求求 安安全全性性; 保保密密性性 運(yùn)運(yùn)行行要要求求 使使用用頻頻度度、 運(yùn)運(yùn)行行期期限限; 控控制制方方式式; 對(duì)對(duì)操操作作員員要要求求 產(chǎn)產(chǎn)品品要要求求 物物理理要要求求 系系統(tǒng)統(tǒng)的的規(guī)規(guī)模模等等 開(kāi)開(kāi)發(fā)發(fā)類類型型 實(shí)實(shí)用用性性開(kāi)開(kāi)發(fā)發(fā)或或試試驗(yàn)驗(yàn)性性開(kāi)開(kāi)發(fā)發(fā) 項(xiàng)項(xiàng)目目估估算算 開(kāi)開(kāi)發(fā)發(fā)工工作作量量估估計(jì)計(jì) 開(kāi)開(kāi)發(fā)發(fā)方方法法 質(zhì)質(zhì)量量控控制制標(biāo)標(biāo)準(zhǔn)準(zhǔn); 里里程程碑碑和和評(píng)評(píng)審審; 驗(yàn)驗(yàn)收收標(biāo)標(biāo)準(zhǔn)準(zhǔn) 優(yōu)優(yōu)先先順順序序 權(quán)權(quán)衡衡各各種種質(zhì)質(zhì)量量目目標(biāo)標(biāo)要要求求,排排定定優(yōu)優(yōu)先先實(shí)實(shí)現(xiàn)現(xiàn)次次序序 過(guò)過(guò)程程要要求求 可可維維護(hù)護(hù)性性 可可理理解解性
12、性、可可測(cè)測(cè)試試性性、可可修修改改性性、可可移移植植性性 軟件工程軟件工程1515需求獲取過(guò)程需求獲取過(guò)程n需求獲取包括以下活動(dòng):需求獲取包括以下活動(dòng):1) 發(fā)現(xiàn)和分析問(wèn)題發(fā)現(xiàn)和分析問(wèn)題 發(fā)現(xiàn)問(wèn)題癥結(jié),并分析問(wèn)發(fā)現(xiàn)問(wèn)題癥結(jié),并分析問(wèn)題的原因題的原因/結(jié)果關(guān)系。結(jié)果關(guān)系。2) 獲取獲取需求需求 根據(jù)對(duì)問(wèn)題的理解定義需求。根據(jù)對(duì)問(wèn)題的理解定義需求。a) 使用調(diào)查研究方法收集信息;使用調(diào)查研究方法收集信息;b) 遵循需求獲取框架,按照三個(gè)成分觀察:遵循需求獲取框架,按照三個(gè)成分觀察:即即數(shù)據(jù)數(shù)據(jù)、過(guò)程過(guò)程和和接口接口。3) 需求歸檔需求歸檔 以草稿形式歸檔調(diào)查結(jié)果。形式以草稿形式歸檔調(diào)查結(jié)果。形式有
13、用例、決策表、需求表等。有用例、決策表、需求表等。軟件工程軟件工程1616需求獲取技術(shù)的基本特征需求獲取技術(shù)的基本特征n好的需求獲取技術(shù),對(duì)于規(guī)范需求獲取活動(dòng),好的需求獲取技術(shù),對(duì)于規(guī)范需求獲取活動(dòng),高效準(zhǔn)確地獲取需求定義,是十分重要的。高效準(zhǔn)確地獲取需求定義,是十分重要的。n好的需求獲取技術(shù),應(yīng)具有如下基本特征:好的需求獲取技術(shù),應(yīng)具有如下基本特征: 提供便于溝通的工具,如易于理解的語(yǔ)言提供便于溝通的工具,如易于理解的語(yǔ)言和直觀的圖表;和直觀的圖表; 提供定義系統(tǒng)邊界(交互)的方法;提供定義系統(tǒng)邊界(交互)的方法; 提供支持抽象的機(jī)制,如提供支持抽象的機(jī)制,如“分解分解”、“映映射射”等;等
14、;軟件工程軟件工程1717 鼓勵(lì)分析員使用面向問(wèn)題的術(shù)語(yǔ)思考問(wèn)題,鼓勵(lì)分析員使用面向問(wèn)題的術(shù)語(yǔ)思考問(wèn)題,編寫(xiě)文檔;編寫(xiě)文檔; 為分析員提供多種可供選擇的解決方案;為分析員提供多種可供選擇的解決方案; 適應(yīng)需求的變化。適應(yīng)需求的變化。n適于以上特征的需求獲取方法:適于以上特征的需求獲取方法: 基于數(shù)據(jù)流圖的結(jié)構(gòu)化分析方法;基于數(shù)據(jù)流圖的結(jié)構(gòu)化分析方法; 基于用例(基于用例(use case)的建模方法。)的建模方法。n需求獲取技術(shù)的關(guān)鍵點(diǎn)在于:需求獲取技術(shù)的關(guān)鍵點(diǎn)在于:a. 深入淺出深入淺出 需求獲取要盡可能全面、細(xì)致。需求獲取要盡可能全面、細(xì)致。軟件工程軟件工程1818獲取的需求是個(gè)獲取的需求
15、是個(gè)全集全集,系統(tǒng)真正實(shí)現(xiàn)的是,系統(tǒng)真正實(shí)現(xiàn)的是個(gè)個(gè)子集子集。分析時(shí)的調(diào)研內(nèi)容并不都納入到。分析時(shí)的調(diào)研內(nèi)容并不都納入到新系統(tǒng)中,目的在于以后的擴(kuò)充。新系統(tǒng)中,目的在于以后的擴(kuò)充。b. 以流程為主線以流程為主線 在與用戶交流的過(guò)程中,應(yīng)該用流程將所在與用戶交流的過(guò)程中,應(yīng)該用流程將所有的內(nèi)容串起來(lái)。如信息、組織結(jié)構(gòu)、處有的內(nèi)容串起來(lái)。如信息、組織結(jié)構(gòu)、處理規(guī)則等。這樣便于交流溝通。理規(guī)則等。這樣便于交流溝通。流程描述有宏觀,也有微觀。既要強(qiáng)調(diào)總流程描述有宏觀,也有微觀。既要強(qiáng)調(diào)總體的業(yè)務(wù)流程、全生存周期的業(yè)務(wù)流程,體的業(yè)務(wù)流程、全生存周期的業(yè)務(wù)流程,又要對(duì)流程細(xì)化,有分支的業(yè)務(wù)流程。又要對(duì)流程
16、細(xì)化,有分支的業(yè)務(wù)流程。軟件工程軟件工程1919需求獲取應(yīng)遵循的原則需求獲取應(yīng)遵循的原則n抽象和分解是在人們認(rèn)識(shí)世界和改造世界的長(zhǎng)抽象和分解是在人們認(rèn)識(shí)世界和改造世界的長(zhǎng)期實(shí)踐中總結(jié)出來(lái)的行之有效的原則,在需求期實(shí)踐中總結(jié)出來(lái)的行之有效的原則,在需求獲取的過(guò)程中需遵循的三個(gè)原則:獲取的過(guò)程中需遵循的三個(gè)原則:a. 分解分解:捕獲問(wèn)題空間的:捕獲問(wèn)題空間的整體整體 部分關(guān)系部分關(guān)系。如問(wèn)題子問(wèn)題分解;如問(wèn)題子問(wèn)題分解;b. 抽象抽象:捕獲問(wèn)題空間的:捕獲問(wèn)題空間的一般化一般化 特殊化關(guān)特殊化關(guān)系系。如問(wèn)題的不同變型;。如問(wèn)題的不同變型;c.投影投影:捕獲問(wèn)題空間的:捕獲問(wèn)題空間的多維視圖多維視圖
17、。即從不。即從不同角度考察。同角度考察。軟件工程軟件工程2020需求獲取的步驟需求獲取的步驟n軟件開(kāi)發(fā)項(xiàng)目和組織文化的不同,對(duì)于需求開(kāi)軟件開(kāi)發(fā)項(xiàng)目和組織文化的不同,對(duì)于需求開(kāi)發(fā)沒(méi)有一個(gè)簡(jiǎn)單的、公式化的途徑。發(fā)沒(méi)有一個(gè)簡(jiǎn)單的、公式化的途徑。n下面下面9個(gè)步驟,針對(duì)信息系統(tǒng)的需求獲取。個(gè)步驟,針對(duì)信息系統(tǒng)的需求獲取。1) 定義項(xiàng)目的視圖和范圍定義項(xiàng)目的視圖和范圍 包括組織結(jié)構(gòu)圖、包括組織結(jié)構(gòu)圖、各部門的崗位各部門的崗位/角色列表。角色列表。2) 確定用戶類確定用戶類 包括人員包括人員/責(zé)任矩陣。責(zé)任矩陣。3) 確定目標(biāo)系統(tǒng)的業(yè)務(wù)工作流確定目標(biāo)系統(tǒng)的業(yè)務(wù)工作流 包括物流、資包括物流、資金流、信息流,
18、建立業(yè)務(wù)工作流模型。金流、信息流,建立業(yè)務(wù)工作流模型。軟件工程軟件工程21214) 運(yùn)用需求獲取技術(shù)運(yùn)用需求獲取技術(shù)開(kāi)發(fā)反映主要業(yè)務(wù)規(guī)則的開(kāi)發(fā)反映主要業(yè)務(wù)規(guī)則的用例(或數(shù)據(jù)流圖)用例(或數(shù)據(jù)流圖)并設(shè)置優(yōu)先級(jí)。并設(shè)置優(yōu)先級(jí)。 5) 收集來(lái)自用戶的收集來(lái)自用戶的質(zhì)量特性信息和其他非功能質(zhì)量特性信息和其他非功能需求需求 將性能、安全性、可靠性等需求和其將性能、安全性、可靠性等需求和其他設(shè)計(jì)約束結(jié)合業(yè)務(wù)規(guī)則,形成功能需求。他設(shè)計(jì)約束結(jié)合業(yè)務(wù)規(guī)則,形成功能需求。6) 分類在用例(或數(shù)據(jù)流圖)中涉及的數(shù)據(jù)分類在用例(或數(shù)據(jù)流圖)中涉及的數(shù)據(jù) 包括數(shù)據(jù)的組成和數(shù)據(jù)之間的關(guān)系。包括數(shù)據(jù)的組成和數(shù)據(jù)之間的關(guān)系
19、。7) 詳細(xì)擬訂用例(或數(shù)據(jù)流圖)的規(guī)格說(shuō)明,詳細(xì)擬訂用例(或數(shù)據(jù)流圖)的規(guī)格說(shuō)明, 建立功能模型,并進(jìn)行審查,用以澄清需求建立功能模型,并進(jìn)行審查,用以澄清需求獲取的參與者對(duì)需求的理解。獲取的參與者對(duì)需求的理解。軟件工程軟件工程22228) 開(kāi)發(fā)并評(píng)估界面原型開(kāi)發(fā)并評(píng)估界面原型 設(shè)想輸入設(shè)備、輸出設(shè)想輸入設(shè)備、輸出設(shè)備、顯示風(fēng)格、顯示方式、輸出格式等,設(shè)備、顯示風(fēng)格、顯示方式、輸出格式等,建立接口規(guī)范和信息流傳輸規(guī)則。建立接口規(guī)范和信息流傳輸規(guī)則。9) 從功能描述中開(kāi)發(fā)概念測(cè)試用例從功能描述中開(kāi)發(fā)概念測(cè)試用例 用測(cè)試用用測(cè)試用例來(lái)驗(yàn)證用例(或數(shù)據(jù)流圖)、功能需求和例來(lái)驗(yàn)證用例(或數(shù)據(jù)流圖)、
20、功能需求和原型。原型。軟件工程軟件工程2323n需求獲取可能是軟件開(kāi)發(fā)中最困難、最關(guān)鍵、需求獲取可能是軟件開(kāi)發(fā)中最困難、最關(guān)鍵、最易出錯(cuò)及最需要交流的方面。表現(xiàn)在:最易出錯(cuò)及最需要交流的方面。表現(xiàn)在: 需求的不穩(wěn)定性需求的不穩(wěn)定性:在整個(gè)軟件生存周期內(nèi):在整個(gè)軟件生存周期內(nèi)軟件需求會(huì)隨著時(shí)間的推移發(fā)生變化;軟件需求會(huì)隨著時(shí)間的推移發(fā)生變化; 需求的不準(zhǔn)確性需求的不準(zhǔn)確性:用戶和開(kāi)發(fā)人員的認(rèn)識(shí):用戶和開(kāi)發(fā)人員的認(rèn)識(shí)會(huì)隨著使用系統(tǒng)實(shí)現(xiàn)業(yè)務(wù)流程的實(shí)踐逐步會(huì)隨著使用系統(tǒng)實(shí)現(xiàn)業(yè)務(wù)流程的實(shí)踐逐步提高,一開(kāi)始不可能設(shè)想得面面俱到。提高,一開(kāi)始不可能設(shè)想得面面俱到。n需求獲取只有通過(guò)有效的客戶需求獲取只有通過(guò)
21、有效的客戶/開(kāi)發(fā)者的合作開(kāi)發(fā)者的合作才能成功。才能成功。 軟件工程軟件工程2424針對(duì)信息系統(tǒng)的需求調(diào)研方法針對(duì)信息系統(tǒng)的需求調(diào)研方法 調(diào)研調(diào)研用戶的組織結(jié)構(gòu)用戶的組織結(jié)構(gòu)、崗位設(shè)置崗位設(shè)置、職責(zé)定義職責(zé)定義,從功能上區(qū)分有多少個(gè)子系統(tǒng),劃分系統(tǒng)的從功能上區(qū)分有多少個(gè)子系統(tǒng),劃分系統(tǒng)的大致范圍,明確系統(tǒng)的目標(biāo)。大致范圍,明確系統(tǒng)的目標(biāo)。 調(diào)研每個(gè)子系統(tǒng)的調(diào)研每個(gè)子系統(tǒng)的工作流程工作流程、功能與處理規(guī)功能與處理規(guī)則則,收集原始信息資料,用數(shù)據(jù)流來(lái)表示物,收集原始信息資料,用數(shù)據(jù)流來(lái)表示物流、資金流、信息流三者的關(guān)系。流、資金流、信息流三者的關(guān)系。 對(duì)調(diào)研內(nèi)容事先準(zhǔn)備,針對(duì)不同管理層次的對(duì)調(diào)研內(nèi)容
22、事先準(zhǔn)備,針對(duì)不同管理層次的用戶詢問(wèn)不同的問(wèn)題,列出用戶詢問(wèn)不同的問(wèn)題,列出問(wèn)題清單問(wèn)題清單。將操。將操作層、管理層、決策層的需求既聯(lián)系又區(qū)分作層、管理層、決策層的需求既聯(lián)系又區(qū)分開(kāi)來(lái),形成一個(gè)需求的層次。開(kāi)來(lái),形成一個(gè)需求的層次。軟件工程軟件工程2525 對(duì)與用戶溝通的情況及時(shí)總結(jié)歸納,整理對(duì)與用戶溝通的情況及時(shí)總結(jié)歸納,整理調(diào)調(diào)研結(jié)果研結(jié)果,初步構(gòu)成,初步構(gòu)成需求基線需求基線。若基線符合要。若基線符合要求,則需求獲取完成。求,則需求獲取完成。n需求調(diào)研的主要手段:需求調(diào)研的主要手段: 發(fā)調(diào)查表;發(fā)調(diào)查表; 召開(kāi)調(diào)查會(huì);召開(kāi)調(diào)查會(huì); 向用戶領(lǐng)域的專家個(gè)別咨詢;向用戶領(lǐng)域的專家個(gè)別咨詢; 實(shí)地
23、考察,實(shí)地考察, 跟蹤現(xiàn)場(chǎng)業(yè)務(wù)流程;跟蹤現(xiàn)場(chǎng)業(yè)務(wù)流程; 查閱與待開(kāi)發(fā)系統(tǒng)有關(guān)的資料;查閱與待開(kāi)發(fā)系統(tǒng)有關(guān)的資料; 使用各種調(diào)查工具等。使用各種調(diào)查工具等。軟件工程軟件工程2626需求整理與表達(dá)的方法需求整理與表達(dá)的方法n采用采用窮舉方法窮舉方法可以避免遺漏??梢员苊膺z漏。n采用采用歸納方法歸納方法,通過(guò)對(duì)各種情況進(jìn)行綜合分類,通過(guò)對(duì)各種情況進(jìn)行綜合分類可以使問(wèn)題條理化。可以使問(wèn)題條理化。n采用采用抽象方法抽象方法,可以發(fā)現(xiàn)問(wèn)題的實(shí)質(zhì),抓住問(wèn),可以發(fā)現(xiàn)問(wèn)題的實(shí)質(zhì),抓住問(wèn)題的主要矛盾,忽略其次要矛盾。題的主要矛盾,忽略其次要矛盾。n需求整理可以多種手段共用,如組織結(jié)構(gòu)圖、需求整理可以多種手段共用,
24、如組織結(jié)構(gòu)圖、業(yè)務(wù)流程圖、多叉樹(shù)、關(guān)系矩陣、文字?jǐn)⑹?、業(yè)務(wù)流程圖、多叉樹(shù)、關(guān)系矩陣、文字?jǐn)⑹?、表格、圖形等。需求描述包括組織結(jié)構(gòu)與崗位表格、圖形等。需求描述包括組織結(jié)構(gòu)與崗位定義、業(yè)務(wù)流程、處理規(guī)則、數(shù)據(jù)項(xiàng)、功能以定義、業(yè)務(wù)流程、處理規(guī)則、數(shù)據(jù)項(xiàng)、功能以及及上述上述 5 個(gè)方面?zhèn)€方面的關(guān)系。的關(guān)系。軟件工程軟件工程27274. 4. 需求建模需求建模n需求建模是為了分析需求,以確定項(xiàng)目的確切需求建模是為了分析需求,以確定項(xiàng)目的確切需求。需求。n需求建模遵循三個(gè)原則:需求建模遵循三個(gè)原則: 劃分劃分:描述需求的整體:描述需求的整體部分關(guān)系;部分關(guān)系; 抽象抽象:描述需求的一般化:描述需求的一般化
25、特殊化關(guān)系;特殊化關(guān)系; 投影投影:描述需求的多維視圖;:描述需求的多維視圖;n定義系統(tǒng)模型要區(qū)分邏輯模型和物理模型。定義系統(tǒng)模型要區(qū)分邏輯模型和物理模型。n常用模型有常用模型有數(shù)據(jù)建模數(shù)據(jù)建模、功能建模功能建模和和過(guò)程建模過(guò)程建模。軟件工程軟件工程2828常用的分析方法常用的分析方法 面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法 (sa) 面向數(shù)據(jù)結(jié)構(gòu)的面向數(shù)據(jù)結(jié)構(gòu)的jackson方法方法 (jsd) 面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開(kāi)發(fā)方法面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開(kāi)發(fā)方法 (dssd) 面向?qū)ο蟮姆治龇椒嫦驅(qū)ο蟮姆治龇椒?(ooa) 等等軟件工程軟件工程2929n結(jié)構(gòu)化分析方法最
26、初只是著眼于數(shù)據(jù)流,自頂結(jié)構(gòu)化分析方法最初只是著眼于數(shù)據(jù)流,自頂向下,逐層分解,建立系統(tǒng)的處理流程,以數(shù)向下,逐層分解,建立系統(tǒng)的處理流程,以數(shù)據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。輯模型。n擴(kuò)充后,將建模技術(shù)擴(kuò)展到數(shù)據(jù)建模、功能建擴(kuò)充后,將建模技術(shù)擴(kuò)展到數(shù)據(jù)建模、功能建模和行為建模,以實(shí)體模和行為建模,以實(shí)體- -關(guān)系圖、數(shù)據(jù)流圖和關(guān)系圖、數(shù)據(jù)流圖和控制流圖、狀態(tài)控制流圖、狀態(tài)- -遷移圖為工具,數(shù)據(jù)字典為遷移圖為工具,數(shù)據(jù)字典為核心,從不同視點(diǎn)建立系統(tǒng)的分析模型。核心,從不同視點(diǎn)建立系統(tǒng)的分析模型。2.3 2.3 結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析方
27、法軟件工程軟件工程3030結(jié)構(gòu)化分析的分析模型結(jié)構(gòu)化分析的分析模型實(shí)體實(shí)體關(guān)系圖關(guān)系圖狀態(tài)狀態(tài)遷移圖遷移圖數(shù)據(jù)對(duì)象描述數(shù)據(jù)對(duì)象描述加工規(guī)格說(shuō)明加工規(guī)格說(shuō)明數(shù)據(jù)數(shù)據(jù)字典字典控制規(guī)格說(shuō)明控制規(guī)格說(shuō)明軟件工程軟件工程31311. 1. 數(shù)據(jù)建模數(shù)據(jù)建模n數(shù)據(jù)模型包括三種互相關(guān)聯(lián)的信息:數(shù)據(jù)對(duì)象,數(shù)據(jù)模型包括三種互相關(guān)聯(lián)的信息:數(shù)據(jù)對(duì)象,描述對(duì)象的屬性,描述對(duì)象間相互連接的關(guān)系。描述對(duì)象的屬性,描述對(duì)象間相互連接的關(guān)系。n在需求分析階段描述數(shù)據(jù)對(duì)象和它們之間的關(guān)在需求分析階段描述數(shù)據(jù)對(duì)象和它們之間的關(guān)系,使用了系,使用了e-r 圖。圖。n例如,在教學(xué)管理中,一個(gè)教師可以教授零門、例如,在教學(xué)管理中,一
28、個(gè)教師可以教授零門、一門或多門課程,每位學(xué)生也需要學(xué)習(xí)幾門課一門或多門課程,每位學(xué)生也需要學(xué)習(xí)幾門課程。因此,教學(xué)管理中涉及的對(duì)象有學(xué)生、教程。因此,教學(xué)管理中涉及的對(duì)象有學(xué)生、教師和課程。師和課程。軟件工程軟件工程3232教學(xué)數(shù)據(jù)模型教學(xué)數(shù)據(jù)模型學(xué)號(hào)學(xué)號(hào) 姓名姓名 專業(yè)專業(yè) 性別性別 學(xué)生學(xué)生職工號(hào)職工號(hào)姓名姓名專業(yè)專業(yè)職稱職稱年齡年齡教師教師課程號(hào)課程號(hào) 課程名課程名 學(xué)分學(xué)分 學(xué)時(shí)學(xué)時(shí)課程課程學(xué)號(hào)學(xué)號(hào)課程號(hào)課程號(hào)成績(jī)成績(jī)選課選課軟件工程軟件工程3333 實(shí)例的關(guān)聯(lián)有三種:一對(duì)一實(shí)例的關(guān)聯(lián)有三種:一對(duì)一 (1:1) ;一對(duì)多;一對(duì)多 (1:m) ;多對(duì)多;多對(duì)多 (n:m) 。 這種實(shí)例的
29、關(guān)聯(lián)稱為這種實(shí)例的關(guān)聯(lián)稱為“基數(shù)基數(shù)”,基數(shù)表明了,基數(shù)表明了“重復(fù)性重復(fù)性”。教師教師學(xué)生學(xué)生教授教授基數(shù)基數(shù):一位教師一位教師 基數(shù)基數(shù):多位學(xué)生多位學(xué)生參與度參與度: :必須必須 參與度參與度: :可選可選軟件工程軟件工程3434xy一個(gè)一個(gè)x與一個(gè)與一個(gè)y相關(guān)聯(lián)相關(guān)聯(lián)一個(gè)一個(gè)x與一個(gè)或多個(gè)與一個(gè)或多個(gè)y相關(guān)聯(lián)相關(guān)聯(lián)xy一個(gè)一個(gè)x與零個(gè)或一個(gè)與零個(gè)或一個(gè)y相關(guān)聯(lián)相關(guān)聯(lián)xy一個(gè)一個(gè)x與零個(gè)與零個(gè), 一個(gè)或多個(gè)一個(gè)或多個(gè)y相關(guān)聯(lián)相關(guān)聯(lián)xy一個(gè)一個(gè)x與一個(gè)與一個(gè)y或或z相關(guān)聯(lián)相關(guān)聯(lián)xyz一個(gè)一個(gè)x與一個(gè)與一個(gè)y與與z相關(guān)聯(lián)相關(guān)聯(lián)xyz軟件工程軟件工程35352.2. 功能建模和數(shù)據(jù)流功能建模和
30、數(shù)據(jù)流n最初最初, ,結(jié)構(gòu)化分析方法僅討論數(shù)據(jù)流建模,目標(biāo)結(jié)構(gòu)化分析方法僅討論數(shù)據(jù)流建模,目標(biāo)系統(tǒng)被表示成如圖所示的數(shù)據(jù)變換流程圖。系系統(tǒng)被表示成如圖所示的數(shù)據(jù)變換流程圖。系統(tǒng)的功能體現(xiàn)在核心的數(shù)據(jù)變換中。統(tǒng)的功能體現(xiàn)在核心的數(shù)據(jù)變換中。外部實(shí)體外部實(shí)體外部實(shí)體外部實(shí)體外部實(shí)體外部實(shí)體外部實(shí)體外部實(shí)體目標(biāo)目標(biāo)系統(tǒng)系統(tǒng)輸入信息輸入信息輸入信息輸入信息輸出信息輸出信息輸出信息輸出信息頂層數(shù)據(jù)流圖(上下文環(huán)境圖)頂層數(shù)據(jù)流圖(上下文環(huán)境圖)軟件工程軟件工程3636數(shù)據(jù)流圖中的主要圖形元素?cái)?shù)據(jù)流圖中的主要圖形元素?cái)?shù)據(jù)加工數(shù)據(jù)加工 (數(shù)據(jù)變換數(shù)據(jù)變換)數(shù)據(jù)源或數(shù)據(jù)潭數(shù)據(jù)源或數(shù)據(jù)潭 (外部實(shí)體外部實(shí)體)數(shù)
31、據(jù)流數(shù)據(jù)流數(shù)據(jù)存儲(chǔ)文件數(shù)據(jù)存儲(chǔ)文件或或或或軟件工程軟件工程3737分層的數(shù)據(jù)流圖分層的數(shù)據(jù)流圖軟件工程軟件工程3838實(shí)例考務(wù)處理系統(tǒng)的功能實(shí)例考務(wù)處理系統(tǒng)的功能(1) 對(duì)考生送來(lái)的報(bào)名單進(jìn)行檢查對(duì)考生送來(lái)的報(bào)名單進(jìn)行檢查;(2) 對(duì)合格的報(bào)名單編好準(zhǔn)考證號(hào)后將準(zhǔn)考證送給對(duì)合格的報(bào)名單編好準(zhǔn)考證號(hào)后將準(zhǔn)考證送給考生,并將匯總后的考生名單送給閱卷站考生,并將匯總后的考生名單送給閱卷站;(3) 對(duì)閱卷站送來(lái)的成績(jī)單進(jìn)行檢查,并根據(jù)考試對(duì)閱卷站送來(lái)的成績(jī)單進(jìn)行檢查,并根據(jù)考試中心制定的合格標(biāo)準(zhǔn)審定合格者中心制定的合格標(biāo)準(zhǔn)審定合格者;(4) 制作考生通知單制作考生通知單 (含成績(jī)及合格含成績(jī)及合格/不
32、合格標(biāo)志不合格標(biāo)志) 送給考生送給考生;(5) 按地區(qū)進(jìn)行成績(jī)分類統(tǒng)計(jì)和試題難度分析,產(chǎn)按地區(qū)進(jìn)行成績(jī)分類統(tǒng)計(jì)和試題難度分析,產(chǎn)生統(tǒng)計(jì)分析表。生統(tǒng)計(jì)分析表。軟件工程軟件工程3939頂層數(shù)據(jù)流圖頂層數(shù)據(jù)流圖考考生生考務(wù)考務(wù)處理系統(tǒng)處理系統(tǒng)考考試試中中心心閱卷站閱卷站不合格報(bào)名表不合格報(bào)名表報(bào)名表報(bào)名表準(zhǔn)考證準(zhǔn)考證考生通知單考生通知單成成績(jī)績(jī)單單合格標(biāo)準(zhǔn)合格標(biāo)準(zhǔn)錯(cuò)誤成績(jī)單錯(cuò)誤成績(jī)單考考生生名名單單統(tǒng)計(jì)分析表統(tǒng)計(jì)分析表軟件工程軟件工程4040 根據(jù)考務(wù)處理業(yè)務(wù),畫(huà)出頂層數(shù)據(jù)流圖,以反根據(jù)考務(wù)處理業(yè)務(wù),畫(huà)出頂層數(shù)據(jù)流圖,以反映最主要業(yè)務(wù)處理流程及系統(tǒng)與外界的關(guān)系。映最主要業(yè)務(wù)處理流程及系統(tǒng)與外界的關(guān)系
33、。 經(jīng)過(guò)分析,考務(wù)業(yè)務(wù)處理的主要功能應(yīng)當(dāng)有經(jīng)過(guò)分析,考務(wù)業(yè)務(wù)處理的主要功能應(yīng)當(dāng)有登登記報(bào)名單記報(bào)名單、統(tǒng)計(jì)成績(jī)統(tǒng)計(jì)成績(jī)兩個(gè)主要數(shù)據(jù)流。輸入的兩個(gè)主要數(shù)據(jù)流。輸入的源點(diǎn)和輸出終點(diǎn)是考生、考試中心和閱卷站。源點(diǎn)和輸出終點(diǎn)是考生、考試中心和閱卷站。 然后從輸入端開(kāi)始,根據(jù)考務(wù)業(yè)務(wù)工作流,畫(huà)然后從輸入端開(kāi)始,根據(jù)考務(wù)業(yè)務(wù)工作流,畫(huà)出數(shù)據(jù)流流經(jīng)的各加工框,逐步畫(huà)到輸出端,出數(shù)據(jù)流流經(jīng)的各加工框,逐步畫(huà)到輸出端,得到第得到第 0 層數(shù)據(jù)流圖。層數(shù)據(jù)流圖。軟件工程軟件工程4141報(bào)名表報(bào)名表準(zhǔn)考證準(zhǔn)考證1 1登記登記報(bào)名表報(bào)名表2統(tǒng)計(jì)統(tǒng)計(jì)成績(jī)成績(jī)不合格不合格報(bào)名表報(bào)名表考生通知單考生通知單成成績(jī)績(jī)單單統(tǒng)計(jì)分
34、析表統(tǒng)計(jì)分析表第第0 0層數(shù)據(jù)流圖層數(shù)據(jù)流圖考生名冊(cè)考生名冊(cè)合合格格標(biāo)標(biāo)準(zhǔn)準(zhǔn)考考生生名名單單錯(cuò)錯(cuò)誤誤成成績(jī)績(jī)單單軟件工程軟件工程4242第一層數(shù)據(jù)流圖第一層數(shù)據(jù)流圖 (a)(a)1.1 檢查檢查報(bào)名表報(bào)名表報(bào)名表報(bào)名表準(zhǔn)考證準(zhǔn)考證1.2編準(zhǔn)考證編準(zhǔn)考證號(hào)碼號(hào)碼不合格不合格報(bào)名表報(bào)名表考生名冊(cè)考生名冊(cè)考生名單考生名單合格合格報(bào)名表報(bào)名表1.3登記登記考生考生合格報(bào)名表合格報(bào)名表軟件工程軟件工程4343第一層數(shù)據(jù)流圖第一層數(shù)據(jù)流圖 (b)(b)2.1檢查檢查成績(jī)單成績(jī)單2.2審定審定合格者合格者考生名冊(cè)考生名冊(cè)正確正確成績(jī)單成績(jī)單2.3制作制作通知單通知單2.4分析統(tǒng)分析統(tǒng)計(jì)成績(jī)計(jì)成績(jī)2.5分析試
35、分析試題難度題難度試題得分表試題得分表考生考生通知單通知單難度難度分析表分析表合格合格標(biāo)準(zhǔn)標(biāo)準(zhǔn)分類分類統(tǒng)計(jì)表統(tǒng)計(jì)表成績(jī)單成績(jī)單錯(cuò)誤錯(cuò)誤成績(jī)單成績(jī)單經(jīng)審定的經(jīng)審定的成績(jī)單成績(jī)單軟件工程軟件工程44443. 3. 行為建模行為建模n行為建模給出需求分析方法的所有操作原則,行為建模給出需求分析方法的所有操作原則,但只有結(jié)構(gòu)化分析方法的擴(kuò)充版本才提供這種但只有結(jié)構(gòu)化分析方法的擴(kuò)充版本才提供這種建模的符號(hào)。建模的符號(hào)。n數(shù)據(jù)流圖不描述時(shí)序關(guān)系,控制和事件流通過(guò)數(shù)據(jù)流圖不描述時(shí)序關(guān)系,控制和事件流通過(guò)行為模型描述。行為模型描述。n在描述系統(tǒng)或各個(gè)數(shù)據(jù)對(duì)象的行為時(shí),采用狀在描述系統(tǒng)或各個(gè)數(shù)據(jù)對(duì)象的行為時(shí),采
36、用狀態(tài)遷移圖。通過(guò)描述系統(tǒng)或?qū)ο蟮膽B(tài)遷移圖。通過(guò)描述系統(tǒng)或?qū)ο蟮臓顟B(tài)狀態(tài),以及,以及引起系統(tǒng)或?qū)ο鬆顟B(tài)轉(zhuǎn)換的引起系統(tǒng)或?qū)ο鬆顟B(tài)轉(zhuǎn)換的事件事件來(lái)表示系統(tǒng)或來(lái)表示系統(tǒng)或?qū)ο蟮男袨?。?duì)象的行為。軟件工程軟件工程4545狀態(tài)遷移圖狀態(tài)遷移圖n例如,有關(guān)處理器分配的進(jìn)程狀態(tài)遷移。例如,有關(guān)處理器分配的進(jìn)程狀態(tài)遷移。t2t3t4t1運(yùn)行運(yùn)行就緒就緒等待等待軟件工程軟件工程4646n狀態(tài)遷移圖是描述系統(tǒng)的狀態(tài)如何響應(yīng)外部的狀態(tài)遷移圖是描述系統(tǒng)的狀態(tài)如何響應(yīng)外部的事件進(jìn)行推移的一種圖形表示。事件進(jìn)行推移的一種圖形表示。 “”表示可得到的系統(tǒng)表示可得到的系統(tǒng)狀態(tài)狀態(tài) “”表示從一種狀態(tài)向另一種狀態(tài)的表示從一種狀
37、態(tài)向另一種狀態(tài)的遷移遷移。s2s1s3t1t2t3t4t4t3t2t1事件事件狀態(tài)狀態(tài)s1 s2 s3s3s2s3s1軟件工程軟件工程4747petripetri網(wǎng)網(wǎng)npetri網(wǎng)已廣泛地應(yīng)用于硬件與軟件系統(tǒng)的開(kāi)網(wǎng)已廣泛地應(yīng)用于硬件與軟件系統(tǒng)的開(kāi)發(fā)中,它適用于描述相互獨(dú)立、協(xié)同操作的發(fā)中,它適用于描述相互獨(dú)立、協(xié)同操作的處理系統(tǒng),也就是并發(fā)執(zhí)行的處理系統(tǒng)。處理系統(tǒng),也就是并發(fā)執(zhí)行的處理系統(tǒng)。npetri網(wǎng)簡(jiǎn)稱網(wǎng)簡(jiǎn)稱png (petri net graph),它有兩,它有兩種結(jié)點(diǎn):種結(jié)點(diǎn): 位置位置:符號(hào):符號(hào)“”,表示系統(tǒng),表示系統(tǒng)狀態(tài)狀態(tài)。 轉(zhuǎn)移轉(zhuǎn)移:符號(hào):符號(hào) “|”, 表示系統(tǒng)中的表示系
38、統(tǒng)中的事件事件。 有向邊有向邊“”表示表示向轉(zhuǎn)移的輸入向轉(zhuǎn)移的輸入,或,或從轉(zhuǎn)移從轉(zhuǎn)移的輸出的輸出。軟件工程軟件工程4848 標(biāo)記標(biāo)記,或稱,或稱令牌令牌 (token),是表明系統(tǒng)當(dāng)前處,是表明系統(tǒng)當(dāng)前處于什么狀態(tài)的標(biāo)志。于什么狀態(tài)的標(biāo)志。petri網(wǎng)可能的變化有:網(wǎng)可能的變化有:軟件工程軟件工程4949進(jìn)程進(jìn)程 得到資源得到資源 占用資源運(yùn)行占用資源運(yùn)行 釋放資源釋放資源 不用資源運(yùn)行不用資源運(yùn)行pr1 lock r 處理處理11 unlock r 處理處理12pr2 lock r 處理處理21 unlock r 處理處理22n例如,處理兩個(gè)進(jìn)程例如,處理兩個(gè)進(jìn)程pr1和和pr2的同步問(wèn)題
39、(此的同步問(wèn)題(此時(shí)兩個(gè)進(jìn)程共用一個(gè)資源時(shí)兩個(gè)進(jìn)程共用一個(gè)資源r):):軟件工程軟件工程5050p1p2p3p4p5p7p6t1t2t3t4t5t6等待等待r等待等待rr空閑空閑處理處理11處理處理12處理處理21處理處理22進(jìn)程進(jìn)程1進(jìn)程進(jìn)程2軟件工程軟件工程51514. 4. 數(shù)據(jù)字典數(shù)據(jù)字典n數(shù)據(jù)字典是結(jié)構(gòu)化分析方法的核心,與各模型數(shù)據(jù)字典是結(jié)構(gòu)化分析方法的核心,與各模型的圖形表示配合,能清楚地表達(dá)數(shù)據(jù)處理的要的圖形表示配合,能清楚地表達(dá)數(shù)據(jù)處理的要求。求。n詞條描述詞條描述對(duì)于在模型中每一個(gè)被命名的圖對(duì)于在模型中每一個(gè)被命名的圖形元素,均加以定義,其內(nèi)容有形元素,均加以定義,其內(nèi)容有:
40、 名字,別名名字,別名或編號(hào),分類,描述,定義,位置,其它,等或編號(hào),分類,描述,定義,位置,其它,等軟件工程軟件工程5252(1)數(shù)據(jù)流詞條描述)數(shù)據(jù)流詞條描述 數(shù)據(jù)流名:數(shù)據(jù)流名: 說(shuō)明:簡(jiǎn)要介紹它產(chǎn)生的原因和結(jié)果說(shuō)明:簡(jiǎn)要介紹它產(chǎn)生的原因和結(jié)果 數(shù)據(jù)流來(lái)源:來(lái)自何方數(shù)據(jù)流來(lái)源:來(lái)自何方 數(shù)據(jù)流去向:去向何處數(shù)據(jù)流去向:去向何處 數(shù)據(jù)流組成:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)流組成:數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)量流通量:數(shù)據(jù)量,流通量數(shù)據(jù)量流通量:數(shù)據(jù)量,流通量(2)數(shù)據(jù)元素詞條描述數(shù)據(jù)元素詞條描述 類型:數(shù)字類型:數(shù)字( (離散值,連續(xù)值離散值,連續(xù)值) ),文字,文字( (編碼編碼類型類型) )長(zhǎng)度長(zhǎng)度軟件工程軟件工程5
41、353 取值范圍:取值范圍: 相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu):相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu):(3)數(shù)據(jù)文件詞條描述)數(shù)據(jù)文件詞條描述 數(shù)據(jù)文件名:數(shù)據(jù)文件名: 簡(jiǎn)述:存放的是什么數(shù)據(jù)簡(jiǎn)述:存放的是什么數(shù)據(jù) 輸入輸出數(shù)據(jù):輸入輸出數(shù)據(jù): 數(shù)據(jù)文件組成:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)文件組成:數(shù)據(jù)結(jié)構(gòu) 存儲(chǔ)方式:順序,直接,關(guān)鍵碼存儲(chǔ)方式:順序,直接,關(guān)鍵碼 存取頻率:存取頻率:(4)加工邏輯詞條描述)加工邏輯詞條描述軟件工程軟件工程5454 加工名:加工名: 加工編號(hào):反映該加工的層次加工編號(hào):反映該加工的層次 簡(jiǎn)要描述:加工邏輯及功能簡(jiǎn)述簡(jiǎn)要描述:加工邏輯及功能簡(jiǎn)述 輸入輸出數(shù)據(jù)流:輸入輸出數(shù)據(jù)流: 加工邏輯:簡(jiǎn)述加工程
42、序,加工順序加工邏輯:簡(jiǎn)述加工程序,加工順序(5)數(shù)據(jù)源及數(shù)據(jù)譚詞條描述)數(shù)據(jù)源及數(shù)據(jù)譚詞條描述 名稱:外部實(shí)體名名稱:外部實(shí)體名 簡(jiǎn)要描述:什么外部實(shí)體簡(jiǎn)要描述:什么外部實(shí)體 有關(guān)數(shù)據(jù)流:有關(guān)數(shù)據(jù)流: 數(shù)目:數(shù)目:軟件工程軟件工程55555.5. 數(shù)據(jù)結(jié)構(gòu)的描述數(shù)據(jù)結(jié)構(gòu)的描述符號(hào)符號(hào) 含義含義 舉舉 例例被定義為被定義為與與重復(fù)重復(fù)可選可選基本數(shù)據(jù)元素基本數(shù)據(jù)元素連結(jié)符連結(jié)符軟件工程軟件工程5656存折戶名所號(hào)帳號(hào)開(kāi)戶日性質(zhì)存折戶名所號(hào)帳號(hào)開(kāi)戶日性質(zhì) (印印密密) 1 存取行存取行50戶名戶名 2 字母字母24所號(hào)所號(hào) 001.999帳號(hào)帳號(hào) 00000001. 99999999開(kāi)戶日年月日
43、開(kāi)戶日年月日性質(zhì)性質(zhì)“ 1 ”.“ 6 ”注:注:“ 1 ”表示普通戶,表示普通戶,“ 5 ”表示工資戶等表示工資戶等印密印密“ 0 ”注:印密在存折上不顯示注:印密在存折上不顯示存取行日期(摘要)支出存入余額存取行日期(摘要)支出存入余額操作復(fù)核操作復(fù)核軟件工程軟件工程57576. 6. 基本加工邏輯說(shuō)明基本加工邏輯說(shuō)明 對(duì)數(shù)據(jù)流圖的每一個(gè)基本加工,必須有一個(gè)基本對(duì)數(shù)據(jù)流圖的每一個(gè)基本加工,必須有一個(gè)基本加工邏輯說(shuō)明。加工邏輯說(shuō)明。 基本加工邏輯說(shuō)明必須描述基本加工如何把基本加工邏輯說(shuō)明必須描述基本加工如何把輸入輸入數(shù)據(jù)流變換為輸出數(shù)據(jù)流數(shù)據(jù)流變換為輸出數(shù)據(jù)流的加工規(guī)則。的加工規(guī)則。 加工邏
44、輯說(shuō)明必須描述實(shí)現(xiàn)加工的策略而不是實(shí)加工邏輯說(shuō)明必須描述實(shí)現(xiàn)加工的策略而不是實(shí)現(xiàn)加工的細(xì)節(jié)。現(xiàn)加工的細(xì)節(jié)。 加工邏輯說(shuō)明中包含的信息應(yīng)是充足的,完備的,加工邏輯說(shuō)明中包含的信息應(yīng)是充足的,完備的,有用的,無(wú)冗余的。有用的,無(wú)冗余的。 描述加工邏輯說(shuō)明的工具:結(jié)構(gòu)化語(yǔ)言、決策表、描述加工邏輯說(shuō)明的工具:結(jié)構(gòu)化語(yǔ)言、決策表、決策樹(shù)。決策樹(shù)。軟件工程軟件工程5858(1) (1) 結(jié)構(gòu)化語(yǔ)言結(jié)構(gòu)化語(yǔ)言結(jié)構(gòu)化語(yǔ)言是一種偽碼,它的詞匯表由結(jié)構(gòu)化語(yǔ)言是一種偽碼,它的詞匯表由 命令動(dòng)詞命令動(dòng)詞 數(shù)據(jù)字典中定義的名字?jǐn)?shù)據(jù)字典中定義的名字 有限的自定義詞有限的自定義詞 邏輯關(guān)系詞邏輯關(guān)系詞 if_then_el
45、se、switch、while_do、for、do_while等組成。等組成。它是一種介于自然語(yǔ)言和形式化語(yǔ)言之間的語(yǔ)它是一種介于自然語(yǔ)言和形式化語(yǔ)言之間的語(yǔ)言。用以消除在語(yǔ)法上的歧義性。言。用以消除在語(yǔ)法上的歧義性。軟件工程軟件工程5959n語(yǔ)言的語(yǔ)言的正文用基本控制結(jié)構(gòu)進(jìn)行分割正文用基本控制結(jié)構(gòu)進(jìn)行分割,加工中,加工中的的操作用自然語(yǔ)言短語(yǔ)來(lái)表示操作用自然語(yǔ)言短語(yǔ)來(lái)表示。n其基本控制結(jié)構(gòu)有三種:其基本控制結(jié)構(gòu)有三種: 簡(jiǎn)單陳述句結(jié)構(gòu):簡(jiǎn)單陳述句結(jié)構(gòu):避免復(fù)合語(yǔ)句;避免復(fù)合語(yǔ)句; 重復(fù)結(jié)構(gòu):重復(fù)結(jié)構(gòu):while_do、for_do或或do_while結(jié)結(jié)構(gòu)。構(gòu)。 判定結(jié)構(gòu):判定結(jié)構(gòu):if_t
46、hen_else 或或switch_do 結(jié)構(gòu);結(jié)構(gòu);n用結(jié)構(gòu)化語(yǔ)言描述的規(guī)格說(shuō)明的正文可以在計(jì)用結(jié)構(gòu)化語(yǔ)言描述的規(guī)格說(shuō)明的正文可以在計(jì)算機(jī)上編輯,不必過(guò)多地考慮語(yǔ)言的在語(yǔ)法上算機(jī)上編輯,不必過(guò)多地考慮語(yǔ)言的在語(yǔ)法上的限制,使得分析員可以集中考慮加工的策略的限制,使得分析員可以集中考慮加工的策略或規(guī)則。或規(guī)則。軟件工程軟件工程6060商店業(yè)務(wù)處理系統(tǒng)中商店業(yè)務(wù)處理系統(tǒng)中“檢查發(fā)貨單檢查發(fā)貨單”if 發(fā)貨單金額超過(guò)發(fā)貨單金額超過(guò)$500 then if 欠款超過(guò)了欠款超過(guò)了60天天 then 在償還欠款前不予批準(zhǔn)在償還欠款前不予批準(zhǔn) else (欠款未超期)(欠款未超期) 發(fā)批準(zhǔn)書(shū),發(fā)貨單發(fā)批準(zhǔn)
47、書(shū),發(fā)貨單 else (發(fā)貨單金額未超過(guò)(發(fā)貨單金額未超過(guò)$500) if 欠款超過(guò)欠款超過(guò)60天天 then 發(fā)批準(zhǔn)書(shū),發(fā)貨單及賒欠報(bào)告發(fā)批準(zhǔn)書(shū),發(fā)貨單及賒欠報(bào)告 else (欠款未超期)(欠款未超期) 發(fā)批準(zhǔn)書(shū),發(fā)貨單發(fā)批準(zhǔn)書(shū),發(fā)貨單 軟件工程軟件工程6161(2) (2) 決策表決策表 如果數(shù)據(jù)流圖的加工需要依賴于如果數(shù)據(jù)流圖的加工需要依賴于多個(gè)邏輯條件多個(gè)邏輯條件的取值的取值,使用決策表來(lái)描述比較合適。,使用決策表來(lái)描述比較合適。條件茬條件茬條件項(xiàng)條件項(xiàng)動(dòng)作茬動(dòng)作茬動(dòng)作項(xiàng)動(dòng)作項(xiàng)規(guī)則規(guī)則單個(gè)單個(gè)條件條件單個(gè)單個(gè)動(dòng)作動(dòng)作軟件工程軟件工程6262以以“檢查發(fā)貨單檢查發(fā)貨單”為例為例操操在償還
48、欠款前在償還欠款前不予批準(zhǔn)不予批準(zhǔn) 作作 發(fā)出批準(zhǔn)書(shū)發(fā)出批準(zhǔn)書(shū) 發(fā)出發(fā)貨單發(fā)出發(fā)貨單 發(fā)出賒欠報(bào)告發(fā)出賒欠報(bào)告 1234條條 發(fā)貨單金額發(fā)貨單金額 $500 $500 $500 $500件件 賒欠情況賒欠情況 60天天60天天 60天天60天天軟件工程軟件工程6363(3) (3) 判定樹(shù)判定樹(shù) 判定樹(shù)也是用來(lái)表達(dá)加工邏輯的一種工具。有判定樹(shù)也是用來(lái)表達(dá)加工邏輯的一種工具。有時(shí)侯它比判定表更直觀。時(shí)侯它比判定表更直觀。檢檢查查發(fā)發(fā)貨貨單單金額金額$500金額金額 $500 欠款欠款60天天不發(fā)出批準(zhǔn)書(shū)不發(fā)出批準(zhǔn)書(shū) 欠款欠款 60天天發(fā)貨單發(fā)貨單發(fā)出批準(zhǔn)書(shū)、發(fā)出批準(zhǔn)書(shū)、 欠款欠款60天天發(fā)出批準(zhǔn)
49、書(shū)、發(fā)出批準(zhǔn)書(shū)、發(fā)貨單及賒欠報(bào)告發(fā)貨單及賒欠報(bào)告 欠款欠款 60天天發(fā)出批準(zhǔn)書(shū)、發(fā)出批準(zhǔn)書(shū)、發(fā)貨單發(fā)貨單軟件工程軟件工程6464n這是一種有效駕馭風(fēng)險(xiǎn)的技術(shù)。通過(guò)原型這是一種有效駕馭風(fēng)險(xiǎn)的技術(shù)。通過(guò)原型 可以增進(jìn)軟件者和用戶對(duì)系統(tǒng)服務(wù)需求的可以增進(jìn)軟件者和用戶對(duì)系統(tǒng)服務(wù)需求的理解,使比較含糊的具有不確定性的理解,使比較含糊的具有不確定性的軟件軟件需求(主要是功能)明確化需求(主要是功能)明確化。 可以容易地確定可以容易地確定系統(tǒng)的性能系統(tǒng)的性能,確認(rèn),確認(rèn)各項(xiàng)主各項(xiàng)主要系統(tǒng)服務(wù)的可應(yīng)用性要系統(tǒng)服務(wù)的可應(yīng)用性,確認(rèn)系統(tǒng)設(shè)計(jì)的,確認(rèn)系統(tǒng)設(shè)計(jì)的可行性,確認(rèn)系統(tǒng)作為產(chǎn)品的結(jié)果??尚行?,確認(rèn)系統(tǒng)作為產(chǎn)品
50、的結(jié)果。 有的原型可以直接成為產(chǎn)品,有的略加修有的原型可以直接成為產(chǎn)品,有的略加修改就可成為最終系統(tǒng)的一個(gè)組成部分。改就可成為最終系統(tǒng)的一個(gè)組成部分。2.4 2.4 快速原型化方法快速原型化方法軟件工程軟件工程65651) 探索型探索型: 目的是要弄清對(duì)目標(biāo)系統(tǒng)的要求,確定所希望目的是要弄清對(duì)目標(biāo)系統(tǒng)的要求,確定所希望的特性,并探討多種方案的可行性。的特性,并探討多種方案的可行性。2) 實(shí)驗(yàn)型實(shí)驗(yàn)型: 這種原型用于大規(guī)模開(kāi)發(fā)和實(shí)現(xiàn)之前,考核方這種原型用于大規(guī)模開(kāi)發(fā)和實(shí)現(xiàn)之前,考核方案是否合適,規(guī)格說(shuō)明是否可靠。案是否合適,規(guī)格說(shuō)明是否可靠。3) 進(jìn)化型進(jìn)化型: 這種原型的目的不在于改進(jìn)規(guī)格說(shuō)明
51、,而是將這種原型的目的不在于改進(jìn)規(guī)格說(shuō)明,而是將系統(tǒng)建造得易于變化,在改進(jìn)原型的過(guò)程中,系統(tǒng)建造得易于變化,在改進(jìn)原型的過(guò)程中,逐步將原型進(jìn)化成最終系統(tǒng)。逐步將原型進(jìn)化成最終系統(tǒng)。1. 1. 原型分類原型分類軟件工程軟件工程66662. 2. 原型使用策略原型使用策略n軟件原型支持需求工程的兩項(xiàng)活動(dòng):軟件原型支持需求工程的兩項(xiàng)活動(dòng): 需求獲取需求獲取 需求有效性驗(yàn)證需求有效性驗(yàn)證n其他用途:其他用途: 用戶培訓(xùn)用戶培訓(xùn) 系統(tǒng)測(cè)試系統(tǒng)測(cè)試n原型開(kāi)發(fā)主要分類:原型開(kāi)發(fā)主要分類: 進(jìn)化式原型開(kāi)發(fā)進(jìn)化式原型開(kāi)發(fā) 拋棄式原型開(kāi)發(fā)拋棄式原型開(kāi)發(fā)軟件工程軟件工程67671 1)進(jìn)化式原型開(kāi)發(fā))進(jìn)化式原型開(kāi)發(fā)
52、n基本思路是:先給出一個(gè)系統(tǒng)的最初實(shí)現(xiàn),讓基本思路是:先給出一個(gè)系統(tǒng)的最初實(shí)現(xiàn),讓用戶去使用和評(píng)價(jià),不斷進(jìn)行細(xì)化和改善,經(jīng)用戶去使用和評(píng)價(jià),不斷進(jìn)行細(xì)化和改善,經(jīng)過(guò)多次這樣的反復(fù)過(guò)程后形成最終的完善的系過(guò)多次這樣的反復(fù)過(guò)程后形成最終的完善的系統(tǒng)。統(tǒng)。開(kāi)發(fā)抽象描述開(kāi)發(fā)抽象描述建立原型系統(tǒng)建立原型系統(tǒng)使用原型系統(tǒng)使用原型系統(tǒng)系統(tǒng)充分嗎系統(tǒng)充分嗎?交付系統(tǒng)交付系統(tǒng)否否是是軟件工程軟件工程68682 2)拋棄式原型開(kāi)發(fā))拋棄式原型開(kāi)發(fā)n基本思路是:原型的根本作用是弄清楚需求和基本思路是:原型的根本作用是弄清楚需求和為風(fēng)險(xiǎn)評(píng)估提供補(bǔ)充信息。通過(guò)評(píng)估后,原型為風(fēng)險(xiǎn)評(píng)估提供補(bǔ)充信息。通過(guò)評(píng)估后,原型被拋棄,
53、重新規(guī)劃和實(shí)施系統(tǒng)的開(kāi)發(fā)。被拋棄,重新規(guī)劃和實(shí)施系統(tǒng)的開(kāi)發(fā)。框架需求框架需求開(kāi)發(fā)原型開(kāi)發(fā)原型確定系統(tǒng)確定系統(tǒng)評(píng)估原型評(píng)估原型開(kāi)發(fā)軟件開(kāi)發(fā)軟件問(wèn)題問(wèn)題可可驗(yàn)證系統(tǒng)驗(yàn)證系統(tǒng)問(wèn)題問(wèn)題可可交付的軟件系統(tǒng)交付的軟件系統(tǒng)可復(fù)用構(gòu)件可復(fù)用構(gòu)件軟件工程軟件工程69693. 3. 原型開(kāi)發(fā)技術(shù)原型開(kāi)發(fā)技術(shù)1) 可執(zhí)行規(guī)格說(shuō)明可執(zhí)行規(guī)格說(shuō)明2) 基于場(chǎng)景基于場(chǎng)景 (scenario) 的設(shè)計(jì)的設(shè)計(jì)3) 自動(dòng)程序設(shè)計(jì)自動(dòng)程序設(shè)計(jì)4) 專用語(yǔ)言專用語(yǔ)言5) 可復(fù)用可復(fù)用(reusable)的軟件的軟件6) 簡(jiǎn)化假設(shè)簡(jiǎn)化假設(shè)軟件工程軟件工程70701 1)可執(zhí)行規(guī)格說(shuō)明)可執(zhí)行規(guī)格說(shuō)明n可執(zhí)行規(guī)格說(shuō)明是用于需求規(guī)格說(shuō)明
54、的一種自可執(zhí)行規(guī)格說(shuō)明是用于需求規(guī)格說(shuō)明的一種自動(dòng)化技術(shù)。使用這種方法,人們可以直接觀察動(dòng)化技術(shù)。使用這種方法,人們可以直接觀察他們用語(yǔ)言規(guī)定的任何系統(tǒng)性行為。包括他們用語(yǔ)言規(guī)定的任何系統(tǒng)性行為。包括a) 代數(shù)規(guī)格說(shuō)明代數(shù)規(guī)格說(shuō)明b) 有限狀態(tài)模型有限狀態(tài)模型c) 可執(zhí)行的數(shù)據(jù)流圖可執(zhí)行的數(shù)據(jù)流圖軟件工程軟件工程7171a)a)代數(shù)規(guī)格說(shuō)明代數(shù)規(guī)格說(shuō)明n使用集合、定義于這些集合上的函數(shù)和定義于使用集合、定義于這些集合上的函數(shù)和定義于這些函數(shù)上的方程來(lái)描述對(duì)象。規(guī)格說(shuō)明的操這些函數(shù)上的方程來(lái)描述對(duì)象。規(guī)格說(shuō)明的操作語(yǔ)義用這些方程表示。作語(yǔ)義用這些方程表示。n舉例:定義一個(gè)無(wú)界的棧及其操作舉例:定
55、義一個(gè)無(wú)界的棧及其操作new_stack: stackpush:stack,element stackpop: stack (element | undefined)pop( new_stack ( ) ) undefinedpop( push( stack,elem) ) elem軟件工程軟件工程7272b)b) 有限狀態(tài)模型有限狀態(tài)模型nparnas提出的使用最廣泛的一種可執(zhí)行規(guī)格說(shuō)提出的使用最廣泛的一種可執(zhí)行規(guī)格說(shuō)明形式。從一個(gè)初始狀態(tài)開(kāi)始明形式。從一個(gè)初始狀態(tài)開(kāi)始接收輸入接收輸入,到,到產(chǎn)產(chǎn)生輸出生輸出,狀態(tài)狀態(tài)在在推移變化推移變化。施加在狀態(tài)元素上。施加在狀態(tài)元素上的約束確定了有效狀
56、態(tài)的推移。的約束確定了有效狀態(tài)的推移。n舉例:建立舉例:建立用戶程序用戶程序 對(duì)話對(duì)話goofnew entryreportenterquithelpprintstartinfobye軟件工程軟件工程7373c) c)可執(zhí)行的數(shù)據(jù)流圖可執(zhí)行的數(shù)據(jù)流圖n數(shù)據(jù)流圖是基于結(jié)構(gòu)化開(kāi)發(fā)方法的結(jié)構(gòu)化規(guī)格數(shù)據(jù)流圖是基于結(jié)構(gòu)化開(kāi)發(fā)方法的結(jié)構(gòu)化規(guī)格說(shuō)明。說(shuō)明。n用一種可執(zhí)行的語(yǔ)言程序代替定義處理邏輯的用一種可執(zhí)行的語(yǔ)言程序代替定義處理邏輯的結(jié)構(gòu)化英語(yǔ),數(shù)據(jù)流圖就成為由可執(zhí)行語(yǔ)言程結(jié)構(gòu)化英語(yǔ),數(shù)據(jù)流圖就成為由可執(zhí)行語(yǔ)言程序模塊組成的網(wǎng)絡(luò),在一定環(huán)境或工具的支持序模塊組成的網(wǎng)絡(luò),在一定環(huán)境或工具的支持下就可成為一個(gè)
57、可以執(zhí)行的原型系統(tǒng)下就可成為一個(gè)可以執(zhí)行的原型系統(tǒng)。軟件工程軟件工程74742 2)基于場(chǎng)景的設(shè)計(jì))基于場(chǎng)景的設(shè)計(jì)n場(chǎng)景是指用戶界面的原型。場(chǎng)景是指用戶界面的原型。n一個(gè)場(chǎng)景用以一個(gè)場(chǎng)景用以模擬在系統(tǒng)運(yùn)行期間用戶經(jīng)歷的事模擬在系統(tǒng)運(yùn)行期間用戶經(jīng)歷的事件件。它提供了它提供了輸入輸入處理處理輸出的屏幕格式和有輸出的屏幕格式和有關(guān)對(duì)話的模型關(guān)對(duì)話的模型。因此,軟件開(kāi)發(fā)人員能夠給用戶。因此,軟件開(kāi)發(fā)人員能夠給用戶顯示系統(tǒng)的逼真的視圖,使用戶得以判斷是否符顯示系統(tǒng)的逼真的視圖,使用戶得以判斷是否符合他的意圖。合他的意圖。n分析員與用戶的溝通往往通過(guò)演示場(chǎng)景。分析員與用戶的溝通往往通過(guò)演示場(chǎng)景。n可在任一
58、場(chǎng)景中使用一套可復(fù)用的軟件模塊,以可在任一場(chǎng)景中使用一套可復(fù)用的軟件模塊,以表達(dá)某一方面的要求。表達(dá)某一方面的要求。軟件工程軟件工程7575n可使用一種原型語(yǔ)言來(lái)描述原型系統(tǒng)。原型開(kāi)可使用一種原型語(yǔ)言來(lái)描述原型系統(tǒng)。原型開(kāi)發(fā)過(guò)程中用這種語(yǔ)言來(lái)定義發(fā)過(guò)程中用這種語(yǔ)言來(lái)定義 屏幕屏幕 數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng) 相關(guān)的操作相關(guān)的操作 從系統(tǒng)的外部描述開(kāi)始,開(kāi)發(fā)與數(shù)據(jù)庫(kù)的從系統(tǒng)的外部描述開(kāi)始,開(kāi)發(fā)與數(shù)據(jù)庫(kù)的接口接口 錯(cuò)誤處理和恢復(fù)過(guò)程錯(cuò)誤處理和恢復(fù)過(guò)程等系統(tǒng)的與外部視圖一致的細(xì)節(jié)。等系統(tǒng)的與外部視圖一致的細(xì)節(jié)。軟件工程軟件工程76763 3)自動(dòng)程序設(shè)計(jì))自動(dòng)程序設(shè)計(jì)n在程序自動(dòng)生成環(huán)境的支持下,利用計(jì)算機(jī)實(shí)在程
59、序自動(dòng)生成環(huán)境的支持下,利用計(jì)算機(jī)實(shí)現(xiàn)軟件的開(kāi)發(fā)?,F(xiàn)軟件的開(kāi)發(fā)。n可以自動(dòng)或半自動(dòng)地把用戶的非過(guò)程式問(wèn)題規(guī)可以自動(dòng)或半自動(dòng)地把用戶的非過(guò)程式問(wèn)題規(guī)格說(shuō)明轉(zhuǎn)換為某種高級(jí)語(yǔ)言程序:格說(shuō)明轉(zhuǎn)換為某種高級(jí)語(yǔ)言程序:1) 演繹綜合手段:演繹綜合手段: 基于數(shù)學(xué)推理的構(gòu)造式證明?;跀?shù)學(xué)推理的構(gòu)造式證明。2) 程序變換手段:程序變換手段: 將一程序轉(zhuǎn)換成另一功能等價(jià)的程序,將一程序轉(zhuǎn)換成另一功能等價(jià)的程序,并保持其正確性不變。并保持其正確性不變。軟件工程軟件工程77773) 實(shí)例推廣手段:實(shí)例推廣手段: 從實(shí)例特征出發(fā),將它推廣為待編程序的從實(shí)例特征出發(fā),將它推廣為待編程序的特征,最后得到程序。特征,最后
60、得到程序。4) 過(guò)程化手段:過(guò)程化手段: 研究甚高級(jí)語(yǔ)言的編譯和知識(shí)的過(guò)程化。研究甚高級(jí)語(yǔ)言的編譯和知識(shí)的過(guò)程化。n專用語(yǔ)言是應(yīng)用領(lǐng)域的模型化語(yǔ)言。專用語(yǔ)言是應(yīng)用領(lǐng)域的模型化語(yǔ)言。n在原型開(kāi)發(fā)中使用專用語(yǔ)言,可方便用戶和軟在原型開(kāi)發(fā)中使用專用語(yǔ)言,可方便用戶和軟件開(kāi)發(fā)者在計(jì)劃中的系統(tǒng)特性方面的交流。件開(kāi)發(fā)者在計(jì)劃中的系統(tǒng)特性方面的交流。4 4)專用語(yǔ)言)專用語(yǔ)言軟件工程軟件工程78785 5)軟件復(fù)用技術(shù))軟件復(fù)用技術(shù)n利用可復(fù)用的模塊,做出適當(dāng)?shù)慕M合,就可得利用可復(fù)用的模塊,做出適當(dāng)?shù)慕M合,就可得到快速構(gòu)造的原型系統(tǒng)。到快速構(gòu)造的原型系統(tǒng)。n為了快速地構(gòu)造原型,這些模塊為了快速地構(gòu)造原型,這
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年北師大版六年級(jí)英語(yǔ)上冊(cè)階段測(cè)試試卷含答案
- 2024年浙教版選修3化學(xué)上冊(cè)月考試卷
- 2024年滬教版九年級(jí)地理上冊(cè)階段測(cè)試試卷含答案
- 人行道鋪磚施工合同
- 城市燃?xì)夤饫w鋪設(shè)合同
- 2024年北師大版高二生物上冊(cè)階段測(cè)試試卷
- 2024年滬教版高二數(shù)學(xué)下冊(cè)階段測(cè)試試卷
- 培訓(xùn)服務(wù)業(yè)機(jī)構(gòu)裝飾施工合同
- 臨時(shí)工解除聘用合同簡(jiǎn)易協(xié)議
- 合租旅游景點(diǎn)租賃合同
- 模具管理程序文件
- 女子水晶樂(lè)坊
- 漢語(yǔ)中的詞語(yǔ)詞性分類(課堂)課件
- 2023-2024學(xué)年廣西壯族自治區(qū)南寧市小學(xué)語(yǔ)文五年級(jí)期末高分試題附參考答案和詳細(xì)解析
- DB44T 1315-2014物業(yè)服務(wù) 檔案管理規(guī)范
- 基本醫(yī)療保險(xiǎn)異地就醫(yī)登記備案申請(qǐng)表
- 非線性光纖光學(xué)六偏振效應(yīng)PPT
- 昌樂(lè)二中271課堂教學(xué)模式
- 馬克思主義基本原理試題及答案(超星學(xué)習(xí)通)
- 衛(wèi)生專業(yè)技術(shù)資格任職聘用證明表
- 《小班幼兒分離焦慮研究開(kāi)題報(bào)告(含提綱)》
評(píng)論
0/150
提交評(píng)論