軟件工程華東理工大學(xué)計算機(jī)科學(xué)與工程系.ppt_第1頁
軟件工程華東理工大學(xué)計算機(jī)科學(xué)與工程系.ppt_第2頁
軟件工程華東理工大學(xué)計算機(jī)科學(xué)與工程系.ppt_第3頁
軟件工程華東理工大學(xué)計算機(jī)科學(xué)與工程系.ppt_第4頁
軟件工程華東理工大學(xué)計算機(jī)科學(xué)與工程系.ppt_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

,2019年11月24日,第8章軟件工程,李開復(fù)給學(xué)生的信,【1】從誠信談起:,問題八:大學(xué)生如何提高閱讀能力、寫作能力、表達(dá)能力、演講能力?看報、看雜志、看小說、看網(wǎng)站聽廣播、看電視、看電影寫總結(jié)、寫日記、參加演講比賽,思考,浙江工商局長鄭宇民斗智央視主持人董倩,在大學(xué)給自己制定一個個人使用表,送給學(xué)生的話,1.天天鍛煉身體,不要說:“我沒有時間?!?.多看一些好書,不要說:“我很忙?!?.培養(yǎng)自己多方面興趣,不要說:“我不懂,我不喜歡。”4.生于憂患,死于安樂。5.要自信,不要說:“我不行。”應(yīng)說:“讓我試試。”6.要有實干精神(勤奮)。,我大學(xué)的個人使用表,7.珍惜生命的分分秒秒,想到:“我能再活一天,我將要?!?.要勇敢承認(rèn)自己的錯誤(或不足),不要說:“那是因為?!辈灰獮樽约簩ふ依碛桑磺袩o借口。應(yīng)坦誠承認(rèn)別人行。9.建立終身學(xué)習(xí)目標(biāo),一切以學(xué)習(xí)為主。從一切人那兒學(xué)習(xí),哪怕他是自己的敵人。從一切方面(特別是實踐)學(xué)習(xí)。10.不要輕易許下諾言,要盡最大努力遵守諾言。11.要多與人真誠合作,想到:個人難挑千擔(dān)柴。無性情中人,最好別干。12.不要在意閑言碎語,堅信:走自己的路,讓別人說去吧!,13.不要成為金錢、名利、權(quán)力的奴隸,也不要成為任何人(哪怕自己最愛的人)的奴隸。應(yīng)勇敢地作自己的主,活出自己的風(fēng)格,想到:我永遠(yuǎn)是我!14.要謙虛。15.珍惜友情,但不刻意去追求。16.當(dāng)天的事當(dāng)天干。17.一切應(yīng)從有益自己成功為出發(fā)點,但得顧及別人和社會利益。18.應(yīng)迎難而上,奮力拼搏,做到問心無愧,但要考慮“煞車原理”。,19.多贊美,少批評。20.為人處事,要對得住自己良心。21.微笑面對任何人;禮貌對待任何人,哪怕他是個乞丐;尊重為自己服務(wù)的人;愛一切人,哪怕他是自己的敵人(當(dāng)然是他好的一面),也應(yīng)仇恨一切丑惡現(xiàn)象和壞人。22.應(yīng)加強(qiáng)道德紀(jì)律觀念。23.注意修養(yǎng)和綜合素質(zhì)的提高。24.睡前反省今日所作所為及明天的大致安排。,25.千萬不要為了別人而毀滅自己(當(dāng)然獻(xiàn)愛心除外),不要為了報復(fù)而毀了自己,最好不要報復(fù)。26.坦然對待一切,不幸應(yīng)看到希望,成功應(yīng)看到困難。微笑面對人生,也就是樂觀地對待人生。27.每日深思:我拿什么資本到社會上去競爭,怎樣才能把自己培養(yǎng)成高素質(zhì)的可塑性人才?,回鍋肉制作方法,1.需求分析:口味、主料、輔料2.制作步驟:買菜、煮肉、切菜、切肉、炒肉3.制作方法:肉煮幾成熟、什么時候放蒜苗4.品位佳肴:鹽、麻、辣、油5.剩菜處理:保菜、熱菜,做軟件就像做菜一樣,是一門技術(shù),更是一門藝術(shù),系統(tǒng)實現(xiàn),系統(tǒng)分析,系統(tǒng)設(shè)計,系統(tǒng)測試,系統(tǒng)維護(hù),通過五個實例詳細(xì)講解軟件開發(fā)的五個過程,網(wǎng)上商城管理系統(tǒng)設(shè)計與實現(xiàn),基于Web的在線系統(tǒng),主要功能是為會員用戶提供商品的瀏覽和購買功能,主要涉及:會員信息的管理:會員注冊,信息修改、刪除和檢索等商品信息的管理:商品錄入,信息修改、刪除和檢索等訂單信息的管理:對會員及其所購買的商品的管理(確認(rèn)訂單、查看訂單、修改訂單和完成訂單),8.1軟件工程的形成與發(fā)展8.2什么是軟件工程8.3系統(tǒng)分析8.4系統(tǒng)設(shè)計8.5系統(tǒng)實現(xiàn)8.6軟件測試8.7軟件維護(hù)8.8軟件文檔,軟件工程,8.1軟件工程的形成與發(fā)展,1963年,美國用于控制火星探測器的計算機(jī)軟件中的一個“,”號被誤寫為“?!?,而致使飛往火星的探測器發(fā)生爆炸,造成高達(dá)數(shù)億美元的損失1968年,北大西洋公約組織的計算機(jī)科學(xué)家們在聯(lián)邦德國召開的國際會議上討論了軟件危機(jī)問題,同時也是在這個會議上提出了“軟件工程”這個名詞,導(dǎo)致了一門新的工程學(xué)科的正式誕生軟件危機(jī):軟件開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題,軟件危機(jī)表現(xiàn)形式:用戶很不滿意:界面風(fēng)格不統(tǒng)一、操作不方便質(zhì)量很不可靠:沒有人測試,代碼管理,團(tuán)隊溝通軟件不可維護(hù):每年維護(hù)成本20%對軟件開發(fā)成本和進(jìn)度的估算不準(zhǔn)確:公司損失沒有適當(dāng)?shù)奈臋n:代碼是給人看的,不是給機(jī)器;和客戶溝通,還要客戶簽字;要做什么寫下來軟件成本比重上升:人力資本上升軟件供不應(yīng)求:保證軟件質(zhì)量,產(chǎn)生的原因:軟件是邏輯的系統(tǒng)部件不是物理的系統(tǒng)部件,以程序和文檔形式存在軟件規(guī)模越來越大,功能越來越強(qiáng),軟件結(jié)構(gòu)非常復(fù)雜結(jié)論:軟件危機(jī)產(chǎn)生的根本原因與軟件產(chǎn)品的特征和軟件產(chǎn)品開發(fā)與維護(hù)的方法不正確有關(guān)解決軟件危機(jī)的根本出路:認(rèn)識問題的原因所在,汲取前人的經(jīng)驗要有相應(yīng)的理論、技術(shù)、工具,8.2什么是軟件工程,1.定義是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實用的和高質(zhì)量的軟件的學(xué)科它涉及到程序設(shè)計語言、數(shù)據(jù)庫、軟件開發(fā)工具,系統(tǒng)平臺、標(biāo)準(zhǔn)、設(shè)計模式等方面,2.軟件生存周期軟件生存周期一般劃分為:計劃(定義)時期:問題定義和可行性研究兩個階段開發(fā)時期:需求分析、系統(tǒng)設(shè)計、編碼和測試四個階段運行時期:主要是系統(tǒng)維護(hù)階段,問題定義,可行性研究,需求分析,軟件設(shè)計,編碼,測試,維護(hù),(軟件系統(tǒng)目標(biāo)與范圍說明書),(可行性論證報告),(需求說明書),(設(shè)計說明書),(程序),(測試報告),(軟件維護(hù)報告),典型的軟件生存周期:,3.開發(fā)模型(1)瀑布模型(waterfallmodel)瀑布模型由W.Royce于1970年首先提出根據(jù)軟件工程生存周期各個階段的任務(wù),瀑布模型從可行性研究開始,逐步進(jìn)行階段性變換,直至通過確認(rèn)測試并得到用戶確認(rèn)的軟件產(chǎn)品為止瀑布模型上一階段的變換結(jié)果是下一階段變換的輸入,相鄰兩個階段具有因果關(guān)系,緊密聯(lián)系一個階段的失誤將蔓延到以后的各個階段為了保障軟件開發(fā)的正確性,每一階段任務(wù)完成后,都必須對它的階段性產(chǎn)品進(jìn)行評審,確認(rèn)之后再轉(zhuǎn)入下一階段的工作,評審過程發(fā)現(xiàn)錯誤和疏漏后,應(yīng)該及時反饋到前面的有關(guān)階段修正錯誤或彌補疏漏,然后再重復(fù)前面的工作,直至某一階段通過評審后再進(jìn)入下一階段瀑布模型如圖所示:,瀑布模型的優(yōu)點:可強(qiáng)迫開發(fā)人員采用規(guī)范的方法嚴(yán)格規(guī)定了每個階段必須提交的文檔要求每個階段交出的所有產(chǎn)品都必須經(jīng)過質(zhì)量保證小組的仔細(xì)驗證瀑布模型的缺點:在軟件開發(fā)的初始階段指明軟件系統(tǒng)的全部需求是困難的,有時甚至是不現(xiàn)實的確定需求后,用戶和軟件項目負(fù)責(zé)人要等相當(dāng)長的時間才能得到一份軟件的最初版本。如果用戶提出比較大的修改意見,那么整個軟件項目將會蒙受巨大的人力、財力和時間方面的損失,(2)原型模型(演化模型)主要是針對事先不能完整定義需求的軟件項目開發(fā)而言的許多軟件開發(fā)項目由于人們對軟件需求的認(rèn)識模糊,很難一次開發(fā)成功,返工再開發(fā)難以避免因此,人們對需開發(fā)的軟件給出基本需求,作第一次試驗開發(fā),其目標(biāo)僅在于探索可行性和弄清需求,取得有效的反饋信息,以支持軟件的最終設(shè)計和實現(xiàn)通常我們把第一次實驗性開發(fā)出的軟件稱為原型這種開發(fā)模型可以減少由于需求不明給開發(fā)工作帶來的風(fēng)險,有較好的效果,相對瀑布模型來說,原型模型更符合人類認(rèn)識真理的過程和思維,是目前較流行的一種實用的軟件開發(fā)方法原型模型如圖所示:,原型化模型有:丟棄型:原型開發(fā)后,已獲得了更為清晰的需求反饋信息,原型無需保留而丟棄,開發(fā)的原型僅以演示為目的,這往往用在軟件的用戶界面的開發(fā)上樣品型:原型規(guī)模與最終產(chǎn)品相似,只是原型僅供研究用漸增式演化型:原型作為最終產(chǎn)品的一部分,它可以滿足用戶的部分需求,經(jīng)用戶試用后提出精華系統(tǒng)、增強(qiáng)系統(tǒng)能力的需求,開發(fā)人員根據(jù)反饋信息,實施開發(fā)的迭代過程。如果在一次迭代過程中,有些需求還不能滿足用戶的需求,可以在下一迭代過程中予以修正,整個實現(xiàn)后軟件才可最終交付使用,(3)螺旋模型是瀑布模型與原型模型相結(jié)合,并增加兩者所忽略的風(fēng)險分析而產(chǎn)生的一種模型該模型通常用來指導(dǎo)大型軟件項目的開發(fā),它將開發(fā)劃分為制定計劃、風(fēng)險計劃、實施開發(fā)和客戶評估四類活動沿著螺旋線每轉(zhuǎn)一圈,表示開發(fā)出一個更完善的新的軟件版本如果開發(fā)風(fēng)險過大,開發(fā)機(jī)構(gòu)和客戶無法接受,項目有可能就此中止;多數(shù)情況下,會沿著螺旋線繼續(xù)下去,自內(nèi)向外逐步延伸,最終得到滿意的軟件產(chǎn)品,該模型是由TRW公司的B.Boehm于1988年提出的下圖顯示了螺旋模型的原理,沿著螺旋線旋轉(zhuǎn),在笛卡兒坐標(biāo)的四個像限上分別表達(dá)了四類活動,制定計劃:確定軟件目標(biāo),選定實施方案,弄清項目開發(fā)的限制條件風(fēng)險分析:分析所選方案,考慮如何識別和消除風(fēng)險實施開發(fā):實施軟件開發(fā)客戶評估:評價軟件功能和性能,提出修正建議,螺旋模型的優(yōu)點:對可選方案和約束的強(qiáng)調(diào)有利于已有軟件的重用有助于把軟件質(zhì)量作為軟件開發(fā)的一個重要目標(biāo),減少了過多測試或測試不足所帶來的風(fēng)險但是要求許多客戶接受和相信并不容易,使用該模型需要具有相當(dāng)豐富的風(fēng)險評估經(jīng)驗和專門知識,如果項目風(fēng)險較大,又未必能及時發(fā)現(xiàn),勢必造成重點損失目前國內(nèi)許多軟件公司還未能及時掌握和運用這種模型,有待進(jìn)一步積累經(jīng)驗,(4)噴泉模型對軟件復(fù)用和生存周期中多項開發(fā)活動的集成提供了支持,以面向?qū)ο蟮能浖_發(fā)方法為基礎(chǔ),它適合面向?qū)ο蟮拈_發(fā)方法它克服了瀑布模型不支持軟件重用和多項開發(fā)活動集成的局限性噴泉模型使開發(fā)過程具有迭代性和無間隙性系統(tǒng)某個部分常常重復(fù)工作多次,相關(guān)功能在每次迭代中隨之加入演化的系統(tǒng)無間隙是指在分析、設(shè)計和實現(xiàn)等開發(fā)活動之間不存在明顯的邊界,噴泉模型參見下圖:,8.3系統(tǒng)分析,1.需求分析調(diào)查用戶需求(添加、刪除、修改、查詢、打?。┓治鲂孪到y(tǒng)的主要目標(biāo),分析開發(fā)該系統(tǒng)的可行性(技術(shù)、經(jīng)濟(jì)、人力、物力、環(huán)境、政策、道德等)計劃時期還應(yīng)制定出人力、資源及進(jìn)度計劃,2.面向過程分析數(shù)據(jù)流圖:從數(shù)據(jù)傳遞和加工角度,以圖形方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,實體關(guān)系圖:簡記E-R圖是指以實體、關(guān)系、屬性三個基本概念概括數(shù)據(jù)的基本結(jié)構(gòu),從而描述靜態(tài)數(shù)據(jù)結(jié)構(gòu)的概念模式,狀態(tài)圖:描述一個實體基于事件反應(yīng)的動態(tài)行為,顯示了該實體如何根據(jù)當(dāng)前所處的狀態(tài)對不同的時間做出反應(yīng)的,反應(yīng),3.面向?qū)ο蠓治鲇美龍D:被稱為參與者的外部用戶所能觀察到的系統(tǒng)功能的模型圖,呈現(xiàn)了一些參與者和一些用例,以及它們之間的關(guān)系,主要用于對系統(tǒng)、子系統(tǒng)或類的功能行為進(jìn)行建模,類圖:顯示了模型的靜態(tài)結(jié)構(gòu),特別是模型中存在的類、類的內(nèi)部結(jié)構(gòu)以及它們與其他類的關(guān)系等,狀態(tài)圖:描述一個實體基于事件反應(yīng)的動態(tài)行為,顯示了該實體如何根據(jù)當(dāng)前所處的狀態(tài)對不同的時間做出反應(yīng)的,反應(yīng),1.功能需求:會員信息管理:密碼安全性、忘記密碼怎么辦商品信息管理:每頁顯示多少商品、商品查詢訂單信息的管理:完成訂單可以兩個小時修改用戶登錄:管理員和會員同一個登錄頁面?,網(wǎng)上商城管理系統(tǒng)系統(tǒng)分析,2.數(shù)據(jù)流圖:頂層數(shù)據(jù)流圖:P0網(wǎng)上商城第二層數(shù)據(jù)流圖:P01會員管理、P02訂單管理、P03商品管理第三層數(shù)據(jù)流圖:會員注冊、會員信息修改、刪除會員、檢索會員、會員登錄;確認(rèn)訂單、查看訂單、修改訂單、完成訂單;錄入商品、修改商品信息、刪除商品信息、檢索商品信息,3.數(shù)據(jù)字典:數(shù)據(jù)元素定義:會員信息、商品信息、訂單信息、訂單詳情數(shù)據(jù)流定義表:會員信息、管理員、商品信息、訂單信息文件定義表:會員信息、商品信息、訂單信息、訂單詳情,4.E-R圖:會員信息表、商品信息表、訂單信息表、訂單詳情表5.其他相關(guān)要求:系統(tǒng)最小壽命:三年以上設(shè)備要求:計算機(jī)穩(wěn)定性好,整套設(shè)備經(jīng)濟(jì)實惠使用上:系統(tǒng)易理解,易學(xué)習(xí),易操作安全性:安全可靠,容錯,易恢復(fù)數(shù)據(jù)集中上:用統(tǒng)一的數(shù)據(jù)庫可維護(hù)性:可修改,可測試,可擴(kuò)充,可移植系統(tǒng)硬件環(huán)境:服務(wù)器和客戶機(jī)的要求,8.4系統(tǒng)設(shè)計,從工程管理的角度來看,系統(tǒng)設(shè)計分兩步完成。概要設(shè)計,將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu);詳細(xì)設(shè)計,即過程設(shè)計。通過對結(jié)構(gòu)表示進(jìn)行細(xì)化,得到軟件的詳細(xì)的數(shù)據(jù)結(jié)構(gòu)和算法。OO軟件開發(fā):概要設(shè)計的部分內(nèi)容(類&對象的設(shè)計)前移到OOA階段,概要設(shè)計主要圍繞對象之間的協(xié)作。,1.總體設(shè)計2.詳細(xì)設(shè)計會員登錄模塊:模塊輸入、處理和輸出會員管理模塊:會員注冊、會員信息修改、刪除會員、檢索會員商品管理模塊:商品錄入、信息修改、檢索商品、刪除商品訂單管理:確認(rèn)訂單、查看訂單、修改訂單、完成訂單,網(wǎng)上商城管理系統(tǒng)系統(tǒng)設(shè)計,8.5系統(tǒng)實現(xiàn),1.語言的選擇2.軟件質(zhì)量可操作性可維護(hù)性可遷移性,1.程序設(shè)計語言和數(shù)據(jù)庫的選擇技術(shù)開發(fā)語言:c#開發(fā)平臺:MicrosoftVisualStudio2008數(shù)據(jù)庫:SQLServer2005Express2.系統(tǒng)模塊的編碼實現(xiàn)會員登錄模塊、會員管理模塊、商品管理模塊、訂單管理、MasterPage(用戶登錄前后),網(wǎng)上商城管理系統(tǒng)系統(tǒng)實現(xiàn),8.6軟件測試,1.白盒測試基本路徑測試控制結(jié)構(gòu)測試循環(huán)測試2.黑盒測試窮盡測試隨機(jī)測試邊界值測試,1.測試概述:測試內(nèi)容、測試計劃、測試人員安排2.測試方法:重要模塊白盒測試,其他黑盒測試3.測試步驟:先單元測試,再集成測試,對每個測試都要考慮合法和非法的測試4.測試過程:系統(tǒng)的測試內(nèi)容、系統(tǒng)的單元測試、系統(tǒng)的集成測試、系統(tǒng)測試與回歸測試,網(wǎng)上商城管理系統(tǒng)系統(tǒng)測試,8.7軟件維護(hù),軟件維護(hù):在軟件已經(jīng)交付使用之后,為了改正錯誤或滿足新的需要而修改軟件的過程維護(hù)的種類:完善性維護(hù)(perfectivemaintenance)適應(yīng)性維護(hù)(adaptivemaintenance)糾錯性維護(hù)(correctivemain

溫馨提示

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

評論

0/150

提交評論