CMMI與當(dāng)代軟件開發(fā)

CMMI(Capability

Maturity Model Integration)即能力成熟度模型集成,是上世紀(jì)80年代初晦款,美國(guó)國(guó)防部牽頭的政府機(jī)構(gòu)選擇項(xiàng)目的外包公司時(shí)剧罩,為了選出更有能力矾飞,更成熟的公司一膨,于是就委托位于位于匹茲堡的卡內(nèi)基梅隆大學(xué)成立軟件工程學(xué)院來(lái)研究,由Watt Humphrey領(lǐng)頭洒沦,100多位專家在一起通過(guò)一段時(shí)間的探討豹绪,總結(jié)了大概100多條標(biāo)準(zhǔn),后來(lái)再經(jīng)過(guò)總結(jié)提煉申眼,這些標(biāo)準(zhǔn)極具代表性瞒津,逐漸轉(zhuǎn)變?yōu)槟芰Τ墒於饶P虲MM,而CMMI則是對(duì)CMM的繼承括尸。能力成熟度模型的本質(zhì)時(shí)刻畫一個(gè)軟件公司從不成熟到成熟的路線圖巷蚪,并不是一般人所理解的只是一些標(biāo)準(zhǔn),很多人會(huì)拿敏捷開發(fā)和CMMI進(jìn)行比較濒翻,但實(shí)際上二者并沒(méi)有可比較性屁柏,一個(gè)是開發(fā)方法,一個(gè)是注重優(yōu)化改進(jìn)的模型有送。它包括連續(xù)式和階段式兩種表現(xiàn)形式淌喻,所謂連續(xù)式可以理解為好與不好,而階段式理解為做了還是沒(méi)做雀摘,CMMI所做的評(píng)估只是過(guò)程改進(jìn)的起點(diǎn)而不是終點(diǎn)裸删,就比如你評(píng)估到了5級(jí),并不意味著它就完成了阵赠,什么就不去追求了涯塔,也并不意味著就比三級(jí)四級(jí)的公司實(shí)際表現(xiàn)就更好,而是到了五級(jí)依然該去追求整個(gè)過(guò)程的改進(jìn)清蚀。它包括五個(gè)級(jí)別匕荸,第一個(gè)級(jí)別Initial,一般指的是以個(gè)人為中心轧铁,開發(fā)過(guò)程通常隨意且混亂每聪。第二個(gè)級(jí)別Managed,這時(shí)候項(xiàng)目已經(jīng)擁有了跟蹤齿风,確保整個(gè)過(guò)程按照方針得到計(jì)劃與執(zhí)行药薯。第三個(gè)級(jí)別Defined,核心是共享救斑,過(guò)程得到了清晰的說(shuō)明與理解童本,并以標(biāo)準(zhǔn)、規(guī)程工具與方法的形式進(jìn)行描述脸候。第四個(gè)級(jí)別Quantitatively Managed穷娱,主要是量化,第五個(gè)級(jí)別Optimizing运沦,無(wú)止境的在有初步效果的現(xiàn)有體系上的過(guò)程改進(jìn)泵额。這些是對(duì)本文要討論的CMMI的基本介紹。

CMMI進(jìn)入我國(guó)軟件領(lǐng)域這些年以來(lái)携添,對(duì)我國(guó)軟件產(chǎn)業(yè)的健康發(fā)展作出了巨大貢獻(xiàn)嫁盲。但是也出現(xiàn)了一些在實(shí)踐中被誤用和曲解的場(chǎng)景,以及帶來(lái)了與初衷漸行漸遠(yuǎn)的效果烈掠。首先羞秤,CMMI并不是具體的軟件開發(fā)方法,它應(yīng)該是去定義一個(gè)適應(yīng)本軟件組織的軟件過(guò)程左敌,并且不斷優(yōu)化的過(guò)程,以更符合軟件組織的商業(yè)目標(biāo),CMMI不能被用于檢驗(yàn)軟件過(guò)程優(yōu)劣辫诅,過(guò)程改進(jìn)對(duì)不同的企業(yè)是不一樣的转质。設(shè)立CMMI證書后,一些企業(yè)只是單純的以獲得證書為根本目的叼风,以為獲得更高級(jí)的證書就能獲得進(jìn)入外包市場(chǎng)的國(guó)際通行證幸斥,但是卻忽視了對(duì)軟件生產(chǎn)過(guò)程真正持續(xù)的改進(jìn)。證書掛墻上咬扇,體系卻被拋棄了甲葬,更或者是實(shí)施到一定階段,缺陷依然多懈贺,效率依然多经窖,達(dá)不到最初想要的效果,還有一種就是急于通過(guò)更高等級(jí)的評(píng)估梭灿,也就是單純的把他們當(dāng)作過(guò)程能力改進(jìn)的終點(diǎn)画侣,不管它是否適合當(dāng)前的自身和評(píng)估過(guò)后的影響。這些都是令人擔(dān)憂的現(xiàn)象堡妒。因此我覺(jué)得其中不僅有人們對(duì)它曲解和誤用配乱,還得考慮當(dāng)前軟件開發(fā)的大環(huán)境,CMMI模型存在不適合當(dāng)前軟件開發(fā)的理由。

首先搬泥,目前的軟件開發(fā)基本CMMI的3級(jí)水平就能達(dá)到一般的需求桑寨,而4級(jí)5級(jí)的一些要求基于目前的基本實(shí)踐會(huì)讓基本的評(píng)估變得較為僵硬,CMMI的4級(jí)強(qiáng)調(diào)的是過(guò)程穩(wěn)定性和項(xiàng)目量化管理忿檩,5級(jí)強(qiáng)調(diào)的是根本原因分析和持續(xù)改進(jìn)尉尾,如果企業(yè)3級(jí)時(shí)就有了量化目標(biāo),那就意味著做到了部分4級(jí)的要求燥透,甚至很多企業(yè)很多指標(biāo)已經(jīng)做得很好了沙咏,就要考慮4,5是否一定有必要班套,是否真的能實(shí)現(xiàn)真正的跟高級(jí)的要求肢藐,有時(shí)候量化不一定能正確的證明你的持續(xù)改進(jìn),之前所提到的持續(xù)改進(jìn)是需要時(shí)間累積的吱韭。四級(jí)到五級(jí)很多留給你去驗(yàn)證的框架吆豹,它們基本都是動(dòng)態(tài)的,而動(dòng)態(tài)的往往是最難把握住的杉女,事實(shí)上我們大多數(shù)達(dá)到四級(jí)五級(jí)的公司瞻讽,評(píng)估過(guò)程中所使用的數(shù)據(jù)往往并不是真實(shí)的數(shù)據(jù),因?yàn)檎鎸?shí)的數(shù)據(jù)無(wú)法體現(xiàn)一種動(dòng)態(tài)的關(guān)系熏挎。

其次速勇,當(dāng)前的軟件開發(fā)過(guò)程除了強(qiáng)調(diào)過(guò)程管理的重要性以外,使用的技術(shù)坎拐,人的因素也有決定性的作用烦磁,這也消弱很多CMMI建立的模式的作用。所以好多企業(yè)要解決的首先是企業(yè)當(dāng)前實(shí)際的瓶頸問(wèn)題哼勇,才能最大限度的提高生產(chǎn)率都伪。有一家專門從事軟件外包的公司,通過(guò)CMMI的3級(jí)积担,流程定義得很簡(jiǎn)潔陨晶、實(shí)用,企業(yè)的執(zhí)行力也很強(qiáng)帝璧,但是項(xiàng)目的實(shí)際效果卻不好先誉。為什么呢?經(jīng)過(guò)仔細(xì)審查項(xiàng)目組的需求的烁、設(shè)計(jì)褐耳、測(cè)試用例、源代碼等文檔渴庆,發(fā)現(xiàn)需求的描述有遺漏铃芦,有錯(cuò)誤雅镊;設(shè)計(jì)文檔沒(méi)有滿足基本的設(shè)計(jì)原則;測(cè)試用例不完備刃滓,覆蓋率比較低仁烹;源代碼中需要重構(gòu)的地方比比皆是。項(xiàng)目組的成員都比較年輕注盈,工程經(jīng)驗(yàn)大都少于兩年晃危,盡管企業(yè)也進(jìn)行了需求工程叙赚、設(shè)計(jì)模式等技術(shù)培訓(xùn)老客,但經(jīng)驗(yàn)不是靠培訓(xùn)就能解決的。因此震叮,即使有好的流程胧砰,仍然有可能開發(fā)不出好的軟件系統(tǒng),另外一家公司苇瓣,沒(méi)有通過(guò)CMMI的評(píng)估尉间,公司內(nèi)有3個(gè)部門,其中一個(gè)部門積累了一個(gè)基于.NET的可復(fù)用的MIS軟件框架击罪,該框架已由少數(shù)精英開發(fā)了4年哲嘲,積累了4年,發(fā)布了多個(gè)版本媳禁。實(shí)現(xiàn)一個(gè)新需求時(shí)眠副,只要定制界面,編寫存儲(chǔ)過(guò)程就可以了竣稽。當(dāng)一個(gè)新員工進(jìn)入該部門后囱怕,基于該框架,大概花費(fèi)1周的時(shí)間就可以編寫出能夠交付給客戶執(zhí)行的代碼毫别,該部門的開發(fā)效率很高娃弓。其實(shí)對(duì)于該企業(yè)來(lái)講,引入CMMI并非當(dāng)務(wù)之急岛宦,打破部門之間的壁壘台丛,將該軟件框架推廣到其他兩個(gè)部門可能投入、產(chǎn)出比會(huì)更高砾肺。在一些應(yīng)用實(shí)踐中挽霉,很明顯CMMI一定程度上忽視了人的主觀能動(dòng)性和人在不同狀態(tài)下工作效率的很大差異,違背了客觀事實(shí)债沮,導(dǎo)致它并不受到應(yīng)用實(shí)踐者的歡迎炼吴。

再者,CMMI實(shí)踐過(guò)程中有些量化的具體標(biāo)準(zhǔn)并不清晰疫衩,也很難制定出足夠有效的量化標(biāo)準(zhǔn)硅蹦,標(biāo)準(zhǔn)不合適一定程度會(huì)拉低開發(fā)效率,讓開發(fā)人員束手束腳,比如開發(fā)過(guò)程中要求填寫大量的文檔童芹,然后事實(shí)是很少有人通過(guò)查找這些文檔發(fā)現(xiàn)錯(cuò)誤涮瞻。最主要的原因還是在于實(shí)踐過(guò)程和CMMI應(yīng)用的實(shí)際困難。更多是實(shí)踐有問(wèn)題假褪,沒(méi)有建立起度量的標(biāo)準(zhǔn)和完成標(biāo)準(zhǔn)署咽,沒(méi)有采用合理的構(gòu)建策略,沒(méi)有質(zhì)量保證的手段生音,沒(méi)有進(jìn)行足夠的交流宁否,沒(méi)有足夠精確的需求等等。有的企業(yè)為了滿足評(píng)估的需要缀遍,做了上百個(gè)文檔來(lái)滿足模型的要求慕匠,這并不正確。這些文檔也許能起到作用域醇,每份文檔能起到作用的概率并不高台谊,而完成這大量文檔所付出的工作量和成本完全不能匹配它的效果,模型是強(qiáng)調(diào)直接證據(jù)譬挚,但是并非文檔越多越好锅铅。文檔只是用來(lái)證明某個(gè)實(shí)踐你做到了,只要達(dá)到了這個(gè)目的就可以了减宣,而且一個(gè)文檔可以滿足多條實(shí)踐的要求盐须,可以作為多條實(shí)踐的證據(jù),這是最經(jīng)濟(jì)的做法蚪腋,只要內(nèi)容有了丰歌,也并非在乎文檔的多少與格式。更不利的方面在于CMMI繁瑣的文檔和會(huì)議常常打斷開發(fā)人員的思路屉凯,客觀上延長(zhǎng)了項(xiàng)目開發(fā)的周期立帖,提高了出錯(cuò)量,這對(duì)于當(dāng)今的技術(shù)人才支撐的軟件開發(fā)行業(yè)而言悠砚,絕對(duì)是不可忽視的負(fù)面影響晓勇。

CMMI初衷所應(yīng)對(duì)的體系結(jié)構(gòu)和目前軟件開發(fā)中常用的本質(zhì)上并不相同,CMMI所要求的SEPG所出的規(guī)范需要得到軟件項(xiàng)目組的認(rèn)可灌旧,規(guī)范在執(zhí)行過(guò)程中需要進(jìn)一步與項(xiàng)目組的實(shí)際結(jié)合從而進(jìn)行改進(jìn)绑咱;而SQA人員則是需要監(jiān)督 軟件過(guò)程是否按照規(guī)范來(lái)執(zhí)行,從而決定是否開出不符合項(xiàng)NCI枢泰。另外描融,系統(tǒng)測(cè)試人員也需要具有相當(dāng)?shù)莫?dú)立性,不能處于項(xiàng)目開發(fā)人員的控制之下衡蚂。所有這些窿克,在如今的一個(gè)以技術(shù)作為主導(dǎo)的公司里很難做到骏庸,當(dāng)前軟件公司的人員角色很難分清晰。

CMMI只對(duì)可以被控制的過(guò)程有作用年叮,但是如果過(guò)程本身是失控的那也就沒(méi)有再按照模型進(jìn)行的必要性了具被。CMMI是可控制的軟件管理過(guò)程,它從需求管理到度量分析以及配置管理的過(guò)程中都是基于正確的可分析的數(shù)據(jù)的基礎(chǔ)上只损,而如果這部分?jǐn)?shù)據(jù)不能達(dá)到想要的效果一姿,你無(wú)論如何也沒(méi)法從CMMI中收獲想要的效果。CMMI的實(shí)際應(yīng)用效果也沒(méi)想象中的那么好跃惫,除了以上提到的認(rèn)證背后產(chǎn)生的不正確的引導(dǎo)和不良的行業(yè)風(fēng)氣外叮叹,還關(guān)鍵在于將抽象轉(zhuǎn)化為具體的難度,CMMI的定位是精細(xì)化管理辈挂,需要過(guò)程交付衬横,量化數(shù)據(jù)來(lái)支持裹粤,如果將它變相的變成依賴人員的檢查终蒂,勢(shì)必會(huì)導(dǎo)致CMMI流于形式,而這是一些怪相產(chǎn)生的關(guān)鍵原因遥诉。甚至有人拿它去和敏捷開發(fā)相比較拇泣,但是二者并無(wú)可比較之處,CMMI刻畫了軟件團(tuán)隊(duì)從不成熟到成熟的每個(gè)階段的特征矮锈,它是一種路線圖霉翔,而敏捷是實(shí)際的一種開發(fā)模型。

總的來(lái)說(shuō)苞笨,CMMI確實(shí)是軟件工程領(lǐng)域少見(jiàn)的出色工作债朵,對(duì)軟件開發(fā)工作也有著正確的引領(lǐng)作用,但是并不完全適合當(dāng)代快速發(fā)展的軟件開發(fā)行業(yè)瀑凝。


課堂筆記整理(4.25-4.26)


課程名稱:


CMMI(Capability

Maturity Model Integration序芦,能力成熟度模型集成)



推薦書目:《人月神話》,《人件》(老師上課的時(shí)候經(jīng)常引用其中的話)

上課風(fēng)格(個(gè)人觀點(diǎn)):經(jīng)常會(huì)有一些比較開放的思考性問(wèn)題粤咪,個(gè)人覺(jué)得其實(shí)也沒(méi)有絕對(duì)的正確答案谚中,主要是體驗(yàn)一種思考的過(guò)程并獲取一些啟發(fā),有些觀點(diǎn)也不是很贊同寥枝。還會(huì)穿插一些其它學(xué)科的知識(shí)宪塔,讓我感到自身知識(shí)是多么的匱乏…


相關(guān)背景:


上世紀(jì)80年代初,美國(guó)國(guó)防部等政府機(jī)構(gòu)在將一些項(xiàng)目外包時(shí)囊拜,發(fā)現(xiàn)選擇承包的公司是一件很復(fù)雜的事情某筐,所以就希望弄一個(gè)評(píng)價(jià)標(biāo)準(zhǔn)。于是就委托位于匹茲堡的卡內(nèi)基梅隆大學(xué)(CMU冠跷,學(xué)校的相關(guān)專業(yè)很厲害)南誊,其成立了軟件工程學(xué)院(SEI)來(lái)進(jìn)行研究敢辩。領(lǐng)頭的是Watt Humphrey(從IBM辭職而來(lái),具有很豐富的專業(yè)經(jīng)驗(yàn))弟疆,其聚集了不少專家進(jìn)行研究探討戚长。總結(jié)了大概一百多條標(biāo)準(zhǔn)怠苔,開始的時(shí)候是做了一個(gè)調(diào)查問(wèn)卷同廉,后來(lái)逐漸轉(zhuǎn)變?yōu)镃MM(能力成熟度模型)。而CMMI算是對(duì)于CMM的繼承柑司。需要注意的是迫肖,CMMI的構(gòu)建Humphrey并沒(méi)有在其中,據(jù)老師說(shuō)因?yàn)樗庾R(shí)到即便有這么個(gè)玩意兒也不能從根本上解決遇到的問(wèn)題攒驰,所以其將研究精力轉(zhuǎn)向了其它方面蟆湖。具體相關(guān)的如果大家感興趣的可以去搜索些深入閱讀材料。


課堂構(gòu)架:


???? 老師上課的思路感覺(jué)還是蠻清晰的玻粪,我大概說(shuō)下一個(gè)大框架隅津。

一個(gè)模型

兩種表現(xiàn)形式

三種應(yīng)用領(lǐng)域

四種類型

五個(gè)級(jí)別


???? 一個(gè)模型:就是指能力成熟度模型,老師說(shuō)他覺(jué)得這是軟件工程領(lǐng)域很少見(jiàn)的做的相當(dāng)完美的一項(xiàng)研究劲室。(還記得背景中提到的Humphrey拉了一幫人一起探討列條目么伦仍?這列出來(lái)的一百多條內(nèi)容里,在日后的這么些年里被實(shí)踐證明僅有十幾條是他們并未想到的很洋。)其本質(zhì)是刻畫一個(gè)軟件公司從不成熟到成熟的路線圖充蓝。(而不是一般人所認(rèn)為的CMMI就是一堆材料)

???? 在這里老師提出了幾個(gè)問(wèn)題來(lái)幫助認(rèn)知

???? 我就直接寫結(jié)論了…

???? 1 CMMI是一個(gè)不需要裁減的模型,其本身是完整的喉磁。

???? 2敏捷開發(fā)和CMMI并非是對(duì)立面關(guān)系谓苟。敏捷指的是一種開發(fā)方法,而CMMI是一種模型协怒。



???? 兩種表現(xiàn)形式:即連續(xù)式和階段式

???? 連續(xù)式是反應(yīng)一個(gè)軟件公司的能力水平涝焙,階段式則是反應(yīng)其成熟度水平。

???? 這里老師也做了一些具體的說(shuō)明斤讥,所謂連續(xù)式可以理解為做的好與不好纱皆,而階段式則可以理解為做了還是沒(méi)做。

???? 其中階段式所反應(yīng)的成熟度水平擁有5個(gè)級(jí)別的劃分芭商,而可以把連續(xù)式看作是第六個(gè)級(jí)別派草。這里老師表達(dá)了自己的觀點(diǎn),他覺(jué)得這些東西不能太過(guò)于絕對(duì)化铛楣,比如Google公司近迁,它是沒(méi)有CMMI級(jí)別的,但誰(shuí)都知道這是一家好公司簸州。而一個(gè)只做2級(jí)的公司有時(shí)候要好于3級(jí)的鉴竭,可以理解為是它的性價(jià)比比較低歧譬,說(shuō)明是腳踏實(shí)地做事的。(這里沒(méi)有必要太過(guò)鉆牛角尖搏存,主要是想傳達(dá)一個(gè)思想瑰步,CMMI說(shuō)到底也只是一個(gè)相對(duì)的評(píng)判標(biāo)準(zhǔn),不可以說(shuō)的太絕對(duì)璧眠。就好像評(píng)價(jià)一個(gè)人缩焦,不是用好和壞這么簡(jiǎn)單就可以定義的。)

???? 還有一點(diǎn)老師想闡述的是這種評(píng)估是過(guò)程改進(jìn)的起點(diǎn)责静,而不是終點(diǎn)袁滥。不是說(shuō)公司評(píng)到了5級(jí)就好像任務(wù)完成,什么都不去追求了灾螃。這種評(píng)估只是一種輔助手段题翻,最終目的不在于此。


??? ?三種應(yīng)用領(lǐng)域:

??? ?開發(fā)(CMMI for Development,CMMI-DEV)

???? 服務(wù)(CMMI for Service,CMMI-SVC)

???? 采購(gòu)(CMMI for Acquisition,CMMI-ACQ)

???? 這三個(gè)領(lǐng)域共享16個(gè)核心過(guò)程域腰鬼,同時(shí)每個(gè)領(lǐng)域自己特有的一些過(guò)程域嵌赠。

在這里老師還談了談所謂管理,如何才算管理呢垃喊?首先就必須要有一個(gè)目標(biāo)猾普,如果沒(méi)有目標(biāo),就不會(huì)出現(xiàn)偏差本谜。因?yàn)闆](méi)有和實(shí)際的一個(gè)參照物。而管理就是對(duì)這個(gè)目標(biāo)的跟進(jìn)和對(duì)目標(biāo)的補(bǔ)救偎窘。

對(duì)于過(guò)程域乌助,或者說(shuō)很多的聯(lián)系,是一種相關(guān)性的陌知,而不是因果關(guān)系他托。就是說(shuō)這些的聯(lián)系不是上下級(jí)或者太過(guò)于緊密的關(guān)系。


四種類型:

對(duì)于這些過(guò)程域要進(jìn)行分類

分為項(xiàng)目管理仆葡、過(guò)程管理赏参、工程類、支持類

單個(gè)過(guò)程域?qū)儆谖ㄒ坏囊粋€(gè)類型沿盅,比如不會(huì)出現(xiàn)一個(gè)過(guò)程域既是項(xiàng)目管理的又是過(guò)程管理的把篓。


這里有個(gè)題外內(nèi)容:老師推薦看一看Google編碼規(guī)范和代碼評(píng)審的相關(guān)博文。這個(gè)和考試的關(guān)系肯定是沒(méi)什么的腰涧,老師也強(qiáng)調(diào)了一點(diǎn)韧掩,就是希望通過(guò)上課學(xué)到一些東西,哪怕是聽說(shuō)幾個(gè)新鮮的名詞窖铡,反正是應(yīng)該有所收獲的疗锐,而不是以對(duì)付考試為目的坊谁。


五個(gè)級(jí)別:

這個(gè)好像就是CMMI評(píng)審的那5個(gè)級(jí)別了,即階段式所反應(yīng)的成熟度水平滑臊。

需要注意的是老師說(shuō)這里的5個(gè)級(jí)別和CMM中的是有所區(qū)別的口芍,在以后自己閱讀一些相關(guān)材料的時(shí)候要注意這一點(diǎn),以免暈掉…


第一個(gè)級(jí)別:原始級(jí)(所有的公司都默認(rèn)是這個(gè)級(jí)別)Initial

特點(diǎn):個(gè)人英雄主義雇卷,一般團(tuán)隊(duì)里有個(gè)Superstar阶界,他會(huì)左右項(xiàng)目的進(jìn)展甚至是成功還是失敗。開發(fā)過(guò)程通常隨意且混亂聋庵。


第二個(gè)級(jí)別:已管理Managed

特點(diǎn):這時(shí)候項(xiàng)目已經(jīng)擁有了跟蹤膘融,確保整個(gè)過(guò)程按照方針得到計(jì)劃與執(zhí)行。


第三個(gè)級(jí)別:已定義Defined

特點(diǎn):核心是共享祭玉,過(guò)程得到了清晰的說(shuō)明與理解氧映,并以標(biāo)準(zhǔn)、規(guī)程工具與方法的形式進(jìn)行描述脱货。


第四個(gè)級(jí)別:已量化的管理Quantitatively Managed

特點(diǎn):就是量化…老師在這里談的挺多岛都,主要是因?yàn)楝F(xiàn)實(shí)和理想之間存在差距,導(dǎo)致矛盾的存在振峻。說(shuō)白一些臼疫,就是這個(gè)量化到底是不是好呢?很難說(shuō)也很難做到一種完美的量化方法扣孟。


第五個(gè)級(jí)別:優(yōu)化中Optimizing

特點(diǎn):從英文表述可以看出烫堤,上面幾個(gè)都是ed形式,而這個(gè)是ing凤价,即為無(wú)止境的鸽斟。


這里老師說(shuō)了一個(gè)觀點(diǎn),就是所有的4級(jí)利诺、5級(jí)的公司基本都是做的數(shù)據(jù)富蓄,再直白點(diǎn)就是造假。因?yàn)檎鎸?shí)的數(shù)據(jù)無(wú)法體現(xiàn)一種變化關(guān)系慢逾,但要評(píng)級(jí)必須…咳咳立倍,就是這樣,大家應(yīng)該都懂的…但是這并非是一味的好或者壞侣滩,要辯證看待口注。比如量化這個(gè)東西,它不能完全沒(méi)有也不能太死板胜卤,就是沒(méi)有一個(gè)完美的標(biāo)準(zhǔn)疆导,看個(gè)人意識(shí)了。基本老師就這么個(gè)意思澈段,所以還需要繼續(xù)研究和探索悠菜,大家也不能妄自菲薄,認(rèn)為前途很黑暗败富。


這里老師還闡述了一下軟件工程與傳統(tǒng)行業(yè)的差異表現(xiàn)在哪里悔醋,最核心的就是傳統(tǒng)行業(yè)生產(chǎn)每件東西都是一樣的,是重復(fù)性的兽叮。而軟件不一樣芬骄,每一件都是新的。所以說(shuō)軟件開發(fā)是個(gè)很困難很復(fù)雜的事情鹦聪,所以我們都很不容易~~


這就是一個(gè)大概的體系架構(gòu)账阻,希望大家可以比較清晰些,不會(huì)太暈菜泽本,具體的東西再看看那些PDF淘太。老師說(shuō)有幾個(gè)比較重要的東西,一個(gè)是過(guò)程域的結(jié)構(gòu)规丽,具體就是CMMI Slides這個(gè)PDF文檔中的Process Area Components這張圖蒲牧,大家仔細(xì)看看。另一個(gè)是老師在黑板上畫的一張表格赌莺。


接下來(lái)老師就是具體講述表格中的每個(gè)過(guò)程域了冰抢,目前講了的有PP、PMC艘狭、SAM(這個(gè)沒(méi)有講挎扰,老師說(shuō)如果有時(shí)間再講)、CM缓升、MA鼓鲁、PPQA、RD港谊、TS、PI


我個(gè)人覺(jué)得沒(méi)有必要太過(guò)于扣那些細(xì)節(jié)橙弱,除非要去實(shí)踐的時(shí)候歧寺,不然開始就這么干的話沒(méi)有一些毅力基本會(huì)暈菜…老師在介紹這些具體過(guò)程域的時(shí)候也是以一種探討的方式,而不是單純的講述概念棘脐。


比如PP這個(gè)過(guò)程域斜筐,就是項(xiàng)目計(jì)劃,這里談到了估算問(wèn)題蛀缝,老師其實(shí)沒(méi)有過(guò)多說(shuō)什么具體的估算方法顷链,畢竟時(shí)間也不允許。但老師表達(dá)了一個(gè)想法屈梁,估算的具體方法不是最重要的嗤练,而是在于讓所有的團(tuán)隊(duì)里的人相信這個(gè)具體的方案是可行的榛了。


又比如PMC這個(gè)過(guò)程域,就是項(xiàng)目監(jiān)控煞抬。項(xiàng)目監(jiān)控是必須的霜大,也是有價(jià)值的,但出現(xiàn)偏差時(shí)革答,不能魯莽地去補(bǔ)救战坤,因?yàn)閷?dǎo)致偏差的原因有很多,要具體去分析残拐。


課上老師還介紹很多途茫,但都比較瑣碎。

比如老師說(shuō)了一個(gè)詞語(yǔ):技術(shù)負(fù)債溪食,他希望我們能夠自己去搜索一下這個(gè)概念并且有所收獲囊卜。

比如談到配置管理的時(shí)候,老師說(shuō)一般有3部分眠菇,工作庫(kù)(基本的東西都可以包含其中)边败、配置庫(kù)(穩(wěn)定版本)這里的東西是不允許隨意變更的,但不是不可以變更捎废,需要有一套流程笑窜。還有就是產(chǎn)品庫(kù)。說(shuō)實(shí)話登疗,這里我不是很懂…如果有人能闡述清楚的話排截,就適當(dāng)修改一下哈~老師還說(shuō)代碼進(jìn)入配置庫(kù)的的節(jié)點(diǎn)時(shí)在單元測(cè)試結(jié)束。

比如老師還談到了語(yǔ)言的問(wèn)題辐益,bug和defect翻譯成中文都是缺陷断傲,但其實(shí)在英文中這兩個(gè)是有區(qū)別的,bug是可預(yù)知結(jié)果的智政,而defect則是不可預(yù)知的錯(cuò)誤认罩。

比如老師還說(shuō)軟件工程往往是一種權(quán)衡,而不是一種科學(xué)续捂。

比如老師還談?wù)摿藴y(cè)試這個(gè)職位垦垂,他的觀點(diǎn)是測(cè)試是編碼規(guī)范的執(zhí)行者,但產(chǎn)品質(zhì)量的保障其實(shí)并不等于測(cè)試的職責(zé)牙瓢。測(cè)試在整個(gè)循環(huán)改進(jìn)中是個(gè)重要角色劫拗,但他不是萬(wàn)能的。

比如老師還說(shuō)客戶需求和產(chǎn)品需求是兩個(gè)不同的概念矾克,客戶需求是用戶所需要的使用價(jià)值讥巡,是用戶面臨的問(wèn)題锈嫩。而產(chǎn)品需求則是根據(jù)客戶需求所產(chǎn)生的解決方案贰镣,乍一看有點(diǎn)暈,仔細(xì)想想?yún)^(qū)別還是蠻明顯的哈滓彰。老師還說(shuō)和用戶最好只討論具體問(wèn)題而不涉及系統(tǒng),因?yàn)楫?dāng)你給用戶建立了系統(tǒng)的概念以后欲逃,也許需求就需要全部改找蜜,也就是大俠重新來(lái)過(guò)……

比如老師還說(shuō)有時(shí)候太多名詞并不是一件好事情,因?yàn)檐浖_發(fā)本身已足夠復(fù)雜稳析,再弄一堆復(fù)雜的東西會(huì)讓人瘋掉的…

比如老師還說(shuō)一個(gè)缺陷在開發(fā)過(guò)程中存在的時(shí)間越長(zhǎng)洗做,解決的代價(jià)越大,且增長(zhǎng)不是線性的彰居,有可能是指數(shù)級(jí)的诚纸。

還有很多很多,就不贅述了陈惰。

而我個(gè)人的感受是老師在課堂上闡述的最多的是一種辯證的觀念畦徘,就以CMMI為例,它本身就個(gè)完美的模型抬闯,而每一個(gè)過(guò)程域所闡述的則是最佳方案(理想方案)井辆,但實(shí)際操作起來(lái)確實(shí)是很難達(dá)到的。比如老師說(shuō)評(píng)審消除缺陷的平均代價(jià)是最低的溶握,大家也知道杯缺,但是卻很少有人能嚴(yán)格地執(zhí)行評(píng)審制度。我們更多的是尋找一種平衡睡榆,一種自己和團(tuán)隊(duì)認(rèn)可的東西萍肆。


最后總結(jié)一下:軟件開發(fā)很復(fù)雜,大家活的很不容易胀屿,多看些書接受點(diǎn)新思想多一點(diǎn)思考不一定立馬有用但一定是有益的塘揣,矛盾是沒(méi)法消除的,而考試卻是不會(huì)很難的宿崭,就這樣亲铡。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市葡兑,隨后出現(xiàn)的幾起案子奴愉,更是在濱河造成了極大的恐慌,老刑警劉巖铁孵,帶你破解...
    沈念sama閱讀 222,590評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異房资,居然都是意外死亡蜕劝,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)岖沛,“玉大人暑始,你說(shuō)我怎么就攤上這事∮は鳎” “怎么了廊镜?”我有些...
    開封第一講書人閱讀 169,301評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)唉俗。 經(jīng)常有香客問(wèn)我嗤朴,道長(zhǎng),這世上最難降的妖魔是什么虫溜? 我笑而不...
    開封第一講書人閱讀 60,078評(píng)論 1 300
  • 正文 為了忘掉前任雹姊,我火速辦了婚禮,結(jié)果婚禮上衡楞,老公的妹妹穿的比我還像新娘吱雏。我一直安慰自己,他們只是感情好瘾境,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評(píng)論 6 398
  • 文/花漫 我一把揭開白布歧杏。 她就那樣靜靜地躺著,像睡著了一般迷守。 火紅的嫁衣襯著肌膚如雪犬绒。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評(píng)論 1 312
  • 那天盒犹,我揣著相機(jī)與錄音懂更,去河邊找鬼。 笑死急膀,一個(gè)胖子當(dāng)著我的面吹牛沮协,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播卓嫂,決...
    沈念sama閱讀 41,155評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼慷暂,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了晨雳?” 一聲冷哼從身側(cè)響起行瑞,我...
    開封第一講書人閱讀 40,098評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎餐禁,沒(méi)想到半個(gè)月后血久,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,638評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡帮非,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評(píng)論 3 342
  • 正文 我和宋清朗相戀三年氧吐,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了讹蘑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,852評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡筑舅,死狀恐怖座慰,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情翠拣,我是刑警寧澤版仔,帶...
    沈念sama閱讀 36,520評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站误墓,受9級(jí)特大地震影響蛮粮,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜优烧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評(píng)論 3 335
  • 文/蒙蒙 一蝉揍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧畦娄,春花似錦又沾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至驳癌,卻和暖如春滑燃,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背颓鲜。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工表窘, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人甜滨。 一個(gè)月前我還...
    沈念sama閱讀 49,279評(píng)論 3 379
  • 正文 我出身青樓乐严,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親衣摩。 傳聞我的和親對(duì)象是個(gè)殘疾皇子昂验,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容