-
行業(yè)資訊
INDUSTRY INFORMATION
軟件開發(fā)組織強大,開發(fā)人員也不少,為什么軟件開發(fā)效率低下,做出來的軟件產(chǎn)品也不盡人意呢?是什么原因造成了軟件公司開發(fā)人員對客戶“需求”的理解偏差呢?軟件開發(fā)組織為什么對企業(yè)的需求不敏感呢?要搞清楚這種現(xiàn)象的原因,必須要了解一下軟件公司現(xiàn)有的組織與結(jié)構(gòu)的構(gòu)造方式和與這種構(gòu)造相配的組織職責(zé)。
開發(fā)組織斷帶
國內(nèi)許多的軟件公司都已經(jīng)走過了創(chuàng)業(yè)階段,已經(jīng)從過去的三、四十人發(fā)展到現(xiàn)在的五、六百人,甚至數(shù)千人。公司的銷售渠道在加強、開發(fā)隊伍在加強、實施隊伍也在建立和完善之中,公司完整的組織體系慢慢地建立起來,過去許多原有的工作的方式方法,隨著機構(gòu)的建立,逐步的消失了,在消失的東西之中,同樣存在著許多好的工作作風(fēng)與方法,這些東西已經(jīng)無法再找回來了,軟件設(shè)計人員對于企業(yè)需求的感覺在這個變化過程中幾乎消失殆盡,由于這種消失,逐步地使軟件公司背離了面向用戶的宗旨,使這一宗旨成為了說教。那么促成這種現(xiàn)象的快速演變的核心本質(zhì)的組織體系究竟是怎樣的呢?為了把這個病灶的根源說清楚,在這里給大家展示一下現(xiàn)在國內(nèi)大、中型軟件公司的常用結(jié)構(gòu)示意圖和在開發(fā)工作方面的職責(zé)。
這是目前軟件公司常用的組織體系結(jié)構(gòu)。在這里之所以使用“體系”二字,是為了消除某個體系下可能存在多種不同類型的部門:如多個行業(yè)部門、如多個產(chǎn)品部門,在這個結(jié)構(gòu)中有三個體系涉及商品化軟件建設(shè),第一個體系就是渠道和銷售部門,他們的基本職責(zé)是使用商品化的軟件獲取客戶,同時向?qū)嵤w系和開發(fā)體系傳達用戶的核心需求。第二個體系就是實施部門,他們在第一階段實現(xiàn)客戶需求的調(diào)研,并將用戶現(xiàn)實需求傳達到開發(fā)體系,當(dāng)然在部分軟件公司中,偶爾會派出開發(fā)體系下的需求分析部門的人員參與需求調(diào)研工作;而另一個方面在軟件交付給實施部門后,實施部門將根據(jù)企業(yè)需求的調(diào)研結(jié)果,開始軟件的實施工作。第三個體系就是開發(fā)部門,他們實現(xiàn)需求分析與定義,實現(xiàn)商品化軟件概要設(shè)計與向詳細(xì)設(shè)計,實現(xiàn)軟件代碼的編制,實現(xiàn)商品化軟件的測試,直到軟件測試通過、并提供軟件交付。
在這種結(jié)構(gòu)中有兩個層面和兩個斷帶,第一個層面是渠道體系、實施體系的需求調(diào)研過程,接下來是一個明顯的斷帶,通過這個斷帶轉(zhuǎn)入到第二層開發(fā)體系的需求分析階段。最后經(jīng)過商品化軟件測試后的交付,又通過第二個斷帶將軟件傳遞給第一層實施體系的實施過程,直到完整交付為止。通過這個過程可以明顯感到信息傳遞的錯位與斷裂,在這種狀況下所實現(xiàn)的商品化軟件必然會導(dǎo)致在適應(yīng)企業(yè)實際需求方面的不足。并且目前這種現(xiàn)象,如果不在其它方面實現(xiàn)有效調(diào)節(jié),必然會導(dǎo)致更大的斷帶,和人員能力的急劇衰退。
從圖中可以看出一個正常的開發(fā)運作方式應(yīng)當(dāng)是相當(dāng)平滑的,首先是只有一個層次,而且也不存在斷帶,在第二層中的無字虛框就是要將第一層次的內(nèi)容牽引下來,只有這樣的開發(fā)結(jié)構(gòu)才是真正懂得企業(yè)現(xiàn)實需求的商品化開發(fā)結(jié)構(gòu)。
軟件的基礎(chǔ)能力
這種方式的產(chǎn)生是由于軟件產(chǎn)品規(guī)?;a(chǎn)所帶來的弊端,這個弊端在這種體系建立之初并沒有被軟件公司的管理層所注意,但當(dāng)發(fā)生軟件產(chǎn)品與解決企業(yè)現(xiàn)實管理問題不相匹配的時候,一切都已經(jīng)積重難返。這是一種商品化軟件公司常用的結(jié)構(gòu),如果要實現(xiàn)軟件公司的規(guī)?;\作,必須制造出標(biāo)準(zhǔn)的商品化軟件,如果沒有軟件公司的規(guī)模化,中國的企業(yè)也就無從看到今天眾多的知名管理軟件公司的存在。但是在規(guī)?;倪^程中,卻忽視了對于企業(yè)需求的完整傳遞。
軟件要實現(xiàn)商品化,必須要滿足60%以上的同類企業(yè)需求覆蓋率,如果沒有達到這個比例,那么這種軟件可以說幾乎沒有太多的用戶和市場(在這里提請讀者注意:商品化軟件是一種根據(jù)不同企業(yè)要求的細(xì)分性市場,簡單可以把管理軟件劃分成適合于“迷你型”企業(yè)的超小型管理軟件,適合于小型企業(yè)的小型管理軟件,適合于中型企業(yè)的中型管理軟件,適合于大型企業(yè)的大型管理軟件,讀者不難看到這個市場對于軟件公司而言是比較龐大的,同時也無法做到一種軟件可以適合于不同規(guī)模的企業(yè),因此這里談到的60%,是以一種企業(yè)規(guī)模為基準(zhǔn)的),所以小于60%覆概率的軟件,可以認(rèn)為無法滿足企業(yè)管理的基本需求,而商品化軟件為了贏得企業(yè)市場的需求之外,為了競爭需要還必須建立超越現(xiàn)實企業(yè)需求的一部分功能,這種功能,對于管理先進的企業(yè)可以嘗試使用,對于常規(guī)企業(yè)它的價值只是錦上添花。軟件公司為了達到既滿足60%以上的現(xiàn)實需求,又滿足未來可能的需求,必須要建立強大的需求分析與需求定義隊伍。這支隊伍要承載企業(yè)調(diào)研所獲得的企業(yè)各種需求的同時,還要承載將這些需求匯總、分析、定義之后向系統(tǒng)設(shè)計人員的轉(zhuǎn)達。所以他們的責(zé)任對于軟件公司而言是重大的。
人員能力的警告
在研究了國內(nèi)許多商品化軟件公司之后,現(xiàn)實會告訴你,這是一件非常遺憾的事情,目前還很難找到這樣一支訓(xùn)練有素的需求隊伍,這是因為大部分的成員還沒有完全理解企業(yè)的需求、也沒有理解需求對于商品化軟件的重要性,產(chǎn)生這種現(xiàn)象的一個直接原因、就是這些人員由于現(xiàn)有軟件公司的開發(fā)結(jié)構(gòu)所至,使他們很少有機會與企業(yè)直接交流,久而久之,慢慢地習(xí)慣于鉆研西方管理軟件的流程設(shè)計方法、控制方法,還有更加喜歡的是、對西方軟件的結(jié)構(gòu)研究,他們喜歡在軟件結(jié)構(gòu)上創(chuàng)造完美,而忽視了對于國內(nèi)企業(yè)現(xiàn)實的管理研究,這就造成了對于企業(yè)管理需求的不理解,最終導(dǎo)致了慢待企業(yè)需求,漸漸地把自己打扮成為一個技術(shù)專家的角色。在后來一次偶然的機會我見到了上面所談到的那位技術(shù)總監(jiān),他的工作方法證實了我的判斷,那時他正在這家企業(yè)開展需求調(diào)研。
“你們原來做過類似的系統(tǒng)嗎?你們準(zhǔn)備調(diào)研幾天,有沒有調(diào)研提綱”我問道?!拔覀兪翘峁┥唐坊浖墓荆郧拔覀兒苌俚狡髽I(yè)去作調(diào)研工作,只是在實施階段由實施人員根據(jù)企業(yè)的一些具體情況,做一些非常簡單的調(diào)研和了解工作。而這個系統(tǒng)對于我來說是一個新系統(tǒng),與我們原來所做產(chǎn)品有很大不同,過去我們總是在學(xué)習(xí)和模仿外國公司的一些管理軟件,那些軟件對于我而言,只是理清他們的設(shè)計思路,選擇一些比較重要的和我認(rèn)為比較基于國內(nèi)現(xiàn)實的內(nèi)容,柔和起來做成需求,我們同時還比較一些西方軟件在軟件設(shè)計結(jié)構(gòu)方面的異同,比如那種語言、那種操作系統(tǒng)、是基于局域網(wǎng)的(C/S結(jié)構(gòu))、還是基于互聯(lián)網(wǎng)(B/S結(jié)構(gòu)),如何實現(xiàn)制造過程與制造成本管理等等這類問題。我們計劃在這里調(diào)研3、5天,到今天已經(jīng)是第3天了,明天我們打算回去。調(diào)研提綱,在來之前我們沒有,我們調(diào)研的時候主要是和不同部門的管理人員談一談,了解一些基本情況,另外我也在介紹一些計算機方面的基本功能,總體上感覺調(diào)研很不輕松,確實令我感到無從下手”。
對于他的回答我很驚訝,我又接著問道:“你原來參加過企業(yè)信息系統(tǒng)建設(shè)嗎、今年多大了、其它軟件需求人員有比你大的嗎”?他的回答讓我徹底明白了國內(nèi)軟件公司在企業(yè)信息化建設(shè)過程中由于操作能力造成失敗的原因。
“今年28、9左右,其它需求人員都比我年輕。這是我第一次與企業(yè)管理與業(yè)務(wù)人員面對面的打交道,原來沒有調(diào)研的經(jīng)歷,這次如果我不來,我們公司更不會有其它人能夠出來了,這次只是因為我公司的軟件是我設(shè)計、也是我組織開發(fā)的,所以別人不會比我更加的了解軟件整體功能”。
這次交流時間并不長,在與這位技術(shù)總監(jiān)的交談過程中,他總是自覺與不自覺地把話題轉(zhuǎn)入到技術(shù)的方面上去,也許這已經(jīng)成為了習(xí)慣,我那時隱約感到他們無法完成需求,這是因為他們都太技術(shù)化了。果然,在看到了他們提供給企業(yè)的需求報告之后(企業(yè)提供給我,希望幫他們把一下關(guān))的感覺是:不看還好,看了之后有說不出的苦澀,他們對于需求的概念不但理解上不夠,而且對于企業(yè)的管理看來也缺乏必要的了解,好像他們從來沒有到企業(yè)調(diào)研過一樣,一切都沒有企業(yè)的特點和內(nèi)容,更象是一份給開發(fā)人員看的需求,企業(yè)的人員拿到這樣的需求報告是無法讀懂的。后來我沒有辦法,只好把我原來做的一份需求提供給這家企業(yè),讓他們轉(zhuǎn)交給這位技術(shù)總監(jiān),要他們再對企業(yè)作一次調(diào)研,并且按照我所提供的需求報告方法把這家企業(yè)的需求寫出來。后來幾經(jīng)多次修改,終于算是完成了這份需求報告。
在這個例子中所談到的不僅僅是這家公司,國內(nèi)的商品化軟件公司中或多或少都存在這種現(xiàn)象,軟件公司的管理者在設(shè)計這種結(jié)構(gòu)時,基本的依據(jù)是社會化大生產(chǎn)方式下的流水作業(yè),讀者們都沒有忘記流水作業(yè)對于工人技能的提升是非常有害的,每個人只能夠長期不間斷地完成著一種工作,沒有多少人去關(guān)心上一道工序的情況、也沒有人去關(guān)心下一道工序的情況,如果這種現(xiàn)象在商品化軟件業(yè)中重現(xiàn),那將是一種災(zāi)難,這種方式在短期內(nèi)對于推動軟件開發(fā)是有效的,長期卻只能夠處于低效狀態(tài)。
人員能力導(dǎo)致軟件能力低下
這是否能夠讓我們?nèi)ニ伎家粋€問題,工業(yè)品制造的流水過程如果要改造成軟件制造的流水過程,流水的方式是否也需要做出相應(yīng)的調(diào)整,答案是肯定的,必須有一個核心群體控制著每一個環(huán)節(jié),他們負(fù)責(zé)需求的傳遞、知識的傳遞、技能的傳遞,那么對于這個群體能力的要求是很高的,目前在軟件公司中,實際上極為缺乏這種人才(幾乎平均一家公司很難找出1個這樣的人),因此說這種流水的結(jié)構(gòu)沒有高水平人員的加盟,事實上是很難有太大作為,在這種人才結(jié)構(gòu)下,做一些簡單的管理軟件是可以的,但如果要開發(fā)中、大型管理軟件將會遇到?jīng)]有核心人員的苦惱。
遺憾的是,這種結(jié)構(gòu)本身也無法培養(yǎng)出優(yōu)秀的軟件需求人員、設(shè)計人員,在我們看到了這種流水方式之后,這個結(jié)論已經(jīng)可以下了,由于沒有高層次人員所作的傳遞工作,軟件公司必然會發(fā)生開發(fā)結(jié)構(gòu)層次的錯位與需求傳遞的斷帶,所以造成了需求人員不但缺乏企業(yè)管理需求經(jīng)驗、也缺乏從事開發(fā)性項目的經(jīng)驗,他們只能夠參考管理技術(shù)方面的書籍和西方的管理軟件去模仿和微縮西方管理軟件的一些功能,以此來滿足企業(yè)的需要。在這種狀況下,軟件公司的需求人員,與其說是與企業(yè)客戶打交道,不如說是在與西方的管理軟件打交道、在與軟件詳細(xì)設(shè)計人員打交道,他們已經(jīng)喪失了與客戶交流的能力,他們的需求文檔不是與客戶交流的工具,反而成了與軟件設(shè)計人員交流的工具,他們不會用用戶的語言去表達事務(wù),反而只會用計算機的語言去表達,他們已經(jīng)忘記了需求人員的職責(zé),而似乎在從事著產(chǎn)品假設(shè)性的定義(忘記了實際情況)。由于軟件與實際的脫離,在實施的時候勢必造成企業(yè)信息化管理的不理想、甚至失敗。所以我們必須注意:
1.企業(yè)需求不是對西方軟件研究結(jié)果的模仿與微縮
2.企業(yè)需求不是對管理技術(shù)性書籍的囫圇吞棗,必須與現(xiàn)實結(jié)合
3.企業(yè)需求必須來自于現(xiàn)實的工作需要,并將這些需求傳遞到開發(fā)的全過程,并在需求定義階段完善并提升需求內(nèi)涵
4.需求人員必須修煉自身與企業(yè)人員的溝通能力、需求寫作能力,要向企業(yè)人員提供能夠看得懂的需求報告
5.詳細(xì)的分工協(xié)作這種流水性的傳遞工作方式,必須建立在經(jīng)驗豐富的開發(fā)管理團隊的基礎(chǔ)上,沒有這個基礎(chǔ),軟件制造過程將沒有靈魂。
這種軟件開發(fā)組織結(jié)構(gòu)存在著弊端:組織細(xì)分帶來職責(zé)細(xì)分,最終導(dǎo)致人員職責(zé)細(xì)分,體系是為實現(xiàn)商品化軟件服務(wù),所以與其說是需求分析、定義,還不如說是產(chǎn)品定義與分析。需求面向的不再是企業(yè)用戶,而是軟件公司內(nèi)部的開發(fā)人員。