iT邦幫忙

DAY 6
2

打造軟體團隊系列 第 6

打造軟體團隊(5): 軟體專案管理-團隊內各個角色的工作分配

定義出軟體流程後, 需要有各個角色的人員來完成軟體流程.
根據上篇所列軟體流程將所需職位,扮演的角色和負責工作列舉如下-

1.軟體專案經理:負責軟體時程的規劃, 軟體基本規格的制訂, 與客戶和軟體人員溝通協調的橋梁. 在系統廠不一定會有專門軟體專案經理的配置, 有可能是一個專案經理兼著看軟硬體機構. 所以要看專案經理的背景, 如果是硬體背景或是機構背景, 就有可能對軟體比較無法掌握. 這時候就很需要軟體專案負責人的配合. 有的公司會把軟體專案經理設置跟專案經理在一起, 有些會擺在軟體部門(比較少, 通常是兼著做).

2.軟體專案負責人:軟體背景出身, 負責內外的溝通, 內部軟體時程和問題的追蹤, 通常是找資深的工程師, 溝通技巧不錯, 又有管理能力的人擔任. 一個軟體的成敗跟他有很大的關係, 他要負責把專案的消息帶回團隊內, 讓團隊內的人處在同一條船上, 往同一個方向划行. 對外則要有能力判斷及回應客戶或其他部門的需求.

3.系統分析師:有公司是稱做系統架構師, 負責架構出整個系統的規格, 使用的平台, 技術. 根據客戶的需求做系統分析和相關的文件. 小的系統廠通常沒有這個編制, 所以可能是由專案負責人來兼任.

4.系統設計師:根據系統規格撰寫系統設計文件. 在系統廠, 目前我還沒有看過有這個編制的, 通常這個工作會由系統分析師或軟體工程師來完成.

5.軟體工程師:根據系統規格, 撰寫程式, 必要時會需要與韌體工程師合作. 另外還有機會撰寫工廠的測試程式(如果公司沒有編制的話).

6.韌體工程師:根據系統規格, 硬體Datasheet, 撰寫韌體, 需要與硬體工程師配合, 需要看的懂電路, 做一些訊號量測.

7.系統整合工程師:負責將軟韌體整合, 編譯出Image. 另外配合軟體專案負責人控管軟體流程.

8.軟體測試工程師:應該有人會好奇,一般不是都有專門的QA/QT部門嗎? 怎麼在軟體團隊也會有軟體測試工程師呢? 我是認為如果編製許可的話, 軟體團隊最好也有自己專屬的測試人員, 做內部的軟體測試, QA/QT 算是軟體團隊的客戶, 所以給QA/QT的軟體也要做好品質的控管. 總不能丟了一版Image過去, 結果連開機都開不了, 樣軟體品質的控管是有問題的.
配置此人員除了做基本的軟體品質控管外, 還可以協助軟韌體工程師做一些壓力測試, 或一些工程端的測試項目.
另外一個配置此人員的理由是, 工程師通常自己測試的時候都會有盲點, 只會考慮到自己改的程式的部分, 而QA/QT又比較是從使用者角度去做測試. 因此一個有技術背景, 又不是開發者的人員, 他會知道一般軟體的"弱點"在哪裡, 可以測出開發者和 QA/QT所測不出來的問題.

以上是角色的分工, 事實上除非是很大的公司, 不然人員通常都是複合性的角色, 一個人可能兼做軟體專案經理和專案負責人, 軟體工程師可能兼做系統分析和系統設計. 反正Cost down嘛! 都說系統廠比較不重視軟體專案管理了, 自然就不會有那麼細的分工, 但建議團隊負責人雖然"手中無劍, 但心中要有劍", 知道每個角色的分工, 才能靈活的規劃軟體流程和工作分配....


上一篇
打造軟體團隊(4): 軟體專案管理-軟體流程的規劃
下一篇
打造軟體團隊(6): 軟體專案管理-軟體時程的規劃
系列文
打造軟體團隊30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

我要留言

立即登入留言