《軟件項目管理》實驗指導書_第1頁
《軟件項目管理》實驗指導書_第2頁
《軟件項目管理》實驗指導書_第3頁
《軟件項目管理》實驗指導書_第4頁
《軟件項目管理》實驗指導書_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件項目管理實驗指導書PAGEPAGEII目錄第一章實驗基礎(chǔ)知識概述 11.1團隊協(xié)作和溝通 11.2幾種配置管理工具簡介 11.2.1VisualSourceSafe(VSS) 11.2.2ConcurrentVersionSystem(CVS) 21.2.3StarTeam 21.2.4ClearCase 31.2.5優(yōu)缺點對比 41.3Project工具 41.4項目基本設(shè)定與快速上手 41.4.1利用范本方式進行部署 51.4.2利用現(xiàn)成的文件快速變更成自己的部署計劃 81.4.3從空白項目開始制作起-火速上線 9第二章實驗要求 152.1實驗過程要求 152.2實驗報告要求 152.2.1實驗報告書寫格式 152.2.2實驗報告范例 152.3實驗成績評價 152.3.1實驗成績評價結(jié)構(gòu)及比例 152.3.2考核方式 152.3.3評價標準及考核方式細則的確定 15第三章實驗內(nèi)容 163.1團隊游戲(齊心協(xié)力) 163.1.1實驗類型 163.1.2實驗?zāi)康?163.1.3背景知識 163.1.4實驗設(shè)備 163.1.5實驗內(nèi)容 163.1.6實驗步驟 163.1.7實驗要求 163.1.8實驗思考 163.2溝通游戲(撲克牌游戲) 173.2.1實驗類型 173.2.2實驗?zāi)康?173.2.3背景知識 173.2.4實驗設(shè)備 173.2.5實驗內(nèi)容 173.2.6實驗步驟 173.2.7實驗要求 173.2.8實驗思考 173.3VSS配置管理工具 173.3.1實驗類型 173.3.2實驗?zāi)康?173.3.3背景知識 173.3.4實驗設(shè)備 183.3.5實驗內(nèi)容 183.3.6實驗步驟 183.3.7實驗要求 183.3.8實驗思考 183.4Project項目管理工具 183.4.1實驗類型 183.4.2實驗?zāi)康?183.4.3背景知識 193.4.4實驗設(shè)備 193.4.5實驗內(nèi)容 193.4.6實驗步驟 193.4.7實驗要求 193.4.8實驗思考 193.5網(wǎng)站項目管理 193.5.1實驗類型 193.5.2實驗?zāi)康?193.5.3背景知識 193.5.4實驗設(shè)備 193.5.5實驗內(nèi)容 193.5.7實驗要求 23附錄B實驗報告封面 40附錄CProject工具使用實驗報告模板 41附錄D團隊游戲總結(jié)報告模板 42附錄E軟件項目計劃模板 43第1頁共46頁第一章實驗基礎(chǔ)知識概述1.1團隊協(xié)作和溝通團隊是一組個體成員為實現(xiàn)一個共同目標而協(xié)同工作,團隊工作就是團隊成員為實現(xiàn)這一共同目標而共同努力。項目團隊工作是否有效會直接影響項目的成敗,盡管需要計劃以及項目經(jīng)理的工作技能,但人員-項目經(jīng)理和項目團隊-才是項目成功的關(guān)鍵。項目成功需要一個有效工作的項目團隊[1]。做一個有成效的團隊成員,對每個成員來說,都是一種充實而令人滿意的成長經(jīng)歷。然而,成長不會自然產(chǎn)生的,需要有責任感,認真工作,思想開放,并要有進一步自我發(fā)展的愿望。盡管項目經(jīng)理是項目成功的最終負責人,但項目團隊的每位成員都要分擔這個責任,他們都要協(xié)助創(chuàng)造并培養(yǎng)一個積極有效的項目環(huán)境。有效的團隊成員會做好計劃,控制并相信他們各自的工作,有效的團隊成員積極參加并能有效溝通。有成效的團隊成員會盡力創(chuàng)造一個沒有爭議,積極而又有建設(shè)性的項目環(huán)境。溝通發(fā)生在項目團隊和客戶直接,項目團隊成員之間,以及項目團隊和其上級管理層之間。溝通涉及兩個或一群人。它可以是口頭或書面的,也可是面對面的,或者使用一些媒介,如電話、郵件、書信、備忘錄、電視會議或通用軟件系統(tǒng)等。交流溝通的核心不是語言,而是理解;不僅需要被理解,而且還需要理解。使用溝通有效的另外一半是聆聽,忽略聆聽將會使溝通失敗。1.2幾種配置管理工具簡介版本控制,是軟件開發(fā)中一項必不可少的管理手段,也是軟件配置管理(SoftwareConfigurationManagement,SCM)的一個部分。而軟件配置管理,在軟件開發(fā)過程中占據(jù)著非常重要的地位,并且是CMM2級的一個關(guān)鍵域。配置管理的概念源于美國空軍,為了規(guī)范設(shè)備的設(shè)計與制造,美國空軍1962年制定并發(fā)布了第一個配置管理的標準“AFSCM375-1,CMDuringtheDevelopment&AcquisitionPhases”。而軟件配置管理概念的提出則在20世紀60年代末70年代初。當時加利福利亞大學圣巴巴拉分校的LeonPresser教授在承擔美國海軍的航空發(fā)動機研制合同期間,撰寫了一篇名為“ChangeandConfigurationControl”的論文,提出控制變更和配置的概念,這篇論文同時也是他在管理該項目(這個過程進行過近一千四百萬次修改)的一個經(jīng)驗總結(jié)。LeonPresser在1975年成立了一家名為SoftTool的公司,開發(fā)了配置管理工具:ChangeandConfigurationControl(CCC),這是最早的配置管理工具之一。隨著軟件工程的發(fā)展,軟件配置管理越來越成熟,從最初的僅僅實現(xiàn)版本控制,發(fā)展到現(xiàn)在的提供工作空間管理、并行開發(fā)支持、過程管理、權(quán)限控制、變更管理等一系列全面的管理能力,已經(jīng)形成了一個完整的理論體系。同時在軟件配置管理的工具方面,也出現(xiàn)了大批的產(chǎn)品,如:最著名的ClearCase;開源產(chǎn)品CVS;入門級工具MicrosoftVSS;新秀HanskyFirefly。為幫助大家選擇適合的SCM工具,對目前較為流行的配置管理工具VSS,CVS,ClearCase,StarTeam作出比較分析:1.2.1VisualSourceSafe(VSS)VSS是美國微軟公司的產(chǎn)品,目前常用的版本為6.0版。VSS是配置管理的一種很好的入門級的工具。VSS的評價如下:易用性:★★★★★易學易用是VSS的強項,VSS采用標準的windows操作界面,只要對微軟的產(chǎn)品熟悉,就能很快上手。VSS的安裝和配置非常簡單,對于該產(chǎn)品,不需要外部的培訓(可以為公司省去一筆不菲的費用)。只要參考微軟完備的隨機文檔,就可以很快的用到實際的工程當中。功能:★★★VSS的配置管理的功能比較基本,提供文件的版本跟蹤功能,對于build和基線的管理,VSS的打標簽的功能可以提供支持。VSS提供share(共享)、branch(分支)和合并(merge)的功能,對于團隊的開發(fā)進行支持。VSS不提供對流程的管理功能,如對變更的流程進行控制。VSS不能提供對異地團隊開發(fā)的支持。此外VSS只能在windows平臺上運行,不能運行在其他操作系統(tǒng)上。安全性:★★★VSS的安全性不高,對于VSS的用戶,可以在文件夾上設(shè)置不可讀,可讀,可讀/寫,可完全控制四級權(quán)限。但由于VSS的文件夾是要完全共享給用戶后,用戶才能進入,所以用戶對VSS的文件夾都可以刪除。這一點也是VSS的一個比較大的缺點。總體成本:★★★★VSS沒有采用對許可證進行收費的方式,只要安裝了VSS,對用戶的數(shù)目是沒有限制的。因此使用VSS的費用是較低的。技術(shù)支持:★★★★★由于VSS是微軟的產(chǎn)品,可以得到穩(wěn)定的技術(shù)支持。1.2.2ConcurrentVersionSystem(CVS)CVS是開發(fā)源代碼的配置管理工具,其源代碼和安裝文件都可以免費下載。CVS的評價如下:易用性:★★★CVS是源于unix的版本控制工具,對于CVS的安裝和使用最好對unix的系統(tǒng)有所了解能更容易學習,CVS的服務(wù)器管理需要進行各種命令行操作。目前,CVS的客戶端有winCVS的圖形化界面,服務(wù)器端也有CVSNT的版本,易用性正在提高。功能:★★★★CVS的功能除具備VSS的功能外,還具有:它的客戶機/服務(wù)器存取方法使得開發(fā)者可以從任何因特網(wǎng)的接入點存取最新的代碼;它的無限制的版本管理檢出(checkout)的模式避免了通常的因為排它檢出模式而引起的人工沖突;它的客戶端工具可以在絕大多數(shù)的平臺上使用。同樣,CVS也不提供對變更流程的自動管理功能。安全性:★★★★一般來說,CVS的權(quán)限設(shè)置單一,通常只能通過CVSROOT/passwd,CVSROOT/readers,CVSROOT/writers文件,同時還要設(shè)置CVSREPOS的物理目錄權(quán)限來完成權(quán)限設(shè)置,無法完成復雜的權(quán)限控制;但是CVS通過CVSROOT目錄下的腳本,提供了相應(yīng)功能擴充的接口,不但可以完成精細的權(quán)限控制,還能完成更加個性化的功能。總體成本:★★★★★CVS是開發(fā)源碼軟件,無需支付購買費用。技術(shù)支持:★★★同樣因為CVS是開發(fā)源碼軟件,沒有生產(chǎn)廠家為其提供技術(shù)的支持。如發(fā)現(xiàn)問題,通常只能靠自己查找網(wǎng)上的資料進行解決。1.2.3StarTeamStarTeam是Borland公司的配置管理工具,StarTeam屬于高端的工具,在易用性,功能和安全性等方面都很不錯。StarTeam的評價如下:易用性:★★★★★StarTeam的用戶界面同VSS的類似,它的所有的操作都可通過圖形用戶界面來完成,同時,對于習慣使用命令方式的用戶,StarTeam也提供命令集進行支持。同時,StarTeam的隨機文檔也非常詳細。功能:★★★★★除了具備VSS,CVS所具有功能外,StarTeam還提供了對基于數(shù)據(jù)庫的變更管理功能,是相應(yīng)工具中獨樹一幟的。StarTeam還提供了流程定制的工具,用戶可跟據(jù)自己的需求靈活的定制流程。與VSS和CVS不同,VSS和CVS是基于文件系統(tǒng)的配置管理工具,而StarTeam是基于數(shù)據(jù)庫的。StarTeam的用戶可根據(jù)項目的規(guī)模,選取多種數(shù)據(jù)庫系統(tǒng)。安全性:★★★★★STARTEAM無需通過物理路徑的權(quán)限設(shè)置,而是通過自己的數(shù)據(jù)庫管理,實現(xiàn)了類似WINDOWSNT的域用戶管理和目錄文件ACL控制。StarTeam完全是域獨立的。這個優(yōu)勢可以為用戶模型提供靈活性,而不會影響到現(xiàn)有的安全設(shè)置。StarTeam的訪問控制非常靈活并且系統(tǒng)。您可以對工程,視圖,文件夾一直向下到每一個小的item設(shè)置權(quán)限。對于高級別的視圖(view),訪問控制可以與用戶組、用戶、項目甚至視圖等鏈接起來。總體成本:★★★StarTeam是按license來收費的,比起VSS,CVS來,企業(yè)在啟動StarTeam進行配置管理需要投入一定資金。技術(shù)支持:★★★★★Borland公司將對用戶進行培訓,并協(xié)作用戶建立配置管理系統(tǒng)。并對用戶提供技術(shù)升級等完善的支持。1.2.4ClearCaseClearCase是Rational公司的產(chǎn)品,也是目前使用較多的配置管理工具。對ClearCase的評價如下:易用性:★★★ClearCase的安裝和維護遠比StarTeam復雜,要成為一個合格的ClearCase的系統(tǒng)管理員,需要接收專門的培訓。ClearCase提供命令行和圖形界面的操作方式,但從ClearCase的圖形界面不能實現(xiàn)命令行的所有功能。功能:★★★★★ClearCase提供VSS,CVS,StarTeam所支持的功能,但不提供變更管理的功能。Rational另提供了ClearQuest工具提供對變更管理的功能,與StarTeam不同,ClearCase后臺的數(shù)據(jù)庫是專有的結(jié)構(gòu)。ClearCase對于windows和unix平臺都提供支持。ClearCase通過多點復制支持多個服務(wù)器和多個點的可擴展性,并擅長設(shè)置復雜的開發(fā)過程。安全性:★★★★ClearCase的權(quán)限設(shè)置功能與StarTeam相比,StarTeam有獨立的安全管理機制,ClearCase沒有專用的安全性管理機制,依賴于操作系統(tǒng)。總體成本:★★要選用ClearCase,需要考慮的費用除購買license的費用外,還有必不可少的技術(shù)服務(wù)費用,沒有Rational公司的專門的技術(shù)服務(wù),很難發(fā)揮出ClearCase的威力。如現(xiàn)在網(wǎng)上雖有ClearCase的破解軟件,但嘗試應(yīng)用的公司大多失敗的緣故。另外,對于web訪問的支持,對于變更管理的支持功能都要另行購買相應(yīng)的軟件。技術(shù)支持:★★★★★Rational公司已被IBM公司收購,所以有可靠的售后服務(wù)保證。1.2.5優(yōu)缺點對比以上幾種工具的總結(jié)如下:VSS的使用簡便易學,但VSS的功能和安全性較弱,且只對windows平臺進行支持,建議作為項目配置管理的入門時采用的工具;CVS的安全性和版本管理功能較強,可以實現(xiàn)異地開發(fā)的支持,但CVS安裝和使用多采用命令行方式,學習曲線高,同時不提供對變更管理的功能,對于小型團隊,可以采用CVS進行管理。ClearCase功能完善,安全性好,可以支持復雜的管理,但學習曲線和學習成本高,需要集成ClearQuest才能完成完整的配置管理功能;StarTeam很好地平衡了功能性、易用性和安全性,同時集成了版本管理、變更管理和缺陷管理。對大型的團隊開發(fā)和建立組織級的配置管理體系,建議采用ClearCase和StarTeam作為配置管理工具。關(guān)于配置管理工具CVS,VSS的使用請具體參考相關(guān)網(wǎng)站.cn/pzgl/pzgl-gj.asp;特性VSSCVSStarTeamClearCase易用性★★★★★★★★★★★★★★★★功能★★★★★★★★★★★★★★★★★安全性★★★★★★★★★★★★★★★★總體成本★★★★★★★★★★★★★★技術(shù)支持★★★★★★★★★★★★★★★★★★表1-1配置管理工具比較表1.3Project工具計劃是項目管理的基本組成部分。沒有有效的計劃,任何項目的失敗幾率將大增。實際上,計劃是一張道路交通圖,指引你如何從當前位置到達想去的地方,沒有它,你可能到不了那里。計劃是為完成一個目標而進行的系統(tǒng)的任務(wù)安排。計劃確定需要完成什么和怎樣才能完成。計劃是實際進度的比較的基準,如果發(fā)生了偏差,可采取糾正措施。MicrosoftProject是我們目前常用的項目管理軟件之一,已經(jīng)占領(lǐng)了項目管理軟件市場的大量份額。其主要優(yōu)點是與微軟的其他產(chǎn)品,如word,excel等很相似,菜單欄幾乎一樣,用戶的工具欄如出一轍,另外,用戶可以在應(yīng)用文件之間輕易來回移動信息資料。1.4項目基本設(shè)定與快速上手學習完本節(jié)后,你將可以如何利用現(xiàn)有范本快速完成項目如何由舊有項目建立一個新項目如何由零到有快速建立一個項目MicrosoftProject是一個功能強大而且可以靈活運用的項目管理工具,我們可以利用Project來控制簡單或復雜的項目。它可以用來安排和追蹤所有的活動,讓我們對活動的項目進度了若指掌。制作一個項目首先便是制定項目計劃時,MicrosoftProject將根據(jù)我們所提供的信息(包括預計完成的任務(wù)、執(zhí)行這些任務(wù)的人員、用來完成任務(wù)的設(shè)備和材料以及相關(guān)的成本)計算并建立一個工作計劃。實際上要開始進行一個項目,我們可以由以下幾種方式開始:利用范本方式進行部署。利用現(xiàn)成的文件快速變更成自己的部署計劃。從空白項目開始制作起。下面我們將逐一說明如何進行一個項目。1.4.1利用范本方式進行部署聯(lián)信股份有限公司為一家從事貿(mào)易的公司,在最近,由于公司快速的成長面臨了企業(yè)快速變更的挑戰(zhàn),公司決定全方位導入知識管理系統(tǒng),實際上,在原本傳統(tǒng)的作業(yè)下,總是老業(yè)務(wù)帶領(lǐng)著新業(yè)務(wù),而知識都只是藏在老業(yè)務(wù)的腦海中,而一旦老業(yè)務(wù)離職或者是高升時,這些知識也就隨著老業(yè)務(wù)的離職而消失。最近,公司決定不如數(shù)字化工作環(huán)境,于是也決定導入MicrosoftProject2002以便能夠好好將知識傳承下去,而你便是這項工作的執(zhí)行者,我們要做的第一道工作便是了解如何快速進行MicrosoftProject2002部署計劃[2],并告知老板知道。這項計劃老板要求能夠在兩個月內(nèi)完成,此時,我們應(yīng)該怎么辦呢?正所謂前人種樹,后人乘涼,直接套用范本是最快而最有效率的方式,所幸,MicrosoftProject提供我們許多范本供我們直接套用,只需選擇適合我們使用的范本再將項目的時間與日歷變更好,這樣,項目便幾乎規(guī)劃完成了。要進行這項工作其方法為:開啟MicrosoftProject;由〔文件/新建〕或由〔任務(wù)窗格/新建項目〕中選取〔根據(jù)模板新建/通用模板〕;最后選取〔Project模板〕。圖1-1Project模板此時便會出現(xiàn)許多模板供我們選擇,有模板中選擇〔項目管理辦公室〕。注意:如果MicrosoftProject2002沒有完全安裝這些模板將不會出現(xiàn)。接著,按下〔確定〕,一個初具原型的項目計劃就出現(xiàn)在我們面前了,好多步驟MicrosoftProject2002已經(jīng)為你想到了。那么下面就是把這個計劃真正變成自己的計劃了!圖1-2甘特圖這時,首先需要關(guān)注是:項目的日程排定方式,由項目開始之日起或是由項目完成之日起。項目進行時的日歷。由〔項目〕菜單選取〔項目信息〕,以便進行上述信息調(diào)整。圖1-3項目信息操作由于老板要求能夠在兩個月內(nèi)完成,因此我們在〔日程排定方法〕中設(shè)定〔由項目完成之日起〕安排我們的計劃。圖1-4項目信息圖接著在〔完成日期〕中輸入為二個月后,其中,有紅色圓圈的地方按一下可以跳到今天的日期。圖1-5項目信息圖接著,在〔日歷〕中設(shè)定自己公司的工作日歷。最后,按下〔確定〕這時,你會發(fā)現(xiàn)我們的項目管理辦公室計劃已經(jīng)變成我們所需的時間了。圖1.可是,如果這樣的時間是老板不能接受的該怎么辦呢?不要緊,試著改變自己在運作上真正的時間,同時把不要的工作任務(wù)刪除,我們便會發(fā)覺,Project便會再自動的幫我們計算最終的結(jié)果。試著利用鼠標拖拽不要的任務(wù),再按下右建后,選擇〔刪除任務(wù)〕。圖1-6刪除任務(wù)所需的工作時間又會重新計算了。圖1-7重建任務(wù)當然,如果改變工期同樣也會重新計算的。圖1-8重建任務(wù)利用如此方式便能快速制作出一份真正屬于自己公司的項目管理辦公室建立計劃了!圖1-9重建任務(wù)1.4.2利用現(xiàn)成的文件快速變更成自己的部署計劃如果文件早已經(jīng)由之前的人制作完成了,我們也可以拿以往的項目資料直接修改成為新的項目計劃,不過,偷也要有技巧的,不要偷了之后卻不知道如何修改才是。 要直接修改之前的文件,其方法為:打開要修改的項目文件。圖1-10項目甘特圖由菜單中選擇〔項目/項目信息〕。此時又回到了之前我們所說明的對話方塊。圖1-11項目信息圖試著,變更排程方式、開始或者是完成日期、日歷狀況,按下〔確定〕按鈕即可。當然了,如有必要也可以變更其任務(wù)內(nèi)容或者是工期時間的長短,然而,這至少你不用從零開始制作起了!1.4.3從空白項目開始制作起-火速上線如果正巧這個項目從沒有人進行過,而范本也沒有類似的項目,這時,我們只好從零開始了!但是不用擔心,MicrosoftProject2002有一個非常激動人心的新的交互式工具,它將幫助你更加快速更加有效的開始你的項目計劃編制。這個項目向?qū)恢辟N心的停留在左窗格,幫助你建立一個新的項目、管理任務(wù)和資源、跟蹤你的項目和報告項目信息。好了,讓我們白手起家,開始產(chǎn)生并建立一個全新的項目吧!聯(lián)信公司計劃開發(fā)一款新穎的mp3產(chǎn)品,研制時間越早開始越好,項目經(jīng)理楊輝洲已經(jīng)在頭腦中構(gòu)思好了一個行動框架計劃,嗯,還是趕快開始,將它做出計劃向老板匯報吧!開啟MicrosoftProject。試著在〔任務(wù)窗格〕中找到并按下〔新建〕圖示。圖1-12新建項目按鈕這時,項目向?qū)Ь蜁霈F(xiàn)在左窗格處。圖1-13項目向?qū)D那么,我們就按照項目向?qū)У奶崾鹃_始〔定義項目〕。既然希望越早開始越好,項目開始時間就確定在9月2日正式開始。定義好項目估計開始的日期之后,單擊〔保存并前往第2步〕。圖1-14項目定義圖圖1-15項目定義圖接著,項目向?qū)Ь蜁儐柲闶欠裨陧椖抗ぷ鹘M中更新你的項目信息。如果你沒有在服務(wù)器上安裝MicrosoftProjectServer,或者目前你不希望發(fā)布你的項目信息,那么就請選擇〔否〕,反之,則選擇〔是〕。由于mp3新產(chǎn)品開發(fā)還處于構(gòu)思階段,項目工作組還沒有正式成立,目前還沒有考慮信息發(fā)布問題,故此處選擇〔否〕。然后,單擊〔保存并前往第3步〕。圖1-16項目定義圖6、接下來要做的就是保存你的項目。請單擊〔保存〕。在彈出的文件保存窗口中,輝洲決定以〔開發(fā)mp3新產(chǎn)品〕作為他的文件名,保存在〔我的文檔〕夾中。單擊〔保存〕按鈕。然后,單擊〔保存并前往第4步〕。圖1-17項目定義圖圖圖1-18項目保存現(xiàn)在,就是開始錄入你的項目任務(wù)和所需的時間的時候了。圖1-19項目錄入這個mp3新產(chǎn)品開發(fā)包含以下內(nèi)容。表1-2產(chǎn)品開發(fā)內(nèi)容任務(wù)名稱工期立項7d策劃5d研發(fā)和工程化25d模具開發(fā)25dPCB開發(fā)15d軟件開發(fā)15d質(zhì)量評測10d量產(chǎn)10d產(chǎn)品上市2d此時在畫面右方的甘特圖便會自動變長。甘特圖甘特圖圖1-20項目甘特圖接著選擇任務(wù)4-6,按下〔降級〕圖示,使整個項目結(jié)構(gòu)變得更有結(jié)構(gòu)性。圖1-21降級按鈕但是這還不夠,老板們都希望看見項目的整體情況,難道我們還需要將每一項加起來嗎?不用!MicrosoftProject早就為我們準備好了。在菜單中選擇〔工具/選項〕,在彈出的〔選項〕窗口中選擇〔視圖〕頁。圖1-22選項視圖接著,在〔視圖〕頁找到〔顯示項目摘要任務(wù)〕,然后將其鉤選上。這時,你會發(fā)現(xiàn)你得到了項目的情況總覽。圖1-23任務(wù)視圖由于開發(fā)mp3新產(chǎn)品,首先要做的是立項,成立Team小組,進行初步市場研究等,然后才進行項目具體行動的策劃工作,因此,我們選擇“立項”以及“策劃”兩項任務(wù)。按下工具欄中的〔連接任務(wù)〕圖1-23連接任務(wù)按鈕此時在甘特圖中出現(xiàn)一個連接線代表所選擇的第一個任務(wù)完畢后才會進行第二選取的任務(wù),同時,這兩個項目的時間也會相應(yīng)的進行自動調(diào)整。圖1-24任務(wù)視圖重復12-13步,很快一份完美的計劃就呈現(xiàn)在的面前。包括項目的總工期,開始和完成時間都自動計算出來了!圖1-25任務(wù)視圖進行一個項目計劃工作就是這么容易,不難吧!

第二章實驗要求2.1實驗過程要求在進入實驗室前,要求按實驗指導書進行預習,熟悉實驗內(nèi)容、并進行相關(guān)實驗準備。凡沒有進行實驗預習的同學,一律不準進行本次實驗。在進行實驗中,應(yīng)嚴格遵守實驗室相關(guān)制度。《軟件項目管理》課程需完成8個學時的實驗,其分布如下:表2-1實驗項目分布實驗名稱學時數(shù)性質(zhì)類型備注團隊協(xié)作實驗2選做驗證二選一溝通實驗2選做驗證VSS配置管理工具2選做驗證二選一Project項目管理工具2選做驗證網(wǎng)站項目管理4必做設(shè)計2.2實驗報告要求2.2.1實驗報告書寫格式團隊游戲的總結(jié)報告請參見附錄2,項目計劃的實驗報告請參加附錄3。軟件工具使用的實驗報告參考計算機學院統(tǒng)一的實驗報告書。2.2.2實驗報告范例關(guān)于項目計劃的編制請參考附錄。2.3實驗成績評價2.3.1實驗成績評價結(jié)構(gòu)及比例實驗成績由平時各次實驗成績組成,其中管理工具使用和團隊游戲?qū)嶒灨髡?5%,網(wǎng)站項目管理實驗占50%。2.3.2考核方式實驗成績的評定由其實驗指導教師根據(jù)學生在實驗過程的表現(xiàn)和撰寫的實驗報告進行評定。2.3.3評價標準及考核方式細則的確定評價等級分為:優(yōu)秀(90~100)、良好(80~90)、中(70~80)、及格(60~70)和不及格(60分以下)五個檔次。具體的考核細則由指導教師靈活掌握。第三章實驗內(nèi)容3.1團隊游戲(齊心協(xié)力)3.1.1實驗類型驗證性實驗,2學時,選做。3.1.2實驗?zāi)康耐ㄟ^團隊游戲,了解團隊協(xié)作在團隊工作中的重要性、增強團隊成員的歸屬感、激發(fā)團隊成員員的奮斗精神。3.1.3背景知識該游戲的游戲規(guī)則為:將學員分成幾個小組,每組在5人以上為佳。每組先派出兩名學員,背靠背坐在地上。兩人雙臂相互交叉,合力使雙方一同站起。以此類推,每組每次增加一人,如果嘗試失敗需再來一次,直到成功才可再加一人。培訓者在旁觀看,選出人數(shù)最多且用時最少的一組為優(yōu)勝。3.1.4實驗設(shè)備需要一塊比較空曠的場地。3.1.5實驗內(nèi)容按3.1.3所規(guī)定的游戲規(guī)則和在15分鐘內(nèi),完成齊心協(xié)力團隊游戲。3.1.6實驗步驟第一步驟:實驗指導教師完成分組,每小組選出小組長。第二步驟:各小組根據(jù)游戲規(guī)則,商討游戲策略。第三步驟:按游戲規(guī)則進行實驗,可隨時調(diào)整策略。第四步驟:每小組總結(jié)經(jīng)驗教訓,每組推舉一人發(fā)言,時間為10分鐘。3.1.7實驗要求按游戲規(guī)則和在規(guī)定的時間內(nèi),進行齊心協(xié)力游戲,成功同時站起來次數(shù)最多和用時最少的小組為優(yōu)秀,最后一名為不合格。中間的依次遞減。每違反一次游戲規(guī)則,扣10分。每人撰寫一份總結(jié)體會報告,要求不少于500字;3.1.8實驗思考你能僅靠一個人的力量就完成起立的動作嗎?如果參加游戲的隊員能夠保持動作協(xié)調(diào)一致,這個任務(wù)是不是更容易完成?為什么?你們是否想過一些辦法來保證隊員之間動作協(xié)調(diào)一致?3.2溝通游戲(撲克牌游戲)3.2.1實驗類型驗證性實驗,2學時,選做。3.2.2實驗?zāi)康耐ㄟ^游戲,模擬部屬與領(lǐng)導之間的溝通能力。3.2.3背景知識該游戲的游戲規(guī)則為:7人為一組,分三排就座,第一排位置為A,第二排位置為B、C,第三排位置分別為D、E、F、G。每排人只可以看到前面的人,但不可以看到后排的人。A是團隊領(lǐng)導者,B、C是團隊領(lǐng)導者A的直接下屬,D、E是B的直接下屬,F(xiàn)、G是C的直接下屬。每個角色都有一個信封,信封里有任務(wù)單和四張撲克牌。任務(wù)單里會描述本次游戲的任務(wù)和規(guī)則。每組需要共同完成任務(wù),如果完成任務(wù)舉手示意。游戲時間30分鐘。3.2.4實驗設(shè)備一塊較大的實驗空地,不同角色信封一個(內(nèi)含任務(wù)單和游戲規(guī)則)3.2.5實驗內(nèi)容按3.1.3所規(guī)定的游戲規(guī)則和規(guī)定的時間內(nèi),完成撲克牌游戲。3.2.6實驗步驟第一步驟:實驗指導教師完成分組,每小組選出大組長和小組長,并按角色進行排列。第二步驟:按游戲規(guī)則進行實驗,可隨時調(diào)整策略。第三步驟:每小組總結(jié)經(jīng)驗教訓,每組推舉一人發(fā)言,時間為10分鐘。3.2.7實驗要求按游戲規(guī)則和在規(guī)定的時間內(nèi),進行撲克牌游戲,最先完成任務(wù)的小組為優(yōu)秀,最后一名為不合格。中間的依次遞減。每違反一次游戲規(guī)則,扣10分。每人撰寫一份總結(jié)體會報告,要求不少于500字;3.2.8實驗思考為什么失敗(成功)?中高層在執(zhí)行過程中犯了什么錯誤?基層干部在執(zhí)行過程應(yīng)該扮演什么角色?3.3VSS配置管理工具3.3.1實驗類型驗證性實驗,2學時,選做。3.3.2實驗?zāi)康陌惭b并能熟練使用VSS配置管理工具的基本功能。3.3.3背景知識軟件項目在其執(zhí)行過程中產(chǎn)生了很多產(chǎn)品,包括各種文檔、程序、數(shù)據(jù)和手冊。所有這些產(chǎn)品都是易于改變的。為避免項目在變更時失控,正確控制和管理變更是很必要的。配置管理又稱為軟件配置管理,是項目管理中專用于關(guān)注系統(tǒng)地控制項目進行中發(fā)生的變更的那些部分,由用來識別機構(gòu)軟件產(chǎn)品并控制其修改的一系列活動。軟件配置管理過程的主要階段有:計劃和構(gòu)建配置管理:為配置管理制定計劃包括確定配置項、指定用于控制和實現(xiàn)對這些配置項的變更的規(guī)程。識別配置項是任何類型配置管理的基本活動。這個階段的主要活動包括:識別配置項,定義為配置項命名和編號的計劃,定義配置管理所需的目錄結(jié)構(gòu),定義訪問限制,定義變更控制規(guī)程,確定和定義配置管理委員會的責任和權(quán)利,定義跟蹤配置項狀態(tài)的方法、定義發(fā)布規(guī)程和定義歸檔規(guī)程等。執(zhí)行配置控制:要執(zhí)行的配置控制活動主要有兩個,一個涉及管理程序和文檔的狀態(tài)轉(zhuǎn)移,另外一個是涉及管理必須實現(xiàn)的需求變更。狀態(tài)監(jiān)督和審計:除了檢查配置項的狀態(tài)信息之外,還必須檢查變更請求的狀態(tài)。最后就是執(zhí)行配置審計。3.3.4實驗設(shè)備PC機一套,服務(wù)一臺,VC++工程目錄及文件一套和VC開發(fā)工具一套。3.3.5實驗內(nèi)容在本地機器安裝VSS,并進行相關(guān)配置,允許其他同學向本VSS服務(wù)器進行相關(guān)提交。將服務(wù)器的VC工程目錄提交到本地和異地VSS服務(wù)器各一次。修改VC工程目錄某一文件,編譯通過后,提交到本地服務(wù)器,checkout到本地,通過VC編譯。3.3.6實驗步驟第一步驟:從服務(wù)器下載VSS安裝程序、VC工程文件;第二步驟:安裝VSS服務(wù)器,并設(shè)置以便本地和異地進行配置管理;第三步驟:將VC工程文件編譯通過后,提交到本地服務(wù)器和異地服務(wù)器各一次。第四步驟:從本地服務(wù)器checkout到本地目錄,檢驗?zāi)芊裢ㄟ^本地VC編譯;第五步驟:修改VC工程文件某一文件,編譯通過后,提交到本地服務(wù)器;并比較修改前文件和修改后文件版本號的變化情況。第六步驟:對VC工程項目標定一分支,并從該分支提交另一修改后的文件,請比較主干和分支的版本號。3.3.7實驗要求通過幫助文檔使用VSS的基本功能;修改的VC工程中某一文件,可以是代碼的修改,也可是注釋行的修改。撰寫實驗報告;3.3.8實驗思考分支在什么情況下標定,在什么情況下將與主干合并?VSS的主要功能有哪些?VSS支持多項目組,多人開發(fā)的配置管理嗎?3.4Project項目管理工具3.4.1實驗類型驗證性實驗,2學時,選做。3.4.2實驗?zāi)康陌惭b并能熟練使用Project項目管理工具的基本功能。3.4.3背景知識參考Project使用手冊或幫助文檔3.4.4實驗設(shè)備PC機一套,服務(wù)一臺。3.4.5實驗內(nèi)容安裝單機版Project;以書上第八章油漆工的資源組合為例,通過幫助文檔使用project的基本功能;根據(jù)優(yōu)化策略,對書上所給的例子進行優(yōu)化;3.4.6實驗步驟第一步驟:通過幫助文檔,熟悉project的基本功能;第二步驟:根據(jù)所學的優(yōu)化策略,對例子進行優(yōu)化;3.4.7實驗要求熟練使用Project的基本功能;撰寫實驗報告;3.4.8實驗思考可以從哪些方面來檢查一個計劃是否合理?可以使用哪些優(yōu)化策略對項目計劃進行進一步優(yōu)化?3.5網(wǎng)站項目管理3.5.1實驗類型設(shè)計性實驗,4學時,必做。3.5.2實驗?zāi)康慕柚鷓roject工具制定合理科學的軟件開發(fā)計劃。3.5.3背景知識互聯(lián)網(wǎng)還不是一個完全成熟的生意場,且不說熱鬧的.com公司潮和電子商務(wù)熱,現(xiàn)在已有很多個人和已經(jīng)習慣利用互聯(lián)網(wǎng)來搜索信息、溝通和交流,也有不少企業(yè)已經(jīng)嘗試或開展電子商務(wù)活動。企業(yè)網(wǎng)站一般是指以企業(yè)自身的產(chǎn)品服務(wù)等為主要內(nèi)容和服務(wù)對象的網(wǎng)站,根據(jù)不同需要,網(wǎng)站的功能會有很大的不同,有的純粹是發(fā)布公司信息,有的還開展網(wǎng)上訂貨等商務(wù)活動,但基本上都是為企業(yè)自身服務(wù)而有別于com公司網(wǎng)站和電子商務(wù)網(wǎng)站。3.5.4實驗設(shè)備PC機一套(內(nèi)含project工具和office工具)。3.5.5實驗內(nèi)容一、明確建站目的

建設(shè)網(wǎng)站的目的對網(wǎng)站的計劃和實施會有決定性的作用,所以在建設(shè)網(wǎng)站前就應(yīng)重視起來。一般企業(yè)建站的目的主要有:

1、發(fā)布企業(yè)產(chǎn)品、服務(wù)信息

2、介紹企業(yè)歷史、輝煌成就

3、收集客戶反饋意見

4、網(wǎng)上市場調(diào)查

5、開展網(wǎng)絡(luò)營銷

6、網(wǎng)上客戶服務(wù)

7、逐漸實施電子商務(wù)等企業(yè)建網(wǎng)站首先應(yīng)該以營銷為基本目的。與傳統(tǒng)媒體相比,網(wǎng)站的營銷作用有明顯的時間、地域、互動和成本優(yōu)勢,網(wǎng)站發(fā)布產(chǎn)品和服務(wù)信息的主要目的還是營銷宣傳。網(wǎng)站的客戶服務(wù)功能有不少企業(yè)不太重視,筆者在給企業(yè)建設(shè)網(wǎng)站中很注重這方面的作用,因為服務(wù)好已有客戶對企業(yè)來說是很重要的工作,利用網(wǎng)站可以省去很多時間和費用,同時能夠?qū)蛻舻囊庖娮鞒隹焖倩貞?yīng)。要正確認識網(wǎng)站的作用,不要過于輕視網(wǎng)站的建設(shè),要避免為了應(yīng)付上網(wǎng)和“老板型”的網(wǎng)站。

隨著互聯(lián)網(wǎng)的工具性越來越突出,這種工具的普遍應(yīng)用會促進網(wǎng)上交易及電子商務(wù)的實施,因此在條件允許的情況下也應(yīng)該考慮電子商務(wù)的可擴展性。二、制定網(wǎng)站建設(shè)計劃

大部分的企業(yè)建站缺少計劃,計劃主要是安排和協(xié)調(diào)企業(yè)相關(guān)部門共同去建設(shè)網(wǎng)站,網(wǎng)站建設(shè)不是某個人或某個部門的事情。應(yīng)該對企業(yè)的各個部門應(yīng)該負責的事務(wù)進行統(tǒng)籌安排,計劃的主要內(nèi)容包括:網(wǎng)站建設(shè)的時間安排、內(nèi)容的收集整理、根據(jù)建站目的確定網(wǎng)站的功能、網(wǎng)頁設(shè)計是由企業(yè)自己做還是進行委托、網(wǎng)站測試發(fā)布、網(wǎng)站推廣、費用預算等。三、企業(yè)資源整合

要避免“網(wǎng)站八股”式的網(wǎng)站內(nèi)容:領(lǐng)導致詞、公司簡介、業(yè)務(wù)范圍等非常簡單的信息。網(wǎng)站的信息量越少其能夠發(fā)揮的作用就越小,因此網(wǎng)站內(nèi)容要要盡量豐富,最好對企業(yè)的資源進行整合分析,針對需要和市場情況對內(nèi)容進行整理。四、網(wǎng)站建設(shè)方法

是自建還是委托專業(yè)制作公司代理制作。因為條件限制,中小企業(yè)建設(shè)網(wǎng)站一般選擇委托專業(yè)公司代理制作,這樣可以省去招聘專業(yè)網(wǎng)站設(shè)計制作人員等費用。但在選擇代理公司時要認真考察,畢竟網(wǎng)頁設(shè)計等屬于較專業(yè)的事,要盡可能的多了解代理公司的設(shè)計制作能力和信譽。需要注意的是:

1、域名注冊

域名可以說是企業(yè)的“網(wǎng)上商標”,所以域名的選擇上要與注冊商標相符合,以便容易記憶。在域名注冊時也要注意,現(xiàn)在有不少域名注冊服務(wù)商在注冊國際域名時,將域名的管理聯(lián)系人等項目改為自己的公司的信息,那么這個域名實際上并不為你所有。

2、虛擬主機

虛擬主機是網(wǎng)頁的存放空間,虛擬主機的優(yōu)劣和穩(wěn)定性直接影響網(wǎng)站訪問速度,不要使用太過便宜的主機,空間適量即可,主要考察標準是帶寬、主機配置、CGI權(quán)限、數(shù)據(jù)庫、服務(wù)和技術(shù)支持。

3、網(wǎng)頁設(shè)計(程序開發(fā))

網(wǎng)頁設(shè)計要和公司的企業(yè)形象識別(VI)相符合,主要是根據(jù)建設(shè)網(wǎng)站的目的和功能,計劃一下需要什么樣的風格、是否需要安裝程序,如論壇、社區(qū)、留言薄(反饋表單)等。五、正式網(wǎng)站規(guī)劃書

在上述工作基本做好后應(yīng)該寫出正式的網(wǎng)站規(guī)劃書,網(wǎng)站規(guī)劃書可以保證網(wǎng)站建設(shè)順利進行,作為網(wǎng)站建設(shè)管理監(jiān)督的參考,同時可以提交給專業(yè)制作公司,以指導網(wǎng)站的設(shè)計。如何寫作可以參考作者的“網(wǎng)站策劃書寫作”一文。現(xiàn)在我國企業(yè)網(wǎng)站的質(zhì)量普遍不太高,很多網(wǎng)站內(nèi)容簡單,長時間不更新。而在網(wǎng)站建設(shè)中有不少企業(yè)不注重對建站前的準備工作,結(jié)果網(wǎng)站建成后總有不滿意的地方修改不斷,這樣會耗費很多人力和資金。建議企業(yè)在建設(shè)網(wǎng)站前要充分重視起網(wǎng)站建設(shè),網(wǎng)站不單單是“網(wǎng)上形象工程”,從網(wǎng)站中也可體現(xiàn)出公司的工作作風等,更重要的是在網(wǎng)站建成后要充分利用網(wǎng)站進行網(wǎng)上營銷,才能更大的限度地發(fā)揮網(wǎng)站的作用。網(wǎng)站規(guī)劃書包含的內(nèi)容如下:一、建設(shè)網(wǎng)站前的市場分析1、相關(guān)行業(yè)的市場是怎樣的,市場有什么樣的特點,是否能夠在互聯(lián)網(wǎng)上開展公司業(yè)務(wù)。

2、市場主要競爭者分析,競爭對手上網(wǎng)情況及其網(wǎng)站規(guī)劃、功能作用。

3、公司自身條件分析、公司概況、市場優(yōu)勢,可以利用網(wǎng)站提升哪些競爭力,建設(shè)網(wǎng)站的能力(費用、技術(shù)、人力等)。二、建設(shè)網(wǎng)站目的及功能定位1、為什么要建立網(wǎng)站,是為了宣傳產(chǎn)品,進行電子商務(wù),還是建立行業(yè)性網(wǎng)站?是企業(yè)的需要還是市場開拓的延伸?

2、整合公司資源,確定網(wǎng)站功能。根據(jù)公司的需要和計劃,確定網(wǎng)站的功能:產(chǎn)品宣傳型、網(wǎng)上營銷型、客戶服務(wù)型、電子商務(wù)型等。

3、根據(jù)網(wǎng)站功能,確定網(wǎng)站應(yīng)達到的目的作用。

4、企業(yè)內(nèi)部網(wǎng)(Intranet)的建設(shè)情況和網(wǎng)站的可擴展性。三、網(wǎng)站技術(shù)解決方案根據(jù)網(wǎng)站的功能確定網(wǎng)站技術(shù)解決方案。

1、采用自建服務(wù)器,還是租用虛擬主機。

2、選擇操作系統(tǒng),用unix,Linux還是Window2000/NT。分析投入成本、功能、開發(fā)、穩(wěn)定性和安全性等。

3、采用系統(tǒng)性的解決方案(如IBM,HP)等公司提供的企業(yè)上網(wǎng)方案、電子商務(wù)解決方案?還是自己開發(fā)。

4、網(wǎng)站安全性措施,防黑、防病毒方案。

5、相關(guān)程序開發(fā)。如網(wǎng)頁程序ASP、JSP、CGI、數(shù)據(jù)庫程序等。四、網(wǎng)站內(nèi)容規(guī)劃1、根據(jù)網(wǎng)站的目的和功能規(guī)劃網(wǎng)站內(nèi)容,一般企業(yè)網(wǎng)站應(yīng)包括:公司簡介、產(chǎn)品介紹、服務(wù)內(nèi)容、價格信息、聯(lián)系方式、網(wǎng)上定單等基本內(nèi)容。

2、電子商務(wù)類網(wǎng)站要提供會員注冊、詳細的商品服務(wù)信息、信息搜索查詢、定單確認、付款、個人信息保密措施、相關(guān)幫助等。

3、如果網(wǎng)站欄目比較多,則考慮采用網(wǎng)站編程專人負責相關(guān)內(nèi)容。注意:網(wǎng)站內(nèi)容是網(wǎng)站吸引瀏覽者最重要的因素,無內(nèi)容或不實用的信息不會吸引匆匆瀏覽的訪客。可事先對人們希望閱讀的信息進行調(diào)查,并在網(wǎng)站發(fā)布后調(diào)查人們對網(wǎng)站內(nèi)容的滿意度,以及時調(diào)整網(wǎng)站內(nèi)容。五、網(wǎng)頁設(shè)計1、網(wǎng)頁設(shè)計美術(shù)設(shè)計要求,網(wǎng)頁美術(shù)設(shè)計一般要與企業(yè)整體形象一致,要符合CI規(guī)范。要注意網(wǎng)頁色彩、圖片的應(yīng)用及版面規(guī)劃,保持網(wǎng)頁的整體一致性。

2、在新技術(shù)的采用上要考慮主要目標訪問群體的分布地域、年齡階層、網(wǎng)絡(luò)速度、閱讀習慣等。

3、制定網(wǎng)頁改版計劃,如半年到一年時間進行較大規(guī)模改版等。六、網(wǎng)站維護1、服務(wù)器及相關(guān)軟硬件的維護,對可能出現(xiàn)的問題進行評估,制定響應(yīng)時間。

2、數(shù)據(jù)庫維護,有效地利用數(shù)據(jù)是網(wǎng)站維護的重要內(nèi)容,因此數(shù)據(jù)庫的維護要受到重視。

3、內(nèi)容的更新、調(diào)整等。

4、制定相關(guān)網(wǎng)站維護的規(guī)定,將網(wǎng)站維護制度化、規(guī)范化。七、網(wǎng)站測試網(wǎng)站發(fā)布前要進行細致周密的測試,以保證正常瀏覽和使用。主要測試內(nèi)容:

1、服務(wù)器穩(wěn)定性、安全性。

2、程序及數(shù)據(jù)庫測試。

3、網(wǎng)頁兼容性測試,如瀏覽器、顯示器。

4、根據(jù)需要的其他測試。八、網(wǎng)站發(fā)布與推廣1、網(wǎng)站測試后進行發(fā)布的公關(guān),廣告活動。

2、搜索引掣登記等。九、網(wǎng)站建設(shè)日程表各項規(guī)劃任務(wù)的開始完成時間,負責人等。十、費用明細各項事宜所需費用清單。以上為網(wǎng)站規(guī)劃書中應(yīng)該體現(xiàn)的主要內(nèi)容,根據(jù)不同的需求和建站目的,內(nèi)容也會在增加或減少。在建設(shè)網(wǎng)站之初一定要進行細致的規(guī)劃,才能達到預期建站目的。3.5.6實驗步驟第一步驟:確定項目目標第二步驟:項目工作包分解第三步驟:借助project制定項目的進度計劃(參考下表)識號任務(wù)名稱工期開始時間完成時間前置任務(wù)1項目范圍規(guī)劃2.5工作日2001年6月20日2001年6月22日

2確定項目范圍4工時2001年6月20日2001年6月20日

3項目資源配備2工作日2001年6月20日2001年6月22日24項目范圍規(guī)劃階段結(jié)束0工作日2001年6月22日2001年6月22日35軟件需求分析10.38工作日2001年6月22日2001年7月6日

。。。。。。。。。。。。。。。。。。35文檔20.5工作日2001年7月18日2001年8月15日

36制定“幫助”規(guī)范1工作日2001年7月18日2001年7月19日1640審閱并修改用戶文檔2工作日2001年8月13日2001年8月15日394l文檔階段結(jié)束0工作日2001年8月15日2001年8月15日4042項目總結(jié)2.38工作日2001年9月3日2001年9月5日

43經(jīng)驗教訓歸檔2工作日2001年9月3日2001年9月5日3444建立軟件維護小組3工時2001年9月5日2001年9月5日4345回顧完成0工作日2001年9月5日2001年9月5日44

第四步驟:項目進度控制第五步驟:項目總結(jié)3.5.7實驗要求撰寫項目計劃和提交project項目文件。

參考文獻[1]Projectmanagement:bestpracticesforITprofessionals,RichardMurch著.高等教育出版社(影印),2002年[2]覃征等編著.軟件項目管理.清華大學出版社,2004[3]CMMinpractice:processforexecutingsoftwareprojectsatInfosys,PankajJalote.Addison-Wesley,2000年

附錄A軟件生命周期及微軟軟件開發(fā)模式軟件生命周期(SDLC,軟件生存周期)是軟件的產(chǎn)生直到報廢的生命周期,周期內(nèi)有問題定義、可行性分析、總體描述、系統(tǒng)設(shè)計、編碼、調(diào)試和測試、驗收與運行、維護升級到廢棄等階段,這種按時間分程的思想方法是軟件工程中的一種思想原則,即按部就班、逐步推進,每個階段都要有定義、工作、審查、形成文檔以供交流或備查,以提高軟件的質(zhì)量。但隨著新的面向?qū)ο蟮脑O(shè)計方法和技術(shù)的成熟,軟件生命周期設(shè)計方法的指導意義正在逐步減少。圖1軟件生命周期一、軟件生命周期(SDLC)的六個階段1、問題的定義及規(guī)劃此階段是軟件開發(fā)方與需求方共同討論,主要確定軟件的開發(fā)目標及其可行性。2、需求分析在確定軟件開發(fā)可行的情況下,對軟件需要實現(xiàn)的各個功能進行詳細分析。需求分析階段是一個很重要的階段,這一階段做得好,將為整個軟件開發(fā)項目的成功打下良好的基礎(chǔ)。"唯一不變的是變化本身。",同樣需求也是在整個軟件開發(fā)過程中不斷變化和深入的,因此我們必須制定需求變更計劃來應(yīng)付這種變化,以保護整個項目的順利進行。圖2需求分析過程3、軟件設(shè)計此階段主要根據(jù)需求分析的結(jié)果,對整個軟件系統(tǒng)進行設(shè)計,如系統(tǒng)框架設(shè)計,數(shù)據(jù)庫設(shè)計等等。軟件設(shè)計一般分為總體設(shè)計和詳細設(shè)計。好的軟件設(shè)計將為軟件程序編寫打下良好的基礎(chǔ)。圖3軟件設(shè)計過程4、程序編碼此階段是將軟件設(shè)計的結(jié)果轉(zhuǎn)換成計算機可運行的程序代碼。在程序編碼中必須要制定統(tǒng)一,符合標準的編寫規(guī)范。以保證程序的可讀性,易維護性,提高程序的運行效率。5、軟件測試在軟件設(shè)計完成后要經(jīng)過嚴密的測試,以發(fā)現(xiàn)軟件在整個設(shè)計過程中存在的問題并加以糾正。整個測試過程分單元測試、組裝測試以及系統(tǒng)測試三個階段進行。測試的方法主要有白盒測試和黑盒測試兩種。在測試過程中需要建立詳細的測試計劃并嚴格按照測試計劃進行測試,以減少測試的隨意性。圖4軟件測試6、運行維護軟件維護是軟件生命周期中持續(xù)時間最長的階段。在軟件開發(fā)完成并投入使用后,由于多方面的原因,軟件不能繼續(xù)適應(yīng)用戶的要求。要延續(xù)軟件的使用壽命,就必須對軟件進行維護。軟件的維護包括糾錯性維護和改進性維護兩個方面。二、軟件生命周期模型任何軟件都是從最模糊的概念開始的:為某個公司設(shè)計辦公的流程處理;設(shè)計一種商務(wù)信函打印系統(tǒng)并投放市場。這個概念是不清晰的,但卻是最高層的業(yè)務(wù)需求的原型。這個概念都會伴隨著一個目的,例如在一個"銀行押匯系統(tǒng)"的目的是提高工作的效率。這個目的將會成為系統(tǒng)的核心思想,系統(tǒng)成敗的評判標準。99年政府部門上了大量的OA系統(tǒng),學過一點LotusNotes的人都發(fā)了財(IBM更不用說了),但是更普遍的情況是,許多的政府部門原有的處理模式并沒有變化,反而又加上了自動化處理的一套流程。提高工作效率的初衷卻導致了完全不同的結(jié)果。這樣的軟件究竟是不是成功的呢?從概念提出的那一刻開始,軟件產(chǎn)品就進入了軟件生命周期。在經(jīng)歷需求、分析、設(shè)計、實現(xiàn)、部署后,軟件將被使用并進入維護階段,直到最后由于缺少維護費用而逐漸消亡。這樣的一個過程,稱為"生命周期模型"(LifeCycleodel)。幾種常用生命周期模型是:瀑布模型快速原型模型迭代模型1、瀑布模型瀑布模型(WaterfallModel)首先由Royce提出。該模型由于酷似瀑布聞名。這是一個最傳統(tǒng)的生命周期模型,是一種順序的模型,自頂向下把一個軟件開發(fā)過程分為:系統(tǒng)定義、需求分析、設(shè)計、編碼、測試和維護等階段。在開發(fā)過程中這些階段順序進行,就像是一個飛流直下的瀑布,因此得名。該模型可以用下面的圖形來表示。系統(tǒng)定義

\|/

需求分析

\|/

設(shè)計

\|/

編碼

\|/

測試

\|/

維護圖5瀑布模型有時,根據(jù)項目的特點,設(shè)計又可分為概要設(shè)計和詳細設(shè)計。上圖中各階段所要完成的工作在一般的論述軟件工程的書籍中都有描述,這里就不再細述。雖然上面的階段是順序進行的,但是這并不是限定我們的軟件項目必須在完成了上個階

段的工作后才能進行下個階段的工作。在實際的開發(fā)過程中,我們常常會遇到這樣的情況:階段反復和重疊。在軟件開發(fā)的某個階段可能發(fā)生需求變更,而一旦軟件需求發(fā)生變化,就勢必會造成軟件設(shè)計的改變,因此,如果該軟件項目已經(jīng)進行到了測試階段,那么我們就必須回過頭來重新進行需求分析、概要設(shè)計、詳細設(shè)計和編碼。像這種在后面的階段又返回來做前面階段工作的情形,就成為階段反復。當然,也有可能因為開發(fā)人員前面的工作做得不夠準確而導致階段反復。階段反復常常會造成進度延遲,但是,只要嚴格控制好每個階段的輸入和輸出,我們還是可以有效的控制軟件項目的開發(fā)過程。在實際的開發(fā)過程中我們還會遇到這種情況:如果一個軟件項目規(guī)模較大,而且各功能

模塊相對獨立,那么,我們就沒有必要要求所有模塊的進度都一致,也就是說,模塊1可能

很快就能完成概要設(shè)計和詳細設(shè)計,而模塊2由于太復雜概要設(shè)計可能就需要很長的時間。

對于這種情況,只要控制好模塊1各階段的輸入和輸出,完全可以讓模塊1先行,直到完成

或者必須停下來等待其他模塊。像這種情況,一個軟件項目的各模塊可能處于不同的階段

,就成為階段重疊。出現(xiàn)這種情況,必須是某些模塊比較獨立,否則就不可能比其他模塊

先行。雖然階段的重疊和反復是允許的,但是我們卻不能允許這種情況隨意發(fā)生。比如說,需

求分析和設(shè)計可以重疊,但是如果需求分析和編碼也重疊就很難說代碼會寫成什么樣了;

編碼階段可以因為需求變更回過頭來進行需求分析和設(shè)計,但是如果已經(jīng)進行系統(tǒng)測試了

還在進行階段反復,這就等于又開發(fā)一個新項目了。因此,為了更好的控制軟件開發(fā)過程

,要盡量減少階段重疊和反復,如果實在不可避免,應(yīng)該對所有的變更進行嚴格控制,這

樣才能保證我們的開發(fā)過程陷入無序狀態(tài)。另外,在該模型的基礎(chǔ)上,還衍生出了強調(diào)測試活動的V模型。它把瀑布模型的測試階段進行細分,并于前面的階段進行對應(yīng)。細分出來的這些階段分別為:單元測試階段、集成

測試階段和系統(tǒng)測試階段。V模型的結(jié)構(gòu)圖如下。系統(tǒng)定義維護

\/需求分析系統(tǒng)測試\/概要設(shè)計集成測試

\/

詳細設(shè)計...單元測試

\/

編碼圖6v模型結(jié)構(gòu)圖與需求分析對應(yīng)的是系統(tǒng)測試。因為需求分析的工作是分解用戶的功能和性能需求并規(guī)

格化,所以系統(tǒng)測試的工作主要就是測試這些功能和性能指標是否都在軟件中正確實現(xiàn)。

該測試把軟件作為一個黑盒,針對每個需求規(guī)格組織各種輸入并根據(jù)軟件輸出來判斷該需

求規(guī)格是否正確實現(xiàn),因此系統(tǒng)測試屬于黑盒測試。與概要設(shè)計對應(yīng)的是集成測試。因為

概要設(shè)計的工作主要是根據(jù)功能把大的系統(tǒng)進行模塊分解,所以集成測試的工作主要是,

把各模塊逐步集成在一起,來測試數(shù)據(jù)是否能夠在各模塊間正確流動,以及各模塊能否正

確同步。因為這種測試依賴于軟件的架構(gòu)但又不關(guān)心每個函數(shù)的實現(xiàn)細節(jié),所以該測試又

常稱為灰盒測試。與詳細設(shè)計對應(yīng)的是單元測試。它主要是詳細設(shè)計中的每個功能單元(

通常是函數(shù)或過程)進行邏輯覆蓋測試,因此這種測試屬于白盒測試。與從需求到設(shè)計、

統(tǒng)測試,于是就形成了一個V字形的結(jié)構(gòu)。與在瀑布模型中描述的一樣,這些測試活動也是順序進行的,并遵循一定的輸入和輸出

規(guī)則(具體的測試在以后的章節(jié)中會詳細描述),但是這些階段也同樣可以重疊和反復。瀑布模型的優(yōu)點是清楚地標識出了軟件開發(fā)的階段。它采用自頂向下逐步求精的方式把

整個開發(fā)過程分成不同的階段,每個階段的工作都很明確,因此便于控制開發(fā)過程。當所

有的階段都完成之后,該軟件的開發(fā)過程也隨之結(jié)束。瀑布模型的缺點正是它自身的順序性所導致的。實際的開發(fā)過程中,在需求階段很難把

用戶的需求完全明確下來,因此,當需求變更時將會導致階段反復,而且都要重復需求、

設(shè)計、編碼、測試等過程。實際的開發(fā)過程中,用得較多的就是瀑布/V模型,只是可以根據(jù)實際需要進行階段合并與裁減。2.迭代式模型圖7迭代式模型迭代式模型是RUP推薦的周期模型。在RUP中,迭代被定義為:迭代包括產(chǎn)生產(chǎn)品發(fā)布(穩(wěn)定、可執(zhí)行的產(chǎn)品版本)的全部開發(fā)活動和要使用該發(fā)布必需的所有其他外圍元素。所以,在某種程度上,開發(fā)迭代是一次完整地經(jīng)過所有工作流程的過程:(至少包括)需求工作流程、分析設(shè)計工作流程、實施工作流程和測試工作流程。實質(zhì)上,它類似小型的瀑布式項目。RUP認為,所有的階段(需求及其它)都可以細分為迭代。每一次的迭代都會產(chǎn)生一個可以發(fā)布的產(chǎn)品,這個產(chǎn)品是最終產(chǎn)品的一個子集。迭代的思想如上圖所示。圖8瀑布型和迭代型迭代和瀑布的最大的差別就在于風險的暴露時間上。"任何項目都會涉及到一定的風險。如果能在生命周期中盡早確保避免了風險,那么您的計劃自然會更趨精確。有許多風險直到已準備集成系統(tǒng)時才被發(fā)現(xiàn)。不管開發(fā)團隊經(jīng)驗如何,都絕不可能預知所有的風險。"(RUP)二者的區(qū)別如下圖所示:圖8瀑布型和迭代型由于瀑布模型的特點(文檔是主體),很多的問題在最后才會暴露出來,為了解決這些問題的風險是巨大的。"在迭代式生命周期中,您需要根據(jù)主要風險列表選擇要在迭代中開發(fā)的新的增量內(nèi)容。每次迭代完成時都會生成一個經(jīng)過測試的可執(zhí)行文件,這樣就可以核實是否已經(jīng)降低了目標風險。"3、快速原型(RapidPrototype)模型快速原型模型在功能上等價于產(chǎn)品的一個子集。注意,這里說的是功能上。瀑布模型的缺點就在于不夠直觀,快速原型法就解決了這個問題。一般來說,根據(jù)客戶的需要在很短的時間內(nèi)解決用戶最迫切需要,完成一個可以演示的產(chǎn)品。這個產(chǎn)品只是實現(xiàn)部分的功能(最重要的)。它最重要的目的是為了確定用戶的真正需求。在得到用戶的需求之后,原型將被拋棄。因為原型開發(fā)的速度很快,設(shè)計方面是幾乎沒有考慮的,如果保留原型的話,在隨后的開發(fā)中會為此付出極大的代價。至于保留原型方面,也是有一種叫做增量模型是這么做的,但這種模型并不為大家所接受。上述的模型中都有自己獨特的思想,其實現(xiàn)在的軟件組織中很少說標準的采用那一種模型的。軟件生命周期模型的發(fā)展實際上是體現(xiàn)了軟件工程理論的發(fā)展。在最早的時候,軟件的生命周期處于無序、混亂的情況。一些人為了能夠控制軟件的開發(fā)過程,就把軟件開發(fā)嚴格的區(qū)分為多個不同的階段,并在階段間加上嚴格的審查。這就是瀑布模型產(chǎn)生的起因。瀑布模型體現(xiàn)了人們對軟件過程的一個希望:嚴格控制、確保質(zhì)量。可惜的是,現(xiàn)實往往是殘酷的。瀑布模型根本達不到這個過高的要求,因為軟件的過程往往難于預測。反而導致了其它的負面影響,例如大量的文檔、繁瑣的審批。因此人們就開始嘗試著用其它的方法來改進或替代瀑布方法。例如把過程細分來增加過程的可預測性。微軟公司軟件開發(fā)模式簡介在微軟的產(chǎn)品定義與開發(fā)過程中,微軟軟件開發(fā)遵循著一種可稱之為“靠改進特性(Feature)與固定資源(Resource)來激發(fā)創(chuàng)造力”的戰(zhàn)略。該戰(zhàn)略可分為五個原則:1、將大項目分成若干里程碑式(Milestone)的重要階段,各階段之間有緩沖時間,但不進行單獨的產(chǎn)品維護。2、運用想象描述和對特性的概要說明(ProgramSpecification)指導項目。3、根據(jù)用戶行為(UserBehavior)和有關(guān)用戶的資料確定產(chǎn)品特性及其優(yōu)先順序。4、建立模塊化的和水平式的設(shè)計結(jié)構(gòu),并使項目結(jié)構(gòu)反映產(chǎn)品結(jié)構(gòu)的特點。5、靠個人負責和固定項目資源實施控制。原則一:將大項目分成若干里程碑式的重要階段,各階段之間有緩沖時間,但不進行單獨的產(chǎn)品維護。1、項目進度安排與里程碑微軟通常采用“同步-穩(wěn)定產(chǎn)品開發(fā)法”。典型項目的生命周期包括三個階段:計劃階段:完成功能的說明和進度表的最后制定開發(fā)階段:寫出完整的的源代碼穩(wěn)定化階段:完成產(chǎn)品,使之能夠批量生產(chǎn)(RollOut)這三個大階段以及階段間內(nèi)在的循環(huán)方法與傳統(tǒng)的“瀑布”(WaterFall)式開發(fā)方式很不相同,后者是由需求、詳盡設(shè)計、模塊化的代碼設(shè)計與測試、集成測試以及系統(tǒng)測試組成的。而微軟的三個階段更像是風險驅(qū)動的、漸進的“螺旋”式的生命周期模型。計劃階段的產(chǎn)品是想象性描述與說明文件,用來解釋項目將做什么和怎么做。在管理人員擬定進度表、開發(fā)員寫出代碼之前,這些東西都促進了人們對設(shè)計問題的思考與討論。開發(fā)階段圍繞三次主要的內(nèi)部產(chǎn)品發(fā)布來進行;穩(wěn)定化階段集中于廣泛的內(nèi)部與外部測試。在整個產(chǎn)品生產(chǎn)周期中,微軟都使用了緩沖時間的概念。緩沖時間使開發(fā)組能夠?qū)Ω兑馔獾睦щy和影響到時間進度的變故,它也提供了一種手段,可以緩和及時發(fā)貨與試圖精確估計發(fā)貨時間之間的矛盾。在開發(fā)和穩(wěn)定化階段的所有時間中,一個項目通常會將2/3的時間用于開發(fā),1/3的時間用于穩(wěn)定化。(Office部門副總裁曾這樣概述通常的進度:“一般說來,在總的進度表中,用一半的時間寫出產(chǎn)品,留下另一半的時間調(diào)試或應(yīng)付意外事故。這樣,如果我有一個兩年的項目,我會用一年來完成事先想好的東西……如果事情有點麻煩,我便去掉我認為不太重要的特性。”)。這種里程碑式的工作過程使微軟的經(jīng)理們可以清楚地了解產(chǎn)品開發(fā)過程進行到了哪一步,也使他們在開發(fā)階段的后期有能力靈活地刪去一些產(chǎn)品特性以滿足發(fā)貨時期的要求。計劃階段:計劃階段是在一個項目的生命周期中,所有于開發(fā)前進行的計劃所占用的時間。計劃階段產(chǎn)生出想象性描述、市場營銷計劃、設(shè)計目標、一份最初的產(chǎn)品說明、為集成其他組開發(fā)的構(gòu)件而規(guī)定的接口標準、最初的測試計劃、一個文檔策劃(印刷品和聯(lián)機幫助形式的)以及一份可用性問題清單(UsabilityList)。計劃階段從想象性描述開始。想象性描述來自產(chǎn)品經(jīng)理以及各產(chǎn)品單位的程序經(jīng)理;它是對規(guī)劃產(chǎn)品的市場營銷設(shè)想,包括了對競爭對手產(chǎn)品的分析以及對未來版本的規(guī)劃。想象性描述也可能討論在前一次版本中發(fā)現(xiàn)面必須解決的問題以及應(yīng)添加的主要功能。所有這些都基于對顧客和市場的分析以及從產(chǎn)品支持服務(wù)組處得到的資料。說明文件從一個大綱開始,然后定義出新的或增加的產(chǎn)品特性,并對其賦以不同的優(yōu)先級。說明文件只是產(chǎn)品特性的一個預備性概覽;從開始開發(fā)到項目完成它要增加或變化20%-30%。雖然在生命周期的后期說明變化一般較小,但越到后期,開發(fā)員就越是必須具充分的理由來作改變。通常程序經(jīng)理使用VB創(chuàng)建項目原型。他們也開展設(shè)計可行性研究以了解設(shè)計中的取舍情況,盡快做出涉及產(chǎn)品說明的決定。對于重要產(chǎn)品的說明需由公司高層領(lǐng)導進行復審。對于不太重要的產(chǎn)品,則由部分經(jīng)理去完成。開發(fā)階段:開發(fā)階段的計劃對三四個主要的里程碑版本都逐個分配一組特性,規(guī)定出特性的細節(jié)和技術(shù)上的相關(guān)性,記錄下單個開發(fā)員的任務(wù)以及對進度的估計。在開發(fā)階段中,開發(fā)員在功能性說明的指導下寫源代碼,測試員寫出測試項目組以檢查產(chǎn)品的特性與工作范圍是否正常,用戶教育人員(UserEducation)則編寫出文檔草案。當測試員發(fā)現(xiàn)錯誤時,開發(fā)員并不是留待以后處理,而是馬上改正,并在整個開發(fā)階段內(nèi)使測試不斷地、自動地進行。這就改善了產(chǎn)品的穩(wěn)定性并且使版本發(fā)布日期更易估計。當達到項目中的一定階段點后(40%時),開發(fā)員就試圖“鎖定”產(chǎn)品的主要功能要求或特性,從此只允許小范圍的改動。如果在此點之后開發(fā)員想作大的改動,他們必須與程序經(jīng)理以及開發(fā)經(jīng)理進行討論協(xié)商,也許還要征求產(chǎn)品部門經(jīng)理的意見。一個項目是圍繞著3或4個主要的內(nèi)部版本,或“里程碑子項目”來組織開發(fā)階段的。一般用2至4個月來開發(fā)每一個主要的里程碑版本。每個版本都包括其自身的編碼、優(yōu)化、測試以及調(diào)試活動。項目為意外事故保留總開發(fā)1/3的時間,即“緩沖時間”(PaddingTime)。(蘋果公司的小組是割裂的、獨立的,各自開發(fā)各自的東西。在還有3個月就要發(fā)貨時,才會將所有的東西集成起來;Borland公司以一種漸近的方式進行開發(fā),即把工作分成許多小的部分,并且總是讓開發(fā)的東西能夠運轉(zhuǎn)。看起來似乎這種漸進的方法費時,但實際上幾乎沒有用過很長時間,因為這使你總是能掌握住事情真實的情況。)當對最后一個主要的里程碑版本做了測試與穩(wěn)定化之后,產(chǎn)品就要進行“外觀固定”(UIFreeze),即確定產(chǎn)品的主要用戶界面,如菜單、對話框以及文件窗口等。此后有關(guān)用戶界面將不再進行大的改動,以免引進同步修改相應(yīng)文檔的困難。穩(wěn)定化階段:穩(wěn)定化階段著重于對產(chǎn)品的測試與調(diào)試。項目在此階段盡量不再增加新的功能,除非是競爭產(chǎn)品或者市場發(fā)生了變化。穩(wěn)定化階段也包括了緩沖時間,以應(yīng)付不可預見的問題或者延遲。下面我將Micosoft開發(fā)軟件的模式用以下這張簡圖加以描述:(這張圖對微軟的測試進行了比較詳細的描述,我個人認為微軟的測試是Microsoft軟件產(chǎn)品開發(fā)中一個十分重要也是十分有特色的分工。這是通過在微軟將近一年的觀察和與國內(nèi)同類企業(yè)的分析,我才得出這樣的結(jié)論。大家都很明白,國內(nèi)的軟件開發(fā)商在這方面做得很不夠,尤其不重視軟件的內(nèi)部測試,在他們的思想中,可能有一個誤區(qū):認為測試應(yīng)該完全去由用戶去負責,其實不然,在軟件的開發(fā)流程中,軟件的測試與開發(fā)是一種“矛與盾”的關(guān)系,互為補充,缺一不可。在微軟,可能這種關(guān)系發(fā)揮到了極至:有時開發(fā)部門與測試部門互相較著勁,開發(fā)經(jīng)理和測試經(jīng)理的地位是相同的,有時甚至測試經(jīng)理的地位甚至凌駕于開發(fā)經(jīng)理之上,但他們之間沒有根本的利益沖突,只有一個共同的目標:將產(chǎn)品的質(zhì)量提高。)補充一點:(對微軟的測試流程加以簡要的描述一下)微軟內(nèi)部,專門有一個小組負責為微軟的工程師們提供日常工作和管理的工具軟件,他們是非盈利機構(gòu),其主要任務(wù)是開發(fā)微軟內(nèi)部所需要的工具軟件:例如:SLM(SourceLibraryTree),源代碼管理工具,負責管理軟件開發(fā)過程中各個程序員的源碼,各個程序員負責寫自己的模塊,每天將完成的代碼Check-in到一個中央服務(wù)器的SLM樹中,這個SLM樹由預先定義好的腳本在固定的時間開始編譯,通常這個過程需要好幾個小時,所以微軟內(nèi)部根據(jù)各個項目組的情況有各自的規(guī)定:比如開發(fā)員必須在下班前(比如下午6:00)之前將當天修改的代碼Check-in進去,這樣SLM才開始編譯。第二天,QA組的各個測試員從服務(wù)器上下載前一天的一個Build開始測試,將測試的情況及時的反映到另外一個工具軟件中:RAID(Raidisatoolforentering,tracking,analyzing,andreportingproductdefectsduringdevelopmentandmaintenance.).這個工具負責管理產(chǎn)品的BUG情況,每個BUG包含很多屬性:比如狀態(tài)(活動的、解決的、關(guān)閉的)、嚴重級、優(yōu)先級、哪個區(qū)域、哪個版本出現(xiàn)的、發(fā)現(xiàn)者、要將這個BUG賦給哪一個開發(fā)員等等一系列屬性。還可以根據(jù)這個工具查詢哪個開發(fā)員當天的BUG活動的、解決的數(shù)量,哪個測試員的BUG質(zhì)量數(shù)目等等一些基本的產(chǎn)品質(zhì)量情況,這樣項目經(jīng)理可以很容易的掌握該項目的具體進展情況。如果在項目的開發(fā)中期,發(fā)現(xiàn)的BUG數(shù)目比解決的BUG數(shù)目持續(xù)的多(意味著該產(chǎn)品的活著的BUG越來越多),可能意味著這個項目出現(xiàn)了問題,決策者可以迅速的作出相應(yīng)的決策,及時的糾正產(chǎn)品開發(fā)中出現(xiàn)的失誤(微軟曾經(jīng)有很多產(chǎn)品因為這樣的因素被Cancel了)。還有項目經(jīng)理可以根據(jù)這個工具,及時的掌握、了解每個測試員和開發(fā)員的工作狀態(tài),這一點很重要。有很多人曾經(jīng)說過:Microsoft憑借著SLM和RAID打敗了無數(shù)的競爭對手。這兩個工具確實是非常杰出的工具,微軟將它們使用到了十分藝術(shù)的程度上,對微軟的成功起著非常重要的作用。更難能可貴的是,目前這些工具在功能上還在不斷的進行改進、升級,使得微軟的工程師們工作起來更加如虎添翼、虎虎生風,這樣的企業(yè)哪有不成功的道理?在測試過程中,也不是隨便的對軟件產(chǎn)品毫無目的的瞎使用、亂使用,微軟也有一套十分先進的方法和工具支撐著測試的每個方面:比如ATCM(AccessTestCaseManagement),一種基于TestCase(測試用例)的測試管理工具就承擔著這方面的工作。微軟也許正是靠著“程序員的聰明和測試員的勤奮”構(gòu)建起軟件帝國的大廈、譜寫著軟件事業(yè)的輝煌。圖9ProductDevelopingProcessinMicrosoft上圖中:QA是微軟大的產(chǎn)品部門下設(shè)的一個比較專業(yè)的測試部門(QualityAssuranceDept)項目進度表中的緩沖時間(PaddingTime):微軟使用緩沖計劃,以在最高的效率與較好地對未來作預計之間求得平衡。這種應(yīng)付突發(fā)事件的時間在開發(fā)和穩(wěn)定化過程中是每一個主要里程碑的一部分。緩沖時間主要用于彌補由于對特性(Feature)的不完全理解,或者是技術(shù)困難或是由于疏忽而忘記把任務(wù)寫入進度,或者是未料到的難題而形成的漏洞。緩沖時間有助于一個項目適應(yīng)意料之外的事件。運用想象性描述和對特性的概要說明指導項目為了給出足夠的開發(fā)框架以使工作能持續(xù)進行,并且能容納開發(fā)過程中出現(xiàn)的變化并保持足夠的靈活性,微軟采用想象性描述和概要的說明來指導項目開發(fā),而不是在一開始就努力寫出一份完整和詳細的說明。所謂想象性描述是由程序經(jīng)理和來自市場營銷組的產(chǎn)品計劃人員共同編寫的一份非常短的文件,在其中主要是定義產(chǎn)品開發(fā)的目標(不涉及產(chǎn)品的具體細節(jié)!)。通常對一個全新的產(chǎn)品,想象性描述一般會相對較詳細,在其中還含有一份粗略的說明文件。總的來說,微軟對于想象性描述的要求是:越短越好,盡量說明"產(chǎn)品不做什么"(而不是"產(chǎn)品要做什么"!)。運用想象性描述,程序經(jīng)理開始編寫功能說明文件,該文件解釋產(chǎn)品的特性是什么以及這些特性如何與其他特性及產(chǎn)品發(fā)生關(guān)系。最初它只是一個概要性的說明文件,隨著項目的進展,程序經(jīng)理會隨時向其中添加更多的細節(jié),最終的說明文件將變得象用戶手冊一樣。完整的說明不只起著對產(chǎn)品最新功能的描述作用,而且它還是在產(chǎn)品投產(chǎn)與發(fā)貨之前進行測試與評估的主要依據(jù)。原則二:想象性描述有助于決定刪除哪些特性。微軟內(nèi)的各個開發(fā)組采用想象性描述幫助細化產(chǎn)品版本的規(guī)定主題,然后以此主題來決定是否需要增加產(chǎn)品各個可能的特性。通常不要輕易改變所確定的主題,否則可能造成產(chǎn)品開發(fā)上的混亂。編寫說明文件說明文件在產(chǎn)品小組的所有成員之間,產(chǎn)品小組之間以及產(chǎn)品小組與管理部門之間起著傳遞產(chǎn)品的設(shè)想與要求的作用。在說明文件中必須清楚地描述產(chǎn)品特性(描述每個特性如何工作,外觀如何以及從用戶的角度出發(fā)如何與用戶交互。如果特性有一個界面,還應(yīng)包括一張示意圖,以顯示出界面的效果),并賦于其相應(yīng)的優(yōu)先級。程序經(jīng)理據(jù)此建立起項目的開發(fā)進度表。此外在其中還應(yīng)包括以下各項內(nèi)容:用一句話表示的項目開發(fā)目的,關(guān)于產(chǎn)品是什么與不是什么的清單,對顧客的定義,對競爭產(chǎn)品的定義,產(chǎn)品對系統(tǒng)的要求(包括操作系統(tǒng)版本、最小內(nèi)存要求、硬盤空間、處理器速度以及顯示器分辯率),對第三方(如打印機驅(qū)動程序、組件)的任何依賴性。程序經(jīng)理負責協(xié)調(diào)并"寫下"說明程序經(jīng)理(ProgramManager)應(yīng)考慮以下問題:這項特性的要點是什么?用戶如何使用該特性?這項特性有意義嗎?該產(chǎn)品中或微軟的其他產(chǎn)品中有類似的特性嗎?有哪些問題被遺漏了?組內(nèi)的交流令人滿意嗎?最終程序經(jīng)理通過與組內(nèi)開發(fā)人員的共同討論決定有關(guān)特性的內(nèi)容,并將其寫下來。構(gòu)造原型:構(gòu)造原型是程序經(jīng)理具體說明一件新產(chǎn)品或一個新版本的最好方法,這從許多方面來說都使開發(fā)前測試成為可能,尤其在可用性方面,

溫馨提示

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

評論

0/150

提交評論