版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
大型軟件項(xiàng)目的軟件工程管理方法計(jì)研2鄭震坤024891摘要:本文中介紹了軟件配置管理的工具CVS,并闡述了如何利用CVS來(lái)實(shí)現(xiàn)對(duì)開(kāi)發(fā)文檔和源代碼的訪問(wèn)和版本控制。文中還設(shè)計(jì)了用于軟件過(guò)程管理的軟件工程管理系統(tǒng),它包括任務(wù)管理系統(tǒng)、Bug管理系統(tǒng)和用戶(hù)認(rèn)證系統(tǒng),此系統(tǒng)為管理軟件生成過(guò)程和進(jìn)行質(zhì)量控制而建立,能夠?qū)浖?xiàng)目的過(guò)程進(jìn)行監(jiān)控。此外,文章中還討論了軟件測(cè)試的一些方法和原則。最后,對(duì)組件技術(shù)以及基于組件的軟件工程學(xué)方法進(jìn)行了簡(jiǎn)要的介紹。概述隨著企業(yè)信息化的深入,對(duì)軟件項(xiàng)目的需求日益復(fù)雜,并會(huì)產(chǎn)生頻繁的變更,傳統(tǒng)的個(gè)人英雄主義的開(kāi)發(fā)方式已經(jīng)越來(lái)越不能適應(yīng)發(fā)展的需要。從軟件企業(yè)的發(fā)展戰(zhàn)略來(lái)說(shuō),如何在技術(shù)日新月異和人員流動(dòng)頻繁的情況下,建立本公司的知識(shí)庫(kù)及經(jīng)驗(yàn)庫(kù),把企業(yè)中分散的隱性的財(cái)富,即個(gè)人的知識(shí)及經(jīng)驗(yàn),轉(zhuǎn)變?yōu)槠髽I(yè)的知識(shí)和經(jīng)驗(yàn),以便提高工作效率,縮短產(chǎn)品周期,加強(qiáng)企業(yè)的競(jìng)爭(zhēng)力,具有至關(guān)重要的作用。采用科學(xué)的管理思想,輔之以先進(jìn)的管理工具,已經(jīng)成為企業(yè)未來(lái)發(fā)展必不可少的手段。如果軟件開(kāi)發(fā)機(jī)構(gòu)不能有效地控制和使用軟件資源,則在面對(duì)風(fēng)險(xiǎn)時(shí)就可能導(dǎo)致軟件開(kāi)發(fā)活動(dòng)出現(xiàn)各種問(wèn)題。由于不能很好地管理軟件過(guò)程,會(huì)使得一些好的開(kāi)發(fā)方法和技術(shù)沒(méi)有起到預(yù)期的作用。項(xiàng)目的成功往往是通過(guò)工作組的杰出努力來(lái)達(dá)到的,這種僅僅建立在依賴(lài)特定高素質(zhì)開(kāi)發(fā)人員基礎(chǔ)上的成功,不能保證全組織的持續(xù)穩(wěn)定的軟件生產(chǎn)和質(zhì)量的長(zhǎng)期提高。因此,要降低軟件開(kāi)發(fā)過(guò)程的風(fēng)險(xiǎn)、保證軟件產(chǎn)品質(zhì)量,就必須加強(qiáng)管理,而軟件配置管理是企業(yè)過(guò)程改善和能力提升的基礎(chǔ)。本文中采用CVS作為軟件項(xiàng)目中進(jìn)行配置管理的工具,利用它來(lái)對(duì)項(xiàng)目文檔和源代碼實(shí)現(xiàn)有效的管理。軟件項(xiàng)目監(jiān)控的目的是通過(guò)建立對(duì)軟件項(xiàng)目過(guò)程的可視性,使項(xiàng)目管理者在軟件項(xiàng)目性能與軟件計(jì)劃出現(xiàn)偏差時(shí)采取有效的糾正措施,以確保軟件過(guò)程的質(zhì)量滿(mǎn)足要求。優(yōu)秀的軟件過(guò)程管理平臺(tái)是實(shí)現(xiàn)在整個(gè)項(xiàng)目生命周期中進(jìn)行項(xiàng)目過(guò)程監(jiān)控的工具保證,這一點(diǎn)尤其在現(xiàn)在大型軟件協(xié)作開(kāi)發(fā)中至關(guān)重要。本文中設(shè)計(jì)了一個(gè)軟件工程管理系統(tǒng),它由項(xiàng)目管理系統(tǒng)、Bug管理系統(tǒng)和用戶(hù)認(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ā)展,使軟件產(chǎn)品應(yīng)用到社會(huì)的各個(gè)領(lǐng)域,軟件產(chǎn)品的質(zhì)量自然成為人們共同關(guān)注的焦點(diǎn)。軟件開(kāi)發(fā)商為了占有市場(chǎng),必須把產(chǎn)品質(zhì)量作為企業(yè)的重要目標(biāo)之一,以免在激烈的競(jìng)爭(zhēng)中被淘汰出局。進(jìn)行軟件測(cè)試是質(zhì)量控制的必要步驟,建立起一套有效的自動(dòng)測(cè)試系統(tǒng),在軟件的開(kāi)發(fā)過(guò)程中對(duì)軟件經(jīng)常地進(jìn)行測(cè)試,這對(duì)軟件的開(kāi)發(fā)過(guò)程具有非常重要的意義。最后,組件化的程序設(shè)計(jì)方法對(duì)于軟件項(xiàng)目的開(kāi)發(fā)也有著不少的幫助,采用組件技術(shù),可以帶來(lái)軟件模塊二進(jìn)制級(jí)的復(fù)用。近幾年來(lái),組件在軟件開(kāi)發(fā)中得到了廣泛的應(yīng)用,尤其是J2EE和.NET技術(shù)將組件應(yīng)用于Internet,進(jìn)行各種事務(wù)處理,顯示出了強(qiáng)大的功能。本文將對(duì)組件技術(shù)和基于組件技術(shù)的軟件工程學(xué)方法進(jìn)行簡(jiǎn)要介紹?;贑VS工具實(shí)現(xiàn)軟件配置管理對(duì)于一個(gè)軟件企業(yè)或者一個(gè)軟件開(kāi)發(fā)團(tuán)隊(duì)來(lái)說(shuō),可能遇到過(guò)或者正在被版本難以控制的問(wèn)題所困擾。一個(gè)軟件往往由許多的模塊組成,在不同的階段(基礎(chǔ)功能、新增功能),很可能為了適應(yīng)不同的環(huán)境(如不同的操作系統(tǒng)),并根據(jù)不同客戶(hù)的要求開(kāi)發(fā)了特點(diǎn)各異的版本,這些版本之間有大量的共享模塊,以及屬于自己的模塊。當(dāng)最后將這些模塊組裝成系統(tǒng)的某個(gè)版本時(shí),會(huì)發(fā)現(xiàn)所需模塊版本無(wú)法確定。此外,還可能會(huì)有團(tuán)隊(duì)中并行開(kāi)發(fā)引起的沖突問(wèn)題。例如:編程人員A和B共同修改同一個(gè)模塊,兩人經(jīng)過(guò)幾個(gè)晝夜的奮戰(zhàn)之后,又都回存到服務(wù)器上,但到了程序試運(yùn)行的時(shí)候,才發(fā)現(xiàn)有一個(gè)人的修改被沖掉了,這會(huì)造成勞動(dòng)力的嚴(yán)重?fù)p失。因此,需要在軟件企業(yè)中實(shí)施軟件配置管理,簡(jiǎn)稱(chēng)為SCM(SoftwareConfigurationManagement)。SCM是一套規(guī)范、高效的軟件開(kāi)發(fā)基礎(chǔ)結(jié)構(gòu),早已被發(fā)達(dá)國(guó)家軟件產(chǎn)業(yè)的發(fā)展和實(shí)踐所證明是管理軟件開(kāi)發(fā)過(guò)程的有效方法。SCM可以系統(tǒng)地管理軟件系統(tǒng)中的多重版本;全面記載系統(tǒng)開(kāi)發(fā)的歷史過(guò)程;管理和追蹤開(kāi)發(fā)過(guò)程中危害軟件質(zhì)量以及影響開(kāi)發(fā)周期的缺陷和變化;SCM對(duì)開(kāi)發(fā)過(guò)程進(jìn)行有效地管理和控制,完整、明確地記載開(kāi)發(fā)過(guò)程中的歷史變更,形成規(guī)范化的文檔,不僅使日后的維護(hù)和升級(jí)得到保證,而且更重要的是,這還會(huì)保護(hù)寶貴的代碼資源,積累軟件財(cái)富,提高軟件重用率,加快投資回報(bào)。軟件配置管理作為軟件開(kāi)發(fā)過(guò)程的必要環(huán)節(jié)和軟件開(kāi)發(fā)管理的基礎(chǔ),支持和控制著整個(gè)軟件生命周期,同時(shí)對(duì)軟件開(kāi)發(fā)過(guò)程的宏觀管理,即項(xiàng)目管理,也有重要的支持作用。良好的配置管理能使軟件開(kāi)發(fā)過(guò)程有更好的可預(yù)測(cè)性,使軟件過(guò)程具有可重復(fù)性,使用戶(hù)和主管部門(mén)對(duì)軟件質(zhì)量和開(kāi)發(fā)小組有更強(qiáng)的信心。若要有效地實(shí)施軟件配置管理,必須要培養(yǎng)軟件開(kāi)發(fā)者的管理意識(shí),結(jié)合開(kāi)發(fā)組織的實(shí)際情況制訂出相應(yīng)的配置管理規(guī)范,由開(kāi)發(fā)人員依據(jù)規(guī)范,通過(guò)專(zhuān)業(yè)化的配置管理工具來(lái)實(shí)現(xiàn)。在這里,基于CVS工具實(shí)現(xiàn)軟件配置管理,對(duì)文檔和源代碼進(jìn)行訪問(wèn)和版本控制。CVS(ConcurrentVersionsSystem,并行版本系統(tǒng))是基于TCP/IP協(xié)議的版本控制工具,也是當(dāng)前OpenSource中最重要的開(kāi)發(fā)工具之一。CVS是典型的Client/Server結(jié)構(gòu)的軟件,它分為服務(wù)器端和客戶(hù)端兩部分,不過(guò)大多數(shù)CVS軟件中將它們和二為一了。在CVS服務(wù)器端包含一個(gè)倉(cāng)庫(kù)(repository),用于存放處于版本控制下的所有目錄和所有各種版本的文件,它保存了對(duì)項(xiàng)目源碼每一次改動(dòng)的記錄,和改動(dòng)的一些注釋。CVS會(huì)完成對(duì)倉(cāng)庫(kù)的查詢(xún)和更新,在任何時(shí)候,你都可以找到倉(cāng)庫(kù)中任何文件的任何版本。它容許幾個(gè)人同時(shí)工作在同一個(gè)文件,在他們提交文件時(shí)來(lái)合并他們所做的修改。在修改沖突時(shí)會(huì)發(fā)出警告來(lái)通知用戶(hù),是否確定將此文件的更新版本放入倉(cāng)庫(kù)內(nèi),并且是否由某人解決發(fā)生的沖突。使用CVS,最基本的開(kāi)發(fā)流程如下所述:兔某個(gè)用戶(hù)把奉他的所有代俗碼導(dǎo)入(i建mport巨)到CVS災(zāi)中,生成一歸個(gè)新的模塊茅,然后其他弦人可以抱導(dǎo)無(wú)出(che酷ck
ou炊t)源碼樹(shù)網(wǎng)的一個(gè)工作負(fù)拷貝算;現(xiàn)每個(gè)人都工獎(jiǎng)作在自己的撐本地計(jì)算機(jī)顫中,當(dāng)擦源碼樹(shù)發(fā)生誦了改變,例塔如增添了柄一個(gè)新的功貓能時(shí),他們內(nèi)必須更新(手updat嗚e)他們的肺本地拷貝來(lái)喂保持和當(dāng)前趙版本同步。竄他們治也文會(huì)提交(c拴ommit癢)他們改變掠的文件到倉(cāng)敲庫(kù)中鵝以弟生成新的向軟件槐版本咽。導(dǎo)辣在提交時(shí)出檔現(xiàn)的問(wèn)題C砍VS都會(huì)產(chǎn)采生警告,然蔥后嫌用戶(hù)凍必須仔細(xì)檢騰查出問(wèn)題的桐文件摧并慰手工解決沖冒突。在文件談中,改動(dòng)的殃部分會(huì)在前呈面以臺(tái)“劇>>>>>役”血顯示,并且芬列出兩個(gè)版炭本的不同之嚴(yán)處。享由用戶(hù)來(lái)決揀定是刪除舊硬版本還是做紙一些相應(yīng)的異修改。啟稀WinCV塌S是CVS沫的一個(gè)客戶(hù)灑端軟件,它沉運(yùn)行在Wi氣ndows徐上,用來(lái)在幟Windo史ws上登錄尸CVS服務(wù)龍器,然后進(jìn)匆行一些CV糟S相關(guān)的操鑰作與管理。磁由于當(dāng)前很圖多的企業(yè)內(nèi)擦部都采用L抗inux/損Unix做蝶為服務(wù)器,敵用Wind飛ows做客廊戶(hù)端,所以浪,WinC錄VS與在L缸inux上笑配置的CV證S服務(wù)器配杰合使用將組爺成強(qiáng)有力的蛾版本控制與膏管理的系統(tǒng)始。語(yǔ)W也inCVS最的一些常用接功能包括常配置、登錄瘦、文件上傳薪、痰文件束下載、編輯傍文件、文件男比較、更新籃本地文件、途合并文件、番添加文件、茄刪除文件、樂(lè)創(chuàng)建文件標(biāo)汽簽、查看文補(bǔ)件狀態(tài)等等計(jì)。冊(cè)其互中,Win躲CVS提供辣了庫(kù)修改后提交滾(comm抹it巡)的功能,錯(cuò)用戶(hù)從服務(wù)吧器端拷貝文腰件的某個(gè)版好本,在本地?zé)嵝薷暮罄徲胏omm器it命令嘆即可將最新榆的文件保存鵲到服務(wù)端,苗并且文件版慧本號(hào)會(huì)自動(dòng)用加1。竟哭當(dāng)一個(gè)開(kāi)發(fā)柜者試圖萌c忽ommit宅某敬一修改的文利件時(shí),通常緩會(huì)發(fā)生如下么兩種情況之禁一。明對(duì)于此散修改的文件勿,如果CV年S在庫(kù)中沒(méi)典有檢測(cè)到新個(gè)的版本,那居么直接珍c斜ommit到,就可在庫(kù)第中產(chǎn)生一新納的版本股;朱如果CVS監(jiān)在庫(kù)中檢測(cè)旱到新的版本磨(比如多個(gè)檔人同時(shí)對(duì)相塑同的文件進(jìn)兄行修改,在哭你之前已有響人將他的修豪改村c挖ommit擦而產(chǎn)生了新殿的版本),慣那么CVS弦此時(shí)將給出比警告并中斷浴c據(jù)ommit果操作頑。廳步對(duì)于第二種真情況,在C塌VS中斷了控commi階t操作后,棵必須調(diào)用更晨新本地文件紅命令upd劉ate,而鋒調(diào)用upd負(fù)ate命令斯后,會(huì)有兩奶種情況發(fā)生杰,一濕種是不帶沖旱突,另外是誠(chéng)帶有沖突。哪沖突的產(chǎn)生禁是由于多人炊在修改同一尊個(gè)文件的時(shí)緣候修改了文嘉件中的相同悄的地方(如竟某一行)。鬼在CVS中屈沖突幾乎很職少發(fā)生,而適一旦發(fā)生了豆沖突,很大等的原因可能縮是開(kāi)發(fā)小組陷的開(kāi)發(fā)成員置之間沒(méi)有協(xié)狡調(diào)好。另外遍對(duì)于沖突需亦要強(qiáng)調(diào)一點(diǎn)糊,所謂的沖缸突僅是文本鹽性的,而非槐邏輯性的。沒(méi)對(duì)于不帶沖心突的情況丈,在執(zhí)行u插pdate滿(mǎn)命令將本地越版本與服務(wù)旨器上的新版川本合并以后熄,直接執(zhí)行屋commi與t蛇命令就會(huì)完樹(shù)成提交操作拆。而對(duì)于帶婆沖突的情況取,則需要拖手動(dòng)地粥進(jìn)行享修改。例如家文件xIm蔽age.h燥在庫(kù)中的版梯本為1.4詢(xún),文件內(nèi)容追為縱:效while擦(1)i++;他本地黑的xIma特ge.h版其本為1.1鑄,假設(shè)我們風(fēng)做了如下的阿修改售while末(I<忠0)i++;虛那么在執(zhí)行疲u學(xué)pdate減命令之后,潑文件圖標(biāo)如但圖1所示扒。從圖中可捐以看出榜版本號(hào)已為達(dá)庫(kù)中版本號(hào)設(shè),文件狀態(tài)軋為Conf縣lict,錫修改時(shí)間改組為Resu虹lt
of填
merg貌e,這說(shuō)明做發(fā)生了沖突絹,我們打開(kāi)酸文件,文件嗚內(nèi)容如下:晶<<<<<們<<xI豐mage.膀h跡while列(i<于0)===獎(jiǎng)====到while垂(1)仗i++掠;>>>>羨>>>1寨.4拿在此CVS漲用<<<<贏<<,=墾=====叮===和>燭>>>>>爹強(qiáng)調(diào)修改的堵相同部分,語(yǔ)剩下的事情突就看用戶(hù)怎逮么辦了。在催去掉這些標(biāo)摘志,并改成尼所艷需要的文件粒之后,就可淚以航進(jìn)行c迷ommit歌了。這時(shí)版額本號(hào)又勿將竿升一級(jí)。帖圖1證WinCV貴S中對(duì)于板帶沖突的在文件顯示耽C餓VS中還提祝供了分支功否能,傻分支是基于駱軟件的版本分穩(wěn)定性和開(kāi)數(shù)發(fā)的延續(xù)性渡考慮的。一能個(gè)軟件產(chǎn)品潤(rùn)會(huì)有逢一個(gè)比較穩(wěn)牌定的版本(鄙一般是正式哥發(fā)布版),聯(lián)這個(gè)版本之癥前是不穩(wěn)定層的,而之后鍵要對(duì)它繼續(xù)堵開(kāi)發(fā),新的炮功能不斷加碧入,問(wèn)題也某肯定不斷出?,F(xiàn),在加入躬新功能的版融本還沒(méi)有比薄較穩(wěn)定之前凍,這時(shí)用戶(hù)老可能對(duì)借開(kāi)發(fā)者勢(shì)提出要求(吩比如發(fā)現(xiàn)了域發(fā)布版中的愉問(wèn)題要極求罷修改),此廈時(shí)就應(yīng)該毫進(jìn)行乳分支。舉個(gè)叢例子來(lái)說(shuō),絨假定稼某一軟件的寸1.0宇發(fā)脅布聾版已完成,村開(kāi)發(fā)者躍正在繼續(xù)開(kāi)聽(tīng)發(fā)粉過(guò)程她,計(jì)劃在2蛛個(gè)月后發(fā)行釘1.1的版功本。續(xù)然而筐在不久以后否,用茅戶(hù)開(kāi)始抱怨薯說(shuō)狂1.0版的浸代碼有些問(wèn)賊題,勤開(kāi)發(fā)者愉檢查了一下賴(lài)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守版的分支評(píng),門(mén)可以修改這像棵樹(shù)的分支筒而不影響到赴主干。當(dāng)修扶訂完成時(shí),捎開(kāi)發(fā)者咳可以選定是桿否要把它同勁主干合并或帳繼續(xù)保留在彩這個(gè)分支里跨。列CVS允許透你崗獨(dú)立出一個(gè)火派生的代碼臘到一個(gè)分離嗓的開(kāi)發(fā)版本證。當(dāng)你改變鉆一個(gè)分支中茂的文件時(shí)(答修改了一些斥BUG),念這些更改不叼會(huì)出現(xiàn)在主泳開(kāi)發(fā)版本和克其它分支版芽本中,而這葵些BUG在烤主干轎(或叫主開(kāi)月發(fā)版本)中夫肯定存在(鳴可能在別的衛(wèi)分支中也存及在),那么用就央必須在主干壇中也要對(duì)這蜂些BUG進(jìn)細(xì)行修改,這乎就增加了額粘外的開(kāi)銷(xiāo)。慚在CVS中卡,可以使用但合并(me鹿rging顛)把這些變差更從一個(gè)分株支移動(dòng)到另趴一個(gè)分支(下或主開(kāi)發(fā)版腫本)嗽。詞綜上所述,幅利用CVS童的comm泡it可以解構(gòu)決并行開(kāi)發(fā)濾中的沖突問(wèn)扮題,實(shí)現(xiàn)有債效的訪問(wèn)控染制;利用C光VS中的分賠支和合并可肯以實(shí)現(xiàn)對(duì)軟殺件靈活有效砍的版本控制獸。CVS為精軟件開(kāi)發(fā)的殿配置管理提賀供了一個(gè)可勇靠的工具。菌用軟件工程各管理系統(tǒng)實(shí)攔現(xiàn)軟件項(xiàng)目清過(guò)程管理炸在軟件項(xiàng)目黑的開(kāi)發(fā)過(guò)程裂中,會(huì)存在役資源變化頻楚繁的問(wèn)題。脆某些開(kāi)發(fā)人矛員在軟件項(xiàng)遞目開(kāi)發(fā)的過(guò)脖程中離去,鳥(niǎo)由于他負(fù)責(zé)巷使用或維護(hù)解的文檔或者返資源不完善捧,使得后續(xù)染人員接手他綠的工作時(shí)困對(duì)難重重,造您成開(kāi)發(fā)過(guò)程屢的停滯奏;蹲由于沒(méi)有控走制好軟件變聯(lián)化過(guò)程,消蘭耗了大量人穿力物力,導(dǎo)刃致項(xiàng)目嚴(yán)重桂超期、預(yù)算效超支;項(xiàng)目磨經(jīng)過(guò)了幾次凡大改動(dòng),幾員乎記不起原賴(lài)來(lái)是什么樣受子了稀,睬或者說(shuō),根題據(jù)用戶(hù)提出嗚的多次變更顫要求更改后覽的成型軟件踢,與用戶(hù)的距需要相距甚奴遠(yuǎn)階;勇軟件變化未旱經(jīng)控制進(jìn)入辛開(kāi)發(fā)或維護(hù)孔活動(dòng)之中,書(shū)引入更嚴(yán)重繩的問(wèn)題升,圈例如某程序基員未經(jīng)正常適的軟件變化面申請(qǐng),自行扭修改軟件中卷的某一錯(cuò)誤隱,雖然局部片錯(cuò)誤是改正伶了,但由于英沒(méi)有考慮到桃局部改動(dòng)對(duì)腔全局的影響綿,使得整個(gè)鍛系統(tǒng)不能正漲常工作。扮為了減小資尚源變化頻繁真問(wèn)題對(duì)軟件掏項(xiàng)目的影響薄,更有效地紐控制軟件質(zhì)凍量,需要對(duì)偉軟件項(xiàng)目過(guò)霉程進(jìn)行監(jiān)控閥。這里設(shè)計(jì)抬了一套軟件悶工程管理系帆統(tǒng),它主要怪針對(duì)于軟件看生成過(guò)程的扁管理和軟件農(nóng)質(zhì)量控制誕。這個(gè)系統(tǒng)鐘包括以下三嗓個(gè)部分:任慚務(wù)管理系統(tǒng)尼、Bug管猶理系統(tǒng)和用幼戶(hù)認(rèn)證系統(tǒng)避??@個(gè)系統(tǒng)夾應(yīng)當(dāng)望具有Bro片wser/螞Serve托r的結(jié)構(gòu),辦用html輛、JSP和垮SQL爹Serve叮r澤實(shí)現(xiàn)。憐3.1任務(wù)這管理系統(tǒng)智猴任務(wù)管理系威統(tǒng)稠主要用于軟叛件生產(chǎn)的過(guò)黨程管理,對(duì)餡軟件生產(chǎn)進(jìn)襯行模塊化管憂(yōu)理,并將軟拒件產(chǎn)品生產(chǎn)夏的工作細(xì)化碎為不同的任松務(wù),比如代貧碼實(shí)現(xiàn)、程忌序測(cè)試和文脹檔寫(xiě)作等;奴這樣的系統(tǒng)跡便于細(xì)化工謠作,明確工澆作目的,同淋時(shí)也便于管揀理者對(duì)生產(chǎn)紡過(guò)程進(jìn)行管舌理,能夠有卻效好地怖把握產(chǎn)品的匙開(kāi)發(fā)進(jìn)度。爭(zhēng)段該系統(tǒng)從軟泛件生產(chǎn)的特劇點(diǎn)出發(fā),針托對(duì)軟件生產(chǎn)信的特點(diǎn)進(jìn)行橋設(shè)計(jì)。在該新系統(tǒng)中,最毛大管理單元式是項(xiàng)目,最濁小管理單元韻是任務(wù),在食項(xiàng)目和任務(wù)會(huì)之間有模塊寸,這樣的劃戒分能夠使項(xiàng)牲目執(zhí)行更加遵有效。在任育務(wù)之下有所鵝有的具體工宿作記錄,包蛛括Chec用kin拆(工作提交笑)競(jìng)、BugF膨ix抹(Bug修論復(fù))稍、Comm皆ent虹(相關(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ěn),任務(wù)有任壤務(wù)負(fù)責(zé)人,墊實(shí)行單人負(fù)胖責(zé)的策略,鈔管理范圍由萍大到小、由事整體到細(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)中明小確椒地面提出管理任點(diǎn)務(wù),便于管解理人員在項(xiàng)酷目執(zhí)行過(guò)程濟(jì)中進(jìn)行管理譯。診裁另外,在任軟務(wù)管理系統(tǒng)撒中包含了一蹦個(gè)"周報(bào)告煩"子系統(tǒng),浩工作人員可趣以在周報(bào)告亡中提交每一拘周的工作情恩況,工作計(jì)城劃等,并在冷系統(tǒng)中做記舟錄,方便工存作者記錄和森匯報(bào)自己的奪工作情況和重下一階段的積工作安排;捕并提供周報(bào)犬告查詢(xún)功能江,同時(shí)系統(tǒng)躍還可以對(duì)各胡個(gè)周報(bào)告進(jìn)似行匯總,以旋便管理者查揭閱。黨這個(gè)系統(tǒng)中默主要實(shí)現(xiàn)的開(kāi)功能包括:椅創(chuàng)建項(xiàng)目、急查詢(xún)項(xiàng)目、求創(chuàng)建模塊、左查詢(xún)模塊、壁創(chuàng)建任務(wù)、艙查詢(xún)?nèi)蝿?wù)、黨提交多種記岡錄、查詢(xún)記凳錄、提交工姿作報(bào)告以及界系統(tǒng)管理等減。覺(jué)任務(wù)管理系仗統(tǒng)用于記錄馳、跟蹤和管形理項(xiàng)目開(kāi)發(fā)羊的每個(gè)過(guò)程胖、報(bào)告工作關(guān)的進(jìn)展情況主和幫助公司費(fèi)的管理和決他策人員對(duì)資儀源進(jìn)行合理補(bǔ)分配。通過(guò)微管理系統(tǒng)對(duì)端軟件工程項(xiàng)穴目的管理,拋可以避免軟漁件公司因?yàn)榭廴藛T的流動(dòng)施對(duì)公司造成屋的巨大損失卵。同時(shí)因?yàn)檗D(zhuǎn)管理系統(tǒng)記庭錄了項(xiàng)目的辦詳細(xì)過(guò)程信阻息,也為項(xiàng)臉目以后的升塞級(jí)和完善提柜供了寶貴的府可供查詢(xún)的育第一手資料廉。斗此系統(tǒng)應(yīng)該慰具有如下的鞭特點(diǎn):氏項(xiàng)目分級(jí)管緒理:斃將一個(gè)項(xiàng)目士分解為小的誠(chéng)模塊,再將姐模塊分解為載具體的任務(wù)碌,通過(guò)逐層亡細(xì)化,將工退作落實(shí)到個(gè)原人謊;堵以任務(wù)為中厭心:整個(gè)系嫂統(tǒng)的最終管泊理歸結(jié)為人弓與任務(wù)的一招一對(duì)應(yīng),明禁確責(zé)任蘭;蓮任務(wù)分類(lèi):忘按照任務(wù)的銹性質(zhì)進(jìn)行分始類(lèi),同一個(gè)鼓任務(wù)又可以匆通過(guò)從管理冠任務(wù)、開(kāi)發(fā)夜任務(wù)、測(cè)試則任務(wù)到文檔初任務(wù)進(jìn)行不緩?fù)娜蝿?wù)分喘工盆;講記錄細(xì)節(jié):錫將與整個(gè)項(xiàng)者目開(kāi)發(fā)中相泄關(guān)的每一條匠信息記錄到或系統(tǒng)中,產(chǎn)題生一個(gè)包括仙完成項(xiàng)目過(guò)陶程和記錄的碰報(bào)告,這就押是一份可供撲查詢(xún)的,記仔錄整個(gè)開(kāi)發(fā)誼過(guò)程的原始年資料制;皆眨工作匯總:獻(xiàn)通過(guò)周報(bào)告針子系統(tǒng)及時(shí)添反映所有人醉員的工作進(jìn)誤展和完成情憂(yōu)況,以便對(duì)墓人員進(jìn)行評(píng)萄估域;竿項(xiàng)目控制:漿可以實(shí)時(shí)了臨解整個(gè)項(xiàng)目蝦的完成情況確和所有人員捆當(dāng)前負(fù)責(zé)的統(tǒng)具體工作茂;木影Email新自動(dòng)發(fā)送:嶄項(xiàng)目系統(tǒng)中濕任何一個(gè)添筑加和更改操筐作都會(huì)同時(shí)葵通過(guò)Ema表il告知相奇關(guān)人員負(fù)。貢3殼.2Bu贏g子管理系統(tǒng)粥B啄ug管理系然統(tǒng)主要用于搜對(duì)軟件的B襪ug進(jìn)行管蒸理,行是軟件測(cè)試亮和軟件開(kāi)發(fā)永的工程管理洋工具,啟這對(duì)提高軟顧件產(chǎn)品的質(zhì)蘇量至關(guān)重要宜。Bug管瀉理系統(tǒng)能實(shí)怕時(shí)反應(yīng)出B需ug的出現(xiàn)懷、確認(rèn)、修屆復(fù)、驗(yàn)證等孕各個(gè)階段的婆情況案。爸軟件產(chǎn)品中堡存在Bug胖是正常情況底,沒(méi)有Bu抓g肯的軟件是不用存在脫的尋。軟件的規(guī)船模越大,B狀ug出現(xiàn)的跡機(jī)會(huì)就越大江,Bug的叫數(shù)量也就越魄多,琴如果開(kāi)發(fā)人電員梨難以對(duì)付這次些成百上千訂的Bug,陶那么軟件的猴質(zhì)量就很難濫得到保證。孕為了有效幅地咬管理Bug屬和詞修復(fù)Bug登,盯需要一個(gè)強(qiáng)甜大的工具對(duì)趴軟件中的B兇ug進(jìn)行科嘉學(xué)有效的管販理??˙ug管理襲系統(tǒng)是存儲(chǔ)智、處理Bu歡g的工具,碧也是開(kāi)發(fā)人盆員,測(cè)試人制員交流討論繼的場(chǎng)所,同臨時(shí)也是項(xiàng)目挺管理、工作由評(píng)定的重要賄工具。Bu法g管理系統(tǒng)役主要用于提秋交Bug,歡并記錄每個(gè)寺Bug的變公化過(guò)程。每糠一個(gè)Bug奸都有負(fù)責(zé)人總,或者可以盒被指定一個(gè)療負(fù)責(zé)人對(duì)其遭進(jìn)行修復(fù),翠這樣有利于渠及時(shí)尺地賤處理Bug銷(xiāo);如果軟件香產(chǎn)品的每一菜個(gè)Bug運(yùn)都嚴(yán)格詳?shù)厣肂ug尼管理系統(tǒng)管肺理,隨著系式統(tǒng)中的Bu給g一個(gè)一個(gè)雜被壽清除筑,產(chǎn)品也將依一步一步走紅向健壯。鬼Bug管理饒系統(tǒng)應(yīng)具有搞如下的特點(diǎn)廳:絮Bug的流思程控制:對(duì)半一個(gè)軟件中源的Bug進(jìn)班行從提交、涉確認(rèn)、修復(fù)件、測(cè)試到最酬后關(guān)閉整個(gè)沈過(guò)程的管理更;議Email粘自動(dòng)發(fā)送:渴Bug屋管理系統(tǒng)中刑任何一個(gè)添芒加和更改操專(zhuān)作都串要共同時(shí)通過(guò)E筒mail告另知Bug的屬負(fù)責(zé)人及相騰關(guān)人員,提模醒大家對(duì)此城Bug的關(guān)擴(kuò)注赤;稱(chēng)完定期Bug寇匯總:根據(jù)尊條件產(chǎn)生統(tǒng)糠計(jì)報(bào)表,并畫(huà)可以通過(guò)圖并表的方式來(lái)片描述在一個(gè)窯時(shí)期內(nèi),B穴ug的增加脆和修復(fù)情況聚,這簽為產(chǎn)品的開(kāi)祖發(fā)和控制提趴供礦了鬼依據(jù)烘;蓮暫Bug提醒猴:將Bug集管理系統(tǒng)中犧的Bug按淘照級(jí)別進(jìn)行份劃分,定期技發(fā)送給每一財(cái)個(gè)Bug的脹所有者和它化的部門(mén)負(fù)責(zé)賽人,提醒B桿ug的所有鋒者及時(shí)修復(fù)解Bug繩。棕腸3歐.3用戶(hù)認(rèn)道證閣系統(tǒng)氏用戶(hù)認(rèn)證系何統(tǒng)用于對(duì)整制個(gè)系統(tǒng)中的社用戶(hù)進(jìn)行統(tǒng)止一管理,包纏括注冊(cè)用戶(hù)翠、為用戶(hù)發(fā)摟放其他系統(tǒng)英使用許可等蓋功能;還可位以存放員工工的其他信息姻,比如簡(jiǎn)歷恥等等粘。牲使用用戶(hù)認(rèn)扁證系統(tǒng),可腥以管理整個(gè)麥系統(tǒng)中的用弄戶(hù),即用戶(hù)費(fèi)只需要注冊(cè)罵一次,在獲炭得其他系統(tǒng)優(yōu)的使用許可傅以后,就可飼以使用其他壩系統(tǒng)旗(例如CV重S服務(wù)器登鍵錄權(quán)限、項(xiàng)慣目管理系統(tǒng)陪和Bug管窮理系統(tǒng))付,不必為每局一個(gè)系統(tǒng)都繪注冊(cè)用戶(hù)。房這樣使得用搜戶(hù)管理更加貢集中、方便衡。些用戶(hù)認(rèn)證系爬統(tǒng)主要包括感用戶(hù)注冊(cè)、慶用戶(hù)授權(quán)、奔組管理、部拾門(mén)管理、系谷統(tǒng)管理等功鈴能。都進(jìn)行有效的隙軟件測(cè)試工提作稀軟件測(cè)試的歇基本過(guò)程是仔通過(guò)對(duì)軟件既功能的實(shí)際柔使用,觀察底使用的實(shí)際園效果,然后徑把實(shí)際結(jié)果吩和期望值進(jìn)錯(cuò)行比較,找汪出它們之間浙的差距。整額個(gè)的軟件測(cè)棚試過(guò)程可以怕大致分為兩慣部分:裳設(shè)立期望值源。軟件應(yīng)該獄具備的功能聾,實(shí)際上在混編程之前就末確定好了。儲(chǔ)軟件設(shè)計(jì)可牧以理解為設(shè)舟立軟件的期劣望值。對(duì)于盾測(cè)試人員來(lái)毀說(shuō),根據(jù)軟便件設(shè)計(jì)文檔撤和用戶(hù)手冊(cè)閱,可以整理瓦出具體的,醋細(xì)化的期望穩(wěn)值。這些期劫望值是評(píng)估拉軟件質(zhì)量的插標(biāo)準(zhǔn)、依據(jù)遍。這也附帶略說(shuō)明了文檔籌的重要性。北獲得實(shí)測(cè)值籮。通過(guò)在特旁定的條件下秋運(yùn)行軟件,為采集運(yùn)行結(jié)陸果。然后把崗結(jié)果和期望韻值進(jìn)行比較患,產(chǎn)生測(cè)試技報(bào)告。足通常講的軟血件測(cè)試主要唐是指這部分幸的工作。槍對(duì)于大型軟小件項(xiàng)目來(lái)說(shuō)熄,其軟件測(cè)港試項(xiàng)目包含鑰的具體任務(wù)送大致有以下員這幾項(xiàng)。嶺建立自動(dòng)測(cè)貪試運(yùn)行體系宋對(duì)于一個(gè)稍連具規(guī)模的軟俗件,自動(dòng)運(yùn)個(gè)行測(cè)試程序焰是必不可少設(shè)的。因?yàn)闇y(cè)檢試程序的代悼碼量遠(yuǎn)遠(yuǎn)大抵于被測(cè)程序粒的代碼量,繼不可能采用予人工運(yùn)行測(cè)授試,比較結(jié)拾果。自動(dòng)測(cè)弊試體系的主短要功能是侄運(yùn)行測(cè)試程遼序,收集運(yùn)過(guò)行結(jié)果,把太結(jié)果和標(biāo)準(zhǔn)貓答案比較,安并最后產(chǎn)生克測(cè)試的結(jié)果立和bug報(bào)跪告?;衷O(shè)計(jì)測(cè)試方載案滑首先要建立寺測(cè)試環(huán)境。譜有些時(shí)候建負(fù)立測(cè)試環(huán)境把是一件很困自難的事情瘋,燃例如網(wǎng)絡(luò)環(huán)吐境,和某些沒(méi)極限環(huán)境,凍例如測(cè)硬盤(pán)譜溢出時(shí)的處桐理情況醬,哲設(shè)置線(xiàn)程之碰間的競(jìng)爭(zhēng)條秀件,等等。楊在設(shè)計(jì)測(cè)試扇時(shí),一般是微根據(jù)遙“馬假定環(huán)境正省確格”賭的原則。要嬸測(cè)一個(gè)程序活,需要假定擱測(cè)試程序中油的輔助部分鬼是正確的。松例如測(cè)文件暮read(跌)時(shí),假定園open(鄙),clo卸se()都任是好的。否漠則的話(huà)在測(cè)糠試程序中對(duì)暈于open碰()灑和clos軍e()站的結(jié)果要檢禿查,要處理秧文件打開(kāi)有儀誤的各種意智外情況,使面得測(cè)試程序艷非常臃腫,逢讀起來(lái)使人上不得要領(lǐng)。尾設(shè)計(jì)測(cè)試方盜案時(shí)還需要下考慮結(jié)果的候測(cè)量方法。鞭一般情況下穿收集程序的建輸出結(jié)果就漁夠了,這樣驚做也比較容蜜易。但是有座些測(cè)試的結(jié)稼果是很難測(cè)欺量的,例如挖要測(cè)一個(gè)程布序占用內(nèi)存萬(wàn)大小的峰值悄。者設(shè)計(jì)測(cè)試情救況衡這是測(cè)試工站作的主要部朵分。一般來(lái)肌說(shuō),一個(gè)軟懇件不可能被鵝“苗徹底飯”菜測(cè)試。只能傳是盡量涵蓋再常用的功能調(diào)和運(yùn)行條件酸。講常用的測(cè)試泥情況設(shè)計(jì)思甚路為:首先荒考慮珍正常條件下代正常工作,拿其次是錯(cuò)誤耕條件下正確灶處理,包括或給出相應(yīng)的科錯(cuò)誤碼和錯(cuò)彼誤信息。但刪是,考慮到資軟件的效率炭和復(fù)雜性,芳并不是每一盟種錯(cuò)誤都必拍須處理。所登以軟件手冊(cè)彼里可以說(shuō)明束在某些輸入賄條件下,結(jié)挺果不可預(yù)見(jiàn)匯,或者引起恭軟件崩潰。插其中,由于熟邊界是軟件剛?cè)菀壮鲥e(cuò)的拴地方朵,所以要特斧別注意進(jìn)行登邊界測(cè)試逆。例如整數(shù)珠中的0和6淘5535,盞指針中的空農(nóng)指針和指到偶無(wú)效地址的廊指針等。以晉上所述為對(duì)羊程序進(jìn)行正超確性測(cè)試,臂通常還要進(jìn)些行性能測(cè)試容,例如系統(tǒng)驚的響應(yīng)時(shí)間店,容量等等況。極限測(cè)試憤也很重要,點(diǎn)例如,系統(tǒng)陜內(nèi)最多可創(chuàng)學(xué)建多少個(gè)進(jìn)遷程,應(yīng)用程步序最多可以逮使用的內(nèi)存歉等等。銅編寫(xiě)測(cè)試程安序濁設(shè)計(jì)了測(cè)試貪情況之后,纏就可以編寫(xiě)綁測(cè)試程序。朵這是測(cè)試程艦序庫(kù)的主要紡來(lái)源。需要掠一支測(cè)試隊(duì)藝伍,系統(tǒng)、釘全面、深入切地編寫(xiě)測(cè)試努程序。測(cè)試的運(yùn)行躺運(yùn)行測(cè)試的屬方法可以分性為人工運(yùn)行減和自動(dòng)運(yùn)行賭兩種。芒在不少情況茅下人工測(cè)試跳是不可避免美的。例如收罩集標(biāo)準(zhǔn)答案鼠時(shí),要人工仇檢查是否符具合預(yù)期的值吸,如果符合牢預(yù)期值,就漢保存起來(lái)作田標(biāo)準(zhǔn)答案。煩有些程序有擇特殊的運(yùn)行跑環(huán)境,例如紅人機(jī)交互方候式,需要操?zèng)]作某些外部憲設(shè)備。最常祥見(jiàn)的是有圖父形界面的程宗序,很難進(jìn)互行自動(dòng)測(cè)試浴。快真正有用的幫是自動(dòng)運(yùn)行任。測(cè)試程序早通常都和d知aily
燥build飄相連,例如耗每天bui滿(mǎn)ld兩遍,另從源程序開(kāi)撥始buil罰d,然后運(yùn)鉆行程序獲得無(wú)報(bào)告,明這禽等于監(jiān)護(hù)源牙程序,因此滔只有自動(dòng)運(yùn)組行才能滿(mǎn)足旗測(cè)試周期短進(jìn)的要求。頸還有的時(shí)候把需要子集運(yùn)地行,測(cè)試程安序特別多的灰時(shí)候有可能鈔運(yùn)行較長(zhǎng)時(shí)遵間,在某些跳情況下每次塞只能運(yùn)行一反個(gè)子集。部測(cè)試的結(jié)果聯(lián)和Bug報(bào)悶告瘋最常見(jiàn)的測(cè)紛試結(jié)果是測(cè)庭試報(bào)告:列虛出成功,失緞敗統(tǒng)計(jì)報(bào)表霞,失敗詳情造,輸入情況話(huà),出錯(cuò)現(xiàn)象寨等。悉有時(shí)候根據(jù)采測(cè)試結(jié)果要煤立即采取行舟動(dòng)。緊急情控況要緊急搶客修,關(guān)閉豪源程序樹(shù),姻停止改動(dòng)。牙解決兩個(gè)糾伙纏在一起的昂?jiǎn)栴}比單獨(dú)觸解決它們更病難孔,帳因?yàn)槟菢訉⒃~無(wú)法發(fā)現(xiàn)新翅問(wèn)題。所以半要避免在一同個(gè)有問(wèn)題的苦系統(tǒng)上進(jìn)行睜改動(dòng)和開(kāi)發(fā)兆新程序。病測(cè)試隊(duì)伍擔(dān)朵負(fù)著質(zhì)量糾鹿察隊(duì)的角色美,測(cè)試中發(fā)凝現(xiàn)新問(wèn)題時(shí)榨,要登錄b柱ug,填寫(xiě)初bug報(bào)告舍,并要跟蹤彼此bug的測(cè)解決情況。徒測(cè)試人員要亂對(duì)最終發(fā)布綱產(chǎn)品的質(zhì)量爪負(fù)責(zé)。薪組件技術(shù)就以及晃基于組件技瓦術(shù)的軟件工畫(huà)程學(xué)方法吹按照組件化等程序設(shè)計(jì)的注思想,復(fù)雜鹿的應(yīng)用程序擱被設(shè)計(jì)成一襖些小的、功轎能單一的組嘉件模塊,這逢些組件模塊需可以運(yùn)行在顧同一臺(tái)機(jī)器傭上,也可以誕運(yùn)行在不同欲的機(jī)器上賣(mài),甚至可以棕運(yùn)行在跨越詠太平洋的兩市臺(tái)機(jī)器上?;樵诶硐氲那榱隂r下,每臺(tái)斥機(jī)器的運(yùn)行夾環(huán)境可以不殿同,甚至可纏以是不同的牽操作系統(tǒng)。漆為了實(shí)現(xiàn)這務(wù)樣的應(yīng)用軟靜件,組件程冠序和組件程娃序之間需要甚一些極為細(xì)倚致的規(guī)范,獄只有組件程牢序遵守了這肥些共同的規(guī)素范,軟件系珠統(tǒng)才能正常拴運(yùn)行。為此燥OMG(O招bject拘Mana嚇gemen隔tGro劈up,對(duì)象陜管理組織)盲和Micr云osoft沸分別提出了本CORBA素(Comm涂onOb紅ject啟Reque采stBr補(bǔ)eaker疾Arch往itect器ure,公交共對(duì)象請(qǐng)求綢中介體系結(jié)睡構(gòu))和CO遭M(Com戶(hù)ponen思tObj腹ectM豐odel,寬組件對(duì)象模括型)標(biāo)準(zhǔn),達(dá)目前COR怖BA模型主虎要應(yīng)用于U尸NIX操作附系統(tǒng)平臺(tái)上火,而COM戶(hù)則主要應(yīng)用股于Micr散osoft灶Wind辭ows操作瓶系統(tǒng)平臺(tái)上輔。蛇隨著Int未ernet亭時(shí)代的到來(lái)膏,COM技嘆術(shù)已經(jīng)應(yīng)用紙于越來(lái)越多傷的分布式系夫統(tǒng)當(dāng)中饑。謀COM規(guī)范預(yù)具有鑒如下的一些才特點(diǎn)。血語(yǔ)言無(wú)關(guān)性姥:這武是指COM皺規(guī)范的定義弊不依賴(lài)于特總定的語(yǔ)言,元編寫(xiě)組件對(duì)吹象所使用的睬語(yǔ)言與編寫(xiě)容客戶(hù)程序使扭用的語(yǔ)言可落以不同,只田要它們都能微夠生成符合盞COM規(guī)范遞的二進(jìn)制代文碼;海進(jìn)程透明特倍性:再COM所提哥供的服務(wù)組配件對(duì)象在實(shí)胸現(xiàn)時(shí)有進(jìn)程消內(nèi)對(duì)象和進(jìn)矮程外對(duì)象兩衡種進(jìn)程模型騾,如果是進(jìn)鵲程內(nèi)對(duì)象,蠅則組件在客搖戶(hù)進(jìn)程空間業(yè)運(yùn)行,如果擇是進(jìn)程外對(duì)直象,則組件憐運(yùn)行在同一充機(jī)器上的另綠一個(gè)進(jìn)程空伯間或者在遠(yuǎn)妻程機(jī)器的進(jìn)田程空間中,喂但這種區(qū)別仗對(duì)于客戶(hù)來(lái)催說(shuō)是透明的斥,這就是C儉OM的透明貓?zhí)匦裕惶靠芍赜眯裕旱荂OM的可篇重用性是建循立在二進(jìn)制薪代碼級(jí)的,也與C++中觀所說(shuō)的顆可重用性不彈同,它使復(fù)疏雜的系統(tǒng)簡(jiǎn)脅化為一些簡(jiǎn)交單的對(duì)象模劫塊;韻對(duì)于使用組確件的集成開(kāi)簡(jiǎn)發(fā)者而言晶,機(jī)一個(gè)組件就礎(chǔ)是一個(gè)接口啄集涼,粒只有通過(guò)接建口才能與組計(jì)件進(jìn)行通信誰(shuí);下而對(duì)于組件親來(lái)說(shuō)背,吊接口是包含地一個(gè)函數(shù)指資針數(shù)組的內(nèi)決存結(jié)構(gòu)畏,秘每個(gè)數(shù)組元妄素的內(nèi)容是院一個(gè)由組件距所實(shí)現(xiàn)的函爽數(shù)地址。在唇一個(gè)應(yīng)用程喪序中誤,秧起決定作用糞的是組件的刺接口而不是香組件本身。甩只要組件的糧接口保持不蘭變辭,辦組件可以任場(chǎng)意升級(jí)或更沸換漲,枝而應(yīng)用程序側(cè)不必做任何申修改。接口吉將特定的行始為封裝起來(lái)產(chǎn),墨一方面使客尿戶(hù)可以用同盾樣的方式處輸理不同組件業(yè),序一方面同一換組件可以在委不同的應(yīng)用揉中使用。這嚷些特點(diǎn)決定弱了組件必然撒有很好的重嗽用性。恨以COM為吵例,仇其重用性主已要表現(xiàn)在以番下的使用場(chǎng)憲合:需COM組毒件并不是專(zhuān)妹為一種Wi騰ndows惡平臺(tái)而設(shè)計(jì)寶的誓,于同一COM揭組件可以在畏Win95墓、Win9頸8、Wor源kstat盞ion及N偏T上使用。嘩組件既可以物被嵌入動(dòng)態(tài)黎Web頁(yè)面踢,私又可以在L郵AN或桌面演環(huán)境的VB田和VC等應(yīng)飯用中使用嗓;輛COM組外件之間是彼好此獨(dú)立的。鹿當(dāng)應(yīng)用需求汽發(fā)生變更時(shí)替,可能需要舒更換中間層粱的個(gè)別CO歪M組件,但滲這并不會(huì)影寒響其他組件薪的繼續(xù)使用付。燦COM組休件具有若干習(xí)對(duì)外接口(瓶屬性和方法絮),相當(dāng)于蹈芯片的奉“例管腳醒”量。根據(jù)不同固的應(yīng)用需求圣,可以有選絮擇地使用不鑼同的管腳。窩即使某些管搏腳被茅“污廢棄衰”驕,COM組獄件本身仍然腰可繼續(xù)使用遣。仙同一COM困組件可以在撲不同的應(yīng)用汁環(huán)境中重復(fù)旱使用。CO禿M組件不一王定是為專(zhuān)門(mén)譽(yù)的系統(tǒng)而設(shè)夫計(jì),可以有執(zhí)較寬的應(yīng)用去領(lǐng)域,不會(huì)質(zhì)因?yàn)槟骋幌登慕y(tǒng)的扎“積過(guò)時(shí)幅”源而被恭“障廢棄擾”臺(tái)。轉(zhuǎn)組件夜技術(shù)以峰其較高的可您重用性排向人們茫展示了一種腎嶄新的軟件滲設(shè)計(jì)思路融,它對(duì)軟件狗項(xiàng)目的開(kāi)發(fā)登很有幫助,讓可是使得軟蘭件具有良好逢的模塊化特覆性。調(diào)與傳統(tǒng)的軟戀件開(kāi)發(fā)不同首,陵在基于組件勝對(duì)象的軟件房工程中應(yīng)著炒重進(jìn)行組件肺的規(guī)劃、設(shè)鍬計(jì)與開(kāi)發(fā)。妖如何將傳統(tǒng)系的軟件工程效學(xué)和組件對(duì)沸象合理地結(jié)勻合在一起是,黑至今還處在蓮發(fā)展和完善擴(kuò)階段迅,璃達(dá)成共識(shí)仍飄需時(shí)日。一宮般而言錢(qián),猛在軟件開(kāi)發(fā)究的過(guò)程中,點(diǎn)首先應(yīng)逐步槽深入對(duì)組件弱進(jìn)行功能分完析、規(guī)劃和族對(duì)外接口的宅設(shè)計(jì)塘,芳進(jìn)而落實(shí)內(nèi)丹部細(xì)節(jié)的實(shí)經(jīng)現(xiàn),最終完鉗成組件的部夠署與管理。蜻以COM為慈例經(jīng),稅一般來(lái)說(shuō)韻,喉COM組件極的規(guī)劃應(yīng)遵叉循以下原則已:稿用戶(hù)對(duì)于數(shù)活據(jù)庫(kù)的請(qǐng)求肝應(yīng)通過(guò)CO福M組件實(shí)現(xiàn)筑。將訪問(wèn)權(quán)辭限授予C荷OM組件逗,效保證了訪問(wèn)乳數(shù)據(jù)庫(kù)的安匠全性賺,超把對(duì)每個(gè)用龜戶(hù)的連接變泳成和COM剩組件的連貓接撇,以避免數(shù)液據(jù)庫(kù)資源的也浪費(fèi)和崩潰堵的危險(xiǎn)。福組件粒度不麗宜過(guò)大口,套盡量讓每一流個(gè)COM組門(mén)件實(shí)現(xiàn)某一絨個(gè)或一類(lèi)相何似的應(yīng)用請(qǐng)鎮(zhèn)求鉤,先而不要追求午其功能的過(guò)覆分繁多。保教證每個(gè)組件者對(duì)象完成的稼商務(wù)邏輯功腰能相對(duì)單一精,愚有助于重用顛機(jī)制買(mǎi)的發(fā)揮俱。依COM組件燦與用戶(hù)的接促口應(yīng)盡量簡(jiǎn)恩單、友好。予COM組件稼如果是可視羅的(Act血iveX控嫌件叮),酷則只能有一消個(gè)可視化界線(xiàn)面。喚與傳統(tǒng)的軟炊件工程學(xué)有純所不同樹(shù),結(jié)基于組件對(duì)逗象的應(yīng)用系顯統(tǒng)是由組件曉實(shí)現(xiàn)特定應(yīng)梨用處理和商盒務(wù)邏輯計(jì)算前任務(wù)絹,聽(tīng)而其具體實(shí)遺現(xiàn)對(duì)集成開(kāi)抱發(fā)人員來(lái)說(shuō)者是封裝好的脂,剛他們不必耗勞費(fèi)精力去關(guān)犯心實(shí)現(xiàn)細(xì)節(jié)豪,由只需規(guī)定應(yīng)蕉用系統(tǒng)與組挪件的接口磁,晴指明在何時(shí)牛、何處調(diào)用摟哪個(gè)組件即篩可。醫(yī)組件的接口游在整個(gè)應(yīng)用鐘系統(tǒng)中起決燙定性作用。棄接口設(shè)計(jì)不殊合理蘋(píng)的話(huà),喝不僅影響組把件本身的可憶重用性鄭,懇并且將影響番整個(gè)應(yīng)用系沃統(tǒng)的升級(jí)柔,弱縮短系統(tǒng)的蒙生命周期。默所以確定組惠件的接口要挑經(jīng)過(guò)深思熟煌慮迷,要暫使它能支持睬各種不同的叼應(yīng)用。林接口應(yīng)具有峽較高的通用寒性話(huà),休以提高整個(gè)竟應(yīng)用系統(tǒng)的仰復(fù)用能力喝,濾同時(shí)還要兼模顧簡(jiǎn)單和實(shí)花用性。舉例弟說(shuō)南,蛛如果需要定碎制一個(gè)組件哈訪問(wèn)特定的妥數(shù)據(jù)庫(kù)并將柳結(jié)果返回給訂用戶(hù)。若只胡是為該系統(tǒng)節(jié)設(shè)計(jì),可以晃將庫(kù)名、表笑名、訪庫(kù)語(yǔ)色句全部封裝腔在組件內(nèi)部賣(mài),粒這樣的組件衫接口簡(jiǎn)單找,途但重用性很迷小。若將庫(kù)貼名、表名等蘇作為組件的陡接口懷,題組件的重用貧性大大提高姐了者,智但接口復(fù)雜邀了悔,林不利于組件測(cè)的拆換。建厲議的做法是貌,如果希望腿系統(tǒng)有再次玻開(kāi)發(fā)或移植潮的潛力丈,服可以將庫(kù)表臘名作為接口恢,跪訪庫(kù)語(yǔ)句應(yīng)餡封裝在組件徐內(nèi)部項(xiàng)。報(bào)如果將訪庫(kù)隔權(quán)限交給用螞戶(hù)神,邁既不利于數(shù)欄據(jù)庫(kù)的安全楊性甚,層也會(huì)給應(yīng)用址程序帶來(lái)很轟大的負(fù)擔(dān)。澤組件的內(nèi)部腳實(shí)現(xiàn)細(xì)節(jié)不造能反映到接何口中慧,樂(lè)接口同內(nèi)部缸實(shí)現(xiàn)細(xì)節(jié)的生隔離程度越濱高伐,槐組件或應(yīng)用密發(fā)生變化對(duì)聞接口的影響逗就越小。在痕設(shè)計(jì)組件接歌口時(shí)煎,漢還要盡量估既計(jì)到將來(lái)可梳能出現(xiàn)的各費(fèi)種情況輩,繩力爭(zhēng)設(shè)計(jì)出訴具有高復(fù)用勾性、適應(yīng)性粉和靈活性的衣接口。央完成系統(tǒng)的屢詳細(xì)設(shè)計(jì)之劑后,接下來(lái)漆進(jìn)行組件的但開(kāi)發(fā)和測(cè)試評(píng)。組件不依壁賴(lài)于特定語(yǔ)效言,開(kāi)發(fā)擾者可根據(jù)實(shí)似際需要選擇籍使用VB、若VC或Ja產(chǎn)va作為開(kāi)群發(fā)工具。C匯OM組件的現(xiàn)開(kāi)發(fā)工作可菌委托給專(zhuān)門(mén)劍的開(kāi)發(fā)組。價(jià)組件的接口才一旦確定鋒,遙組件的開(kāi)發(fā)役和應(yīng)用系統(tǒng)協(xié)實(shí)現(xiàn)的其他柜工作可由各沫個(gè)專(zhuān)門(mén)小
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川德陽(yáng)廣漢市農(nóng)業(yè)技術(shù)推廣站廣漢市特色產(chǎn)業(yè)發(fā)展服務(wù)中心招聘2人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 四川2025年平昌縣事業(yè)單位招考高頻重點(diǎn)提升(共500題)附帶答案詳解
- 廈門(mén)市機(jī)關(guān)事務(wù)管理局補(bǔ)充招考2名非在編工作人員高頻重點(diǎn)提升(共500題)附帶答案詳解
- 南京市溧水區(qū)國(guó)企業(yè)招考25人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 華能山西綜合能源限責(zé)任公司招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- 北京航空航天大學(xué)宇航學(xué)院科研助理招考聘用通知高頻重點(diǎn)提升(共500題)附帶答案詳解
- 北京市朝陽(yáng)區(qū)2025下半年事業(yè)單位招聘149人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 北京市東城區(qū)2025年事業(yè)單位招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- 農(nóng)業(yè)部北京單位招聘應(yīng)屆高校畢業(yè)生歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 二零二五年度車(chē)輛抵押貸款服務(wù)合同范本3篇
- (試題)考試護(hù)理應(yīng)急預(yù)案題庫(kù)與答案
- 【閱讀提升】部編版語(yǔ)文五年級(jí)下冊(cè)第一單元閱讀要素解析 類(lèi)文閱讀課外閱讀過(guò)關(guān)(含答案)
- 2024年大學(xué)試題(管理類(lèi))-行政管理學(xué)筆試歷年真題薈萃含答案
- 園區(qū)招商引資方案提成方案
- 《爆破振動(dòng)測(cè)試技術(shù)》課件
- 醫(yī)療機(jī)構(gòu)規(guī)章制度目錄
- 中國(guó)地圖素材課件
- 中藥學(xué)知識(shí)歸納總結(jié)
- 彎道超車(chē)就趁寒假!-寒假指引主題班會(huì)課件
- 腸梗阻小講課
- 電子表格表格會(huì)計(jì)記賬憑證模板
評(píng)論
0/150
提交評(píng)論