軟體工程的目標與常用模型

2021-05-09 18:15:52 字數 1680 閱讀 5646

軟體

工程的目標是提高軟體的質量與生產率,最終實現軟體的工業化生產。質量是 軟體需求方最關心的問題,使用者即使不圖物美價廉,也要求個貨真價實。生產率是軟體 **方最關心的問題,老闆和員工都想用更少的時間掙更多的錢。質量與生產率之間有 著內在的聯絡,高生產率必須以質量合格為前提。如果質量不合格,對供需雙方都是壞 事情。從短期效益看,追求高質量會延長軟體開發時間並且增大費用,似乎降低了生產 率。從長期效益看,高質量將保證軟體開發的全過程更加規範流暢,大大降低了軟體的 維護代價,實質上是提高了生產率,同時可獲得很好的信譽。質量與生產率之間不存在 根本的對立,好的軟體工程方法可以同時提高質量與生產率。    軟體供需雙方的代表能在餐桌上談笑風生,歸功於第一線開發人員的辛勤工作。質 量與生產率的提高就指望程式設計師與程式經理。對開發人員而言,如果非得在質量與生產 率之間分個主次不可,那麼應該是質量第一,生產率第二。這是因為:(1)質量直接體 現在軟體的每段程式中,高質量自然是開發人員的技術追求,也是職業道德的要求。(2) 高質量對所有的使用者都有價值,而高生產率只對開發方有意義。(3)如果一開始就追求 高生產率,容易使人急功近利,留下隱患。寧可進度慢些,也要保證每個環節的質量, 以圖長遠利益。

軟體的質量因素很多,如正確性,效能、可靠性、容錯性、易用性、靈活性、可擴 充性、可理解性、可維護性等等。有些因素相互重疊,有些則相牴觸,真要提高質量可 不容易啊!

軟體工程的主要環節有:人員管理、專案管理、可行性與需求分析、系統設計、程 序設計、測試、維護等,如圖 1.1 所示。

圖 1.1    軟體工程的主要環節

軟體工程模型建議用一定的流程將各個環節連線起來,並可用規範的方式操作全過 程,如同工廠的生產線。常見的軟體工程模型有:線性模型(圖 1.2),漸增式模型(圖1.3),螺旋模型,快速原型模型,形式化描述模型等等  [pressmam 1999, sommerville 1992]。

圖 1.2    軟體工程的線性模型

圖 1.3    軟體工程的漸增式模型

最早出現的軟體工程模型是線性模型(又稱瀑布模型)。線性模型太理想化,太單純, 已不再適合現代的軟體開發模式,幾乎被業界拋棄。偶而被人提起,都屬於被貶物件, 未被留一絲惋惜。但我們應該認識到,「線性」是人們最容易掌握並能熟練應用的思想方 法。當人們碰到乙個複雜的「非線性」問題時,總是千方百計地將其分解或轉化為一系 列簡單的線性問題,然後逐個解決。乙個軟體系統的整體可能是複雜的,而單個子程式 總是簡單的,可以用線性的方式來實現,否則幹活就太累了。線性是一種簡潔,簡潔就是美。當我們領會了線性的精神,就不要再呆板地套用線性模型的外表,而應該用活它。 例如漸增式模型實質就是分段的線性模型,如圖  1.3  所示。螺旋模型則是接連的彎曲了 的線性模型。在其它模型中都能夠找到線性模型的影子。

軟體工程的目標與常用模型 http://soa.5d6d.com/viewthread.php?tid=853&fromuid=1

被遺忘的課程(四) 軟體工程的目標與常用模型

三 軟體工程的目標與常用模型 軟體工程的目標是提高軟體的質量與生產率,最終實現軟體的工業化生產。質量是軟體需求方最關心的問題,使用者即使不圖物美價廉,也要求個貨真價實。生產率是軟體 方最關心的問題,老闆和員工都想用更少的時間掙更多的錢。質量與生產率之間有著內在的聯絡,高生產率必須以質量合格為前提。如...

軟體工程 開發模型軟體工程 開發模型

瀑布模式 螺旋模型 快速原型模式 增量模式 噴泉模型 演化模型 特點 推遲實現的觀點 質量保證 缺點 限制條件 優點 缺點 很難讓使用者確信這種演化方法的結果是可以控制的.建設週期長,而軟體技術發展比較快,所以經常出現軟體開發完畢後,和當前的技術水平有了較大的差距,無法滿足當前使用者需求.核心 在於...

軟體工程模型

這些牆很有趣。剛入獄的時候,你痛恨周圍的高牆 慢慢地,你習慣了生活在其中 最終你會發現自己不得不依靠它而生存。這就叫體制化。肖申克的救贖 瀑布模型 wate ll model 是乙個專案開發架構,開發過程是通過設計一系列階段順序展開的,從系統需求分析開始直到產品發布和維護,每個階段都會產生迴圈反饋,...