版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
老師聯(lián)系方式陳明銳,信息學院副院長辦公室(309房)
提交作業(yè)全部用附件,文件名為:學號+姓名+加章次例如文件名:20060724133陳好五.DOC表示陳好的第五章作業(yè)!課后有問題最好用電子郵件。
課程進度安排分析與設計課堂演講競賽,請同學們在第4周前分好組并把分組名單發(fā)給老師。分組要求5~7人一組,能力強弱結(jié)合,分工合作,發(fā)揚團隊合作精神。最終形成課程設計提交!
周序日期講授主要內(nèi)容實踐教學內(nèi)容備注12.27第一章緒論:軟件與軟件危機,軟件工程學的范疇;傳統(tǒng)軟件工程和面向?qū)ο筌浖こ蹋浖こ痰膽?3.05第二章軟件開發(fā)模型:軟件生存周期,傳統(tǒng)軟件開發(fā)模型,軟件演化模型3.06第二章軟件開發(fā)模型:面向?qū)ο箝_發(fā)模型,形式化方法模型,開發(fā)模型選用實例33.13第三章軟件需求分析:需求分析的任務與步驟,需求獲取的常用方法;分析建模,軟件需求說明43.19第三章軟件需求分析:結(jié)構(gòu)化分析方法實驗1:選題(1學時)3.20第三章軟件需求分析:面向?qū)ο蠓治龇椒?3.27第四章軟件設計概述:軟件設計的任務,軟件設計的基本概念;模塊化設計,其他設計問題的處理,設計文檔及其復審實驗2:可行性分析64.02第五章傳統(tǒng)的設計方法:概述,結(jié)構(gòu)化設計方法、過程設計實驗3:需求分析4.03第六章面向?qū)ο笤O計方法:面向?qū)ο笤O計概述,系統(tǒng)設計74.10第六章面向?qū)ο笤O計方法:對象設計,領域?qū)ο笤O計實驗4:需求分析第七章統(tǒng)一建模語言UML:UML的組成、特點與應用,靜態(tài)建模84.16面向過程分析設計課堂演講競賽面向過程分析設計演講競賽,需要兩次課!或者根據(jù)學生情況往后推遲兩周4.17面向過程分析設計課堂演講競賽課程進度安排周序日期講授主要內(nèi)容實踐教學內(nèi)容備注94.24第七章統(tǒng)一建模語言UML:動態(tài)建模,實驗5:軟件設計
第七章物理架構(gòu)建模,基于UML的統(tǒng)一建模過程——RUP,第八章編碼和語言選擇
104.30第九章:軟件測試:測試的基本概念,黑盒測試備注:5.1放長假
115.08第九章:軟件測試:白盒測試,測試用例設計;軟件測試:軟件的糾錯實驗6:編碼與調(diào)試程序
125.14第九章:軟件測試:多模塊程序的測試策略實驗7:編碼與調(diào)試程序
5.15第九章:軟件測試:面向?qū)ο笙到y(tǒng)的測試,第十章軟件復用135.22第十一章軟件維護,第十二章軟件項目計劃實驗8:編碼與調(diào)試
145.28面向?qū)ο蠓治鲈O計演講競賽實驗9:軟件測試
5.29面向?qū)ο蠓治鲈O計演講競賽156.05第十三章軟件工程管理,第十四章軟件質(zhì)量管理:從質(zhì)量保證到質(zhì)量認證,質(zhì)量保證,軟件可靠性
166.11第十四章軟件質(zhì)量管理:程序正確性證明,CMM軟件能力成熟度模型,ISO9000國際標準,軟件度量
6.12第十五章:軟件工程環(huán)境176.19總復習、答疑
合計68學時隨堂與課外結(jié)合
課程簡介及教學目標
“軟件工程”是計算機科學與技術(shù)、計算機軟件與理論、信息與計算科學及其相關專業(yè)的一門專業(yè)基礎課,它是軟件設計與開發(fā)以及各種計算機應用系統(tǒng)開發(fā)的重要基礎。是本科培養(yǎng)目標——軟件系統(tǒng)設計師和軟件開發(fā)工程師的必備知識。主要內(nèi)容包括軟件工程概述、可行性分析、需求分析、概要設計、詳細設計、面向?qū)ο蠓治雠c設計、編碼、軟件質(zhì)量與質(zhì)量保證、項目計劃與管理等。課程的學習對提升同學們的能力、素質(zhì)、道德修養(yǎng)、團隊精神等都具有非常重要的意義。
課程簡介及教學目標
在課程的學習和實踐中,同學們應理解和掌握軟件工程中的軟件生命周期各階段的任務、過程、結(jié)構(gòu)化方法和工具;面向?qū)ο蠓椒▽W、面向?qū)ο蠓治?、設計和實現(xiàn);軟件工程應用的管理技術(shù)等。本課程的目的與任務是使同學們通過本課程的學習,了解軟件項目開發(fā)和維護的一般過程,掌握軟件開發(fā)的傳統(tǒng)方法和最新方法,為今后更深入地學習和從事有關軟件工程實踐工作打下良好的理論基礎。
軟件開發(fā)與人才需求未來軟件開發(fā)的生產(chǎn)模式及對人才的要求現(xiàn)有模式:小作坊的、一人身兼多職、英雄式的軟件開發(fā)生產(chǎn)模式:大規(guī)模的軟件生產(chǎn),專業(yè)化、分工越來越細,團隊合作開發(fā)對人才的要求:除精通開發(fā)技術(shù)外,更需要軟件工程意識和團隊合作精神中國軟件產(chǎn)業(yè)中國軟件產(chǎn)業(yè)的途徑之一(軟件外包)印度軟件產(chǎn)業(yè)發(fā)展與軟件外包
中國向印度學習——發(fā)展軟件外包業(yè)務中國目前外包業(yè)務與市場分析
中國目前80%的外包業(yè)務來自日、韓等亞洲國家印度的外包業(yè)務主要來自于美國中國和印度的不同(文化、語言、軟件工程意識)軟件工程教育的定位我國軟件工程的專業(yè)教育與軟件人才的鏈之間的關系可描述為如下圖:軟件開發(fā)工程師架構(gòu)設計師產(chǎn)品經(jīng)理項目管理者系統(tǒng)分析師系統(tǒng)設計師程序員研究生教育本科教育大專教育中專教育軟件工程教育的定位觀點:不同的人才培養(yǎng)或者不同軟件開發(fā)的崗位對軟件工程的知識要求是不一樣的。我們在學習軟件工程知識與選用教材時,充分地考慮到這一因素,采取因材取舍的原則。不同的軟件工程教材,適用于不同層次的人員學習,所以不同層次的人才選用不同的教材?!汉D霞~康信息系統(tǒng)崗位能力規(guī)定1.程序員崗位能力規(guī)定錄用員工條件年齡范圍:20-25學歷要求:大專以上或中專以上并有計算機相關證書專業(yè)要求:計算機及相關專業(yè)工作經(jīng)歷要求:1.有從事軟件編程的實習經(jīng)歷3-6個月以上。2.通過公司內(nèi)部實習期。日語水平:1.相當三級2.或者有4級證書3.或者進公司時能理解日語仕樣書,熟悉日語環(huán)境技術(shù)水平:1.熟悉和掌握基本的數(shù)據(jù)庫2.熟悉和掌握2門開發(fā)語言3.能勝任項目中編程能力要求:1.具備較強的學習能力2.工作積極主動,有責任心,有良好的品質(zhì)意識崗位工作描述1.能按時按質(zhì)完成軟件項目中的編碼工作2.能按時按質(zhì)完成單體測試工作3.能制作符合要求的測試報告4.能認真的參加項目內(nèi)或部門、公司安排的培訓,并且能達到培訓要求。5.每年的技術(shù)水平和日語水平考核有進步。2.軟件工程師崗位能力規(guī)定錄用員工條件年齡范圍:20-27學歷要求:大專以上專業(yè)要求:計算機及相關專業(yè)工作經(jīng)歷要求:1.有從事軟件編程一年以上的相關工作經(jīng)歷2.通過公司內(nèi)部試用期日語水平:1.相當三級2.或者有4級證書3.能理解日語仕樣書,熟悉日語開發(fā)環(huán)境達一年技術(shù)水平:1.熟悉運用SQLserver、Oracle數(shù)據(jù)庫2.熟悉運用VC、C++或Java編程3.能帶一個實習生能力要求:1.具備較強的學習能力2.工作積極主動,有責任心,有良好的品質(zhì)意識3.具有團隊協(xié)作精神及溝通能力崗位工作描述1.能按時按質(zhì)完成軟件項目中的編碼工作2.能完成詳細設計的任務3.能完成綜合測試任務4.能協(xié)助公司獨立擔當帶好新手的任務3.高級軟件工程師崗位能力規(guī)定錄用員工條件年齡范圍:25歲以上學歷要求:本科以上或?qū)?撇⒂杏嬎銠C相關技術(shù)證書專業(yè)要求:計算機及相關專業(yè)工作經(jīng)歷要求:1.從事日本軟件編程的工作經(jīng)歷超過三年2.有在項目中擔任技術(shù)骨干的經(jīng)驗至少一年3.通過公司內(nèi)部試用期。日語水平:1.相當三級2.能理解日語仕樣書技術(shù)水平:1.精通運用SQLserver、Oracle數(shù)據(jù)庫2.精通VC、C++或Java,同類技術(shù)運用時間在三年以上3.熟悉各種計算機開發(fā)語言。能力要求:1.具備較強的學習能力2.工作積極主動,有責任心,有良好的品質(zhì)意識3.具有團隊協(xié)作精神及溝通能力4.在項目組中有解決技術(shù)難題的能力或能起到項目組協(xié)理作用崗位工作描述1.能配合項目主管按時按質(zhì)完成項目任務。2.在項目組內(nèi)擔當技術(shù)骨干作用或擔當部門協(xié)理作用。3.首先理解項目中客戶規(guī)定的“工具”,并能輔導組員掌握,并在整個項目中擔當指導工作。4.擔當事業(yè)部內(nèi)或公司安排的技術(shù)培訓任務。5.能擔任詳細設計工作。4.項目主管崗位能力規(guī)定錄用員工條件年齡范圍:28歲以上學歷要求:本科以上或?qū)?撇⒂杏嬎銠C相關技術(shù)證書專業(yè)要求:計算機及相關專業(yè)工作經(jīng)歷要求:1.從事日本軟件編程的工作經(jīng)歷超過三年2.有項目主管、組長經(jīng)歷兩年以上3.通過公司內(nèi)部試用期日語水平:1.相當一級2.二級以上證書技術(shù)水平:1.熟悉各類數(shù)據(jù)庫2.熟悉各種計算機開發(fā)語言3.熟悉特定的開發(fā)工具能力要求:1.具備較強的學習能力,具有進取心2.工作積極主動,有責任心,有良好的品質(zhì)意識3.具有上下溝通的能力4.具有項目組與項目組之間的合作意識和整體意識。崗位工作描述1.項目開始前的準備,培訓計劃制定、環(huán)境構(gòu)成、體制及人員安排2.項目開發(fā)標準的實施3.整個項目過程的控制,進度管理4.項目QA管理,負責項目總體測試工作5.項目后期的文檔整理,維護對應計劃及安排,項目總結(jié),項目成員能力評價6.保密計劃和質(zhì)量計劃等(特殊要求的項目)的制定、實施7.組織解決技術(shù)方面重大問題和及時應對的處理。5.項目經(jīng)理崗位能力規(guī)定錄用員工條件年齡范圍:
28歲以上學歷要求:本科以上或?qū)?撇⒂杏嬎銠C相關技術(shù)證書專業(yè)要求:計算機及相關專業(yè)工作經(jīng)歷要求:1.有項目經(jīng)理經(jīng)歷兩年以上2.同時有日本工作經(jīng)驗一年以上3.通過公司內(nèi)部試用期日語水平:1.日語一級技術(shù)水平:1.熟悉各類數(shù)據(jù)庫2.熟悉各種計算機開發(fā)語言3.熟悉特定的開發(fā)工具能力要求:1.具備較強的學習能力,具有進取心2.工作積極主動,有責任心,有良好的品質(zhì)意識3.具有上下溝通的能力4.具有項目組與項目組之間的合作意識和整體意識5.能靈活安排好項目與項目之間的銜接及人員調(diào)度崗位工作描述1.項目開始前的準備,培訓計劃制定、環(huán)境構(gòu)成、體制及人員安排2.項目開發(fā)標準的實施3.整個項目過程的控制,進度管理4.維護對應計劃幾安排,項目總結(jié),項目成員能力評價5.保密計劃和質(zhì)量計劃等(特殊要求的項目)的制定、實施6.組織解決技術(shù)方面重大問題和及時應對的處理7.能合理安排項目與項目之間的進度課程學習的內(nèi)容與形式理論內(nèi)容:基本原理、方法和技術(shù)形式:講授、自學、討論實踐內(nèi)容:構(gòu)造一個應用系統(tǒng)(包括分析、設計、編碼、測試)形式:分組合作、分階段形成文檔、編碼、集成軟件工程的主要內(nèi)容軟件工程的基本概念軟件開發(fā)模型軟件開發(fā)各階段的任務、技術(shù)、方法傳統(tǒng)方法、面向?qū)ο蠓椒ㄜ浖こ坦芾碥浖|(zhì)量保證軟件工程環(huán)境第一章緒論1.1軟件與軟件危機1.2軟件工程學的范疇1.3傳統(tǒng)軟件工程和面向?qū)ο筌浖こ?.4軟件工程的應用1.1軟件與軟件危機軟件是信息化的核心,國民經(jīng)濟、國防建設、社會發(fā)展及人民生活都離不開軟件。軟件產(chǎn)業(yè)是增長最快的朝陽產(chǎn)業(yè),是高投入/高產(chǎn)出、無污染、低能耗的綠色產(chǎn)業(yè)。軟件產(chǎn)業(yè)關系到國家經(jīng)濟和文化安全,體現(xiàn)了國家綜合實力,是決定21世紀國際競爭地位的戰(zhàn)略性產(chǎn)業(yè)。軟件工程(SoftwareEngineering)是在克服60年代末所出現(xiàn)“軟件危機”的過程中逐漸形成與發(fā)展的。軟件工程是一門指導計算機軟件系統(tǒng)開發(fā)和維護的工程學科,是一門新興的邊緣學科,主要研究如何應用軟件開發(fā)的科學理論和工程技術(shù)來指導大型軟件系統(tǒng)的開發(fā)。1.1軟件與軟件危機
軟件工程的發(fā)展已經(jīng)歷了三個重要階段:3、第三代軟件工程—構(gòu)件工程(軟件復用)2、第二代軟件工程—對象工程1、第一代軟件工程—傳統(tǒng)的軟件工程注:軟件工程發(fā)展階段論沒有統(tǒng)一定論60年代末到70年代為了克服“軟件危機”(Softwarecrisis)提出“軟件工程”的名詞,將軟件開發(fā)納入工程化的軌道,基本形成軟件工程的概念、框架、技術(shù)和方法。稱為傳統(tǒng)的軟件工程。1.1軟件與軟件危機軟件工程的發(fā)展已經(jīng)歷了三個重要階段:3、第三代軟件工程—構(gòu)件工程(軟件復用)2、第二代軟件工程—對象工程1、第一代軟件工程—傳統(tǒng)的軟件工程注:軟件工程發(fā)展階段論沒有統(tǒng)一定論80年代中到90年代,面向?qū)ο蟮姆椒ㄅc技術(shù)得到發(fā)展,研究的重點轉(zhuǎn)移到面向?qū)ο蟮姆治雠c設計,演化為一種完整的軟件開發(fā)方法和系統(tǒng)的技術(shù)體系,稱為對象工程。1.1軟件與軟件危機軟件工程的發(fā)展已經(jīng)歷了三個重要階段:3、第三代軟件工程—構(gòu)件工程(軟件復用)2、第二代軟件工程—對象工程1、第一代軟件工程—傳統(tǒng)的軟件工程注:軟件工程發(fā)展階段論沒有統(tǒng)一定論
90起年代,基于構(gòu)件(Component)的開發(fā)方法取得重要進展,軟件系統(tǒng)的開發(fā)可通過使用現(xiàn)成的可復用構(gòu)件組裝完成,而無需從頭開始構(gòu)造,以此達到提高效率和質(zhì)量,降低成本的目的。稱為構(gòu)件工程。軟件軟件就是程序?×一定要糾正軟件就是程序,開發(fā)軟件就是編寫程序的錯誤觀念!
軟件定義:軟件是能夠完成預定功能和性能的可執(zhí)行的計算機程序和使程序正常執(zhí)行所需要的數(shù)據(jù),加上描述軟件開發(fā)過程及其管理、程序的操作和使用的有關文檔。程序的構(gòu)成:面向過程的程序=算法+數(shù)據(jù)結(jié)構(gòu)面向?qū)ο蟮某绦?對象+消息面向構(gòu)件的程序=構(gòu)件+框架
軟件軟件的簡要定義:
軟件=程序+數(shù)據(jù)+文檔程序:按事先設計的功能和性能需求執(zhí)行的指令序列數(shù)據(jù):是程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu)文檔:與程序開發(fā)及過程管理、維護和使用有關的圖文材料程序、軟件與軟件產(chǎn)品:獨唱—>>小合唱—>>合唱—>>萬人大合唱|||簡單程序較復雜程序軟件軟件規(guī)模越來越大Windows95有1000萬行代碼Windows2000有5000萬行代碼Exchange2000和Windows2000開發(fā)人員結(jié)構(gòu)Exchange2000Windows2000項目經(jīng)理25人約250人開發(fā)人員140人約1700人測試人員350人約3200人軟件開發(fā)的發(fā)展過程計算機應用發(fā)展軟件數(shù)量多規(guī)模大軟件成本高質(zhì)量低個體化軟件開發(fā)方法軟件維護困難軟件危機軟件工程軟件的特征軟件是一種邏輯實體,不是物理實體,他具有抽象性軟件不會磨損和老化軟件主要是研制,生產(chǎn)是簡單的拷貝軟件成本昂貴,其開發(fā)方式至今尚未擺脫手工方式軟件維護不同于硬件維修,易產(chǎn)生新的問題軟件具有“復雜性”,其開發(fā)和運行常受到計算機系統(tǒng)的限制,即受環(huán)境影響大軟件的特征失效率時間硬件失效率曲線失效率時間實際曲線理想曲線軟件失效率曲線軟、硬件失效情況的對比
硬件失效率曲線,是一U型曲線(即浴盆曲線)。軟件失效率曲線,它沒有U型曲線的右半翼。因為軟件不存在磨損和老化問題,然而存在退化問題。軟件危機定義計算機軟件的開發(fā)和維護過程所遇到的一系列嚴重問題表現(xiàn)對軟件開發(fā)成本和進度的估算很不準確用戶很不滿意質(zhì)量很不可靠沒有適當?shù)奈臋n軟件成本比重上升供不應求:軟件開發(fā)生產(chǎn)率跟不上計算機應用迅速深入的趨勢軟件危機例證
IBM公司的OS/360,共約100萬條指令,花費了5000個人年;經(jīng)費達數(shù)億美圓,而結(jié)果卻令人沮喪,錯誤多達2000個以上,系統(tǒng)根本無法正常運行。OS/360系統(tǒng)的負責人Brooks這樣描述開發(fā)過程的困難和混亂:“…像巨獸在泥潭中作垂死掙扎,掙扎得越猛,泥漿就沾得越多,最后沒有一個野獸能夠逃脫淹沒在泥潭中的命運?!?/p>
1963年美國飛往火星的火箭爆炸,造成1000萬美元的損失。原因是FORTRAN程序:
DO5I=1,3
誤寫為:DO5I=1.
3
1967年蘇聯(lián)“聯(lián)盟一號”載人宇宙飛船在返航時,由于軟件忽略一個小數(shù)點,在進入大氣層時因打不開降落傘而燒毀。硬件/軟件成本變化趨勢
硬件
軟件
100%0%195519701985軟件技術(shù)進步落后于需求增長軟件危機原因客觀:軟件本身特點邏輯部件規(guī)模龐大主觀:不正確的開發(fā)方法忽視需求分析錯誤認為:軟件開發(fā)=程序編寫輕視軟件維護軟件危機解決途徑組織管理系統(tǒng)工程項目管理方法技術(shù)措施軟件開發(fā)技術(shù)與方法軟件工具1.2軟件工程學的范疇軟件工程學指導計算機軟件開發(fā)和維護的工程學科工程管理+開發(fā)技術(shù)1983年B.W.Boehm提出了軟件工程的七條基本原理:用分階段的是的生存周期計劃嚴格管理;堅持進行階段評審;嚴格實施的產(chǎn)品控制;采用現(xiàn)代程序技術(shù);結(jié)果應能清楚地審查;開發(fā)小組的成員應該少而精;承認不斷改進軟件工程的必要性。1.2軟件工程學的范疇于1968年在聯(lián)邦德國召開的北大西洋公約軟件可靠性會議(NATO)上,首次提出“軟件工程”的概念,提出了在軟件生產(chǎn)中采用工程化的方法,采用一系列科學的、現(xiàn)代化的方法技術(shù)來開發(fā)軟件。這種工程化的思想貫穿到軟件開發(fā)和維護的全過程。了解有關軟件、軟件生存期及軟件工程過程等重要的概念,對掌握、學習和應用軟件工程的方法、技術(shù)等對于計算機科學與技術(shù)專業(yè)的學生都是非常必要的。1.2軟件工程學的范疇軟件工程學軟件開發(fā)技術(shù)軟件工程管理軟件開發(fā)方法學軟件工具軟件工程環(huán)境軟件管理學軟件經(jīng)濟學軟件度量學軟件工程層次圖
該圖展現(xiàn)了軟件工程研究的內(nèi)容及關注的焦點。
1.3傳統(tǒng)軟件工程和面向?qū)ο筌浖こ逃捎谲浖_發(fā)方法可分為三大類:面向過程的開發(fā)方法(傳統(tǒng)的)面向?qū)ο蟮拈_發(fā)方法基于構(gòu)件的開發(fā)方法相應地軟件工程方法也分為三大類:面向過程的軟件工程(傳統(tǒng)的)面向?qū)ο蟮能浖こ袒跇?gòu)件的軟件工程傳統(tǒng)軟件工程傳統(tǒng)的軟件工也稱為面向過程的軟件開發(fā)方法,這類開發(fā)方法都典型地包含了分析、設計、實現(xiàn)、確認(測試)、演化(維護)等活動。典型的傳統(tǒng)軟件開發(fā)方法有:Jackson方法、結(jié)構(gòu)化開發(fā)方法、原型化方法、HIPO法、IDEF法等。傳統(tǒng)軟件工程一、結(jié)構(gòu)化開發(fā)方法(StructuredDevelopingMethod)是一種面向數(shù)據(jù)流的開發(fā)方法,是現(xiàn)有的軟件開發(fā)方法中最成熟,應用最廣泛的方法,主要特點是快速,自然和方便。結(jié)構(gòu)化方法總的指導思想是自頂向下、逐步求精,以數(shù)據(jù)流,數(shù)據(jù)的封閉性準則來逐層分解的,它的基本原則是功能的分解與抽象。
結(jié)構(gòu)化方法強調(diào)結(jié)構(gòu)的合理性。提出了一組提高軟件結(jié)構(gòu)質(zhì)量的準則,如功能的分解與抽象、模塊獨立性、信息屏蔽等。傳統(tǒng)軟件工程
JACKSON方法是一種面向數(shù)據(jù)結(jié)構(gòu)的設計方法。強調(diào)程序結(jié)構(gòu)與問題結(jié)構(gòu)相對應。
JACKSON方法由兩部分構(gòu)成:1、JSP(JacksonstructuredProgramming)(杰克遜結(jié)構(gòu)程序設計)2、JSD(JacksonSystemDevelopment)二、Jackson方法
1.3傳統(tǒng)軟件工程和面向?qū)ο筌浖こ倘⒃突椒ǎ≒rototypingMethod)
原型是軟件開發(fā)過程中,軟件的一個早期可運行的版本,它反映了最終系統(tǒng)的部分重要特性。
原型化方法的基本思想是花費少量代價建立一個可運行的系統(tǒng),使用戶及早獲得學習的機會,原型化方法又稱速成原型法(RapidPrototyping)。強調(diào)的是軟件開發(fā)人員與用戶的不斷交互,通過原型的演進不斷適應用戶任務改變的需求。將維護和修改階段的工作盡早進行,使用戶驗收提前,從而使軟件產(chǎn)品更加適用。傳統(tǒng)軟件工程四、HIPO法(HierarchyPlusInput—Process—Output)
HIPO法(HierarchyPlusInput—Process—Output),按功能層次結(jié)構(gòu)分析法,74年由IBM公司推出的軟件分析及設計方法,又稱HIPO圖。HIPO圖是以功能、功能完備性準則逐層分解的。由直觀目錄表(H圖),概要HIPO圖,詳細IPO圖三部分組成。面向?qū)ο筌浖こ蘋OSD(Object-OrientedSoftwareDevelopment)法這是80年代推出的一種全新的軟件開發(fā)方法。非常實用而強有力,被譽為90年代軟件的核心技術(shù)之一。
其基本思想是:對問題領域進行自然的分割,以更接近人類通常思維的方式建立問題領域的模型,以便對客觀的信息實體進行結(jié)構(gòu)和行為的模擬,從而使設計的軟件更直接地表現(xiàn)問題的求解過程。面向?qū)ο蟮拈_發(fā)方法以對象作為最基本的元素,是分析和解決問題的核心。軟件復用技術(shù)(基于構(gòu)件的軟件工程)“軟件重用”或“軟件復用”(SoftwareReuse)是指將已有的軟件成分用于構(gòu)造新的軟件系統(tǒng)。該技術(shù)是提高軟件生產(chǎn)率和質(zhì)量,降低成本的有效方法。一、復用方式復用程序:包括目標代碼和源代碼的復用,可通過連接(Link)、綁定(Binding)、包含(include)等功能支持及對象鏈接及嵌入(OLE)技術(shù)實現(xiàn)。復用分析
比設計復用級別更高,實現(xiàn)方式與設計復用類似。復用設計:設計結(jié)果比源程序的抽象級別高,因此復用受環(huán)境影響小。可以通過從現(xiàn)有系統(tǒng)中提取全部或者不同粒度的設計構(gòu)件,或者獨立于具體應用開發(fā)設計構(gòu)件。復用結(jié)構(gòu)
復用模塊結(jié)構(gòu)或者數(shù)據(jù)結(jié)構(gòu)。軟件復用技術(shù)(基于構(gòu)件的軟件工程)二、可復用的構(gòu)件
構(gòu)件是指可以被明確標識的軟件制品,可以是軟件開發(fā)不同階段的產(chǎn)品。
可復用構(gòu)件是指可被其它系統(tǒng)復用,用于構(gòu)成新系統(tǒng)的構(gòu)件??蓮陀脴?gòu)件的特性:1.獨立性解決相對獨立的問題,與外界聯(lián)系盡量少。2.完整性既要包括完整的解決方案,還定義相應操作。3.通用性在同類應用中具有一般性。4.可標識性通過合適的命名,構(gòu)件所解決的問題是可標識的。5.可適應性適應環(huán)境變化。6.可靠性對各個使用它的系統(tǒng)都具有高的可靠性。兩種程序設計方法程序設計的兩次飛躍程序設計從主要依賴于程序員個人的自由活動變成有章可循的一門學科——結(jié)構(gòu)化程序設計面向過程的程序=算法+數(shù)據(jù)結(jié)構(gòu)結(jié)構(gòu)化程序設計到面向?qū)ο蟪绦蛟O計,是程序設計方法的又一次飛躍面向?qū)ο蟮某绦?對象+消息面向過程和面向?qū)ο蟮木幋a存款取款利息結(jié)算帳戶余額帳戶余額利息結(jié)算存款取款例:VB的對象Form1下…兩類軟件工程方法傳統(tǒng)軟件工程軟件分析→總體設計→詳細設計→面向過程的編碼→測試系統(tǒng)設計面向?qū)ο筌浖こ誊浖治雠c對象抽取→對象詳細設計→面向?qū)ο蟮木幋a→測試建立模型運行與維護面向?qū)ο蟮南到y(tǒng)分析與設計方法1.4軟件工程的應用一、軟件的分類1、按照軟件功能劃分系統(tǒng)軟件—如操作系統(tǒng)、設備驅(qū)動程序等。支撐軟件(實用軟件)—協(xié)助用戶開發(fā)的工具軟件,如編輯程序、程序庫、圖形軟件包等。應用軟件—如工程與科學計算軟件、CAD/CAM軟件、CAI軟件、信息管理系統(tǒng)等。1.4軟件工程的應用2、按照軟件規(guī)模劃分類別參加人數(shù)研制期限產(chǎn)品規(guī)模(源代碼行)微型11–4周0.5K小型11–6月1K–2K中型2-51–2年5–50K大型5-202–3年50–500K甚大型100-10004–5年1M極大型2000-50005–10年1M–10M3、按照軟件工作方式劃分實時處理軟件 交互式軟件 批處理軟件4、按照軟件服務對象的范圍劃分項目軟件—由客戶委托開發(fā)的軟件。產(chǎn)品軟件—由軟件開發(fā)機構(gòu)開發(fā),提供給市場的。此外,還可以按照軟件使用的頻度或軟件失效的影響進行劃分。1.4軟件工程的應用軟件工程指導中小型
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025湖北隨州市曾都區(qū)何店鎮(zhèn)招聘村后備干部7人備考筆試題庫及答案解析
- 2025廣東中山市民眾錦標學校教師招聘備考筆試試題及答案解析
- 2025年河南輕工職業(yè)學院招聘工作人員(博士)5名參考考試試題及答案解析
- 2025福建廈門清大海峽私募基金管理有限公司招聘1人模擬筆試試題及答案解析
- 電網(wǎng)側(cè)獨立儲能電站工程規(guī)劃設計方案
- 江蘇省南通市通州區(qū)、海安縣2026屆高二數(shù)學第一學期期末質(zhì)量檢測模擬試題含解析
- 宇航員補充考試題及答案
- 污水處理廠擴容改造提質(zhì)及管網(wǎng)工程施工方案
- 露天礦項目評估與風險管理方案
- 職業(yè)發(fā)展顧問面試題及答案解析
- 廣東省領航高中聯(lián)盟2025-2026學年高三上學期12月聯(lián)考生物試卷(含答案)
- 生態(tài)系統(tǒng)優(yōu)化方案
- 分布式光伏協(xié)議合同
- 【2025年】熔化焊接與熱切割操作證考試題庫及答案
- 2025年檢察院書記員面試真題及答案解析
- 石材購買意向合同(標準版)
- 小學四年級上冊口算練習題500道(A4打印版)
- (2025年)(完整版)特種設備作業(yè)人員考試題庫及答案
- 知到《性與生殖健康講堂(湖南中醫(yī)藥大學)》智慧樹網(wǎng)課完整版章節(jié)測試答案
- 車聯(lián)網(wǎng)教育平臺構(gòu)建-洞察與解讀
- 國土變更調(diào)查培訓
評論
0/150
提交評論