下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
設(shè)計(jì)模惟:綜合樓 軟 及軟件方法學(xué)的形面向?qū)ο蠓杰浖嬷苘浖_發(fā)過程模 WhatisDesignChristopherAlexander,afamousprofessorof“Eachpatterndescribesaproblemwhichoccursoverandoveragaininourenvironment,andthendescribesthecoreofthesolutiontothatproblem,insuchawaythatyoucanusethissolutionamilliontimesover,withoutever ngitthesamewaytwice.”AdesignIsacommonsolutiontoarecurringproblemin Whywouldwhatanarchitectsaysberelevanttosoftware?替了墻壁和門窗。兩類模式的都在于提供了GoF(GangofFour):ErichGamma,RichardHelm,RalphJohnson&JohnVli 23種經(jīng)典的軟件設(shè)計(jì)模 WhyshouldwelearnDesign
HowtomaintainHowto 何謂軟件 軟件的特 軟件的發(fā)程序設(shè)計(jì)階段 程序系統(tǒng)階段 程序+文檔→“軟件”→“軟 ”→軟件工1968 軟件的規(guī)類參加人員研制期產(chǎn)品規(guī)模(源程序行數(shù)微11~4小11~6中1~2大2~3甚大4~5極大5~10 軟 所帶來的嚴(yán)StandishGroup對 成功完推遲完成、超出預(yù)算和/或功能缺失有78% 組織卷入糾紛并最終以法律程序解其中67%因交付的軟件產(chǎn)品的性能或功能無法達(dá)其中56%承諾的交付日期幾次推其中45%所交付的軟件存在嚴(yán)重錯誤以至于無法使 經(jīng)典案例 花了大約5000人一年的工作量,最多時,有 都是從1000個程序錯誤而修正的結(jié) 經(jīng)典案例1963年,用于控制火星探測器的計(jì)算機(jī)軟件中探測器發(fā)生,造成高達(dá)數(shù)億的損失。 無可挽回的惡性事故。如,銀行的存款可能被化 軟件成本在系統(tǒng)中的比年代 年年1985 與軟件本身特點(diǎn)有缺乏“可預(yù)見性”,管理和控制軟件開發(fā)的過程規(guī)模龐大,在技術(shù)和管理上異常復(fù)雜與開發(fā) 的方法不正確有忽視需求分
輕視軟 運(yùn)用的是數(shù)學(xué)方法,注重算法與邏輯方法的研研究對象則側(cè)重于一些較小的具體程序模注重“微觀正確性”,研究的內(nèi)容是程序的“正確性證明應(yīng)用的是工程方法,注重工程方法與工具研研究對象一般指“大型程序”,是一個系 軟件工程方法(結(jié)構(gòu)化方法 1.2.1結(jié)構(gòu)化程序設(shè)計(jì)方法概結(jié)構(gòu)程序設(shè)計(jì)Atechniquefororganizingandcodingcomputerprogramsinwhichahierarchyofmodulesisused,eachhavingasingleentryandasingleexitpoint,andinwhichcontrolispasseddownwardthroughthestructurewithoutunconditionalbranchestohigherlevelsofthestructure.Threetypesofcontrolflowareused:sequential,selection,anditeration 結(jié)構(gòu)化程序設(shè)計(jì)方法概 數(shù)據(jù)流分析技術(shù)-數(shù)據(jù)流圖(DataFlowDiagram,間的溝
只考慮系統(tǒng)基本邏輯功能,而不考慮具體的物理實(shí) !DFD的!起點(diǎn)/終點(diǎn)或源/宿處理/M:M,但至少數(shù) 數(shù)據(jù)(data 數(shù)據(jù)流圖的層次結(jié) 分層的數(shù)據(jù)流XX2131113322 示 示示頂層數(shù)據(jù)流 示
圖2.6(第一層數(shù)據(jù)流圖示圖2.7 的類型決定了映射的方法。信息流有下述兩種類型 變換
信息
變換流結(jié)構(gòu)圖示 事務(wù)流結(jié)構(gòu)圖示 變換分 設(shè)計(jì)步
變換分 示例:汽車數(shù)通過模數(shù)轉(zhuǎn)換實(shí)現(xiàn)傳感器和處理機(jī)的接指示加速超速響鈴警
第二級分解的結(jié) 射中心”(事務(wù)中心) 70年代初由英國的M.Jackson提出,在西歐率先流 1. 對應(yīng)偽碼AA圖6.8A由B、C、D 2. 圖6.9根據(jù)條件A是B或C或
AselectBAorcond2Aorcond3A 3. 對應(yīng)偽碼Aiteruntil(或BA圖6.10A由B出現(xiàn)N次 Jackson圖的優(yōu)缺優(yōu)缺 Step.1-2從數(shù)據(jù)結(jié)構(gòu)圖導(dǎo)出Jackson(a)輸入數(shù)據(jù)結(jié)構(gòu);(b 第二圖6.13描繪統(tǒng)計(jì)空格程序結(jié)構(gòu)的Jackson
第六 第二圖6.13描繪統(tǒng)計(jì)空格程序結(jié)構(gòu)的Jackson
第六 第二圖6.13描繪統(tǒng)計(jì)空格程序結(jié)構(gòu)的Jackson
第六 第二第五圖6.13描繪統(tǒng)計(jì)空格程序結(jié)構(gòu)的Jackson
第六 Step4出所有操作和條件,并把它們分配 5)sum:=06)pointer:=17) 統(tǒng)計(jì)空格totalsum0程序體iter until文件結(jié)束印出字符...統(tǒng)計(jì)空格 Jacksonvs.SD方Jackson方(Jackson圖
(Jackson圖
(Jackson偽代碼
(DFD圖
SD(SC圖
(PDL等工具
面向?qū)ο蠓浇Y(jié)構(gòu)化方法的缺,面向?qū)ο蠓椒ǖ男?并且大大減少軟件 細(xì)節(jié),不影響整個系統(tǒng) 面向?qū)ο蠓?面向?qū)ο蠓椒ǖ囊阉袑ο蠖紕澐殖深?Class)。每個類都定義了一組數(shù)據(jù)和一組操作——繼承對象彼此之間僅能通過發(fā)送消息互相聯(lián)對象的所有”私有信息”都被封裝在該對象內(nèi),不能從外界直——封裝( 面向?qū)ο蠓椒ǖ膬?yōu) 軟件生命周
軟件生命周 概要設(shè)計(jì)(總體設(shè)計(jì) 詳細(xì)設(shè)計(jì)(模塊設(shè)計(jì)詳細(xì)設(shè)計(jì)每個模確定實(shí)現(xiàn)模塊功能所需的算法和數(shù)據(jù)結(jié) 綜合測 軟件生命周8.軟 :通過各種必要 活動使系統(tǒng)持久地滿足用戶的需改正
完善
預(yù)防來的活動 軟件開發(fā)過程模生命周期模型(過程模型規(guī)定了把軟件生命周期劃分成哪些階各個階段的執(zhí)行瀑布模型(Waterfall增量模型(Incremental快速原型模型(RapidPrototype螺旋模型(Spiral噴泉模型(FountainRUP(RationalUnified敏捷過程與極限編程(AgileSoftwareProcess&微軟過程 瀑布模型(Waterfall在軟件工得以廣泛應(yīng)用 瀑布模型(Waterfall階段間具有順序性和依賴推遲實(shí)現(xiàn)的觀 瀑布模型(Waterfall 瀑布模型(Waterfall00實(shí)際的瀑布模瀑布模型(Waterfall護(hù)工作可以在該規(guī)范的指導(dǎo)下展開,避免了軟件開發(fā)、過的隨意狀態(tài)不適應(yīng)需求經(jīng)常發(fā)生變更的環(huán)境(“沙灘上蓋樓房只有到項(xiàng)目的開發(fā)晚期才能夠得到程序的可運(yùn)行版 PrototypeModel)快速建立起可以在計(jì)算往是最終產(chǎn)品功能的子
PrototypeModel) 盡可能使用快速開發(fā)工具
PrototypeModel)優(yōu)缺
供最的功能
螺旋模型(Spiral
螺旋模型(Spiral
螺旋模型(Spiral螺旋模型(Spiral
噴泉模型(Fountain體現(xiàn)了面向?qū)ο筌浖_發(fā)過程迭代和無的特 向下箭頭:階段內(nèi)的迭代(求精
新興的軟件過RUP(RationalUnified敏捷過程與極限編程(AgileSoftwareProcess&eXtremeProgramming) SolutionsFramework,
Rational統(tǒng)一過程RationalUnifiedProcessRUP),Rational軟件面向?qū)ο鬄樵陂_發(fā)組織中分配任務(wù)和職責(zé)有一套過程框架(ProcessFramework),各個組織可根
1.5.6Rational統(tǒng)一過程BestBestProcessMadeDevelopIterativelyModelVisually(UML)ContinuouslyVerifyQualityManage
1.5.6Rational統(tǒng)一過程迭代式開發(fā)(develop管理需求(manage用例分析可視化軟件建模(modelsoftware可視化的 模語言不斷地驗(yàn)證軟件質(zhì)量(continuouslyverify控制軟件變更(control
RUP建模元角色完成工作的角色,定義他們應(yīng)履行的行為和職活動定義了工作人員如何執(zhí)行工制品工作流描述生成制品的活動序列,用以描述工作人員之間的交6 過程工作流和3 支持工作
業(yè)務(wù)建模(Business需求分析和設(shè)計(jì) ysis&
實(shí)現(xiàn)Change過程工作 ysis&Design):研究實(shí)現(xiàn)環(huán)境和系統(tǒng)構(gòu)件
支持工作(7)配置和變更管理(Configuration&Change
RUP開發(fā)過程階RUP把軟件生命周期劃分為四個連續(xù)的階
初始階段(Initial主要目
初始階段(Inception
精化階段(Elaboration主要目
精化階段(Elaboration主要成
構(gòu)建階段(Construction集成于適當(dāng)操作系統(tǒng)平臺上的軟件產(chǎn)用戶手當(dāng)前版本的描
移交階段(Transition
RUP軟件開發(fā)生命敏捷軟件開年月-13日,17位軟件開發(fā)方法專 Utah州東北部Wasatchmountains里的一個叫Snowbird雖然這些方法過去 法”(LightweightMethods),但該名字并不足以代表這些捷開發(fā)方法(AgileDevelopmentMethodology),同時組建了敏捷(AgileAlliance)
IndividualsandprocessesIndividualsandprocessesandWorking CustomercontractRespondingtofollowinga
12條原Ourhighestpriorityistosatisfythecustomerthroughearlyandcontinuousdeliveryofvaluablesoftware echangingrequirements,evenlateindevelopment.Agileprocessesharnesschangeforthecustomer'scompetitiveadvantageDeliverworkingsoftwarefrequently,fromacoupleofweekstoacoupleofmonths,withapreferencetotheshortertimescaleBusinesspeopleanddevelopersmustworktogetherdailythroughouttheprojectBuildprojectsaroundmotivatedindividuals.Givethemtheenvironmentandsupporttheyneed,andtrustthemtogetthejobThemostefficientandeffectivemethodofconveyinginformationtoandwithinadevelopmentteamisface-to-faceconversation
12條原WorkingsoftwareistheprimarymeasureofAgileprocessespromotesustainabledevelopment.Thesponsors,developers,andusersshouldbeabletomaintainaconstantpaceindefini ContinuousattentiontotechnicalexcellenceandgooddesignenhancesagilitySimplicity--theartof izingtheamountofworknotdone--isThebestarchitectures,requirements,anddesignsemergefromself-organizingteamsAtregularintervals,theteamreflectsonhowto effective,thentunesandadjustsitsbehaviouraccordingly
敏捷開發(fā)的特短周期、小版本漸進(jìn)交業(yè)務(wù)人員和開發(fā)人員長期緊密地在一起工作和交方法本身易即使在最后時刻也能夠處理需求變
敏捷開發(fā)的優(yōu)時時3個6個8個12個效率提減少百分功能缺陷投時第一第一第二第三總敏捷的成其他方法的成使用敏捷的成本
Sou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 掛靠免責(zé)協(xié)議書范本
- 《防治腦血管病》課件
- 2024年智能交通企業(yè)無抵押企業(yè)間借款合同范本3篇
- 2024年消防救援高空作業(yè)責(zé)任限定合同
- 2025年黑龍江貨運(yùn)從業(yè)資格證模擬考試0題題庫答案
- 2025年福州道路運(yùn)輸從業(yè)資格證考試內(nèi)容是什么
- 2025年西安考從業(yè)資格證貨運(yùn)試題
- 2025年攀枝花貨運(yùn)從業(yè)資格證試題庫及答案
- 2024年物業(yè)前期服務(wù)綜合合同
- 《萬象城商業(yè)模式》課件
- 大學(xué)體育與健康課件:體育鍛煉與安全衛(wèi)生保健
- 學(xué)校食堂色標(biāo)管理制度、食品切配工用具色標(biāo)管理操作指南
- 部編語文五年級上冊詞語表注音版
- 1神州謠 課件(共50張PPT)
- 國家開放大學(xué)思想道德與法治社會實(shí)踐作業(yè)集合6篇
- 小學(xué)侵害未成年人強(qiáng)制報(bào)告制度
- 2023年飛行員基礎(chǔ)知識考試題庫(500題版)
- 公租房運(yùn)營管理服務(wù)投標(biāo)方案
- 能源管理系統(tǒng)EMS用戶需求說明書
- 人工智能對中學(xué)教學(xué)的影響與應(yīng)對策略
- 2668-人員招聘與培訓(xùn)實(shí)務(wù)
評論
0/150
提交評論