第一種是產(chǎn)品規(guī)劃人員。 產(chǎn)品規(guī)劃人員主要任務是調查,包括調查你的競爭對手,客戶,以及其他市場需求。產(chǎn)品規(guī)劃的過程是定義產(chǎn)品的過程。他們通常會做很多 研究,通過跟蹤市場用戶,做市場調查,看行業(yè)的報告,從而確定產(chǎn)品三到五年的發(fā)展規(guī)劃。其實作為產(chǎn)品規(guī)劃人員最重要的一點,就是要有前瞻性。不僅僅是能看 到現(xiàn)在市場是什么樣的,而更要能看到三到五年以后會是什么樣的。我們可以看到微軟好多產(chǎn)品,都有一種說法叫”version 3.0”,可能在1.0, 2.0時不是很好,有可能是功能的問題,也有可能是超前于市場的緣故,像Windows,做出來時候,無論從硬件或者軟件應用程序來看,都沒有市場,但是 通過不斷的改進,到3.0時就取得了很大的成功。從這一點看,產(chǎn)品規(guī)劃人員是非常重要的。 第二類人是產(chǎn)品管理人員。 某種程度上有 點類似于做傳統(tǒng)的市場人員,但是也不是完全相同。他們主要任務是把產(chǎn)品推向市場。包括決定產(chǎn)品的定位、包裝。最重要一點是向用戶傳達一個什么信息。也就是 用戶為什么買你的產(chǎn)品,或者升級到你的產(chǎn)品。很多人說微軟的產(chǎn)品除了質量好外,市場也做得好。象IE就是一個很好市場運作的例子。比如,IE最初的用戶定 位,不是試圖讓Netscape已有的用戶轉到IE上,從來沒有這么做過.而是面向新的Internet用戶。這就是用戶定位很清楚。此外,對IE不同版 本,開發(fā)側重點不一樣,就需要用一條簡單的信息告訴用戶,這個版本比其他版本有什么好處。這些都是產(chǎn)品管理人員要做的。 第三類人是程序管理/項目管理 下一個角色是程序管理,我們以前叫項目管理,但是上次我在上海講的時候,學員說,他們說國內項目經(jīng)理做的事情很不一樣,所以這里我就叫程序管理。有時候我可能會交換著用。 在微軟,程序管理主要是做產(chǎn)品,在適當?shù)臅r候推出適當?shù)漠a(chǎn)品。他碰到的最主要困難就是如何保持控制。適當時候意味著你必須控制好產(chǎn)品的發(fā)布日程,不能有 延誤。大家知道產(chǎn)品過程中不確定的就是人為因素,這個發(fā)布日期控制好,這是很困難的。還有要做出正確的取舍。有些時候你會在發(fā)布日期和新的特性之間需要做 出取舍,或者是不是采取新的技術,用新的工具、算法什么是不是必要,我們是不是需要去做,做什么和不做什么之間,做出取舍,從而控制產(chǎn)品的特性并使其能滿 足市場需求。程序管理人員需要衡量做這些事情的危險性,需要衡量得特別清楚。 這三類人員把整個產(chǎn)品的策劃,推向市場,以及產(chǎn)品開發(fā)過程控制基本上定下來了,可以是說最關鍵的。 第四類人是產(chǎn)品設計人員 剩下的有產(chǎn)品設計,主要是做產(chǎn)品的用戶界面或者可視化方面的設計。這些人一般人都有設計方面的背景。象微軟的產(chǎn)品,以前對用戶界面設計或者用戶交互方面 側重不是很多,因為傳統(tǒng)PC,早期只是專業(yè)人員的工具。但現(xiàn)在越來越向消費者、初用者方向發(fā)展,那么對于界面設計要求越來越高。公司在這方面投入了很大的 人力。我不知道大家都看到新的Windows XP、或者像“MSN explorer”沒有,這些產(chǎn)品和傳統(tǒng)的產(chǎn)品相比,外觀,包括用戶使用方式。都是完全不一樣的,更注重的是一種整體的體驗,經(jīng)歷。 產(chǎn)品設計還有一個重要的工作,就是保證產(chǎn)品所有可視部分保持一致。不同的模塊或者不同的特性可能由不同的人員開發(fā),如何保證可視部分看起來一樣,使用戶不至于在一個產(chǎn)品使用時突然覺得不是同一個公司的產(chǎn)品,這就取決于產(chǎn)品設計人員。 第五類人員是產(chǎn)品可用性評估工程師 他們主要做的是保證產(chǎn)品可用,易用,而且能夠容易被用戶接受。一般在產(chǎn)品開發(fā)的過程中或者初期,都有一些不同的原 型,就是針對一些特性怎么做,用戶怎么交互,設計一些不同的原型,然后交由可用性評估工程師做可用性測試。從而決定最終的方案。這方面微軟一直是非常重視 的。你可能注意到在IE早期版本里,地址欄里面并沒有“Go“按鈕,只是有一個地址欄。但是后來通過可用性測試,發(fā)現(xiàn)一些用戶把地址敲進去后,就在那兒等 著,也不知道按回車。確實就有這樣的人。所以從5.0開始在地址蘭后加了個按鈕。用戶敲完地址以后,可以試著按一下按鈕,來連到他所需要的網(wǎng)頁。 第六類人是開發(fā)人員 下一類就是開發(fā)人員。開發(fā)人員在微軟應該是很重要的,但是我感覺相比之下,沒有象在我們國內一些企業(yè)那么重要。開發(fā)人員主要工作,一部分是設計一些算 法,對PM做出的文檔或者特性說明要提出自己的反饋。還有更重要的一塊,就是幫助PM推出產(chǎn)品日程,從什么時候可以做到“beta”1、2,什么時候可以 發(fā)布。這些跟開發(fā)人員密切相關,所以又開發(fā)人員決定它的進度。除此之外,就是通常的寫代碼,編程與調試,以及后期的缺陷修復。 第七類人是測試人員 第八類是本地化人員 第九類人是文檔發(fā)布人員 第十九類人是產(chǎn)品支持人員 第十一類人是運營管理 目前基本上來說,運營管理、產(chǎn)品規(guī)劃、產(chǎn)品管理和程序管理這四類人實際上在主要推動產(chǎn)品的進程。其他人扮演的是一個被動的,或者專注于做具體事情的角色。但是每一個角色,都是不可或缺的。 微軟目前基本上是一種所謂的條塊結構。在公司內部
最基本的組織是一個產(chǎn)品單元,比如像IE就是一個產(chǎn)品單元組。產(chǎn)品單元組的管理者會有預算,有人有錢。在每個產(chǎn)品單元內,在行政上按你的工作類型來劃分,
像項目經(jīng)理,他上面會有一個總的項目經(jīng)理組長,如開發(fā)人員有一個開發(fā)組長,測試人員也同樣。這是在行政上的組織。行政組織結構主要是為了對你的業(yè)績做出一
些考核,包括將來會不會給你加工資。在做產(chǎn)品的時候,在每個產(chǎn)品單元組內,又按不同的特性劃分為各個不同的項目組,劃分的基本原則是希望由一個很精干很小
型的團隊來進行開發(fā)。因為我說了要按產(chǎn)品的不同特性來劃分組織,這樣就要求你在產(chǎn)品設計時,大的產(chǎn)品能分成小的模塊和小的特性,然后相互之間又沒有很大的
依從關系。因為跨組的交互或者跨組的依從關系是最難管理的。每一個團隊內基本上由項目經(jīng)理,或者程序經(jīng)理來領導,來負責一個特性,下面會有開發(fā)人員,也會
有測試人員,基本上開發(fā)人員和測試人員的比例一般都是一比一,這樣一個組差不多十個人,是最基本的開發(fā)單元。一些跟技術有關的決定基本上是項目經(jīng)理做出來
的,不會有上面的人左右你的決定。這種組織結構能夠使在一些商務和技術方面很快做一些決定,同時因為每個組人少,就能使大的團隊能像小的團隊這樣很快向前
移動,效率不會受到影響。 開發(fā)過程劃分的基本原則是,希望把大的項目分為若干個里程碑式的開發(fā)周期,并
在各個周期都要考慮一些冗余,使你的開發(fā)周期變得更實際一些。通過目標描述來保證所有的人是沿著同一個方向發(fā)展。利用產(chǎn)品特性描述來指導開發(fā)過程。同時利
用用戶的數(shù)據(jù)來決定一些特性的取舍,或者優(yōu)先級的排定。加不加這個特性,不是開發(fā)人員覺得好,我就做這個東西,往往還是從用戶角度來考慮,用戶從中間有多
大收益來決定。 還有更重要一點就是統(tǒng)一的術語。在微軟內部剛進去時也會做類似這樣的培訓,會請的各種角色做一個講座,大概需要六
七個小時。其中有對很多術語、縮寫,還有對這套開發(fā)模式的介紹。從而保證所有人理解的都是統(tǒng)一的。這樣你才能保證無論在做事或者討論的時候,大家的理解是
一樣的。 在規(guī)劃階段,當所有的特性規(guī)格說明完了以后,還要制定日程進度表。這個日程進度表往往需要由開發(fā)人員的參與??吹搅诉@些產(chǎn)品規(guī)范,根據(jù)你的經(jīng)驗估計做這個需要多長時間,還需要打入一些冗余,把這個做完之后,產(chǎn)品規(guī)劃階段就已經(jīng)完成了。 產(chǎn)品階段完成的標志,就是目標描述,所有特性規(guī)格說明,以及日程進度表的完成。 這樣就進入第二個階段,即開發(fā)階段。因為我們自己有特性描述,已經(jīng)知道做什 么。所以根據(jù)這些特性,會把這一階段,分為三到四個小的階段?;镜膭澐衷瓌t是重要的或者相互依從的特性開始做,剩下的一些次重要的。會在第二或三間段 做。這一間段是由開發(fā)人員去推動。所有的開發(fā)人員開始寫代碼,對于每一個開發(fā)人員都有相應的測試人員,會把開發(fā)人員寫的代碼拿去測試。這個階段完成的標志 是所謂的特性完成,或者叫代碼完成,也就是所有的這種特性都已經(jīng)開發(fā)完畢。 這時就進入了下一個階段,第三個階段,測試階段。測試階段主要由測試人員推動。在開發(fā)階段也 有測試在進行,但在測試階段進行的主要是集成的測試,象安裝,兼容性測試,性能,或者其他方面的測試。此外通常還要發(fā)放一些“beta”版本,讓用戶去實 際使用并發(fā)回反饋。這一階段會有更多的“bug”進來,但是這一階段基本上不會增加一些新的特性。這一階段結束的標志是所謂的“零缺陷”。微軟有一些來跟 蹤缺陷或者叫“bug”的工具,如果從這些工具看到針對這個發(fā)布周期已經(jīng)沒有任何活動的bug,這就標志著穩(wěn)定化階段已經(jīng)結束?,F(xiàn)在有一個趨勢,就是穩(wěn)定 化階段做得越來越長,從而更好的保證產(chǎn)品的質量。 到了零缺陷后,就進入了下一步,即第四個階段,發(fā)布階段。在這一階段大家會繼續(xù)跟蹤bug的狀態(tài),直到確認這可以發(fā)布了。一般會做一個CD,或者把它發(fā)到網(wǎng)上。最后發(fā)布階段會由產(chǎn)品經(jīng)理、項目經(jīng)理,以及做運營管理的人來共同執(zhí)行。 總結一下,微軟產(chǎn)品組有明確的分工及不同的角色,產(chǎn)品開發(fā)由四個階段組成,即規(guī)劃階段,開發(fā)階段,測試和穩(wěn)定化階段以及最后的發(fā)布階段。總的原則在微軟一 個是有詳細的分工和職責的劃分,通過各個人人的角色控制產(chǎn)品開發(fā)過程。我剛才談的四個過程,十一個角色,但是每個角色實際上并不是同步的。比如像產(chǎn)品規(guī)劃 人員,在第一個階段和第二個階段產(chǎn)品規(guī)劃人員會有一些工作,到第三個階段因為特性已經(jīng)完成了,不會有新的特性,產(chǎn)品規(guī)劃人員已經(jīng)開始做下個版本。但是產(chǎn)品 經(jīng)理會繼續(xù)做這個產(chǎn)品保證這個產(chǎn)品繼續(xù)進行。還有是客戶需求決定產(chǎn)品的方向和目標,往往在做一些決定時考慮的是客戶和市場,很少純粹為了技術和其他原因。 最重要的是把大的項目分成若干個子項目,是漸進的,不是一次性把很大的問題解決。還有目標描述和產(chǎn)品特性說明,就是我們傳統(tǒng)文檔,這是為整個項目起到了指 導作用,必須定義得很清晰,使所有人都能看到它。最后一點,從項目一開始開始讓所有人都去介入。因為好的產(chǎn)品是設計出來的,不是最后開發(fā)出來的,因為前期 基本上定下來以后,開發(fā)的后期是完成的階段。如果設計有缺陷,比如沒有考慮到技術支持方面的問題,后期很難做。假使再加進去對產(chǎn)品質量或者發(fā)布日期都有很 大的影響。還有就是通過不間斷的測試來保證產(chǎn)品的質量。 |
|