承認不斷改進軟件工程實踐的必要性。軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。在軟件工程中,軟件工具與環(huán)境對軟件過程的支持頗為重要。軟件工程項目的質(zhì)量與開銷直接取決于對軟件工程所提供的支撐質(zhì)量和效用。因此,僅當軟件過程予以有效管理時,才能實現(xiàn)有效的軟件工程。
軟件工程包括什么
軟件工程的定義一直缺乏統(tǒng)一的定義。很多學者和組織都給出了自己的定義。他們利用現(xiàn)代科技知識設計和構建計算機程序以及開發(fā)、運行和維護這些程序所必需的相關文檔。IEEE軟件工程是一種開發(fā)、運行、維護和修復軟件的系統(tǒng)方法。FritzBauer建立并使用完善的工程原理,通過一系列經(jīng)濟的手段獲得可以在實際機器上有效運行的可靠軟件。目前,一個相對公認的定義認為,軟件工程是如何以一種系統(tǒng)的、標準化的、可量化的過程方法來開發(fā)和維護軟件,以及如何將經(jīng)過時間檢驗證明的正確的管理技術與目前可用的最佳技術相結(jié)合的研究和應用。軟件工程的內(nèi)容軟件工程的主要內(nèi)容是軟件開發(fā)技術和軟件工程管理。軟件開發(fā)技術包括軟件工程方法論、軟件工具和軟件開發(fā)環(huán)境,軟件工程管理包括軟件工程經(jīng)濟學和軟件管理。《軟件工程基本原理》B.Boehm,著名軟件工程專家,綜合了相關專家學者的意見,總結(jié)了多年開發(fā)軟件的經(jīng)驗。1983年,他在一篇論文中提出了軟件工程的七個基本原則。(1)用分階段的生命周期計劃進行嚴格管理。(2)堅持階段復習。(3)實施嚴格的產(chǎn)品控制。(4)采用現(xiàn)代編程技術。(5)軟件工程的結(jié)果應該被清楚地評審。(6)開發(fā)團隊的人員要少而精。(7)承認持續(xù)改進軟件工程實踐的必要性。B.Boehm指出,遵循前六個基本原則可以實現(xiàn)軟件的工程化生產(chǎn)。根據(jù)第七條原則,既要積極采用新的軟件技術,又要注意不斷總結(jié)經(jīng)驗。軟件工程()的框架可以概括為目標、過程和原則。(1)軟件工程的目標是生產(chǎn)具有正確性、可用性和適當費用的產(chǎn)品。正確性是指軟件產(chǎn)品實現(xiàn)預期功能的程度??捎眯允侵杠浖幕窘Y(jié)構、實現(xiàn)和文檔對用戶可用的程度。適當性是指軟件開發(fā)和運行的總體支出滿足用戶要求的程度。要實現(xiàn)這些目標,在理論和實踐上都有許多問題需要解決,這些問題對工藝、工藝模型和工程方法的選擇形成了制約。(2)軟件工程過程:生產(chǎn)一個最終能夠滿足需求并實現(xiàn)工程目標的軟件產(chǎn)品所需的步驟。軟件工程過程主要包括開發(fā)過程、運行過程和維護過程。它們涵蓋需求、設計、實施、驗證和維護活動?;顒影▎栴}分析和需求分析。問題分析得到需求定義,也稱為軟件需求規(guī)格說明書。需求分析和生成功能規(guī)范。設計活動通常包括概要設計和詳細設計。設計并建立整個軟件體系結(jié)構,包括子系統(tǒng)、模塊及相關層次的描述,以及各模塊的接口定義。詳細設計生成程序員可用的模塊描述,包括每個模塊中的數(shù)據(jù)結(jié)構描述和處理描述。活動將設計結(jié)果轉(zhuǎn)換成可執(zhí)行的程序代碼。確認活動貫穿整個開發(fā)過程,實現(xiàn)完成后的確認,以確保最終產(chǎn)品滿足用戶的要求。維護活動包括使用過程中的擴展、修改和改進。伴隨上述流程的,還有管理流程、支持流程、培訓流程等。(3)軟件工程原則(Principles of software engineering)是指圍繞工程設計、工程支持和工程管理,在軟件開發(fā)過程中必須遵循的原則。軟件必須遵循哪些原則?圍繞工程設計、工程支持和工程管理,提出了以下四個基本原則:(1)選擇合適的開發(fā)模式。這個原理和系統(tǒng)設計有關。在系統(tǒng)設計中,軟件要求、硬件要求等因素是相互影響的