版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程,第一章,軟件工程概述,本章旨在掌握幾個(gè)基本概念:軟件和軟件工程軟件生命周期軟件開發(fā)模型了解軟件開發(fā)的幾種模型(瀑布型、增量型、螺旋型、xp)。其中一個(gè)概念是要有一套關(guān)于如何開發(fā)軟件的書,里面充滿了標(biāo)準(zhǔn)和例子,可以解決軟件開發(fā)中遇到的任何問題。想法二:有了最好的開發(fā)工具和最好的電腦,你就能制作出優(yōu)秀的軟件。想法3:如果你落后于計(jì)劃,你可以增加更多的程序員來解決它。想法4:不管你先做什么,軟件是靈活的,可以隨時(shí)修改。課堂討論,本章內(nèi)容,1.1,軟件定義,1.2,軟件危機(jī),1.3,軟件工程,1.4,軟件生命周期,1.5,軟件過程,軟件已經(jīng)成為新的驅(qū)動(dòng)力,而新的驅(qū)動(dòng)力軟件:是在20世紀(jì)80年
2、代初,非洲商業(yè)發(fā)展的一頁(yè),1.1,軟件的定義,軟件的作用,軟件在社會(huì)中起著雙重作用。它是一種充分發(fā)揮計(jì)算機(jī)硬件計(jì)算能力的產(chǎn)品。同時(shí),它也是交付產(chǎn)品的工具。軟件提供了我們這個(gè)時(shí)代最重要的產(chǎn)品:信息,1.1,軟件的定義,什么是軟件-1,軟件是計(jì)算機(jī)系統(tǒng)的另一部分,與硬件相互依賴,它是控制計(jì)算機(jī)系統(tǒng)工作的神經(jīng)思考中心。它是程序、數(shù)據(jù)和相關(guān)文檔的完整集合(從計(jì)算機(jī)的角度來看)。如果把硬件比作人體,那么軟件就相當(dāng)于人體。神經(jīng)中樞與知識(shí),1.1,軟件的定義,什么是軟件-2,軟件的簡(jiǎn)要定義:軟件=程序數(shù)據(jù)文件的規(guī)則,1.1,軟件的定義,程序:計(jì)算機(jī)需要遵循的一系列指令,這些指令作為一種具有邏輯結(jié)構(gòu)的信息,準(zhǔn)
3、確而完整地描述了計(jì)算任務(wù)中的處理對(duì)象和規(guī)則。文檔:開發(fā)、使用和維護(hù)程序所需的圖形材料。數(shù)據(jù):提供給程序的輸入。規(guī)則通常在文檔中描述,并在程序中實(shí)現(xiàn)。如何定義程序(1)。面向過程的程序=算法數(shù)據(jù)結(jié)構(gòu)。(2)。面向?qū)ο蟪绦?(3)。面向組件的程序=,什么是程序和對(duì)象消息?組件框架。1.1、軟件的定義,糾正軟件是程序和開發(fā)軟件是程序的誤解。羅杰斯。普雷斯曼說,“你越早開始寫代碼,就越晚完成?!?。理解軟件,開發(fā)軟件意味著編寫程序?程序,軟件和軟件產(chǎn)品:獨(dú)唱合唱和成千上萬人的合唱| | |簡(jiǎn)單的程序更復(fù)雜。程序軟件,1.1。軟件定義,邏輯實(shí)體,軟件特性-1。物理實(shí)體,軟件,1.1。軟件的定義。軟件的質(zhì)量
4、取決于開發(fā)人員的個(gè)人技能和創(chuàng)造能力。1.1。軟件的定義和特征-3。它是靈活的。如果您需要修改,您可以修改產(chǎn)品本身,而無需修改設(shè)計(jì)。對(duì)于軟件、設(shè)計(jì)。軟件功能-5,軟件,無磨損,對(duì)于機(jī)械產(chǎn)品,使用時(shí)機(jī)械零件可以用備件代替,1.1,軟件定義,軟件功能-6,軟件,無磨損,對(duì)于軟件,-.軟件使用后不會(huì)磨損。隨著時(shí)間的推移,應(yīng)用程序的某些部分可能變得無關(guān)緊要(例如,當(dāng)需求發(fā)生變化時(shí)),但需要進(jìn)行修改。但是,沒有備件的概念,需要修改。1.1。軟件的定義。原來的軟件已經(jīng)面目全非了!硬件和軟件故障率曲線,1.1,軟件的定義,硬件和軟件故障率曲線的比較,軟件不會(huì)磨損,軟件會(huì)退化!1.1,軟件的定義要求軟件產(chǎn)品不允
5、許出錯(cuò)。軟件產(chǎn)品的高質(zhì)量依賴于良好的設(shè)計(jì)(依賴于人),并且需要構(gòu)建產(chǎn)品(“產(chǎn)品”)。軟件的特性-7,1.1。軟件定義,軟件分類-1。按軟件功能劃分:系統(tǒng)軟件、支持軟件和應(yīng)用軟件;1.1。軟件的定義,根據(jù)軟件服務(wù)對(duì)象的范圍進(jìn)行劃分??蛻糸_發(fā)的定制軟件。通用軟件由軟件開發(fā)組織開發(fā)并提供給市場(chǎng)。軟件分類-2,1.1,軟件定義,軟件生產(chǎn)經(jīng)歷了三個(gè)主要階段:編程時(shí)代(46 -56年),程序系統(tǒng)時(shí)代(56 -68年),軟件工程時(shí)代(68 -90年),第四代(90年后),p3在20世紀(jì)60年代中期,70年代,80年代,面向?qū)ο筌浖陌l(fā)展和面向?qū)ο蠹夹g(shù)的應(yīng)用改變了軟件開發(fā)的方式。計(jì)算機(jī)應(yīng)用領(lǐng)域越來越廣泛,系統(tǒng)
6、規(guī)模越來越大,邏輯越來越復(fù)雜,功能需要不斷地改變和擴(kuò)展。軟件開發(fā)需要多個(gè)開發(fā)人員一起開發(fā),開發(fā)人員根據(jù)自己的愛好和習(xí)慣工作。沒有統(tǒng)一的標(biāo)準(zhǔn)可遵循,一個(gè)“軟件工作室”是以手工方式形成的。1968年,北大西洋公約組織的計(jì)算機(jī)科學(xué)家在德意志聯(lián)邦共和國(guó)召開了一次國(guó)際會(huì)議,討論軟件危機(jī)?!败浖こ獭边@個(gè)術(shù)語正式提出,新工程誕生了。在“工程”思想的指導(dǎo)下,軟件開發(fā)的成本可以大大降低,軟件開發(fā)的質(zhì)量可以提高。“工程”為人們開辟了一條新路,“軟件工程”蓬勃發(fā)展。在程序設(shè)計(jì)(46 -56)、程序系統(tǒng)(56 -68)和軟件工程(68年以后)的時(shí)代,軟件的規(guī)模很小,作者和用戶通常是同一個(gè)人,除了程序清單之外沒有其他
7、文件。軟件開發(fā)經(jīng)歷的階段,1.1,軟件的定義,軟件危機(jī),軟件生產(chǎn)的第二階段,硬件生產(chǎn)的成本降低,效率提高,性能提高,刺激了軟件需求;提高了軟件復(fù)雜度要求,生產(chǎn)效率低,與硬件生產(chǎn)的距離進(jìn)一步拉大;軟件質(zhì)量差,維護(hù)困難,成本急劇增加。軟件項(xiàng)目成功率低;上述矛盾的進(jìn)一步加劇導(dǎo)致了軟件危機(jī),軟件開發(fā)經(jīng)歷了1.1階段。軟件定義,本章內(nèi)容,1.1。軟件定義1.2,軟件危機(jī)1.3,軟件工程1.4,軟件壽命1.5,軟件過程和軟件危機(jī)。“軟件危機(jī)”的出現(xiàn)是由于軟件規(guī)模和復(fù)雜性的增加。然而,軟件開發(fā)的過程是一種密集的腦力勞動(dòng),軟件開發(fā)的模式和技術(shù)不能滿足軟件開發(fā)的需要。結(jié)果,大量劣質(zhì)軟件涌入市場(chǎng),一些花費(fèi)了大量人
8、力和財(cái)力,卻在開發(fā)過程中夭折了。危機(jī)!1.2。軟件危機(jī)是軟件危機(jī)的主要表現(xiàn),軟件預(yù)算經(jīng)常被突破,完成時(shí)間被拖延。用戶對(duì)“已完成”的軟件不滿意。經(jīng)常發(fā)生的情況是,軟件無法維護(hù),軟件產(chǎn)品的質(zhì)量不可靠,并且沒有適當(dāng)?shù)奈臋n。軟件生產(chǎn)率低,軟件復(fù)用性差。1.2。軟件危機(jī)是軟件危機(jī)的表現(xiàn)形式,可以概括為:(1) (2)軟件生產(chǎn)率低,不能滿足需求。1.2、軟件危機(jī),軟件預(yù)算經(jīng)常被突破,并且完成時(shí)間被延遲。案例1:以丹佛新國(guó)際機(jī)場(chǎng)為例。這個(gè)機(jī)場(chǎng)是曼哈頓機(jī)場(chǎng)的兩倍大,是希思機(jī)場(chǎng)的10倍寬。它可以全天同時(shí)起飛和降落。三架噴氣式飛機(jī);投資1.93億美元建立一個(gè)總長(zhǎng)度為21英里的地下行李轉(zhuǎn)運(yùn)系統(tǒng)和4000輛遙控車輛,
9、可按不同路線在20家不同航空公司的柜臺(tái)、登機(jī)口和行李領(lǐng)取區(qū)之間運(yùn)送和轉(zhuǎn)運(yùn)行李;該系統(tǒng)由5000個(gè)電子眼、400個(gè)無線電接收器、56個(gè)條形碼掃描儀和100臺(tái)計(jì)算機(jī)支持。按照原計(jì)劃,它將在1993年萬圣節(jié)前投入使用,但該系統(tǒng)要到1994年6月才能正常工作。根據(jù)研究結(jié)果,只有15%的項(xiàng)目按計(jì)劃完成。20世紀(jì)80年代初,美國(guó)國(guó)內(nèi)稅收署(IRS)要求斯佩里開發(fā)一個(gè)聯(lián)邦納稅表格自動(dòng)處理系統(tǒng)。因此,該系統(tǒng)被證明不適合目前的工作量,目前的工作量幾乎是預(yù)算的兩倍,必須立即更換(華盛頓郵報(bào)報(bào)道)。到1985年,額外需要9000萬美元來改進(jìn)斯佩里價(jià)值1.03億美元的原始設(shè)備。此外,國(guó)稅局被迫向加班員工償還4.02億
10、美元的利息和22,300美元的工資,因?yàn)檫@些問題使國(guó)稅局無法按時(shí)向納稅人返還稅款。原因:軟件復(fù)雜性高,開發(fā)周期長(zhǎng)。缺乏開發(fā)經(jīng)驗(yàn)和數(shù)據(jù)積累導(dǎo)致盲目規(guī)劃,實(shí)施與實(shí)際情況差距很大。此外,在軟件開發(fā)過程中還有一些不可預(yù)測(cè)的問題,這導(dǎo)致項(xiàng)目的延遲和資金的增加。軟件危機(jī)案例,1.2。軟件危機(jī),用戶對(duì)“已完成”的軟件不滿意的現(xiàn)象經(jīng)常發(fā)生:1984年,經(jīng)過18個(gè)月的開發(fā),一個(gè)價(jià)值2億美元的系統(tǒng)被交付給威斯康星州的一家健康保險(xiǎn)公司,但該系統(tǒng)無法滿足用戶的正常工作,因此又花了6000萬美元來解決這個(gè)問題。原因:軟件開發(fā)人員不是用戶業(yè)務(wù)的專家,用戶不了解計(jì)算機(jī)軟件技術(shù)。因此,軟件開發(fā)人員根據(jù)自己的理解開發(fā)的軟件往往
11、達(dá)不到用戶的要求。此外,用戶在初始階段缺乏需求,以及后來未能與開發(fā)者很好地溝通也是用戶不滿意的原因。軟件危機(jī)案例1.2軟件危機(jī)案例3軟件產(chǎn)品的質(zhì)量是不可靠的:例如,一旦美國(guó)在肯尼迪角發(fā)射了一枚阿特拉斯火箭,它就計(jì)劃用這種火箭將宇宙飛船運(yùn)送到金星?;鸺_始在離地面幾十英里的地方翻轉(zhuǎn),地面控制中心被迫命令它自爆。經(jīng)過檢查,發(fā)現(xiàn)飛行計(jì)劃中缺少一個(gè)連字符。正是這種連字符的省略導(dǎo)致了價(jià)值1850萬美元的火箭實(shí)驗(yàn)失敗。軟件危機(jī)案例,1.2。軟件危機(jī),3。軟件產(chǎn)品質(zhì)量不可靠案例:1996年6月,阿麗亞娜5號(hào)火箭耗資70億美元,發(fā)射37秒后爆炸。發(fā)射失敗是由于軟件錯(cuò)誤。當(dāng)程序試圖將64位浮點(diǎn)數(shù)轉(zhuǎn)換成16位整數(shù)
12、時(shí),就會(huì)發(fā)生溢出。原因:軟件測(cè)試不足是原因之一。然而,要保證軟件的質(zhì)量是很困難的,需要大量的投資和充分的測(cè)試。因?yàn)樵u(píng)估軟件的質(zhì)量和可靠性非常困難。軟件危機(jī)案例,1.2。軟件危機(jī),4。軟件無法維護(hù)的原因:1。設(shè)計(jì)結(jié)構(gòu)不適合軟件功能的添加和修改。開發(fā)人員的邏輯思維過程在軟件開發(fā)過程中起著重要的作用。幾年后,有必要了解開發(fā)者的想法。如果沒有相應(yīng)的文件來描述這些想法,閱讀別人的程序是相當(dāng)困難的。軟件危機(jī)案例,1.2,軟件危機(jī),軟件沒有適當(dāng)?shù)奈臋n原因:軟件不能在一個(gè)版本中成功,但經(jīng)歷了反復(fù)的修訂,并且其中的文檔在沒有每次修訂的情況下很難保持一致,錯(cuò)誤的文檔和錯(cuò)誤的地圖一樣危險(xiǎn)。軟件危機(jī)案例,1.2,軟件
13、危機(jī),惡化趨勢(shì),1.2,軟件危機(jī),軟件危機(jī)的原因,軟件本身的大復(fù)雜性,軟件的大規(guī)模,軟件產(chǎn)品的特殊開發(fā)成本,落后的開發(fā)技術(shù),落后的生產(chǎn)方法,落后的開發(fā)工具和維護(hù)方法,1.2,軟件危機(jī),復(fù)雜性的例子,例如,窗口95有1000萬行代碼,窗口2000有5000行代碼。Exchange2000和Windows2000開發(fā)人員結(jié)構(gòu),1.2。軟件危機(jī)。Brooks分別于1975年和1987年出版了兩部著名的軟件工程知識(shí)著作人月神話和沒有銀彈。布魯克斯著名的斷言“軟件工作是人類從事的最復(fù)雜的工作”根據(jù)軟件的特點(diǎn),用什么方法解決軟件危機(jī)復(fù)雜性是軟件危機(jī)的根本原因!“軟件危機(jī)”的根本原因是什么?1.2、軟件危機(jī)
14、,正確理解計(jì)算機(jī)軟件:軟件程序軟件程序數(shù)據(jù)文件必須充分認(rèn)識(shí)到,軟件開發(fā)不是個(gè)人勞動(dòng)的神秘技能,而是組織良好、管理良好、各種人員共同完成的項(xiàng)目。推廣和使用實(shí)踐中總結(jié)出的成功的軟件開發(fā)技術(shù)和方法。開發(fā)和使用更好的軟件工具。為軟件的實(shí)現(xiàn)提供有效的構(gòu)件,提供自動(dòng)設(shè)計(jì)技術(shù)以保證軟件質(zhì)量,消除軟件危機(jī)。1.2。軟件危機(jī),為了消除軟件危機(jī),認(rèn)識(shí)到“軟件”編程和大規(guī)模軟件系統(tǒng)的開發(fā)與其他工程項(xiàng)目一樣,如造橋、制造飛機(jī)、船舶等。它有自己的生命周期。,1.2,軟件危機(jī),本章內(nèi)容,1.1,軟件定義1.2,軟件危機(jī)1.3,軟件工程1.4,軟件生命周期1.5,軟件過程,軟件工程建議書,軟件工程,北大西洋公約組織(北約)
15、科學(xué)技術(shù)委員會(huì),1968年秋,當(dāng)時(shí),50名一級(jí)程序員, 聚集在德意志聯(lián)邦共和國(guó)的計(jì)算機(jī)科學(xué)家和工業(yè)巨頭們提出了從硬件工程中吸取經(jīng)驗(yàn)教訓(xùn)的方法,以制定出擺脫“軟件危機(jī)”的解決方案,這不僅為解決軟件難題創(chuàng)造了一個(gè)新名詞,也使軟件工程有了一個(gè)方向。 今天,軟件工程已經(jīng)發(fā)展成為一門獨(dú)立的學(xué)科。工藝):小規(guī)模設(shè)計(jì)和施工簡(jiǎn)單的問題和單一目標(biāo)的個(gè)人控制和個(gè)人技能,如:工程):大規(guī)模設(shè)計(jì)和施工復(fù)雜的問題和目標(biāo)分解需要規(guī)劃,設(shè)計(jì),施工等涉及許多人的步驟,并需要考慮操作,管理,成本,質(zhì)量控制,安全等。-例如:高層建筑,工程與人工的區(qū)別,1.3,軟件);這太簡(jiǎn)單了,你不需要計(jì)劃和設(shè)計(jì),你可以直接編程。然而,要開發(fā)一個(gè)圖書館管理系統(tǒng)軟件,就必須對(duì)其進(jìn)行設(shè)計(jì)。軟件設(shè)計(jì),就像別墅設(shè)計(jì)一樣,也需要設(shè)計(jì)圖紙,結(jié)構(gòu)圖,-手冊(cè),-工程,比較軟件生產(chǎn)和其他行業(yè)的生產(chǎn),我們發(fā)現(xiàn)軟件開發(fā)和維護(hù)必須走工程化的道路!軟件工程,即軟件工程的定義,是將工程原理應(yīng)用于軟件,工程,“將科學(xué)和數(shù)學(xué)原理應(yīng)用于實(shí)際目的,例如設(shè)計(jì)、制造和操作有效和經(jīng)濟(jì)的結(jié)構(gòu)、機(jī)器、過程和系統(tǒng)”,設(shè)計(jì)、制造和操作,將科學(xué)和數(shù)學(xué)原理應(yīng)用于軟件設(shè)計(jì)和開發(fā),以獲得有效和經(jīng)濟(jì)的軟件、軟件開發(fā)過程和軟件系統(tǒng),軟件工程。軟件工程的定義是建立和應(yīng)用合理的工程原理,以經(jīng)濟(jì)地獲得在實(shí)際機(jī)器上運(yùn)行的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB 4053.3-2025固定式金屬梯及平臺(tái)安全要求第3部分:工業(yè)防護(hù)欄桿及平臺(tái)
- 蔬菜宣傳活動(dòng)策劃方案(3篇)
- 路基施工方案事例(3篇)
- 春節(jié)白酒活動(dòng)策劃方案(3篇)
- 污水導(dǎo)向施工方案(3篇)
- 政治比賽活動(dòng)方案策劃(3篇)
- 蓋體施工方案(3篇)
- 2025年酒店服務(wù)流程與操作手冊(cè)
- 人力資源盤點(diǎn)方案
- 2025年大學(xué)統(tǒng)計(jì)(統(tǒng)計(jì)學(xué)原理)試題及答案
- 中小企業(yè)主的家庭財(cái)富管理方案
- 專題03 基本不等式(期末壓軸專項(xiàng)訓(xùn)練20題)(原卷版)-25學(xué)年高一數(shù)學(xué)上學(xué)期期末考點(diǎn)大串講(人教A版必修一)
- 檔案管理基本知識(shí)課件
- 臨床硬膜下血腫患者中醫(yī)護(hù)理查房
- 正規(guī)裝卸合同范本
- 科研設(shè)計(jì)及研究生論文撰寫智慧樹知到期末考試答案章節(jié)答案2024年浙江中醫(yī)藥大學(xué)
- 2024年江蘇省普通高中學(xué)業(yè)水平測(cè)試小高考生物、地理、歷史、政治試卷及答案(綜合版)
- 土力學(xué)與地基基礎(chǔ)(課件)
- 精神分裂癥等精神病性障礙臨床路徑表單
- 提撈采油安全操作規(guī)程
- 管道安全檢查表
評(píng)論
0/150
提交評(píng)論