版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件工程概述信息管理技術(shù)第一頁(yè),共四十頁(yè),編輯于2023年,星期三學(xué)習(xí)軟件工程的目的軟件工程是一門集軟件開(kāi)發(fā)技術(shù)與軟件管理技術(shù)于一體的專門基礎(chǔ)課。具有廣泛的實(shí)踐性。學(xué)習(xí)的目的是讓學(xué)生學(xué)會(huì)用工程的原理、技術(shù)和當(dāng)前最好的管理手段進(jìn)行軟件的開(kāi)發(fā)與維護(hù)。從而提高個(gè)人的素質(zhì)。2第二頁(yè),共四十頁(yè),編輯于2023年,星期三課程考核辦法考核成績(jī):平時(shí)占40%(含平時(shí)作業(yè)和期中測(cè)驗(yàn))實(shí)驗(yàn)占20%(含平時(shí)實(shí)驗(yàn)成績(jī)和實(shí)驗(yàn)報(bào)告)期末測(cè)驗(yàn)占40%3第三頁(yè),共四十頁(yè),編輯于2023年,星期三案例練習(xí)任務(wù):請(qǐng)?jiān)O(shè)計(jì)一個(gè)加法運(yùn)算器。S1:請(qǐng)選出四個(gè)組長(zhǎng)——分成四組,每組完成一個(gè)任務(wù)。S2:第一組:提出具體的功能要求。
第二組:進(jìn)行軟件的算法設(shè)計(jì),畫(huà)出流程圖。
第三組:進(jìn)行軟件的編碼編寫(xiě)C語(yǔ)言代碼。
第四組:進(jìn)行軟件的測(cè)試——組織一組數(shù)據(jù)測(cè)試。
S3:結(jié)果分析第四頁(yè),共四十頁(yè),編輯于2023年,星期三第一章軟件工程概述
1.1軟件的概念1.2軟件的發(fā)展與軟件危機(jī)1.3軟件工程1.4軟件的開(kāi)發(fā)方法、工具和環(huán)境小結(jié)思考與練習(xí)返回章目錄第五頁(yè),共四十頁(yè),編輯于2023年,星期三1.1軟件的概念
軟件是軟件工程學(xué)的一個(gè)重要概念。它是由計(jì)算機(jī)程序發(fā)展而來(lái)的一種概念。
那么,軟件是不是程序呢?
計(jì)算機(jī)程序是按既定的算法,用某種計(jì)算機(jī)語(yǔ)言所規(guī)定的指令或語(yǔ)句編寫(xiě)的一系列指令或語(yǔ)句的集合。6第六頁(yè),共四十頁(yè),編輯于2023年,星期三
中國(guó)大百科全書(shū)中對(duì)軟件的定義是:軟件是計(jì)算機(jī)系統(tǒng)中的程序和和有關(guān)文件(文檔)。這些文檔資料包括:
需求分析、功能說(shuō)明、算法說(shuō)明、結(jié)構(gòu)說(shuō)明、使用說(shuō)明和維護(hù)說(shuō)明等。特點(diǎn):軟件是一種邏輯實(shí)體,有抽象性。在它的開(kāi)發(fā)過(guò)程中沒(méi)有明顯的制造過(guò)程,沒(méi)有硬件那樣的機(jī)械磨損、老化問(wèn)題。7第七頁(yè),共四十頁(yè),編輯于2023年,星期三軟件可分為可執(zhí)行部分和不可執(zhí)行部分。
1.可執(zhí)行部分
軟件的可執(zhí)行部分,是以編碼信息存放在存儲(chǔ)介質(zhì)上的程序與過(guò)程。
2.不可執(zhí)行部分軟件的不可執(zhí)行部分,包括面向開(kāi)發(fā)者的文檔和面向用戶的文檔兩部分。這兩部分文檔雖不可執(zhí)行,但卻是開(kāi)發(fā)與維護(hù)可執(zhí)行部分的重要依據(jù)。返回節(jié)目錄8第八頁(yè),共四十頁(yè),編輯于2023年,星期三
1.2軟件的發(fā)展與軟件危機(jī)
1.2.1計(jì)算機(jī)軟件的發(fā)展
1.2.2軟件危機(jī)返回節(jié)目錄9第九頁(yè),共四十頁(yè),編輯于2023年,星期三1.2.1計(jì)算機(jī)軟件的發(fā)展
自1946年世界上第一臺(tái)電子計(jì)算機(jī)誕生以來(lái),計(jì)算機(jī)軟件的發(fā)展經(jīng)歷了三個(gè)時(shí)期,對(duì)應(yīng)了硬件的四個(gè)發(fā)展階段。第一時(shí)期——程序設(shè)計(jì)時(shí)期從1946年到二十世紀(jì)60年代初,是計(jì)算機(jī)軟件發(fā)展的初期。這個(gè)時(shí)期,程序仍是工程技術(shù)人員為解決某個(gè)具體的實(shí)際問(wèn)題而專門編寫(xiě)的,規(guī)模也很小,程序設(shè)計(jì)很少考慮通用性,但十分講究編程技巧。此時(shí)只有程序的概念,還沒(méi)有軟件的概念。
10第十頁(yè),共四十頁(yè),編輯于2023年,星期三第二時(shí)期——程序系統(tǒng)時(shí)期
從20世紀(jì)60年代初到70年代初,是計(jì)算機(jī)軟件發(fā)展的第二個(gè)時(shí)期。此時(shí),人們對(duì)軟件的認(rèn)識(shí)僅僅局限于“軟件=程序+說(shuō)明”。該時(shí)期軟件開(kāi)發(fā)的特征表現(xiàn)在以下三個(gè)方面:
(1)軟件的開(kāi)發(fā)方式由“個(gè)體生產(chǎn)”到“軟件作坊”
(2)程序的運(yùn)行、維護(hù)也不再由一個(gè)人來(lái)承擔(dān)。
(3)程序已不再是計(jì)算機(jī)硬件的附屬成分,而是計(jì)算機(jī)系統(tǒng)中與硬件相互依存、共同發(fā)揮作用所不可缺少的部分。
11第十一頁(yè),共四十頁(yè),編輯于2023年,星期三這個(gè)時(shí)期,軟件產(chǎn)業(yè)已經(jīng)萌芽,其中一個(gè)重要特征就是出現(xiàn)了“軟件作坊”,軟件產(chǎn)品廣泛銷售,軟件的數(shù)量急劇增加?;旧涎赜密浖l(fā)展早期所形成的個(gè)體化開(kāi)發(fā)方式。軟件的開(kāi)發(fā)與維護(hù)費(fèi)用以驚人的速度遞增。更為嚴(yán)重的是,由于程序的個(gè)體化開(kāi)發(fā)特征,使許多軟件產(chǎn)品不可維護(hù),最終導(dǎo)致了“軟件危機(jī)“的出現(xiàn)。12第十二頁(yè),共四十頁(yè),編輯于2023年,星期三13第十三頁(yè),共四十頁(yè),編輯于2023年,星期三第三時(shí)期——軟件工程時(shí)期從20世紀(jì)70年代中期至今,是計(jì)算機(jī)軟件發(fā)展的第三個(gè)時(shí)期。這個(gè)時(shí)期軟件產(chǎn)業(yè)已經(jīng)興起,軟件作坊已經(jīng)發(fā)展為軟件公司,甚至是跨國(guó)軟件公司。軟件的開(kāi)發(fā)方式是以工程的思想為指導(dǎo),用工程化的原則、方法和標(biāo)準(zhǔn)來(lái)開(kāi)發(fā)和維護(hù)軟件。軟件開(kāi)發(fā)的成功率大大提高,軟件的質(zhì)量也有了很大的保證。軟件也已經(jīng)產(chǎn)品化、系列化、標(biāo)準(zhǔn)化、工程化。14第十四頁(yè),共四十頁(yè),編輯于2023年,星期三1.2.2軟件危機(jī)
1.軟件危機(jī)的概念及其表現(xiàn)軟件本身是一個(gè)邏輯實(shí)體,而非一個(gè)物理實(shí)體,它是非實(shí)物性的,是不可見(jiàn)的。而軟件開(kāi)發(fā)又是一個(gè)“思考”過(guò)程,很難進(jìn)行管理,開(kāi)發(fā)人員以“手工作坊”的方式開(kāi)發(fā)軟件,完全按照自己的愛(ài)好和習(xí)慣進(jìn)行,沒(méi)有任何統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范可以遵循。因而,在軟件的開(kāi)發(fā)過(guò)程中,人們遇到了許多困難(人員、時(shí)間、成本和維護(hù))。高成本與低質(zhì)量的矛盾15第十五頁(yè),共四十頁(yè),編輯于2023年,星期三
2.軟件危機(jī)產(chǎn)生的原因
A軟件危機(jī)的產(chǎn)生,一方面與軟件本身的特點(diǎn)有關(guān),另一方面也和軟件開(kāi)發(fā)與維護(hù)方法的不正確有關(guān)。因?yàn)椋很浖且环N邏輯實(shí)體,有抽象性。在它的開(kāi)發(fā)過(guò)程中沒(méi)有明顯的制造過(guò)程,沒(méi)有硬件那樣的機(jī)械磨損、老化問(wèn)題。在某個(gè)系統(tǒng)設(shè)計(jì)完成以前,軟件開(kāi)發(fā)人員很難掌握其開(kāi)發(fā)進(jìn)度,也不易對(duì)其進(jìn)行質(zhì)量評(píng)價(jià)。因此,管理和控制軟件的開(kāi)發(fā)極為困難。16第十六頁(yè),共四十頁(yè),編輯于2023年,星期三
B
另外軟件規(guī)模的不斷增大,使程序的復(fù)雜程度也在不斷增加,軟件開(kāi)發(fā)的難度也更難以衡量。對(duì)于大型軟件的開(kāi)發(fā).要求所有參與研發(fā)的人員之間也必須能夠進(jìn)行準(zhǔn)確地交流。而實(shí)際情況是在用戶、領(lǐng)域?qū)<?、軟件開(kāi)發(fā)人員之間沒(méi)有一種合適的通訊手段。用戶與軟件人員之間交流困難,是造成軟件危機(jī)的重要原因之一。17第十七頁(yè),共四十頁(yè),編輯于2023年,星期三
C軟件危機(jī)產(chǎn)生的另一原因,是軟件的開(kāi)發(fā)采用了“手工作坊”式的開(kāi)發(fā)模式。當(dāng)時(shí)的軟件規(guī)模很小,多為一個(gè)人或一組人開(kāi)發(fā),開(kāi)發(fā)人員沒(méi)有統(tǒng)一的標(biāo)準(zhǔn)可以遵循,只是按照各自的愛(ài)好和習(xí)慣進(jìn)行軟件的設(shè)計(jì)。其結(jié)果是開(kāi)發(fā)者把方案構(gòu)想、總體設(shè)計(jì)等重要開(kāi)發(fā)步驟完全裝在大腦里,只有程序流程圖和可執(zhí)行的源程序作為文檔留下來(lái),缺少必要的、面向開(kāi)發(fā)者的、不可執(zhí)行的文檔,如軟件需求說(shuō)明書(shū)、結(jié)構(gòu)圖、程序代碼中的注釋、測(cè)試用例的設(shè)計(jì)及測(cè)試報(bào)告等。
18第十八頁(yè),共四十頁(yè),編輯于2023年,星期三
3.解決軟件危機(jī)的途徑為擺脫軟件危機(jī),北大西洋公約組織成員國(guó)在1968年和1969年兩度召開(kāi)會(huì)議,商討解決“軟件危機(jī)”的對(duì)策。會(huì)議總結(jié)了軟件開(kāi)發(fā)中失敗的經(jīng)驗(yàn)與教訓(xùn),吸收了機(jī)械工程和土木工程設(shè)計(jì)中成熟而嚴(yán)密的工程設(shè)計(jì)思想,首次提出了“軟件工程”的概念,認(rèn)為計(jì)算機(jī)軟件的開(kāi)發(fā),也應(yīng)像工程設(shè)計(jì)一樣,進(jìn)行規(guī)范性的開(kāi)發(fā),走“工程化”的道路。
第十九頁(yè),共四十頁(yè),編輯于2023年,星期三1.3軟件工程
1.3.1軟件工程概述
1.3.2軟件生存周期
1.3.3軟件生存期模型返回節(jié)目錄20第二十頁(yè),共四十頁(yè),編輯于2023年,星期三1.3.1軟件工程概述1.軟件工程概述
軟件工程是指導(dǎo)計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)的一門工程學(xué)科。它運(yùn)用工程開(kāi)發(fā)的概念、原理、方法和技術(shù)來(lái)開(kāi)發(fā)和維護(hù)軟件,把經(jīng)過(guò)時(shí)間考驗(yàn)而證明是正確的管理技術(shù)和當(dāng)前能夠用到的最好的開(kāi)發(fā)方法結(jié)合起來(lái),共同作用于軟件的開(kāi)發(fā)和維護(hù)。軟件工程強(qiáng)調(diào)使用軟件生命周期方法學(xué)和各種先進(jìn)的分析方法、設(shè)計(jì)技術(shù)。
21第二十一頁(yè),共四十頁(yè),編輯于2023年,星期三2、軟件工程研究的對(duì)象軟件工程主要研究如何應(yīng)用一些科學(xué)理論和工程技術(shù)觀點(diǎn),來(lái)指導(dǎo)軟件系統(tǒng)的開(kāi)發(fā)與維護(hù)。這使其逐漸成為一門嚴(yán)格的工程學(xué)科。主要包括:軟件開(kāi)發(fā)技術(shù)軟件管理22第二十二頁(yè),共四十頁(yè),編輯于2023年,星期三
3、軟件工程的目標(biāo)軟件工程的目標(biāo)是提高軟件產(chǎn)品的質(zhì)量與軟件開(kāi)發(fā)的生產(chǎn)率,最終實(shí)現(xiàn)軟件的工業(yè)化生產(chǎn)?!百|(zhì)量”是軟件需求方最關(guān)心的問(wèn)題,而“生產(chǎn)率”是軟件供應(yīng)方最關(guān)心的問(wèn)題。“質(zhì)量”與“生產(chǎn)率”之間又有著內(nèi)在的聯(lián)系,高生產(chǎn)率必須以質(zhì)量合格為前提。23第二十三頁(yè),共四十頁(yè),編輯于2023年,星期三
4、軟件工程的主要環(huán)節(jié)有:人員管理、項(xiàng)目管理、可行性與需求分析、系統(tǒng)設(shè)計(jì)、程序設(shè)計(jì)、測(cè)試、維護(hù)等,如圖1.1所示。
24第二十四頁(yè),共四十頁(yè),編輯于2023年,星期三1.3.2軟件生存周期如同人的一生要經(jīng)歷嬰兒期、少年期、青年期、老年期直至死亡這樣一個(gè)全過(guò)程一樣,任何一個(gè)軟件產(chǎn)品或軟件系統(tǒng)也要經(jīng)歷軟件定義、軟件開(kāi)發(fā)、軟件維護(hù)直至被淘汰這樣一個(gè)全過(guò)程。我們把軟件經(jīng)歷的這一全過(guò)程稱為軟件生存周期。
25第二十五頁(yè),共四十頁(yè),編輯于2023年,星期三問(wèn)題定義可行性分析需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)軟件編碼軟件測(cè)試軟件維護(hù)軟件開(kāi)發(fā)軟件定義軟件維護(hù)26第二十六頁(yè),共四十頁(yè),編輯于2023年,星期三1.軟件的定義階段軟件定義階段主要解決待開(kāi)發(fā)的軟件是“做什么”的這一問(wèn)題。系統(tǒng)分析(定義)——確定待開(kāi)發(fā)軟件的總體要求和適用范圍,以及軟硬件支撐的要求;軟件項(xiàng)目計(jì)劃(可行性)——確定待開(kāi)發(fā)軟件的目標(biāo),對(duì)其進(jìn)行可行性分析,并對(duì)資源分配、進(jìn)度安排等作合理計(jì)劃;需求分析(功能分析)——確定系統(tǒng)的邏輯模型。
27第二十七頁(yè),共四十頁(yè),編輯于2023年,星期三
2.軟件的開(kāi)發(fā)階段軟件開(kāi)發(fā)階段主要解決該軟件“怎樣做”的問(wèn)題。主要完成軟件中數(shù)據(jù)結(jié)構(gòu)和軟件自身結(jié)構(gòu)的設(shè)計(jì),算法的設(shè)計(jì),程序的編寫(xiě),程序的測(cè)試。最后得到可交付使用的軟件。它通常由下述四個(gè)階段組成:概要設(shè)計(jì)詳細(xì)設(shè)計(jì)軟件編碼和單元測(cè)試綜合測(cè)試28第二十八頁(yè),共四十頁(yè),編輯于2023年,星期三3.軟件的維護(hù)通常有四類維護(hù)活動(dòng):改正性維護(hù),也就是診斷和改正在使用過(guò)程中發(fā)現(xiàn)的錯(cuò)誤;適應(yīng)性維護(hù),即修改軟件以適應(yīng)環(huán)境的變化;完善性維護(hù),即根據(jù)用戶的要求改進(jìn)或擴(kuò)充軟件使它更完善;預(yù)防性維護(hù),即修改軟件為將來(lái)的維護(hù)活動(dòng)預(yù)先做準(zhǔn)備。29第二十九頁(yè),共四十頁(yè),編輯于2023年,星期三1.3.3軟件生存期模型
最早出現(xiàn)的軟件開(kāi)發(fā)模型是1970年W。Royce提出的瀑布模型,而后隨著軟件工程學(xué)科的發(fā)展和軟件開(kāi)發(fā)的實(shí)踐,相繼提出了演化模型、螺旋模型、增量模型、噴泉模型等。近年、又提出了漸增模型。30第三十頁(yè),共四十頁(yè),編輯于2023年,星期三1.瀑布模型一個(gè)更精確的軟件開(kāi)發(fā)步驟可按需要解決問(wèn)題的順序依次為:做什么——如何做——制作——檢測(cè)——使用首先應(yīng)給出軟件的目標(biāo),確定要做什么;然后要決定如何達(dá)到這一目標(biāo),給出策略、方法和步驟;繼而加以實(shí)現(xiàn),制作出所需要的軟件;經(jīng)過(guò)適當(dāng)?shù)臋z測(cè),判定符合初始目標(biāo)以后,方可投人運(yùn)行和使用??梢哉f(shuō)這是瀑布模型的雛型。1970年W.Royce首先將這一瀑布模型的雛型精確化,提出了具有多個(gè)開(kāi)發(fā)階段的瀑布模型。31第三十一頁(yè),共四十頁(yè),編輯于2023年,星期三問(wèn)題定義可行性分析需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)軟件編碼軟件測(cè)試軟件維護(hù)軟件開(kāi)發(fā)軟件定義軟件維護(hù)32第三十二頁(yè),共四十頁(yè),編輯于2023年,星期三
在瀑布模型中,各階段結(jié)束后,都要進(jìn)行嚴(yán)格的評(píng)審。技術(shù)評(píng)審、管理復(fù)審評(píng)審不合格,返回上一節(jié),重新設(shè)計(jì)開(kāi)發(fā),保證了軟件產(chǎn)品的質(zhì)量。特點(diǎn):瀑布模型適用于客戶需求明確,技術(shù)成熟,階段目標(biāo)明確的項(xiàng)目,但缺少靈活性。33第三十三頁(yè),共四十頁(yè),編輯于2023年,星期三2.螺旋模型螺旋模型是在瀑布模型和演化模型的基礎(chǔ)上,加入兩者所忽略的風(fēng)險(xiǎn)分析所建立的一種軟件開(kāi)發(fā)模型。①制定計(jì)劃——確定軟件目標(biāo),選定實(shí)施方案,弄清項(xiàng)目開(kāi)發(fā)的限制條件;②風(fēng)險(xiǎn)分析——分析所選方案,考慮如何識(shí)別和消除風(fēng)險(xiǎn);③實(shí)施工程——實(shí)施軟件開(kāi)發(fā);④客戶評(píng)估——評(píng)價(jià)開(kāi)發(fā)工作,提出修正建議。34第三十四頁(yè),共四十頁(yè),編輯于2023年,星期三35第三十五頁(yè),共四十頁(yè),編輯于2023年,星期三
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年食品安全管理人員考試試題+答案
- 檢驗(yàn)科考試試題含答案
- 醫(yī)院裝備科考試題及答案
- 德州中考語(yǔ)文試題及答案
- 畜禽敗血癥試題及答案
- 護(hù)理課件插圖設(shè)計(jì)技巧
- 中國(guó)農(nóng)業(yè)科學(xué)院2026年度第一批統(tǒng)一公開(kāi)招聘參考題庫(kù)附答案
- 北京中國(guó)石油大學(xué)教育基金會(huì)招聘2人備考題庫(kù)附答案
- 南昌職教城教育投資發(fā)展有限公司2025年第七批公開(kāi)招聘工作人員專題備考題庫(kù)必考題
- 岳池縣天平鎮(zhèn)人民政府關(guān)于公開(kāi)招聘社區(qū)專職網(wǎng)格員的參考題庫(kù)必考題
- 2026年咨詢工程師現(xiàn)代咨詢方法與實(shí)務(wù)模擬測(cè)試含答案
- 甘肅省酒泉市2025-2026學(xué)年高一上學(xué)期期末語(yǔ)文試題(解析版)
- GB/T 3634.1-2025氫氣第1部分:工業(yè)氫
- 2025年公務(wù)員(省考)測(cè)試卷附答案詳解
- JJG 499-2021 精密露點(diǎn)儀檢定規(guī)程
- T-CPQS A0011-2022 二手車車況檢測(cè)及評(píng)估通則
- 吸毒的危害性后果
- 2025年湖南邵陽(yáng)經(jīng)開(kāi)貿(mào)易投資有限公司招聘12人筆試考試參考試題及答案解析
- 白內(nèi)障手術(shù)術(shù)前準(zhǔn)備和術(shù)后護(hù)理流程
- 多動(dòng)癥兒童在感統(tǒng)訓(xùn)練
- 環(huán)保生產(chǎn)應(yīng)急預(yù)案
評(píng)論
0/150
提交評(píng)論