系统分析员、系统架构师、项目经理的区别(转载)
額外的話說了不少,還是回來看看,到底“系統分析員、架構師、項目經理”之間有著什么樣的差別?下面按自己的理解粗略的整理了一下,也許并不全面,綠色部分代表每一個角色主要需要參與考慮的活動(注:下面所說的系統分析員混合了設計的職責):
首先看一下架構師和系統分析員的區別:
1、系統分析員必須考慮自己所設計系統的方方面面,他是系統實現的原始作者,也對系統能否滿足客戶的技術要求以及產品成本是否可接受起著最直接的作用。
2、 架構師一般在軟件組織內僅僅是少數人,他們主要負責對產品的架構進行評估以及子系統之間的接口批準上,評估的主要方面集中在系統級的質量屬性和成本上,包 括:當前架構是否滿足可靠性要求、系統架構的可擴展性、可重用性、性能以及基礎的公共功能等等。他們必須對系統分析員設計出來的系統進行最初的把關,所以 責任重大,也需要經驗非常豐富的人來承擔。在公司其他部門和Ivar Jacobson的交流中,Jacobson明確的指出,架構委員會不是常設組織,通常都來源于團隊的系統分析員,唯一常設的職位通常只有一個主席,其他的成員必須臨時來源于系統開發的一線,只有他們最了解系統開發的基本思想。
3、系統成本是架構師和系統分析員最容易忽略的事情,而這個也是他們最基本的職責之一。
接下來看看系統分析員和項目經理的差別:
1、一個不合理的計劃往往被歸咎于項目經理,但這并不是事實。計劃的制定嚴重依賴于系統分析員所設計系統的部件完成工序,而唯一能對這個作出準確判斷的只有系統分析員。所以,計劃的最初版本是來源于系統分析員而不是項目經理。項目經理在這方面的主要作用是協助系統分析員制定計劃,幫助考慮人員、資源方面的投入情況,并在項目的執行過程中嚴格監控項目的進度情況。
2、質量目標的制定和計劃一樣,來源于系統分析員,尤其是性能、可靠性等關鍵技術指標,而這些的第一跟蹤主體也是系統分析員。項目經理在其中的角色,只是協助系統分析員安排各種資源,完成這些目標的測試、跟蹤等活動。
3、成本是唯一的需要架構師、系統分析員以及項目經理共同關注并且嚴格控制的因素,原因很簡單,這是大家靠著吃飯的來源。
4、項目其他的非技術方面的因素,則基本都是由項目經理負責搞定,包括合同、人員溝通、采購等等。
====================
系統構架師與產品經理的關系及區別
產品經理通常是指負責產品設計的“專人”。一個優秀的理想的產品經理,應同時具備較高的商業素質和較強的技術背景。產品經理要有深厚的領域經驗,也就是說,對該軟件系統要應用到的業務領域非常之熟悉。比如,開發房地產銷售軟件的產品經理,應該對房地產公司的標準銷售流程了如指掌,甚至比大多數銷售人員還要清楚。如果開發的是通用產品,他/她還具備對市場、潛在客戶需求的深刻洞察力。
那么,系統架構師與產品經理有什么不同呢?
我們不應該把二者混為一談,這是不少論述和實踐常犯的錯誤。我看來,如果把開發軟件比作攝制電影,產品經理之于系統架構師,就正像編劇之于導演。產品經理雖然要有一定技術背景,但仍應屬于“商業人士(business people)”,而系統架構師則肯定是一個技術專家。二者看待問題的立場、角度和出發點完全不同。
系統構架師與項目經理的關系及區別
軟件項目經理是指對項目控制/管理,關注項目本身的進度、質量,分配、調動、協調、管理好人、財、物等資源的負責人。對于軟件項目經理來講,包括項目計劃、進度跟蹤/監控、質量保證、配置/發布/版本/變更管理、人員績效評估等方面。優秀的項目經理需要的素質,并不僅在于會使用幾種軟件或是了解若干抽象的方法論原則,更重要的在于從大量項目實踐中獲得的寶貴經驗,以及交流、協調、激勵的能力,甚至還應具備某種個性魅力或領袖氣質(Charisma)。
由此可見,項目經理和系統架構師在職責上有很大差異。混同這兩個角色,往往也會導致低效、無序的開發。特別是,從性格因素上講,單純的技術人員傾向于忽視“人”的因素,而這正是管理活動的一個主要方面。另外,就像戰爭中的空軍掩護(Air Cover)一樣,專職的項目經理能夠應付開發過程中大量的偶發事件和雜務,對于一個規模稍大的項目,這些雜務本身就能占用一個全職工作者的幾乎全部時間。在一個項目中,推動項目發展的是系統構架師,而不是項目經理。項目經理的職責只是配合系統構架師,提供各個方面的支持。主要職責是與內外部溝通和管理資源(包括人)。系統構架師提出系統的總體構架,給出開發指導。一個項目中,項目經理的角色什么?如果他即使管理人員又是設計人員,則必須比別人強,能夠有讓別人服的東西。如果他只是項目管理人員,系統構架師有專門人員,就可以不用精通或者說了解 it 各個方面的知識,如果了解更好。另外,如果在一個項目沒有人在技術構架上和開發指導上負全部責任,而是每個人都負責一快的架構、分析、設計、代碼和實施等,最后肯定會失去管理。
系統構架師與系統分析員的關系及區別
系統分析員(System analyst)是指對系統開發中進行分析、設計和領導實施的人。一般意思上講,系統分析員的水平將影響系統開發的質量,甚至成敗。但在一個完善的系統開發隊伍中,還需要有業務專家,技術專家和其他輔助人員。所以,系統分析員只是其中的角色之一。但我國許多的 IT 公司,一般只有系統分析員而沒有技術專家。系統分析員固然是對特定系統進行分析、設計。所以他的任務、目標是明確的。他只是去執行任務,完成系統的最終設計。
系統架構師應該和系統分析員分開,但架構師必須具備系統分析員的所有能力,同時還應該具備設計員所沒有的很多能力。 系統架構師是指導、檢督系統分析員的工作,要求系統分析員按什么標準,什么工具,什么模式,什么技術去設計系統的。同時,系統架構師應該對系統分析員所提出的問題,碰到的難題及時地提出解決的方法。并檢查、評審系統分析員的工作。
總結
以上是生活随笔為你收集整理的系统分析员、系统架构师、项目经理的区别(转载)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSS学习笔记(更新中...)
- 下一篇: CUDA Texture Memory