我所在的公司和大多數國內IT公司一樣,十幾到幾十人的規(guī)模,每次在做完項目過程中我們都會感覺很累,老板其實也很累,在小公司老板更像是一個項目經理的角色,很多東西都沒有流程化的東西可走,所以很多事情都要等老板拍板后才可以繼續(xù)下去,員工在很多時候就會感到迷茫,隨著公司規(guī)模的擴大,公司也意識到沒有一套規(guī)范的項目管理方案是萬萬不行的,自己在這方面也摸索的一段時間。
我首先接觸的是敏捷開發(fā)的方法,但很快我就感覺這個方法行不通,至少對于我們是這樣,因為我們無法保證和客戶以及業(yè)務人員及時溝通,一個月見幾次面就很不錯了,而且我們的開發(fā)人員也并不具有敏捷能力。后來接觸了下CMMI,CMMI對于小公司就更不靠譜了,它龐大的身軀足以把一個小公司壓垮,如果僅為一個證書的話,我建議完全可以向o6z訂購,但不可否認的是CMMI也有很多優(yōu)秀的地方可以借鑒。那么我對小公司項目管理的看法是一定要精簡,做到不是傻瓜都能夠理解并且能夠執(zhí)行,況且很多項目經理(老板)也并不是領域專家。在此我想簡單談談我對適合小公司的項目管理方案的一些想法,所謂基本適合就是80% 適合,我要是說100%適合那我是在扯淡,另外20%怎么辦?那就像06z所說的那樣,靠經驗這個王道。
一、需求開發(fā)和管理
首先要談的是需求這個東西,那么什么是需求?需求就是掏錢買你產品的人一些需要,只要是客戶的需要,不管是合理不合理那都是需求。其實很多開發(fā)人員都意識需求的重要性,那么真正去做需求的人有多少呢?需求應該是包括需求開發(fā)和需求管理這兩個過程,這里有個特別的情況是對于自主研發(fā)的項目,我接觸的項目也是這種情況居多,于是我們認為自己就是客戶,所以需求開發(fā)做的很簡單甚至跳過去,結果后期的需求管理非?;靵y,我覺得既然自己是客戶,那就要當好客戶這個角色,在做客戶時應完全忘卻自己是個開發(fā)人員,同樣要把需求做全面。很多教科書上都說應該做需求,但關于怎么做的問題上卻和實際情況差別比較大,以下是我關于需求該做什么以及怎么做到一些看法。
1 需求調研
我覺得需求調研非常的重要,1年前我還打算做一個在線教育服務平臺,理念就是淘寶在網上賣商品,我在網上賣教育資源,我提供網上交易場所,簽約的老師、學校以及培訓機構提供可交易的服務,這種服務可以通過視頻、音頻、在線PPT、文本的形式展現。忙活了好一陣,發(fā)現這個市場早就有很多人做了,而且這個市場并不是很好做,首先在網上學習的人有幾個?并且先不說前期推廣需要海量資金就是所需要的那么些高性能服務器丫也買不起!這件事就此擱淺,結果信了馬云的邪,2年后你還想創(chuàng)業(yè)你在創(chuàng)業(yè)!我覺得這就是典型的需求調研沒做好,沒有對用戶需求做調查,沒有考慮同行競爭,沒有考慮可行性!另外還要考慮括行業(yè)標準和法律規(guī)定,比如前些時候國家就出臺了關于辦視頻網站的政策,我覺得你丫沒有足夠的背景就不要往火坑里跳樓??傊鶕鲂袠I(yè)情況盡可能的把需求調研做全面,這樣才可以保證項目首先是可以賺錢的。那么文檔要寫嗎?我覺得可以不要正式的文檔,小公司的人手本來就不夠用,要把主要文檔化工作集中在重要的環(huán)節(jié)上,對于需求調研,本來就很雜亂,完全可以記在工作筆記上,放到需求分析的時候整理。
2 需求分析
為了得到用戶的金錢,我們總是在說,用戶是上帝,用戶永遠是對的,盡管背地里在說客戶端壞話:“你丫錢給的倒不多,要求還真少,這需求根本不合理,是正常人的邏輯嗎?”,如果你想活下去,最終我們還是要想方設法滿足用戶的要求。用戶是個外界因素,我們是無法控制的,那么我們只有盡可能改進需求分析的方法來盡量減少不必要的麻煩。那么我覺得日本人做法倒是可以借鑒,在有條件的情況下派專人去現場,隨時記錄關鍵性的需求,即使不能去現場也盡可能的獲取盡可能多大信息,不要指望開發(fā)后去獲取什么有價值的東西。那么是否應該做個原型給客戶看看?我是覺得這不大合適,因為如果項目周期短的話,等你做好原型,黃花菜都涼了。但我覺得等到需求做到差不多的時候可以做用戶界面,所謂用戶界面就是用戶接口,是和用戶打交道的地方,所謂一圖解千言,有了界面用戶會清楚自己所買的東西在未來會是個什么樣的東西,再者開發(fā)幾個有說明性都界面倒是不會暫用很多時間。等到需求確定下來后就要整理成文檔了,這個是很重要的一步,是做設計時候的重要憑證和依據,這個文檔就是用戶規(guī)格說明書,所謂規(guī)格就是有規(guī)范的格式和內容。
3 需求評審 本文轉自項目管理者聯盟
我們已經有了較正規(guī)的文檔了,那么下一步就是召集所有開發(fā)人員開會,最好有客戶代表參加,盡管我是很厭煩開會,但該開的會還是要開到,因為之前我遇到這種情況,開發(fā)人員根據設計文檔寫代碼,可是他并不知道自己在開發(fā)什么,站在自己的角度想一下,如果自己都不確定自己做的東西,即使有再完備的設計,也會對開發(fā)毫無興趣,只會讓自己覺得自己是個代碼機器。所以所有人員參加需求評審是讓大家知道自己在做一件有意義的事情,自己正在滿足社會的需要,自己在為和諧社會做貢獻,即使你從沒那么想過,那你敢保證的你的潛意識沒那么想過嗎?人是要有社會滿足感的吧。另外開會前一定要準備關鍵有價值的議題,據我觀察需求評審會最容易扯到不著邊的話題,所以主持人要控制話題,會議控制在2-3個鐘頭,最好做成幸運52的形式,所有人員一定要互動起來,否則就變成了個人演講。需求也做了,會也開了,那么要求客戶簽字吧。
4 需求管理
需求管理是在開發(fā)開始之后進行的,這也是另所有人頭疼的一件事,之前做完一個項目后,客戶經常打電話找我們,改過來改過去,后來我聽到電話,血壓都要升高50個百分點,后來索性就不接電話,客戶就在網上找我,搞的我連QQ都不敢登,但躲是躲不掉滴,客戶直接打我手機,丫的真煩人,見過難纏的,沒見過這么難纏的。后來轉念一想,難道這種情況真的不能避免嗎?至少是可以大幅度的緩解的吧。這就是我們需求管理中的變更管理沒做好,改了哪些地方自己都忘記了,最后是跟著感覺走,拆東墻補西墻。在這里我建議要建立需求跟蹤矩陣表,有了這個表我們至少可以對要修改的地方有了依據,迫使我們去調查到底是改什么地方,怎么改,最后改成了什么樣。可能你會說客戶需要大幅度修改原有計劃,很難跟蹤到具體某一項需求,那么我覺得這是由于前期的需求開發(fā)沒有做好,在后期客戶進行實質性的修改的幾率是很小的,比如客戶要求我們做個OA系統(tǒng),最后總不會要我們改成個門戶網站吧,在舉個例子,在比如你開發(fā)一個ERP系統(tǒng),客戶自己的業(yè)務流程不會輕易的改變吧,總不至于把盤點這個業(yè)務改成一個報表系統(tǒng)吧。如果真是這樣,我們完全有理由告訴客戶,你丫乖乖掏銀子,我們再給你們開發(fā)2期工程,要改,沒門!
二、項目規(guī)劃和項目監(jiān)控
上邊我簡要談了項目管理中的需求開發(fā)和管理,那么在這里就和各位以閑話家常的方式討論下項目規(guī)劃和項目監(jiān)控。項目規(guī)劃、項目監(jiān)控其實也是項目管理中比較核心的工作,也是很多開發(fā)人員最敏感的話題,因為這兩個東西與公司的領導和員工關系都非常的密切。
先從我以前的學校說起,以前我們學校有片荒地,當時的領導覺得學校應該搞綠化,于是組織在荒地上植樹,不到一年換了一個校長,這位校長覺得學校應該抓體育運動,決定再造一個足球場,于是把樹移走,造了一個足球場,再后來北京奧運會來了,學習為了迎合綠色奧運的理念又開始植樹,這就是沒有規(guī)劃和監(jiān)控的典型例子,結果是勞民又傷財。當然對于學校來說,有國家財政的支持,有資本這么折騰,可是對于小公司做項目來說,這么折騰幾下估計很快就要犧牲了。
事實求是的說大多數小公司在這兩個方面做得很少有令人的滿意的,小公司的老板其實也會意識到公司在項目規(guī)劃和監(jiān)控方面做得不咋地,但很少能做到有效的改進,其實這個也是有很多方面的原因的,以我自作多情的猜測主要有以下兩個原因,對于小公司,盡管盈利不是很多,但基本還是可以撐下去的,老板會覺得管他亂不亂,公司總之每個月還是有盈利的,少就少點吧,多干幾年自己的下半輩子基本有別墅有車了,所以比較保守,要是改革吧,萬一雞飛蛋打怎么辦?還是本分點好,小心使得萬年船。其實是對項目規(guī)劃和監(jiān)控其實需要大量的成本,老板覺得錢應該花在刀刃上,搞這些東西就是在務虛。再者更惡劣的老板有病就亂燒香,就有想想借助CMMI這個洋玩意治病的,其實很多老板都蠻喜歡CMMI的,CMMI就是假定人就是一個機器的部件,可以替換可以不停的運轉,總之管機器總比管人省心吧,結果是萬分的矛盾,銀子撒了一大把,收效卻甚微,甚至比以前更亂,大家做的都不開心。與其聽咨詢師們拿什么高深的方法論來瞎掰,不如我們談點實際的,想就以下議題來和各位消遣。
1 工作量估算
項目管理者聯盟,項目管理問題。
對于工作量估算很多項目經理(老板)喜歡用數學公式來計算,可能數學公式更加的客觀和科學,ok,,看看市面流行的計算方法吧,最常見的是基于代碼行的數學模型,那么這里存在不少問題,工作量估算主要是為了在項目進行中進行有效的項目監(jiān)控,那么軟件開發(fā)尚未結束,誰知道最后的代碼行有多大?代碼經常會被修改,那么修改的代碼算不算?如果算,那么代碼修改越多難道能說明工作量越大?代碼效率的區(qū)別也是很大的,假如一個10行代碼可以實現的東西被寫成50 行,難道能客觀的反映工作量?還有2種比較高級點的方法是基于功能點和COCOMO的方法,那么我想問的是它們的公式中的系數該怎么定?那么不少咨詢師忽悠我說,根據自己的實際情況來定唄,那么我想問的是,算命是迷信,電腦意味著科學,那么用電腦算命算不算迷信?所以我是主張這里還是要靠人的經驗來估算,大家可以在項目周會上對工作量進行充分的估算,在估算時要同時考慮到項目執(zhí)行的難度,根據經驗給出合理的評估。
2 任務分配
大多數的做法是將整個項目劃分<