陸中 陳濱掖
摘要:以軟件工程項目過程為依托,結合樂一項目,探討軟件工程的實施過程,總結工作中的經驗,以提高今后的工作效率。
關鍵詞:軟件工程 系統設計 系統開發
現在我國軟件工程管理并沒有得到廣泛的重視,但是隨著時代和技術的發展,在軟件開發過程中對于項目管理的不重視,將會導致軟件產品質量差、資金浪費、進度無法按時完成等各方面危機的出現。軟件項目過程,其實是進度、質量以及成本的三維演繹過程。當三者達到平衡,項目就能夠順利完成,如果三者之間,有一個維度出現失衡現象,那么這個項目注定是失敗的。需求分析過程,系統概要設計過程,系統詳細設計過程以及編碼過程,測試過程與部署維護過程構成了軟件開發的生命周期,每一個過程都在不斷地重復著進度、質量與成本的權衡演繹。因此從另一個角度思考,在軟件項目工程的實施過程中實施項目管理,對進度、質量、成本等進行風險控制,保證軟件項目能夠按預期的目標完成,將項目的風險規避到一個可控范圍,以保障項目的順利完成。本文系統地介紹了ERP管理軟件(下簡稱樂一系統)開發過程中風險控制的管理過程。
1 項目介紹
樂一系統是以日本卡西歐軟件株式會社的APS工具平臺開發的日本企業ERP管理軟件,在日本地區銷售使用,在日本享有盛譽。其主要功能有:①商品的管理。包括商品的基本信息以及其庫存情報。②客戶信息的管理。③買進信息的管理。④賣出信息的管理。⑤倉儲信息的管理。⑥系統維護所需的信息管理。
經過多年的開發維護,樂一系統日趨完善。因日本新稅法的實施,以及客戶需求的提升,本次項目開發是對系統中日本消費稅的計算方法進行變更、升級。
2 項目需求分析階段
在項目起步階段,選定項目負責人,然后開始進行開發人員的組織。從本次項目分析,項目的工程量大,開發難度大,需要大量有經驗的程序員。由于APS語言的專業性,本次半數以上使用有4年以上開發經驗的人員;若干1~2年經驗的人員,在開發過程中提升他們的能力,為以后的業務服務;若干公司新進人員,培訓他們掌握APS語言,熟悉開發過程,為以后的業務做儲備。另外,為了項目的品質,有多人組成的品質小組一個,在整個項目過程中完成以下工作:確認難點需求,培訓后進人員,提供技術支持,走查編碼質量等等。在項目需求分析階段,為了規避業務風險,讓所有參與業務的人員認真閱讀用戶的需求報告。由于樂一系統只在日本使用,因此日方人員完成了用戶需求信息的收集整理。在閱讀期間,以開會討論說明的方式,讓大家理解日方的要求,對于相當費解的需求可以開網絡會議與日方交流。在需求理解有分歧的時候,可以發送QA,向日方求證。
3 系統設計階段
在系統設計階段,由經驗豐富的成員對項目進行結構功能劃分,相對項目而言,系統功能相對獨立,分開設計可以提高項目的可靠性。在設計詳細說明書階段,同時把測試說明書編制出來,在測試階段使用,目的是給測試階段提供指導文檔,以提高測試的質量以及精度。文檔包括單體測試說明書和綜合測試說明書。設計完成后,由品質小組做先期檢查,確認無誤后發至日方,由日方檢收。
4 系統開發階段
在系統開發階段,程序員根據先前的設計情況,進行系統的編碼工作,編碼完成對自己負責的部分做測試。為了程序的一致性,對高度相似的代碼編寫系統函數,編制函數編碼說明書。在開發階段,為了控制軟件的進度與質量,作為項目負責人,應積極跟蹤工作情況,對開發中出現的難點提供給品質小組,由小組做出攻關,說明,指導。為了保證質量,品質小組要在成員編寫代碼完成后進行抽查,以求在開發階段發現解決編碼中的問題。
5 系統測試階段
到項目開發完成后,需要對系統進行測試,測試點主要針對本次開發的功能點進行測試,其中主要體現在用戶操作界面是否流暢,界面會不會被隱藏,或者操作界面顯示的數據是否正確,這都是測試的基本點。
本公司測試分為兩個階段。一為單體測試階段,二為綜合測試階段。單體測試階段主要由非本程序的開發程序員來測試。以詳細說明書,測試說明書為依據,對界面操作、顯示數據、更新數據進行測試。這個階段持續的時間比較長,一般來講和編碼階段使用的時間相同,包括了測試和修改問題等工作。綜合測試階段是按照綜合測試說明書,模擬用戶的使用習慣和使用過程,對項目做整體性、效率性的測試。綜合測試主要由經驗豐富的成員進行,后進人員一同進行,主要學習熟悉項目系統以及提高自己的能力。同樣這個階段包括了測試和修改問題的工作。
從測試結果來看,由于先前的風險規避設計和跟蹤保證,測試結果較為滿意。當測試完成后,就可以發送至日本,交付項目。由日方部署項目,進行試用。這時安排一至兩人對應日方發現的市場問題點。兩至三個月后市場問題點的對應移交到維護部門,人員全部撤出。至此本項目開發完成。
從整個項目過程來看,從需求分析到編碼,測試都是在規避風險,所以,筆者認為計算機軟件工程實施過程其實是規避項目風險的過程。在項目的初期編制說明書是為了規避項目編碼中的風險,使編碼一致;編碼中期的品質跟蹤是為了規避后期測試中出現大量問題點的風險;后期兩個階段的測試是為了規避上市后市場問題點的出現。
參考文獻:
[1]宋雨,趙文清.軟件工程[M].中國電力出版社,2007年2月.
[2]修鵬鵬.如何創新和完善計算機軟件工程管理[J].計算機光盤軟件與應用,2013(23).
[3]何耀欽.軟件系統工程:方法和管理的結合[J].系統工程,1991(01).