走出軟件質量誤區
發表于:2007-06-11來源:作者:點擊數:
標簽:
中國歷史上曾經有過“土布”和“洋布”之爭,流水線和機器化生產帶來的產品“洋布”質量好、價格低,對手工作坊生產的、無法保證質量穩定性的“土布”帶來了極大的沖擊,并且直接導致了當時的手工紡紗和手工織布的勞動者破產——眾所周知,在制造業,機器的工
中國歷史上曾經有過“土布”和“洋布”之爭,流水線和機器化生產帶來的產品“洋布”質量好、價格低,對手工作坊生產的、無法保證質量穩定性的“土布”帶來了極大的沖擊,并且直接導致了當時的手工紡紗和手工織布的勞動者破產——眾所周知,在制造業,機器的工 藝要比人可靠得多。
而另外一個方面,在人的創造性因素占據很高地位的軟件產業,要保證軟件質量,也必須能夠將軟件的
開發規范化、標準化,然后才能高質量的規?;?。小規模的軟件或許可以依賴一個或者數個人員和開發小組的創造性,就可以保證很好的質量。但是,當軟件系統的復雜性急劇增長、項目環境趨于復雜、軟件
需求的變更日益頻繁和流程人員不斷變化的時候,軟件企業就面臨著高度的挑戰。
要在這種情況下保證軟件的質量并且促進企業的發展,中國的軟件企業就必須擺脫“土布”制造者們曾經踏過的誤區—不是千方百計地抵制“洋布”,而是應該學習其先進的生產理念和質量控制的方法論,引進流程化的管理,從管理和技術上成長。
開發是工程 不是藝術 “中國的軟件業不是缺少愛因斯坦,而是有太多的愛因斯坦?!?中創
軟件工程股份有限公司董事長兼總裁景新海表示。很多人將軟件開發當成藝術創作,不按照軟件工程的規范、隨心所欲地進行軟件開發等,這是中國大多數軟件開發人員的通病。
然而,軟件開發畢竟不是藝術,而應該是一項縝密的工程。
作為一個軟件開發的公司,如果沒有一致的過程管理辦法,對于公司而言就可能是一場災難。沒有一致的過程管理辦法,意味著企業沒有開發管理標準。開發人員將只能按照自己的設想進行軟件開發,這就不是一項工程行為,而使每個員工的藝術行為。
盡管軟件開發中,有些局部需要充分發揮想象力,但是就軟件開發的全過程整體而言,如果希望組織大量開發人員進行規?;_發,就必須把它作為工程來進行。因此,絕對不應該過于注重創造能力而忽略了開發流程的約束力。開發軟件最終的目標在于客戶負責,要使得所開發出來的產品能最終合用戶需要,而不是開發人員創意的無限制自由發揮。
因此,必須引入軟件開發的過程管理規范來提升軟件企業的過程質量。而其過程質量可以通過軟件過程成熟度來決定,例如CMM/
CMMI的級別,這是很多印度軟件公司能夠獲取外包項目的重要原因,也是中國的軟件企業爭先恐后試圖通過CMM/CMMI評估的關鍵理由。
但是,真正能夠保證軟件質量的并不是評估證書本身,而是軟件企業能夠達到成熟等級的方法、工具及軟件開發平臺。因此,如同汽車生產需要引入生產線一樣,必須采用合適的方法、工具和平臺,真正的提高企業的軟件生產過程的成熟度。
質量在全過程 不僅是測試 “軟件開發的過程猶如蓋房子,如果地基沒有做好,那么房子蓋完之后的第一件事情就是拆房子,而不是測試房子的
性能?!?IBM大中華區軟件集團
Rational軟件總經理陳致平表示。要保證軟件開發的質量,必須通過一定的管理模型,例如CMM/CMMI、六西格瑪、
ISO9000或者
RUP,進行全過程的管理,而測試只是最后一個層次。
在軟件開發的生命周期中,不僅是
測試人員必須承擔軟件質量的責任,每一個環節都必須嚴守開發紀律、遵守管理流程。軟件分析人員、架構在軟件開發的初期,如果因為設計和架構問題出現失誤,那么越接近后期,開發所需要投入的人力資源和財力都會出現損失,測試也需要花費更大的力量。最關鍵的,不能保證質量的軟件產品將會導致客戶的滿意度下降,對企業的發展帶來嚴重的影響。
不在直接收益 而是長遠利益 軟件質量的提升不能直接為公司的開發帶來效益,但是可以通過多個方面體現出來。甚至為控制軟件質量所需要進行的人力
培訓成本和工具采購的成本,在短期內導致公司的凈利潤降低,但是從長遠角度來看,將會給公司帶來極大的效益。
首先,用戶的滿意度將會得到提高。用戶購買軟件產品,是因為他們有實在的業務需求。倘若為其開發的產品能夠高質量地合其所用,那么肯定可以解決軟件實施項目回款難題。由于減少了后續的維護和支持需要,那么對于軟件企業而言,就增加了所得到的利潤。
“在他們引入Rational進行開發之后,我們感覺系統更加好用了?!眹液J戮钟媱澔ㄌ幐碧庨L余劍翔先生如此評價中創公司為其開發的水上
安全監督管理信息系統。
其次,引入諸如RUP之類的流程管理,將使得企業的開發團隊彈性大大提高。在開發流程改進之后,開發的過程將變得透明,因此可以根據任務的多寡增加或者減少開發資源,從而進一步控制成本和工作進度。
第三,從長遠來看,采用流程改進的方法論、引進優秀的流程規范工具,將會改掉軟件企業的開發人員的有關開發的壞習慣,提升開發人員的素質。
如果由于短期內成本的考慮,僅僅引入流程改進的方法論而不采用流程控制的工具,將使得企業徒具過程控制的虛名而無法真正將其落到實處,企業因而也就無法收獲長遠利益。