軟體工程目標以及軟體工程實踐體驗!

2021-08-26 04:33:09 字數 3016 閱讀 6874

軟體工程的目標

生產具有正確性、可用性以及開銷合宜的產品。正確性指軟體產品達到預期功能的程度。可用性指軟體基本結構、實現及文件為使用者可用的程度。開銷合宜是指軟體開發、執行的整個開銷滿足使用者要求的程度。這些目標的實現不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。

軟體工程活動是「生產乙個最終滿足需求且達到工程目標的軟體產品所需要的步驟」。主要包括需求、設計、實現、確認以及支援等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟體需求規約。需求分析生成功能規約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟體體系結構,包括子系統、模組以及相關層次的說明、每一模組介面定義。詳細設計產生程式設計師可用的模組說明,包括每一模組中資料結構說明及加工描述。實現活動把設計結果轉換為可執行的程式**。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品滿足使用者的要求。支援活動包括修改和完善。伴隨以上活動,還有管理過程、支援過程、培訓過程等。

基於目前trufun公司成熟的需求管理工具trufun bacon和case工具trufun plato、trufun cicero、trufun kant系列工具,誠徵軟體工程實踐合作夥伴,要求如下:

1、開發團隊有成熟的軟體工程管理體系

2、需要引入乙個統一平台對現有成熟軟體工程管理體系進行控制和管理實現

3、可針對自身進行相關過程的定製和裁剪

特別是針對特殊行業的研究院和軍隊研究所優先考慮!歡迎有興趣的團隊來信交流具體合作細節 [email protected]

軟體工程的原則

軟體工程的原則是指圍繞工程設計、工程支援以及工程管理在軟體開發過程中必須遵循的原則。軟體工程的原則有以下四項基本原則:

1)選取適宜開發范型。該原則與系統設計有關。在系統設計中,軟體需求、硬體需求以及其他因素之間是相互制約、相互影響的,經常需要權衡。因此,必須認識需求定義的易變性,採用適宜的開發范型予以控制,以保證軟體產品滿足使用者的要求。

2)採用合適的設計方法。在軟體設計中,通常要考慮軟體的模組化、抽象與資訊隱蔽、區域性化、一致性以及適應性等特徵。合適的設計方法有助於這些特徵的實現,以達到軟體工程的目標。

3)提供高質量的工程支援。「工欲善其事,必先利其器」。在軟體工程中,軟體工具與環境對軟體過程的支援頗為重要。軟體工程專案的質量與開銷直接取決於對軟體工程所提供的支撐質量和效用。

4)重視開發過程的管理。軟體工程的管理,直接影響可用資源的有效利用,生產滿足目標的軟體產品,提高軟體組織的生產能力等問題。因此,僅當軟體過程得以有效管理時,才能實現有效的軟體工程。

這一軟體工程框架告訴我們,軟體工程的目標是可用性、正確性和合算性;實施乙個軟體工程要選取適宜的開發范型,要採用合適的設計方法,要提供高質量的工程支撐,要實行開發過程的有效管理;軟體工程活動主要包括需求、設計、實現、確認和支援等活動,每一活動可根據特定的軟體工程,採用合適的開發范型、設計方法、支援過程以及過程管理。根據軟體工程這一框架,軟體工程學科的研究內容主要包括:軟體開發范型、軟體開發方法、軟體過程、軟體工具、軟體開發環境、計算機輔助軟體工程(case) 及軟體經濟學等。

軟體工程的七條原理:

1、用分階段的生命週期計畫嚴格管理

這一條是吸取前人的教訓而提出來的。統計表明,50%以上的失敗專案是由於計畫不周而造成的。在軟體開發與維護的漫長生命週期中,需要完成許多性質各異的工作。這條原理意味著,應該把軟體生命週期分成若干階段,並相應制定出切實可行的計畫,然後嚴格按照計畫對軟體的開發和維護進行管理。 玻姆認為,在整個軟體生命週期中應指定並嚴格執行6類計畫:專案概要計畫、里程碑計畫、專案控制計畫、產品控制計畫、驗證計畫、執行維護計畫。

2、堅持進行階段評審

統計結果顯示: 大部分錯誤是在編碼之前造成的,大約佔63%錯誤發現的越晚,改正它要付出的代價就越大,要差2到3個數量級。 因此,軟體的質量保證工作不能等到編碼結束之後再進行,應堅持進行嚴格的階段評審,以便盡早發現錯誤。

3、實行嚴格的產品控制

開發人員最痛恨的事情之一就是改動需求。但是實踐告訴我們,需求的改動往往是不可避免的。這就要求我們要採用科學的產品控制技術來順應這種要求。也就是要採用變動控制,又叫基準配置管理。當需求變動時,其它各個階段的文件或**隨之相應變動,以保證軟體的一致性。

4、採納現代程式設計技術

六、七時年代的結構化軟體開發技術,到最近的物件導向技術,從第

一、第二代語言,到***語言,人們已經充分認識到:方法大似氣力。採用先進的技術即可以提高軟體開發的效率,又可以減少軟體維護的成本。

5、結果應能清楚地審查

軟體是一種看不見、摸不著的邏輯產品。軟體開發小組的工作進展情況可見性差,難於評價和管理。為更好地進行管理,應根據軟體開發的總目標及完成期限, 盡量明確地規定開發小組的責任和產品標準,從而使所得到的標準能清楚地審查。

6、開發小組的人員應少而精

開發人員的素質和數量是影響軟體質量和開發效率的重要因素,應該少而精。  這一條基於兩點原因:高素質開發人員的效率比低素質開發人員的效率要高幾倍到幾十倍,開發工作中犯的錯誤也要少的多; 當開發小組為n人時,可能的通訊通道為n(n-1)/2, 可見隨著人數n的增大,通訊開銷將急劇增大。

7、承認不斷改進軟體工程實踐的必要性

遵從上述六條基本原理,就能夠較好地實現軟體的工程化生產。但是,它們只是對現有的經驗的總結和歸納,並不能保證趕上技術不斷前進發展的步伐。因此,玻姆提出應把承認不斷改進軟體工程實踐的必要性作為軟體工程的第七條原理。根據這條原理,不僅要積極採納新的軟體開發技術,還要注意不斷總結經驗,收集進度和消耗等資料,進行出錯型別和問題報告統計。這些資料既可以用來評估新的 軟體技術的效果,也可以用來指明必須著重注意的問題和應該優先進行研究的工具和技術。

軟體工程 軟體工程概述

一.軟體 定義 計算機系統中的程式及其文件 程式 計算任務的處理物件和處理規則的描述 文件 為了便於了解程式所需的闡明性資料 特點 軟體的種類 按功能劃分 系統軟體 支援軟體 應用軟體 二.軟體工程的起源和概念 早期電腦程式 現在人們認為 在資訊產業中,微電子是基礎,計算機和網路是載體,軟體是核心 ...

《軟體工程方法與實踐》 2 5 軟體工程活動

在軟體工程的概念被提出來之前,開發人員錯誤地認為,軟體就是開發活動,或者極端地認為其就是編碼,至於分析和設計等都是次要的。隨著軟體規模的不斷增大,軟體開發活動中暴露出很多問題。軟體工程是為克服這些問題而被提出,並在實踐中不斷地探索它的原理 技術和方法。軟體工程的工程化思想讓開發人員看到,軟體工程活動...

2020軟體工程作業06 軟體工程實踐總結作業

這個作業屬於哪個課程 這個作業要求在 這個作業的目標 軟體工程實踐作業總結 作業正文 本文其他參考文獻 軟體工程 1 對比開篇部落格你對課程目標和期待,希望通過實踐鍛鍊,增強計算機專業的能力和就業競爭力 對比目前的所學所練所得,在哪些方面達到了你的期待和目標,哪些方面還存在哪些不足,為什麼?記得在開...