資源描述:
《軟件工程第1章 軟件工程概述ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、和硬件相比,軟件主要有以下特點(diǎn):(1)表現(xiàn)形式不同:軟件是無形無色、看不見摸不著的。(2)生產(chǎn)方式不同:軟件是人的智力的高度發(fā)揮,它沒有明顯的制造過程。(3)維護(hù)不同:軟件不存在磨損和老化問題,但隨著某些缺陷的改變,很可能帶來一些新的缺陷。1.1軟件的概念1.1.2軟件的特點(diǎn)(1)按軟件的功能:系統(tǒng)軟件、支撐軟件、應(yīng)用軟件(2)按軟件的規(guī)模:微型、小型、中型、大型、超大型、極大型(3)按軟件的工作方式:實(shí)時(shí)處理軟件、分時(shí)軟件、交互式軟件、批處理軟件(4)按軟件服務(wù)對(duì)象的范圍:項(xiàng)目軟件、產(chǎn)品軟件1.1軟件的
2、概念1.1.3軟件的分類軟件危機(jī)的表現(xiàn):(1)不能正確地估計(jì)軟件開發(fā)成本和進(jìn)度(2)在開發(fā)的初期,軟件需求不夠明確(3)開發(fā)過程沒有統(tǒng)一、公認(rèn)的方法和規(guī)范進(jìn)行指導(dǎo)(4)未做好測(cè)試階段的工作(5)開發(fā)效率低1.2軟件工程的產(chǎn)生和概念1.2.1軟件危機(jī)解決軟件危機(jī)的策略(1)加強(qiáng)軟件開發(fā)過程的管理(2)推廣使用開發(fā)軟件的成功技術(shù)與方法(3)開發(fā)和使用好的軟件工具1.2軟件工程的產(chǎn)生和概念1.2.1軟件危機(jī)軟件工程是一門指導(dǎo)軟件開發(fā)和維護(hù)的工程學(xué)科,是為了經(jīng)濟(jì)地獲得能夠在實(shí)際機(jī)器上有效運(yùn)行的可靠軟件而建立和使用
3、的一系列完善的工程化原則。它應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,借鑒傳統(tǒng)工程的原則、方法來生產(chǎn)軟件,以達(dá)到提高質(zhì)量、降低成本的目的。1993年IEEE為軟件工程下的定義是“軟件工程是將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運(yùn)行和維護(hù)過程,即將工程化應(yīng)用于軟件中的方法的研究?!?.2軟件工程的產(chǎn)生和概念1.2.2軟件工程的定義和內(nèi)容一般將方法、工具和過程稱為軟件工程的三要素。軟件工程學(xué)所依據(jù)的理論基礎(chǔ)極為豐富,包括數(shù)學(xué)、計(jì)算機(jī)科學(xué)、經(jīng)濟(jì)學(xué)、工程學(xué)、管理學(xué)和心理學(xué)等其他學(xué)科,其研究的內(nèi)容包括軟件開
4、發(fā)技術(shù)和軟件管理技術(shù),軟件開發(fā)技術(shù)又包括軟件開發(fā)方法、軟件開發(fā)工具和軟件工程環(huán)境,軟件管理技術(shù)包括項(xiàng)目估算、項(xiàng)目計(jì)劃、人員組織、進(jìn)度控制、配置管理和軟件度量等。1.2軟件工程的產(chǎn)生和概念1.2.2軟件工程的定義和內(nèi)容1.3軟件工程的目標(biāo)和原理1.3.1軟件工程的基本目標(biāo)付出較低的開發(fā)成本。達(dá)到預(yù)期的軟件功能。取得較好的軟件性能。使軟件易于移植。需要較低的維護(hù)費(fèi)用。能按時(shí)完成開發(fā)工作,及時(shí)交付使用。1.3軟件工程的目標(biāo)和原理1.3.2軟件工程的基本原理(1)用分階段的生命周期計(jì)劃嚴(yán)格管理(2)堅(jiān)持進(jìn)行階段評(píng)
5、審(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í)踐的必要性1.4軟件生命周期和開發(fā)模型1.4.1軟件生命周期軟件生命周期是指一個(gè)計(jì)算機(jī)軟件從功能確定、設(shè)計(jì),到開發(fā)成功投入使用,并在使用中不斷地修改、增補(bǔ)和完善,直到停止該軟件使用的全過程。6個(gè)階段:制定計(jì)劃、需求分析、設(shè)計(jì)、程序編碼、測(cè)試、運(yùn)行維護(hù)。1.4軟件生命周期和開發(fā)模型1.4.1軟件生命周期制定計(jì)劃確定待開發(fā)軟件系統(tǒng)的總目標(biāo),給出它的功能、性能、可靠性以及接口等方
6、面的總體要求;完成該項(xiàng)軟件任務(wù)的可行性研究,探討解決問題的可能方案;制定完成開發(fā)任務(wù)的實(shí)施計(jì)劃。需求分析由系統(tǒng)分析人員對(duì)待開發(fā)軟件提出的需求進(jìn)行分析并給出詳細(xì)的定義,確定對(duì)該軟件的各項(xiàng)功能、性能需求和設(shè)計(jì)約束,編寫軟件需求說明書及初步的用戶手冊(cè)。1.4軟件生命周期和開發(fā)模型1.4.1軟件生命周期軟件設(shè)計(jì)系統(tǒng)設(shè)計(jì)人員和程序設(shè)計(jì)人員把已確定的軟件需求轉(zhuǎn)換成相應(yīng)的軟件設(shè)計(jì),包括該軟件的結(jié)構(gòu)、模塊的劃分、功能的分配以及處理流程。若系統(tǒng)比較復(fù)雜,設(shè)計(jì)階段應(yīng)分解成概要設(shè)計(jì)階段和詳細(xì)設(shè)計(jì)階段兩個(gè)步驟,應(yīng)編寫概要設(shè)計(jì)說明
7、書、詳細(xì)設(shè)計(jì)說明書和測(cè)試計(jì)劃初稿。程序編碼把軟件設(shè)計(jì)的結(jié)果轉(zhuǎn)換成計(jì)算機(jī)可以接受的程序代碼,要完成源程序的編碼、編譯(或匯編)和排錯(cuò)調(diào)試得到無語(yǔ)法錯(cuò)的程序清單。1.4軟件生命周期和開發(fā)模型1.4.1軟件生命周期軟件測(cè)試在設(shè)計(jì)測(cè)試用例的基礎(chǔ)上,按照軟件測(cè)試計(jì)劃對(duì)軟件進(jìn)行全面測(cè)試,給出軟件測(cè)試報(bào)告,并排除檢查出的錯(cuò)誤,確保軟件質(zhì)量。運(yùn)行和維護(hù)軟件在運(yùn)行使用中要進(jìn)行適當(dāng)維護(hù),包括糾正軟件的錯(cuò)誤、使軟件能夠適應(yīng)環(huán)境的變化及擴(kuò)充軟件的功能。1.4軟件生命周期和開發(fā)模型1.4.2軟件開發(fā)模型軟件開發(fā)模型(也稱為軟件過程
8、模型)是從軟件項(xiàng)目需求定義開始直至軟件經(jīng)使用后廢棄為止,跨越整個(gè)生命周期的系統(tǒng)開發(fā)、運(yùn)行和維護(hù)所實(shí)施的全部過程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架。常用模型:瀑布模型、快速原型化模型、增量模型、螺旋模型、噴泉模型1.4軟件生命周期和開發(fā)模型1.4.2軟件開發(fā)模型1.瀑布模型規(guī)定了各項(xiàng)軟件工程活動(dòng),并且規(guī)定了自上而下相互銜接的固定順序。要明確規(guī)定各個(gè)開發(fā)階段應(yīng)交付的產(chǎn)品,為嚴(yán)格控制軟件開發(fā)項(xiàng)目的進(jìn)度,最終按時(shí)交付產(chǎn)品以及保證軟件產(chǎn)品質(zhì)量創(chuàng)造了