• 沒有找到結果。

整合度量與分析機制之軟體專案監控工具的研發

N/A
N/A
Protected

Academic year: 2021

Share "整合度量與分析機制之軟體專案監控工具的研發"

Copied!
9
0
0

加載中.... (立即查看全文)

全文

(1)

整合度量與分析機制之軟體專案監控工具的研發

計畫類別: 個別型計畫

計畫編號: NSC94-2416-H-011-002-CC3

執行期間: 94 年 05 月 01 日至 95 年 04 月 30 日 執行單位: 國立臺灣科技大學資訊管理系

計畫主持人: 黃世禎

計畫參與人員: 沈尚賢、陳立偉、邱南星

報告類型: 精簡報告

處理方式: 本計畫為提升產業技術及人才培育研究計畫,不提供公開查詢

中 華 民 國 95 年 7 月 24 日

(2)

一、研究摘要

隨著知識經濟社會的來臨,為了滿足政府、企業組織與個人之多樣化的需求與依 賴,軟體的功能變得愈來愈龐大,複雜度也日漸提高,因此軟體開發專案是否能滿足 成本、預算與品質的要求,對任何類型的組織都是受到同等的重視。然由於軟體開發 專案複雜度不斷的提高,軟體專案失敗的比率也一直居高不下,因此為了要能夠在軟 體開發的過程中及時掌握軟體專案的完整資訊,並且在軟體專案發生問題時能及早採 取矯正行動,軟體專案監控(Project Monitor and Control)也就成為軟體專案能否成 功的一個重要關鍵因素。

現有的軟體專案管理工具於專案監控上普遍面臨下列五點限制:(1)欠缺量化度 量指標(Quantitative Software Metrics)之收集與分析機制及雙向回溯(Bidirectional Traceability)功能,使得專案監控資訊的完整性與實用性欠佳;(2)只有提供基本有 關時程與成本專案的度量指標,因此造成軟體專案管理者無法全面有效地掌握軟體專 案;(3)欠缺提供裁適(Tailoring)的機制,因此無法滿足不同類型之組織與專案在 實務上的需求;(4)缺乏資料度量指標儲場所(Measurement Repository)建置的機制,

因此無法經由歷史資料的收集與分析,計算組織之標準基準資料(Benchmark);(5)

度量與分析模式的階層架構都是固定的,因此欠缺彈性與延展性(Scalability)。

因此本產學合作計畫的主要目標是搭配合作廠商臺灣應用軟件科技股份有限公 司寶貴經驗,提出一動態多層式軟體度量與分析之模式。此模式可根據不同度量目標 所涵蓋範圍的大小,動態地調整度量架構的階層數,讓每個度量專案建立符合該專案 特性與需求之特定度量架構。另外,本計劃還依據所提出的模式,開發出一套結合資 料 收 集 與 分 析 資 訊 圖 形 呈 現 功 能 的 動 態 多 層 式 度 量 與 分 析 工 具 (Dynamically Multi-Layered Measurement and Analysis Tool),以確保軟體開發專案監控資訊的正確 性、完整性與有效性,並可避免以人工方式收集與分析資料耗時與不客觀的缺點與限 制;同時該軟體工具可依據軟體專案特性的差異與專案管理者對資訊的不同需求,有 效且彈性地透過軟體專案指標集組合的裁適過程,以監控軟體專案的進展,並對軟體 專案的問題及時採取必要的矯正行動。本計畫預計所開發的軟體工具能幫助目前國內 之導入能力成熟度整合模式(Capability Maturity Model Integration)的廠商能有效地 提昇『度量與分析』與『專案監控』流程領域的能力等級,並進而提昇其量化軟體專 案管理的能力。

(3)

Abstract:

As the society of knowledge-based economy arrives and in order to meet a variety of information needs from government, organization and individual, the software has become increasingly complicated. Hence, the issue if software project can meet the demand of cost, schedule and quality is getting important and deserves more researches.

However, due to the high complexity of software projects, the failure rate nowadays is still very high. Therefore, in order to provide the thorough information of the project’s progress so that appropriate corrective actions can be taken when the project’s performance deviates significantly from the project plan, project monitor and control (PMC) is a very important activity affecting the project’s success.

The existing software project management (PM) tools have the following four limitations on the PMC. (1) They do not provide the collection and analysis mechanisms of quantitative software measures and the bi-directional traceability function. (2) They provide software metrics only on schedule and cost, and do not cover all aspects of a software project. (3) They do not provide the mechanism of the tailoring process and thus cannot satisfy the different demands in practical for a specific software project. (4) They do not establish the measurement repository and thus cannot derive the benchmarking data for an organization. (5) The level of hierarchy of the existing Measurement and Analysis (MA) models and the relevant tools are fixed and thus cannot provide user’s demand of the property of flexibility and scalability.

To overcome the above limitations of the existing PM tools, the objective of this project is to propose a dynamically multi-layered software measurement and analysis model. This model can dynamically adjust the level of hierarchy of measurement and analysis models for calibrating different sizes of scope of the measurement goals of software development projects. Moreover, this project also developed a dynamically multi-layered measurement and analysis tool, which was based on the proposed model.

The tool can assist the domestic software companies in measuring the actual values of project planning parameters, and thus improving the capability level of the MA and PMC process areas for those domestic software organizations that adopt the Capability Maturity Model - Integration (CMMI) for their software process improvement.

Keywords: Software Project Management, Project Monitor and Control, Capability Maturity Model - Integration (CMMI), Measurement and Analysis, Quantitative Software Metrics

(4)

二、研究背景

隨著知識經濟社會的來臨,為了滿足政府、企業組織與個人之多樣化的需求與依 賴,軟體的功能變得愈來愈龐大,軟體的複雜度也日漸提高,因此對於軟體品質的要 求也就越來越受到重視。軟體專案複雜度不斷的提昇伴隨著軟體專案失敗的機率也逐 漸上昇,例如超過預定的成本、無法準時交貨以及品質無法滿足使用者的需求,探究 其原因主要為專案經理無法即時的監控軟體專案資訊的變化,以致於無法在軟體專案 發生問題時及早尋求解決方案,因此軟體專案監控是一個軟體專案能否成功的重要關 鍵,而專案監控所需的相關資訊,則須藉由度量與分析流程來取得。

由 SEI 所提出的能力成熟度整合模式(Capability Maturity Model Integration, CMMI)其主要的目的是協助企業進行流程改善與評估組織流程成熟度等級,並已受 到國際組織與國內企業廣泛採用。CMMI 的階段式表述中將專案監督與控制(以下簡 稱專案監控)(Project Monitoring and Control, PMC)與度量與分析(Measurement an Analysis, MA)訂定在組織成熟度第二級,由此可見專案監控與度量與分析是組織流 程邁向高成熟度等級所必需的基礎。藉由度量與分析機制,可以收集到專案開發過程 中的各項相關資料,這些資料經過各種分析方法所得出的資訊,便可作為流程改善及 品質管理的依據,並作為管理者在決策制定時的參考,以達到專案監督與控制之效。

截至 2006 年 4 月為止,國內已經有 33 家企業取得 CMMI 的認證,其中 25 家為 組織成熟度第二級,8 家為組織成熟度第三級,並有超過 40 家以上的企業組織正在導 入或預計在近期內導入[5]。由此可知,國內的軟體廠商已經意識到流程改善與品質提 升的重要性,紛紛藉由導入 CMMI 來加強對軟體開發流程掌控能力,並達到提昇軟體 品質的目的,以及因應我國加入 WTO 之後所面臨的國際化競爭趨勢。這也表示,專 案監控和度量與分析勢必會受到國內軟體廠商重視與實踐。

雖然 ISO 15939(Software engineering - Software measurement process)國際標準 與實務軟體和系統度量(Practical software and systems Measurement﹐PSM)皆詳細定義 整個度量與分析流程的所有作業與工作項目供我們作參考,然而實際在進行度量與分 析活動時,卻可能要面臨龐大的度量資料以及複雜的分析模式[2],若完全以人工處理 的方式來進行,將會耗費大量的人力,發生錯誤的機會也大大增加,度量值與經過分 析所得到的資訊也無法有效累積。因此,若能藉著相關工具的輔助,將所收集到的度 量值利用工具記錄下來,並自動彙整這些資料再以圖表的方式呈現,不但能省去不必 要的人力,並且避免錯誤的發生,度量值以及分析資訊也都能夠完整的被儲存下來。

(5)

種狀況做出因應措施,而度量與分析活動能夠針對上述的各種項目進行資料收集,並 為重要決策制定提供了所需的資訊,以協助管理者解決各種問題。但是在度量與分析 的作業中,若缺乏工具的支援,度量資料的收集與分析是非常沒有效率的。因此為了 節省人力與時間、避免人為的錯誤進而提升專案監控資訊的正確性與有效性,就必須 利用工具來簡化流程的複雜性,或是取代人工作業。

雖然國外已有學者專家提出各種度量與分析模式,也有一些相關的度量與分析 軟體工具,然而這些模式與工具的階層架構都是固定的,即無法動態改變階層數,

然而在實際的度量活動中,根據度量目標大小的不同,定義出來的階層架構也會有 所不同。例如我們的目標是提昇軟體產品的整體品質以及控制專案人事成本,則必 須針對品質與成本兩個構面進行度量並定義其度量階層架構。其中,根據 ISO 9126 的定義,品質這個構面可從功能性、可靠性、使用性、效能、可維護性、移植性等 各種不同的特徵切入,每個特徵底下還有子特徵,成本則是較小的構面,因此兩者 所定義出來的階層架構一定不同,而上述模式與工具卻無法根據這種實際狀況做動 態的調整,不但缺乏彈性,也增加使用上的不便。

因此本產學合作計畫的主要內容是提出一個動態多層式之軟體度量與分析模 式,並依據上述模式開發出一整合度量分析機制之軟體工具,以確保專案監控資訊的 正確性與有效性,並提供工具使用者可以依據軟體專案的特性差異,有效且彈性地透 過軟體專案指標集的組合來監控軟體專案資訊的變化,以瞭解軟體專案目前的概況,

進而達到改善軟體產品品質的最終目的,並可避免人工方式耗時與不客觀的缺點與限 制,以協助本計畫之合作廠商臺灣應用軟件科技股份有限公司在輔導國內軟體開發廠 商提升流程能力成熟度時,有效地從事『度量與分析』與『專案監督與控制』流程領 域改善作業,進一步幫助廠商實際的導入軟體度量與分析機制,進而達到提昇其量化 軟體專案管理的能力與改善軟體產品品質的目的。

四、主要內容和系統功能

1、本系統的主要內容如下:

z 建構整合度量與分析機制之軟體專案監控工具。

z 協助本計畫合作廠商與國內軟體廠商在軟體開發各階段能更正確且有效的 進行專案監控,進而達到在預期時間內以合理的成本完成符合品質需求的 軟體。

z 藉由本計畫的執行,將整合度量與分析機制之軟體專案監控的技術導入國 內軟體產業,提昇國內軟體產業專案監控之正確性與有效性。

z 所提出之動態多層式軟體度量與分析模式,能提供過去的模式所缺乏的彈

(6)

z 彙整與收集 PSM Insight 和 ISO/IEC 9126 之度量指標,建置度量指標資料庫。

z 所建構的技術與工具可以進一步作為軟體產品品質、人員生產力、專案績 效、開發工作量、成本與時程等之評估與預估的度量基準。

2、本系統的各功能如下所述:

z 動態模式建構模組-以階層式結構的方式將度量專案所建立的動態度量模 式呈現出來,主要功能包括模式中主體架構之度量目標、度量實體與度量 屬性的設定,以及定量度量值與定性特徵値的設定,尤其是包含計算公式(衍 生度量值)與判斷條件(衍生特徵值)在內的各項操作型定義。

z 度量資料處理模組-根據動態度量模式中所定義好的度量值或特徵値產生 資料表格,提供使用者輸入各種度量資料,並自動根據先前所定義好的計 算公式或判斷條件自動處理以產生衍生度量值與衍生特徵値的內容值。

z 圖形化呈現模組-在收集了各種的度量資料之後,還必須經過彙整,接著 再以有意義的方式呈現出來,才能做為分析決策的依據。圖形化呈現模組 的主要目的就是完成這項工作,這個模組需要將前面所收集到的度量值進 行相關處理,以彙整出各種有用的資訊,接著再以折線圖、長條圖等方式 呈現。

z 資料存取模組-前面的三個模組在操作過程當中,會產生各種不同的資 料,例如︰動態模式建構模組內整個架構的相關設定資訊、度量值(特徵値) 的各種操作型定義,度量資料處理模組內使用者所輸入的度量值,圖形化 呈現模組內的圖形設定參數等等,這些資料都必須能夠被完整的儲存下 來,才能確保整個軟體工具的正常運作,因此需要一個能夠負責存放所有 相關資料或設定值的資料存取模組。

五、人才培育成果說明

在研究過程中,研究人員必須具備基礎的軟體工程知識背景,並深入研究軟體專 案監控和度量與分析等相關的模式建構技術的適用範圍進行相關文獻的探討,並從其 中學習到有關軟體專案監控和軟體度量與分析等相關的知識,對於日後從事相關領域 之工作有相當大的幫助。再者,在進行系統實作時,相關參與人員也可以藉此實際參 與軟體系統開發生命週期的各個階段,並實際編製各項軟體開發所需的相關文件,進 而彌補了在學學生實務經驗缺乏的部分。

(7)

控制工具上所會產生的問題與困難點,瞭解目前度量模式架構之憂缺點,提 出動態多層式軟體度量與分析模式,並制定一個可驗證且具有雙向追溯向的 軟體度量與分析機制。

2. 研讀軟體專案監督與控制相關文獻

瞭解軟體專案管理活動中有哪些資訊必須要能夠即時的監督與控制,以 及現有的專案管理監督與控制功能上的差異與限制。並且搜集分析各種軟體 度量指標的適用環境並瞭解其在專案監督與控制上的應用。

3. 工具開發平台建置與安裝

以Borland C++ Builder建置該工具,配合資料庫(Paradox)將已完成之軟 體專案資料儲存下來,讓使用者可以藉由使用本研究所開發的工具來取代傳 統進行軟體工程度量指標計算與分析時所需耗費的時間與人力,進而提升專 案執行的效率。

4. 實際建構整合度量與分析機制之軟體專案監控工具

以雛型法開發模式,配合台灣應用軟件股份有限公司實際導入經驗,以 面談、需求文件方式建構工具軟體,並輔助本工具實際使用。

5. 配合企業實務導入經驗分析使用者所需之導引資訊

配合研究計畫合作企業的相關實務導入經驗,瞭解在實際導入過程中所 遭遇的困難並分析需要提供哪些導引資訊給使用者,再將前述所獲得的資訊 反饋至工具中,以期讓使用者能更正確並有效地使用軟體專案監控工具。

六、技術研發成果說明

本計劃所提出的動態多層式軟體度量與分析模式,主要是以階層式結構來表示 每個度量目標與相關度量値之間的衍生關係,並可根據各度量目標的規模大小動態 調整其階層架構,解決了現有度量模式因階層固定而無法隨實際狀況做調整的問 題,所以適用於各種不同規模的度量專案,具有高度的彈性與延展性,不但能針對 每個度量專案建立符合該專案需求之特定度量模式,同時也能達到對所定義出的各 種度量值進行分類彙整的效果。

另外,本計劃所開發的動態多層式度量與分析工具,能夠支援此動態模式的建 構,因此也解決了現有工具缺乏延展性的問題。除此之外,本工具還具備度量値收 集與資料呈現的功能,能將度量活動中所收集到的各種度量値完整地保存下來,並

(8)

透過本計畫的研究成果預期能對國內軟體產業所帶來的助益如下:

z 藉由本計畫的執行,可以將度量模式與專案監控的完整概念導入國內的軟體產 業,累積與提升國內產業界度量與分析與專案管理與控制流程領域的能力。

z 藉由自動化專案監控工具的導入,減少度量指標在人為制定上可能發生的失誤,

加強對軟體專案的監控能力,以提升軟體專案的品質。

z 本計劃所提出之動態多層式軟體度量與分析模式可針對特定專案建立符合該專 案特性與需求之特定度量架構,以清楚了解到專案目標與度量値之間的關係,同 時也可藉由此模式了解目前究竟是針對哪些構面以及哪些項目進行度量,並有系 統的將相關的度量値彙整於同一集合當中。

z 此工具可協助使用者在進行度量與分析活動時,簡化流程的複雜性以提昇工作效 率,並能將所收集到的度量値以及各種分析資訊完整地保存下來,以做為決策制 定,及後續改善之重要參考依據。

七、技術特點說明

(1) 採用軟體工具來輔助軟體專案監控資料的收集、計算與分析,可避免以人工作 業方式耗時與人為錯誤的缺點與限制。

(2) 提出動態多層式軟體度量與分析模式,以階層結構來表示每個度量目標與相關 度量値之間的衍生關係,可因專案之範圍大小動態地調整期階層架構,解決了 現有度量模式因階層固定而無法隨實際狀況做調整的問題。

(3) 本計畫所開發的技術與工具可以幫助國內軟體廠商實際有效的滿足CMMI 模 式中『專案監控』和『度量與分析』流程領域的作業要求。

(4) 建 置 屬 於 國 內 自 己 的 軟 體 度 量 資 料 儲 藏 所 (Software Measurement Repository),並整合度量與分析機制於軟體專案監控,隨時掌握專案目前的進 度以協助監控資訊的累積、分析、輸出及再利用。

八、可利用之產業及可開發之產品 可利用之產業如下:

(1) 國內導入CMMI模式的企業。

(2) 重視軟體產品品質的企業。

(9)

可開發之產品如下:

(1) 整合度量與分析機制於電腦輔助軟體工程工具(Computer-Aided Software Engineering, CASE)中。

(2) 整合度量與分析機制於軟體專案監控工具。

九、推廣及運用的價值

(1) 本計畫所建構的整合度量與分析機制於軟體專案監控工具可以作為軟體品 質、專案績效、開發工作量、成本與時程等之評估與預估的管理依循,以提昇 其軟體專案監控能力與產品品質。

(2) 本計畫之合作廠商會在輔導國內軟體開發廠商提升流程能力成熟度時,同時也 會推廣本工具,以進一步幫助國內軟體廠商順利地導入軟體專案監控和軟體度 量與分析機制。

參考文獻

[1] 林信惠、黃明祥、王文良,「軟體專案管理」,智勝文化,2002。

[2] 黃世禎, 「軟體工程度量簡介」,軟體產業通訊第 51 期, 中華民國資訊軟體協 會, 2003 年 6 月。

[3] 黃世禎,「軟體品質工程師手冊—軟體度量與分析」,中華民國品質協會,

2005/05。

[4] 經濟部工業局,提昇資訊軟體品質計畫網站,http://www.cmmi-taiwan.org.tw/。

[5] Alejandro Jose Bianchi , “Management Indicators Model to Evaluate Performance of IT Organizations”, Management of Engineering and Technology, 2001.

[6] Aversano, L., Bodhuin, T., Canfora. G., Tortorella, M., “A framework for measuring business processes based on GQM”, System Sciences, pp:12 - 21, Jan 2004.

[7] Boehm, B. M., “Characteristics of Software Quality ”, North Holland, 1978.

[8] David Card , “Integrating Practical Software Measurement and the Balanced Scorecard”, 27th Annual International Computer Software and Applications Conference ,2003.

[9] IEEE 1061-1998, “Standards for a Quality Metrics methodology”, 1992.

[10] ISO/IEC 15939, “Software engineering – Software measurement process”, 2002.

參考文獻

相關文件

Keywords: Professional construction management, international project management, case study, ethnographic survey.. Due to the increasing scale and complexity of public

Research of the actual construction project with the BIM modeling software tools, correct in identifying the building model , fitting-out works by trying to

Although various schedule delay analysis methodologies, professional project management software and commercial delay analysis software are available, delay analysts still

Keywords : Project Time Management, Project Schedule Performance Index, Resource Leveling...

這個計算方法稱為計畫評核術 (PERT, Progra m Evaluation and Review Technique) ,是 1958 年美國海軍為了控制北極星導彈專案,所研 發出來的專案管理工具。.

在專案規劃階段,專案團隊就必須做出決定,同 時紀錄於專案成本管理計畫書 (project cost manage ment plan) 與專案時程管理計畫書 (project schedul e management

如果專案仍有繼續的必要,則啟動專案變更控制管理 (change control management) 流程以延長專案時程,或

The Earned Value Management (EVM) is an international standard for project cost control, which provides a promising tool for project cost control practice of the middle