有一些低效率的管理實(shí) 踐操作仍被許多人采用,造成了完全可以預(yù)期的不好的結(jié)果,這些實(shí)踐操作被稱為“經(jīng)典錯(cuò)誤”。大多數(shù)“經(jīng)典錯(cuò)誤”都有一個(gè)具有誘惑力的外表。你需要拯救一 個(gè)落后于進(jìn)度的項(xiàng)目嗎?那增加人手吧。你想減少日程安排嗎?那把日程安排得更緊一些吧。團(tuán)隊(duì)中的一個(gè)關(guān)鍵人物激怒了其余隊(duì)員?那在項(xiàng)目結(jié)束后炒他魷 魚(yú)吧。你有一個(gè)很緊急的項(xiàng)目要完成?那把目前所有可用的人力資源召集起來(lái)開(kāi)始工作吧,越快越好!
開(kāi)發(fā)者、管理人員和顧客通常會(huì)有很好的理由來(lái)解釋自己的所作所為,所以這些“經(jīng)典錯(cuò)誤”的具有誘惑力的外表也是解釋為什么會(huì)再三犯下這類錯(cuò)誤的原因。但是,由于“經(jīng)典錯(cuò)誤”已經(jīng)發(fā)生過(guò)很多次了,因此它的結(jié)果是可以預(yù)期的,這些結(jié)果顯然會(huì)和人們?cè)瓉?lái)希望得到的結(jié)果不一致。
本章列舉了36個(gè)“經(jīng)典錯(cuò)誤”,每個(gè)錯(cuò)誤我本人至少見(jiàn)過(guò)一次,而且有許多是我自己也犯過(guò)的。你會(huì)從案例分析3-1中識(shí)別出這些錯(cuò)誤。
這些錯(cuò)誤的共性在于,如果你想避免它們,那么你的軟件項(xiàng)目肯定不能開(kāi)發(fā)得很快。但如果你不去避免他們,你注定會(huì)開(kāi)發(fā)得很慢。
如果有些錯(cuò)誤看起來(lái)很熟悉,好像自己也犯過(guò),不用擔(dān)心,振作起來(lái)。因?yàn)橛性S多人犯過(guò)相同的錯(cuò)誤,而且一旦你了解了這些錯(cuò)誤給你的開(kāi)發(fā)速度所帶來(lái)的影響,你可以在制訂計(jì)劃的時(shí)候進(jìn)行風(fēng)險(xiǎn)控制。
有些錯(cuò)誤會(huì)在本書(shū)的相應(yīng)章節(jié)中進(jìn)行討論,有些則不會(huì)進(jìn)一步討論。為了便于查閱,這些“經(jīng)典錯(cuò)誤”被分類成了人員、過(guò)程、產(chǎn)品、技術(shù)等四個(gè)方面。
人員
這里是一些與人員有關(guān)的經(jīng)典錯(cuò)誤。
#1:不確定的激勵(lì)措施
無(wú)數(shù)的調(diào)查研究表明,激勵(lì)很可能是提高產(chǎn)品產(chǎn)量和質(zhì)量的有效的措施(Boehm 1981)。在案例分析3-1中,在管理的實(shí)施中充斥著不確定的激勵(lì)措施。開(kāi)頭是一番虛情假意的激勵(lì)性談話,中間是要求員加班加點(diǎn)地工作,后管理者去享受了一個(gè)長(zhǎng)假,而員工卻要在假期中繼續(xù)工作,為的只是那些少得可憐的額外獎(jiǎng)勵(lì)。
#2:糟糕的人事管理
在激勵(lì)之后,對(duì)產(chǎn)品產(chǎn)量有巨大影響的不是由團(tuán)隊(duì)隊(duì)員個(gè)人的能力決定是由隊(duì)員之間的關(guān)系所決定(Boehm 1981, Lakhanpal 1993)。招募那些資歷差的員工將會(huì)威脅到企業(yè)為快速發(fā)展所付出的努力。在那個(gè)案例分析中,人事選拔的標(biāo)準(zhǔn)是誰(shuí)能快被找到,誰(shuí)被錄取,而不是根據(jù) 誰(shuí)的能力強(qiáng)來(lái)作為標(biāo)準(zhǔn)。這種做法雖然使項(xiàng)目迅速地開(kāi)展,但不能快速地完成。
#3:不受控制的問(wèn)題員工
不處理好問(wèn)題員工同樣會(huì)影響工作速度。這類錯(cuò)誤在Geral Weinberg于1971年出版了《計(jì)算機(jī)編程心理學(xué)》一書(shū)后被管理者 普遍理解。不處理好問(wèn)題員工往往是團(tuán)隊(duì)隊(duì)員抱怨他們的領(lǐng)導(dǎo)的普遍的原因(Larson and LaFasto 1989)。在案例分析3-1中,整個(gè)團(tuán)隊(duì)都知道Chip這個(gè)人不是什么好東西,但團(tuán)隊(duì)領(lǐng)導(dǎo)卻視而不見(jiàn)。其結(jié)果——重新完成Chip的工作——可以預(yù)見(jiàn) 了。
#4:英雄主義
有些軟件開(kāi)發(fā)者認(rèn)為,在項(xiàng)目開(kāi)發(fā)中強(qiáng)調(diào)英雄主義是非常重要的,認(rèn)為英雄主義是非常有益的(Bach 1995)。但是我認(rèn)為,以任何一種形式來(lái)強(qiáng)調(diào)英雄主義,其壞處往往要比好處多。在案例分析中,中層管理者 對(duì)那些認(rèn)為只要能做能做成功的人給予了更高的獎(jiǎng)勵(lì),而那些講究穩(wěn)定、長(zhǎng)效的工作人員卻得到了較低的獎(jiǎng)勵(lì)。其結(jié)果是工作中實(shí)行的邊緣政策直到后一分鐘 才發(fā)現(xiàn)、認(rèn)識(shí)了組織所面臨的緊急的問(wèn)題,并向上級(jí)報(bào)告。一個(gè)小的開(kāi)發(fā)團(tuán)隊(duì)掌握了公司的生殺大權(quán),因?yàn)樗麄儾辉敢獬姓J(rèn)不能按期完成任務(wù)。對(duì)英雄主義的強(qiáng)調(diào)促 進(jìn)了冒極大風(fēng)險(xiǎn)的趨勢(shì),而削弱了在軟件開(kāi)發(fā)的過(guò)程中,利益相關(guān)者之間的合作。
當(dāng)有些管理者 過(guò)分強(qiáng)調(diào)“能做能成功”的態(tài)度時(shí)會(huì)產(chǎn)生強(qiáng)調(diào)英雄主義的行為。當(dāng)項(xiàng)目管理者視這種態(tài)度高于的狀態(tài)報(bào)告時(shí),他們會(huì)不完全發(fā)揮自己的能力地去采取正確 措施。他們甚至不認(rèn)為自己需要采取正確措施,直到損失已經(jīng)造成了。正如Tom Demarco所說(shuō),“能做能成功”的態(tài)度將原本只是很小的障礙放大成一場(chǎng)真真正正的災(zāi)難。
#5:向即將到期的項(xiàng)目追加人手
這也許是常見(jiàn)的“經(jīng)典錯(cuò)誤”了。當(dāng)一個(gè)項(xiàng)目落后與進(jìn)度時(shí),不在現(xiàn)有隊(duì)員中下功夫,而是以增加人手的方式來(lái)提高產(chǎn)量。Fred Brooks把這種行為比做“火上澆油”(Brooks 1975)。
#6:吵鬧、擁擠的辦公室
多數(shù)開(kāi)發(fā)者對(duì)自己的工作環(huán)境是不滿意的。約60%的人認(rèn)為他們的工作環(huán)境不是不夠安靜是不夠私人化(DeMarco and Lister 1987)。擁有安靜、私人的工作場(chǎng)所的工作人員會(huì)比那些處在吵鬧、擁擠的地方的人要表現(xiàn)得更為出色。吵鬧、擁擠的環(huán)境會(huì)拖延工作日程。
#7:開(kāi)發(fā)者與顧客之間的沖突
這種沖突可以是來(lái)自多方面的。當(dāng)開(kāi)發(fā)者不愿意簽定顧客制定的項(xiàng)目進(jìn)度表時(shí),或者開(kāi)發(fā)者沒(méi)有履行好他們的承諾時(shí),顧客可能會(huì)認(rèn)為開(kāi)發(fā)者不夠合作。而開(kāi)發(fā)者可能會(huì)認(rèn)為顧客過(guò)于無(wú)理地堅(jiān)持不現(xiàn)實(shí)的項(xiàng)目進(jìn)度或修改明明已經(jīng)確定下來(lái)的要求。于是這兩撥人之間可能發(fā)生人身攻擊或誹謗。
這種沖突的主要的影響是使交流和溝通變得匱乏,其中又包含了對(duì)需求的缺乏理解,用戶界面設(shè)計(jì)不夠理想,更糟糕的情況則是顧客拒絕接受已經(jīng)完成的產(chǎn)品。平均地來(lái)說(shuō),顧客和軟件開(kāi)發(fā)者之間的沖突往往會(huì)嚴(yán)重到雙方要撕毀合同取消項(xiàng)目的開(kāi)發(fā)(Jones 1994)。這種沖突是非常耗時(shí)的,而且會(huì)把雙方的精力從真正的工作中吸引出來(lái)。