系統架構師、分析師和項目管理師的區別

系統架構師、系統分析師、項目管理師也許我們都聽說過,但是他們之間有什麼關係和區別呢,一起來看看!

系統架構師、分析師和項目管理師的區別

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

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

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

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

  系統構架師與項目經理的關係及區別

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

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

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

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

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

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

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