監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設(shè)計管理系統(tǒng) | 甲方項目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉

軟件質(zhì)量保證的成功之路方案

申請免費試用、咨詢電話:400-8352-114

1 概述
  在軟件開發(fā)團隊中,由于質(zhì)量被視為軟件產(chǎn)品的生命,而始終被人們所高度關(guān)注;然而在現(xiàn)實生活中,許多軟件產(chǎn)品卻時常陷入質(zhì)量低下的旋渦,總是不盡人意。究其根源,在于這些軟件產(chǎn)品對其質(zhì)量內(nèi)涵的把握,僅僅停留在減少軟件運行錯誤、加強軟件測試、避免軟件缺陷的一般性層面,而對整個軟件開發(fā)生命周期的全過程質(zhì)量管理,缺乏總體架構(gòu)。因此,在大型軟件產(chǎn)品的開發(fā)與設(shè)計中,始終體現(xiàn)全過程質(zhì)量管理思想的Rational Unified Process?(簡稱RUP)和提供全生命周期支持的軟件開發(fā)平臺,則展現(xiàn)出強大的生命力和獨特魅力。
  2 全過程質(zhì)量保證
  2.1 質(zhì)量定義
  在RUP中,質(zhì)量定義如下:
  滿足或超出認定的一組需求,并使用經(jīng)過認可的評測方法和標準來評估,還使用認定的流程來生產(chǎn)。
  由此可見,質(zhì)量不僅是我們孜孜以求的結(jié)果,它更體現(xiàn)在軟件開發(fā)的整個過程。
  2.2 過程質(zhì)量
  在過程質(zhì)量方面,經(jīng)常舉的一個例子就是汽車生產(chǎn)過程。讓我們一起來想象一個場景:在上個世紀初的一家汽車銷售公司里,汽車銷售員正在為作為準客戶的您推銷兩款汽車,其中一款是由某公司引入當時世界上最先進的生產(chǎn)線和工藝流程生產(chǎn)的產(chǎn)品,而另一款是由廠家技術(shù)精湛的師傅花了一個多月的時間用車床加大錘手工精制而成。排除其它汽車購買因素,在汽車的質(zhì)量方面,您會作何感想呢?精明的你一定會作個簡單分析,第一輛車的質(zhì)量是由汽車生產(chǎn)線和生產(chǎn)工藝本身決定的,每一輛同型號車的質(zhì)量完全相同,它是由汽車生產(chǎn)的過程質(zhì)量決定的;而第二輛車的質(zhì)量在很大程度上則依賴于生產(chǎn)汽車的師傅水平,不同的師傅生產(chǎn)出的汽車質(zhì)量可能相差很大。因此通過了解市場上同型號車的質(zhì)量狀況,你可以輕松做到對第一輛車心中有數(shù);但對第二輛,你則需要花一番功夫弄清楚師傅的資質(zhì)背景,從而判斷汽車的質(zhì)量。由此可見,你對第一輛車的信任,來自于過程質(zhì)量,而汽車作為日常消費商品被大規(guī)模生產(chǎn)和銷售的基礎(chǔ)也是過程質(zhì)量,是它使汽車生產(chǎn)的規(guī)模經(jīng)濟成為可能。
  軟件開發(fā)過程質(zhì)量就是指為了生成工件而對可接受流程(包括質(zhì)量評測和質(zhì)量標準)的實施和遵守程度。軟件生產(chǎn)的過程質(zhì)量與汽車類似,體現(xiàn)在三個層次:一是產(chǎn)品本身和用來生產(chǎn)、組裝軟件產(chǎn)品的零部件質(zhì)量,包括用來進行軟件開發(fā)或在軟件開發(fā)過程中產(chǎn)生的代碼、文檔、模型和可執(zhí)行系統(tǒng)等工件;二是軟件開發(fā)活動本身對標準化軟件開發(fā)過程的遵守程度,主要體現(xiàn)在軟件開發(fā)過程的標準化、流程化、自動化程度和團隊基本協(xié)作平臺的效率;三是用來對整個軟件產(chǎn)品進行驗收的評測手段,它應該是被業(yè)界廣泛認可和接受的方法。
  一個軟件生產(chǎn)企業(yè)的過程質(zhì)量一般可以用它的軟件過程成熟度等級(例如CMM/CMMI的級別)來決定,這也正是印度的軟件公司能夠獲取很多外包項目的重要原因。但我們應該更清醒的看到:真正保證軟件質(zhì)量的不是CMM/CMMI的一紙評估報告,而是軟件生產(chǎn)過程本身的成熟度,包括我們賴以達到成熟等級的方法、工具和軟件開發(fā)平臺。可喜的是國內(nèi)越來越多的企業(yè)已認識到這一點,把更多的功夫花在使用合適的方法、采用恰當?shù)墓ぞ吆推脚_,切實提高軟件生產(chǎn)過程的成熟度。
  2.3 RUP的質(zhì)量保證思想
  Rational Unified Process? (簡稱RUP)是一個可以通過Web來使用的軟件工程過程。作為軟件工業(yè)事實上的標準,它回答了我們以下問題:在整個軟件開發(fā)過程中,應該由誰(角色)在什么時候(詳細工作流程)做什么(活動)和產(chǎn)生什么樣的開發(fā)結(jié)果(工件),以完成整個項目的開發(fā)目標。建立有效的工作過程,可以提高團隊的生產(chǎn)效率,控制開發(fā)過程中的風險,保證軟件開發(fā)進度并且提高軟件產(chǎn)品質(zhì)量。同時通過為所有重要的開發(fā)活動提供全面的指南、模板和示例,使整個軟件開發(fā)團隊能夠有效共享成功經(jīng)驗,提高團隊效率,最終保證軟件開發(fā)質(zhì)量。
  1) RUP的質(zhì)量保證思想之一:全過程質(zhì)量保證思想
  您當前瀏覽的文章來源于考試大項目管理站。
  RUP把整個軟件開發(fā)過程分解成:業(yè)務建模、需求管理、分析設(shè)計、實施、測試、部署、配置與變更管理、項目管理和環(huán)境等九個核心工作規(guī)程。每個核心工作規(guī)程由多個詳細工作流程組成?;谌祟悓浖ぷ鬟^程最原始的感受,RUP使用角色、活動和作為輸入輸出的工件來組織每個詳細工作流程,實現(xiàn)軟件開發(fā)組織內(nèi)部人、資源和流程的融合。RUP通過建立完整的軟件開發(fā)過程,使得產(chǎn)品的質(zhì)量由項目團隊的每個成員共同負責,具體體現(xiàn)在:
  每個角色承擔相應的質(zhì)量任務
  每個活動產(chǎn)生合格的工件
  為每個工件建立指南、模板和檢查點
  每個工作流程設(shè)定相應的工作指南和檢查點
  在RUP中,整個軟件開發(fā)過程如上圖所示,它以指定的工件為輸入,通過軟件開發(fā)角色和標準化的軟件開發(fā)活動,生產(chǎn)出滿足質(zhì)量要求的輸出工件。為確保每個工作環(huán)節(jié)的有效執(zhí)行和每個工作環(huán)節(jié)產(chǎn)生的工件質(zhì)量,RUP為主要工作流程提供了對應的工作指南和檢查點,為每個工件建立指南、模板和檢查點,從而保證了軟件開發(fā)的過程質(zhì)量。
  2) RUP的質(zhì)量保證思想之二:軟件工程成功經(jīng)驗共同鑄就軟件質(zhì)量的思想
  激烈的市場競爭催生高質(zhì)量的軟件。同時,軟件行業(yè)經(jīng)過幾十年的發(fā)展,軟件生產(chǎn)工藝、軟件開發(fā)方法和工具都大大進步、日趨成熟,這一切使軟件開發(fā)質(zhì)量越來越好。RUP以迭代式軟件開發(fā)、架構(gòu)為核心的軟件開發(fā)、用例驅(qū)動的軟件開發(fā)和風險驅(qū)動的軟件開發(fā)為特色,集中體現(xiàn)了以下六個軟件工程成功經(jīng)驗,通過它們共同鑄就了高品質(zhì)軟件:
  迭代式軟件開發(fā):能夠有效控制項目風險、增加對項目控制能力、減少需求變更對項目的影響,實現(xiàn)持續(xù)的質(zhì)量驗證;
  有效管理需求:能夠做到質(zhì)量保證從頭作起,在軟件開發(fā)一開始,就把好需求質(zhì)量關(guān),實現(xiàn)需求的可追蹤性和需求變更的有效管理;
  基于構(gòu)件和面向服務的軟件架構(gòu):采用可視化建模技術(shù)來構(gòu)建以構(gòu)件為基礎(chǔ)、面向服務的系統(tǒng)框架,可以有效地管理系統(tǒng)的復雜度,增強系統(tǒng)的靈活性和可擴展性;
  可視化建模:能夠有效解決團隊溝通、管理系統(tǒng)復雜度、提高軟件重用;
  持續(xù)的質(zhì)量驗證:借助迭代式軟件開發(fā)方法,可以大大提前軟件集成測試和系統(tǒng)測試在整個開發(fā)生命周期中的時間,實現(xiàn)持續(xù)地軟件質(zhì)量驗證,做到盡早測試、盡早反饋,從而確保產(chǎn)品滿足客戶的需求; 考試大收集
  管理變更:能夠為整個軟件開發(fā)團隊提供基本協(xié)作平臺,使企業(yè)管理好自己的軟件資產(chǎn),通過有效管理所有的變更請求,使開發(fā)團隊能夠很好的控制開發(fā)進度、及時了解項目狀況,同時為項目的量化管理提供幫助。
  由此可見,在軟件開發(fā)過程中,高品質(zhì)軟件是由以上軟件工程的成功經(jīng)驗共同鑄就的。
  3 高品質(zhì)軟件,源自Rational工藝
  成就高品質(zhì)軟件,除了注重過程質(zhì)量、采用軟件工程成功經(jīng)驗以外,還需要幫助開發(fā)團隊實現(xiàn)高效的過程管理、構(gòu)建運作良好的協(xié)作平臺和有效運用能夠提高團隊生產(chǎn)力的自動化軟件工具。"方法"+"工具"永遠是我們解決問題的永恒主題。
  3.1 IBM Rational軟件開發(fā)平臺實現(xiàn)軟件規(guī)?;a(chǎn)的過程質(zhì)量
  IBM Rational軟件開發(fā)平臺是體現(xiàn)軟件工程成功經(jīng)驗的強大工具。它基于Rational的軟件工程方法和工具構(gòu)造出了覆蓋整個軟件開發(fā)生命周期的軟件開發(fā)平臺,它通過提供高效的軟件生產(chǎn)線,為軟件開發(fā)團隊的生產(chǎn)過程提供高品質(zhì)的過程質(zhì)量保證,使得大規(guī)模的軟件生產(chǎn)過程成為可能。沒有平臺支撐的過程質(zhì)量和成功經(jīng)驗只能是紙上談兵。
  首先,IBM Rational軟件開發(fā)平臺為整個軟件生產(chǎn)企業(yè)提供了一個完整的企業(yè)級項目管理平臺:IBM Rational Portfolio Mananger。一方面,通過它可以使企業(yè)的管理者實現(xiàn)業(yè)務發(fā)展戰(zhàn)略和IT戰(zhàn)略的融合,作為以業(yè)務發(fā)展戰(zhàn)略為核心,組織IT投資和企業(yè)人力資源;另一方面,它為整個項目管理團隊提供了高效的項目計劃、實施、監(jiān)控等項目管理活動的完整平臺,通過提高企業(yè)的管理方法和團隊效率,最終提高軟件質(zhì)量。
  其次,IBM Rational基于以RUP、ClearCase和ClearQuest為核心的團隊統(tǒng)一平臺:Team Unified Platform,為整個開發(fā)團隊提供了基本協(xié)作平臺,提供日常的開發(fā)活動管理和支撐,也為項目的質(zhì)量監(jiān)控和量化管理奠定基礎(chǔ)。
  第三,IBM Rational的軟件開發(fā)平臺根據(jù)軟件開發(fā)的角色組織軟件開發(fā)工具,為分析人員提供業(yè)務建模和業(yè)務流程的模擬、監(jiān)控能力;為系統(tǒng)架構(gòu)師提供各種系統(tǒng)建模和架構(gòu)分析能力;為開發(fā)人員提供快速的軟件構(gòu)建、單元測試及運行時分析能力;為測試人員提供功能、性能測試和系統(tǒng)性能監(jiān)控能力;為部署人員提供了快速部署、監(jiān)控和管理能力。
  與汽車生產(chǎn)過程相比,企業(yè)級項目管理平臺和團隊統(tǒng)一平臺就好比汽車生產(chǎn)過程的生產(chǎn)線,統(tǒng)一了整個軟件的開發(fā)活動和管理活動,而其它各種根據(jù)軟件開發(fā)角色組織的開發(fā)工具,就好比生產(chǎn)線上的各種智能機床,大大提高軟件生產(chǎn)過程的生產(chǎn)力和質(zhì)量保證。如果說福特使用的生產(chǎn)線技術(shù)實現(xiàn)了汽車行業(yè)的規(guī)?;a(chǎn),那么IBM Rational軟件開發(fā)平臺無疑為軟件的規(guī)?;a(chǎn)揭開了序幕。
  3.2 IMB Rational軟件開發(fā)平臺為軟件生產(chǎn)提供生命周期的質(zhì)量保證 
  IBM Rational軟件開發(fā)平臺為軟件生產(chǎn)提供了涵蓋分析員、架構(gòu)師、設(shè)計員在內(nèi)的全生命周期的質(zhì)量保證,而不僅僅是對測試人員的質(zhì)量解決方案。
  在RUP質(zhì)量保證思想的指導下,IBM Rational的軟件開發(fā)平臺堅持軟件質(zhì)量從頭抓起的宗旨,使用業(yè)務建模工具和可視化建模技術(shù),準確描述企業(yè)的業(yè)務流程、模擬企業(yè)的業(yè)務執(zhí)行過程,幫助企業(yè)找出業(yè)務流程中存在的問題,優(yōu)化業(yè)務流程。系統(tǒng)分析人員借助業(yè)務模型,可以準確理解企業(yè)需求,解決企業(yè)真正需要解決的問題,正確構(gòu)建企業(yè)需要的系統(tǒng)。需求管理工具(RequisitePro)則可以幫助客戶完成需求管理和需求的變更管理,實現(xiàn)需求的可追蹤性,幫助企業(yè)在項目啟動階段把好需求質(zhì)量關(guān)。
  借助IBM Rational的新一代建模工具Rational Software Architect(簡稱RSA),系統(tǒng)分析人員甚至可以使用模型驅(qū)動的軟件開發(fā)(MDA),從業(yè)務模型自動推導出用例模型、分析模型、設(shè)計模型和代碼,從而實現(xiàn)業(yè)務驅(qū)動的軟件開發(fā)。模型驅(qū)動軟件開發(fā)的優(yōu)點是幫助企業(yè)建立強健的軟件架構(gòu),統(tǒng)一整個軟件開發(fā)團隊的分析設(shè)計和開發(fā)活動,使整個開發(fā)團隊對高層系統(tǒng)架構(gòu)有一個統(tǒng)一的認識。同時,RSA基于開放的Eclipse平臺,提供了代碼復審功能,幫助開發(fā)員自動完成代碼規(guī)范性的檢測;運行時分析功能,為開發(fā)員提供自動完成代碼內(nèi)存錯誤檢測、性能調(diào)優(yōu)、線程分析和代碼覆蓋率的收集能力;它的構(gòu)件測試能力,幫助開發(fā)員更快更好地完成單元測試任務。此外IBM Rational還提供了Purifyplus,用于幫助開發(fā)人員快速解決軟件開發(fā)過程中難于發(fā)現(xiàn)的內(nèi)存及運行時錯誤、性能調(diào)優(yōu)和測試覆蓋率信息收集等問題;實時系統(tǒng)測試工具Test Realtime,則能解決實時系統(tǒng)的單元測試、集成測試和運行時分析問題。所有這些都為整個軟件開發(fā)團隊完成高質(zhì)量的需求分析、構(gòu)建靈活的軟件架構(gòu)、生成高品質(zhì)的代碼提供了有力保證。
  在軟件測試方面,除以上提到的代碼測試工具以外,IBM Rational更提供了完整的系統(tǒng)級功能、性能測試和測試管理平臺工具。
  IBM Rational軟件測試解決方案以RUP的軟件工程方法為基礎(chǔ),首先提供了以TestMananger和ClearQuest為核心的測試管理平臺,完成從測試輸入、測試計劃、測試設(shè)計、測試執(zhí)行到測試結(jié)果分析的整個測試流程的統(tǒng)一管理,提供對項目需求、變更請求、測試資料及其他數(shù)據(jù)的共享,提高了團隊的工作效率;其次,Robot以自動化的功能和性能測試腳本錄制、回放為基礎(chǔ),實現(xiàn)企業(yè)的自動化功能和性能測試,幫助企業(yè)解決回歸測試和大批量的數(shù)據(jù)驅(qū)動軟件測試所帶來的工作量和工作效率問題;Tivoli Monitoring for Transaction Performance(TMTP)完成軟件的性能檢測和分析工作,進一步幫助系統(tǒng)測試人員分析、定位、解決系統(tǒng)性能問題。第三,最令人刮目相看的是IBM在2005年的Atlantic版本中新推出的功能測試工具RATIONAL FUNCTIONAL TEST、性能測試工具RATIONAL PERFORMANCE TEST和手工測試工具RATIONAL MANUAL TEST,它們第一次為Java和Web測試人員,提供了和開發(fā)人員同樣的操作平臺(Eclipse),具備完整的自動化功能、性能測試和手工測試的管理能力,而且其中還推出了許多IBM的最新專利技術(shù),例如基于Wizard的智能數(shù)據(jù)驅(qū)動的軟件測試技術(shù)、提高測試腳本重用的ScriptAssurance技術(shù)等,同時它也提供了對開放軟件測試架構(gòu)Hyades的支持。
  由此可見,IBM Rational的軟件開發(fā)平臺通過實現(xiàn)了對整個軟件開發(fā)全生命周期,包括從業(yè)務分析、需求管理、架構(gòu)設(shè)計到系統(tǒng)構(gòu)建、測試、部署的全方位支持,為企業(yè)提供了軟件生產(chǎn)全生命周期的質(zhì)量保證能力。
  4 小結(jié)
  在軟件工程領(lǐng)域發(fā)展初期,各路英雄逐鹿中原,產(chǎn)生了各種軟件開發(fā)過程的成功經(jīng)驗和工具。在經(jīng)歷了多年的努力搏殺,體會到對抗的酸甜苦辣以后,英雄們終于認識到:高品質(zhì)軟件,需要完整的軟件開發(fā)過程和整合的軟件開發(fā)平臺來共同鑄就。IBM Rational軟件開發(fā)平臺,就是以各種國際標準和開放平臺為基礎(chǔ),為軟件產(chǎn)品的開發(fā)和生產(chǎn)過程提供了前所未有的開發(fā)速度和質(zhì)量保證。IBM Rational二十幾年鑄一劍,如今寶劍揮出,必將掀起軟件行業(yè)的產(chǎn)業(yè)革命浪潮
  關(guān)于作者
  寧德軍,現(xiàn)為IBM中國有限公司軟件部Rational高級技術(shù)專員。在Rational中國工作的三年的時間里,曾經(jīng)為華為、中興通訊、大唐移動、浙江移動、江蘇移動、武漢精倫等多家公司提供過軟件管理咨詢服務。在此之前,寧德軍曾任職于貝爾阿爾卡特公司,主要從事電信交換機、電子商務軟件分析設(shè)計和開發(fā)工作。參加過ALCATEL多個版本的電信交換機系統(tǒng)、基于JAVA和XML的“WEB系統(tǒng)通信平臺”等軟件項目的開發(fā)設(shè)計工作。在軟件工程技術(shù)方面,寧德軍有著多年的實踐經(jīng)驗,對于Rational的軟件工程技術(shù)有著深刻的理解。目前主要專注于軟件測試技術(shù)、面向?qū)ο蟮目梢暬:蛙浖渲霉芾淼燃夹g(shù)的研究。在軟件測試方面,曾為中興通訊、大唐移動、中國移動、中國工商銀行、南瑞電力、UTStarCom等公司進行過專業(yè)咨詢服務,內(nèi)容包括主機和嵌入式軟件的功能、性能、可靠性和測試管理咨詢。
發(fā)布:2007-02-28 10:18    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
相關(guān)系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢