系統架構師、系統分析師和專案管理師的區別

才智咖 人氣:2.26W

系統架構師、系統分析師和專案管理師,也許我們都知道,但是他們之間有什麼區別和聯絡呢?我們一起來看看!

系統架構師、系統分析師和專案管理師的區別

系統構架師與專案經理的關係及區別

軟體專案經理是指對專案控制/管理,關注專案本身的進度、質量、分配、調動、協調,管理好人、財、物等資源的負責人。對於軟體專案經理來講,職責包括專案計劃、進度跟蹤/監控、質量保證、配置/釋出/版本/變更管理、人員績效評估等方面。

優秀的專案經理需要的素質,並不僅在於會使用幾種軟體或是瞭解若干抽象的方法論原則,更重要的在於從大量專案實踐中獲得的寶貴經驗,以及交流、協調、激勵的能力,甚至還應具備某種個性魅力或領袖氣質(charisma)。一般來講,技術人員重技術而傾向於忽視"人"的因素,而這正是專案繹理管理活動的.一個主要方面。專案經理還必須能夠應付開發過程中大量的偶發事件和雜務。

在一個專案中,推動專案技術發展的是系統構架師。在技術方面,專案經理(專案管理師)配合系統構架師並提供各個方面的支援'其主要職責是與內外部溝通和管理資源(包括人),系統構架師則要負責提出系統的總體構架,並給出開發指導。

系統構架師與系統分析師的關係及區別

系統分析師(systemanalyst)是在系統開發中進行業務需求分析、系統需求分析、可行性分析、業務建模和指導專案開發的人。其工作特點是與行業專家、使用者溝通,及時與專案經理(專案管理師)、軟體架構師協商,分析專案具備的特點、成本、風險等,考慮實現的模型。系統分析師所面臨的往往是有許多不確定性的事件,需要對這些不確定的事件進行分析、總結'使之得出一個相對可靠的確定性結論或實施方案模型。

一般意義上講,系統分析師的水平將影響系統開發的質量,甚至成敗。在一個完善的系統開發隊伍中,一般應有專案管理師、軟體架構師、系統分析師、軟體設計師、測試工程師、資料庫工程師、程式設計師和質量保證人員等不同的職位,還需要有業務專家和其他輔助人員。對於大型企業或專案,如果一人承擔多個角色,往往容易發生顧此失彼的現象。

系統分析師對業務系統進行分析、建模,他的任務、目標是明確的。系統架構師協同系統分析師的工作,建議系統分析師按什麼標準,什麼工具,什麼模式,什麼技術去思考系統。同時,系統架構師應該對系統分析師所提出的問題,碰到的難題及時地提出解決的方法。

系統架構師與其他團隊角色的協調

傳統的系統開發:通過對使用者的需求分析,組織必要的資源和設施,選擇設計合適的架構,然後由專案經理統籌安排組織實施(包括人、財和物),這是一個反覆互動,逐步契合的過程。

由上面所述可以看出,在傳統的系統開發中,系統開發進度及統籌的管理主要由專案經理來完成,需求分析及技術實現主要由系統分析員或設計員來完成。由於專案經理、系統分析員或者程式設計師從各自職位角度出發產生衝突的制約,不可能很好地給出開發規範,搭建系統實現的核心構架,並澄清技術細節、掃清主要難點的技術,或者說最終難以確認和評估技術對需求實現產生的影響。

所以我們把系統架構設計師定位在圖中兩個楠圓相交的部分,他負責整個系統的戰略策劃和技術實現。上圖說明架構設計先行和系統架構師、系統分析師、專案管理師三者的相互關係與作用。