本文主要講述如何組織開發軟體專案,使之更加快速、有效的完成。並分成以下幾個階段進行詳細講述:專案計畫階段、需求分析階段、軟體設計階段、軟體
開發階段、測試階段、(發布,維護)、管理軟體開發過程、各參與角色的具體職責描述及對人員的要求。最後提供了一些文件標準參考。
本開發過程可以作為中小型(3-7人)軟體專案的開發指南,而大型軟體專案使用rup會更好。
總體流程如下:
計畫階段-》需求分析階段-》軟體設計階段-》軟體開發階段-》測試階段-》完成(發布,維護)
一、專案計畫階段
專案計畫草案和風險管理計畫作為第一步,當有乙個商業機會後,根據公司高層負責制定的初步商業計畫書來完成專案的計畫草案,確定、分析專案風險並確定其優先順序,還要制定風險解決方案。本階段的目的是確立產品開發的經濟理由。
當確定開發之後則制定軟體開發計畫、人員組織結構定義及配備、過程控制計畫。
(1)專案計畫草案
專案計畫草案應包括產品簡介、產品目標及功能說明、開發所需的資源、開發時間和里程碑。
(2)風險管理計畫
也就是把有可能出錯或現在還不能確定的東西列出來,並制定出相應的解決方案。風險發現得越早對專案越有利。
(3) 軟體開發計畫
軟體開發計畫的目的是收集控制專案時所需的所有資訊,專案經理根據專案計畫來安排資源需求並根據時間表跟蹤專案進度。專案團隊成員根據專案計畫以了解他們的工作任務、工作時間以及他們所依賴的其他活動。
可將計畫分成總體計畫和詳細計畫,總體計畫中每個任務為乙個里程碑,詳細計畫中必須將任務落實到個人。
軟體開發計畫還應包括產品的應收標準及應收任務(包括確定需要制訂的測試用例)。
(4)人員組織結構定義及配備
常見的人員組織結構有垂直方案、水平方案、混合方案。垂直方案中每個成員充當多重角色。水平方案中每個成員充當一到兩個角色。混合方案則包括了經驗豐富的人員與新手相互融合。具體選擇根據人員實際技能情況進行選擇。
(5)過程控制計畫
過程控制計畫的目的是收集專案計畫正常執行所需的所有資訊,用來指導專案進度的監控、計畫的調整,確保專案按時完成。
二、需求分析階段
需求分析階段的目的是在系統工作方面與使用者達成一致。
(1)軟體需求規約
詳細說明系統將要實現的所有功能。
(2) 使用者介面原型
可以有三種表示方法:圖紙(在紙上)、位圖(繪圖工具)、可執行檔案(互動式)。
三、 軟體開發階段
本階段從物理上實現目標系統。採用了物件導向方法。
(1)軟體架構
說明軟體的組織結構、部署結構及執行環境。
(2)類設計
定義類之間的關聯和類的屬性、方法。
(3)資料庫設計
定義資料庫表之間的關聯和各個表的字段。
(4)編碼和單元測試
按照設計文件進行編碼,每完成乙個模組應進行單元測試。
(5)整合系統
按軟體組織結構的要求將各個子系統組合起來。
四、測試階段
測試的目的是在發布之前找出程式的錯誤。包括:核實每個模組是否正常執行(參考設計文件)、核實需求是否被正確實施(參考需求文件)。
(1)測試計畫
收集和組織測試資訊,為測試工作提供指導。
(2)測試資料
盡量使用真實資料。
(3) 測試報告
記錄測試結果,詳細描述問題,提出解決辦法。
(4)幫助檔案和使用者操作手冊
五、 管理軟體開發過程
有以下幾方面地工作:
(1)組織會議
討論會議、總結會議等。
(2)評審程式
對各個階段的工作結果進行審核。
(3)協調人員
(4) 配置管理
使用一些配置管理工具進行開發文件管理,如:visual sourcesafe,teamsouce等
六、 各參與角色的具體職責描述及對人員的要求
(1) 專案經理
職責:1、 制定產品的目標。
2、 制定各個工作的詳細任務表,跟蹤這些任務的執**況,進行控制。
3、 組織會議對程式進行評審。
4、 綜合具體情況,對各種不同方案進行取捨並做出決定。
5、 協調各專案參與人員之間的關係。
人員要求:
對產品有激情,具有領導才能。
對問題能正確而迅速地做出確定。
能充分利用各種渠道和方法來解決問題。
能跟蹤任務,有很好地日程觀念。
能在壓力下工作。
(2)系統分析員
職責:1、 了解使用者需求,寫出《軟體需求規約》。
2、 建立使用者介面原型。
人員要求:擔任系統分析員的人員應該善於協調,並且具有良好的溝通技巧。擔任此角色的人員中必須要有具備業務和技術領域知識的人才。
(3)設計員
職責:1、 定義類的方法和屬性以及各個類之間的關聯,畫出類圖。
2、 進行資料庫設計。
人員要求: 掌握物件導向分析與設計技術,統一建模語言(uml)。
(4)程式設計師
職責:按專案的要求進行編碼和單元測試。
人員要求:良好的程式設計技能和測試技術。
(5)測試員
職責: 執行測試,描述測試結果,提出問題解決方案。
人員要求:了解被測試的系統,具備診斷和解決問題的技能,程式設計技能
根據每個人的特長來擔任其中的乙個或多個角色。最好是每個人都能參與設計和編碼工作,每個人都能夠建立起系統地全域性觀
軟體開發過程及崗位職責
本文主要講述如何組織開發軟體專案,使之更加快速 有效的完成。並分成以下幾個階段進行詳細講述 專案計畫階段 需求分析階段 軟體開發階段 測試階段 管理軟體開發過程 各參與角色的具體職責描述及對人員的要求。最後提供了一些文件標準參考。本開發過程可以作為中小型 3 7人 軟體專案的開發指南,而大型軟體專案...
軟體開發崗位職責描述
軟體開發部經理 1.擬定本部門年度 月度目標 工作計畫及總結並上交主管副總經理審批 2.部門經理享有部門內部人事調配權 軟體部統一對外出口為軟體部部門經理 嚴格遵守公司的各項管理制度,認真履行工作職責,行使公司給予的管理權力,杜絕一切越權事件的發生 3.針對部門的發展計畫,向人力資源部門提供部門員工...
軟體開發過程
1.程式設計師寫出自認為沒有bug的 2.軟體測試,發現了20個bug。3.程式設計師修改了10個bug,並告訴測試組另外10個不是bug。4.測試組發現其中5個改動根本無法工作,同時又發現了15個新bug。5.重複3次步驟3和步驟4。6.鑑於市場方面的壓力,為了配合當初制定的過分樂觀的發布時間表,...