隨著計(jì)算機(jī)系統(tǒng)的發(fā)展_第1頁
隨著計(jì)算機(jī)系統(tǒng)的發(fā)展_第2頁
隨著計(jì)算機(jī)系統(tǒng)的發(fā)展_第3頁
隨著計(jì)算機(jī)系統(tǒng)的發(fā)展_第4頁
隨著計(jì)算機(jī)系統(tǒng)的發(fā)展_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

概述隨著計(jì)算機(jī)系統(tǒng)的發(fā)展,計(jì)算機(jī)的應(yīng)用日益廣泛,計(jì)算機(jī)軟件的開發(fā)、維護(hù)工作顯得越來越重要。如何才能開發(fā)出用戶滿意的軟件;如何以較低的成本開發(fā)出高質(zhì)量的軟件;怎樣使所開發(fā)的軟件在運(yùn)行過程中容易維護(hù),以延長軟件的使用期限;如何提高軟件開發(fā)、維護(hù)過程中的自動化程度,提高軟件開發(fā)效率;軟件工程如何管理等。這些就是軟件工程研究的問題。軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的學(xué)科。軟件工程的目的是在規(guī)定的時(shí)間、規(guī)定的開發(fā)費(fèi)用內(nèi),開發(fā)出滿足用戶需要的、質(zhì)量合格的軟件產(chǎn)品。本章介紹軟件工程的發(fā)展史,軟件危機(jī)是如何形成和消除的,軟件工程的基本概念、內(nèi)容及基本原理等。本章重點(diǎn):軟件工程;軟件生命周期。1.1軟件工程的產(chǎn)生計(jì)算機(jī)系統(tǒng)的發(fā)展、軟件應(yīng)用的日益廣泛和軟件危機(jī)的困擾促使了軟件工程的產(chǎn)生和發(fā)展。軟件工程發(fā)展史自從20世紀(jì)40年代電子計(jì)算機(jī)問世以來,計(jì)算機(jī)軟件隨著計(jì)算機(jī)硬件的發(fā)展而逐步發(fā)展起來,軟件和硬件一起構(gòu)成計(jì)算機(jī)系統(tǒng)。一開始只有程序的概念,后來才出現(xiàn)軟件的概念。當(dāng)軟件需求量大大增加后,人們把軟件視為產(chǎn)品,確定了軟件生產(chǎn)的各個(gè)階段必須完成的有關(guān)計(jì)算機(jī)程序的功能、設(shè)計(jì)和使用的文字或圖形資料,這些資料稱為“文檔”。軟件是指計(jì)算機(jī)程序及其有關(guān)的數(shù)據(jù)和文檔。隨著計(jì)算機(jī)系統(tǒng)的發(fā)展,軟件的生產(chǎn)大體經(jīng)歷了程序設(shè)計(jì)、軟件、軟件工程、第四代技術(shù)等階段。在此過程中,軟件危機(jī)產(chǎn)生并越來越嚴(yán)重,因而逐步形成了研究如何消除軟件危機(jī),如何合理地開發(fā)和維護(hù)軟件的學(xué)科——軟件工程學(xué)。1.程序設(shè)計(jì)階段20世紀(jì)40年代中期到20世紀(jì)60年代中期,電子計(jì)算機(jī)價(jià)格昂貴、運(yùn)算速度低、存儲量小。計(jì)算機(jī)程序是描述計(jì)算任務(wù)的處理對象和處理規(guī)則。早期的程序規(guī)模小,程序往往是個(gè)人設(shè)計(jì)、自己使用。程序設(shè)計(jì)通常要注意如何節(jié)省存儲單元、提高運(yùn)算速度,除了程序清單之外,沒有其他任何文檔資料。2.“軟件=程序+文檔”階段20世紀(jì)60年代中期到20世紀(jì)70年代中期,集成電路計(jì)算機(jī)的運(yùn)算速度和內(nèi)存容量大大提高。隨著程序的增加,人們把程序區(qū)分為系統(tǒng)程序和應(yīng)用程序,并把它們稱為軟件。計(jì)算機(jī)軟件的應(yīng)用范圍更加廣泛,當(dāng)軟件需求量大大增加后,許多用戶去“軟件作坊”購買軟件。軟件產(chǎn)品交付給用戶使用之后,為了糾正錯誤或適應(yīng)用戶需求的改變對軟件進(jìn)行的修改,稱為軟件維護(hù)(softwaremaintenance)。此時(shí),由于在軟件開發(fā)過程中很少考慮到它們的維護(hù)問題,軟件維護(hù)的費(fèi)用以驚人的速度增長,并且不能及時(shí)滿足用戶的需求,質(zhì)量也得不到保證。所謂的“軟件危機(jī)”由此開始。人們逐漸重視軟件的“可維護(hù)性”問題,軟件開發(fā)開始采用結(jié)構(gòu)化程序設(shè)計(jì)技術(shù),并規(guī)定軟件開發(fā)時(shí)必須書寫各種規(guī)格書、說明書、用戶手冊等文檔。1968年北大西洋公約組織(NATO)的計(jì)算機(jī)科學(xué)家在聯(lián)邦德國召開國際會議,討論軟件危機(jī)問題,正式提出了“軟件工程”(softwareengineering)的術(shù)語。從此一門新的工程學(xué)科誕生了。惱3.茫軟件工程階復(fù)段宜20世紀(jì)7臟0年代中期趣到20世紀(jì)棉90年代,倉大規(guī)模集成此電路計(jì)算機(jī)榴的功能和質(zhì)階量不斷提高擔(dān),個(gè)人計(jì)算取機(jī)已經(jīng)成為圈大眾化商品溝,計(jì)算機(jī)應(yīng)西用不斷地?cái)U(kuò)攤大。軟件開瓣發(fā)生產(chǎn)率提樸高的速度遠(yuǎn)態(tài)遠(yuǎn)跟不上計(jì)焦算機(jī)應(yīng)用迅繩速普及深入振的速度,軟賣件產(chǎn)品供不上應(yīng)求,軟件好危機(jī)日益嚴(yán)裹重。為了維礎(chǔ)護(hù)軟件需要押耗費(fèi)大量的倦成本。美國糞當(dāng)時(shí)的統(tǒng)計(jì)吸數(shù)據(jù)表明,有對計(jì)算機(jī)軟幕件的投資占陷計(jì)算機(jī)軟件因、硬件總投未資的70%蘭,到198蜂5年時(shí)軟件暴成本大約占市總成本的9脹0捐%戀。為了對付朝不斷增長的鐘軟件危機(jī),攝軟件工程學(xué)耍把軟件作為伍一種產(chǎn)品進(jìn)砍行批量生產(chǎn)眠,運(yùn)用工程估學(xué)的基本原泥理和方法來讓組織和管理預(yù)軟件生產(chǎn),渴以保證軟件播產(chǎn)品的質(zhì)量灘,提高軟件瘡產(chǎn)品的生產(chǎn)胖率。軟件生溪產(chǎn)使用數(shù)據(jù)簡庫、軟件開貫發(fā)工具、開犁發(fā)環(huán)境等,晝軟件開發(fā)技雕術(shù)有了很大銷的進(jìn)步,開閉始采用工程莊化開發(fā)方法擠、標(biāo)準(zhǔn)和規(guī)斃范,以及面棟向?qū)ο蠹夹g(shù)財(cái)?shù)?。?.任第跑四代技術(shù)階惰段鋤計(jì)算機(jī)系統(tǒng)龜發(fā)展的第四雖階段不再是摔單臺的計(jì)算蔬機(jī)和計(jì)算機(jī)筒程序,而是爛面向計(jì)算機(jī)箱和軟件的綜蓄合影響。復(fù)遮雜的操作系曠統(tǒng)控制的強(qiáng)矮大的桌面系饞統(tǒng),以及連謎接局域網(wǎng)和栽因特網(wǎng)、高程帶寬的數(shù)字末通信與先進(jìn)型的應(yīng)用軟件罵相互配合,澇產(chǎn)生了綜合洗的效果。計(jì)頑算機(jī)體系結(jié)吐構(gòu)從主機(jī)環(huán)膨境轉(zhuǎn)變?yōu)榉纸悴际降目蛻裟銠C(jī)/服務(wù)器餐環(huán)境。表軟件開發(fā)的鎮(zhèn)第四代技術(shù)受有了新的發(fā)盞展:計(jì)算機(jī)運(yùn)輔助軟件工良程(Com遮puter騰Aide申dSof誦tware績Engi愚neeri保ng,CA蝕SE)將工紋具和代碼生伐成器結(jié)合起沃來,為許多陰軟件系統(tǒng)提滴供了可靠的謹(jǐn)解決方案;肌面向?qū)ο蠹嫉g(shù)已在許多動領(lǐng)域迅速取尤代了傳統(tǒng)的思軟件開發(fā)方取法;專家系攝統(tǒng)和人工智績能軟件有了慌實(shí)際應(yīng)用;驗(yàn)人工神經(jīng)網(wǎng)亦絡(luò)軟件展示停了信息處理瞧的美好前景嗓;并行計(jì)算盞技術(shù)、網(wǎng)絡(luò)碑計(jì)算機(jī)、虛供擬現(xiàn)實(shí)技術(shù)虧、多媒體技晌術(shù)和現(xiàn)代通插信技術(shù)使人很們開始采用配和原來完全趕不同的方法藏進(jìn)行工作。葬此外,光計(jì)紫算機(jī)、化學(xué)歲計(jì)算機(jī)、生勸物計(jì)算機(jī)和宅量子計(jì)算機(jī)贊等新一代計(jì)魂算機(jī)的研制椒發(fā)展,必將邪給軟件工程趟技術(shù)帶來一釣場革命。襯臘軟件危感機(jī)遺軟件危機(jī)是蝶指在計(jì)算機(jī)鋪軟件開發(fā)和線維護(hù)時(shí)所遇延到的一系列瓶問題。軟件截危機(jī)主要包動含兩方面的壘問題:一是就如何開發(fā)軟撒件以滿足社桌會對軟件日胳益增長的需黎求,二是如召何維護(hù)數(shù)量舍不斷增長的方已有軟件。姨本節(jié)研究軟拒件危機(jī)產(chǎn)生梨的原因、主炒要表現(xiàn)形式焰以及解決的曉途徑。問1.奏軟件危機(jī)產(chǎn)學(xué)生的原因歪軟件危機(jī)產(chǎn)直生的原因與啞軟件的特點(diǎn)每有關(guān),也與排軟件開發(fā)的懶方式、方法叮、技術(shù)以及轉(zhuǎn)軟件開發(fā)人荒員本身有關(guān)老。告(1)軟件朱是計(jì)算機(jī)系劉統(tǒng)中的邏輯湖部件,軟件鞠產(chǎn)品往往規(guī)位模龐大,給淺軟件的開發(fā)創(chuàng)和維護(hù)帶來填客觀的困難鍋?;ィ?)軟件切一般要使用晃5~10年駛,在這段時(shí)車間里,很可庫能出現(xiàn)開發(fā)螺時(shí)沒有預(yù)料切到的問題,站如系統(tǒng)運(yùn)行租的硬件、軟飽件環(huán)境發(fā)生懸變化,系統(tǒng)壓需求變化等罪,需要及時(shí)車地維護(hù)軟件俊,使軟件可巖以繼續(xù)使用牙。重(3)軟件是開發(fā)技術(shù)落喪后,生產(chǎn)方撞式和開發(fā)工衡具落后。俯(4)軟件揚(yáng)開發(fā)人員忽街視軟件需求會分析的重要謊性,輕視軟映件維護(hù),也孔是造成軟件驢危機(jī)的原因匆。剛2.決軟件危機(jī)主低要表現(xiàn)形式蜓(1)軟件醋發(fā)展速度跟窄不上硬件的融發(fā)展和用戶畢的需求。計(jì)都算機(jī)硬件成街本逐年下降始,軟件應(yīng)用蘿日趨廣泛,蒸軟件產(chǎn)品概“贊供不應(yīng)求瑞”戲,與硬件成拔本相比,軟鞋件成本越來績越高。賠(2)軟件造成本高,開映發(fā)進(jìn)度不能薯預(yù)先估計(jì),芒用戶不滿意糞。由于軟件移應(yīng)用范圍越澇來越廣,很劇多應(yīng)用領(lǐng)域蜂往往是軟件犯開發(fā)者不熟彩悉的,加之澤開發(fā)人員與哀用戶之間信輝息交流不夠報(bào),導(dǎo)致軟件槽產(chǎn)品不符合燙要求,不能御如期完成。做因而,軟件河開發(fā)成本和碰進(jìn)度都與原綁先的估計(jì)相慕差太大,引紀(jì)起用戶不滿她。套(3)軟件返產(chǎn)品質(zhì)量差戶,可靠性得誕不到保證。抱軟件質(zhì)量保碰證技術(shù)沒有須應(yīng)用到軟件棋開發(fā)的全過茅程,導(dǎo)致軟峽件產(chǎn)品質(zhì)量秒問題頻頻發(fā)課生。凡(4)軟件局產(chǎn)品可維護(hù)低性差。軟件趴設(shè)計(jì)時(shí)不注叢意程序的可衛(wèi)讀性,不重各視程序的可去維護(hù)性,程疲序中存在的五錯誤很難改尋正。因此軟舍件需求發(fā)生鴨變化時(shí),維突護(hù)相當(dāng)困難解。偷(5)軟件兆沒有合適的擁文檔資料。杯軟件開發(fā)時(shí)把文檔資料不率全或文檔與刊軟件不一致撤,會引起用垮戶不滿,同楊時(shí)也會給軟龍件維護(hù)帶來慰很大的困難勵。蹦3.農(nóng)解決軟件危舞機(jī)的途徑羞目前,計(jì)算弦機(jī)的體系結(jié)云構(gòu)在硬件上燃是馮劣·酸諾依曼計(jì)算塘機(jī)。硬件的齡基本功能是父做簡單的運(yùn)僑算與邏輯判賠斷,主要還羨是適用于數(shù)畜值計(jì)算。隨饞著計(jì)算機(jī)應(yīng)舒用的日益廣態(tài)泛,許多企旺事業(yè)單位8脂0%以上的重計(jì)算機(jī)用于咽管理方面。厲管理方面大乞多為非數(shù)值盲計(jì)算問題,濤需要設(shè)計(jì)計(jì)胸算機(jī)軟件來憲進(jìn)行處理,渡因而可能會撕使軟件變得遮復(fù)雜、龐大革,從而導(dǎo)致邊軟件危機(jī)的議產(chǎn)生。要解葡決軟件危機(jī)沙問題,需要曾采用以下措諒施:鞏(1)使用滾好的軟件開施發(fā)技術(shù)和方默法。法(2)使用唉好的軟件開沈發(fā)工具,提此高軟件生產(chǎn)姿率。把(3)有良掘好的組織、吹嚴(yán)密的管理招,各類人員饞相互配合共失同完成任務(wù)駝。烘為了解決軟放件危機(jī),既榴要有技術(shù)措丘施(好的方雙法和工具)炎,也要有組著織管理措施附。軟件工程鞋正是從技術(shù)站和管理兩方萬面來研究如隙何更好地開益發(fā)和維護(hù)計(jì)愧算機(jī)軟件的社。匆1.2幟軟件工嘴程途學(xué)劍逐什么是蝴軟件還軟件是計(jì)算抖機(jī)程序及其測有關(guān)的數(shù)據(jù)級和文檔的完渣整集合。桌其中,計(jì)算捉機(jī)程序是能莖夠完成預(yù)定效功能的可執(zhí)恐行的指令序迫列;數(shù)據(jù)是劣程序能適當(dāng)隔處理的信息械,具有適當(dāng)兆的數(shù)據(jù)結(jié)構(gòu)俯;軟件文檔袋是開發(fā)、使退用和維護(hù)程籠序所需要的夜圖文資料。栗軟件文檔(娃softw炊ared椒ocume環(huán)ntati趙on)是以與人們可讀的雄形式出現(xiàn)的狼技術(shù)數(shù)據(jù)和豬信息。文檔先描述或規(guī)定躺軟件的設(shè)計(jì)攝細(xì)節(jié),說明威軟件具備的棕能力,或?yàn)榭谑褂迷撥浖?jù)以便從軟件婦系統(tǒng)得到所且期望的結(jié)果臺提供操作指貪令。杜B.Bo活ehm指出直:揚(yáng)“第軟件是程序考以及對其進(jìn)壤行開發(fā)、使膚用和維護(hù)所綿需要的所有斜文檔。底”串特別當(dāng)軟件須成為商品時(shí)孩,文檔是必抖不可少的;磁沒有文檔,撓僅有程序是培不能稱為軟字件產(chǎn)品的。桶告什么是特軟件工程碗軟件工程是存計(jì)算機(jī)科學(xué)玩中的一個(gè)重知要分支。按復(fù)照中華人民件共和國國家咽標(biāo)準(zhǔn)嘴G饅B/T香11457林—凳1995《肌軟件工程術(shù)員語》的定義燃:軟件工程抹是軟件開發(fā)沒、運(yùn)行、維誰護(hù)和引退的席系統(tǒng)方法。廁因而,軟件狐工程是指導(dǎo)來計(jì)算機(jī)軟件藥開發(fā)和維護(hù)擾的工程學(xué)科這。軟件工程南采用工程的耍概念、原理冷、技術(shù)和方癥法來開發(fā)與線維護(hù)軟件。尋軟件工程的千目標(biāo)是實(shí)現(xiàn)習(xí)軟件的優(yōu)質(zhì)疑高產(chǎn)搞,軟件工程位的目的是在端規(guī)定的時(shí)間成、規(guī)定的開心發(fā)費(fèi)用內(nèi),雙開發(fā)出滿足持用戶需求的輕、高質(zhì)量的謊軟件產(chǎn)品。穗制軟件工焰程學(xué)的內(nèi)容去軟件工程學(xué)文的主要內(nèi)容鐘是軟件開發(fā)沙技術(shù)和軟件鼻工程管理。傾軟件開發(fā)技緩術(shù)包含軟件服工程方法學(xué)孤、軟件工具用和軟件開發(fā)東環(huán)境;軟件餅工程管理學(xué)呈包含軟件工仇程經(jīng)濟(jì)學(xué)和其軟件管理學(xué)惹?;?.錢軟件工程方棄法學(xué)吧最初,程序窮設(shè)計(jì)是個(gè)人秘進(jìn)行的,只京注意如何節(jié)決省存儲單元貌、提高運(yùn)算羨速度。以后工,興起了結(jié)粗構(gòu)程序設(shè)計(jì)烘,人們采用邀結(jié)構(gòu)化的方綁法來編寫程供序。結(jié)構(gòu)程拍序設(shè)計(jì)只有滿順序、條件摘分支和循環(huán)鎮(zhèn)這三種基本妙結(jié)構(gòu)。這樣遺不僅改善了請程序的清晰侮度,而且能雪提高軟件的陵可靠性和軟軋件生產(chǎn)率。民后來,人們戰(zhàn)逐步認(rèn)識到觀編寫程序僅夜是軟件開發(fā)搏過程中的一起個(gè)環(huán)節(jié),在怕典型的軟件款開發(fā)工作中由,編寫程序甚所需的工作所量只占軟件要開發(fā)全部工販作量的孤10%腎~確20%隙,軟件開發(fā)烘工作應(yīng)包括葬需求分析、母軟件設(shè)計(jì)、亭編寫程序等劣幾個(gè)階段,需于是形成了劣“宗結(jié)構(gòu)化分析堡”綢、帳“脾結(jié)構(gòu)化設(shè)計(jì)逼”花、面向數(shù)據(jù)武結(jié)構(gòu)的Ja宋ckson厲方法等傳統(tǒng)伶軟件開發(fā)方攝法。之后,檢20度世紀(jì)討80廊年代廣泛應(yīng)肺用了面向?qū)拖笤O(shè)計(jì)方法定。嶼軟件工程方陰法學(xué)是編制恐軟件的系統(tǒng)襯方法,它確通定軟件開發(fā)上的各個(gè)階段抄,規(guī)定每一急階段的活動茄、產(chǎn)品、驗(yàn)培收的步驟和貼完成準(zhǔn)則。踏軟件工程方妥法學(xué)有三個(gè)金要素,包括角方法、工具茂和過程。儉方法:完成嫁軟件開發(fā)任誼務(wù)的技術(shù)方柏法。葬工具:為方辣法的運(yùn)用提尊供自動或半距自動的軟件灣支撐環(huán)境。賽過程:規(guī)定鄉(xiāng)了完成任務(wù)躺的工作階段農(nóng)、工作內(nèi)容慨、產(chǎn)品、驗(yàn)丑收的步驟和匙完成準(zhǔn)則。硬各種軟件工千程方法的適桑用范圍不盡植相同。目前逢使用得最廣頁泛的軟件工拾程方法學(xué)可組以分為傳統(tǒng)巨方法學(xué)和面比向?qū)ο蠓椒ɡO學(xué)兩類。桿(1)傳統(tǒng)你方法學(xué)咱傳統(tǒng)方法學(xué)瓶采用結(jié)構(gòu)化評技術(shù),包括撈結(jié)構(gòu)化分析挨、結(jié)構(gòu)化設(shè)營計(jì)和結(jié)構(gòu)化陪實(shí)現(xiàn),來完醬成軟件開發(fā)悔任務(wù)。傳統(tǒng)常方法把軟件撈開發(fā)工作劃磁分成若干個(gè)就階段,每個(gè)番階段相對獨(dú)地立,也比較手簡單,順序抵完成各階段狠的任務(wù);每溉個(gè)階段的開叔始和結(jié)束都旱有嚴(yán)格的標(biāo)嗓準(zhǔn);每個(gè)階戒段結(jié)束時(shí)要亦進(jìn)行嚴(yán)格的秧技術(shù)審查和卻管理復(fù)審。滋用傳統(tǒng)方法播學(xué)開發(fā)軟件狡,首先確定盜軟件功能,盲再對功能進(jìn)搬行分解,確葡定怎樣開發(fā)飲軟件,然后懂實(shí)現(xiàn)軟件功補(bǔ)能。傳統(tǒng)方欲法提高了軟夜件的可維護(hù)稱性,提高了蟲軟件開發(fā)的貪成功率,軟鵝件生產(chǎn)率也絲明顯提高。富傳統(tǒng)方法學(xué)灣歷史悠久,吉為廣大軟件盲開發(fā)人員所父熟知,在開換發(fā)某些軟件吼時(shí)十分有效敢。捕傳統(tǒng)方法可來以再分為面天向數(shù)據(jù)流設(shè)只計(jì)方法和面多向數(shù)據(jù)結(jié)構(gòu)植設(shè)計(jì)方法。純(2)面向止對象方法學(xué)炭面向?qū)ο蠓綕u法學(xué)是在傳父統(tǒng)方法學(xué)的燃基礎(chǔ)上發(fā)展憂起來的,把榜對象作為數(shù)賺據(jù)和對數(shù)據(jù)輕的操作相結(jié)伶合的軟件構(gòu)冬件,用對象峽分解取代了底傳統(tǒng)方法的絞功能分解。鋸該方法把所介有對象都劃兼分為類,把尖若干個(gè)相關(guān)角的類組織成倚具有層次結(jié)占構(gòu)的系統(tǒng),檢下層的子類沃繼承上層的墓父類所具有挪的數(shù)據(jù)和操吊作,而對象傘與對象之間據(jù)通過發(fā)送消左息相互聯(lián)系立。鉗面向?qū)ο蠓蕉畏▽W(xué)的要素趴是對象、類貧、繼承以及資消息通信。抱可以用下列誕方程來概括堵:辣面向?qū)ο笱朐?柿好對象過頁+副駱類追頂+到沈繼承飾雞+枝星消息通信哨面向?qū)ο蠓侥阜▽W(xué)是多次薄反復(fù)、迭代啦開發(fā)的過程冰。面向?qū)ο髣穹椒ㄔ诜治鍪Ш驮O(shè)計(jì)時(shí)使系用相同的概墾念和相同的創(chuàng)表示方法,隨兩個(gè)階段之狼間沒有明顯良的界限。最燙終產(chǎn)品是由弓許多基本獨(dú)幅立的對象組邊成的,這些炊對象具有簡似單、易于理錯解、易于開插發(fā)、易于維因護(hù)的特點(diǎn),漿并且具有可公重用性。慢本書既介紹膀傳統(tǒng)方法學(xué)違,使讀者掌諸握軟件開發(fā)茅的基本步驟貼、方法和文況檔書寫規(guī)范塞,也介紹面眾向?qū)ο蠓椒ㄞI學(xué)。在實(shí)際滋工作中,軟轉(zhuǎn)件開發(fā)人員窗可以根據(jù)具槍體情況,選啦擇不同的軟連件開發(fā)方法熱,也可將不坑同的方法結(jié)悶合起來,揚(yáng)透長避短,在墻提高軟件開悶發(fā)效率的同臉時(shí),提高軟怕件的質(zhì)量。獲2.僻軟件工具舞軟件工具(方softw甲aret晴ools)庭是指為了支儉持計(jì)算機(jī)軟香件的開發(fā)和鑼維護(hù)而研制年的程序系統(tǒng)昌。使用軟件襖工具的目的亭是提高軟件軋?jiān)O(shè)計(jì)的質(zhì)量蒼和軟件生產(chǎn)嫌效率,降低葵軟件開發(fā)、侍維護(hù)的成本鍬。鐵軟件工具用痕于軟件開發(fā)配的整個(gè)過程蛛。例如,需漿求分析工具微用類生成需蛾求說明;設(shè)峽計(jì)階段需要徑使用編輯程槳序、編譯程疫序、連接程丈序,有的軟喬件還能自動株生成程序;恨在測試階段毅可使用排錯董程序、跟蹤波程序、靜態(tài)溝分析工具和赴監(jiān)視工具等螞;軟件維護(hù)喉階段用到版抱本管理、文低檔分析工具虹等;軟件管范理方面也有噴許多軟件工緩具。軟件開忠發(fā)人員在軟少件生產(chǎn)的各趟個(gè)階段可根碼據(jù)不同的需景要,選擇合級適的工具使漆用。目前,椅軟件工具發(fā)貼展迅速,許姐多用于軟件猶分析和設(shè)計(jì)騰的工具正在香建立,其目項(xiàng)標(biāo)是實(shí)現(xiàn)軟她件生產(chǎn)各階其段的自動化該。恒3.果軟件開發(fā)環(huán)肉境月軟件開發(fā)方賢法和軟件工助具是軟件開庭發(fā)的兩大支燭柱,它們之蒸間密切相關(guān)喚。軟件開發(fā)烏方法提出了鎮(zhèn)明確的工作凈步驟和標(biāo)準(zhǔn)丈的文檔格式伍,這是設(shè)計(jì)挖軟件工具的售基礎(chǔ),而軟燦件工具的實(shí)慧現(xiàn)又將促進(jìn)伐軟件開發(fā)方牽法的推廣和祝發(fā)展。姜軟件開發(fā)環(huán)燃境是方法和胳工具的結(jié)合岸。在198勇5年第八屆奏國際軟件工即程會議上,較關(guān)于鋒“驢軟件開發(fā)環(huán)賴境悼”嘆的定義是:坡“那軟件開發(fā)環(huán)唇境是相關(guān)的弱一組軟件工繡具集合,它副支持一定的辟軟件開發(fā)方燕法或按照一盟定的軟件開海發(fā)模型組織紋而成臘”敞。燦軟件開發(fā)環(huán)稅境的設(shè)計(jì)目更標(biāo)是提高軟移件生產(chǎn)率和駱改善軟件質(zhì)匯量。本書將告在后續(xù)章節(jié)矩介紹一些常本用的軟件開回發(fā)方法、軟摟件工具及軟汪件開發(fā)環(huán)境蠻。歪計(jì)算機(jī)輔助束軟件工程(秧Compu為terA烤ided崖Softw松areE耀ngine塌ering艘,CASE狼)是一組工纖具和方法的憐集合,可以罰輔助軟件生堤命周期各階無段進(jìn)行的軟征件開發(fā)活動餐。精CASE劃是多年來在院軟件工程管帳理、軟件開幸發(fā)方法、軟矩件開發(fā)環(huán)境好和軟件工具褲等方面研究咐和發(fā)展的產(chǎn)策物。CAS惹E吸收了細(xì)CAD楚(計(jì)算機(jī)輔解助設(shè)計(jì))、葬軟件工程、壩操作系統(tǒng)、跳數(shù)據(jù)庫、網(wǎng)確絡(luò)和許多其澤他計(jì)算機(jī)領(lǐng)需域的原理和倦技術(shù)。因而閥,信CASE胸領(lǐng)域是一個(gè)岡應(yīng)用、集成美和綜合的領(lǐng)扭域。其中,漏軟件工具不務(wù)是對任何軟哨件開發(fā)方法首的取代,而賺是對方法的俯輔助,它旨當(dāng)在提高軟件軟開發(fā)的效率屑和軟件產(chǎn)品掩的質(zhì)量。處4.蛋軟件工程管羨理階軟件工程管毫理學(xué)包含軟著件工程經(jīng)濟(jì)秀學(xué)和軟件管吳理學(xué)。本書梨只介紹有關(guān)吊軟件工程管宇理的內(nèi)容,棄即對軟件開枯發(fā)各階段的新活動進(jìn)行管牽理。軟件工格程管理的目挖的是按預(yù)定她的時(shí)間和費(fèi)百用,成功地廳生產(chǎn)軟件產(chǎn)忙品。軟件工游程管理的任制務(wù)是有效地儲組織人員,垮按照適當(dāng)?shù)难丶夹g(shù)、方法皂,利用好的武工具來完成鋸預(yù)定的軟件盯項(xiàng)目。祝軟件工程管玩理的內(nèi)容包仰括軟件費(fèi)用紫管理、人員根組織、工程詠計(jì)劃管理、北軟件配置管棋理等。怨(溪1鐮)費(fèi)用管理午一般來講,呈開發(fā)一個(gè)軟能件是一種投姜資,人們總引是期望將來唐獲得較大的前經(jīng)濟(jì)效益。槽從經(jīng)濟(jì)角度捕分析,開發(fā)誘一個(gè)軟件系螞統(tǒng)是否劃算曠,是軟件使四用單位的負(fù)課責(zé)人決定是嗓否開發(fā)這個(gè)憂項(xiàng)目的主要扒依據(jù),要從傲軟件開發(fā)成朵本、運(yùn)行費(fèi)邀用、經(jīng)濟(jì)效泥益等方面來積估算整個(gè)系隸統(tǒng)的投資和哪回報(bào)情況。對軟件開發(fā)成贏本主要包含邊開發(fā)人員的坦工資報(bào)酬,擋以及開發(fā)階屑段的各項(xiàng)支城出;軟件運(yùn)術(shù)行費(fèi)用取決竟于系統(tǒng)的操章作費(fèi)用和維換護(hù)費(fèi)用,其幕中操作費(fèi)用薪包括操作人金員的人數(shù)、泰工作時(shí)間、原消耗的各類濫物資等開支舅;系統(tǒng)的經(jīng)劈濟(jì)效益是指求因使用新系晃統(tǒng)而節(jié)省的星費(fèi)用和增加憂的收入。炊由于運(yùn)行費(fèi)句用和經(jīng)濟(jì)效惡益兩者在軟鹽件的整個(gè)使鬼用期內(nèi)都存寺在,總的效換益和軟件使產(chǎn)用時(shí)間的長銳短有關(guān),所穗以,應(yīng)合理褲地估算軟件虜?shù)膲勖?。一馬般在進(jìn)行成帖本/效益分烈析時(shí)一律假呆設(shè)軟件使用禮期為五年。軋(2)人員雕組織填軟件開發(fā)不值是個(gè)體勞動載,需要各類暫人員協(xié)同配走合,共同完翻成工程任務(wù)據(jù),因而應(yīng)該膽有良好的組榆織、周密的施管理。蠟(3)工程杏計(jì)劃管理藍(lán)軟件工程計(jì)儉劃是在軟件求開發(fā)的早期筍確定的。在三計(jì)劃實(shí)施過球程中,如果伙有其他需要飼,應(yīng)對工程假進(jìn)度做適當(dāng)連的調(diào)整。在錯軟件開發(fā)結(jié)差束后應(yīng)寫出迫軟件開發(fā)總糠結(jié),以便今香后能制定出忠更切實(shí)際的遲軟件開發(fā)計(jì)蜻劃。長(4)軟件撿配置管理灣軟件工程各外階段所產(chǎn)生嗓的全部文檔偶和軟件本身礎(chǔ)構(gòu)成軟件配舊置。每完成尖一個(gè)軟件工街程步驟,都浩涉及軟件工兵程配置,必逝須使軟件配匠置始終保持卻其精確性。森軟件配置管嚴(yán)理就是在系因統(tǒng)的整個(gè)開鴨發(fā)、運(yùn)行和賀維護(hù)時(shí)期控眠制配置的狀別態(tài)和變動,輕驗(yàn)證配置項(xiàng)升的完整性和畫正確性。奔豎軟件過蛛程搞國際標(biāo)準(zhǔn)化希組織(In錄terna白tiona喇lSta轟ndard肅izati速on估Orga便nizat棟ion,I酒SO)是世佩界性的標(biāo)準(zhǔn)散化專門機(jī)構(gòu)駝。痰ISO讓溫9000矮把軟件過程框定義為:訪“狀把輸入轉(zhuǎn)化隱為輸出的一節(jié)組彼此相關(guān)架的資源和緊活動鐮”川。弱軟件過程是既為了獲得高鉗質(zhì)量軟件所說需要完成的我一系列任務(wù)棋的框架,它被規(guī)定了完成紅各項(xiàng)任務(wù)的呈工作步驟件。面軟件開發(fā)過喘程(sof拳tware根deve逮lopme擾ntpr阿ocess征)是把用戶擠要求轉(zhuǎn)化為俊軟件需求,嫩把軟件需求休轉(zhuǎn)化為設(shè)計(jì)關(guān),用代碼來內(nèi)實(shí)現(xiàn)設(shè)計(jì)并霜對代碼進(jìn)行博測試,完成娘文檔編制并金確認(rèn)軟件可勤以投入運(yùn)行輕使用的過程鏟。疾軟件過程定拉義了運(yùn)用方舟法的順序、捧應(yīng)該交付的臥文檔、開發(fā)止軟件的管理建措施和各階牲段任務(wù)完成烘的標(biāo)志。訂軟件過程是稍軟件工程方壺法學(xué)的三個(gè)淡要素(弄方法、工具閘和過程)友之一。軟件渠過程必須科磨學(xué)、合理才饞能獲得高質(zhì)眾量的軟件產(chǎn)簡品。摔記軟件工勵程基本原理仗著名軟件工茅程專家B轉(zhuǎn).Boe珍hm贈綜合有關(guān)專末家和學(xué)者的進(jìn)意見并總結(jié)婆了多年來開稿發(fā)軟件的經(jīng)黎驗(yàn),于侮1983振年在一篇論羅文中提出了猴軟件工程的噴七條基本原漲理。桑(裁1免)用分階段襖的生存周期崖計(jì)劃進(jìn)行嚴(yán)儲格的管理。稀(卵2戀)堅(jiān)持進(jìn)行輕階段評審。去(3)實(shí)行富嚴(yán)格的產(chǎn)品退控制。泥(4)采用泡現(xiàn)代程序設(shè)翼計(jì)技術(shù)。語(5)軟件依工程結(jié)果應(yīng)盆能清楚地審命查。劃(6)開發(fā)謎小組的人員賠應(yīng)該少而精擺。捧(7)承插認(rèn)不斷改進(jìn)歸軟件工程實(shí)戒踐的必要性舞。涂B.Bo遺ehm敢指出,遵循觸前六條基本扛原理,能夠蕉實(shí)現(xiàn)軟件的蛋工程化生產(chǎn)丘;按照第七許條原理,不擇僅要積極主凝動地采納新此的軟件技術(shù)惰,而且要注萄意不斷總結(jié)奇經(jīng)驗(yàn)。在本鞭課程的學(xué)習(xí)鋼中,讀者將澤體會到軟件藍(lán)工程基本原躺理的含義和火作用。薯1.3膊軟件生殊命周期暴尸軟件生更命周期裂定義移軟件生命周案期(sof貢tware劑life圖cycl竊e)是從設(shè)袋計(jì)軟件產(chǎn)品示開始到產(chǎn)品霸不能使用為荷止的時(shí)間周姐期。軟件產(chǎn)黃品從問題定嫂義開始,經(jīng)墳過開發(fā)、使瞞用和維護(hù),梯直到最后被黨淘汰的整個(gè)耗過程就是軟壟件生命周期法。伸一個(gè)人從出碧生開始,經(jīng)雷過兒童、青醫(yī)年、中年、狼老年等時(shí)期舍到死亡。在熱人的一生中選,國家和社沙會對他的負(fù)周擔(dān)主要體現(xiàn)籃在兒童、青帳少年時(shí)期的射培養(yǎng)及老年鼠喪失勞動能少力后的供養(yǎng)樹方面。而一五個(gè)人從參加薯工作開始就拆對國家與社現(xiàn)會做貢獻(xiàn),鋪貢獻(xiàn)越大,宅人的價(jià)值也嚷就越大。披同樣,軟件鏈生命周期中幅軟件的開發(fā)篩要投資、消頸耗價(jià)值,在魄軟件交付使悉用后就開始系產(chǎn)生價(jià)值,困但軟件維護(hù)宣又要消耗價(jià)攻值。軟件生蹤命周期中,層消耗價(jià)值越捏少,即軟件捐開發(fā)與維護(hù)都時(shí)的費(fèi)用越統(tǒng)低,軟件的風(fēng)使用壽命越精長,產(chǎn)生的庸價(jià)值就越大屠,這就是掌紋握軟件工程萄學(xué)的目的。允軟件生命周痕期是軟件工戴程的一個(gè)重毀要概念。軟棟件生命周期甩有時(shí)與軟件必開發(fā)周期作紗為同義詞使障用。一個(gè)軟寧件產(chǎn)品的生抬存周期可劃橫分為若干個(gè)節(jié)互相區(qū)別而駛又有聯(lián)系的桑階段。把整域個(gè)生存周期氏劃分為若干紐個(gè)階段,賦豎予每個(gè)階段瀉相對獨(dú)立的仗任務(wù),然后兩逐步完成每班個(gè)階段的任下務(wù)。這樣,加能夠簡化每膀個(gè)階段的工失作,容易確疏立系統(tǒng)開發(fā)陜計(jì)劃,還可株明確系統(tǒng)各已類開發(fā)人員殖的分工與職鳳責(zé)范圍,以細(xì)便分工協(xié)作陪,保證質(zhì)量天。糾每一階段的桑工作都以前嘉一階段的結(jié)樹果為依據(jù),主并作為下一呢階段的前提時(shí)。每個(gè)階段奮結(jié)束時(shí)都要粉有技術(shù)審查敢和管理復(fù)審拜,從技術(shù)和廁管理兩方面叔對這個(gè)階段愉的開發(fā)成果卸進(jìn)行檢查,唯及時(shí)決定系呆統(tǒng)是繼續(xù)進(jìn)姐行,還是停汽工或是返工霧。應(yīng)避免到蕩開發(fā)結(jié)束時(shí)蟲,才發(fā)現(xiàn)前糟期工作存在壘問題,造成握不可挽回的魔損失和失敗律的現(xiàn)象。襯每個(gè)階段都京要進(jìn)行的復(fù)兄審,主要檢聞查是否有高椒質(zhì)量的文檔絕資料,前一塊個(gè)階段復(fù)審染通過了,后隊(duì)一個(gè)階段才謀能開始。開梳發(fā)單位的技波術(shù)人員可根格據(jù)所開發(fā)軟爭件的性質(zhì)、曾用途及規(guī)模叉等因素決定芽在軟件生命眨周期中增加蹦或減少相應(yīng)旋的階段。焦把一個(gè)軟件服產(chǎn)品的生存構(gòu)周期劃分為臣若干個(gè)階段顏,是實(shí)現(xiàn)軟慘件生產(chǎn)工程隨化的重要步豎驟。演軟件生命周財(cái)期劃分階段奉的方法有多蜂種,可按軟把件規(guī)模、種媽類、開發(fā)方策式、開發(fā)環(huán)跪境等來劃分移生存周期。歷不管用哪種紡方法劃分兼生存周期,玩劃分階段的慈原則是相同尖的。民梯軟件生鹿命周期劃分兼階段的原則恥軟件生命周挨期劃分階段捧的原則如下扣:饒(1)各階趙段的任務(wù)彼明此間盡可能擋相對獨(dú)立。掩這樣便于逐句步完成每個(gè)劍階段的任務(wù)旱,能糖夠簡化每個(gè)益階段的工作何,易于確立哀系統(tǒng)開發(fā)計(jì)佩劃。匯(2)同一傍階段的工作赤任務(wù)性質(zhì)盡漢可能相同。將這樣有利于幕軟件工程的拍開發(fā)和組織額管理,明確掠系統(tǒng)各類開脈發(fā)人員的分逃工與職責(zé)范深圍,以便協(xié)讓同工作,保斧證質(zhì)量。成坐軟件生花命周期各階駐段杠的任務(wù)欠軟件生命周揉期一般由軟掃件計(jì)劃、軟營件開發(fā)和軟鏡件運(yùn)行維護(hù)拴三個(gè)時(shí)期組盡成。軟件計(jì)遣劃時(shí)期分為均問題定義、爭可行性研究胡和案需求分析三島個(gè)階段。軟列件開發(fā)時(shí)期份可分為軟件艱設(shè)計(jì)、軟件舌實(shí)現(xiàn)和綜合干測試將三個(gè)私階段。其中鈴,軟件設(shè)計(jì)蹲階段可分為秤概要設(shè)計(jì)和唉軟件詳細(xì)設(shè)鞋計(jì)階段,軟翁件實(shí)現(xiàn)階段徹進(jìn)行程序設(shè)孟計(jì)和軟件單稍元測試,軟踢件開發(fā)的最春后階段竊是漢進(jìn)行綜合測雞試等。軟件高交付使用后廊在運(yùn)行過程命中需要不斷方地進(jìn)行維護(hù)再,才能使軟漫件持久地滿擔(dān)足用戶的需艷要。因下面簡要介目紹軟件生命表周期各階段赤的主要任務(wù)窄。飽(1)問題法定義臭確定系統(tǒng)的咳目標(biāo)、規(guī)模恩和基本任務(wù)愧。光(2)可行流性研究伯從經(jīng)濟(jì)、技丘術(shù)、法律等撓方面分析確瓦定系統(tǒng)是否促值得開發(fā),埋如果不值得橡開發(fā)應(yīng)及時(shí)滿建議停止項(xiàng)過目開發(fā),避隸免人力、物雙力、時(shí)間的踢浪費(fèi)。遮(3)需求竟分析堤確定軟件系云統(tǒng)應(yīng)具備的小具體功能。裳通常用數(shù)據(jù)如流圖、數(shù)據(jù)什字典和簡明趟算法描述表縮示系統(tǒng)的邏憤輯模型,防雖止造成系統(tǒng)利的設(shè)計(jì)與用酒戶的實(shí)際需舒求不相符的克后果。展(4)概要靈設(shè)計(jì)量確定系統(tǒng)設(shè)疏計(jì)方案,以井及軟件的體有系結(jié)構(gòu),即裳軟件由哪些軋模塊組成及疤這些模塊之港間的相互關(guān)次系。觀(5)詳細(xì)旬設(shè)計(jì)子描述應(yīng)該如仰何具體地實(shí)?,F(xiàn)系統(tǒng)。詳波細(xì)設(shè)計(jì)每個(gè)奧模塊,確定芬實(shí)現(xiàn)模塊所期需要的算法脆和數(shù)據(jù)結(jié)構(gòu)陡。芬(6)軟件槽實(shí)現(xiàn)階段勺進(jìn)行程序設(shè)奸計(jì)(編碼)集和模塊測試塵。殼(7)綜合井測試階段夕通過各種類賓型的測試,粘查出軟件設(shè)禿計(jì)中的錯誤傭并改正,確岸保軟件質(zhì)量如;還要在用賭戶的參與下僚進(jìn)行驗(yàn)收,腿才可交付使進(jìn)用。蛛(8)軟件匆運(yùn)行、維護(hù)跳軟件運(yùn)行期雀間,通過各黃種必要的維橡護(hù)使系統(tǒng)改售正錯誤或修冶改擴(kuò)充功能賊使軟件適應(yīng)眉環(huán)境變化,較以延長軟件立的使用壽命薪,提高軟件佛的效益。每拔次維護(hù)的要飼求及修改步漿驟都應(yīng)詳細(xì)忍準(zhǔn)確地記錄要下來,作為鋪文檔保存。跌1.4遼軟件開摧發(fā)模型闖根據(jù)軟件生灣產(chǎn)工程化的趁需要,軟件蟲生命周期的攻劃分也有所巧不同,從而威形成了不同悼的軟件生命且周期模型(薯softw饒arel余ifec齒ycle放model圍),或稱軟灘件開發(fā)模型病。虧總體來說,鞠軟件開發(fā)模務(wù)型包括傳統(tǒng)棚的瀑布模型手和后來興起素的快速原型綱模型兩類。涼具體可分為歌瀑布模型、收快速原型模佩型、增量模診型、噴泉模寫型、螺旋模嗚型和統(tǒng)一過屠程。下面分菜別加以介紹鏈。予勇瀑布模舟型本瀑布模型(瘡water擺fall關(guān)model哲)遵循軟件巧生命周期的舉劃分規(guī)劃,仙明確規(guī)定每屢個(gè)階段的任無務(wù),各個(gè)階于段的工作以惕線性順序展勻開,恰如奔仇流不息的瀑豆布。桂瀑布模型把體軟件生命周碼期分為計(jì)劃緒時(shí)期、開發(fā)巷時(shí)期、運(yùn)行嘩時(shí)期等三個(gè)聽時(shí)期。這三帝個(gè)時(shí)期又可菠細(xì)分為若干歸個(gè)階段:計(jì)綁劃時(shí)期可分真為問題定義客、可行性研橋究、需求分丟析三個(gè)階段揮,開發(fā)時(shí)期診分為概要設(shè)軟計(jì)、詳細(xì)設(shè)耽計(jì)、軟件實(shí)努現(xiàn)、軟件測捎試等階段,甲運(yùn)行時(shí)期則嘴需要不斷進(jìn)斃行運(yùn)行維護(hù)瑞以延長軟件柿的使用壽命夠,如圖1.錯1所示。瀑澡布模型要求頓開發(fā)過程的祝每個(gè)階段結(jié)孤束時(shí)要進(jìn)行鐵復(fù)審,復(fù)審日通過了才能軍進(jìn)入下一階櫻段,復(fù)審?fù)ㄋゲ贿^則要進(jìn)榮行修改或回胳到前面的階罪段進(jìn)行返工犁。軟件維護(hù)瘡時(shí)可能需要崇修改錯誤、揚(yáng)排除故障;撲也可能是用魂戶的需求改涌變了,或軟弟件的運(yùn)行環(huán)繭境改變了,史需要修改軟吹件的結(jié)構(gòu)或上功能,因而資維護(hù)工作可綠能要從修改播需求分析或攪修改概要設(shè)扶計(jì)開始,也磨可能要從修走改軟件編碼甲開始。圖1呢.1中的實(shí)德線箭頭表示片開發(fā)工作的沫流程,每個(gè)纖階段順序進(jìn)般行,有時(shí)會駝返工;虛線媽箭頭表示維輸護(hù)工作的流賊程,根據(jù)不灑同的情況返說回到不同的果階段進(jìn)行維投護(hù)。喬圖1.1摘瀑布模型立瀑布模型軟流件開發(fā)有以柱下幾個(gè)特點(diǎn)壩。階1.賀軟件生命周起期的順序性豈順序性是指悄:只有前一修階段工作完笨成以后,后別一階段的工代作才能開始億;前一階段郵的輸出文檔腦,就是后一樹階段的輸入滾文檔。只有皆前一階段有碑正確的輸出五,后一階段看才可能有正賄確的結(jié)果。遇因而,瀑布池模型的特點(diǎn)偉是由文檔驅(qū)序動的。如果遲在生存周期油的某一階段播出現(xiàn)了錯誤膠,往往要追剛溯到在它之省前的一些階于段。失瀑布模型開惡發(fā)適合于在歐軟件需求比區(qū)較明確,開桐發(fā)技術(shù)比較壟成熟,工程剖管理比較嚴(yán)腰格的場合下幟使用。都2.幻盡可能推遲僚軟件的編碼有程序設(shè)計(jì)也幫稱為編碼。孝實(shí)踐表明,墻大、中型軟守件編碼開始納得越早,完漏成所需的時(shí)站間反而越長宿。瀑布模型臂在編碼之前輪安排了需求過分析、概要居設(shè)計(jì)、詳細(xì)鏡設(shè)計(jì)等階段歪,從而把邏傳輯設(shè)計(jì)和編罷碼清楚地劃眾分開來,盡決可能推遲編遍碼階段。秀3.沉保證質(zhì)量富為了保證質(zhì)蝕量,瀑布模兔型堅(jiān)持兩個(gè)漆重要做法:拾(1)每個(gè)早階段都要完恥成規(guī)定的文批檔???)每個(gè)巧階段都要對雁已完成的文簽檔進(jìn)行復(fù)審慨,以便及早覺發(fā)現(xiàn)隱患,葡排除故障。旅本書以瀑布瞇模型為典型躲開發(fā)模型,源介紹各階段之工作的具體井方法、步驟束、所需工具帝,對其他模財(cái)型可以參照甩此模型執(zhí)行罰。霧展快速原乒型悠模型蹈正確的需求蓬定義是系統(tǒng)振成功的關(guān)鍵夸,但是許多般用戶在開始怎時(shí)往往不能蠟準(zhǔn)確地?cái)⑹龈麄兊男枨蠡穑浖_發(fā)造人員需要反問復(fù)和用戶交鞏流信息,才承能全面、準(zhǔn)到確地了解用助戶的需求。回當(dāng)用戶實(shí)際逮使用了目標(biāo)聚系統(tǒng)以后,巷通過對系統(tǒng)趕的執(zhí)行、評掏價(jià),使用戶床明確對系統(tǒng)郊的需求。此吵時(shí)用戶常常表會改變原來仙的某些想法敬,對系統(tǒng)提縣出新的需求格,以便使系弟統(tǒng)更加符合膀他們的牲需要。撐快速原型模偉型(rap丈idpr鬧ototy宵pemo誓del)是宋指快速開發(fā)津一個(gè)可以運(yùn)球行的原型系產(chǎn)統(tǒng),該原型耐系統(tǒng)所能完溝成的功能往拐往是最終產(chǎn)非品能完成的杜功能的一個(gè)擔(dān)子集。請用純戶試用原型淘系統(tǒng),以便足能準(zhǔn)確地認(rèn)鍋?zhàn)R到他們的星實(shí)際需要是香什么,然后增書寫軟件系蹄統(tǒng)的需求規(guī)某格說明文檔拾,根據(jù)這份析文檔開發(fā)出踏來的軟件可掃以滿足用戶與的真實(shí)需求敬。這相當(dāng)于店工程上先制以作釋“紅樣品曉”碧,試用后做勿適當(dāng)改進(jìn),碧然后再批量裁生產(chǎn)一樣。折創(chuàng)建快速原度型從設(shè)計(jì)用憶戶界面開始神,所建立的輝原型能完成慰的功能,往倉往是用戶需椅求的主要功刷能??焖僭刃湍P凸膭罡脩魠⑴c開拌發(fā)過程,用緊戶參與原型膀的運(yùn)行和評援價(jià),能充分侵地與開發(fā)者塌協(xié)調(diào)一致。物開發(fā)期間,唇原型還可作粗為終端用戶伙的教學(xué)模型送。開發(fā)者一衣邊進(jìn)行軟件念開發(fā),一邊卡讓用戶學(xué)習(xí)池使用,若用濤戶發(fā)現(xiàn)軟件幣功能不符合蟻?zhàn)约旱膶?shí)際漠要求,可及匆時(shí)提出意見骨,開發(fā)者應(yīng)慶立即進(jìn)行修奔改,如此反匹復(fù)進(jìn)行,直懷到用戶滿意該為止。液雖然此方法務(wù)要額外花費(fèi)亭一些成本,遭但是可以盡斥早獲得更符廈合需求的模怕型,從而減寬少測試和調(diào)貸試的工作量腫,提高軟件民質(zhì)量。因此年,只要快速哭原型法使用警得當(dāng),就能筒減少軟件的圍總成本,縮窗短開發(fā)周期帶??焖僭晚撃P褪悄壳案郾容^流行的協(xié)實(shí)用開發(fā)模鄭型。京根據(jù)建立原堵型的目的不攀同,實(shí)現(xiàn)原梅型的途徑也昨有所不同,組通常有下述濾三種類型的魂原型。窄1.取漸增式的原炮型隆漸增式的原氧型開發(fā)模型維也稱增量模紗型。迷2.宵用于驗(yàn)證軟炒件需求的原極型臘系統(tǒng)分析員右在確定了軟眠件需求之后存,從中選出吧某些需要驗(yàn)曲證的功能,贈用適當(dāng)?shù)墓こ>呖焖贅?gòu)造膏出可運(yùn)行的療原型系統(tǒng),浮由用戶試用糾和評價(jià)。這干類原型往往達(dá)用后就丟棄蕩,因此構(gòu)造丈它們的軟件賀環(huán)境不必與股目標(biāo)系統(tǒng)的汪軟件環(huán)境一午致,通常使姥用簡潔而易駝于修改的高盤級語言對原唉型進(jìn)行編碼圣。丹3.廊用于驗(yàn)證設(shè)業(yè)計(jì)方案的原甚型綢原型可作為巷新穎設(shè)計(jì)思溪想的實(shí)現(xiàn)工松具,對于新眉的設(shè)計(jì)思想鎮(zhèn),開發(fā)部分寧軟件的原型特,可提高風(fēng)煙險(xiǎn)開發(fā)的安與全系數(shù),從燃而證實(shí)設(shè)計(jì)飲的可行性。餃為了保證軟妹件產(chǎn)品的質(zhì)爛量,在概要然設(shè)計(jì)和詳細(xì)苦設(shè)計(jì)過程中禮,可用原型許來驗(yàn)證總體宴結(jié)構(gòu)或某些諷關(guān)鍵算法??ㄈ绻O(shè)計(jì)方周案驗(yàn)證完成擴(kuò)后就將原型賄丟棄,則構(gòu)注造原型的工掛具不必與構(gòu)跟造目標(biāo)系統(tǒng)牽的工具一致樸。如果想把貞原型作為最戴終產(chǎn)品的一糠部分,原型每和目標(biāo)系統(tǒng)黃可使用同樣姨的軟件設(shè)計(jì)流工具。演軟件快速原志型模型的開岔發(fā)過程如圖勤1.2所示蟻。開發(fā)人員援聽取用戶的搖意見,進(jìn)行蝦需求分析,達(dá)盡快構(gòu)造出才原型,原型犁的作用是獲清得用戶的真住正需求。原云型由用戶運(yùn)羨行、評價(jià)和售測試,開發(fā)拿人員根據(jù)用簽戶的意見修廈改原型,再膠次請用戶試耀用,逐步使運(yùn)其滿足用戶勺的需求。產(chǎn)閱品一旦交付章給用戶使用渾,維護(hù)便開然始。根據(jù)需殃要,維護(hù)工豈作可能返回急到需求分析有、設(shè)計(jì)或編凡碼等不同的置階段。晨圖忠1交.顧2巴遞紐快速原型開紐發(fā)過程膠董增量模腰型切增量模型也裝稱漸增模型死,先選擇一攏個(gè)或幾個(gè)關(guān)推鍵功能,建肚立一個(gè)不完逼全的系統(tǒng),僑此時(shí)只包含蛾目標(biāo)系統(tǒng)的丑一部分功能火,或?qū)δ繕?biāo)犧系統(tǒng)的功能弱從某些方面依進(jìn)行簡化,過通過運(yùn)行這識個(gè)簡化后的達(dá)系統(tǒng)取得經(jīng)信驗(yàn),加深對陜軟件需求的可理解,使系筍統(tǒng)逐步得到鍬擴(kuò)充和完善龍。如此反復(fù)攏進(jìn)行,直到磨用戶對所設(shè)浩計(jì)的軟件系量統(tǒng)滿意為止薯。事增量模型是屯對瀑布模型只的改進(jìn),增德量模型使開使發(fā)過程具有抽一定的靈活覽性和可修改室性。郵增量模型把次軟件產(chǎn)品作賓為一系列增額量構(gòu)件來設(shè)姜計(jì)、編碼、米集成和測試?yán)?。增量模型濾開發(fā)的軟件焰系統(tǒng)是逐漸遞增長和完善惜的,所以整食體結(jié)構(gòu)不如抓瀑布模型開貌發(fā)的軟件那旺樣清晰,但沖是,由于增稅量模型開發(fā)急過程自始至則終都有用戶浩參與,因而腐能及時(shí)發(fā)現(xiàn)沫問題并加以南修改,可以跪更好地滿足猾用戶需求。隙增量模型在貝項(xiàng)目開發(fā)過處程中,以一拒系列的增量雜方式來逐步樸開發(fā)系統(tǒng)。它增量方式包暈括增量開發(fā)滅和增量提交腿兩個(gè)方面。屠增量開發(fā):漿不是整體地假開發(fā)軟件,縮而是按一定海的時(shí)間間隔曬開發(fā)部分軟癢件。痛增量提交:末先提交部分舉軟件給用戶談試用,聽取停用戶意見,中再提交另一答部分軟件讓煤用戶試用,椅如此進(jìn)行,此直到全部提鑒交為止。貞增量開發(fā)和大增量提交方推式可以同時(shí)油使用,也可晝以單獨(dú)使用恥。增量開發(fā)化方式可以在乓軟件開發(fā)的迎部分階段采抄用,也可以搬在全部開發(fā)傲階段都采用疏。段例如,在軟抱件需求分析跡和設(shè)計(jì)階段覆采用整體開均發(fā)方式,在吼編碼和測試念階段采用增禮量逗模型開發(fā)方春式,如圖1罩.3所示。什先對部分功占能進(jìn)行編碼軟、測試,提府交給用戶試疤用,聽外取超用戶意見,既及早發(fā)現(xiàn)問洗題并解決問暴題;再對另劉一部分功能勻進(jìn)行編碼、弓測試,提交悅用戶閉試用糞。光圖1.3灘增量模型視另一種方式面是,所有階魚段都采用增勾量模型開發(fā)排方式。先對腳某部分功能貸進(jìn)行需求分祥析、設(shè)計(jì)、僵編碼和測試恥,提交給用彈戶試用,充煎分聽取用戶甩意見;再對薪另一部分功談能進(jìn)行需求恒分析、設(shè)計(jì)德、編碼和測鋒試,提交給蛾用戶試用,夢直至所有功隨能開發(fā)完畢倉,如圖1.診4所示。用啟這種方式開訊發(fā)軟件時(shí),呢不同功能的倒軟件構(gòu)件可懸以并行地構(gòu)僑建,因此有逢可能加快工功程進(jìn)度,但站是也存在軟達(dá)件構(gòu)件無法忙集成為一個(gè)軟整體的風(fēng)險(xiǎn)兄。謊圖1.4乳風(fēng)險(xiǎn)更大墻的增量模型求增量模型的創(chuàng)優(yōu)點(diǎn)是能在題較短的時(shí)間代內(nèi)向用戶提籍交能完成一花定功能的產(chǎn)堡品,并使用名戶有較充裕讀的時(shí)間學(xué)習(xí)挑和適應(yīng)產(chǎn)品棄。隙使用增量模胸型的難點(diǎn)在港于,軟件的塞體系結(jié)構(gòu)設(shè)心計(jì)必須是開繼放的,要便騰于向現(xiàn)有結(jié)戒構(gòu)中加入新躍的構(gòu)件,即冤每次增量開卸發(fā)的產(chǎn)品都愁應(yīng)當(dāng)是可測連試的、可擴(kuò)他充的。從長質(zhì)遠(yuǎn)來看,具學(xué)有開放結(jié)構(gòu)圓的軟件,其漫可維護(hù)性明據(jù)顯好于封閉掙結(jié)構(gòu)的軟件臘。類圾噴泉模紛型滿使用傳統(tǒng)的雷瀑布模型開舌發(fā)、維護(hù)軟復(fù)件時(shí),需要愚有以下兩個(gè)疫前提:圖1.5噴泉模型紫用戶能清楚徒地提供系統(tǒng)被的需求。圖1.5噴泉模型雹開發(fā)者能完當(dāng)整地理解這集些需求,軟片件生命周期欠各階段能明棍確地劃分,皮每個(gè)階段結(jié)蹲束時(shí)要復(fù)審序,復(fù)審?fù)ㄟ^陶后下一階段終才能開始。減然而,在實(shí)視際開發(fā)軟件價(jià)時(shí),往往用拆戶事先難以貿(mào)說清系統(tǒng)需朋求,開發(fā)者室也由于主客老觀的原因,汗缺乏與用戶察交流的機(jī)會說,其結(jié)果是舞系統(tǒng)開發(fā)完熟成后,修改踏、維護(hù)的開期銷及難度過輝大。癢噴泉模型(針fount全ainm友odel逗)是典型的植面向?qū)ο筌泟蛹_發(fā)模型翠,著重強(qiáng)調(diào)授不同階段之造間的重疊。染一般認(rèn)為面飯向?qū)ο筌浖烽_發(fā)過程,酬不需要或不扮應(yīng)該嚴(yán)格區(qū)刺分不同的開塊發(fā)階段,如志圖1.5所磁示。烈噴泉模型是集一種以用戶過需求為動力勾,以對象作梅為驅(qū)動的模渣型,適合面蝴向?qū)ο蟮拈_任發(fā)方法。它從克服了瀑布嗚模型不支持皇軟件重用和咽多項(xiàng)開發(fā)活踩動集成的局拐限性。噴泉嚴(yán)模型的開發(fā)炸過程具有迭榴代性和無間渠隙性。姑基于噴泉模去型,Hod態(tài)ge等人提易出將軟件開醋發(fā)過程劃分或?yàn)橄到y(tǒng)分析巧、系統(tǒng)設(shè)計(jì)籍、對象設(shè)計(jì)榆與實(shí)現(xiàn)(編環(huán)程)、測試練和系統(tǒng)組裝掩集成等五個(gè)滿階段,也體僚現(xiàn)出分析和酒設(shè)計(jì)之間的喉重疊。箏1.陪系統(tǒng)分析男系統(tǒng)模型中瑞的對象是現(xiàn)涉實(shí)世界中的側(cè)客觀對象的勞抽象,結(jié)構(gòu)途清晰、易于嶺理解、易于竟描述規(guī)范。念在分析階段譽(yù)建立對象模蹲型和過程模兔型。消2.扒系統(tǒng)設(shè)計(jì)敗給出模型對春象和過程的揪規(guī)范描述。更3.強(qiáng)對象設(shè)計(jì)和鎖對象實(shí)現(xiàn)(蚊編程)挖面向?qū)ο笤O(shè)目計(jì)方法強(qiáng)調(diào)究軟件模塊的獲再用和軟件童合成,因而倍在對象設(shè)計(jì)殃和實(shí)現(xiàn)時(shí),糕并不要求所顆有的對象都妄從頭開始設(shè)控計(jì),而是充魔分利用以前惕的設(shè)計(jì)工作廣。在軟件開賓發(fā)時(shí)檢索對認(rèn)象庫,若是茶對象庫中已猶經(jīng)存在的,統(tǒng)則可不必設(shè)慕計(jì),只需重襯復(fù)使用或加勒以修改;否臘則,應(yīng)定義著新的對象,兩進(jìn)行設(shè)計(jì)和王實(shí)現(xiàn)。面向法對象設(shè)計(jì)方愈法要求與用筋戶充分溝通據(jù),在用戶試譯用軟件的基價(jià)礎(chǔ)上,根據(jù)學(xué)用戶的需求囑,不斷改進(jìn)柄、擴(kuò)充和完蔽善系統(tǒng)功能處。4.測試宮測試所有的撥對象及對象觀相互之間的頂關(guān)系是否符孤合要求。綿5.綁系統(tǒng)集成堪面向?qū)ο筌泴奶攸c(diǎn)之冒一是軟件重定用和組裝技形術(shù)。對象是拴數(shù)據(jù)和操作崗的封裝載體化,組裝在一森起才能構(gòu)成捐完整的系統(tǒng)助。模塊組裝控也稱為模塊趟集成、系統(tǒng)淘集成。軟件撞設(shè)計(jì)是指將摔對象模塊集道成,構(gòu)造生芽成所需的系指統(tǒng)。6.演化差由于噴泉模盞型主張分析漠和設(shè)計(jì)過程順的重疊,不璃嚴(yán)格加以區(qū)騾分,模塊集鳴成過程要反逐復(fù)經(jīng)過分析蹦、設(shè)計(jì)、測吳試、集成這淋幾個(gè)階段,拼每次集成都潤使系統(tǒng)功能農(nóng)在原有基礎(chǔ)棉上得到擴(kuò)展屆,因而稱為渴系統(tǒng)演化。壯李螺旋模摟型會壞瀑布模型要脫求在軟件開殿發(fā)的初期就抓完全確定軟才件的需求,蠻這在很多情吹況下是做不景到的。螺旋我模型試圖克質(zhì)服瀑布模型蔥的這一不足日之處。翅螺旋模型(錘Spira雪lMod吵el,SM推)是198跪6年由B.賢Boeh冠m提出的。鄙SM把軟件胸開發(fā)過程安錦排為逐步細(xì)叢化的螺旋周瞞期序列,每追經(jīng)歷一個(gè)周纖期,系統(tǒng)就殃細(xì)化和完善爭一些。SM少每一螺旋周家期由下列六或個(gè)步驟組成鴿,如圖1.欺6所示。沾1.旁確定任務(wù)目蛙標(biāo)揉根據(jù)初始需連求分析項(xiàng)目榴計(jì)劃,確定孫任務(wù)目標(biāo)、蒜可選方案和漆約束限制。留2.探選擇對象掠對各種軟硬葉件設(shè)備、開陵發(fā)方法、技匹術(shù)、開發(fā)工忍具、人員、覆開發(fā)管理等看對象進(jìn)行選障擇,并決定絨軟件是進(jìn)行擱研制、購買而還是利用現(xiàn)湊有的。鍛3.般分析約束條復(fù)件洗軟件開發(fā)的共時(shí)間、經(jīng)費(fèi)顯等限制條件野。太4.燙風(fēng)險(xiǎn)分析聽評估目標(biāo)、河對象、約束交條件三者之位間的聯(lián)系,溝列出可能出肝現(xiàn)的問題及拔問題的嚴(yán)重句程度等,把針最重要的問梳題作為尚未鍛解決的關(guān)鍵汗問題,稱為苦風(fēng)險(xiǎn)。搜5.望制定消除風(fēng)慈險(xiǎn)的方法摧應(yīng)有詳盡的蹤說明和周密偶的計(jì)劃,并榜估計(jì)可能產(chǎn)攝生的后果。變依此來開發(fā)禿軟件,為制訪定下一周期額的計(jì)劃打下晴基礎(chǔ)。擋圖1看.膏6螺旋紋模型峰6.匹制定下一周堅(jiān)期的工作計(jì)召劃庫在第一個(gè)螺滔旋周期,確泳定目標(biāo)、選獸擇對象、分午析約束,通陪過風(fēng)險(xiǎn)分析飼制定消除風(fēng)浩險(xiǎn)的方法,槐初步開發(fā)原嫂型1,制定撤系統(tǒng)開發(fā)計(jì)卷劃。蔥在第二個(gè)螺膚旋周期,進(jìn)棍一步明確系棗統(tǒng)的目標(biāo)、率開發(fā)方案及紀(jì)約束條件,鄰?fù)ㄟ^風(fēng)險(xiǎn)分界析制定消除餓風(fēng)險(xiǎn)的方法鬧,在原型1畫的基礎(chǔ)上開傳發(fā)原型2。理進(jìn)一步明確竭軟件需求,污進(jìn)行需求確脫認(rèn),修改開曠發(fā)計(jì)劃。株在第三個(gè)螺袖旋周期,再繼進(jìn)一步確認(rèn)傍系統(tǒng)目標(biāo)、食開發(fā)方案及司約束條件,昌進(jìn)行風(fēng)險(xiǎn)分真析,制定進(jìn)蛙一步消除風(fēng)表險(xiǎn)的方法,疑在原型2的蠅基礎(chǔ)上開發(fā)暫原型3。此竿時(shí)可進(jìn)行產(chǎn)畜品設(shè)計(jì),再的對設(shè)計(jì)進(jìn)行滴驗(yàn)證和確認(rèn)帆,制定集成屬測試計(jì)劃。情在第四個(gè)螺夕旋周期,軟廟件開發(fā)方案村、系統(tǒng)目標(biāo)晌和約束條件濱得到確定,箱在風(fēng)險(xiǎn)分析作的基礎(chǔ)上,塑開發(fā)具有實(shí)每用價(jià)值的可沉操作原型,缺此時(shí)可對產(chǎn)紙品進(jìn)行詳細(xì)掃設(shè)計(jì),進(jìn)入競編碼、單元繼測試、集成賺測試階段,薪最后進(jìn)入驗(yàn)脆收測試階段滔,驗(yàn)收合格踏后交付用戶綢使用,進(jìn)入怒運(yùn)行、維護(hù)液階段。儲舉統(tǒng)一過富程屑統(tǒng)一過程是梁經(jīng)過30多手年的發(fā)展形諷成的,它是叮汲取了各種塊生存周期模疼型的先進(jìn)思好想和豐富的通實(shí)踐經(jīng)驗(yàn)而辦產(chǎn)生的。統(tǒng)腫一過程將維成為垂軟件開發(fā)的凍主流過程。鵝統(tǒng)一過程(鳴Ratio對nalU尸nifie冠dPro叔cess,些RUP)使擊用統(tǒng)一建模聯(lián)語言(Un塘ified噸Mode找ling冬Langu窮age,U講ML),采丈取用例驅(qū)動鎖和架構(gòu)優(yōu)先這的策略,采出用迭代增量鹽建造方法。爛UML采用獎了面向?qū)ο髞G的概念,引慶入了各種獨(dú)送立于語言的到表示符號。渡UML建立譜用例模型、猛靜態(tài)模型和判動態(tài)模型完宴成對整個(gè)系貌統(tǒng)的建模,舌所定義的概賺念和符號可功用于軟件開筋發(fā)過程的分止析、設(shè)計(jì)和煙實(shí)現(xiàn)的全過泡程。軟件開席發(fā)人員不必末在開發(fā)過程禿的不同階段榴進(jìn)行概念和盈符號的轉(zhuǎn)換梢。棒用例(us乖ecas獸e)代表某扎些用戶可見盡的功能,實(shí)之現(xiàn)一個(gè)具體邀的用戶目標(biāo)漂。用例代表絹一類功能而北不是撲使用該功能捧的某一具體沈?qū)嵗?。用例緞是精確描述特需求的重要悶工具。槽統(tǒng)一過程所攻構(gòu)造的軟件噸系統(tǒng),是由臂軟件構(gòu)件建滲造而成的。尚這些軟件構(gòu)詠件定義了明繞確的接口,支相互連接成朝整個(gè)系統(tǒng)。彩在構(gòu)造軟件育系統(tǒng)時(shí)統(tǒng)一炒過程采用架亮構(gòu)優(yōu)先的策悶略。軟件構(gòu)及架概念包含這了系統(tǒng)中最厲重要的靜態(tài)筑結(jié)構(gòu)和動態(tài)正特征,構(gòu)架黃體現(xiàn)了系統(tǒng)達(dá)的整體設(shè)計(jì)健。構(gòu)架優(yōu)先豪開發(fā)的原則劉是RUP開郊發(fā)過程中至打關(guān)重要的主部題。筑為了管理軟睬件開發(fā)過程寫和監(jiān)控軟件邀開發(fā)過程,僅RUP把軟汗件開發(fā)過程淺劃分為多個(gè)培循環(huán),每個(gè)忙循環(huán)生成燒產(chǎn)品圈的一個(gè)新版棄本。每個(gè)循坊環(huán)都由初始賣階段、細(xì)化箱階段、構(gòu)造君階段和提交最階段等四個(gè)敵階段組成。樹每個(gè)階段是涂一個(gè)小的瀑袍布模型,要晶經(jīng)過分析、蹲設(shè)計(jì)、編碼碎、集成和測護(hù)試等步驟。伏統(tǒng)一過程通哄過反復(fù)多次賓的循環(huán)迭代慮,來達(dá)到預(yù)槍定的目的或敢完成確定的遼任務(wù)。每次鋸迭代增加尚匪未實(shí)現(xiàn)的用輕例,所有用如例建造完成啦后,系統(tǒng)也丘就建造完成益了?;藐P(guān)于統(tǒng)一過粉程和UML淺將在后面的閘章節(jié)做進(jìn)一挺步介紹。絕在具體的軟莫件項(xiàng)目開發(fā)迅過程中,可密以選用某種鈔生存周期模軌型,按照某鄭種開發(fā)方法險(xiǎn),使用相應(yīng)絲的工具進(jìn)行樸系統(tǒng)開發(fā)。泛通常,結(jié)構(gòu)秀化方法可使摧用瀑布模型帆、增量讓模型育和螺旋模型晌進(jìn)行開發(fā);歐面向?qū)ο蠓綊叻刹捎每靹钏僭?、增泊量模型、噴良泉模型和統(tǒng)岡一過程進(jìn)行怎開發(fā)。頸小園孕結(jié)把軟件開發(fā)的尖各個(gè)階段必懲須完成的各裂種規(guī)格書、裙說明書、用爺戶手冊等稱減為膝“斗文檔財(cái)”志(docu懶ment)考。夢軟件是計(jì)算褲機(jī)程序及其它有關(guān)的數(shù)據(jù)翻和文檔的結(jié)意合。匆軟件危機(jī)是基指在計(jì)算機(jī)漿軟件開發(fā)和戚維護(hù)時(shí)所遇掀到的一系列千問題。狼軟件危機(jī)主腳要包含兩方痰面的問題:沙一是如何開徹發(fā)軟件以滿禁足對軟件日折益增長的需摘求;二是如惱何維護(hù)數(shù)量與不斷增長的遺已有軟件。節(jié)軟件工程是幫軟件開發(fā)、紗運(yùn)行、維護(hù)昌和引退的系壞統(tǒng)方法。繪軟件工程是禮指導(dǎo)計(jì)算機(jī)套軟件開發(fā)和性維護(hù)的工程鏈學(xué)科。軟件偉工程采用工壞程的概念、多原理、技術(shù)柏和方法來開送發(fā)與維護(hù)軟林件。軟件工享程的目標(biāo)是否實(shí)現(xiàn)軟件的繪優(yōu)質(zhì)高產(chǎn)。故軟件工程學(xué)耳的主要內(nèi)容證是軟件開發(fā)鈔技術(shù)和軟件勸工程管理。步軟件開發(fā)方要法學(xué)是編制執(zhí)軟件的系統(tǒng)漂方法,它確體定軟件開發(fā)活的各個(gè)階段惜,規(guī)定每一葵階段的活動位、產(chǎn)品、驗(yàn)保收的步驟和串完成準(zhǔn)則?;畛S玫能浖B(yǎng)開發(fā)方法有糕結(jié)構(gòu)化方法醉、面向數(shù)據(jù)奧結(jié)構(gòu)方法和陜面向?qū)ο蠓角贩ǖ?。劉軟件過程是弱為了獲得高挪質(zhì)量軟件所波需要完成的屠一系列任務(wù)坡的框架,它普規(guī)定了完成事各項(xiàng)任務(wù)的鹽工作步驟旺。覆ISO剩性9000弟把軟件過程剪定義為:旅“腫把輸入轉(zhuǎn)化擺為輸出的一蘇組彼此相關(guān)遭的資源和活嚇動扇”直。型軟件過程定企義了運(yùn)用方茅法的順序、置應(yīng)該交付的戶文檔、開發(fā)僑軟件的管理增措施、各階預(yù)段任務(wù)完成遠(yuǎn)的標(biāo)志。加軟件過程必嬌

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論