基本內(nèi)容
周鐵人博士系浙江省湖州師范學(xué)院80屆畢業(yè)生.今天回來參加母校高等教育50周年暨辦學(xué)92周年的周年慶典.
Specification Driven Develpment 周鐵人
發(fā)布時(shí)間:2007.06.15 17:01 來源:賽迪網(wǎng) 作者:周鐵人
各位領(lǐng)導(dǎo)、同志們很榮幸參加這樣一個(gè)大會(huì),來之前我的主要工作應(yīng)該是準(zhǔn)備一下怎樣把我的中文演講講好,來了之后聽了大會(huì)好多其他演講嘉賓發(fā)言以后我很感動(dòng)。作為一個(gè)中國(guó)人去了美國(guó)通過學(xué)習(xí)做了自己的公司,回到中國(guó)來看到了我們國(guó)家政府跟企業(yè)、學(xué)校研究單位合起來能夠組成那么強(qiáng)大的力量,使得我們?cè)趯?duì)軟件過程改進(jìn)的推進(jìn)上是非常努力的,也是很有效的。在美國(guó)假如說軟件過程推進(jìn)方面一般政府盡管有一些標(biāo)準(zhǔn)的方法,但是一般來說政府的參與不是那么大的。反過來美國(guó)公民交的稅真的很高,但是在科研方面的投入也是非常大的。我覺得也好,也不好,從過程改進(jìn)在實(shí)踐上普及某一種方法,假如說政府方面推動(dòng)的話我們走對(duì)的話會(huì)很快讓很多企業(yè)有一個(gè)非常好的成熟方法來做過程改進(jìn)。相對(duì)美國(guó)來說假如很多公司對(duì)軟件工作改進(jìn)也是非常重視的,特別是有一些標(biāo)準(zhǔn)的方法也在進(jìn)行,當(dāng)前的趨勢(shì)更多的公司在敏捷開發(fā)是非常重視的,政府的參與就不是那么大了,來到中國(guó)我真的覺得非常感動(dòng)。
我演講的課題是Specification Driven Development,做軟件產(chǎn)品或者做軟件項(xiàng)目要搞設(shè)計(jì),設(shè)計(jì)過程本身就要標(biāo)準(zhǔn)化,設(shè)計(jì)好了另外一半就是實(shí)現(xiàn)產(chǎn)品,就是把產(chǎn)品看成概念產(chǎn)品同時(shí)又是設(shè)計(jì)的產(chǎn)品。實(shí)際產(chǎn)品是我們的工程隊(duì)伍要做出來的,過程能夠做到標(biāo)準(zhǔn)化,比較成熟過程的話就要通過概念產(chǎn)品和實(shí)際產(chǎn)品一直做比較,一直做度量,使得你們有這個(gè)信心對(duì)高層企業(yè)經(jīng)理來說或者產(chǎn)品經(jīng)理只要能夠看到產(chǎn)品的設(shè)計(jì)是成功的就有信心了。生產(chǎn)的過程可以在本地做,也可以在外地甚至可以讓外包公司來幫我們做。
Tech Excel是1995年我創(chuàng)建的,現(xiàn)在為止在全球43個(gè)國(guó)家有1500多個(gè)用戶,有很多大公司是我們的客戶。Tech Excel是做軟件應(yīng)用生命周期管理工具的對(duì)我們來說當(dāng)然作為一個(gè)美國(guó)公司要在美國(guó)成功必須有銷售,必須每年有增長(zhǎng),對(duì)我們來說更重要的創(chuàng)業(yè)的目的應(yīng)該是對(duì)軟件工業(yè)做出我們的貢獻(xiàn)。使得我們的客戶用了我們的產(chǎn)品他們的開發(fā)過程是更成熟的過程,而且對(duì)我們的產(chǎn)品更認(rèn)可,使得明年、后年可以買更多的產(chǎn)品。另外可以得到更大公司買我們的產(chǎn)品。美國(guó)一家雜志是《軟件開發(fā)周刊》它每年對(duì)軟件工業(yè)里不同的領(lǐng)域比如說數(shù)據(jù)庫(kù),WEB SERVER,Tech Excel評(píng)上了做貢獻(xiàn)最大的100家公司之一。是軟件生命周期管理方面的。也就是說通過我們的努力對(duì)軟件應(yīng)用生命周期什么是一個(gè)好的開發(fā)過程?讓我們的工具幫助我們的客戶得到了這樣的解決,在美國(guó)我們是被認(rèn)可的。
中國(guó)文化、美國(guó)文化、日本文化很多時(shí)候是一樣的,一只軟件隊(duì)伍怎么樣可以做出更好的產(chǎn)品?其實(shí)是兩大部分組成。一大部分是讓最高的城市領(lǐng)導(dǎo)人決定這個(gè)產(chǎn)品就這么做,花錢就做這么多,就到中國(guó)做或者就到日本做。這個(gè)過程是一種感性上面的理解,是經(jīng)驗(yàn),你有多大的膽量就花這么多錢就這么做。反過來僅僅這些是不夠的,你還需要Driven還是需要 Development,我們認(rèn)為Spec D D是把軟件產(chǎn)品看成一個(gè)概念產(chǎn)品,概念產(chǎn)品是讓設(shè)計(jì)更完美的過程,使得產(chǎn)品設(shè)計(jì)的結(jié)果是可以用產(chǎn)品表達(dá)的。有了這個(gè)概念產(chǎn)品以后我們就可以指導(dǎo)、度量開發(fā)的過程和測(cè)試的過程。
Tech Excel要推Specification Driven Development,它是一個(gè)標(biāo)準(zhǔn)的開發(fā)模型,同時(shí)Specification Driven Development是一個(gè)平臺(tái),為什么說它是一個(gè)平臺(tái)呢?是一個(gè)工具幫你提供的平臺(tái),使得你用Specification Driven Development即能在指導(dǎo)思想上讓軟件產(chǎn)品開發(fā)過程有一個(gè)標(biāo)準(zhǔn)的指導(dǎo)思想引導(dǎo)的過程,同時(shí)每天做的工作又是在這個(gè)工具的幫助下使得每做任何任務(wù)都是符合于這樣的標(biāo)準(zhǔn)開發(fā)模型的。
什么是標(biāo)準(zhǔn)的模型幫助你表達(dá)什么是概念產(chǎn)品呢?我們認(rèn)為假如把產(chǎn)品的設(shè)計(jì)想成是任何一個(gè)產(chǎn)品需求有關(guān)的文檔都通過知識(shí)庫(kù)文檔、需求文檔表達(dá)起來,上面再加一層Specification。一個(gè)概念產(chǎn)品是可以做得到的,一個(gè)產(chǎn)品功能都是由基本單元組成的,這個(gè)基本單元就是Specification。一個(gè)產(chǎn)品在概念上可以存在,使得你還沒決定這個(gè)產(chǎn)品到中國(guó)去外包公司做還是在印度外包公司做的時(shí)候我們決策層就有很多指導(dǎo)意見了。這會(huì)使得你每天的工作已經(jīng)做到了很多原始數(shù)據(jù)已經(jīng)做到了系統(tǒng)里面,在幫助里做更好的度量。軟件過程質(zhì)量真正決定你的團(tuán)隊(duì)的工作質(zhì)量,這也決定你產(chǎn)品最后的質(zhì)量。我們這個(gè)公司對(duì)這個(gè)項(xiàng)目來說需要做的是敏捷開發(fā)的話,那整個(gè)公司思想大家都是一樣的,任何時(shí)候我們的客戶和產(chǎn)品經(jīng)理隨時(shí)都可以告訴我們有新的功能需要加進(jìn)去,或者已經(jīng)做了一半的功能需要改進(jìn)?峙逻@里在座很多人是做程序的,當(dāng)你的產(chǎn)品經(jīng)理告訴你要改進(jìn)的時(shí)候你可能不告訴,正是因?yàn)檫@樣柴需要工具。Specification Driven Development這個(gè)模型跟敏捷有很多相似之處同時(shí)又可以幫助你實(shí)現(xiàn)其它的整個(gè)標(biāo)準(zhǔn)開發(fā)的模型。我們多在美國(guó)的客戶開發(fā)團(tuán)隊(duì)是很大的,2000多人做開發(fā),他們做的往往有一個(gè)項(xiàng)目是通過一個(gè)公司在美國(guó)的分公司,在英國(guó)的分公司,再加外包公司合起來一塊做的。假如用Specification Driven Development就可以真正的實(shí)現(xiàn)一個(gè)開發(fā)的過程,是一個(gè)敏捷的過程,一個(gè)軟件過程變成標(biāo)準(zhǔn)化是很好的路,讓我們的軟件過程是可以重復(fù)的是可以有指導(dǎo)思想的。這個(gè)過程假如做的很標(biāo)準(zhǔn)化的話本身就能增強(qiáng)開發(fā)我們的能力,就能加強(qiáng)中國(guó)開發(fā)團(tuán)隊(duì)、軟件開發(fā)能力的知名度。接下來會(huì)看到很多很好的軟件公司在中國(guó)市場(chǎng)取得很好的成績(jī),我們也會(huì)看到少數(shù)中國(guó)軟件公司在國(guó)際市場(chǎng)取得很大的成功。
Specification Driven Development是一種開發(fā)模型,指導(dǎo)思想,也是一個(gè)平臺(tái)幫你每天的工作隊(duì)伍再大也是在這樣的模塊下標(biāo)準(zhǔn)的過程管理著你的隊(duì)伍。
(PPT)Specification它相連的是多個(gè)知識(shí)文檔和需求文檔,Specification 是讓開發(fā)人員創(chuàng)建自己的開發(fā)隊(duì)伍,任何測(cè)試任務(wù)都是圍繞著Specification確認(rèn)建起來的。