微軟公司軟件開發(fā)模式簡介.doc_第1頁
微軟公司軟件開發(fā)模式簡介.doc_第2頁
微軟公司軟件開發(fā)模式簡介.doc_第3頁
微軟公司軟件開發(fā)模式簡介.doc_第4頁
微軟公司軟件開發(fā)模式簡介.doc_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

微軟公司軟件開發(fā)模式簡介在產(chǎn)品定義與開發(fā)過程中,微軟件遵循著一種可稱之為靠改進(jìn)特性與固定資源來激發(fā)創(chuàng)造力的戰(zhàn)略。該戰(zhàn)略可分為五個(gè)原則:一、 將大項(xiàng)目分成若干里程碑式的重要階段,各階段之間有緩沖時(shí)間,但不進(jìn)行單獨(dú)的產(chǎn)品維護(hù)。二、運(yùn)用想象描述和對特性的概要說明指導(dǎo)項(xiàng)目。三、根據(jù)用戶行為和有關(guān)用戶的資料確定產(chǎn)品特性及其優(yōu)先順序。四、建立模塊化的和水平式的設(shè)計(jì)結(jié)構(gòu),并使項(xiàng)目結(jié)構(gòu)反蚋產(chǎn)品結(jié)構(gòu)的特點(diǎn)。五、靠個(gè)人負(fù)責(zé)和固定項(xiàng)目資源實(shí)施控制。原則一:將大項(xiàng)目分成若干里程碑式的重要階段,各階段之間有緩沖時(shí)間,但不進(jìn)行單獨(dú)的產(chǎn)品維護(hù)。項(xiàng)目進(jìn)度安排與里程碑微軟通常采用同步穩(wěn)定產(chǎn)品開發(fā)法。典型項(xiàng)目的生命周期包括三個(gè)階段:計(jì)劃階段完成功能的說明和進(jìn)度表的最后制定,開發(fā)階段寫出完整的的源代碼,穩(wěn)定化階段完成產(chǎn)品,使之能夠批量生產(chǎn)。這三個(gè)大階段以及階段間內(nèi)在的循環(huán)方法與傳統(tǒng)的瀑布式開發(fā)方式很不相同,后者是由需求、詳盡設(shè)計(jì)、模塊化的代碼設(shè)計(jì)與測試、集成測試以及系統(tǒng)測試組成的。而微軟的三個(gè)階段更像是風(fēng)險(xiǎn)驅(qū)動的、漸進(jìn)的螺旋式的生命周期模型。計(jì)劃階段的產(chǎn)品是想象性描述與說明文件,用來解釋項(xiàng)目將做什么和息么做。在管理人員擬定進(jìn)度表、開發(fā)員寫出代碼之前,這些東西都促進(jìn)了人們對設(shè)計(jì)問題的思考與。討論開發(fā)階段圍繞三次主要的內(nèi)部產(chǎn)品發(fā)布來進(jìn)行;稱定化階段集中于廣泛的內(nèi)部與外部測試。在整個(gè)產(chǎn)品生產(chǎn)周期中,微軟都使用了緩沖時(shí)間的概念。緩沖時(shí)間使開發(fā)組能夠?qū)Ω兑馔獾睦щy和影響到時(shí)間進(jìn)度的變故,它也提供了一種手段,可以緩和及時(shí)發(fā)貨與試圖精確估計(jì)發(fā)貨時(shí)間之間的矛盾。在開發(fā)和穩(wěn)定化階段的所有時(shí)間中,一個(gè)項(xiàng)目通常會將2/3的時(shí)間用于開發(fā),1/3的時(shí)間用于穩(wěn)定化。(Office部門副總裁曾這樣概述通常的進(jìn)度:一般說來,在總的進(jìn)度表中,用一半的時(shí)間寫出產(chǎn)品,留下另一半的時(shí)間調(diào)試或應(yīng)付意外事故。這樣,如果我有一個(gè)兩年的項(xiàng)目,我會用一年來完成事先想好的東西如果事情有點(diǎn)麻煩,我便去掉我認(rèn)為不太重要的特性。)這種里程碑式的工作過程使微軟的經(jīng)理們可以清楚地了解產(chǎn)品開發(fā)過程進(jìn)行到了哪一步,也使他們在開發(fā)階段的后期有能力靈活地刪去一些產(chǎn)品特性以滿足發(fā)貨時(shí)期的要求。計(jì)劃階段計(jì)劃階段是在一個(gè)項(xiàng)目的生命周期中,所有于開發(fā)前進(jìn)行的計(jì)劃所占用的時(shí)間。計(jì)劃階段產(chǎn)生出想象性描述、市場營銷計(jì)劃、設(shè)計(jì)目標(biāo)、一份最初的產(chǎn)品說明、為集成其他組開發(fā)的構(gòu)件而規(guī)定的接口標(biāo)準(zhǔn)、最初的測試計(jì)劃、一個(gè)文檔策劃(印刷品和聯(lián)機(jī)幫助形式的)以及一份可用性問題清單。計(jì)劃階段從想象性描述開始。想象性描述來自產(chǎn)品經(jīng)理以及各產(chǎn)品單位的程序經(jīng)理;它是對產(chǎn)品作業(yè)的市場營銷設(shè)想,包括了對況爭對手產(chǎn)品的分析以及對示來版本的規(guī)劃。想象性描述也可能討論在前一次版本中發(fā)現(xiàn)面必須解決的問題以及應(yīng)添加的生要功能。所有這些都基于對顧客和市場的分析以及從產(chǎn)品支持服務(wù)組處得到的資料。說明文件從一個(gè)大綱開始,然后定義出新的或增加的產(chǎn)品特性,并對其賦以不同的優(yōu)先級。說明文件只是產(chǎn)品特性的一個(gè)預(yù)備性概覽;從開始開發(fā)到項(xiàng)目完成它要增加或變化20% - 30%。雖然在生命周期的后期說明變化一般較小,但越到后期,開發(fā)員就越是必須具充分的理由來作改變。通常程序經(jīng)理使用VB創(chuàng)建項(xiàng)目原型。他們也開展設(shè)計(jì)可行性研究以了解設(shè)計(jì)中的取舍情況,盡快做出涉及產(chǎn)品說明的決定。對于重要產(chǎn)品的說明需由公司高層領(lǐng)導(dǎo)進(jìn)行復(fù)審。對于不太生要的產(chǎn)品,則由部分經(jīng)理去完成。開發(fā)階段開發(fā)階段的計(jì)劃對三四個(gè)主要的里程碑版本都個(gè)咖分配一組特性,規(guī)定出特性的細(xì)節(jié)和技術(shù)上的相關(guān)性,記錄下單個(gè)開發(fā)員的任務(wù)以及對進(jìn)度的估計(jì)。在開發(fā)階段中,開發(fā)員在功能性說明的指導(dǎo)下寫源代碼,測試員寫出測試項(xiàng)目組以栓查產(chǎn)品的特性與工作范圍是否正常,用戶教育人員則編寫出文檔草案。當(dāng)測試員發(fā)現(xiàn)錯誤時(shí),開發(fā)員并不是留待以后處理,而是馬上改正,并在整個(gè)開發(fā)階段內(nèi)使測試不斷地、自動地進(jìn)行。這就改善了產(chǎn)品的穩(wěn)定性并且使版本發(fā)布日期更易估計(jì)。當(dāng)達(dá)到項(xiàng)目中的一定階段點(diǎn)后(40%時(shí)),開發(fā)員就試圖鎖定產(chǎn)品的主要功能要求或特性,從此只允許小的改動。如果在此點(diǎn)之后開發(fā)員想作大的改動,他們必須與程序經(jīng)理以及開發(fā)經(jīng)理,問題也許還要征求產(chǎn)品部門經(jīng)理的意見。一個(gè)項(xiàng)目是圍繞著3或4個(gè)主要的內(nèi)部版本,或里程碑子項(xiàng)目來組織開發(fā)階段的。一般用2至4個(gè)月來開發(fā)每一個(gè)主要的里程碑版本。每個(gè)版本都包括其自身的編碼、優(yōu)化、測試以及調(diào)試活動。項(xiàng)目為意外事故保留總開發(fā)1/3的時(shí)間,即緩沖時(shí)間。(蘋果公司的小組是割裂的,獨(dú)立的,各自開發(fā)各自的東西。在還有3個(gè)月就要發(fā)貨時(shí),才會將所有的東西集成起來;Boland公司以一種漸近的方式進(jìn)行開發(fā),即把工作分成許多小的部分,并且總是讓開發(fā)的東西能夠運(yùn)轉(zhuǎn)??雌饋硭坪踹@種漸進(jìn)的方法費(fèi)時(shí)較長,但實(shí)際上幾護(hù)沒有用過很長時(shí)間,因?yàn)檫@使你總是能掌握住事情真實(shí)的情況。)當(dāng)對最后一個(gè)主要的里程碑版本做了測試與穩(wěn)定化之后,產(chǎn)品就要進(jìn)行外觀固定,即確定產(chǎn)品的主要用戶界面,如菜單、對話框以及文件窗口等。此后有關(guān)用戶界面將不再進(jìn)行大的改動,以免引進(jìn)同步修改相應(yīng)文檔的困難。穩(wěn)定化階段穩(wěn)定化階段著重于對產(chǎn)品的測試與調(diào)試。項(xiàng)目在此階段盡量不再增加新的功能,除非是競爭產(chǎn)品或者市場發(fā)生了變化。穩(wěn)定化階段也包括了緩沖時(shí)間,以應(yīng)付不可預(yù)見的問題或者延遲。項(xiàng)目進(jìn)度表中的緩沖時(shí)間微軟使用緩沖計(jì)劃,以在最高的效率與較好地對未來作預(yù)計(jì)之間求得平衡。這種應(yīng)付突發(fā)事件的時(shí)間在開發(fā)和穩(wěn)定化過程中是每一個(gè)主要里程碑的一部分。緩沖時(shí)間主要用于彌補(bǔ)由于對特性的不完全理解,或者是技術(shù)困難或是由于疏忽而忘記把任務(wù)寫入進(jìn)度,或者是未料到的難題而形成的漏洞。緩沖時(shí)間有助于一個(gè)項(xiàng)目適應(yīng)意料之外的事件。原則二:運(yùn)用想象性描述和對特性的概要說明指導(dǎo)項(xiàng)目為了給出足夠的開發(fā)框架以使工作能持續(xù)進(jìn)行,并且能容納開發(fā)過程中出現(xiàn)的變化并保持足夠的靈活性,微軟采用想象性描述和概要的說明來指導(dǎo)項(xiàng)目開發(fā),而不是在一開始就努力寫出一份完整和詳細(xì)的說明。所謂想象性描述是由程序經(jīng)理和來自市場營銷組的產(chǎn)品計(jì)劃人員共同編寫的一份非常短的文件,在其中主要是定義產(chǎn)品開發(fā)的目標(biāo)(不涉及產(chǎn)品的具體細(xì)節(jié)!)。通常對一個(gè)全新的產(chǎn)品,想象性描述一般會相對較詳細(xì),在其中還含有一份粗略的說明文件。總的來說,微軟對于想象性描述的要求是:越短越好,盡量說明產(chǎn)品不做什么(而不是產(chǎn)品要做什么!)。運(yùn)用想象性描述,程序經(jīng)理開始編寫功能說明文件,該文件解釋產(chǎn)品的特性是什么以及這些特性如何與其他特性及產(chǎn)品發(fā)生關(guān)系。最初它只是一個(gè)概要性的說明文件,隨著項(xiàng)目的進(jìn)展,程序經(jīng)理會隨時(shí)向其中添加更多的細(xì)節(jié),最終的說明文件將變得象用戶手冊一樣。完整的說明不只起著對產(chǎn)品最新功能的描述作用,而且它還是在產(chǎn)品投產(chǎn)與發(fā)貨之前進(jìn)行測試與評估的主要依據(jù)。想象性描述有助于決定刪除哪些特性微軟內(nèi)的各個(gè)開發(fā)組采用想象性描述幫助細(xì)化產(chǎn)品版本的規(guī)定主題,然后以此主題來決定是否需要增加產(chǎn)品各個(gè)可能的特性。通常不要輕易改變所確定的主題,否則可能造成產(chǎn)品開發(fā)上的混亂。編寫說明文件說明文件在產(chǎn)品小組的所有成員之間,產(chǎn)品小組之間以及產(chǎn)品小組與管理部門之間起著傳遞產(chǎn)品的設(shè)想與要求的作用。在說明文件中必須清楚地描述產(chǎn)品特性(描述每個(gè)特性如何工作,外觀如何以及從用戶的角度出發(fā)如何與用戶交互。如果特性有一個(gè)界面,還應(yīng)包括一張示意圖,以顯示出界面的效果)并賦于其相應(yīng)的優(yōu)先級。程序經(jīng)理據(jù)此建立起項(xiàng)目的開發(fā)起度表。此外在其中還應(yīng)包括以下各項(xiàng)內(nèi)容:用一句話表示的項(xiàng)目開發(fā)目的,關(guān)于產(chǎn)品是什么與不是什么的清單,對顧客的定義,對競爭產(chǎn)品的定義,產(chǎn)品對系統(tǒng)的要求(包括操作系統(tǒng)版本、最小內(nèi)存要求、硬盤空間、處理器速度以及顯示器分辯率),對第三方(如打印機(jī)驅(qū)動程序、組件)的任何依賴性。程序經(jīng)理負(fù)責(zé)協(xié)調(diào)并寫下說明程序經(jīng)理應(yīng)考慮以下問題:這項(xiàng)特性的要點(diǎn)是什么用戶如何使用該特性這項(xiàng)特性有意義嗎該產(chǎn)品中或微軟的其他產(chǎn)品中有類似的特性嗎有哪些問題補(bǔ)遺漏了組內(nèi)的交流令人滿意嗎最終程序經(jīng)理通過與組內(nèi)開發(fā)人員的共同討論決定有關(guān)特性的內(nèi)容,并將其寫下來。構(gòu)造原型構(gòu)造原型是程序經(jīng)理具體說明一件新產(chǎn)品或一個(gè)新版本的最好方法,這從許多方面來說都使開發(fā)前測試成為可能,尤其在可用性方面,并且有助于對與用戶交互情況作出好的理解,它也能使產(chǎn)品說明更緊湊。微軟的開發(fā)人員通常采用VB構(gòu)造用戶界面原型,但是對于構(gòu)造計(jì)算機(jī)屏幕模型之類的工作,畫筆(Paintbrush)也是一個(gè)很好用的工具。死板的說明變成有生命的文件說明不應(yīng)過于詳細(xì)以至限制了發(fā)明創(chuàng)造。在項(xiàng)目開發(fā)過程中,說明文件的早期版本會有相當(dāng)大的增加與改變。由于說明的變動可能會導(dǎo)致相應(yīng)開發(fā)工作的極大變動,所以微軟通常是將精力首先集中于那些沒有什么用戶界面的特性上,因?yàn)樵谕瓿砷_發(fā)前不必去了解用戶對它們有何反應(yīng),也就是說這些特性不大可能改變。然后再面對其它特性。但是當(dāng)產(chǎn)品開發(fā)到一定程序后,例如40%之后,程序經(jīng)理必須嚴(yán)格控制對特性的修改(主要是指增加新的特性),否則不光會造成開發(fā)延遲,而且會壓縮可用的測試時(shí)間。原則三:根據(jù)用戶行為和有關(guān)用戶的資料確定產(chǎn)品牲及其優(yōu)先順序?qū)τ谝粋€(gè)開發(fā)項(xiàng)目而言,如何確定最終產(chǎn)品中應(yīng)包含什么特性通常是比較困難的一件事。為此微軟采用了一個(gè)稱之為基于行為制定計(jì)劃的方式來進(jìn)行特性選擇 與優(yōu)先級安排。基于行為制定計(jì)劃法從對用戶行為,諸如寫信或做預(yù)算,做系統(tǒng)研究開始。然后,根據(jù)某一特性在支持重要的或者是經(jīng)常的用戶行為上的程序?qū)ζ溥M(jìn)行評價(jià)。這樣做的優(yōu)點(diǎn)是對特性取舍的更理性的討論,對顧客想要做什么的更好的安排,對某個(gè)給定特性是否方便了特定任務(wù)的更集中的辯論,可讀性更強(qiáng)的說明,以及在市場營銷、用戶教育和產(chǎn)品開發(fā)中更好地同步。特性選擇和優(yōu)先級安排中的基于行為制定計(jì)劃基于行為制定計(jì)劃法中的關(guān)鍵點(diǎn)在于按用戶行為、產(chǎn)品特性以及行為和特性之間的內(nèi)部聯(lián)系來分析產(chǎn)品。程序經(jīng)理和產(chǎn)品計(jì)劃者把產(chǎn)品試圖支持的用戶任務(wù)或方案分成大約20個(gè)行為,然后他們努力把行為(以及任何子行為)映射入微軟的現(xiàn)行特性和競爭對手產(chǎn)品的特性中去。他們也把行為映射到不同的顧客形象或不同的市場部分中去。當(dāng)說明產(chǎn)品的新版本時(shí),基于行為制定計(jì)劃法幫助程序經(jīng)理和開發(fā)員集中他們的精力與創(chuàng)造力。向Excel之類的項(xiàng)目爭取在每個(gè)新版本中加入的主要行為不超過四個(gè)。絕大多數(shù)制性直接映射入這些行為之中。該做法使項(xiàng)目可以按特性對用戶的價(jià)值來進(jìn)行分級。通過分級,促使程序經(jīng)理和開發(fā)人員都行動起來,使他們的特性支持盡可能多的行為。這種良性競爭對于用戶有益,同時(shí)也利于提高生產(chǎn)率。為顧客行為而非產(chǎn)品特性懼資料基于和為制定計(jì)劃進(jìn),項(xiàng)目在計(jì)劃階段首先集中于和為,其次才是特性。程序經(jīng)理和市場營銷人員并不去思考和排除他們喜愛的特性,再圍繞它們搞出想象性描述的草案。他們真正做的是列出一份顧客都做些什么的清單,然后把想象性描述集中于支持那些行為的特性上。以行為為中心對產(chǎn)品進(jìn)行全面考慮由于基于行為制定計(jì)劃法是從整個(gè)產(chǎn)品的觀點(diǎn)著眼,因此有助于在不同職能上工作的項(xiàng)目成員理解產(chǎn)品做什么,以及其他產(chǎn)品的相應(yīng)特性如何可能支持那些需要或不需要其他應(yīng)用軟件產(chǎn)品的行為。做市場營銷研究以支持基于行為制定計(jì)劃法為支持基于行為制定計(jì)劃法,從市場營銷組來的產(chǎn)品經(jīng)理與程序經(jīng)理、開發(fā)人員一起開展一些聯(lián)合的研究,如指導(dǎo)對用戶的研究工作。然而,一般來說是產(chǎn)品經(jīng)理做大多數(shù)的研究,并可使其更明確地影響微軟產(chǎn)品的演進(jìn)。原則四:建立模塊化的和水平式的設(shè)計(jì)結(jié)構(gòu),并使項(xiàng)目結(jié)構(gòu)反映產(chǎn)品結(jié)構(gòu)的特點(diǎn)微軟產(chǎn)品設(shè)計(jì)中的一個(gè)關(guān)鍵概念是產(chǎn)品的基礎(chǔ)結(jié)構(gòu),尤其是生命周期短的應(yīng)用軟件,應(yīng)隨項(xiàng)目的進(jìn)展變得更加單一(而不是錯綜復(fù)雜)。當(dāng)開發(fā)組構(gòu)造產(chǎn)品的第一版時(shí),他們更多地使用分級式結(jié)構(gòu),好為產(chǎn)品設(shè)計(jì)規(guī)定出一個(gè)最初的架構(gòu)。隨著時(shí)間推移,他們向單一的結(jié)構(gòu)邁進(jìn),以使項(xiàng)目能集中于特性開發(fā)。項(xiàng)目需要逐漸的嗇和刪除我,鬃著時(shí)間改變和發(fā)展我,以及增加產(chǎn)品間特性表現(xiàn)和運(yùn)作的一致性。微軟越來越強(qiáng)調(diào)不同產(chǎn)品間的特性共享。共享有助于使不同產(chǎn)品的性能與感覺都統(tǒng)一協(xié)條起來;它也方便了需要不只一個(gè)應(yīng)用軟件的用戶,減少了代碼的重復(fù)書寫,縮小了單獨(dú)一個(gè)應(yīng)用軟件的規(guī)模。微軟用特性小組組織產(chǎn)品開發(fā),這種方法使得每個(gè)人都容易明白小組是如何與整個(gè)產(chǎn)品相關(guān)聯(lián)的。項(xiàng)目從規(guī)定概要說明開始。概要說明的形式是一份已確定了優(yōu)先級安排的內(nèi)容清單,涉及產(chǎn)品下一版本將要開發(fā)的相對獨(dú)立的特性,以便由分開的特性小組加以開發(fā)。程序經(jīng)理和開發(fā)員把項(xiàng)目分成特性子集,再將之分配給每個(gè)特性小組,讓他們在3到4個(gè)主要的內(nèi)部項(xiàng)目里程碑中進(jìn)行生產(chǎn)。這種產(chǎn)品組織與開發(fā)法使微軟能靠簡單地增加開發(fā)員和創(chuàng)建一個(gè)大的小組來漸進(jìn)地增加產(chǎn)品的功能。把特性(與函數(shù))作為開發(fā)單位微軟件產(chǎn)品的特性是用戶最終可見的相對獨(dú)立的功能單位,就如建筑材料一般,對應(yīng)用軟件產(chǎn)品更是如此。系統(tǒng)軟件產(chǎn)品,如NT或者95的特性,對最終用戶通常不直接可見。微軟和其他公司有時(shí)簡單地稱這些不直接可見的特性為函數(shù)。程序經(jīng)理承擔(dān)開發(fā)一組特性或函數(shù),實(shí)現(xiàn)從說明經(jīng)測試、文檔化直到最后完成的過程。他們必須開開發(fā)員合作,后者負(fù)責(zé)估計(jì)進(jìn)度表與完善每個(gè)特性。開發(fā)員還要在一臺聯(lián)網(wǎng)開發(fā)計(jì)算機(jī)上存儲一到幾個(gè)文件,用以保存特性的程序源代碼。大多數(shù)特性的開發(fā)與改進(jìn)只要一名開發(fā)員,而有的大型特性則要一個(gè)小的小組。產(chǎn)品結(jié)構(gòu)是決定其長期結(jié)構(gòu)完整性的基石產(chǎn)品結(jié)構(gòu)是產(chǎn)品內(nèi)部的基干,它規(guī)定了重要的結(jié)構(gòu)構(gòu)件以及這些構(gòu)件如何組裝到一起。產(chǎn)品結(jié)構(gòu)及用于組裝結(jié)構(gòu)的構(gòu)件,提供了實(shí)現(xiàn)產(chǎn)品特性(即做詳細(xì)設(shè)計(jì)與編碼)的支柱。產(chǎn)品的結(jié)構(gòu)對最終用戶而言,通常并非直接可見。只有結(jié)構(gòu)要實(shí)現(xiàn)的特性是可見的。產(chǎn)品結(jié)構(gòu)也是決定產(chǎn)品長期結(jié)構(gòu)完整性的基石。產(chǎn)品功能的任何改變都不應(yīng)造成潛在的產(chǎn)品結(jié)構(gòu)散架。產(chǎn)品的層次結(jié)構(gòu)對于產(chǎn)品,也可以采用層次結(jié)構(gòu)的方法加以分析。通常定義良好的層次結(jié)構(gòu)有助于對產(chǎn)品特性進(jìn)行靈活的增加、刪除與改進(jìn)。此外良好的層次結(jié)構(gòu)有助于產(chǎn)品在不同平臺上的移植。(例如Excel總共定義了五層,其中只有最底層的操作系統(tǒng)層是與平臺相關(guān)的,其它各層均是通過調(diào)用其下層所提供的API接口加以實(shí)現(xiàn)的,所以其移植極其方便。而在Windows 95中通過虛擬機(jī)的概念實(shí)現(xiàn)了對16位、32位以及DOS程序的支持。)小的結(jié)構(gòu)文檔:源代碼是唯一文件除了API文檔,微軟不對其產(chǎn)品結(jié)構(gòu)生成相應(yīng)的文檔,雖然有時(shí)高級開發(fā)員可能會寫下高層結(jié)構(gòu)。對復(fù)雜的特性,許多開發(fā)員在某些點(diǎn)記錄并復(fù)查特定于他們所負(fù)責(zé)的結(jié)構(gòu)細(xì)節(jié),但此工作是可選的,并不強(qiáng)制執(zhí)行。除了源代碼文件與特性說明,為數(shù)不多的組為新程序員準(zhǔn)務(wù)了描繪某層結(jié)構(gòu)的文檔(主要的數(shù)據(jù)結(jié)構(gòu),如何工作等等)。但是這些文件并不時(shí)常更新,經(jīng)理們也不要求項(xiàng)目組生成此類內(nèi)部文檔。在有關(guān)的說明文件中,并不涉及實(shí)現(xiàn)問題。開發(fā)員應(yīng)該知道如何去實(shí)現(xiàn),或者能夠去學(xué)會。記錄的關(guān)于結(jié)構(gòu)的文檔如此之少是因?yàn)橐粋€(gè)開發(fā)員的工作是編寫我們要賣的代碼,而不是花時(shí)間寫高水平的設(shè)計(jì)文件,設(shè)計(jì)文件不應(yīng)與源代碼分離。分割代碼與保持事情的簡單特性小組和作為內(nèi)容專家的小組領(lǐng)導(dǎo)特性小組一般由一個(gè)領(lǐng)導(dǎo)和3至8名開發(fā)人員組成,工作于相關(guān)的特性領(lǐng)域。小組的規(guī)模常常視小組領(lǐng)導(dǎo)的經(jīng)驗(yàn)和能力而定。特性小組領(lǐng)導(dǎo)向項(xiàng)目開發(fā)領(lǐng)導(dǎo)匯報(bào)并負(fù)責(zé)薦目的全部開發(fā)工作;而項(xiàng)目開發(fā)領(lǐng)導(dǎo)則擁有對產(chǎn)品的更為全局性的觀點(diǎn),從而最有可能發(fā)現(xiàn)部部互相關(guān)聯(lián)的問題。在特性小組中的每個(gè)人均是此領(lǐng)域的專家,他們了解如何使用產(chǎn)品、了解競爭對手的產(chǎn)品、了解未來將向何處去。通常為便于交流,提高軟件的組織結(jié)構(gòu)(軟件傾向于映射出構(gòu)造 它的組織的結(jié)構(gòu)),應(yīng)保持特性小組的小規(guī)模。原則五:靠個(gè)人負(fù)責(zé)和固定項(xiàng)目資源實(shí)旋控制對于軟件項(xiàng)目而言,精確估計(jì)產(chǎn)品的開發(fā)與交付進(jìn)度是很困難的。對此微軟采取的方法是將進(jìn)度安排和工作管理的責(zé)任推到最底層,即單個(gè)的開發(fā)人員和測試人員那兒去。這保證了每個(gè)人除了作為小組的一部分外,還負(fù)有個(gè)人的責(zé)任。單獨(dú)的開發(fā)人員設(shè)立他們自已的進(jìn)度表,程序經(jīng)理把單獨(dú)的進(jìn)度表匯總起來,再加上緩沖時(shí)間,以制定出一個(gè)全面的項(xiàng)目進(jìn)度表。頂層的總經(jīng)理也固定人員與時(shí)間等基本資源,以確保項(xiàng)目集中并限制其努力與創(chuàng)造程序。關(guān)鍵的目標(biāo),尤其對應(yīng)用軟件,是指明產(chǎn)品的目標(biāo)出品日并爭取盡可能長久地堅(jiān)持它。程序經(jīng)理和開發(fā)員從出品日回溯,規(guī)定中間的項(xiàng)目里程碑的日期。這個(gè)固定的出品日法的中心在開發(fā)員身上。以避免因?yàn)轫?xiàng)目沒有固定的結(jié)束點(diǎn),導(dǎo)致在最終無用的設(shè)計(jì)、再設(shè)計(jì)和測試的循環(huán)中消耗一年或更多的時(shí)間。開發(fā)人員做出他們自已的進(jìn)度估計(jì)比爾犯譴那康魑砣每焙托檣瓚親砸訓(xùn)哪勘輳骸八姓廡掌詼際切槎娜掌凇揮釁淥速彩醞忌瓚飧鋈掌凇頤竊詿笤?0年前就拋棄了那種自目而下的日期設(shè)定方法。但是開發(fā)人員一般會做出較樂觀的估計(jì),因此開發(fā)經(jīng)理還需對他們所提供的日期進(jìn)行調(diào)整并加上緩沖時(shí)間以避免因因信息不完全而出現(xiàn)的問題。微軟這種制定進(jìn)度的方法的優(yōu)點(diǎn)在于:它從人們那兒得到更多的合作,因?yàn)槿掌谑亲砸讯ǖ?,不是?jīng)理定的;進(jìn)度總是富有進(jìn)取性,因?yàn)殚_發(fā)人員不可避免地會低估他們真正需要的進(jìn)間。對細(xì)致的任務(wù)的進(jìn)度估計(jì)微軟的第二個(gè)進(jìn)度排方法是,對要完成之任務(wù)做非常詳盡的考慮,在此基礎(chǔ)上請開發(fā)人員給出他們對實(shí)現(xiàn)的估計(jì),以此力圖促使更加現(xiàn)實(shí)主義并避免過度低估。通常微軟把任務(wù)細(xì)化到4小時(shí)(半天)到3天之間。對于準(zhǔn)確進(jìn)度的安排,微軟的經(jīng)理是這樣認(rèn)識的:任何任務(wù)只要超過一星期,那人們就一定沒有充分地全盤考慮它。任何任務(wù)某人估計(jì)只用少于半天就可完成,則他對它考慮得太多了。他應(yīng)該用列多的時(shí)間去編程,更少的時(shí)間來考慮。對于類似類于Windows NT之類的操作系統(tǒng)而言,進(jìn)度安排更加困難,對其一般以幾天或者半周為工作單位進(jìn)行進(jìn)度估計(jì)。安排開發(fā)人員與小組進(jìn)度時(shí)的心理學(xué)當(dāng)項(xiàng)目變大時(shí),微軟把員工分成小組。然后經(jīng)理把進(jìn)度的責(zé)任和所有權(quán)盡可能

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論