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