大型軟件項(xiàng)目的軟件工程管理方法_第1頁(yè)
大型軟件項(xiàng)目的軟件工程管理方法_第2頁(yè)
大型軟件項(xiàng)目的軟件工程管理方法_第3頁(yè)
大型軟件項(xiàng)目的軟件工程管理方法_第4頁(yè)
大型軟件項(xiàng)目的軟件工程管理方法_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、大型軟件項(xiàng)目的軟件工程管理方法計(jì)研2 鄭震坤 024891摘要:本文中介紹紹了軟件件配置管管理的工工具CVVS,并并闡述了了如何利利用CVVS來(lái)實(shí)實(shí)現(xiàn)對(duì)開(kāi)開(kāi)發(fā)文檔檔和源代代碼的訪訪問(wèn)和版版本控制制。文中中還設(shè)計(jì)計(jì)了用于于軟件過(guò)過(guò)程管理理的軟件件工程管管理系統(tǒng)統(tǒng),它包包括任務(wù)務(wù)管理系系統(tǒng)、BBug管管理系統(tǒng)統(tǒng)和用戶戶認(rèn)證系系統(tǒng),此此系統(tǒng)為為管理軟軟件生成成過(guò)程和和進(jìn)行質(zhì)質(zhì)量控制制而建立立,能夠夠?qū)浖?xiàng)目的的過(guò)程進(jìn)進(jìn)行監(jiān)控控。此外外,文章章中還討討論了軟軟件測(cè)試試的一些些方法和和原則。最最后,對(duì)對(duì)組件技技術(shù)以及及基于組組件的軟軟件工程程學(xué)方法法進(jìn)行了了簡(jiǎn)要的的介紹。概述隨著企業(yè)信信息化的的深入

2、,對(duì)軟件項(xiàng)項(xiàng)目的需求日日益復(fù)雜雜,并會(huì)會(huì)產(chǎn)生頻頻繁的變變更, 傳統(tǒng)統(tǒng)的個(gè)人人英雄主主義的開(kāi)開(kāi)發(fā)方式式已經(jīng)越越來(lái)越不不能適應(yīng)應(yīng)發(fā)展的的需要。從從軟件企企業(yè)的發(fā)發(fā)展戰(zhàn)略略來(lái)說(shuō),如如何在技技術(shù)日新新月異和和人員流流動(dòng)頻繁繁的情況況下,建立本本公司的的知識(shí)庫(kù)庫(kù)及經(jīng)驗(yàn)驗(yàn)庫(kù),把企業(yè)業(yè)中分散散的隱性性的財(cái)富富,即個(gè)個(gè)人的知知識(shí)及經(jīng)經(jīng)驗(yàn),轉(zhuǎn)變?yōu)闉槠髽I(yè)的的知識(shí)和和經(jīng)驗(yàn),以以便提高高工作效效率,縮縮短產(chǎn)品品周期,加強(qiáng)企企業(yè)的競(jìng)競(jìng)爭(zhēng)力,具具有至關(guān)關(guān)重要的的作用。采采用科學(xué)學(xué)的管理理思想,輔之以以先進(jìn)的的管理工工具,已已經(jīng)成為為企業(yè)未未來(lái)發(fā)展展必不可可少的手手段。如果軟件開(kāi)開(kāi)發(fā)機(jī)構(gòu)構(gòu)不能有有效地控控制和使使用軟件件資

3、源,則則在面對(duì)對(duì)風(fēng)險(xiǎn)時(shí)時(shí)就可能能導(dǎo)致軟軟件開(kāi)發(fā)發(fā)活動(dòng)出出現(xiàn)各種種問(wèn)題。由由于不能能很好地地管理軟軟件過(guò)程程,會(huì)使得一一些好的的開(kāi)發(fā)方方法和技技術(shù)沒(méi)有有起到預(yù)預(yù)期的作作用。項(xiàng)項(xiàng)目的成成功往往往是通過(guò)過(guò)工作組組的杰出出努力來(lái)來(lái)達(dá)到的的,這種種僅僅建建立在依依賴(lài)特定定高素質(zhì)質(zhì)開(kāi)發(fā)人人員基礎(chǔ)礎(chǔ)上的成成功,不不能保證證全組織織的持續(xù)續(xù)穩(wěn)定的的軟件生生產(chǎn)和質(zhì)質(zhì)量的長(zhǎng)長(zhǎng)期提高高。因此此,要降降低軟件件開(kāi)發(fā)過(guò)過(guò)程的風(fēng)風(fēng)險(xiǎn)、保保證軟件件產(chǎn)品質(zhì)質(zhì)量,就就必須加加強(qiáng)管理理,而軟軟件配置置管理是是企業(yè)過(guò)過(guò)程改善善和能力力提升的的基礎(chǔ)。本文中采用CVS作為軟件項(xiàng)目中進(jìn)行配置管理的工具,利用它來(lái)對(duì)項(xiàng)目文檔和源代碼實(shí)現(xiàn)有效

4、的管理。軟件項(xiàng)目監(jiān)監(jiān)控的目目的是通通過(guò)建立立對(duì)軟件件項(xiàng)目過(guò)過(guò)程的可可視性,使使項(xiàng)目管管理者在在軟件項(xiàng)項(xiàng)目性能能與軟件件計(jì)劃出出現(xiàn)偏差差時(shí)采取取有效的的糾正措措施,以以確保軟軟件過(guò)程程的質(zhì)量量滿足要要求。優(yōu)優(yōu)秀的軟軟件過(guò)程程管理平平臺(tái)是實(shí)實(shí)現(xiàn)在整個(gè)項(xiàng)項(xiàng)目生命命周期中中進(jìn)行項(xiàng)項(xiàng)目過(guò)程程監(jiān)控的的工具保保證,這這一點(diǎn)尤尤其在現(xiàn)現(xiàn)在大型型軟件協(xié)協(xié)作開(kāi)發(fā)發(fā)中至關(guān)關(guān)重要。本文中設(shè)計(jì)了一個(gè)軟件工程管理系統(tǒng),它由項(xiàng)目管理系統(tǒng)、Bug管理系統(tǒng)和用戶認(rèn)證系統(tǒng)三部分組成,利用這個(gè)系統(tǒng),開(kāi)發(fā)者和項(xiàng)目管理者可以更好地了解到整個(gè)項(xiàng)目的工作情況,對(duì)整個(gè)項(xiàng)目過(guò)程進(jìn)行有效地監(jiān)控。信息技術(shù)的的飛速發(fā)發(fā)展,使使軟件產(chǎn)產(chǎn)品應(yīng)用用到社會(huì)

5、會(huì)的各個(gè)個(gè)領(lǐng)域,軟軟件產(chǎn)品品的質(zhì)量量自然成成為人們們共同關(guān)關(guān)注的焦焦點(diǎn)。軟軟件開(kāi)發(fā)發(fā)商為了了占有市市場(chǎng),必必須把產(chǎn)產(chǎn)品質(zhì)量量作為企企業(yè)的重重要目標(biāo)標(biāo)之一,以以免在激激烈的競(jìng)競(jìng)爭(zhēng)中被被淘汰出出局。進(jìn)進(jìn)行軟件件測(cè)試是是質(zhì)量控控制的必必要步驟驟,建立立起一套套有效的的自動(dòng)測(cè)測(cè)試系統(tǒng)統(tǒng),在軟軟件的開(kāi)開(kāi)發(fā)過(guò)程程中對(duì)軟件件經(jīng)常地地進(jìn)行測(cè)測(cè)試,這這對(duì)軟件件的開(kāi)發(fā)發(fā)過(guò)程具具有非常常重要的的意義。最后,組件件化的程程序設(shè)計(jì)計(jì)方法對(duì)對(duì)于軟件件項(xiàng)目的開(kāi)開(kāi)發(fā)也有有著不少少的幫助助,采用用組件技技術(shù),可以帶帶來(lái)軟件件模塊二二進(jìn)制級(jí)級(jí)的復(fù)用用。近幾幾年來(lái),組件在在軟件開(kāi)開(kāi)發(fā)中得得到了廣廣泛的應(yīng)應(yīng)用,尤其是是J2EEE和.

6、NETT技術(shù)將將組件應(yīng)應(yīng)用于IInteerneet,進(jìn)進(jìn)行各種種事務(wù)處處理,顯示出出了強(qiáng)大大的功能能。本文文將對(duì)組件技技術(shù)和基基于組件件技術(shù)的軟軟件工程程學(xué)方法法進(jìn)行簡(jiǎn)簡(jiǎn)要介紹紹?;贑VSS工具實(shí)實(shí)現(xiàn)軟件件配置管管理對(duì)于一個(gè)軟軟件企業(yè)業(yè)或者一一個(gè)軟件件開(kāi)發(fā)團(tuán)團(tuán)隊(duì)來(lái)說(shuō)說(shuō),可能能遇到過(guò)過(guò)或者正正在被版版本難以以控制的的問(wèn)題所所困擾。一個(gè)軟軟件往往往由許多多的模塊塊組成,在在不同的的階段(基基礎(chǔ)功能能、新增增功能),很很可能為為了適應(yīng)應(yīng)不同的的環(huán)境(如如不同的的操作系系統(tǒng)),并并根據(jù)不不同客戶戶的要求求開(kāi)發(fā)了了特點(diǎn)各各異的版版本,這這些版本本之間有有大量的的共享模模塊,以以及屬于于自己的的模塊。當(dāng)

7、最后將這些模塊組裝成系統(tǒng)的某個(gè)版本時(shí),會(huì)發(fā)現(xiàn)所需模塊版本無(wú)法確定。此外,還可可能會(huì)有有團(tuán)隊(duì)中中并行開(kāi)開(kāi)發(fā)引起起的沖突突問(wèn)題。例例如:編編程人員員 A和和B共同同修改同同一個(gè)模模塊,兩兩人經(jīng)過(guò)過(guò)幾個(gè)晝晝夜的奮奮戰(zhàn)之后后,又都都回存到到服務(wù)器器上,但但到了程程序試運(yùn)運(yùn)行的時(shí)時(shí)候,才才發(fā)現(xiàn)有有一個(gè)人人的修改改被沖掉掉了,這這會(huì)造成成勞動(dòng)力力的嚴(yán)重重?fù)p失。因此,需要要在軟件件企業(yè)中中實(shí)施軟軟件配置置管理,簡(jiǎn)簡(jiǎn)稱(chēng)為SSCM(SSofttwarre CConffiguurattionn Maanaggemeent)。SSCM是是一套規(guī)規(guī)范、高高效的軟軟件開(kāi)發(fā)發(fā)基礎(chǔ)結(jié)結(jié)構(gòu),早已被被發(fā)達(dá)國(guó)國(guó)家軟件件產(chǎn)業(yè)的的發(fā)

8、展和和實(shí)踐所所證明是是管理軟軟件開(kāi)發(fā)發(fā)過(guò)程的的有效方方法。SSCM可可以系統(tǒng)統(tǒng)地管理理軟件系系統(tǒng)中的的多重版版本;全全面記載載系統(tǒng)開(kāi)開(kāi)發(fā)的歷歷史過(guò)程程;管理理和追蹤蹤開(kāi)發(fā)過(guò)過(guò)程中危危害軟件件質(zhì)量以以及影響響開(kāi)發(fā)周周期的缺缺陷和變變化;SSCM對(duì)對(duì)開(kāi)發(fā)過(guò)過(guò)程進(jìn)行行有效地地管理和和控制,完完整、明明確地記記載開(kāi)發(fā)發(fā)過(guò)程中中的歷史史變更,形形成規(guī)范范化的文文檔,不不僅使日日后的維維護(hù)和升升級(jí)得到到保證,而而且更重重要的是是,這還還會(huì)保護(hù)護(hù)寶貴的的代碼資資源,積積累軟件件財(cái)富,提提高軟件件重用率率,加快快投資回回報(bào)。軟件配置管管理作為為軟件開(kāi)開(kāi)發(fā)過(guò)程程的必要要環(huán)節(jié)和和軟件開(kāi)開(kāi)發(fā)管理理的基礎(chǔ)礎(chǔ),支持持和

9、控制制著整個(gè)個(gè)軟件生生命周期期,同時(shí)時(shí)對(duì)軟件件開(kāi)發(fā)過(guò)過(guò)程的宏宏觀管理理,即項(xiàng)項(xiàng)目管理理,也有有重要的的支持作作用。良良好的配配置管理理能使軟軟件開(kāi)發(fā)發(fā)過(guò)程有有更好的的可預(yù)測(cè)測(cè)性,使使軟件過(guò)過(guò)程具有有可重復(fù)復(fù)性,使使用戶和和主管部部門(mén)對(duì)軟軟件質(zhì)量量和開(kāi)發(fā)發(fā)小組有有更強(qiáng)的的信心。若若要有效效地實(shí)施軟軟件配置置管理,必必須要培培養(yǎng)軟件件開(kāi)發(fā)者者的管理理意識(shí),結(jié)結(jié)合開(kāi)發(fā)發(fā)組織的的實(shí)際情情況制訂訂出相應(yīng)應(yīng)的配置置管理規(guī)規(guī)范,由由開(kāi)發(fā)人人員依據(jù)據(jù)規(guī)范,通通過(guò)專(zhuān)業(yè)業(yè)化的配配置管理理工具來(lái)來(lái)實(shí)現(xiàn)。在這里,基基于CVVS工具具實(shí)現(xiàn)軟軟件配置置管理,對(duì)對(duì)文檔和和源代碼碼進(jìn)行訪訪問(wèn)和版版本控制制。CVVS(CCon

10、ccurrrentt Veersiionss Syysteem,并并行版本本系統(tǒng))是是基于 TCPP/IPP 協(xié)議議的版本本控制工工具,也也是當(dāng)前前Opeen SSourrce中中最重要要的開(kāi)發(fā)發(fā)工具之之一。CCVS是是典型的的Cliientt/Seerveer結(jié)構(gòu)構(gòu)的軟件件,它分分為服務(wù)務(wù)器端和和客戶端端兩部分分,不過(guò)過(guò)大多數(shù)數(shù)CVSS軟件中中將它們們和二為為一了。在在CVSS服務(wù)器器端包含含一個(gè)倉(cāng)倉(cāng)庫(kù)(rrepoosittoryy),用用于存放放處于版本本控制下下的所有有目錄和和所有各各種版本本的文件件,它保存存了對(duì)項(xiàng)項(xiàng)目源碼碼每一次次改動(dòng)的的記錄,和和改動(dòng)的的一些注注釋。CCVS會(huì)會(huì)完成

11、對(duì)對(duì)倉(cāng)庫(kù)的查查詢和更更新,在任何何時(shí)候,你你都可以以找到倉(cāng)倉(cāng)庫(kù)中任任何文件件的任何何版本。它它容許幾幾個(gè)人同同時(shí)工作作在同一一個(gè)文件件,在他他們提交交文件時(shí)時(shí)來(lái)合并并他們所所做的修修改。在在修改沖沖突時(shí)會(huì)會(huì)發(fā)出警警告來(lái)通通知用戶戶,是否否確定將將此文件件的更新新版本放放入倉(cāng)庫(kù)庫(kù)內(nèi),并并且是否否由某人人解決發(fā)發(fā)生的沖沖突。使用CVSS,最基基本的開(kāi)開(kāi)發(fā)流程程如下所所述:某個(gè)用戶把把他的所所有代碼碼導(dǎo)入(iimpoort)到到CVSS中,生生成一個(gè)個(gè)新的模模塊,然然后其他他人可以以導(dǎo)出(cchecckoout)源源碼樹(shù)的的一個(gè)工工作拷貝貝;每個(gè)人都工工作在自自己的本本地計(jì)算算機(jī)中,當(dāng)當(dāng)源碼樹(shù)樹(shù)發(fā)生

12、了了改變,例例如增添添了一個(gè)個(gè)新的功功能時(shí),他他們必須須更新(uupdaate)他他們的本本地拷貝貝來(lái)保持持和當(dāng)前前版本同同步。他他們也會(huì)提交交(coommiit)他他們改變變的文件件到倉(cāng)庫(kù)庫(kù)中以生成新新的軟件件版本。 在提交時(shí)出出現(xiàn)的問(wèn)問(wèn)題CVVS都會(huì)會(huì)產(chǎn)生警警告,然然后用戶戶必須仔仔細(xì)檢查查出問(wèn)題題的文件件并手工解解決沖突突。在文文件中,改改動(dòng)的部部分會(huì)在在前面以以“”顯示,并并且列出出兩個(gè)版版本的不不同之處處。由用用戶來(lái)決決定是刪刪除舊版版本還是是做一些些相應(yīng)的的修改。 WWinCCVS是是CVSS的一個(gè)個(gè)客戶端端軟件,它它運(yùn)行在在Winndowws上,用用來(lái)在WWinddowss上登錄

13、錄CVSS服務(wù)器器,然后后進(jìn)行一一些CVVS相關(guān)關(guān)的操作作與管理理。由于于當(dāng)前很很多的企企業(yè)內(nèi)部部都采用用Linnux/Uniix做為為服務(wù)器器,用WWinddowss做客戶戶端,所所以,WWinCCVS與與在Liinuxx上配置置的CVVS服務(wù)務(wù)器配合合使用將將組成強(qiáng)強(qiáng)有力的的版本控控制與管管理的系系統(tǒng)。 WWinCCVS的的一些常常用功能能包括配配置、登登錄、文文件上傳傳、文件下載載、編輯輯文件、文文件比較較、更新新本地文文件、合合并文件件、添加加文件、刪刪除文件件、創(chuàng)建建文件標(biāo)標(biāo)簽、查查看文件件狀態(tài)等等等。 其其中,WWinCCVS提提供了修修改后提提交(ccommmit)的的功能,用用

14、戶從服服務(wù)器端端拷貝文文件的某某個(gè)版本本,在本本地修改改后利用用commmitt命令即即可將最最新的文文件保存存到服務(wù)務(wù)端,并并且文件件版本號(hào)號(hào)會(huì)自動(dòng)動(dòng)加1。 當(dāng)當(dāng)一個(gè)開(kāi)開(kāi)發(fā)者試試圖commmit某某一修改改的文件件時(shí),通通常會(huì)發(fā)發(fā)生如下下兩種情情況之一一。對(duì)于此修改改的文件件,如果果CVSS在庫(kù)中中沒(méi)有檢檢測(cè)到新新的版本本,那么么直接ccommmit,就就可在庫(kù)庫(kù)中產(chǎn)生生一新的的版本;如果CVSS在庫(kù)中中檢測(cè)到到新的版版本(比比如多個(gè)個(gè)人同時(shí)時(shí)對(duì)相同同的文件件進(jìn)行修修改,在在你之前前已有人人將他的的修改ccommmit而而產(chǎn)生了了新的版版本),那那么CVVS此時(shí)時(shí)將給出出警告并并中斷ccom

15、mmit操操作。 對(duì)對(duì)于第二二種情況況,在CCVS中中斷了ccommmit操操作后,必必須調(diào)用用更新本本地文件件命令uupdaate,而而調(diào)用uupdaate命命令后,會(huì)會(huì)有兩種種情況發(fā)發(fā)生,一一種是不不帶沖突突,另外外是帶有有沖突。沖沖突的產(chǎn)產(chǎn)生是由由于多人人在修改改同一個(gè)個(gè)文件的的時(shí)候修修改了文文件中的的相同的的地方(如如某一行行)。在在CVSS中沖突突幾乎很很少發(fā)生生,而一一旦發(fā)生生了沖突突,很大大的原因因可能是是開(kāi)發(fā)小小組的開(kāi)開(kāi)發(fā)成員員之間沒(méi)沒(méi)有協(xié)調(diào)調(diào)好。另另外對(duì)于于沖突需需要強(qiáng)調(diào)調(diào)一點(diǎn),所所謂的沖沖突僅是是文本性性的,而而非邏輯輯性的。對(duì)于不帶沖沖突的情情況,在在執(zhí)行uupdaate

16、命命令將本本地版本本與服務(wù)務(wù)器上的的新版本本合并以以后,直直接執(zhí)行行commmitt命令就就會(huì)完成成提交操操作。而而對(duì)于帶帶沖突的的情況,則則需要手手動(dòng)地進(jìn)進(jìn)行修改改。例如如文件xxImaage.h在庫(kù)庫(kù)中的版版本為11.4,文文件內(nèi)容容為:whilee(1)i+;本地的xIImagge.hh版本為為1.11,假設(shè)設(shè)我們做做了如下下的修改改whilee( II 0)i+;那么在執(zhí)行行updaate命命令之后后,文件件圖標(biāo)如如圖1所所示。從從圖中可可以看出出版本號(hào)號(hào)已為庫(kù)庫(kù)中版本本號(hào),文文件狀態(tài)態(tài)為Coonfllictt,修改改時(shí)間改改為Reesulltoofmmergge,這這說(shuō)明發(fā)發(fā)生了沖沖

17、突,我我們打開(kāi)開(kāi)文件,文文件內(nèi)容容如下: xImmagee.hwhilee(i 1.4在此CVSS用強(qiáng)調(diào)調(diào)修改的的相同部部分,剩剩下的事事情就看看用戶怎怎么辦了了。在去去掉這些些標(biāo)志,并并改成所所需要的的文件之之后,就就可以進(jìn)進(jìn)行coommiit了。這這時(shí)版本本號(hào)又將將升一級(jí)級(jí)。圖1 WiinCVVS中對(duì)對(duì)于帶沖沖突的文文件顯示示 CCVS中中還提供供了分支支功能,分支是基于軟件的版本穩(wěn)定性和開(kāi)發(fā)的延續(xù)性考慮的。一個(gè)軟件產(chǎn)品會(huì)有一個(gè)比較穩(wěn)定的版本(一般是正式發(fā)布版),這個(gè)版本之前是不穩(wěn)定的,而之后要對(duì)它繼續(xù)開(kāi)發(fā),新的功能不斷加入,問(wèn)題也肯定不斷出現(xiàn),在加入新功能的版本還沒(méi)有比較穩(wěn)定之前,這時(shí)用

18、戶可能對(duì)開(kāi)發(fā)者提出要求(比如發(fā)現(xiàn)了發(fā)布版中的問(wèn)題要求修改),此時(shí)就應(yīng)該進(jìn)行分支。舉個(gè)例子來(lái)說(shuō),假定某一軟件的1.0發(fā)布版已完成,開(kāi)發(fā)者正在繼續(xù)開(kāi)發(fā)過(guò)程,計(jì)劃在2個(gè)月后發(fā)行1.1的版本。然而在不久以后,用戶開(kāi)始抱怨說(shuō)1.0版的代碼有些問(wèn)題,開(kāi)發(fā)者檢查了一下1.0的發(fā)行版,并且找到了這個(gè)錯(cuò)誤。但是,當(dāng)前處于開(kāi)發(fā)中的版本處于一個(gè)不穩(wěn)定的狀態(tài),并且在下一個(gè)月才能有希望穩(wěn)定下來(lái)。這樣就沒(méi)有辦法去發(fā)行一個(gè)最新的現(xiàn)有版本去更正問(wèn)題。這時(shí)就可以去創(chuàng)建基于這棵版本樹(shù)1.0版的分支,可以修改這棵樹(shù)的分支而不影響到主干。當(dāng)修訂完成時(shí),開(kāi)發(fā)者可以選定是否要把它同主干合并或繼續(xù)保留在這個(gè)分支里。CVS允許許你獨(dú)立出出一

19、個(gè)派派生的代代碼到一一個(gè)分離離的開(kāi)發(fā)發(fā)版本。當(dāng)當(dāng)你改變變一個(gè)分分支中的的文件時(shí)時(shí)(修改改了一些些BUGG),這這些更改改不會(huì)出出現(xiàn)在主主開(kāi)發(fā)版版本和其其它分支支版本中中,而這這些BUUG在主主干(或或叫主開(kāi)開(kāi)發(fā)版本本)中肯肯定存在在(可能能在別的的分支中中也存在在),那那么就必須在在主干中中也要對(duì)對(duì)這些BBUG進(jìn)進(jìn)行修改改,這就就增加了了額外的的開(kāi)銷(xiāo)。在在CVSS中,可可以使用用合并(mmerggingg)把這這些變更更從一個(gè)個(gè)分支移移動(dòng)到另另一個(gè)分分支(或或主開(kāi)發(fā)發(fā)版本)。綜上所述,利利用CVVS的ccommmit可可以解決決并行開(kāi)開(kāi)發(fā)中的的沖突問(wèn)問(wèn)題,實(shí)實(shí)現(xiàn)有效效的訪問(wèn)問(wèn)控制;利用CCVS

20、中中的分支支和合并并可以實(shí)實(shí)現(xiàn)對(duì)軟軟件靈活活有效的的版本控控制。CCVS為為軟件開(kāi)開(kāi)發(fā)的配配置管理理提供了了一個(gè)可可靠的工工具。用軟件工程程管理系系統(tǒng)實(shí)現(xiàn)現(xiàn)軟件項(xiàng)項(xiàng)目過(guò)程程管理在軟件項(xiàng)目目的開(kāi)發(fā)發(fā)過(guò)程中中,會(huì)存存在資源源變化頻頻繁的問(wèn)問(wèn)題。某某些開(kāi)發(fā)發(fā)人員在在軟件項(xiàng)項(xiàng)目開(kāi)發(fā)發(fā)的過(guò)程程中離去去,由于于他負(fù)責(zé)責(zé)使用或或維護(hù)的的文檔或或者資源源不完善善,使得得后續(xù)人人員接手手他的工工作時(shí)困困難重重重,造成成開(kāi)發(fā)過(guò)過(guò)程的停停滯;由于沒(méi)沒(méi)有控制制好軟件件變化過(guò)過(guò)程,消消耗了大大量人力力物力,導(dǎo)導(dǎo)致項(xiàng)目目嚴(yán)重超超期、預(yù)預(yù)算超支支;項(xiàng)目目經(jīng)過(guò)了了幾次大大改動(dòng),幾幾乎記不不起原來(lái)來(lái)是什么么樣子了了,或者說(shuō)說(shuō),

21、根據(jù)據(jù)用戶提提出的多多次變更更要求更更改后的的成型軟軟件,與與用戶的的需要相相距甚遠(yuǎn)遠(yuǎn);軟件變變化未經(jīng)經(jīng)控制進(jìn)進(jìn)入開(kāi)發(fā)發(fā)或維護(hù)護(hù)活動(dòng)之之中,引引入更嚴(yán)嚴(yán)重的問(wèn)問(wèn)題,例如某某程序員員未經(jīng)正正常的軟軟件變化化申請(qǐng),自自行修改改軟件中中的某一一錯(cuò)誤,雖雖然局部部錯(cuò)誤是是改正了了,但由由于沒(méi)有有考慮到到局部改改動(dòng)對(duì)全全局的影影響,使使得整個(gè)個(gè)系統(tǒng)不不能正常常工作。為了減小資資源變化化頻繁問(wèn)問(wèn)題對(duì)軟軟件項(xiàng)目目的影響響,更有有效地控控制軟件件質(zhì)量,需需要對(duì)軟軟件項(xiàng)目目過(guò)程進(jìn)進(jìn)行監(jiān)控控。這里里設(shè)計(jì)了了一套軟軟件工程程管理系系統(tǒng),它它主要針針對(duì)于軟軟件生成成過(guò)程的的管理和和軟件質(zhì)質(zhì)量控制制。這個(gè)個(gè)系統(tǒng)包包括以

22、下下三個(gè)部部分:任任務(wù)管理理系統(tǒng)、BBug管管理系統(tǒng)統(tǒng)和用戶戶認(rèn)證系系統(tǒng)。這這個(gè)系統(tǒng)統(tǒng)應(yīng)當(dāng)具有有Broowseer/SServver的的結(jié)構(gòu),用用htmml、JJSP和和SQLL Seerveer實(shí)現(xiàn)現(xiàn)。3.1任務(wù)務(wù)管理系系統(tǒng) 任任務(wù)管理理系統(tǒng)主主要用于于軟件生生產(chǎn)的過(guò)過(guò)程管理理,對(duì)軟軟件生產(chǎn)產(chǎn)進(jìn)行模模塊化管管理,并并將軟件件產(chǎn)品生生產(chǎn)的工工作細(xì)化化為不同同的任務(wù)務(wù),比如如代碼實(shí)實(shí)現(xiàn)、程程序測(cè)試試和文檔檔寫(xiě)作等等;這樣樣的系統(tǒng)統(tǒng)便于細(xì)細(xì)化工作作,明確確工作目目的,同同時(shí)也便便于管理理者對(duì)生生產(chǎn)過(guò)程程進(jìn)行管管理,能能夠有效效地把握產(chǎn)產(chǎn)品的開(kāi)開(kāi)發(fā)進(jìn)度度。 該該系統(tǒng)從從軟件生生產(chǎn)的特特點(diǎn)出發(fā)發(fā),針對(duì)

23、對(duì)軟件生生產(chǎn)的特特點(diǎn)進(jìn)行行設(shè)計(jì)。在在該系統(tǒng)統(tǒng)中,最最大管理理單元是是項(xiàng)目,最最小管理理單元是是任務(wù),在在項(xiàng)目和和任務(wù)之之間有模模塊,這這樣的劃劃分能夠夠使項(xiàng)目目執(zhí)行更更加有效效。在任任務(wù)之下下有所有有的具體體工作記記錄,包包括Chheckkin(工工作提交交)、BBugFFix(BBug修修復(fù))、CCommmentt(相關(guān)關(guān)注釋和和評(píng)論)等。通過(guò)項(xiàng)目能從整體上把握項(xiàng)目的執(zhí)行情況,通過(guò)模塊劃分明確產(chǎn)品的結(jié)構(gòu)和分工,通過(guò)任務(wù)能明確具體工作的目標(biāo),便于工作開(kāi)展,通過(guò)記錄反映具體的工作。這種結(jié)構(gòu)也便于項(xiàng)目的逐級(jí)管理,即項(xiàng)目有項(xiàng)目負(fù)責(zé)人,模塊有模塊負(fù)責(zé)人,任務(wù)有任務(wù)負(fù)責(zé)人,實(shí)行單人負(fù)責(zé)的策略,管理范圍由

24、大到小、由整體到細(xì)節(jié);并且在項(xiàng)目執(zhí)行過(guò)程中可以隨時(shí)對(duì)項(xiàng)目、模塊、任務(wù)進(jìn)行調(diào)整。需要注意的是該系統(tǒng)為每個(gè)項(xiàng)目、模塊都會(huì)生成一個(gè)相應(yīng)的管理任務(wù)(項(xiàng)目管理的任務(wù)、模塊管理的任務(wù)),強(qiáng)調(diào)了管理工作在軟件開(kāi)發(fā)過(guò)程中的重要性;在任務(wù)管理系統(tǒng)中明確地提出管理任務(wù),便于管理人員在項(xiàng)目執(zhí)行過(guò)程中進(jìn)行管理。 另另外,在在任務(wù)管管理系統(tǒng)統(tǒng)中包含含了一個(gè)個(gè)周報(bào)報(bào)告子子系統(tǒng),工工作人員員可以在在周報(bào)告告中提交交每一周周的工作作情況,工工作計(jì)劃劃等,并并在系統(tǒng)統(tǒng)中做記記錄,方方便工作作者記錄錄和匯報(bào)報(bào)自己的的工作情情況和下下一階段段的工作作安排;并提供供周報(bào)告告查詢功功能,同同時(shí)系統(tǒng)統(tǒng)還可以以對(duì)各個(gè)個(gè)周報(bào)告告進(jìn)行匯匯總,

25、以以便管理理者查閱閱。這個(gè)系統(tǒng)中中主要實(shí)實(shí)現(xiàn)的功功能包括括:創(chuàng)建建項(xiàng)目、查查詢項(xiàng)目目、創(chuàng)建建模塊、查查詢模塊塊、創(chuàng)建建任務(wù)、查查詢?nèi)蝿?wù)務(wù)、提交交多種記記錄、查查詢記錄錄、提交交工作報(bào)報(bào)告以及及系統(tǒng)管管理等。任務(wù)管理系系統(tǒng)用于于記錄、跟跟蹤和管管理項(xiàng)目目開(kāi)發(fā)的的每個(gè)過(guò)過(guò)程、報(bào)報(bào)告工作作的進(jìn)展展情況和和幫助公公司的管管理和決決策人員員對(duì)資源源進(jìn)行合合理分配配。通過(guò)過(guò)管理系系統(tǒng)對(duì)軟軟件工程程項(xiàng)目的的管理,可可以避免免軟件公公司因?yàn)闉槿藛T的的流動(dòng)對(duì)對(duì)公司造造成的巨巨大損失失。同時(shí)時(shí)因?yàn)楣芄芾硐到y(tǒng)統(tǒng)記錄了了項(xiàng)目的的詳細(xì)過(guò)過(guò)程信息息,也為為項(xiàng)目以以后的升升級(jí)和完完善提供供了寶貴貴的可供供查詢的的第一手手資

26、料。此系統(tǒng)應(yīng)該該具有如如下的特特點(diǎn):項(xiàng)目分級(jí)管管理:將將一個(gè)項(xiàng)項(xiàng)目分解解為小的的模塊,再再將模塊塊分解為為具體的的任務(wù),通通過(guò)逐層層細(xì)化,將將工作落落實(shí)到個(gè)個(gè)人;以任務(wù)為中中心:整整個(gè)系統(tǒng)統(tǒng)的最終終管理歸歸結(jié)為人人與任務(wù)務(wù)的一一一對(duì)應(yīng),明明確責(zé)任任;任務(wù)分類(lèi):按照任任務(wù)的性性質(zhì)進(jìn)行行分類(lèi),同同一個(gè)任任務(wù)又可可以通過(guò)過(guò)從管理理任務(wù)、開(kāi)開(kāi)發(fā)任務(wù)務(wù)、測(cè)試試任務(wù)到到文檔任任務(wù)進(jìn)行行不同的的任務(wù)分分工;記錄細(xì)節(jié):將與整整個(gè)項(xiàng)目目開(kāi)發(fā)中中相關(guān)的的每一條條信息記記錄到系系統(tǒng)中,產(chǎn)產(chǎn)生一個(gè)個(gè)包括完完成項(xiàng)目目過(guò)程和和記錄的的報(bào)告,這這就是一一份可供供查詢的的,記錄錄整個(gè)開(kāi)開(kāi)發(fā)過(guò)程程的原始始資料; 工作匯總:通過(guò)

27、周周報(bào)告子子系統(tǒng)及及時(shí)反映映所有人人員的工工作進(jìn)展展和完成成情況,以以便對(duì)人人員進(jìn)行行評(píng)估;項(xiàng)目控制:可以實(shí)實(shí)時(shí)了解解整個(gè)項(xiàng)項(xiàng)目的完完成情況況和所有有人員當(dāng)當(dāng)前負(fù)責(zé)責(zé)的具體體工作; Emaill自動(dòng)發(fā)發(fā)送:項(xiàng)項(xiàng)目系統(tǒng)統(tǒng)中任何何一個(gè)添添加和更更改操作作都會(huì)同同時(shí)通過(guò)過(guò)Emaail告告知相關(guān)關(guān)人員。3.2 BBug管管理系統(tǒng)統(tǒng) BBug管管理系統(tǒng)統(tǒng)主要用用于對(duì)軟軟件的BBug進(jìn)進(jìn)行管理理,是軟軟件測(cè)試試和軟件件開(kāi)發(fā)的的工程管管理工具具,這對(duì)對(duì)提高軟軟件產(chǎn)品品的質(zhì)量量至關(guān)重重要。BBug管管理系統(tǒng)統(tǒng)能實(shí)時(shí)時(shí)反應(yīng)出出Bugg的出現(xiàn)現(xiàn)、確認(rèn)認(rèn)、修復(fù)復(fù)、驗(yàn)證證等各個(gè)個(gè)階段的的情況。軟件產(chǎn)品中中存在BBug

28、是是正常情情況,沒(méi)沒(méi)有Buug的軟軟件是不不存在的的。軟件件的規(guī)模模越大,BBug出出現(xiàn)的機(jī)機(jī)會(huì)就越越大,BBug的的數(shù)量也也就越多多,如果果開(kāi)發(fā)人人員難以以對(duì)付這這些成百百上千的的Bugg,那么么軟件的的質(zhì)量就就很難得得到保證證。為了了有效地地管理BBug和和修復(fù)BBug,需要一一個(gè)強(qiáng)大大的工具具對(duì)軟件件中的BBug進(jìn)進(jìn)行科學(xué)學(xué)有效的的管理。Bug管理理系統(tǒng)是是存儲(chǔ)、處處理Buug的工工具,也也是開(kāi)發(fā)發(fā)人員,測(cè)測(cè)試人員員交流討討論的場(chǎng)場(chǎng)所,同同時(shí)也是是項(xiàng)目管管理、工工作評(píng)定定的重要要工具。BBug管管理系統(tǒng)統(tǒng)主要用用于提交交Bugg,并記記錄每個(gè)個(gè)Bugg的變化化過(guò)程。每每一個(gè)BBug都都有

29、負(fù)責(zé)責(zé)人,或或者可以以被指定定一個(gè)負(fù)負(fù)責(zé)人對(duì)對(duì)其進(jìn)行行修復(fù),這這樣有利利于及時(shí)時(shí)地處理BBug;如果軟軟件產(chǎn)品品的每一一個(gè)Buug都嚴(yán)嚴(yán)格地利用BBug管管理系統(tǒng)統(tǒng)管理,隨隨著系統(tǒng)統(tǒng)中的BBug一一個(gè)一個(gè)個(gè)被清除除,產(chǎn)品品也將一一步一步步走向健健壯。Bug管理理系統(tǒng)應(yīng)應(yīng)具有如如下的特特點(diǎn):Bug的流流程控制制:對(duì)一一個(gè)軟件件中的BBug進(jìn)進(jìn)行從提提交、確確認(rèn)、修修復(fù)、測(cè)測(cè)試到最最后關(guān)閉閉整個(gè)過(guò)過(guò)程的管管理;Emaill自動(dòng)發(fā)發(fā)送:BBug管管理系統(tǒng)統(tǒng)中任何何一個(gè)添添加和更更改操作作都要同時(shí)通通過(guò)Emmaill告知BBug的的負(fù)責(zé)人人及相關(guān)關(guān)人員,提提醒大家家對(duì)此BBug的的關(guān)注; 定期Bugg

30、匯總:根據(jù)條條件產(chǎn)生生統(tǒng)計(jì)報(bào)報(bào)表,并并可以通通過(guò)圖表表的方式式來(lái)描述述在一個(gè)個(gè)時(shí)期內(nèi)內(nèi),Buug的增增加和修修復(fù)情況況,這為產(chǎn)產(chǎn)品的開(kāi)開(kāi)發(fā)和控控制提供供了依據(jù); Bug提醒醒:將BBug管管理系統(tǒng)統(tǒng)中的BBug按按照級(jí)別別進(jìn)行劃劃分,定定期發(fā)送送給每一一個(gè)Buug的所所有者和和它的部部門(mén)負(fù)責(zé)責(zé)人,提提醒Buug的所所有者及及時(shí)修復(fù)復(fù)Bugg。 3.3用戶戶認(rèn)證系系統(tǒng)用戶認(rèn)證系系統(tǒng)用于于對(duì)整個(gè)個(gè)系統(tǒng)中中的用戶戶進(jìn)行統(tǒng)統(tǒng)一管理理,包括括注冊(cè)用用戶、為為用戶發(fā)發(fā)放其他他系統(tǒng)使使用許可可等功能能;還可可以存放放員工的的其他信信息,比比如簡(jiǎn)歷歷等等。使用用戶認(rèn)認(rèn)證系統(tǒng)統(tǒng),可以以管理整整個(gè)系統(tǒng)統(tǒng)中的用用戶

31、,即即用戶只只需要注注冊(cè)一次次,在獲獲得其他他系統(tǒng)的的使用許許可以后后,就可可以使用用其他系系統(tǒng)(例例如CVVS服務(wù)務(wù)器登錄錄權(quán)限、項(xiàng)項(xiàng)目管理理系統(tǒng)和和Bugg管理系系統(tǒng)),不不必為每每一個(gè)系系統(tǒng)都注注冊(cè)用戶戶。這樣樣使得用用戶管理理更加集集中、方方便。用戶認(rèn)證系系統(tǒng)主要要包括用用戶注冊(cè)冊(cè)、用戶戶授權(quán)、組組管理、部部門(mén)管理理、系統(tǒng)統(tǒng)管理等等功能。進(jìn)行有效的的軟件測(cè)測(cè)試工作作軟件測(cè)試的的基本過(guò)過(guò)程是通通過(guò)對(duì)軟軟件功能能的實(shí)際際使用,觀觀察使用用的實(shí)際際效果,然然后把實(shí)實(shí)際結(jié)果果和期望望值進(jìn)行行比較,找找出它們們之間的的差距。整整個(gè)的軟軟件測(cè)試試過(guò)程可可以大致致分為兩兩部分:設(shè)立期望值值。軟件件應(yīng)

32、該具具備的功功能,實(shí)實(shí)際上在在編程之之前就確確定好了了。軟件件設(shè)計(jì)可可以理解解為設(shè)立立軟件的的期望值值。對(duì)于于測(cè)試人人員來(lái)說(shuō)說(shuō),根據(jù)據(jù)軟件設(shè)設(shè)計(jì)文檔檔和用戶戶手冊(cè),可可以整理理出具體體的,細(xì)細(xì)化的期期望值。這這些期望望值是評(píng)評(píng)估軟件件質(zhì)量的的標(biāo)準(zhǔn)、依依據(jù)。這這也附帶帶說(shuō)明了了文檔的的重要性性。獲得實(shí)測(cè)值值。通過(guò)過(guò)在特定定的條件件下運(yùn)行行軟件,采采集運(yùn)行行結(jié)果。然然后把結(jié)結(jié)果和期期望值進(jìn)進(jìn)行比較較,產(chǎn)生生測(cè)試報(bào)報(bào)告。通通常講的的軟件測(cè)測(cè)試主要要是指這這部分的的工作。對(duì)于大型軟軟件項(xiàng)目目來(lái)說(shuō),其其軟件測(cè)測(cè)試項(xiàng)目目包含的的具體任任務(wù)大致致有以下下這幾項(xiàng)項(xiàng)。建立自動(dòng)測(cè)測(cè)試運(yùn)行行體系對(duì)于一個(gè)稍稍具規(guī)模模

33、的軟件件,自動(dòng)動(dòng)運(yùn)行測(cè)測(cè)試程序序是必不不可少的的。因?yàn)闉闇y(cè)試程程序的代代碼量遠(yuǎn)遠(yuǎn)遠(yuǎn)大于于被測(cè)程程序的代代碼量,不不可能采采用人工工運(yùn)行測(cè)測(cè)試,比比較結(jié)果果。自動(dòng)動(dòng)測(cè)試體體系的主主要功能能是運(yùn)行行測(cè)試程程序,收收集運(yùn)行行結(jié)果,把把結(jié)果和和標(biāo)準(zhǔn)答答案比較較,并最最后產(chǎn)生生測(cè)試的的結(jié)果和和bugg報(bào)告。設(shè)計(jì)測(cè)試方方案首先要建立立測(cè)試環(huán)環(huán)境。有有些時(shí)候候建立測(cè)測(cè)試環(huán)境境是一件件很困難難的事情情,例如網(wǎng)網(wǎng)絡(luò)環(huán)境境,和某某些極限限環(huán)境,例例如測(cè)硬硬盤(pán)溢出出時(shí)的處處理情況況,設(shè)置線線程之間間的競(jìng)爭(zhēng)爭(zhēng)條件,等等等。在設(shè)計(jì)測(cè)試試時(shí),一一般是根根據(jù)“假定環(huán)環(huán)境正確確”的原則則。要測(cè)測(cè)一個(gè)程程序,需需要假定定測(cè)試程

34、程序中的的輔助部部分是正正確的。例例如測(cè)文文件reead()時(shí),假假定oppen(),cclosse()都是好好的。否否則的話話在測(cè)試試程序中中對(duì)于oopenn()和和cloose()的結(jié)結(jié)果要檢檢查,要要處理文文件打開(kāi)開(kāi)有誤的的各種意意外情況況,使得得測(cè)試程程序非常常臃腫,讀讀起來(lái)使使人不得得要領(lǐng)。設(shè)計(jì)測(cè)試方方案時(shí)還還需要考考慮結(jié)果果的測(cè)量量方法。一一般情況況下收集集程序的的輸出結(jié)結(jié)果就夠夠了,這這樣做也也比較容容易。但但是有些些測(cè)試的的結(jié)果是是很難測(cè)測(cè)量的,例例如要測(cè)測(cè)一個(gè)程程序占用用內(nèi)存大大小的峰峰值。設(shè)計(jì)測(cè)試情情況這是測(cè)試工工作的主主要部分分。一般般來(lái)說(shuō),一一個(gè)軟件件不可能能被“徹底”

35、測(cè)試。只只能是盡盡量涵蓋蓋常用的的功能和和運(yùn)行條條件。常用的測(cè)試試情況設(shè)設(shè)計(jì)思路路為:首首先考慮慮正常條條件下正正常工作作,其次次是錯(cuò)誤誤條件下下正確處處理,包包括給出出相應(yīng)的的錯(cuò)誤碼碼和錯(cuò)誤誤信息。但但是,考考慮到軟軟件的效效率和復(fù)復(fù)雜性,并并不是每每一種錯(cuò)錯(cuò)誤都必必須處理理。所以以軟件手手冊(cè)里可可以說(shuō)明明在某些些輸入條條件下,結(jié)結(jié)果不可可預(yù)見(jiàn),或或者引起起軟件崩崩潰。其其中,由由于邊界界是軟件件容易出出錯(cuò)的地地方,所所以要特特別注意意進(jìn)行邊邊界測(cè)試試。例如如整數(shù)中中的0和和655535,指指針中的的空指針針和指到到無(wú)效地地址的指指針等。以以上所述述為對(duì)程程序進(jìn)行行正確性性測(cè)試,通通常還要要

36、進(jìn)行性性能測(cè)試試,例如如系統(tǒng)的的響應(yīng)時(shí)時(shí)間,容容量等等等。極限限測(cè)試也也很重要要,例如如,系統(tǒng)統(tǒng)內(nèi)最多多可創(chuàng)建建多少個(gè)個(gè)進(jìn)程,應(yīng)應(yīng)用程序序最多可可以使用用的內(nèi)存存等等。編寫(xiě)測(cè)試程程序設(shè)計(jì)了測(cè)試試情況之之后,就就可以編編寫(xiě)測(cè)試試程序。這這是測(cè)試試程序庫(kù)庫(kù)的主要要來(lái)源。需需要一支支測(cè)試隊(duì)隊(duì)伍,系系統(tǒng)、全全面、深深入地編編寫(xiě)測(cè)試試程序。測(cè)試的運(yùn)行行運(yùn)行測(cè)試的的方法可可以分為為人工運(yùn)運(yùn)行和自自動(dòng)運(yùn)行行兩種。在不少情況況下人工工測(cè)試是是不可避避免的。例例如收集集標(biāo)準(zhǔn)答答案時(shí),要要人工檢檢查是否否符合預(yù)預(yù)期的值值,如果果符合預(yù)預(yù)期值,就就保存起起來(lái)作標(biāo)標(biāo)準(zhǔn)答案案。有些程序有有特殊的的運(yùn)行環(huán)環(huán)境,例例如人機(jī)

37、機(jī)交互方方式,需需要操作作某些外外部設(shè)備備。最常常見(jiàn)的是是有圖形形界面的的程序,很很難進(jìn)行行自動(dòng)測(cè)測(cè)試。真正有用的的是自動(dòng)動(dòng)運(yùn)行。測(cè)測(cè)試程序序通常都都和daailyybuuildd相連,例例如每天天buiild兩兩遍,從從源程序序開(kāi)始bbuilld,然然后運(yùn)行行程序獲獲得報(bào)告告,這等于監(jiān)監(jiān)護(hù)源程程序,因因此只有有自動(dòng)運(yùn)運(yùn)行才能能滿足測(cè)測(cè)試周期期短的要要求。還有的時(shí)候候需要子子集運(yùn)行行,測(cè)試試程序特特別多的的時(shí)候有有可能運(yùn)運(yùn)行較長(zhǎng)長(zhǎng)時(shí)間,在在某些情情況下每每次只能能運(yùn)行一一個(gè)子集集。測(cè)試的結(jié)果果和Buug報(bào)告告最常見(jiàn)的測(cè)測(cè)試結(jié)果果是測(cè)試試報(bào)告:列出成成功,失失敗統(tǒng)計(jì)計(jì)報(bào)表,失失敗詳情情,輸入入情

38、況,出出錯(cuò)現(xiàn)象象等。有時(shí)候根據(jù)據(jù)測(cè)試結(jié)結(jié)果要立立即采取取行動(dòng)。緊緊急情況況要緊急急搶修,關(guān)關(guān)閉源程程序樹(shù),停停止改動(dòng)動(dòng)。解決決兩個(gè)糾糾纏在一一起的問(wèn)問(wèn)題比單單獨(dú)解決決它們更更難,因?yàn)槟悄菢訉o(wú)無(wú)法發(fā)現(xiàn)現(xiàn)新問(wèn)題題。所以以要避免免在一個(gè)個(gè)有問(wèn)題題的系統(tǒng)統(tǒng)上進(jìn)行行改動(dòng)和和開(kāi)發(fā)新新程序。測(cè)試隊(duì)伍擔(dān)擔(dān)負(fù)著質(zhì)質(zhì)量糾察察隊(duì)的角角色,測(cè)測(cè)試中發(fā)發(fā)現(xiàn)新問(wèn)問(wèn)題時(shí),要要登錄bbug,填填寫(xiě)buug報(bào)告告,并要要跟蹤此此bugg的解決決情況。測(cè)測(cè)試人員員要對(duì)最最終發(fā)布布產(chǎn)品的的質(zhì)量負(fù)負(fù)責(zé)。組件技術(shù)以以及基于于組件技技術(shù)的軟軟件工程程學(xué)方法法按照組件化化程序設(shè)設(shè)計(jì)的思思想,復(fù)復(fù)雜的應(yīng)應(yīng)用程序序被設(shè)計(jì)計(jì)成一些些小的、功功

39、能單一一的組件件模塊,這這些組件件模塊可可以運(yùn)行行在同一一臺(tái)機(jī)器器上,也也可以運(yùn)運(yùn)行在不不同的機(jī)機(jī)器上,甚甚至可以以運(yùn)行在在跨越太太平洋的的兩臺(tái)機(jī)機(jī)器上。在在理想的的情況下下,每臺(tái)臺(tái)機(jī)器的的運(yùn)行環(huán)環(huán)境可以以不同,甚甚至可以以是不同同的操作作系統(tǒng)。為為了實(shí)現(xiàn)現(xiàn)這樣的的應(yīng)用軟軟件,組組件程序序和組件件程序之之間需要要一些極極為細(xì)致致的規(guī)范范,只有有組件程程序遵守守了這些些共同的的規(guī)范,軟軟件系統(tǒng)統(tǒng)才能正正常運(yùn)行行。為此此OMGG(Obbjecct MManaagemmentt Grroupp,對(duì)象象管理組組織)和和Miccrossoftt分別提提出了CCORBBA(CCommmon Objject

40、t Reequeest Breeakeer AArchhiteectuure,公公共對(duì)象象請(qǐng)求中中介體系系結(jié)構(gòu))和和COMM(Coompoonennt OObjeect Moddel,組組件對(duì)象象模型)標(biāo)標(biāo)準(zhǔn),目目前COORBAA模型主主要應(yīng)用用于UNNIX操操作系統(tǒng)統(tǒng)平臺(tái)上上,而CCOM則則主要應(yīng)應(yīng)用于MMicrrosooft Winndowws操作作系統(tǒng)平平臺(tái)上。隨著Intternnet時(shí)時(shí)代的到到來(lái),CCOM技技術(shù)已經(jīng)經(jīng)應(yīng)用于于越來(lái)越越多的分分布式系系統(tǒng)當(dāng)中中。COMM規(guī)范具具有如下下的一些些特點(diǎn)。語(yǔ)言無(wú)關(guān)性性:這是指指COMM規(guī)范的的定義不不依賴(lài)于于特定的的語(yǔ)言,編編寫(xiě)組件件對(duì)象所所使

41、用的的語(yǔ)言與與編寫(xiě)客客戶程序序使用的的語(yǔ)言可可以不同同,只要要它們都都能夠生生成符合合COMM規(guī)范的的二進(jìn)制制代碼;進(jìn)程透明特特性:CCOM所所提供的的服務(wù)組組件對(duì)象象在實(shí)現(xiàn)現(xiàn)時(shí)有進(jìn)進(jìn)程內(nèi)對(duì)對(duì)象和進(jìn)進(jìn)程外對(duì)對(duì)象兩種種進(jìn)程模模型,如如果是進(jìn)進(jìn)程內(nèi)對(duì)對(duì)象,則則組件在在客戶進(jìn)進(jìn)程空間間運(yùn)行,如如果是進(jìn)進(jìn)程外對(duì)對(duì)象,則則組件運(yùn)運(yùn)行在同同一機(jī)器器上的另另一個(gè)進(jìn)進(jìn)程空間間或者在在遠(yuǎn)程機(jī)機(jī)器的進(jìn)進(jìn)程空間間中,但但這種區(qū)區(qū)別對(duì)于于客戶來(lái)來(lái)說(shuō)是透透明的,這這就是CCOM的的透明特特性;可重用性:COMM的可重重用性是是建立在在二進(jìn)制制代碼級(jí)級(jí)的,與與C+中所說(shuō)說(shuō)的可重重用性不不同,它它使復(fù)雜雜的系統(tǒng)統(tǒng)簡(jiǎn)化為為一

42、些簡(jiǎn)簡(jiǎn)單的對(duì)對(duì)象模塊塊;對(duì)于使用組組件的集集成開(kāi)發(fā)發(fā)者而言言,一個(gè)組組件就是是一個(gè)接接口集,只有通通過(guò)接口口才能與與組件進(jìn)進(jìn)行通信信;而對(duì)于于組件來(lái)來(lái)說(shuō),接口是是包含一一個(gè)函數(shù)數(shù)指針數(shù)數(shù)組的內(nèi)內(nèi)存結(jié)構(gòu)構(gòu),每個(gè)數(shù)數(shù)組元素素的內(nèi)容容是一個(gè)個(gè)由組件件所實(shí)現(xiàn)現(xiàn)的函數(shù)數(shù)地址。在在一個(gè)應(yīng)應(yīng)用程序序中,起決定定作用的的是組件件的接口口而不是是組件本本身。只只要組件件的接口口保持不不變,組件可可以任意意升級(jí)或或更換,而應(yīng)用用程序不不必做任任何修改改。接口口將特定定的行為為封裝起起來(lái),一方面面使客戶戶可以用用同樣的的方式處處理不同同組件,一方面面同一組組件可以以在不同同的應(yīng)用用中使用用。這些些特點(diǎn)決決定了組組件

43、必然然有很好好的重用用性。以以COMM為例,其重用性主要表現(xiàn)在以下的使用場(chǎng)合:COM 組組件并不不是專(zhuān)為為一種WWinddowss平臺(tái)而而設(shè)計(jì)的的,同一CCOM組組件可以以在Wiin955、Wiin988、Woorksstattionn及NTT上使用用。組件件既可以以被嵌入入動(dòng)態(tài)WWeb頁(yè)頁(yè)面,又可以以在LAAN或桌桌面環(huán)境境的VBB和VCC等應(yīng)用用中使用用;COM 組組件之間間是彼此此獨(dú)立的的。當(dāng)應(yīng)應(yīng)用需求求發(fā)生變變更時(shí),可能需需要更換換中間層層的個(gè)別別COMM組件,但這并并不會(huì)影影響其他他組件的的繼續(xù)使使用。COM 組組件具有有若干對(duì)對(duì)外接口口(屬性性和方法法),相相當(dāng)于芯芯片的“管腳”。

44、根據(jù)據(jù)不同的的應(yīng)用需需求,可可以有選選擇地使使用不同同的管腳腳。即使使某些管管腳被“廢棄”,COOM組件件本身仍仍然可繼繼續(xù)使用用。同一COMM組件可可以在不不同的應(yīng)應(yīng)用環(huán)境境中重復(fù)復(fù)使用。CCOM組組件不一一定是為為專(zhuān)門(mén)的的系統(tǒng)而而設(shè)計(jì),可以有有較寬的的應(yīng)用領(lǐng)領(lǐng)域,不不會(huì)因?yàn)闉槟骋幌迪到y(tǒng)的“過(guò)時(shí)”而被“廢棄”。組件技術(shù)以以其較高高的可重重用性向向人們展展示了一一種嶄新新的軟件件設(shè)計(jì)思思路,它它對(duì)軟件件項(xiàng)目的的開(kāi)發(fā)很很有幫助助,可是是使得軟軟件具有有良好的的模塊化化特性。與傳統(tǒng)的軟軟件開(kāi)發(fā)發(fā)不同,在基于于組件對(duì)對(duì)象的軟軟件工程程中應(yīng)著著重進(jìn)行行組件的的規(guī)劃、設(shè)設(shè)計(jì)與開(kāi)開(kāi)發(fā)。如如何將傳傳統(tǒng)的軟軟

45、件工程程學(xué)和組組件對(duì)象象合理地地結(jié)合在在一起,至今還還處在發(fā)發(fā)展和完完善階段段,達(dá)成共共識(shí)仍需需時(shí)日。一一般而言言,在軟件件開(kāi)發(fā)的的過(guò)程中中,首先先應(yīng)逐步步深入對(duì)對(duì)組件進(jìn)進(jìn)行功能能分析、規(guī)規(guī)劃和對(duì)對(duì)外接口口的設(shè)計(jì)計(jì),進(jìn)而落落實(shí)內(nèi)部部細(xì)節(jié)的的實(shí)現(xiàn),最終完完成組件件的部署署與管理理。以COM為為例,一般來(lái)來(lái)說(shuō),COMM組件的的規(guī)劃應(yīng)應(yīng)遵循以以下原則則:用戶對(duì)于數(shù)數(shù)據(jù)庫(kù)的的請(qǐng)求應(yīng)應(yīng)通過(guò)CCOM組組件實(shí)現(xiàn)現(xiàn)。將訪訪問(wèn)權(quán)限限授予 COMM組件,保證了了訪問(wèn)數(shù)數(shù)據(jù)庫(kù)的的安全性性,把對(duì)每每個(gè)用戶戶的連接接變成和和COMM 組件件的連接接,以避避免數(shù)據(jù)據(jù)庫(kù)資源源的浪費(fèi)費(fèi)和崩潰潰的危險(xiǎn)險(xiǎn)。組件粒度不不宜過(guò)大大,

46、盡量讓讓每一個(gè)個(gè)COMM組件實(shí)實(shí)現(xiàn)某一一個(gè)或一一類(lèi)相似似的應(yīng)用用請(qǐng)求,而不要要追求其其功能的的過(guò)分繁繁多。保保證每個(gè)個(gè)組件對(duì)對(duì)象完成成的商務(wù)務(wù)邏輯功功能相對(duì)對(duì)單一,有助于于重用機(jī)機(jī)制的發(fā)發(fā)揮。COM組件件與用戶戶的接口口應(yīng)盡量量簡(jiǎn)單、友友好。COM組件件如果是是可視的的(AcctivveX控控件),則只只能有一一個(gè)可視視化界面面。與傳統(tǒng)的軟軟件工程程學(xué)有所所不同,基于組組件對(duì)象象的應(yīng)用用系統(tǒng)是是由組件件實(shí)現(xiàn)特特定應(yīng)用用處理和和商務(wù)邏邏輯計(jì)算算任務(wù),而其具具體實(shí)現(xiàn)現(xiàn)對(duì)集成成開(kāi)發(fā)人人員來(lái)說(shuō)說(shuō)是封裝裝好的,他們不不必耗費(fèi)費(fèi)精力去去關(guān)心實(shí)實(shí)現(xiàn)細(xì)節(jié)節(jié),只需規(guī)規(guī)定應(yīng)用用系統(tǒng)與與組件的的接口,指明在在何時(shí)、

47、何何處調(diào)用用哪個(gè)組組件即可可。組件的接口口在整個(gè)個(gè)應(yīng)用系系統(tǒng)中起起決定性性作用。接接口設(shè)計(jì)計(jì)不合理理的話,不不僅影響響組件本本身的可可重用性性,并且將將影響整整個(gè)應(yīng)用用系統(tǒng)的的升級(jí),縮短系系統(tǒng)的生生命周期期。所以以確定組組件的接接口要經(jīng)經(jīng)過(guò)深思思熟慮,要要使它能能支持各各種不同同的應(yīng)用用。接口應(yīng)具有有較高的的通用性性,以提高高整個(gè)應(yīng)應(yīng)用系統(tǒng)統(tǒng)的復(fù)用用能力,同時(shí)還還要兼顧顧簡(jiǎn)單和和實(shí)用性性。舉例例說(shuō),如果需需要定制制一個(gè)組組件訪問(wèn)問(wèn)特定的的數(shù)據(jù)庫(kù)庫(kù)并將結(jié)結(jié)果返回回給用戶戶。若只只是為該該系統(tǒng)設(shè)設(shè)計(jì),可可以將庫(kù)庫(kù)名、表表名、訪訪庫(kù)語(yǔ)句句全部封封裝在組組件內(nèi)部部,這樣的的組件接接口簡(jiǎn)單單,但重用用性

48、很小小。若將將庫(kù)名、表表名等作作為組件件的接口口,組件的的重用性性大大提提高了,但接口口復(fù)雜了了,不利于于組件的的拆換。建建議的做做法是,如果希希望系統(tǒng)統(tǒng)有再次次開(kāi)發(fā)或或移植的的潛力,可以將將庫(kù)表名名作為接接口,訪庫(kù)語(yǔ)語(yǔ)句應(yīng)封封裝在組組件內(nèi)部部。如果將將訪庫(kù)權(quán)權(quán)限交給給用戶,既不利利于數(shù)據(jù)據(jù)庫(kù)的安安全性,也會(huì)給給應(yīng)用程程序帶來(lái)來(lái)很大的的負(fù)擔(dān)。組件的內(nèi)部部實(shí)現(xiàn)細(xì)細(xì)節(jié)不能能反映到到接口中中,接口同同內(nèi)部實(shí)實(shí)現(xiàn)細(xì)節(jié)節(jié)的隔離離程度越越高,組件或或應(yīng)用發(fā)發(fā)生變化化對(duì)接口口的影響響就越小小。在設(shè)設(shè)計(jì)組件件接口時(shí)時(shí),還要盡盡量估計(jì)計(jì)到將來(lái)來(lái)可能出出現(xiàn)的各各種情況況,力爭(zhēng)設(shè)設(shè)計(jì)出具具有高復(fù)復(fù)用性、適適應(yīng)性和和靈活性性的接口口。完成系統(tǒng)的的詳細(xì)設(shè)設(shè)計(jì)之后后,接下下來(lái)進(jìn)行行組件的的開(kāi)發(fā)和和測(cè)試。組組件不依依賴(lài)于特特定語(yǔ)言言, 開(kāi)開(kāi)發(fā)者可可根據(jù)實(shí)實(shí)際需要要選擇使使用VBB、VCC或Jaava作作為開(kāi)發(fā)發(fā)工具。CCOM組組件的開(kāi)開(kāi)發(fā)工作作可委托托給專(zhuān)門(mén)門(mén)的開(kāi)發(fā)發(fā)組。組組件的接接口一旦旦確定,組件的的開(kāi)發(fā)和和應(yīng)用系系統(tǒng)實(shí)現(xiàn)現(xiàn)的其他他工作可可由各個(gè)個(gè)專(zhuān)門(mén)小小組同時(shí)時(shí)進(jìn)行,可大大大縮短開(kāi)開(kāi)發(fā)時(shí)間間。至此基本上上完成了了應(yīng)用系系統(tǒng)的設(shè)設(shè)計(jì)與實(shí)實(shí)現(xiàn)。然然后,還必須須對(duì)此

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論