軟件工程實踐介紹_第1頁
軟件工程實踐介紹_第2頁
軟件工程實踐介紹_第3頁
軟件工程實踐介紹_第4頁
軟件工程實踐介紹_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件工程介紹關(guān)于一個項目的探討軟件工程概述軟件工程的歷史和現(xiàn)狀軟件開發(fā)中的過程因素軟件開發(fā)中的技術(shù)因素軟件開發(fā)中的管理因素軟件開發(fā)中的人的因素案例分析:在項目中實踐軟件工程規(guī)范軟件開發(fā)關(guān)于一個項目的探討在這個項目中,您發(fā)現(xiàn)了哪些問題?軟件開發(fā)中的典型問題缺乏管理控制失控的員工管理缺乏自動代碼控制挫傷積極性缺乏溝通功能蔓延銀彈綜合癥需求鍍金不現(xiàn)實的預(yù)期項目后期加入人員充滿想象過早編碼缺乏有效的項目支持英雄主義人員素質(zhì)低缺乏團隊精神缺乏計劃缺乏質(zhì)量保證在壓力下放棄計劃前期活動不合要求缺乏風(fēng)險管理缺乏用戶參與設(shè)計低劣軟件工程概述議程軟件工程的歷史和現(xiàn)狀軟件開發(fā)中的過程因素軟件工程中的技術(shù)因素軟件工程中的管理因素軟件工程中的人的因素軟件危機軟件項目:平均超時:222%平均超支:189%平均滯后于最終用戶的需求27個月80%的資源用于維護解決軟件危機的探索“銀彈”的故事質(zhì)量\過程標(biāo)準(zhǔn)CMM\CMMIISO9001,ISO9000-3,ISO15504,ISO12207…開發(fā)方法論RUPXP…開發(fā)技術(shù):面向?qū)ο蠹夹g(shù)軟件測試技術(shù)CASE…軟件工程的歷史和現(xiàn)狀軟件危機軟件工程思想軟件質(zhì)量管理采用工程的概念、原理、技術(shù)和方法來開發(fā)和維護軟件,旨在生產(chǎn)滿足用戶需要、及時交付、不超過預(yù)算和無故障的軟件的學(xué)科。ISO、CMM質(zhì)量檢驗與統(tǒng)計質(zhì)量管理質(zhì)量保證全面質(zhì)量管理質(zhì)量管理的發(fā)展歷史:軟件過程管理全過程管理質(zhì)量認(rèn)證軟件工程不是“銀彈”關(guān)于“失敗”的定義:進度落后不滿足需求超出預(yù)算缺陷太多軟件開發(fā)中的一些基本問題軟件越來越復(fù)雜很難令一個人完全理解很難用所有用戶都理解的方式表達業(yè)務(wù)驅(qū)動和壓力縮短的業(yè)務(wù)周期加劇的競爭用戶期望的不斷增長軟件的“軟”特性進度、預(yù)算、成功過多的變化基本問題(ii)對發(fā)生變化的靈活性適應(yīng)市場突變的能力設(shè)計是否足夠穩(wěn)定,當(dāng)變化出現(xiàn)時核心設(shè)計不受影響多數(shù)項目不可預(yù)知對度量缺乏了解缺乏衡量過程的準(zhǔn)則需求蔓延補丁和返工進度永遠(yuǎn)是90%基本問題(iii)缺乏合格的人才…盡管有最好的過程和工具!管理人是最困難的軟件復(fù)用問題架構(gòu)/設(shè)計/模型估算過程團隊過程計劃和跟蹤過程和報告軟件構(gòu)建和管理評審和測試在您的軟件開發(fā)管理工作中,您最關(guān)注的問題是什么?成功的關(guān)鍵過程技術(shù)管理人管理人過程技術(shù)軟件開發(fā)中的過程因素軟件過程的發(fā)展AdHocWaterfallSpiralIncrementalIterativeRAD/JADUnifiedProcessExtremeProgramming(XP)Feature-DrivenDevelopment開發(fā)組織經(jīng)常關(guān)注的問題?開發(fā)過程方面如何建立規(guī)范的開發(fā)過程?如何保證過程的實際效果?如何提高過程的執(zhí)行效率?產(chǎn)品規(guī)模方面如何控制產(chǎn)品和項目的規(guī)模?如何控制產(chǎn)品和項目的穩(wěn)定性?項目成本方面如何合理安排人員?如何降低溝通成本?項目進度方面里程碑完成情況關(guān)鍵路徑的進展情況工作任務(wù)進展情況產(chǎn)品質(zhì)量方面如何評價質(zhì)量?如何控制質(zhì)量?外包項目的質(zhì)量?技術(shù)方面如何保證技術(shù)真正在項目中發(fā)揮作用?客戶滿意度方面如何建立與客戶進行有效溝通的機制?客戶關(guān)注的是什么?客戶關(guān)注以下方面:軟件質(zhì)量開發(fā)成本開發(fā)進度方法與技術(shù)開發(fā)過程規(guī)模和穩(wěn)定性資源和成本日程和進度客戶滿意度產(chǎn)品質(zhì)量軟件開發(fā)中的問題分析過程ProcessComplianceProcessEfficiencyProcessEffectiveness技術(shù)TechnologySuitabilityTechnologyVolatility規(guī)模和穩(wěn)定性FunctionalSizeandStabilityPhysicalSizeandStability產(chǎn)品質(zhì)量EfficiencyReliabilityFunctionalCorrectnessUsabilityPortabilityMaintainability日程和進度MilestoneCompletionCriticalPathPerformanceWorkUnitProgressIncrementalCapability資源和成本FinancialPerformancePersonnelEffortEnvironmentAndSupportResources客戶滿意度CustomerSupportCustomerFeedback軟件過程改進軟件過程改進的研究成果:SEICMM與CMMI-能力成熟度模型ISO15504:SPICE-軟件過程改進以及能力評估BootstrapISO12207-生存周期過程CMM簡介CMM(CapabilityMaturityModel)CMM發(fā)展歷程1986年11月,SEI應(yīng)美國政府的要求,在Mitre公司的幫助下,于1987年9月開發(fā)了一套軟件能力成熟度框架和一套軟件成熟度問卷,用來評估軟件供應(yīng)商的能力。1991年,SEI在此基礎(chǔ)上,推出了CMM1.0。1993年,CMM1.1。預(yù)計1997年11月完成CMM2.0,但是,美國國防部要求SEI推遲CMM1.1,先完成CMMI(CMMIntegration)。2000年,發(fā)布CMMI-SE/SW/IPPD1.0SE:EIA/IS731,系統(tǒng)工程能力模型SW:SW-CMM2.0草案IPPD:IPDCMM0.98,集成化產(chǎn)品和過程開發(fā)初始級(1)各級的關(guān)鍵過程域(KeyProcessAreas)需求管理軟件項目策劃軟件項目跟蹤和監(jiān)督軟件子合同管理軟件質(zhì)量保證軟件配置管理可重復(fù)(2)軟件質(zhì)量管理定量過程管理缺陷預(yù)防技術(shù)變更管理過程變更管理已定義(3)持續(xù)優(yōu)化(5)定量管理(4)組織過程焦點組織過程定義培訓(xùn)大綱集成軟件管理組間協(xié)調(diào)軟件產(chǎn)品工程同行評審CMM1.1的結(jié)構(gòu)CMM等級1“Justdoit.”Adhocprocess.ActivityResultsToproduceCMM等級2“Thinkbeforeact,andthinkafteract,justtomakesurethatyoudiditright.”repeatableActivityResultsToproduceEvaluationPreparationInputtoToimproveRequirementManagementSoftwareProjectPlanningSoftwareSubcontractManagementConfigurationManagementSoftwareProjectTrackingandOversightSoftwareQualityAssuranceSoftwareSubcontractManagementConfigurationManagementCMM等級3“Useyourlessonslearned”DefinedsystemActivityResultsToproduceEvaluationPreparationInputtoToimproveStandardsInputtoInputtoOrganizationProcessFocusOrganizationProcessDefinitionIntergroupCoordinationTrainingProgramIntegratedSoftwareManagementSoftwraeProductEngineeringPeerReviewsCMM等級4“Predicttheresultsyouneedandexpect,andthancreateopportunitiestogetthoseresults(Createself-fulfillingprophecies).”QuantitativelymanagedsystemActivityResultsToproduceEvaluationPreparationInputtoToimproveStandardsInputtoInputtoToforecastSoftwareQualityManagementQuantitativeProcessManagementCMM等級5“Createlessonslearned,anduselessonslearnedtocreatemorelessonslearned,andusemorelessonslearnedtocreateevenmorelessonslearned,anduseevenmorelessonslearnedticreate…etc”ContinuouslyoptimizingsystemActivityResultsToproduceEvaluationPreparationInputtoToimproveStandardsInputtoInputtoToforecastToimproveDefectPreventionTechnologyChangeManagementProcessChangeManagement每個成熟度等級上的軟件過程不同成熟度等級顯示的過程能力軟件開發(fā)中的技術(shù)因素技術(shù)的發(fā)展Languages:Assembler,Procedural,Structured,

Object-Oriented3GL/4GL/CASELifeCycleToolsRequirements,Architecting,Building,TestingConfigurationManagement/VersionControlRound-tripEngineering(manualsteps)Simultaneousround-triptoolsModeling:Structured,DFD,Coad,OMT,Booch,UMLMDA軟件開發(fā)中被忽視了的技術(shù)在過去的軟件開發(fā)中,過分強調(diào)編程技巧而忽視了以下關(guān)鍵技術(shù):需求分析和定義體系結(jié)構(gòu)設(shè)計軟件質(zhì)量保證和質(zhì)量控制技術(shù)軟件開發(fā)中的管理因素“好的管理比好的技術(shù)更重要!”項目管理配置管理質(zhì)量管理需求管理軟件項目管理規(guī)范管理建立正確、有效、靈活的管理體系以人為本找到合適的人員,發(fā)展和激勵人員有效溝通在員工之間,員工與客戶、合作伙伴之間建立無限制、最有效的溝通追求卓越不斷創(chuàng)新,用最好的技術(shù)、方法讓每個人工作的價值最大化共享數(shù)據(jù)問題加倍維護的問題同時更改的問題SCM公共服務(wù)器文件存儲單個工作區(qū)1962年,第一個SCM標(biāo)準(zhǔn)誕生:AFSCM375-1SCM-軟件配置管理的產(chǎn)生原因人員溝通問題共享數(shù)據(jù)問題多重維護問題同步更新問題Repeatable(2)Defined(3)Managed(4)Optimized(5)Initial(1)ChaoticDisciplinedProcessStandard,ConsistentProcessPredictableProcessContinuallyImprovingProcess61.5%oforganizations13.1%23.3%1.7%0.4%SCM是CMM2級的一個KPASCM是CMM的SupportProcess1、ANSI/IEEEStd-828-19982、DOD-Std-2167A3、ISO100074、GB/T12505-905、CMMCapabilityMaturityModel軟件配置管理的地位Measurement&AnalysisALLProcessAreasProcess&ProductQualityAssuranceConfigurationManagement資料來源(CMMI-SE/SW/IPPD,V1.1)QualityandnoncomplianceissuesProcessesandwork

products,standardsandproceduresInformationneedsMeasurements,analysesConfigurationitems,ChangerequestsBaselines,auditreportsSCM在CMM中的地位配置標(biāo)識配置控制配置審核狀態(tài)統(tǒng)計SCM軟件配置管理的功能SCM是軟件設(shè)計、開發(fā)和發(fā)布的基礎(chǔ)SCM能在建立應(yīng)用時提高生產(chǎn)力和效率發(fā)布管理分發(fā)安裝版本管理建立管理變更請求管理SCM的本質(zhì)版本管理建立管理變更請求發(fā)布管理分發(fā)過程和項目管理影響分析需求管理測試工具幫助臺安裝SCM的本質(zhì)計劃分析設(shè)計代碼測試維護}可行性報告功能說明書原型分析模型概要設(shè)計詳細(xì)設(shè)計源代碼目標(biāo)代碼測試用例測試過程日志記錄軟件配置管理1.01.11.21.31.01.11.21.0file1.c_vfile2.c_vfile3.c_vRelease1.0LatestSCM的效果PROJECTAPROJECTBPROJECTCDOSUNIXWIN/NTSERVERMAINFRAMELANOS/2管理所有軟件資產(chǎn)管理各種不同的項目保存文件不同時期的版本管理各種類型文件File1File2File3"Release1.1""CR396""Release1.0"1.01.11.21.31.41.51.61.01.11.21.31.01.11.21.31.41.51.6版本清晰可見7/1/834/22/9011/18/939/21/942/22/943/7/928/24/917/30/87TODAY扴3/8/92???NOTLIKETHIS!實現(xiàn)軟件復(fù)用,降低成本QA產(chǎn)品測試開發(fā)規(guī)范的工作流程和明確的角色分工

依靠過程的開發(fā)而非依靠個人開發(fā)過程對管理層清晰可見有效處理變更提高軟件開發(fā)的生產(chǎn)力規(guī)范軟件開發(fā)過程質(zhì)量提高軟件質(zhì)量降低軟件的維護成本更好的保證軟件質(zhì)量減少錯誤/bugs

更快的定位問題并及時更正bugs確保系統(tǒng)建立的正確性加快了產(chǎn)品的上市速度提高客戶滿意度實現(xiàn)軟件產(chǎn)品的完整性、一致性和可控性提供關(guān)鍵的決策信息通過基線報告掌握項目的進度了解軟件資產(chǎn)的狀態(tài)掌握過程情況,發(fā)現(xiàn)瓶頸環(huán)節(jié)對問題和變更進行統(tǒng)計分析(級別、類型、風(fēng)險、成本)產(chǎn)品成熟度分析現(xiàn)存問題統(tǒng)計缺陷密度分析……Definethe

ProcessImprovethe

ProcessPlanthe

ProjectControlthe

ProjectDothe

Work為過程改進打下基礎(chǔ)管理所有軟件資產(chǎn)從關(guān)注變更轉(zhuǎn)向關(guān)注過程需求的本質(zhì):業(yè)務(wù)(用戶)、系統(tǒng)、軟件需求業(yè)務(wù)需求系統(tǒng)需求特定的解決方案問題解決方案用戶需要什么?為什么?為滿足用戶需要,系統(tǒng)應(yīng)當(dāng)做什么?系統(tǒng)如何被構(gòu)造?軟件需求在一個系統(tǒng)中,軟件應(yīng)當(dāng)做什么?分析設(shè)計人員用戶開發(fā)人員項目經(jīng)理質(zhì)量保證與需求相關(guān)的風(fēng)險業(yè)務(wù)需求系統(tǒng)需求特定的解決方案問題解決方案用戶需要什么?為什么?為滿足用戶需要,系統(tǒng)應(yīng)當(dāng)做什么?系統(tǒng)如何被構(gòu)造?軟件需求在一個系統(tǒng)中,軟件應(yīng)當(dāng)做什么?開發(fā)團隊不理解用戶業(yè)務(wù)需求不斷變化開發(fā)人員不理解需求系統(tǒng)難維護項目規(guī)模無法準(zhǔn)確估算需求變更無法控制修正錯誤的成本引入缺陷的階段需求架構(gòu)詳細(xì)設(shè)計構(gòu)造構(gòu)造需求架構(gòu)詳細(xì)設(shè)計發(fā)布修正錯誤的成本修正缺陷的階段需求工程過程需求獲取需求分析需求定義需求評審需求實現(xiàn):設(shè)計、編碼、測試…需求開發(fā)活動建模業(yè)務(wù)建模面向過程建模、面向?qū)ο蠼P枨蠊芾硇枨蠼⑿枨蟾欁兏刂菩枨蠖攘啃枨蠊芾淼膶嵤┬Ч?guī)范需求開發(fā)過程保證所有與項目有關(guān)人員對需求的共同理解有效地控制需求變更保證項目計劃以及其它工作產(chǎn)品與需求一致軟件質(zhì)量軟件質(zhì)量的特性判斷質(zhì)量高低依賴于不同的時間、地點和環(huán)境軟件質(zhì)量的定義決定質(zhì)量的因素:產(chǎn)品:不僅僅是滿足用戶的目的還要能夠滿足用戶不斷變化的需要生產(chǎn)過程:溝通的機制:為過程提交物的思考、創(chuàng)建、記錄和共享提供了標(biāo)準(zhǔn)建立了產(chǎn)品使用者和生產(chǎn)者之間的交流上述三者的持續(xù)改進質(zhì)量優(yōu)先級質(zhì)量管理的層次質(zhì)量管理的實施效果通過監(jiān)控軟件的開發(fā)過程來保證產(chǎn)品的質(zhì)量;保證生產(chǎn)出的軟件和軟件開發(fā)過程符合相應(yīng)的標(biāo)準(zhǔn)與規(guī)程;保證軟件產(chǎn)品、軟件過程中存在的不符合問題得到處理,能夠在必要時將問題反映給高級管理者。軟件開發(fā)中的管理與技術(shù)活動項目管理質(zhì)量管理需求管理需求開發(fā)系統(tǒng)設(shè)計編碼測試管理和控制(過程、文件和數(shù)據(jù))監(jiān)督提供信息指導(dǎo)和控制技術(shù)活動配置管理監(jiān)督和控制提供信息監(jiān)

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論