
集中辦公
怎樣才能極大地提高團隊的生産效率呢?答案是讓每個人都坐在一起。
集中辦公的團隊效率就是要高一些。問題不僅可以很快地在現場得到解決,而且彼此間的交流也會更加順暢,并能很快建立起信任。集中辦公的小型團隊競争力是非常強的。
那麼,既然集中辦公的團隊這麼好,是否意味着分布式團隊就無法運作靈活項目了呢?絕對不是。
對于很多人來說,分布式辦公正在成為一種生活方式。雖然相比緊湊型集中辦公的團隊,分布式團隊總會有些劣勢,但仍可以用很多辦法來加以彌補。
比如,在項目的初始階段,為了将所有人都召集在一起,你要預留一些時間。哪怕是隻有幾天也好(如果能延長到幾周就更好了),大家在這段時間内互相認識一下、開個玩笑、一起吃個飯,這非常有助于你把形形色色的人聚合在一起,打造成一個緊湊高效的團隊。是以,在開始階段,就要将所有人都聚在一起。
之後,即使沒有集中辦公,你也可以使用書本中提及的所有溝通工具和技巧(Skype、視訊會議和社交工具),使你的分布式團隊看起來像一個集中辦公的團隊。
專職客戶
當今仍有很多團隊編寫的軟體沒有專職客戶。這很可悲,甚至可以說是一種犯罪。
如果産品的使用者沒有納入到程序中,怎麼可能期望團隊能夠建設優秀而具有創造性的産品呢?
專職客戶會在示範版中現身、解答問題、給出回報,并為團隊建設優秀軟體提供必要指導和洞見。他們是團隊的核心成員,是傳遞過程中的全面合作夥伴。
正是由于這個原因,諸如極限程式設計和Scrum這樣的靈活方法都盡量實作客戶的專職化,比如采用現場客戶,或像Scrum那樣設立專門的産品負責人。這是一項很重要的工作。稍後我們會對這些角色加以詳述。
也正因為這樣,任何成功的靈活項目都需要專職客戶。
現在你可能心存疑惑:“沒有專職客戶,應當怎麼做?” 那是因為可能他們過去曾經失望過,也可能他們認為根本不需要現在這個項目,或者他們隻是認為你根本傳遞不了。
不管有什麼問題,如果你想建立某種客戶信譽,那就得這麼辦……
下一次面對客戶時,請告訴他們:從現在起會在兩周内解決他們提出的一些問題。
不需要征求誰許可,别搞什麼不知所雲的大型儀式。隻管收集一些問題,了解客戶的疾苦,然後将問題解決即可。
接着就是要付諸實施。兩周過後,向客戶展示他們的問題已經完全解決了,然後重複這個過程。再收集一些其他的問題,解決掉。
你可能需要重複這個過程三到四次(甚至更多次),才會引起他們的注意。但最終他們肯定會注意到的。
此時,他們就會對你刮目相看,了解到你的真實價值:你是一個辦事靠譜、值得信賴且雷厲風行的執行者。
喏!你可以找出一千個理由來解釋為什麼客戶不是專職的。也許他們厭倦了由IT部門去完成他們的項目,也許他們沒有或者不需要将軟體放在首要位置,也許你沒有讓他們意識到他們這種角色對于項目的成功有多麼重要,或者他們可能隻是真的很忙。
我絮叨了這麼多,就是想說明一點:如果想建立一些誠信,那就要經常往信任儲蓄罐裡面放點零錢,這樣才會最終赢得客戶。
自組織
靈活團隊常常會設定一個目标,然後退而結網,通過共同研究來實作目标。為此,靈活團隊需要進行自組織。
自組織首先要求個人放下架子,與團隊協作,将自己作為團隊的一分子,想出如何發揮出個人所有的獨特技巧、激情和天賦,最好地傳遞項目的辦法。
“鮑比當然可以分割代碼。但他也擅長設計,是以,還是讓他幫忙做實體模型吧。”
“對,蘇茜是我們最好的測試人員之一,但她真正出色之處在于設定客戶期望值。她的确有一套,并且也喜歡做這項工作。”
這并不意味着開發者必須要精通可視化設計,或者立刻就要求測試者去管理項目。
這隻是說建設團隊的最好方法是要讓角色适應人,而不是讓人适應角色。
那麼,該如何使團隊自組織呢?
- 要讓他們自己建立計劃、提出估算,并對項目全權負責。
- 不要擔心所謂的頭銜和角色,而要更關注于不斷傳遞出可運作且經過測試的軟體。
- 你要找的人應該具有主動性,喜歡掌控自己命運而非惟命是從。
簡言之,你要擺脫束縛,信任他們并授以權力,這樣工作才能完成。
現在,自組織本身就夠強大了吧,但是真正的神奇之處是其所引發的授權和責任感。
勇于承擔和授權
優秀的靈活團隊會對其所産生的後果勇于承擔。他們知道自己是客戶成功的關鍵,并且從一開始,他們就要傳遞有價值的東西,這是他們義不容辭的責任。
當然,隻有團隊真正地被授予權力,勇于承擔才會發揮效力。讓團隊自己去抉擇,去做他們認為正确的事情,這可以激發他們的主動性并使其獨立工作。他們會解決自己的問題,不必再等待他人的許可。
當然,你偶爾也會犯錯。但由于這樣做優點頗多,故而值得冒險。
建立一個授權和有責任感的團隊說起來容易做起來難,不是所有人都希望被授權。如果隻是要混個臉熟,做個打下手的工作并且隻需奉命行事,那就非常簡單,何必自找麻煩呢?
如果你認為在培養團隊責任感這方面有問題,那麼有一個簡單的解決方案——讓團隊示範其軟體。
将團隊推到現實中真正的客戶面前,讓他們示範軟體,這會極大地提升團隊的責任感。
首先,你的團隊會意識到現實中有人正依賴于他們的傳遞。他們會意識到确實有人面臨着現實中真正的問題,需要現實的軟體去改善其生活。
其次,隻要一次糟糕的展示,團隊就會突然變得有興趣去讓軟體迎接回報,并確定一切運作正常。為此,他們會堅持要求下放權力。如果他們還不這麼做,你可就有大麻煩了。
跨職能
跨職能團隊要能夠為客戶提供全面的服務。這意味着團隊要具備必要的技巧和技能,才能完成客戶需要的所有特性,成功地完全傳遞。
當為團隊招募員工時,你要招聘那些多面手,因為他們能夠輕松地完成多種任務。如果想招聘程式員,就要找到那些精通整套技術棧之人(不隻限于前端技術或者後端技術)。而對于測試人員和分析師來說,他們在做深度需求分析工作時,應與做測試一樣輕松自如。
團隊缺乏某種專業技巧(比如資料庫性能調優)時才會偶爾用到專家。但通常在項目的整個過程中,團隊會作為一個整體互相支援,同舟共濟。
當然,跨職能團隊的真正妙處在于其運轉的速度。不必再等什麼許可,也不必與其他人讨價還價争取某種資源,而是從一開始他們自己就可以傳遞有價值的東西,沒人會擋他們的路。
好吧,這些就是當你組建團隊時希望設定的一些期望值和為之奮鬥的一些目标。
本文摘自《靈活武士》