




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件工程第一章軟件工程概述軟件工程第一章軟件工程概述本章內容軟件工程的歷史軟件工程的概念軟件生存周期軟件開發(fā)過程模型本章內容軟件工程的歷史場景互動請談談你在進行軟件開發(fā)過程中都遇到過什么樣的問題?場景互動請談談你在進行軟件開發(fā)過程中都遇到過什么樣的問題?軟件的開發(fā)經(jīng)常伴隨著一些問題軟件開發(fā)成本估計不準,開發(fā)成本超出預算開發(fā)進度不能保證,交付時間一再拖延開發(fā)出來的產(chǎn)品不符合用戶的需求軟件產(chǎn)品質量無法保證軟件的可維護程度低軟件開發(fā)生產(chǎn)率的發(fā)展跟不上硬件的發(fā)展速度和人們需求的增長這就是軟件危機!軟件的開發(fā)經(jīng)常伴隨著一些問題這就是軟件危機!軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題。即包含兩方面的問題:如何開發(fā)軟件、如何維護軟件。是什么原因導致的這個結果?軟件危機是什么原因導致的這個結果?軟件危機產(chǎn)生原因【軟件開發(fā)成本估計不準,開發(fā)成本超出預算】【開發(fā)進度不能保證,交付時間一再拖延】【開發(fā)出來的產(chǎn)品不符合用戶的需求】忽視軟件開發(fā)前期的調研和分析工作【軟件產(chǎn)品質量無法保證】沒有統(tǒng)一的、規(guī)范的方法論指導忽視測試階段的工作【軟件的可維護程度低】文檔資料不齊全,忽視人與人的交流忽視測試階段的工作忽視軟件的維護【軟件開發(fā)生產(chǎn)率的發(fā)展跟不上硬件發(fā)展速度和人們需求的增長】沒有統(tǒng)一的、規(guī)范的方法論指導軟件危機產(chǎn)生原因一、軟件工程歷史“軟件工程”的誕生1968年北大西洋公約組織的計算機科學家在聯(lián)邦德國召開國際科學會議,討論軟件危機問題,在這次會議上正式啟用“軟件工程”這個名詞。一、軟件工程歷史“軟件工程”的誕生消除軟件危機的途徑軟件工程以軟件產(chǎn)品化、系列化、工程化、標準化為特征。采用工程化方法和工程途徑來研制與維護軟件。擺脫軟件危機的途徑就是軟件工程生成的過程消除軟件危機,既要有技術措施又要有必要的組織管理措施消除軟件危機的途徑軟件工程出現(xiàn)在軟件發(fā)展的階段程序設計階段—20世紀50至60年代程序系統(tǒng)階段—20世紀60至70年代軟件工程階段
—20世紀70年代以后軟件發(fā)展階段中最根本的變化人們改變了對軟件的看法軟件的需求是軟件發(fā)展的動力軟件工作的范圍從考慮程序的編寫擴展到設計整個軟件生存期軟件工程出現(xiàn)在軟件發(fā)展的階段二、軟件工程概念及原理軟件工程的定義軟件工程是用工程、科學和數(shù)學的原則與方法研制、維護計算機軟件的有關技術和管理方法。軟件工程三要素過程為建造高質量的軟件所需完成的任務框架方法為軟件開發(fā)提供了“如何做”的技術工具為軟件工程方法提供了自動的或半自動的軟件支撐環(huán)境
二、軟件工程概念及原理軟件工程的定義質量保證工具方法過程以質量保證為根本動力的軟件工程三要素質量保證工具方法過程以質量保證為根本動力的軟件工程三要素組織實施軟件工程項目,從技術上和管理上采取了多項措施以后,最終希望得到項目的成功。軟件工程項目的基本目標能按時完成開發(fā)任務,及時交付使用;付出較低的開發(fā)成本;需要較低的維護費用;達到要求的軟件功能;取得較好的軟件性能;開發(fā)的軟件易于移植;開發(fā)的軟件可靠性高。組織實施軟件工程項目,從技術上和管理上采取了多項措施三、軟件生命周期軟件生命周期的概念軟件產(chǎn)品從形成概念開始,經(jīng)過開發(fā)、使用和維護,直到最后退役的全過程稱為軟件生存周期軟件有一個孕育、誕生、成長、成熟、衰亡的生存過程。這個過程即為計算機軟件的生命周期生命周期階段的劃分原則各階段的任務相對獨立同一階段任務的性質相同三、軟件生命周期軟件生命周期的概念軟件的生存期劃分的幾個階段軟件定義:問題定義可行性研究(軟件計劃)需求分析軟件開發(fā):系統(tǒng)設計軟件實現(xiàn)軟件測試軟件使用、維護和退役軟件的生存期劃分的幾個階段軟件生命周期中各階段負責的任務軟件生命周期中各階段負責的任務軟件的生命周期軟件的生命周期五、軟件開發(fā)過程模型軟件開發(fā)過程模型軟件開發(fā)(過程)模型或軟件工程規(guī)范,是跨越整個生存期的系統(tǒng)開發(fā)、運作和維護所實施的全部過程、活動和任務的結構框架.常用的開發(fā)過程模型瀑布模型原型(演化)模型螺旋模型統(tǒng)一過程模型RUP五、軟件開發(fā)過程模型軟件開發(fā)過程模型1.瀑布模型瀑布模型(生存周期模型)就是傳統(tǒng)的生命周期方法學(既自頂向下結構化開發(fā)模型方法)。優(yōu)點奠定了軟件工程方法的基礎;流水依賴;便于分工協(xié)作;推遲實現(xiàn);文檔易修改;有復審質量保證。缺點用戶需求明確困難;用戶見面晚;糾錯慢;難于克服系統(tǒng)分析員不懂專業(yè)領域的知識,用戶不懂計算機的困難,成功率低。適合于系統(tǒng)要求明確的小系統(tǒng)1.瀑布模型瀑布模型(生存周期模型)軟件生存期的瀑布模型
軟件生存期的瀑布模型2.原型模型原型模型(rapidprototypemodel)是為了確定需求而提出的實際模型。打破傳統(tǒng)的自頂向下結構化開發(fā)模型方法,在計劃和需求分析后,把系統(tǒng)主要功能接口做為設計依據(jù),快速開發(fā)出軟件樣機,及時征求用戶意見,正確確定系統(tǒng)需求,然后再進一步準確地進行系統(tǒng)設計與實現(xiàn)。優(yōu)點與用戶見面快;開發(fā)成功率高,適合于需求不確定的大系統(tǒng)。缺點周期長,開發(fā)成本高。2.原型模型原型模型(rapidprototypemod
原型模型
原型模型3.螺旋模型螺旋模型(spiralmodel)沿著螺線旋轉(一個螺旋式周期),在四個象限上分別表達四個方面的活動制定計劃確定軟件目標,選定實施方案,弄清項目開發(fā)的限制,選定完成目標的策略風險分析分析所選方案,考慮如何識別和消除風險,風險角度分析該策略實施工程實施軟件開發(fā),啟動一個開發(fā)階段客戶評估評價前一步開發(fā)工作,提出修正建議,計劃下一輪的工作特點瀑布模型+快速原型+風險分析迭代過程3.螺旋模型螺旋模型(spiralmodel)軟件工程-1-概述XXXX4.統(tǒng)一過程模型-RUP統(tǒng)一過程是一個通用的過程框架,可用于各種不同類型的軟件系統(tǒng),各種不同的應用領域,各種不同類型的組織,各種不同功能級別以及不同的項目規(guī)模。RUP可以根據(jù)項目的具體情況進行適當裁減,以適應不同規(guī)模的開發(fā)。一個完整的RUP過程是很龐大的(重量級)。統(tǒng)一過程是基于構件的(component-based)所構造的軟件系統(tǒng)是由軟件構件通過明確定義的接口相互連接所建造起來的統(tǒng)一過程使用統(tǒng)一建模語言來制定軟件系統(tǒng)的所有藍圖4.統(tǒng)一過程模型-RUP統(tǒng)一過程統(tǒng)一過程的特點用例驅動基于用例模型,開發(fā)人員可以創(chuàng)建一系列實現(xiàn)這些用例的設計和實現(xiàn)模型。開發(fā)人員可以審查每個后續(xù)建立的模型是否與用例模型一致。測試人員測試實現(xiàn)以確保實現(xiàn)模型的構件正確實現(xiàn)了用例。因此用例不僅開啟了開發(fā)過程,而且使其結合成一體。以構架為中心以構架為中心的含義是指,從主要用例入手,先建立一個粗略的框架,然后處理已確定的重要用例子集,并通過子系統(tǒng)、類和構件來實現(xiàn);最后隨著用例的不斷完善使框架的更多部分顯示出來,直到獲得一個穩(wěn)定的構架為止。統(tǒng)一過程的特點迭代和增量的迭代是指工作流中的步驟,增量是指產(chǎn)品中增加的部分。統(tǒng)一過程是在重復一系列組成系統(tǒng)生命周期的循環(huán),每次循環(huán)向用戶提供一個產(chǎn)品版本作為終結,每次循環(huán)包括四個階段:初始、細化、構造和移交,每個階段分為多次迭代。迭代和增量的軟件工程-1-概述XXXX討論我們擁有一套講述如何開發(fā)軟件的書籍,書中充滿了標準與示例,可以幫助我們解決軟件開發(fā)中遇到的任何問題。我們擁有最好的開發(fā)工具、最好的計算機,一定能做出優(yōu)秀的軟件。討論我們擁有一套講述如何開發(fā)軟件的書籍,書中充滿了標準與示例軟件生命周期中的哪個階段可以實現(xiàn)以下任務?分析員演示一個用于預訂公司車輛的Windows用戶界面原型。分析員觀察訂單輸入職員的工作,以確定客戶的訂單是如何處理的。分析員指定支持生產(chǎn)進度的數(shù)據(jù)庫結構。分析員教工廠經(jīng)理如何使用微機生成一份新的預定義報告。工廠主管描述一份新的采購報告的內容,這份采購報告將簡化購買訂單的跟蹤過程。索賠調解員向一位分析員描述由于索賠處理系統(tǒng)的延誤失去客戶業(yè)務的后果。軟件生命周期中的哪個階段可以實現(xiàn)以下任務?分析員正在為學生入學聯(lián)系系統(tǒng)準備初步的進度表和預算,該系統(tǒng)最近才由指導委員會通過。分析員正在安裝運行零用現(xiàn)金管理系統(tǒng)所需的微機和數(shù)據(jù)庫管理系統(tǒng)。分析員回顧公司的組織結構圖,確定由哪些人參與認可工資單和批準病假。分析員正在比較兩個軟件包的優(yōu)點和缺點,這兩個軟件包都可以實現(xiàn)設備維護和翻修的管理需求。分析員正在測試一個計算機程序的最新版本,這個程序將根據(jù)使用該材料生產(chǎn)產(chǎn)品的計劃更快地確定缺貨的材料。分析員正在為學生入學聯(lián)系系統(tǒng)準備初步的進度表和預算,該系統(tǒng)最假設你開發(fā)一個軟件,它的功能是把73624.9385這個數(shù)開平方,所得到的結果應該精確到小數(shù)點后4位,一旦實現(xiàn)并測試完之后,該產(chǎn)品將被拋棄。你打算選用哪種生命周期模型,請說明理由。假設你開發(fā)一個軟件,它的功能是把73624.9385這個數(shù)開假設你要為一家生產(chǎn)和銷售長統(tǒng)靴的公司開發(fā)一個軟件,該產(chǎn)品將監(jiān)控該公司的存貨:跟蹤從購買橡膠開始,到靴子生產(chǎn),發(fā)貨給各個連鎖店,直至賣給顧客的全過程。你在為這個項目選擇生命周期模型時使用什么準則。假設你要為一家生產(chǎn)和銷售長統(tǒng)靴的公司開發(fā)一個軟件,該產(chǎn)品將監(jiān)列出在開發(fā)上述軟件產(chǎn)品過程中可能遇到的風險。列出在開發(fā)上述軟件產(chǎn)品過程中可能遇到的風險。本章知識點總結軟件危機的表象及軟件工程歷史軟件工程的概念及其要素軟件工程的基本目標軟件生命周期的概念軟件開發(fā)過程模型本章知識點總結軟件危機的表象及軟件工程歷史軟件工程第一章軟件工程概述軟件工程第一章軟件工程概述本章內容軟件工程的歷史軟件工程的概念軟件生存周期軟件開發(fā)過程模型本章內容軟件工程的歷史場景互動請談談你在進行軟件開發(fā)過程中都遇到過什么樣的問題?場景互動請談談你在進行軟件開發(fā)過程中都遇到過什么樣的問題?軟件的開發(fā)經(jīng)常伴隨著一些問題軟件開發(fā)成本估計不準,開發(fā)成本超出預算開發(fā)進度不能保證,交付時間一再拖延開發(fā)出來的產(chǎn)品不符合用戶的需求軟件產(chǎn)品質量無法保證軟件的可維護程度低軟件開發(fā)生產(chǎn)率的發(fā)展跟不上硬件的發(fā)展速度和人們需求的增長這就是軟件危機!軟件的開發(fā)經(jīng)常伴隨著一些問題這就是軟件危機!軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題。即包含兩方面的問題:如何開發(fā)軟件、如何維護軟件。是什么原因導致的這個結果?軟件危機是什么原因導致的這個結果?軟件危機產(chǎn)生原因【軟件開發(fā)成本估計不準,開發(fā)成本超出預算】【開發(fā)進度不能保證,交付時間一再拖延】【開發(fā)出來的產(chǎn)品不符合用戶的需求】忽視軟件開發(fā)前期的調研和分析工作【軟件產(chǎn)品質量無法保證】沒有統(tǒng)一的、規(guī)范的方法論指導忽視測試階段的工作【軟件的可維護程度低】文檔資料不齊全,忽視人與人的交流忽視測試階段的工作忽視軟件的維護【軟件開發(fā)生產(chǎn)率的發(fā)展跟不上硬件發(fā)展速度和人們需求的增長】沒有統(tǒng)一的、規(guī)范的方法論指導軟件危機產(chǎn)生原因一、軟件工程歷史“軟件工程”的誕生1968年北大西洋公約組織的計算機科學家在聯(lián)邦德國召開國際科學會議,討論軟件危機問題,在這次會議上正式啟用“軟件工程”這個名詞。一、軟件工程歷史“軟件工程”的誕生消除軟件危機的途徑軟件工程以軟件產(chǎn)品化、系列化、工程化、標準化為特征。采用工程化方法和工程途徑來研制與維護軟件。擺脫軟件危機的途徑就是軟件工程生成的過程消除軟件危機,既要有技術措施又要有必要的組織管理措施消除軟件危機的途徑軟件工程出現(xiàn)在軟件發(fā)展的階段程序設計階段—20世紀50至60年代程序系統(tǒng)階段—20世紀60至70年代軟件工程階段
—20世紀70年代以后軟件發(fā)展階段中最根本的變化人們改變了對軟件的看法軟件的需求是軟件發(fā)展的動力軟件工作的范圍從考慮程序的編寫擴展到設計整個軟件生存期軟件工程出現(xiàn)在軟件發(fā)展的階段二、軟件工程概念及原理軟件工程的定義軟件工程是用工程、科學和數(shù)學的原則與方法研制、維護計算機軟件的有關技術和管理方法。軟件工程三要素過程為建造高質量的軟件所需完成的任務框架方法為軟件開發(fā)提供了“如何做”的技術工具為軟件工程方法提供了自動的或半自動的軟件支撐環(huán)境
二、軟件工程概念及原理軟件工程的定義質量保證工具方法過程以質量保證為根本動力的軟件工程三要素質量保證工具方法過程以質量保證為根本動力的軟件工程三要素組織實施軟件工程項目,從技術上和管理上采取了多項措施以后,最終希望得到項目的成功。軟件工程項目的基本目標能按時完成開發(fā)任務,及時交付使用;付出較低的開發(fā)成本;需要較低的維護費用;達到要求的軟件功能;取得較好的軟件性能;開發(fā)的軟件易于移植;開發(fā)的軟件可靠性高。組織實施軟件工程項目,從技術上和管理上采取了多項措施三、軟件生命周期軟件生命周期的概念軟件產(chǎn)品從形成概念開始,經(jīng)過開發(fā)、使用和維護,直到最后退役的全過程稱為軟件生存周期軟件有一個孕育、誕生、成長、成熟、衰亡的生存過程。這個過程即為計算機軟件的生命周期生命周期階段的劃分原則各階段的任務相對獨立同一階段任務的性質相同三、軟件生命周期軟件生命周期的概念軟件的生存期劃分的幾個階段軟件定義:問題定義可行性研究(軟件計劃)需求分析軟件開發(fā):系統(tǒng)設計軟件實現(xiàn)軟件測試軟件使用、維護和退役軟件的生存期劃分的幾個階段軟件生命周期中各階段負責的任務軟件生命周期中各階段負責的任務軟件的生命周期軟件的生命周期五、軟件開發(fā)過程模型軟件開發(fā)過程模型軟件開發(fā)(過程)模型或軟件工程規(guī)范,是跨越整個生存期的系統(tǒng)開發(fā)、運作和維護所實施的全部過程、活動和任務的結構框架.常用的開發(fā)過程模型瀑布模型原型(演化)模型螺旋模型統(tǒng)一過程模型RUP五、軟件開發(fā)過程模型軟件開發(fā)過程模型1.瀑布模型瀑布模型(生存周期模型)就是傳統(tǒng)的生命周期方法學(既自頂向下結構化開發(fā)模型方法)。優(yōu)點奠定了軟件工程方法的基礎;流水依賴;便于分工協(xié)作;推遲實現(xiàn);文檔易修改;有復審質量保證。缺點用戶需求明確困難;用戶見面晚;糾錯慢;難于克服系統(tǒng)分析員不懂專業(yè)領域的知識,用戶不懂計算機的困難,成功率低。適合于系統(tǒng)要求明確的小系統(tǒng)1.瀑布模型瀑布模型(生存周期模型)軟件生存期的瀑布模型
軟件生存期的瀑布模型2.原型模型原型模型(rapidprototypemodel)是為了確定需求而提出的實際模型。打破傳統(tǒng)的自頂向下結構化開發(fā)模型方法,在計劃和需求分析后,把系統(tǒng)主要功能接口做為設計依據(jù),快速開發(fā)出軟件樣機,及時征求用戶意見,正確確定系統(tǒng)需求,然后再進一步準確地進行系統(tǒng)設計與實現(xiàn)。優(yōu)點與用戶見面快;開發(fā)成功率高,適合于需求不確定的大系統(tǒng)。缺點周期長,開發(fā)成本高。2.原型模型原型模型(rapidprototypemod
原型模型
原型模型3.螺旋模型螺旋模型(spiralmodel)沿著螺線旋轉(一個螺旋式周期),在四個象限上分別表達四個方面的活動制定計劃確定軟件目標,選定實施方案,弄清項目開發(fā)的限制,選定完成目標的策略風險分析分析所選方案,考慮如何識別和消除風險,風險角度分析該策略實施工程實施軟件開發(fā),啟動一個開發(fā)階段客戶評估評價前一步開發(fā)工作,提出修正建議,計劃下一輪的工作特點瀑布模型+快速原型+風險分析迭代過程3.螺旋模型螺旋模型(spiralmodel)軟件工程-1-概述XXXX4.統(tǒng)一過程模型-RUP統(tǒng)一過程是一個通用的過程框架,可用于各種不同類型的軟件系統(tǒng),各種不同的應用領域,各種不同類型的組織,各種不同功能級別以及不同的項目規(guī)模。RUP可以根據(jù)項目的具體情況進行適當裁減,以適應不同規(guī)模的開發(fā)。一個完整的RUP過程是很龐大的(重量級)。統(tǒng)一過程是基于構件的(component-based)所構造的軟件系統(tǒng)是由軟件構件通過明確定義的接口相互連接所建造起來的統(tǒng)一過程使用統(tǒng)一建模語言來制定軟件系統(tǒng)的所有藍圖4.統(tǒng)一過程模型-RUP統(tǒng)一過程統(tǒng)一過程的特點用例驅動基于用例模型,開發(fā)人員可以創(chuàng)建一系列實現(xiàn)這些用例的設計和實現(xiàn)模型。開發(fā)人員可以審查每個后續(xù)建立的模型是否與用例模型一致。測試人員測試實現(xiàn)以確保實現(xiàn)模型的構件正確實現(xiàn)了用例。因此用例不僅開啟了開發(fā)過程,而且使其結合成一體。以構架為中心以構架為中心的含義是指,從主要用例入手,先建立一個粗略的框架,然后處理已確定的重要用例子集,并通過子系統(tǒng)、類和構件來實現(xiàn);最后隨著用例的不斷完善使框架的更多部分顯示出來,直到獲得一個穩(wěn)定的構架為止。統(tǒng)一過程的特點迭代和增量的迭代是指工作流中的步驟,增量是指產(chǎn)品中增加的部分。統(tǒng)一過程是在重復一系列組成系統(tǒng)生命周期的循環(huán),每次循環(huán)向用戶提供一個產(chǎn)品版本作為終結,每次循環(huán)包括四個階段:初始、細化、構造和移交,每個階段分為多次迭代。迭代和增量的軟件工程-1-概述XXXX討論我們擁有一套講述如何開發(fā)軟件的書籍,書中充滿了標準與示例,可以幫助我們解決軟件開發(fā)中遇到的任何問題。我們擁有最好的開發(fā)工具、最好的計算機,一定能做出優(yōu)秀的軟件。討論我們擁有一套講述如何開發(fā)軟件的書籍,書中充滿了標準與示例軟件生命周期中的哪個階段可以
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度汽車貸款合規(guī)審查合同
- 2025年度幼兒園托管與家庭教育支持服務協(xié)議
- 2025年沙盤模型制作項目評估報告
- 醫(yī)院門診部墻紙更換協(xié)議
- 農(nóng)村施工公路合同范本
- 2025年度體育賽事贊助商權益轉委托合同
- 寵物醫(yī)院裝修協(xié)議模板
- 現(xiàn)代企業(yè)法務信息化管理探索
- 中國瀝青拌合料行業(yè)市場前景預測及投資價值評估分析報告
- 科技產(chǎn)業(yè)生產(chǎn)流程再造的路徑與挑戰(zhàn)
- 節(jié)能降耗培訓
- T-CHAS 20-2-11-2022 醫(yī)療機構藥事管理與藥學服務 第2-11部分:臨床藥學服務 治療藥物監(jiān)測
- 質量部架構圖
- 結構化學-第1章講義課件
- 粉塵防爆安全管理臺賬-全套
- 廣州退休申請表范本
- 管道完整性管理方法及應用
- 傳媒侵權法介紹
- 麥茬花生高產(chǎn)栽培技術
- 玉米制種技術
- 中國旅游資源概述
評論
0/150
提交評論