




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
設計模惟:綜合樓 軟 及軟件方法學的形面向對象方軟件生存周軟件開發(fā)過程模 WhatisDesignChristopherAlexander,afamousprofessorof“Eachpatterndescribesaproblemwhichoccursoverandoveragaininourenvironment,andthendescribesthecoreofthesolutiontothatproblem,insuchawaythatyoucanusethissolutionamilliontimesover,withoutever ngitthesamewaytwice.”AdesignIsacommonsolutiontoarecurringproblemin Whywouldwhatanarchitectsaysberelevanttosoftware?替了墻壁和門窗。兩類模式的都在于提供了GoF(GangofFour):ErichGamma,RichardHelm,RalphJohnson&JohnVli 23種經典的軟件設計模 WhyshouldwelearnDesign
HowtomaintainHowto 何謂軟件 軟件的特 軟件的發(fā)程序設計階段 程序系統(tǒng)階段 程序+文檔→“軟件”→“軟 ”→軟件工1968 軟件的規(guī)類參加人員研制期產品規(guī)模(源程序行數(shù)微11~4小11~6中1~2大2~3甚大4~5極大5~10 軟 所帶來的嚴StandishGroup對 成功完推遲完成、超出預算和/或功能缺失有78% 組織卷入糾紛并最終以法律程序解其中67%因交付的軟件產品的性能或功能無法達其中56%承諾的交付日期幾次推其中45%所交付的軟件存在嚴重錯誤以至于無法使 經典案例 花了大約5000人一年的工作量,最多時,有 都是從1000個程序錯誤而修正的結 經典案例1963年,用于控制火星探測器的計算機軟件中探測器發(fā)生,造成高達數(shù)億的損失。 無可挽回的惡性事故。如,銀行的存款可能被化 軟件成本在系統(tǒng)中的比年代 年年1985 與軟件本身特點有缺乏“可預見性”,管理和控制軟件開發(fā)的過程規(guī)模龐大,在技術和管理上異常復雜與開發(fā) 的方法不正確有忽視需求分
輕視軟 運用的是數(shù)學方法,注重算法與邏輯方法的研研究對象則側重于一些較小的具體程序模注重“微觀正確性”,研究的內容是程序的“正確性證明應用的是工程方法,注重工程方法與工具研研究對象一般指“大型程序”,是一個系 軟件工程方法(結構化方法 1.2.1結構化程序設計方法概結構程序設計Atechniquefororganizingandcodingcomputerprogramsinwhichahierarchyofmodulesisused,eachhavingasingleentryandasingleexitpoint,andinwhichcontrolispasseddownwardthroughthestructurewithoutunconditionalbranchestohigherlevelsofthestructure.Threetypesofcontrolflowareused:sequential,selection,anditeration 結構化程序設計方法概 數(shù)據流分析技術-數(shù)據流圖(DataFlowDiagram,間的溝
只考慮系統(tǒng)基本邏輯功能,而不考慮具體的物理實 !DFD的!起點/終點或源/宿處理/M:M,但至少數(shù) 數(shù)據(data 數(shù)據流圖的層次結 分層的數(shù)據流XX2131113322 示 示示頂層數(shù)據流 示
圖2.6(第一層數(shù)據流圖示圖2.7 的類型決定了映射的方法。信息流有下述兩種類型 變換
信息
變換流結構圖示 事務流結構圖示 變換分 設計步
變換分 示例:汽車數(shù)通過模數(shù)轉換實現(xiàn)傳感器和處理機的接指示加速超速響鈴警
第二級分解的結 射中心”(事務中心) 70年代初由英國的M.Jackson提出,在西歐率先流 1. 對應偽碼AA圖6.8A由B、C、D 2. 圖6.9根據條件A是B或C或
AselectBAorcond2Aorcond3A 3. 對應偽碼Aiteruntil(或BA圖6.10A由B出現(xiàn)N次 Jackson圖的優(yōu)缺優(yōu)缺 Step.1-2從數(shù)據結構圖導出Jackson(a)輸入數(shù)據結構;(b 第二圖6.13描繪統(tǒng)計空格程序結構的Jackson
第六 第二圖6.13描繪統(tǒng)計空格程序結構的Jackson
第六 第二圖6.13描繪統(tǒng)計空格程序結構的Jackson
第六 第二第五圖6.13描繪統(tǒng)計空格程序結構的Jackson
第六 Step4出所有操作和條件,并把它們分配 5)sum:=06)pointer:=17) 統(tǒng)計空格totalsum0程序體iter until文件結束印出字符...統(tǒng)計空格 Jacksonvs.SD方Jackson方(Jackson圖
(Jackson圖
(Jackson偽代碼
(DFD圖
SD(SC圖
(PDL等工具
面向對象方結構化方法的缺,面向對象方法的效率,并且大大減少軟件 細節(jié),不影響整個系統(tǒng) 面向對象方 面向對象方法的要把所有對象都劃分成類(Class)。每個類都定義了一組數(shù)據和一組操作——繼承對象彼此之間僅能通過發(fā)送消息互相聯(lián)對象的所有”私有信息”都被封裝在該對象內,不能從外界直——封裝( 面向對象方法的優(yōu) 軟件生命周
軟件生命周 概要設計(總體設計 詳細設計(模塊設計詳細設計每個模確定實現(xiàn)模塊功能所需的算法和數(shù)據結 綜合測 軟件生命周8.軟 :通過各種必要 活動使系統(tǒng)持久地滿足用戶的需改正
完善
預防來的活動 軟件開發(fā)過程模生命周期模型(過程模型規(guī)定了把軟件生命周期劃分成哪些階各個階段的執(zhí)行瀑布模型(Waterfall增量模型(Incremental快速原型模型(RapidPrototype螺旋模型(Spiral噴泉模型(FountainRUP(RationalUnified敏捷過程與極限編程(AgileSoftwareProcess&微軟過程 瀑布模型(Waterfall在軟件工得以廣泛應用 瀑布模型(Waterfall階段間具有順序性和依賴推遲實現(xiàn)的觀 瀑布模型(Waterfall 瀑布模型(Waterfall00實際的瀑布模瀑布模型(Waterfall護工作可以在該規(guī)范的指導下展開,避免了軟件開發(fā)、過的隨意狀態(tài)不適應需求經常發(fā)生變更的環(huán)境(“沙灘上蓋樓房只有到項目的開發(fā)晚期才能夠得到程序的可運行版 PrototypeModel)快速建立起可以在計算往是最終產品功能的子
PrototypeModel) 盡可能使用快速開發(fā)工具
PrototypeModel)優(yōu)缺
供最的功能
螺旋模型(Spiral
螺旋模型(Spiral
螺旋模型(Spiral螺旋模型(Spiral
噴泉模型(Fountain體現(xiàn)了面向對象軟件開發(fā)過程迭代和無的特 向下箭頭:階段內的迭代(求精
新興的軟件過RUP(RationalUnified敏捷過程與極限編程(AgileSoftwareProcess&eXtremeProgramming) SolutionsFramework,
Rational統(tǒng)一過程RationalUnifiedProcessRUP),Rational軟件面向對象為在開發(fā)組織中分配任務和職責有一套過程框架(ProcessFramework),各個組織可根
1.5.6Rational統(tǒng)一過程BestBestProcessMadeDevelopIterativelyModelVisually(UML)ContinuouslyVerifyQualityManage
1.5.6Rational統(tǒng)一過程迭代式開發(fā)(develop管理需求(manage用例分析可視化軟件建模(modelsoftware可視化的 模語言不斷地驗證軟件質量(continuouslyverify控制軟件變更(control
RUP建模元角色完成工作的角色,定義他們應履行的行為和職活動定義了工作人員如何執(zhí)行工制品工作流描述生成制品的活動序列,用以描述工作人員之間的交6 過程工作流和3 支持工作
業(yè)務建模(Business需求分析和設計 ysis&
實現(xiàn)Change過程工作 ysis&Design):研究實現(xiàn)環(huán)境和系統(tǒng)構件
支持工作(7)配置和變更管理(Configuration&Change
RUP開發(fā)過程階RUP把軟件生命周期劃分為四個連續(xù)的階
初始階段(Initial主要目
初始階段(Inception
精化階段(Elaboration主要目
精化階段(Elaboration主要成
構建階段(Construction集成于適當操作系統(tǒ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ā)的特短周期、小版本漸進交業(yè)務人員和開發(fā)人員長期緊密地在一起工作和交方法本身易即使在最后時刻也能夠處理需求變
敏捷開發(fā)的優(yōu)時時3個6個8個12個效率提減少百分功能缺陷投時第一第一第二第三總敏捷的成其他方法的成使用敏捷的成本
Sou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建省寧德2025屆高考沖刺押題(最后一卷)化學試卷含解析
- 基因突變影響的實例研究試題及答案
- 2024年CPMM數(shù)據分析試題及答案
- 《安全工程師》2024年安國市高分沖刺試卷含解析
- 跨國物流協(xié)作機制試題及答案
- CPSM職業(yè)生涯規(guī)劃與考試相關性試題及答案
- 供應鏈動態(tài)管理的關鍵問題試題及答案
- 提升CPMM自身能力的試題及答案
- 2025屆天津市靜海區(qū)大邱莊中學高三第三次模擬考試化學試卷含解析
- 乘風破浪 2024年國際物流師備考試題及答案
- 經濟開發(fā)區(qū)零碳園區(qū)綜合能源示范項目可行性研究報告模板-立項拿地
- 2024年陜西安康市寧陜縣事業(yè)單位遴選29人歷年【重點基礎提升】模擬試題(共500題)附帶答案詳解
- 房地產項目后評估報告
- JBT 14716-2023 增材制造裝備 面曝光光固化三維打印機 (正式版)
- 基于STM32的室內空氣質量監(jiān)測系統(tǒng)的研究與實現(xiàn)
- 上海市黃浦區(qū)2024屆高三二模語文試題(解析版)
- 高考志愿填報指導高考志愿填報指南
- 2024年山東省濰坊市昌邑市中考一模數(shù)學試題
- GB/T 6346.1-2024電子設備用固定電容器第1部分:總規(guī)范
- 2024年杭州市水務集團有限公司招聘筆試參考題庫附帶答案詳解
- (2024年)中華人民共和國環(huán)境保護法全
評論
0/150
提交評論