現(xiàn)代軟件工程課程概述課件_第1頁
現(xiàn)代軟件工程課程概述課件_第2頁
現(xiàn)代軟件工程課程概述課件_第3頁
現(xiàn)代軟件工程課程概述課件_第4頁
現(xiàn)代軟件工程課程概述課件_第5頁
已閱讀5頁,還剩73頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

現(xiàn)代軟件工程課程概述主講:吳建林jlinwu@;jlinwu@12/9/20221現(xiàn)代軟件工程課程概述主講:吳建林12/7/20221提綱一、軟件工程的體系二、教學側(cè)重點三、為什么偏重于軟件工程管理四、軟件工程技術(shù)的發(fā)展五、教學內(nèi)容組織六、教學方法七、參考資料12/9/20222提綱一、軟件工程的體系12/7/20222一、軟件工程的體系軟件工程:以工程化的原理、原則和方法進行軟件開發(fā),以期解決當時出現(xiàn)的“軟件危機”。軟件危機:大型軟件開發(fā)成本高;開發(fā)過程不易控制;軟件開發(fā)工作量估計困難;軟件質(zhì)量低;軟件項目失敗率高,錯誤率高;無法判斷大型系統(tǒng)能否正常工作;軟件維護任務(wù)重等。12/9/20223一、軟件工程的體系軟件工程:以工程化的原理、原則和方法進行軟一、軟件工程的體系軟件工程技術(shù):1、軟件開發(fā)模型:軟件開發(fā)全過程中系統(tǒng)的開發(fā)、運行和維護所實施的全部過程(PDCA)、活動、任務(wù)的結(jié)構(gòu)框架。(what)2、軟件開發(fā)方法:采用類似于工程的原理和原則進行軟件開發(fā)。(how)3、軟件開發(fā)工具:實現(xiàn)方法的自動或半自動的軟件支撐環(huán)境。(CASE)12/9/20224一、軟件工程的體系軟件工程技術(shù):12/7/20224一、軟件工程的體系軟件過程管理1、軟件產(chǎn)品和過程的質(zhì)量度量2、項目計劃與管理(包括風險管理)3、軟件過程改進與評估(SPICE)

工程技術(shù)解決的是開發(fā)效率問題;二過程管理解決的是開發(fā)質(zhì)量問題。12/9/20225一、軟件工程的體系軟件過程管理12/7/20225一、軟件工程的體系為什么需要軟件工程?當你遇到一個新領(lǐng)域的問題而不知道該如何下手時;當你在解決復雜問題的過程中感覺到雜亂無章、力不從心時;當你面對一個充滿個性的開發(fā)團隊而不知如何協(xié)調(diào)時;當你感覺到開發(fā)效率低下、開發(fā)質(zhì)量始終是你的心頭之患時…...12/9/20226一、軟件工程的體系為什么需要軟件工程?12/7/20226二、教學側(cè)重點本科生教學側(cè)重點: 1、軟件工程的概念 2、軟件生命周期 3、軟件開發(fā)模型 4、軟件開發(fā)方法 5、軟件開發(fā)工具 6、基本的項目管理知識12/9/20227二、教學側(cè)重點本科生教學側(cè)重點:12/7/20227二、教學側(cè)重點研究生教學側(cè)重點: 1、對軟件開發(fā)技術(shù)的尋根索源; 2、軟件質(zhì)量 3、軟件度量 4、軟件過程及項目管理 5、SPICE/CMM 6、新型軟件工程技術(shù)(基于軟件體系結(jié)構(gòu)的開發(fā)方法、面向?qū)ο蠼!⒎植际讲考ο蠹夹g(shù)、軟件復用技術(shù)等)12/9/20228二、教學側(cè)重點研究生教學側(cè)重點:12/7/20228三、為什么偏重于軟件工程管理3.1軟件企業(yè)的特殊性3.2我國軟件企業(yè)的現(xiàn)狀3.3印度軟件企業(yè)的現(xiàn)狀3.4我國與印度軟件企業(yè)的差距分析3.5重視軟件工程管理的必要性12/9/20229三、為什么偏重于軟件工程管理3.1軟件企業(yè)的特殊性12/73.1軟件企業(yè)的特殊性軟件的復雜性和各模塊間的相互依賴性是其他的產(chǎn)品所無法比擬的。所有的模塊以及模塊間的連接環(huán)節(jié)必須是100%的正確,不能像硬件那樣允許出現(xiàn)一定范圍的偏差。想象一下:如果沒有好的管理,軟件的架構(gòu)會顯得混亂,軟件的開發(fā)過程會是雜亂無章的。12/9/2022103.1軟件企業(yè)的特殊性軟件的復雜性和各模塊間的相互依賴性是3.1軟件企業(yè)的特殊性軟件作為產(chǎn)品,是用人的大腦生產(chǎn)出來的,不是機器制造出來的,因而,軟件過程對人的依賴性極大。除去采用好的方法和工具等技術(shù)外,軟件的質(zhì)量極大地依賴于人。(人的創(chuàng)造性極具個性化)工程制造業(yè)影響質(zhì)量的5要素:人、機器、原料、方法、環(huán)境。人占20%。軟件工程管理就是要為人提供好的方法和工具以減輕人的壓力,提高效率;通過過程管理技術(shù)盡量減少人的低級錯誤,減少過程對于人的依賴程度。12/9/2022113.1軟件企業(yè)的特殊性軟件作為產(chǎn)品,是用人的大腦生產(chǎn)出來的3.2我國軟件企業(yè)的現(xiàn)狀從70年代至今,始終處于落后于國際的位置。CMM5-摩托羅拉中國軟件中心;CMM3有聯(lián)想軟件、東軟、托普軟件等,大部分企業(yè)在向CMM2努力。CMM3是軟件企業(yè)邁向國際化的門檻。12/9/2022123.2我國軟件企業(yè)的現(xiàn)狀從70年代至今,始終處于落后于國際3.2我國軟件企業(yè)的現(xiàn)狀Why?規(guī)模化和系統(tǒng)化不夠。

規(guī)?;很浖髽I(yè)無法形成規(guī)模,大多數(shù)企業(yè)都是從小型軟件開發(fā)干起來的,當軟件企業(yè)達到一定規(guī)模時,管理工作跟不上,無法形成規(guī)模效應(yīng)。

系統(tǒng)化:軟件是一種商品,只有系統(tǒng)地控制產(chǎn)品的質(zhì)量、開發(fā)時間、開發(fā)成本才能使商品走入市場、走向國際。12/9/2022133.2我國軟件企業(yè)的現(xiàn)狀Why?12/7/2022133.3印度軟件企業(yè)的現(xiàn)狀根據(jù)印度國家軟件和服務(wù)企業(yè)協(xié)會的數(shù)據(jù):最近5年印度軟件產(chǎn)業(yè)的累計增長率達到了令人驚奇的52%,軟件出口累計增長率超過55%。印度年軟件產(chǎn)業(yè)產(chǎn)值超過22億美元,軟件服務(wù)和產(chǎn)品出口累計達10億美元。2000年達到40億美元。印度軟件產(chǎn)業(yè)從業(yè)人員16萬人。2000多家軟件企業(yè)中,75家通過ISO9000,60多家軟件公司通過了CMM認證。5-1,4-3,3-412/9/2022143.3印度軟件企業(yè)的現(xiàn)狀根據(jù)印度國家軟件和服務(wù)企業(yè)協(xié)會的數(shù)3.3印度軟件企業(yè)的現(xiàn)狀一個現(xiàn)象:一個印度人到美國登記住宿,接待員問:“你是從印度來嗎?”“是的”,“那你一定是個軟件專家”。以前呢?舞蛇者公眾對印度軟件的肯定來自于質(zhì)量。其成功當然還來自于:良好的英語、低廉的人力成本。12/9/2022153.3印度軟件企業(yè)的現(xiàn)狀一個現(xiàn)象:一個印度人到美國登記住宿3.3印度軟件企業(yè)的現(xiàn)狀國內(nèi)從業(yè)人員到印度的感受:流程重于項目QC獨立于研發(fā)部門,專門檢查研發(fā)部門的開發(fā)流程是不是按照流程走,如果QC覺得流程不對,會報告上層人員,項目可能會因此而停止。所謂的項目經(jīng)理一般是從編碼人員升上來的,并不是不懂技術(shù),一般至少有4年的工作經(jīng)驗。12/9/2022163.3印度軟件企業(yè)的現(xiàn)狀國內(nèi)從業(yè)人員到印度的感受:12/73.3印度軟件企業(yè)的現(xiàn)狀項目經(jīng)理就是制定開發(fā)計劃,負責協(xié)調(diào),填寫各種表格。所有的東西(包括草稿)都有文檔。詳細設(shè)計文檔要求達到只有這個文檔就可以編碼的程度,一般寫文檔的時間為60%,編碼時間極少。有各種詳細的review,組內(nèi)的、組間的、客戶的等。計劃很詳細,的確能達到小時級別,但是實際情況還是誤差比較大,所以也有加班。12/9/2022173.3印度軟件企業(yè)的現(xiàn)狀項目經(jīng)理就是制定開發(fā)計劃,負責協(xié)調(diào)3.4我國與印度軟件企業(yè)的差距分析Example:軟件中需要一個列表,用來表示處理的事務(wù)。該列表在業(yè)務(wù)繁忙的時候?qū)⒆兊煤艽?。我國從業(yè)人員:用雙向鏈表(先編碼后分析)。印度從業(yè)人員:開一個大的數(shù)組,不用鏈表。(先分析后編碼)Why?小型機的512MB內(nèi)存足夠,數(shù)組訪問方便、效率高。12/9/2022183.4我國與印度軟件企業(yè)的差距分析Example:軟件中需3.4我國與印度軟件企業(yè)的差距分析軟件教育水平比較:印度軟件人員面對同樣的問題有驚人相似的解決方法和程序結(jié)構(gòu)。而我國軟件人員更重視的是解決問題的個人技巧,重視創(chuàng)造性地發(fā)揮(每個人都覺得別人做的軟件不好,自己需要延續(xù)別人的工作時總是將別人貶損一通,然后重新開發(fā),殊不知:程序員只要具備擰好螺絲釘?shù)哪芰涂梢粤?。?2/9/2022193.4我國與印度軟件企業(yè)的差距分析軟件教育水平比較:印度軟3.4我國與印度軟件企業(yè)的差距分析許多公司的項目經(jīng)理不需要懂技術(shù),有些甚至就是MBA或者是領(lǐng)域?qū)<?,而不是編碼專家,卻能夠領(lǐng)導一大群素質(zhì)良好的程序員把工作做好,沒有內(nèi)部不團結(jié)的情況。國內(nèi)的項目經(jīng)理如果不懂技術(shù)則后果是可想而知的(內(nèi)部不團結(jié),技術(shù)人員與管理人員做對=〉項目經(jīng)理必須在技術(shù)上能夠壓服下屬)。12/9/2022203.4我國與印度軟件企業(yè)的差距分析許多公司的項目經(jīng)理不需要3.4我國與印度軟件企業(yè)的差距分析印度的編程人員的流動率高達30%!可以想見他們的文檔工作做得多么地好,他們的產(chǎn)品不依賴于任何一個人,誰都可以立即辭職,產(chǎn)品的開發(fā)還是會正常進行。國內(nèi):老板害怕總工,技術(shù)骨干擁兵自重,抗拒管理。任何制定好的計劃都有可能被技術(shù)人員推翻或者跟你消極怠工。12/9/2022213.4我國與印度軟件企業(yè)的差距分析印度的編程人員的流動率高3.4我國與印度軟件企業(yè)的差距分析印度的開發(fā)計劃能夠做到小時級別。如果項目經(jīng)理沒有上班,手下的員工可能不知道干什么。一般的計劃都定到天。(來自于良好的度量)國內(nèi)能夠?qū)⒂媱澏ǖ皆戮筒诲e了,而且給出的月度計劃要么不可能實現(xiàn),要么就可能被取消,開發(fā)人員一般會出現(xiàn)前松后緊的局面。12/9/2022223.4我國與印度軟件企業(yè)的差距分析印度的開發(fā)計劃能夠做到小3.5重視軟件工程管理的必要性印度軟件公司十分重視軟件開發(fā)過程的管理及與其相關(guān)理論與標準的發(fā)展。認為編碼是十分簡單的工作,高中生就可以完成。國內(nèi)軟件公司更重視個人技能的發(fā)揮,忽視了過程的管理。國內(nèi)的個人創(chuàng)造性應(yīng)該在有限的范圍內(nèi)得到發(fā)揮。在滿足國內(nèi)軟件市場需求的同時,拓展國際軟件市場,增加軟件出口量。12/9/2022233.5重視軟件工程管理的必要性印度軟件公司十分重視軟件開發(fā)四、軟件工程技術(shù)的發(fā)展新型軟件開發(fā)模型,如:RUP(RationalUnifiedProcess)、XP(eXtremProgramming)。新的軟件開發(fā)方法:面向?qū)ο筌浖_發(fā)方法。新的軟件開發(fā)工具:UML(UnifiedModelingLanguage)、ROSE(RationalObject-orientedSoftwareEngineering)12/9/202224四、軟件工程技術(shù)的發(fā)展新型軟件開發(fā)模型,如:RUP(Rati四、軟件工程技術(shù)的發(fā)展以軟件體系結(jié)構(gòu)為中心的面向?qū)ο筌浖_發(fā)過程提煉特定應(yīng)用領(lǐng)域的穩(wěn)定需求和易變需求,建立可復用的領(lǐng)域模型。在特定領(lǐng)域模型的基礎(chǔ)上提煉特定應(yīng)用領(lǐng)域的軟件體系結(jié)構(gòu)。進行體系結(jié)構(gòu)設(shè)計分配系統(tǒng)功能到相應(yīng)的構(gòu)建和連接件上存放設(shè)計模式、對象或其它可重用的設(shè)計構(gòu)件。設(shè)計構(gòu)件和連接件復用/存儲12/9/202225四、軟件工程技術(shù)的發(fā)展以軟件體系結(jié)構(gòu)為中心的面向?qū)ο筌浖_發(fā)四、軟件工程技術(shù)的發(fā)展分布式部件對象技術(shù)MicrosoftCOM/DCOM/COM+OMGCORBA(CommonObjectRequestBrokerArchitecture)SunMicrosystemJavaBean12/9/202226四、軟件工程技術(shù)的發(fā)展分布式部件對象技術(shù)12/7/20222四、軟件工程技術(shù)的發(fā)展軟件復用技術(shù)Pattern(analysis,design,process)Framework12/9/202227四、軟件工程技術(shù)的發(fā)展軟件復用技術(shù)12/7/202227五、教學內(nèi)容組織 第一章軟件工程現(xiàn)狀及發(fā)展1.1軟件發(fā)展現(xiàn)狀1.2軟件危機1.3軟件工程及發(fā)展歷程1.4軟件工程框架1.5軟件發(fā)展趨勢及特點12/9/202228五、教學內(nèi)容組織 第一章軟件工程現(xiàn)狀及發(fā)展12/7/202五、教學內(nèi)容組織 第二章軟件生命周期過程2.1軟件生命周期2.2基本過程2.3支持過程2.4組織過程12/9/202229五、教學內(nèi)容組織 第二章軟件生命周期過程12/7/2022五、教學內(nèi)容組織 第三章軟件過程改進的CMM/PSP/TSP模型3.1CMM產(chǎn)生背景3.2CMM內(nèi)容及管理透視3.3CMM組織結(jié)構(gòu)3.4CMM應(yīng)用3.5CMM與ISO90013.6PSP過程組織結(jié)構(gòu)3.7TSP過程及角色12/9/202230五、教學內(nèi)容組織 第三章軟件過程改進的CMM/PSP/TS五、教學內(nèi)容組織 第四章軟件質(zhì)量4.1軟件質(zhì)量概念4.2軟件質(zhì)量屬性4.3軟件質(zhì)量度量4.4軟件質(zhì)量保證4.5質(zhì)量管理和質(zhì)量保證的實施12/9/202231五、教學內(nèi)容組織 第四章軟件質(zhì)量12/7/202231五、教學內(nèi)容組織 第五章軟件項目管理5.1項目管理過程5.2風險管理5.3軟件質(zhì)量和效率度量5.4軟件項目成本和進度估算5.5軟件項目進度安排5.6項目組織結(jié)構(gòu)設(shè)計5.7項目過程監(jiān)控12/9/202232五、教學內(nèi)容組織 第五章軟件項目管理12/7/202232五、教學內(nèi)容組織 第六章面向?qū)ο蠼UZ言和過程6.1面向?qū)ο蠼K枷?.2面向?qū)ο蠼7椒?.3統(tǒng)一建模語言UML6.4統(tǒng)一建模過程RUP6.5輕量級建模過程XP12/9/202233五、教學內(nèi)容組織 第六章面向?qū)ο蠼UZ言和過程12/7/2五、教學內(nèi)容組織 第七章軟件體系結(jié)構(gòu)7.1軟件體系結(jié)構(gòu)概念7.2軟件體系結(jié)構(gòu)的研究意義7.3軟件體系結(jié)構(gòu)的研究內(nèi)容7.4基本軟件體系結(jié)構(gòu)風格7.5基于體系結(jié)構(gòu)的軟件開發(fā)模式12/9/202234五、教學內(nèi)容組織 第七章軟件體系結(jié)構(gòu)12/7/202234五、教學內(nèi)容組織 第八章分布式部件對象技術(shù)8.1分布式網(wǎng)絡(luò)計算8.2基于部件的技術(shù)8.3部件模型8.4互操作性8.5部件對象技術(shù)的發(fā)展12/9/202235五、教學內(nèi)容組織 第八章分布式部件對象技術(shù)12/7/202五、教學內(nèi)容組織 第九章軟件復用之模式和框架9.1軟件復用類型9.2模式復用9.3設(shè)計模式9.4過程模式和分析模式9.5框架復用9.6模式和框架的關(guān)系12/9/202236五、教學內(nèi)容組織 第九章軟件復用之模式和框架12/7/20五、教學內(nèi)容組織目標:通過本課程的學習,學生應(yīng)該掌握:軟件工程技術(shù)發(fā)展的原因、解決的問題機器局限性,能夠根據(jù)具體情況靈活應(yīng)用各種技術(shù)。軟件過程及其管理方法,圍繞軟件過程改進(SPI)熟悉CMM(過程能力成熟度模型)、PSP(個體軟件過程)和TSP(群體軟件過程)等方面的知識;軟件體系結(jié)構(gòu)及其基本風格;面向?qū)ο蟮慕<夹g(shù)及UML(統(tǒng)一建模語言);分布式部件對象技術(shù);軟件復用技術(shù)(分析模式、設(shè)計模式和過程模式、框架)軟件項目管理、質(zhì)量控制。12/9/202237五、教學內(nèi)容組織目標:通過本課程的學習,學生應(yīng)該掌握:12/六、教學方法采用課堂教學與課外自學相結(jié)合的方式進行。課外自學采用小組方式進行,針對某一個題目完成專題論文。最后,需要針對該論文在全班進行表達。題目另行給出。12/9/202238六、教學方法采用課堂教學與課外自學相結(jié)合的方式進行。12/七、參考資料現(xiàn)代軟件工程(上)(中)(下)周之英,科學出版社軟件工程-――技術(shù)、方法與環(huán)境王立福實用軟件工程清華鄭人杰面向?qū)ο蠼Ec設(shè)計人民郵電洪永清CORBA教程――公共對象請求代理體系結(jié)構(gòu)清華李師賢可視化面向?qū)ο蠼<夹g(shù)劉超、張莉北京航空航天大學出版社12/9/202239七、參考資料現(xiàn)代軟件工程(上)(中)(下)周之英,科學現(xiàn)代軟件工程課程概述主講:吳建林jlinwu@;jlinwu@12/9/202240現(xiàn)代軟件工程課程概述主講:吳建林12/7/20221提綱一、軟件工程的體系二、教學側(cè)重點三、為什么偏重于軟件工程管理四、軟件工程技術(shù)的發(fā)展五、教學內(nèi)容組織六、教學方法七、參考資料12/9/202241提綱一、軟件工程的體系12/7/20222一、軟件工程的體系軟件工程:以工程化的原理、原則和方法進行軟件開發(fā),以期解決當時出現(xiàn)的“軟件危機”。軟件危機:大型軟件開發(fā)成本高;開發(fā)過程不易控制;軟件開發(fā)工作量估計困難;軟件質(zhì)量低;軟件項目失敗率高,錯誤率高;無法判斷大型系統(tǒng)能否正常工作;軟件維護任務(wù)重等。12/9/202242一、軟件工程的體系軟件工程:以工程化的原理、原則和方法進行軟一、軟件工程的體系軟件工程技術(shù):1、軟件開發(fā)模型:軟件開發(fā)全過程中系統(tǒng)的開發(fā)、運行和維護所實施的全部過程(PDCA)、活動、任務(wù)的結(jié)構(gòu)框架。(what)2、軟件開發(fā)方法:采用類似于工程的原理和原則進行軟件開發(fā)。(how)3、軟件開發(fā)工具:實現(xiàn)方法的自動或半自動的軟件支撐環(huán)境。(CASE)12/9/202243一、軟件工程的體系軟件工程技術(shù):12/7/20224一、軟件工程的體系軟件過程管理1、軟件產(chǎn)品和過程的質(zhì)量度量2、項目計劃與管理(包括風險管理)3、軟件過程改進與評估(SPICE)

工程技術(shù)解決的是開發(fā)效率問題;二過程管理解決的是開發(fā)質(zhì)量問題。12/9/202244一、軟件工程的體系軟件過程管理12/7/20225一、軟件工程的體系為什么需要軟件工程?當你遇到一個新領(lǐng)域的問題而不知道該如何下手時;當你在解決復雜問題的過程中感覺到雜亂無章、力不從心時;當你面對一個充滿個性的開發(fā)團隊而不知如何協(xié)調(diào)時;當你感覺到開發(fā)效率低下、開發(fā)質(zhì)量始終是你的心頭之患時…...12/9/202245一、軟件工程的體系為什么需要軟件工程?12/7/20226二、教學側(cè)重點本科生教學側(cè)重點: 1、軟件工程的概念 2、軟件生命周期 3、軟件開發(fā)模型 4、軟件開發(fā)方法 5、軟件開發(fā)工具 6、基本的項目管理知識12/9/202246二、教學側(cè)重點本科生教學側(cè)重點:12/7/20227二、教學側(cè)重點研究生教學側(cè)重點: 1、對軟件開發(fā)技術(shù)的尋根索源; 2、軟件質(zhì)量 3、軟件度量 4、軟件過程及項目管理 5、SPICE/CMM 6、新型軟件工程技術(shù)(基于軟件體系結(jié)構(gòu)的開發(fā)方法、面向?qū)ο蠼?、分布式部件對象技術(shù)、軟件復用技術(shù)等)12/9/202247二、教學側(cè)重點研究生教學側(cè)重點:12/7/20228三、為什么偏重于軟件工程管理3.1軟件企業(yè)的特殊性3.2我國軟件企業(yè)的現(xiàn)狀3.3印度軟件企業(yè)的現(xiàn)狀3.4我國與印度軟件企業(yè)的差距分析3.5重視軟件工程管理的必要性12/9/202248三、為什么偏重于軟件工程管理3.1軟件企業(yè)的特殊性12/73.1軟件企業(yè)的特殊性軟件的復雜性和各模塊間的相互依賴性是其他的產(chǎn)品所無法比擬的。所有的模塊以及模塊間的連接環(huán)節(jié)必須是100%的正確,不能像硬件那樣允許出現(xiàn)一定范圍的偏差。想象一下:如果沒有好的管理,軟件的架構(gòu)會顯得混亂,軟件的開發(fā)過程會是雜亂無章的。12/9/2022493.1軟件企業(yè)的特殊性軟件的復雜性和各模塊間的相互依賴性是3.1軟件企業(yè)的特殊性軟件作為產(chǎn)品,是用人的大腦生產(chǎn)出來的,不是機器制造出來的,因而,軟件過程對人的依賴性極大。除去采用好的方法和工具等技術(shù)外,軟件的質(zhì)量極大地依賴于人。(人的創(chuàng)造性極具個性化)工程制造業(yè)影響質(zhì)量的5要素:人、機器、原料、方法、環(huán)境。人占20%。軟件工程管理就是要為人提供好的方法和工具以減輕人的壓力,提高效率;通過過程管理技術(shù)盡量減少人的低級錯誤,減少過程對于人的依賴程度。12/9/2022503.1軟件企業(yè)的特殊性軟件作為產(chǎn)品,是用人的大腦生產(chǎn)出來的3.2我國軟件企業(yè)的現(xiàn)狀從70年代至今,始終處于落后于國際的位置。CMM5-摩托羅拉中國軟件中心;CMM3有聯(lián)想軟件、東軟、托普軟件等,大部分企業(yè)在向CMM2努力。CMM3是軟件企業(yè)邁向國際化的門檻。12/9/2022513.2我國軟件企業(yè)的現(xiàn)狀從70年代至今,始終處于落后于國際3.2我國軟件企業(yè)的現(xiàn)狀Why?規(guī)模化和系統(tǒng)化不夠。

規(guī)模化:軟件企業(yè)無法形成規(guī)模,大多數(shù)企業(yè)都是從小型軟件開發(fā)干起來的,當軟件企業(yè)達到一定規(guī)模時,管理工作跟不上,無法形成規(guī)模效應(yīng)。

系統(tǒng)化:軟件是一種商品,只有系統(tǒng)地控制產(chǎn)品的質(zhì)量、開發(fā)時間、開發(fā)成本才能使商品走入市場、走向國際。12/9/2022523.2我國軟件企業(yè)的現(xiàn)狀Why?12/7/2022133.3印度軟件企業(yè)的現(xiàn)狀根據(jù)印度國家軟件和服務(wù)企業(yè)協(xié)會的數(shù)據(jù):最近5年印度軟件產(chǎn)業(yè)的累計增長率達到了令人驚奇的52%,軟件出口累計增長率超過55%。印度年軟件產(chǎn)業(yè)產(chǎn)值超過22億美元,軟件服務(wù)和產(chǎn)品出口累計達10億美元。2000年達到40億美元。印度軟件產(chǎn)業(yè)從業(yè)人員16萬人。2000多家軟件企業(yè)中,75家通過ISO9000,60多家軟件公司通過了CMM認證。5-1,4-3,3-412/9/2022533.3印度軟件企業(yè)的現(xiàn)狀根據(jù)印度國家軟件和服務(wù)企業(yè)協(xié)會的數(shù)3.3印度軟件企業(yè)的現(xiàn)狀一個現(xiàn)象:一個印度人到美國登記住宿,接待員問:“你是從印度來嗎?”“是的”,“那你一定是個軟件專家”。以前呢?舞蛇者公眾對印度軟件的肯定來自于質(zhì)量。其成功當然還來自于:良好的英語、低廉的人力成本。12/9/2022543.3印度軟件企業(yè)的現(xiàn)狀一個現(xiàn)象:一個印度人到美國登記住宿3.3印度軟件企業(yè)的現(xiàn)狀國內(nèi)從業(yè)人員到印度的感受:流程重于項目QC獨立于研發(fā)部門,專門檢查研發(fā)部門的開發(fā)流程是不是按照流程走,如果QC覺得流程不對,會報告上層人員,項目可能會因此而停止。所謂的項目經(jīng)理一般是從編碼人員升上來的,并不是不懂技術(shù),一般至少有4年的工作經(jīng)驗。12/9/2022553.3印度軟件企業(yè)的現(xiàn)狀國內(nèi)從業(yè)人員到印度的感受:12/73.3印度軟件企業(yè)的現(xiàn)狀項目經(jīng)理就是制定開發(fā)計劃,負責協(xié)調(diào),填寫各種表格。所有的東西(包括草稿)都有文檔。詳細設(shè)計文檔要求達到只有這個文檔就可以編碼的程度,一般寫文檔的時間為60%,編碼時間極少。有各種詳細的review,組內(nèi)的、組間的、客戶的等。計劃很詳細,的確能達到小時級別,但是實際情況還是誤差比較大,所以也有加班。12/9/2022563.3印度軟件企業(yè)的現(xiàn)狀項目經(jīng)理就是制定開發(fā)計劃,負責協(xié)調(diào)3.4我國與印度軟件企業(yè)的差距分析Example:軟件中需要一個列表,用來表示處理的事務(wù)。該列表在業(yè)務(wù)繁忙的時候?qū)⒆兊煤艽?。我國從業(yè)人員:用雙向鏈表(先編碼后分析)。印度從業(yè)人員:開一個大的數(shù)組,不用鏈表。(先分析后編碼)Why?小型機的512MB內(nèi)存足夠,數(shù)組訪問方便、效率高。12/9/2022573.4我國與印度軟件企業(yè)的差距分析Example:軟件中需3.4我國與印度軟件企業(yè)的差距分析軟件教育水平比較:印度軟件人員面對同樣的問題有驚人相似的解決方法和程序結(jié)構(gòu)。而我國軟件人員更重視的是解決問題的個人技巧,重視創(chuàng)造性地發(fā)揮(每個人都覺得別人做的軟件不好,自己需要延續(xù)別人的工作時總是將別人貶損一通,然后重新開發(fā),殊不知:程序員只要具備擰好螺絲釘?shù)哪芰涂梢粤?。?2/9/2022583.4我國與印度軟件企業(yè)的差距分析軟件教育水平比較:印度軟3.4我國與印度軟件企業(yè)的差距分析許多公司的項目經(jīng)理不需要懂技術(shù),有些甚至就是MBA或者是領(lǐng)域?qū)<遥皇蔷幋a專家,卻能夠領(lǐng)導一大群素質(zhì)良好的程序員把工作做好,沒有內(nèi)部不團結(jié)的情況。國內(nèi)的項目經(jīng)理如果不懂技術(shù)則后果是可想而知的(內(nèi)部不團結(jié),技術(shù)人員與管理人員做對=〉項目經(jīng)理必須在技術(shù)上能夠壓服下屬)。12/9/2022593.4我國與印度軟件企業(yè)的差距分析許多公司的項目經(jīng)理不需要3.4我國與印度軟件企業(yè)的差距分析印度的編程人員的流動率高達30%!可以想見他們的文檔工作做得多么地好,他們的產(chǎn)品不依賴于任何一個人,誰都可以立即辭職,產(chǎn)品的開發(fā)還是會正常進行。國內(nèi):老板害怕總工,技術(shù)骨干擁兵自重,抗拒管理。任何制定好的計劃都有可能被技術(shù)人員推翻或者跟你消極怠工。12/9/2022603.4我國與印度軟件企業(yè)的差距分析印度的編程人員的流動率高3.4我國與印度軟件企業(yè)的差距分析印度的開發(fā)計劃能夠做到小時級別。如果項目經(jīng)理沒有上班,手下的員工可能不知道干什么。一般的計劃都定到天。(來自于良好的度量)國內(nèi)能夠?qū)⒂媱澏ǖ皆戮筒诲e了,而且給出的月度計劃要么不可能實現(xiàn),要么就可能被取消,開發(fā)人員一般會出現(xiàn)前松后緊的局面。12/9/2022613.4我國與印度軟件企業(yè)的差距分析印度的開發(fā)計劃能夠做到小3.5重視軟件工程管理的必要性印度軟件公司十分重視軟件開發(fā)過程的管理及與其相關(guān)理論與標準的發(fā)展。認為編碼是十分簡單的工作,高中生就可以完成。國內(nèi)軟件公司更重視個人技能的發(fā)揮,忽視了過程的管理。國內(nèi)的個人創(chuàng)造性應(yīng)該在有限的范圍內(nèi)得到發(fā)揮。在滿足國內(nèi)軟件市場需求的同時,拓展國際軟件市場,增加軟件出口量。12/9/2022623.5重視軟件工程管理的必要性印度軟件公司十分重視軟件開發(fā)四、軟件工程技術(shù)的發(fā)展新型軟件開發(fā)模型,如:RUP(RationalUnifiedProcess)、XP(eXtremProgramming)。新的軟件開發(fā)方法:面向?qū)ο筌浖_發(fā)方法。新的軟件開發(fā)工具:UML(UnifiedModelingLanguage)、ROSE(RationalObject-orientedSoftwareEngineering)12/9/202263四、軟件工程技術(shù)的發(fā)展新型軟件開發(fā)模型,如:RUP(Rati四、軟件工程技術(shù)的發(fā)展以軟件體系結(jié)構(gòu)為中心的面向?qū)ο筌浖_發(fā)過程提煉特定應(yīng)用領(lǐng)域的穩(wěn)定需求和易變需求,建立可復用的領(lǐng)域模型。在特定領(lǐng)域模型的基礎(chǔ)上提煉特定應(yīng)用領(lǐng)域的軟件體系結(jié)構(gòu)。進行體系結(jié)構(gòu)設(shè)計分配系統(tǒng)功能到相應(yīng)的構(gòu)建和連接件上存放設(shè)計模式、對象或其它可重用的設(shè)計構(gòu)件。設(shè)計構(gòu)件和連接件復用/存儲12/9/202264四、軟件工程技術(shù)的發(fā)展以軟件體系結(jié)構(gòu)為中心的面向?qū)ο筌浖_發(fā)四、軟件工程技術(shù)的發(fā)展分布式部件對象技術(shù)MicrosoftCOM/DCOM/COM+OMGCORBA(CommonObjectRequestBrokerArchitecture)SunMicrosystemJavaBean12/9/202265四、軟件工程技術(shù)的發(fā)展分布式部件對象技術(shù)12/7/20222四、軟件工程技術(shù)的發(fā)展軟件復用技術(shù)Pattern(analysis,design,process)Framework12/9/202266四、軟件工程技術(shù)的發(fā)展軟件復用技術(shù)12/7/202227五、教學內(nèi)容組織 第一章軟件工程現(xiàn)狀及發(fā)展1.1軟件發(fā)展現(xiàn)狀1.2軟件危機1.3軟件工程及發(fā)展歷程1.4軟件工程框架1.5軟件發(fā)展趨勢及特點12/9/202267五、教學內(nèi)容組織 第一章軟件工程現(xiàn)狀及發(fā)展12/7/202五、教學內(nèi)容組織 第二章軟件生命周期過程2.1軟件生命周期2.2基本過程2.3支持過程2.4組織過程12/9/202268五、教學內(nèi)容組織 第二章軟件生命周期過程12/7/2022五、教學內(nèi)容組織 第三章軟件過程改進的CMM/PSP/TSP模型3.1CMM產(chǎn)生背景3.2CMM內(nèi)容及管理透視3.3CMM組織結(jié)構(gòu)3.4CMM應(yīng)用3.5CMM與ISO90013.6PSP過程組織結(jié)構(gòu)3.7TSP過程及角色12/9/202269五、教學內(nèi)容組織 第三章軟件過程改進的CMM/PSP/TS五、教學內(nèi)容組織 第四章軟件質(zhì)量4.1軟件質(zhì)量概念4.2軟件質(zhì)量屬性4.3軟件質(zhì)量度量4.4軟件質(zhì)量保證4.5質(zhì)量管理和質(zhì)量保證的實施12/9/202270五、

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論