在 Gartner 發(fā)布的2014年十大戰(zhàn)略技術(shù)中,“軟件定義一切”被納入其戰(zhàn)略規(guī)劃的十大技術(shù)之一。近一年來,IT 業(yè)界也掀起了諸如軟件定義網(wǎng)絡(luò)(SDN)、軟件定義數(shù)據(jù)中心、軟件定義存儲(SDS)的熱潮。
為何軟件來到如此重要的高度?事實上,2010年前后,IT 產(chǎn)品的硬件水平已經(jīng)發(fā)展到一個相對高端的水平,基本能夠滿足絕大部分的 IT 功能應(yīng)用,此時,通過升級硬件對產(chǎn)品應(yīng)用體驗的提升已經(jīng)不再明顯,這也讓人們對 IT 產(chǎn)品應(yīng)用體驗的關(guān)注度空前高漲。對企業(yè)而言,通過提升軟件交付能力及質(zhì)量水平使其具備快速響應(yīng)市場的能力,成為每個企業(yè)必須具備的“軟實力”。?
那么,如何幫助企業(yè)在軟件開發(fā)生命周期中控制風(fēng)險,提升軟件交付能力及質(zhì)量水平,使其具備快速響應(yīng)市場的能力?2014年10月30日,e-works 總編黃培博士和記者王陽在濟(jì)南采訪了致力于軟件開發(fā)生命周期管理(ALM)領(lǐng)域的 Micro Focus 中國區(qū)總經(jīng)理孟捷先生。
從 Borland 到 Micro Focus 的發(fā)展歷程
作為軟件開發(fā)生命周期管理(ALM)整體解決方案提供商的 Micro Focus,成立于1976年,目前在英國倫敦證券交易所上市公司,是 FTSE250指數(shù)成員之一。Micro Focus 中國區(qū)總經(jīng)理孟捷介紹,Micro Focus 是一家?guī)椭髽I(yè)級用戶完善并提高其應(yīng)用軟件業(yè)務(wù)價值與質(zhì)量的軟件公司,近40年來,Micro Focus 始終專注于為全球企業(yè)用戶提供業(yè)界領(lǐng)先的應(yīng)用開發(fā)、測試、管理及創(chuàng)新的產(chǎn)品和解決方案。
Borland 于2009年加入 Micro Focus 大家庭,在此之前,Borland 是全球領(lǐng)先的軟件交付最優(yōu)化(SDO)平臺獨立解決方案供應(yīng)商,業(yè)務(wù)遍及全球,曾經(jīng)是世界第三大軟件公司。2006年,Borland 剝離了 IDE 業(yè)務(wù)部門,并收購一系列包括 Segue Software、Gauntlet Systems,、Starbase 等軟件工具,將業(yè)務(wù)轉(zhuǎn)向了軟件生命周期管理(ALM)領(lǐng)域,成為 Micro Focus 公司重要的業(yè)務(wù)組成部分。
從2009年起,Micro Focus 在完成對 Borland 以及 Compuware 公司 Testing/ASQ 業(yè)務(wù)的收購并進(jìn)行產(chǎn)品整合之后,成為軟件開發(fā)生命周期管理(ALM)領(lǐng)域全球頂尖的解決方案供應(yīng)商之一。自2011年的歷次 Gartner 評測中,Micro Focus 始終排名為該領(lǐng)域的領(lǐng)先者。目前,Micro Focus Borland 解決方案可以提供需求開發(fā)與管理、設(shè)計建模、配置與變更管理、代碼質(zhì)量、測試管理、自動化功能測試、性能測試、SOA 測試、移動應(yīng)用測試等完整的軟件開發(fā)生命周期管理(ALM)的產(chǎn)品。
除了致力于軟件生命周期管理(ALM)解決方案領(lǐng)域,Micro Focus 的業(yè)務(wù)還涵蓋其他三個領(lǐng)域,COBOL -- 開放平臺 COBOL 應(yīng)用程序開發(fā)和運行解決方案;Mainframe -- 大型主機(jī)虛擬環(huán)境及應(yīng)用程序遷移解決方案;CORBA -- 基于 CORBA 標(biāo)準(zhǔn)的中間件解決方案。
軟件開發(fā)生命周期面臨的挑戰(zhàn)
在軟件開發(fā)生命周期中,最大的挑戰(zhàn)是滿足業(yè)務(wù)需求同時,能夠在預(yù)算內(nèi)按計劃交付高質(zhì)量的軟件系統(tǒng)。在孟捷看來,軟件系統(tǒng)在各行各業(yè)發(fā)揮著越來越重要的作用,但開發(fā)過程管理的難度也逐漸增加。
軟件并不像硬件產(chǎn)品是實體,而是計算機(jī)程序、程序所用的數(shù)據(jù)以及有關(guān)文檔資料的集合,在運行中能夠幫助用戶快速、方便的達(dá)到所希望得到的功能和結(jié)果。近年來,隨著硬件水平的快速提升,通過升級硬件來提升IT產(chǎn)品的應(yīng)用體驗已經(jīng)越來越捉襟見肘,那么,只能從軟件發(fā)力,通過軟件的提升實現(xiàn)各種功能需求。
但是在實際環(huán)境下,要能夠在預(yù)算內(nèi)按計劃交付高質(zhì)量的軟件系統(tǒng),并不是一件容易的事情。現(xiàn)在越來越復(fù)雜的業(yè)務(wù)需求,技術(shù)平臺,開發(fā)環(huán)境,這些因素都會對軟件交付產(chǎn)生各種影響。
孟捷認(rèn)為,軟件開發(fā)生命周期中通常會遇到三類問題:第一個最常見的問題就是交付的軟件系統(tǒng)沒有滿足業(yè)務(wù)需求,導(dǎo)致項目失敗。軟件項目的目的就是為了交付滿足業(yè)務(wù)需求的系統(tǒng),當(dāng)軟件系統(tǒng)交付使用后,最終使用部門通??倳X得交付使用的軟件系統(tǒng)和最初的構(gòu)想存在一定的差距,究其原因通常都是因為在需求開發(fā)階段,需求方和開發(fā)方通常缺乏有效的溝通,并沒有在需求分析階段達(dá)成一致,就已經(jīng)開始軟件項目的開發(fā),最后導(dǎo)致所想所見非所得。這就是為何 CIO 們在總結(jié)項目成敗時,把68%的項目失敗歸結(jié)為不能滿足業(yè)務(wù)需求。
第二個常見的問題是軟件不能按時交付,交付時間一拖再拖,甚至導(dǎo)致軟件系統(tǒng)最終交付時已經(jīng)不滿足當(dāng)下的業(yè)務(wù)需求,根據(jù)業(yè)界的統(tǒng)計數(shù)據(jù),50%的項目都會延時交付。導(dǎo)致項目延期的原因很多,例如軟件項目采用的技術(shù)越來越復(fù)雜(嵌入式,非嵌入式技術(shù)),多樣的開發(fā)模式(敏捷、傳統(tǒng)的瀑布,直接引入產(chǎn)品,合作開發(fā),外包開發(fā)等等),都會產(chǎn)生很多不可控的因素,但是究其根源還是在于傳統(tǒng)的,粗放的管理模式已經(jīng)不能適應(yīng)現(xiàn)代化的軟件開發(fā)的需求,現(xiàn)實要求我們提升對軟件開發(fā)生命周期的控制能力,增強(qiáng)項目過程的透明度。
第三個常見的問題就是軟件系統(tǒng)的質(zhì)量難以保障,并且工作效率低下。根據(jù)業(yè)界的統(tǒng)計數(shù)據(jù),項目的返工工作量有可能達(dá)到40%之多。復(fù)雜的項目,由于需求分析不到位,需求變更沒有管理得當(dāng),架構(gòu)體系設(shè)計缺乏手段,開發(fā)人員經(jīng)常會浪費時間在沒有必要的功能上,甚至是重新開發(fā)整個功能模塊,而這些因素又往往會在需求,設(shè)計階段植入大量的軟件缺陷,而導(dǎo)致更多的缺陷修復(fù)工作量。
Borland 為軟件開發(fā)過程保駕護(hù)航
為了幫助企業(yè)在軟件開發(fā)過程中滿足業(yè)務(wù)需求、管控開發(fā)過程、并保證軟件質(zhì)量,Borland 從軟件開發(fā)的需求、變更、測試等各個階段提供相應(yīng)的解決方案。孟捷介紹,Borland 提供的解決方案主要包括三個方面:?
首先,建立持續(xù)有效的需求驗證。孟捷說,根據(jù)業(yè)界統(tǒng)計,70%的軟件缺陷是在需求階段植入的,而需求階段植入的缺陷將會帶來后期的高額修復(fù)成本。這也意味著,在需求階段,僅僅建立需求管理平臺,對需求條目進(jìn)行系統(tǒng)化、工程化的管理是遠(yuǎn)遠(yuǎn)不夠的。要想最大程度的避免需求階段植入的缺陷,就是要建立起有效的需求驗證過程。
為了避免這樣的問題,軟件成熟度模型 CMMI 三級中提到的需求開發(fā)(RD)給出了非常有效的指導(dǎo)。孟捷指出,Borland 的經(jīng)驗正是基于此指導(dǎo)方針,幫助用戶建立新一代的需求定義,需求管理平臺,將文字?jǐn)⑹龅男枨笠钥梢暬?,原型的方式呈現(xiàn),用流程模擬更準(zhǔn)確的體現(xiàn)需求的真正實現(xiàn) -- 這些需求開發(fā)中的關(guān)鍵實踐,使業(yè)務(wù)部門能夠在項目的需求階段即可明確最終交付的軟件系統(tǒng)的業(yè)務(wù)流程和功能特性,同時也讓工程部門的項目經(jīng)理,設(shè)計人員,開發(fā)人員對最終交付的軟件系統(tǒng)建立起統(tǒng)一的認(rèn)知。
其次,建立企業(yè)級的變更管理。在軟件開發(fā)生命周期中建立企業(yè)級的變更管理,對于加強(qiáng)軟件開發(fā)過程的控制,增強(qiáng)軟件開發(fā)過程的透明度非常重要,同時企業(yè)級的變更流程也必須和配置管理結(jié)合起來,確保變更影響的是正確的配置項。同時在建立變更管理平臺的時候,也需要考慮變更管理平臺的開放性和集成性,例如對開發(fā)技術(shù)的支持,對不同開發(fā)模式的支持,并且能夠確保變更管理平臺成為聯(lián)系需求管理和測試管理的中間橋梁,確保整個軟件開發(fā)生命周期的完整性。
最后,建立卓越的質(zhì)量保障體系。孟捷說,在軟件測試過程中,確保測試的有效性至關(guān)重要。Micro Focus的最佳實踐是建立基于 Process,Product,People 的標(biāo)準(zhǔn)可復(fù)用的質(zhì)量保障體系,包括:可復(fù)用的質(zhì)量保障的基礎(chǔ)架構(gòu),高效、專業(yè)的質(zhì)量保障團(tuán)隊,以及標(biāo)準(zhǔn)可復(fù)用的測試流程,同時輔以自動化的測試手段提高測試過程的效率,以確保軟件符合功能性和非功能性需求。另外,也需要建立一套質(zhì)量度量體系,持續(xù)采集不同項目質(zhì)量指標(biāo),通過數(shù)據(jù)分析,達(dá)到持續(xù)過程改進(jìn)的目的。
目前,軟件開發(fā)過程管理市場主要有兩種類型的供應(yīng)商,一種面向需求管理和配置管理提供完善的解決 方案,另一種則提供功能強(qiáng)大的測試工具,孟捷說,隨著 Borland 的發(fā)展,已經(jīng)兼具了這兩類供應(yīng)商的特點。對于 Borland 的競爭優(yōu)勢,孟捷認(rèn)為,在近40年專注于軟件應(yīng)用的開發(fā)、測試和管理的實踐中,Borland 一直強(qiáng)調(diào)解決方案的完整性,提供端到端的軟件開發(fā)生命周期整體解決方案;同時,Borland 具有良好的開放性,可以實現(xiàn)自身產(chǎn)品與第三方工具之間的集成;另外,Borland 也基于云計算等前沿技術(shù)進(jìn)行了功能革新,通過領(lǐng)先的 Web 2.0技術(shù)實現(xiàn)云測試、手機(jī)測試等功能;更重要的是,Borland通過可視化、用戶向?qū)У裙δ懿粩嗉訌?qiáng)軟件的易用性,保持著突出的用戶體驗。
在采訪的最后,孟捷提到,加入 Micro Focus 之后,Borland 仍然保持著獨立的品牌去運營,這與 Borland 過去幾十年積累的人氣和品牌美譽(yù)度不無關(guān)系。在他看來,Borland 的使命就是幫助企業(yè)構(gòu)建軟件開發(fā)過程中的三種關(guān)鍵能力:持續(xù)保證符合業(yè)務(wù)需求的能力 -- 確保需求定義、需求分析、架構(gòu)設(shè)計、需求變更、開發(fā)任務(wù)甚至包括測試需求都是來自業(yè)務(wù)需求;持續(xù)的軟件質(zhì)量驗證能力 -- 讓項目過程中每一個參與人員都成為質(zhì)量保障團(tuán)隊的一員;持續(xù)的開發(fā)過程管控能力 -- 提高項目過程的透明度,讓管理者時刻了解項目的進(jìn)度和質(zhì)量。