項目團隊的領導


前言:人員定義
開發人員:那些做軟件開發工作的人。他們做出具體的技術決策,從事設計,編碼,測試,文檔編寫等工作。對於自己所從事的開發領域負責,但不必對整個項目負責。

團隊領導:那些做出關於軟件項目的結構,設計,編碼等技術決策的人。主要負責整個項目的技術上的成功,指導和檢查其他團隊成員的工作,負責軟件產品的質量;有廣泛的,先進的開發經驗,或許要親自進行軟件開發工作;在一個小型項目中,可能也充當項目經理的角色。

項目經理:負責計劃,預算,與管理層聯繫,與客戶談判。不做開發工作;可能要指導好幾個團隊領導開展工作;主要負責項目按時,在預算之內交付。

第一章 項目初期
1,需要進入角色
按照規定的步驟,進行工作,不要找藉口忽略某一步驟。
“有效”(做正確的事情)遠遠重於“有效率”(做的快),明白這個道理很重要。

2,獲取信息
儘可能多的瞭解項目有關的信息。
不僅要了解技術方面的問題,還要了解項目存在的原因;分清楚那些是客戶真正重要的和關心的。
找相關的人員談話,瞭解每個人的情況。
如果早期就投入了過多人員,一定要設法讓團隊成員忙碌起來,讓他們設計基礎的架構或者做技術調查,也可以利用這個機會讓他們學習新的技能。(團隊成員所做得工作並不是百分之百地對項目有用,不過沒有關係)

3,結構和框架
A,結構,是指項目解決方案的模塊化結構,包括:如何把軟件分解爲客戶機程序,服務器,程序庫和元件(大的模塊劃分等)。
決定使用何種結構不僅和技術有關,還和人有關,要清楚的知道每個部分將被如何開發,誰將做這方面的工作,至少知道做這份工作需要什麼樣的技能。採用何種結構的決定往往不是取決於純粹的技術問題,而更多的取決於現有人手的技能,組織對團隊的安排。
 
B,結構完成,就應該創建編碼框架。
創立框架意味着每個人都擁有一個可供填充的編碼框架,這樣能減少每個人的思考範圍,也能減少出現混亂的可能性。
在框架中展示出你所期望的編碼風格,(組織良好的,清晰的,有詳細註解和大量錯誤監測的編碼)

4,詳細計劃
整理出詳細地計劃(工程表),基於項目的結構覈對團隊成員能力和興趣的瞭解,爲他們初步分配工作任務。
如果估計項目無法按時交付或者超出估價,必須向管理層闡述計劃,並說明需要的是更多的時間還是更多的資源。
需要做一個合理的計劃,避免屈於壓力做一個不切實際的計劃。

第二章 項目進行階段
作爲團隊的領導,在項目初期需要籌劃整個項目,工作比較繁忙;但是在設計-編程-測試的時期,隨着式樣的漸漸穩定,團隊成員圍繞着結構框架和計劃在一起工作,此時將進入團隊領導的“高原”時期。因爲在這個時期,團隊不像以前那樣需要領導出來組織工作。
(這個時候,可以幹些什麼,應該幹些什麼,過去一直是我的疑惑。)

如果有時間,可以自己做一些編寫程序的工作(如果自己非常喜歡的話)。然而,必須始終記住做爲領導的責任是放在第一位的。因爲團隊中其他任何人都不需要去做領導工作(而其他人是可以做編制程序的工作)。
 
這個時期主要任務是:
1,清除障礙。
    考慮將來可能遇到的問題,在這些問題困擾團隊其他成員前把它們解決掉。
    培訓需求,需要提前考慮。
2,讓每個人都有用武之地,並讓他們協同工作。
3,捍衛設計。
    防止任何人在設計時走捷徑。這種事情可能會損害結構或減少結構的閉合性。
4,向管理層和客戶彙報項目情況。
    讓人們意識到存在的問題。要讓你的項目脫穎而出,同時也要維護你的團隊成員。
5,和其他項目負責人,部門和組織進行聯絡和商談,以尋求所需要的幫助和資源,同時讓人們注意到這個項目。
6,從組織內部或外部召集專家和顧問,只要認爲他們的幫助將對這個項目有好處,就去請教他們。(外部的,需要同他們有良好的關係基礎,確保不用付出過分的費用)
7,做些小的,日常性的技術決策,或者授權別人去做這些決策。
8,保持項目井然有序。
    做好配置的的管理。
9,把握項目的正確方向。
    有必要的話,把錯誤全部糾正過來。不能縱容項目偏離正確的發剛。
10,決定何時發佈進展。
    包括項目中的內部發布,同時還需要決定發佈的內容。
11,在認爲適當的時候對設計,編碼以及文件紀錄進行檢查。
12,更新式樣,測試式樣,設計書等等。
13,處理各種式樣變更,資源問題,以及其他干擾原定計劃實施的因素。
14,在必要的時候召集會議。
15,指導並關注團隊的其他成員,特別是一些初級水平的成員。
    關注他們工作的方式。如果有必要,可以清楚的像他們說明如何使用工具,應該遵循什麼樣的步驟和程序。
16,通過授予成員一定的責任和鼓勵他們參加必要的培訓來促進成員發展。還要讓自己的知識能跟上潮流。
17,負責人事問題。
18,是的項目運作具有社會意義。
    領導應把整個團隊成員結合在一起。
19,保證充分的檢測和文件紀錄。
    計劃一下如何對工作進行檢測,如果合適的話,要檢查測試的細節。
    對其他人的工作進行單獨的檢查以瞭解他們的所做所爲,並指出在編碼中可能出現的質量問題。
20,及時調整計劃。
    瞭解項目在約定的交付時間內的進展情況,必要的時候與客戶和管理層共同調整項目內容,資源或時間表。如果有必要的話,可以讓團隊成員加班工作。
21,確保正確執行公司的工作程序。
22,完成那些別人不去做的工作。
    團隊的工作通常無法完全安排給每一個人,很可能某種特定的任務就沒有人去做。這種情況下,這些工作就落到了自己頭上。身爲領導,必須非常靈活地承擔起這些需要做的工作。這樣開發人員才能專心的做開發工作。(但是像修復錯誤,進行詳細測試,設計及書寫設計文書等工作就必須有開發人員自己做。)
23,管理好自己的時間。
    避免超負荷運轉。
24,如何合理地寫程序。
    編寫程序是比較次要的事情。帶領超過5,6人的團隊,可能根本就沒有時間去做編程的工作了。
 
這些工作實際上就是在日常的事務中進行的,可能一般沒有察覺到他們正在進行。但是必須記住要從整體上來把握一個項目,而不能讓具體的技術問題分散注意力。
 
第四章 後期階段
隨着項目結束時間的臨近,又會感受到極大的壓力。必須更加嚴格地控制項目的進展,以保證測試,文件紀錄和發佈程序都做的沒有問題。

結論
啓動一個項目並保持它在正確的方向上運行可能是非常困難的工作。但是一旦它運作起來,它自己就能具有向前推進的動力,工作就變得簡單多了。只需要把握好前進的方向,並注意不要超出日程,那麼工作就會向着目標前進。

附:
1,新的技術
對於團隊領導,保持技術非常重要,這並不意味着必須精通每一項新出現地技術。但是他們出現地時候,必須去了解他們,知道什麼時候他們最適用,用它們來做什麼。也就是能夠廣泛地瞭解各種技術,對各種可供選擇地方案有一個廣而不深的瞭解。

2,應該寫多少程序
列出三種情況,在這些情況下,應當優先去做一些具體編程工作。如果有這方面的技術的話,就去做一些編程地工作;如果不具備這方面地技術的話,那麼就對這個過程進行非常嚴密地控制和檢查。
 當爲一個項目創建框架程序時,這個工作最好由領導來做,或者在加上一個人來幫忙完成,而且在實施開始之前這種工作應該做到界面編碼的最小細節。
 在做發佈之前,或已經承諾了什麼的時候,應該去做編程的事情。這時候也是需要大家羣策羣力的時候。
 當這些程序至關重要,或者你是唯一的專家,而且如果你也沒有時間幫助其他人來做這些事情的時候,你就得親自做。(但是對於領導來說,自己成爲唯一一個掌握關鍵技術或知識的人並沒有好處,因此應該在有時間的時候將你的知識傳授給其他人。)
領導的目標是讓每個成員都能在項目中各司其職並做他們最擅長的工作。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章