本站小編為你精心準備了基于CMM的教育軟件工程框架的建構參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
一、教育軟件工程概述
教育軟件工程并不能簡單地理解為“教育+軟件工程”,開發教育軟件所需的知識結構和技術能力也不是軟件工程人員簡單的學習教育書籍就可以達到。教育軟件工程是研究如何用工程的技術和方法,開發、運行和維護的教育軟件。開發教育軟件的關鍵階段在于系統設計,因為它體現了使用計算機技術實現教育思想的能力和水平。教育軟件工程學是有關教育軟件開發、運行和維護的多學科交叉而形成的新興學科,主要涉及到計算機科學、教育學、心理學、管理學等多種學科領域。
二、CMM分析
CMM(CapabilityMaturityModeforSoftware)將過程進化的步驟分成五個成熟度等級,每個成熟度等級被分解為幾個KPA,KPA是達到此成熟度等級必須解決的關鍵點。這五個等級分別是:①Initial級,軟件過程沒有任何標準和規章,軟件產品的質量具有不可預測性。②Repeatable級,已建立基本的項目管理過程,整個項目過程已經制度化。KPA分別是:需求管理、軟件項目計劃、軟件跟蹤與監督、軟件子合同管理、軟件質量保證、軟件配置管理;③Defined級,組織級法律框架健全,軟件產品的基本過程被記錄下來成為文檔,項目可以通過裁減組織的標準軟件過程來建立適合自己的軟件過程。KPA分別是:組織過程焦點、組織過程定義、培訓大綱、集成軟件管理、軟件產品工程、組間協調、同行評審;④Managed級,對軟件過程的每一個階段進行監控、取樣和定量分析,對形成的關于軟件制作和維護流程的數據庫不斷更新,保證軟件過程保持較高的質量。KPA分別是:定量過程管理、軟件質量管理;⑤Optimizing級,整個軟件開發機構的重心轉移到優化軟件過程,軟件組織對新技術的采用、產品預防缺陷、過程管理改進已達到循環優化的階段。KPA分別是:缺陷預防、技術更新預防、過程更改管理。
教育軟件的開發不同于一般的系統軟件和應用軟件。研制開發教育軟件不能僅僅依靠軟件專業的技術人員,需要具有多學科交叉的學術背景才能勝任教育軟件的開發工作。CMM強調持續不斷的軟件過程活動的改進與控制,是一個非常有價值的過程模型。在具體的實踐應用中,通過對CMM原理的改進,以提高教育軟件質量、降低成本、加強產品開發的可延續性、增加客戶滿意度為目標,構建了一個基于CMM的教育軟件工程實施框架。在這個框架中對目前CMM中的KPA做適當的裁減,定義了CMM中的7個關鍵過程域:需求管理、軟件項目策劃、軟件項目跟蹤和監督、軟件質量保證、軟件配置管理、同行評審和集成軟件管理;并設置了4個工作組:軟件工程過程組(SEPG)、軟件工程組(SWEG)、軟件質量保證組(SQAG)、軟件配置組(SCM)。教育軟件工程實施框架按照項目定義的軟件開發過程進行,嚴格按照自己制定的CMM框架來管理監督,以保證開發活動符合定義的標準,開發過程采用瀑布模型作為教育軟件生命周期模型。
1構建KPA
(1)需求管理(RM)。需求管理是教育軟件工程的第一步,也是非常關鍵的一個步驟,可以說需求分析的完整與否直接影響到過程的改進,甚至可以降低軟件質量、影響軟件的開發。具體實施過程中應將教育軟件的用戶需求納入基線管理,在同用戶有一個良好溝通的基礎上對需求分析做度量管理、跟蹤,對作出的需求分析經過雙方的反復論證形成標準的文檔資料。許多項目在完成后,用戶不斷新增需求或提出變更,使維護工作處于一種沒完沒了的地步,這就說明需求工作沒做好,沒有做嚴格的評審,導致軟件產品的質量不好。
(2)軟件項目策劃(SPP)。教育軟件項目策劃是根據目標對教育軟件過程實施活動的安排,是實施CMML2的核心并納入基線管理。其關鍵活動有軟件生存周期模型、工作產品、工作分解結構、項目估算、風險分析、項目計劃。教育軟件項目策劃控制包括進度控制、成本控制、質量控制、風險控制等。采取里程碑+跟蹤測試的方式進行,控制活動中注意對工作量、成本、關鍵計算機資源、進度、技術活動、風險的操作。
(3)軟件項目跟蹤和監督(SPTO)。教育軟件項目的跟蹤和監督是根據項目的計劃,它始終貫穿于整個過程中,是實施CMML2的核心,目的是規范教育軟件過程的流程,增加教育軟件過程中進度、成本、質量的可視性。在教育軟件工程中按照軟件項目策劃對需求、工作量、成本、進度、風險等內容進行跟蹤并形成文檔,跟蹤過程中注意數據收集、數據的分析并確定是否采取糾偏措施,需求和進度直接影響整個軟件產品的功能和成本,對風險的監督可以降低一些突發性的事件。
(4)軟件質量保證(SQA)。教育軟件質量保證對用戶來講是教育軟件產品滿足用戶需求的能力特征總和,對軟件組織本身來講體現了軟件開發的高質量、低成本和可控性,是有計劃、系統的質量管理活動,其目的是使軟件生產過程和軟件產品可視化、文檔化,即監控軟件過程保證合格的產品。在教育軟件工程的實施過程中教育軟件質量保證在SCM、PR、SPTO的相互配合下完成,SQA作為一個第三方的獨立活動而存在。
(5)軟件配置(SCM)。教育軟件配置是一種通過標識和文檔來記錄配置項的功能和物理特性,控制這些特性的變更、記錄和報告變更的過程狀態。目的是建立和維護在整個生命周期內軟件產品的完整性。在教育軟件工程中主要做了三個子項①配置項的標識,標識做到唯一性,便于跟蹤和管理。②安全的配置控制,對個人開發人員、公用軟件工作產品、軟件產品都實行標準數據庫管理,各自的變更分別存入軟件開發庫、軟件基線庫、軟件產品庫。這三個庫很關鍵,有不同角色的人員通過不同的權限來管理。③配置審計,在軟件產品交付使用之前對軟件基線庫執行一次完整的審計過程,保證最終軟件的運行。
(6)同行評審(PR)。同行評審作為教育軟件質量保證的依據而存在,它根據預定的規范和標準對軟件產品進行評審,本框架將教育軟件工程的同行評審作為一個KPA保留下來是因為可以通過在軟件行業中的同行來幫助發現問題。SPTO只能發現將需求分析、設計文檔等各個基線作為標準資料去尋找在實際過程中的缺陷或錯誤,而同行評審是從行業規范的角度去看問題,同行評審當中的人員全部來自本組織之外。同時,對于教育軟件工程中的詳細設計和軟件測試作為兩個關鍵評審點來進行PR,因為這兩個點在實際評審中最能發現問題,發現的問題直接影響軟件的成本與質量。
(7)集成軟件管理(ISM)。集成教育軟件管理的目的是針對教育軟件工程的過程管理,在實施中建立合適的軟件過程,此過程具備就緒、輸入、輸出、標準、驗證機制、完成判斷等特征。通過教育軟件工程的實施可以看出在整個軟件過程得到定制的情況下觀察到所有過程的進展情況,對進度、成本、質量真正做到可控和可預測,降低風險。
2組的定義
教育軟件工程過程組(SPEG)統一領導教育軟件工程的CMM實施活動,協調整個軟件過程的開發和改進活動,用來制定、完成、維護軟件工程規范和過程。集成軟件管理的內容也由SPEG完成。教育軟件工程組(SWEG)負責教育軟件工程的需求分析、詳細設計、概要設計、編碼、測試工作,SWEG完成RM和SPP。教育軟件質量保證組(SQAG)用來完成教育軟件工程的測試,對軟件過程進行跟蹤和監督,保證軟件過程的步驟按標準執行,評審軟件工程活動,檢驗軟件的一致性,提高軟件質量。SQAG集成了STG(系統測試組)、SPTOG、PRG過程,并完成相關任務。項目負責人直接監督SQAG的工作計劃。教育軟件配置組(SCMG)負責教育軟件工程中軟件配置的策劃、協調和實施,對配置數據庫做維護、變更、版本管理,同時完成ISM的任務。
四、結語
教育軟件工程的實施是一個復雜的過程,教育軟件的開發人員以及開發組織的管理是重要因素,在CMM的基礎上建立一個更為適用教育軟件工程的模型是我們的目的。由于裁剪的基本原則是維持軟件能力成熟度模型的結構和要求,并未從根本上改變模型本身,使教育軟件項目始終處在可視化的優良受控狀態中,所以有助于教育軟件開發過程的規范化、標準化,可以提高教育軟件開發效率,提高教育軟件產品質量,從而保證用戶能得到滿意的教育軟件產品。(本文作者:孫琦龍單位:青海民族大學計算機學院)