?? +
字號(hào):
Path: localhost!not-for-mail
From: "呂布" <chedong@yahoo.com>
Newsgroups: CCU.Programming.Engineering
Subject: : 微軟公司軟件開(kāi)發(fā)模式簡(jiǎn)介
Date: Tue, 31 Aug 1999 13:29:04 +0800
Organization: ChinaCode TianJin Main Site
Lines: 614
Message-ID: <7qfpfc$hh6$1@chinacode.online.tj.cn>
Reply-To: "呂布" <chedong@yahoo.com>
NNTP-Posting-Host: 202.130.3.250
X-Trace: chinacode.online.tj.cn 936077612 17958 202.130.3.250 (31 Aug 1999 05:33:32 GMT)
X-Complaints-To: news@chinacode.online.tj.cn
NNTP-Posting-Date: 31 Aug 1999 05:33:32 GMT
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.00.2014.211
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211
Xref: localhost CCU.Programming.Engineering:16
社區(qū)服務(wù): 查詢(xún)網(wǎng)友 尋呼臺(tái) 傳紙條 個(gè)人訂閱 進(jìn)站畫(huà)面 資料配置
標(biāo) 題共1篇 討論區(qū): SystemAnalysis[ 系統(tǒng)分析]
[首] [尾] 返回
----------------------------------------------------------------------------
----
作 者: hyenachenyao (BlueHyena) 1999.08.27 轉(zhuǎn)貼 打包 回復(fù)
--摘自北京大學(xué)出版社出版的《微軟的秘密》一書(shū)
北京大學(xué)出版社96年底所出的《微軟的秘密》一書(shū)是目前我所見(jiàn)到的對(duì)微軟公司
軟件
產(chǎn)品開(kāi)發(fā)過(guò)程介紹的最專(zhuān)業(yè)、最深入的一本書(shū)。通過(guò)本書(shū),我們可以看到微軟公
司是
如何對(duì)科學(xué)地對(duì)軟件產(chǎn)品開(kāi)發(fā)進(jìn)行有效地管理,我想這些經(jīng)驗(yàn)對(duì)于中國(guó)的廣大軟
件開(kāi)
發(fā)人員,尤其是關(guān)心中國(guó)軟件產(chǎn)業(yè)發(fā)展的各位朋友是大有益處的。所以特將此書(shū)
中涉
及軟件產(chǎn)品開(kāi)發(fā)的部分內(nèi)容摘錄出來(lái)(第四章"產(chǎn)品定義與開(kāi)發(fā)過(guò)程"),與大家共
同
分享。本文作為摘錄,自然是掛一漏萬(wàn),所以建議大家若有時(shí)間還是找來(lái)原書(shū)一
讀。
在產(chǎn)品定義與開(kāi)發(fā)過(guò)程中,微軟件遵循著一種可稱(chēng)之為"靠改進(jìn)特性與固定資源來(lái)
激
發(fā)創(chuàng)造力"的戰(zhàn)略。該戰(zhàn)略可分為五個(gè)原則:
一、 將大項(xiàng)目分成若干里程碑式的重要階段,各階段之間有緩沖時(shí)間,但不進(jìn)行
單獨(dú)
的產(chǎn)品維護(hù)。
二、運(yùn)用想象描述和對(duì)特性的概要說(shuō)明指導(dǎo)項(xiàng)目。
三、根據(jù)用戶(hù)行為和有關(guān)用戶(hù)的資料確定產(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)品開(kāi)發(fā)法"。典型項(xiàng)目的生命周期包括三個(gè)階段:計(jì)
劃階
段完成功能的說(shuō)明和進(jìn)度表的最后制定,開(kāi)發(fā)階段寫(xiě)出完整的的源代碼,穩(wěn)定化
階段
完成產(chǎn)品,使之能夠批量生產(chǎn)。這三個(gè)大階段以及階段間內(nèi)在的循環(huán)方法與傳統(tǒng)
的"瀑
布"式開(kāi)發(fā)方式很不相同,后者是由需求、詳盡設(shè)計(jì)、模塊化的代碼設(shè)計(jì)與測(cè)試、
集
成測(cè)試以及系統(tǒng)測(cè)試組成的。而微軟的三個(gè)階段更像是風(fēng)險(xiǎn)驅(qū)動(dòng)的、漸進(jìn)的"螺旋
"
式的生命周期模型。
計(jì)劃階段的產(chǎn)品是想象性描述與說(shuō)明文件,用來(lái)解釋項(xiàng)目將做什么和息么做。在
管理
人員擬定進(jìn)度表、開(kāi)發(fā)員寫(xiě)出代碼之前,這些東西都促進(jìn)了人們對(duì)設(shè)計(jì)問(wèn)題的思
考與。
討論開(kāi)發(fā)階段圍繞三次主要的內(nèi)部產(chǎn)品發(fā)布來(lái)進(jìn)行;稱(chēng)定化階段集中于廣泛的內(nèi)
部與
外部測(cè)試。在整個(gè)產(chǎn)品生產(chǎn)周期中,微軟都使用了緩沖時(shí)間的概念。緩沖時(shí)間使
開(kāi)發(fā)
組能夠?qū)Ω兑馔獾睦щy和影響到時(shí)間進(jìn)度的變故,它也提供了一種手段,可以緩
和及
時(shí)發(fā)貨與試圖精確估計(jì)發(fā)貨時(shí)間之間的矛盾。
在開(kāi)發(fā)和穩(wěn)定化階段的所有時(shí)間中,一個(gè)項(xiàng)目通常會(huì)將2/3的時(shí)間用于開(kāi)發(fā),1/3
的時(shí)
間用于穩(wěn)定化。(Office部門(mén)副總裁曾這樣概述通常的進(jìn)度:"一般說(shuō)來(lái),在總的
進(jìn)度
表中,用一半的時(shí)間寫(xiě)出產(chǎn)品,留下另一半的時(shí)間調(diào)試或應(yīng)付意外事故。這樣,
如果
我有一個(gè)兩年的項(xiàng)目,我會(huì)用一年來(lái)完成事先想好的東西……如果事情有點(diǎn)麻煩
,我
便去掉我認(rèn)為不太重要的特性。")這種里程碑式的工作過(guò)程使微軟的經(jīng)理們可以
清楚
地了解產(chǎn)品開(kāi)發(fā)過(guò)程進(jìn)行到了哪一步,也使他們?cè)陂_(kāi)發(fā)階段的后期有能力靈活地
刪去
一些產(chǎn)品特性以滿(mǎn)足發(fā)貨時(shí)期的要求。
計(jì)劃階段
計(jì)劃階段是在一個(gè)項(xiàng)目的生命周期中,所有于開(kāi)發(fā)前進(jìn)行的計(jì)劃所占用的時(shí)間。
計(jì)劃
階段產(chǎn)生出想象性描述、市場(chǎng)營(yíng)銷(xiāo)計(jì)劃、設(shè)計(jì)目標(biāo)、一份最初的產(chǎn)品說(shuō)明、為集
成其
他組開(kāi)發(fā)的構(gòu)件而規(guī)定的接口標(biāo)準(zhǔn)、最初的測(cè)試計(jì)劃、一個(gè)文檔策劃(印刷品和聯(lián)
機(jī)幫
助形式的)以及一份可用性問(wèn)題清單。計(jì)劃階段從想象性描述開(kāi)始。想象性描述來(lái)
自產(chǎn)
品經(jīng)理以及各產(chǎn)品單位的程序經(jīng)理;它是對(duì)產(chǎn)品作業(yè)的市場(chǎng)營(yíng)銷(xiāo)設(shè)想,包括了對(duì)
況爭(zhēng)
對(duì)手產(chǎn)品的分析以及對(duì)示來(lái)版本的規(guī)劃。想象性描述也可能討論在前一次版本中
發(fā)現(xiàn)
面必須解決的問(wèn)題以及應(yīng)添加的生要功能。所有這些都基于對(duì)顧客和市場(chǎng)的分析
以及
從產(chǎn)品支持服務(wù)組處得到的資料。
說(shuō)明文件從一個(gè)大綱開(kāi)始,然后定義出新的或增加的產(chǎn)品特性,并對(duì)其賦以不同
的優(yōu)
先級(jí)。說(shuō)明文件只是產(chǎn)品特性的一個(gè)預(yù)備性概覽;從開(kāi)始開(kāi)發(fā)到項(xiàng)目完成它要增
加或
變化20% - 30%。雖然在生命周期的后期說(shuō)明變化一般較小,但越到后期,開(kāi)發(fā)員
就
越是必須具充分的理由來(lái)作改變。
通常程序經(jīng)理使用VB創(chuàng)建項(xiàng)目原型。他們也開(kāi)展設(shè)計(jì)可行性研究以了解設(shè)計(jì)中的
取
舍情況,盡快做出涉及產(chǎn)品說(shuō)明的決定。
對(duì)于重要產(chǎn)品的說(shuō)明需由公司高層領(lǐng)導(dǎo)進(jìn)行復(fù)審。對(duì)于不太生要的產(chǎn)品,則由部
分經(jīng)
理去完成。
開(kāi)發(fā)階段
開(kāi)發(fā)階段的計(jì)劃對(duì)三四個(gè)主要的里程碑版本都個(gè)咖分配一組特性,規(guī)定出特性的
細(xì)節(jié)
和技術(shù)上的相關(guān)性,記錄下單個(gè)開(kāi)發(fā)員的任務(wù)以及對(duì)進(jìn)度的估計(jì)。在開(kāi)發(fā)階段中
,開(kāi)
發(fā)員在功能性說(shuō)明的指導(dǎo)下寫(xiě)源代碼,測(cè)試員寫(xiě)出測(cè)試項(xiàng)目組以栓查產(chǎn)品的特性
與工
作范圍是否正常,用戶(hù)教育人員則編寫(xiě)出文檔草案。
當(dāng)測(cè)試員發(fā)現(xiàn)錯(cuò)誤時(shí),開(kāi)發(fā)員并不是留待以后處理,而是馬上改正,并在整個(gè)開(kāi)
發(fā)階
段內(nèi)使測(cè)試不斷地、自動(dòng)地進(jìn)行。這就改善了產(chǎn)品的穩(wěn)定性并且使版本發(fā)布日期
更易
估計(jì)。當(dāng)達(dá)到項(xiàng)目中的一定階段點(diǎn)后(40%時(shí)),開(kāi)發(fā)員就試圖"鎖定"產(chǎn)品的主要功
能
要求或特性,從此只允許小的改動(dòng)。如果在此點(diǎn)之后開(kāi)發(fā)員想作大的改動(dòng),他們
必須
與程序經(jīng)理以及開(kāi)發(fā)經(jīng)理,問(wèn)題也許還要征求產(chǎn)品部門(mén)經(jīng)理的意見(jiàn)。
一個(gè)項(xiàng)目是圍繞著3或4個(gè)主要的內(nèi)部版本,或"里程碑子項(xiàng)目"來(lái)組織開(kāi)發(fā)階段的
。
一般用2至4個(gè)月來(lái)開(kāi)發(fā)每一個(gè)主要的里程碑版本。每個(gè)版本都包括其自身的編碼
、
優(yōu)化、測(cè)試以及調(diào)試活動(dòng)。項(xiàng)目為意外事故保留總開(kāi)發(fā)1/3的時(shí)間,即"緩沖時(shí)間
"。
(蘋(píng)果公司的小組是割裂的,獨(dú)立的,各自開(kāi)發(fā)各自的東西。在還有3個(gè)月就要發(fā)
貨時(shí),
才會(huì)將所有的東西集成起來(lái);Boland公司以一種漸近的方式進(jìn)行開(kāi)發(fā),即把工作
分成
許多小的部分,并且總是讓開(kāi)發(fā)的東西能夠運(yùn)轉(zhuǎn)。看起來(lái)似乎這種漸進(jìn)的方法費(fèi)
時(shí)較
長(zhǎng),但實(shí)際上幾護(hù)沒(méi)有用過(guò)很長(zhǎng)時(shí)間,因?yàn)檫@使你總是能掌握住事情真實(shí)的情況
。)
當(dāng)對(duì)最后一個(gè)主要的里程碑版本做了測(cè)試與穩(wěn)定化之后,產(chǎn)品就要進(jìn)行"外觀固定
",
即確定產(chǎn)品的主要用戶(hù)界面,如菜單、對(duì)話(huà)框以及文件窗口等。此后有關(guān)用戶(hù)界
面將
不再進(jìn)行大的改動(dòng),以免引進(jìn)同步修改相應(yīng)文檔的困難。
穩(wěn)定化階段
穩(wěn)定化階段著重于對(duì)產(chǎn)品的測(cè)試與調(diào)試。項(xiàng)目在此階段盡量不再增加新的功能,
除非
是競(jìng)爭(zhēng)產(chǎn)品或者市場(chǎng)發(fā)生了變化。穩(wěn)定化階段也包括了緩沖時(shí)間,以應(yīng)付不可預(yù)
見(jiàn)的
問(wèn)題或者延遲。
項(xiàng)目進(jìn)度表中的緩沖時(shí)間
微軟使用緩沖計(jì)劃,以在最高的效率與較好地對(duì)未來(lái)作預(yù)計(jì)之間求得平衡。這種
應(yīng)付
突發(fā)事件的時(shí)間在開(kāi)發(fā)和穩(wěn)定化過(guò)程中是每一個(gè)主要里程碑的一部分。緩沖時(shí)間
主要
用于彌補(bǔ)由于對(duì)特性的不完全理解,或者是技術(shù)困難或是由于疏忽而忘記把任務(wù)
寫(xiě)入
進(jìn)度,或者是未料到的難題而形成的漏洞。緩沖時(shí)間有助于一個(gè)項(xiàng)目適應(yīng)意料之
外的
事件。
原則二:運(yùn)用想象性描述和對(duì)特性的概要說(shuō)明指導(dǎo)項(xiàng)目
為了給出足夠的開(kāi)發(fā)框架以使工作能持續(xù)進(jìn)行,并且能容納開(kāi)發(fā)過(guò)程中出現(xiàn)的變
化并
保持足夠的靈活性,微軟采用想象性描述和概要的說(shuō)明來(lái)指導(dǎo)項(xiàng)目開(kāi)發(fā),而不是
在一
開(kāi)始就努力寫(xiě)出一份完整和詳細(xì)的說(shuō)明。所謂想象性描述是由程序經(jīng)理和來(lái)自市
場(chǎng)營(yíng)
銷(xiāo)組的產(chǎn)品計(jì)劃人員共同編寫(xiě)的一份非常短的文件,在其中主要是定義產(chǎn)品開(kāi)發(fā)
的目
標(biāo)(不涉及產(chǎn)品的具體細(xì)節(jié)!)。通常對(duì)一個(gè)全新的產(chǎn)品,想象性描述一般會(huì)相對(duì)
較詳
細(xì),在其中還含有一份粗略的說(shuō)明文件。總的來(lái)說(shuō),微軟對(duì)于想象性描述的要求
是:
越短越好,盡量說(shuō)明"產(chǎn)品不做什么"(而不是"產(chǎn)品要做什么"!)。
運(yùn)用想象性描述,程序經(jīng)理開(kāi)始編寫(xiě)功能說(shuō)明文件,該文件解釋產(chǎn)品的特性是什
么以
及這些特性如何與其他特性及產(chǎn)品發(fā)生關(guān)系。最初它只是一個(gè)概要性的說(shuō)明文件
,隨
著項(xiàng)目的進(jìn)展,程序經(jīng)理會(huì)隨時(shí)向其中添加更多的細(xì)節(jié),最終的說(shuō)明文件將變得
象用
戶(hù)手冊(cè)一樣。完整的說(shuō)明不只起著對(duì)產(chǎn)品最新功能的描述作用,而且它還是在產(chǎn)
品投
產(chǎn)與發(fā)貨之前進(jìn)行測(cè)試與評(píng)估的主要依據(jù)。
想象性描述有助于決定刪除哪些特性
微軟內(nèi)的各個(gè)開(kāi)發(fā)組采用想象性描述幫助細(xì)化產(chǎn)品版本的規(guī)定主題,然后以此主
題來(lái)
決定是否需要增加產(chǎn)品各個(gè)可能的特性。通常不要輕易改變所確定的主題,否則
可能
造成產(chǎn)品開(kāi)發(fā)上的混亂。
編寫(xiě)說(shuō)明文件
說(shuō)明文件在產(chǎn)品小組的所有成員之間,產(chǎn)品小組之間以及產(chǎn)品小組與管理部門(mén)之
間起
著傳遞產(chǎn)品的設(shè)想與要求的作用。在說(shuō)明文件中必須清楚地描述產(chǎn)品特性(描述每
個(gè)特
性如何工作,外觀如何以及從用戶(hù)的角度出發(fā)如何與用戶(hù)交互。如果特性有一個(gè)
界面,
還應(yīng)包括一張示意圖,以顯示出界面的效果)并賦于其相應(yīng)的優(yōu)先級(jí)。程序經(jīng)理?yè)?jù)
此建
立起項(xiàng)目的開(kāi)發(fā)起度表。此外在其中還應(yīng)包括以下各項(xiàng)內(nèi)容:用一句話(huà)表示的項(xiàng)
目開(kāi)
發(fā)目的,關(guān)于產(chǎn)品是什么與不是什么的清單,對(duì)顧客的定義,對(duì)競(jìng)爭(zhēng)產(chǎn)品的定義
,產(chǎn)
品對(duì)系統(tǒng)的要求(包括操作系統(tǒng)版本、最小內(nèi)存要求、硬盤(pán)空間、處理器速度以及
顯示
器分辯率),對(duì)第三方(如打印機(jī)驅(qū)動(dòng)程序、組件)的任何依賴(lài)性。
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -