版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
軟件工程方法與工具第一頁,共六十一頁,2022年,8月28日2.1軟件工程方法概述概念軟件工程包含技術(shù)和管理兩方面的內(nèi)容,是技術(shù)和管理緊密結(jié)合所形成的工程學(xué)科。通常將軟件開發(fā)全過程中使用的一整套技術(shù)方法的集合稱為方法學(xué)(methedology),也稱為范型(paradigm)。目前使用最廣泛的軟件工程方法學(xué):傳統(tǒng)方法(結(jié)構(gòu)化方法),面向?qū)ο蠓椒?。第二頁,共六十一頁?022年,8月28日2.1軟件工程方法概述三要素:方法、工具和過程。軟件工程方法為軟件開發(fā)提供了“如何做”的技術(shù);軟件工具為軟件工程方法提供了自動(dòng)的或半自動(dòng)的軟件支撐環(huán)境;過程是為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)框架,它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。第三頁,共六十一頁,2022年,8月28日2.1軟件工程方法概述結(jié)構(gòu)化方法也稱為生命周期方法學(xué)或結(jié)構(gòu)化范型。將軟件生命周期的全過程依次劃分為若干個(gè)階段,采用結(jié)構(gòu)化技術(shù)來完成每個(gè)階段的任務(wù)。特點(diǎn):
(1)強(qiáng)調(diào)自頂向下順序地完成軟件開發(fā)的各階段任務(wù);(2)結(jié)構(gòu)化方法要么面向行為,要么面向數(shù)據(jù),缺乏使兩者有機(jī)結(jié)合的機(jī)制。第四頁,共六十一頁,2022年,8月28日2.1軟件工程方法概述面向?qū)ο蠓椒ㄊ菍?shù)據(jù)和對(duì)數(shù)據(jù)的操作緊密地結(jié)合起來的方法。軟件開發(fā)過程是多次反復(fù)迭代的演化過程。面向?qū)ο蠓椒ㄔ诟拍詈捅硎痉椒ㄉ系囊恢滦?,保證了各項(xiàng)開發(fā)活動(dòng)之間的平滑過渡。對(duì)于大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng),使用面向?qū)ο蠓椒ǜ袃?yōu)勢(shì)。第五頁,共六十一頁,2022年,8月28日2.1軟件工程方法概述形式化方法形式化方法是一種基于形式化數(shù)學(xué)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。該過程的具體描述如圖所示。第六頁,共六十一頁,2022年,8月28日2.1軟件工程方法概述形式化方法的主要特點(diǎn)(1)軟件需求規(guī)格說明被細(xì)化為用數(shù)學(xué)記號(hào)表達(dá)的詳細(xì)的形式化規(guī)格說明;(2)設(shè)計(jì)、實(shí)現(xiàn)和單元測(cè)試等開發(fā)過程由一個(gè)變換開發(fā)過程代替。通過一系列變換將形式的規(guī)格說明細(xì)化成為程序。這種細(xì)化的過程如圖所示。第七頁,共六十一頁,2022年,8月28日
2.2面向?qū)ο蟮母拍钆c開發(fā)方法現(xiàn)實(shí)世界就是由各種對(duì)象組成的,如建筑物、人、汽車、動(dòng)物、植物等。復(fù)雜的對(duì)象可以由簡單的對(duì)象組成。在研究對(duì)象時(shí)主要考慮對(duì)象的屬性和行為,有些不同的對(duì)象會(huì)呈現(xiàn)相同或相似的屬性和行為,如轎車、卡車、面包車。通常將屬性及行為相同或相似的對(duì)象歸為一類。類可以看成是對(duì)象的抽象,代表了此類對(duì)象所具有的共有屬性和行為。第八頁,共六十一頁,2022年,8月28日2.2面向?qū)ο蟮母拍钆c開發(fā)方法Coad和Yourdon給出了“面向?qū)ο蟆钡囊粋€(gè)定義:
面向?qū)ο螅綄?duì)象+類+繼承+消息通信如果一個(gè)系統(tǒng)是使用這樣4個(gè)概念設(shè)計(jì)和實(shí)現(xiàn)的,則可認(rèn)為這個(gè)系統(tǒng)是面向?qū)ο蟮摹?/p>
第九頁,共六十一頁,2022年,8月28日對(duì)象對(duì)象是包含現(xiàn)實(shí)世界物體特征的抽象實(shí)體,它反映了系統(tǒng)為之保存信息和(或)與它交互的能力。例如,Student對(duì)象的數(shù)據(jù)可能有姓名、性別、出生日期、家庭住址、電話號(hào)碼等,其操作可能是對(duì)這些數(shù)據(jù)值的賦值及更改。第十頁,共六十一頁,2022年,8月28日對(duì)象對(duì)象與后面講的類具有幾乎完全相同的表示形式,主要差別是對(duì)象的名字下面要加一條下劃線。對(duì)象名有下列三種表示格式:(1)第一種格式是對(duì)象名在前,類名在后,中間用冒號(hào)連接。形如:
對(duì)象名:類名(2)第二種格式形如:
:類名這種格式用于尚未給對(duì)象命名的情況,注意,類名前的冒號(hào)不能省略。(3)第三種格式形如:
對(duì)象名第十一頁,共六十一頁,2022年,8月28日對(duì)象對(duì)象有兩個(gè)層次的概念:(1)現(xiàn)實(shí)生活中對(duì)象指的是客觀世界的實(shí)體。可以是可見的有形對(duì)象,如人、學(xué)生、汽車、房屋等;也可以是抽象的邏輯對(duì)象,如銀行帳號(hào),生日。(2)程序中對(duì)象就是一組變量和相關(guān)方法的集合,其中變量表明對(duì)象的狀態(tài),方法表明對(duì)象所具有的行為。第十二頁,共六十一頁,2022年,8月28日對(duì)象可以將程序中的對(duì)象分為5類:物理對(duì)象,角色,事件,交互,規(guī)格說明。
物理對(duì)象(PhysicalObjects)──物理對(duì)象是最易識(shí)別的對(duì)象,通??梢栽趩栴}領(lǐng)域的描述中找到,它們的屬性可以標(biāo)識(shí)和測(cè)量。例如,大學(xué)課程注冊(cè)系統(tǒng)中的學(xué)生對(duì)象;一個(gè)網(wǎng)絡(luò)管理系統(tǒng)中各種網(wǎng)絡(luò)物理資源對(duì)象(如開關(guān)、CPU和打印機(jī))都是物理對(duì)象。第十三頁,共六十一頁,2022年,8月28日對(duì)象(2)角色(Roles)──一個(gè)實(shí)體的角色也可以抽象成一個(gè)單獨(dú)的對(duì)象。角色對(duì)象的操作是由角色提供的技能。例如,一個(gè)面向?qū)ο笙到y(tǒng)中通常有“管理器”對(duì)象,它履行協(xié)調(diào)系統(tǒng)資源的角色。一個(gè)窗口系統(tǒng)中通常有“窗口管理器”對(duì)象,它扮演協(xié)調(diào)鼠標(biāo)器按鈕和其他窗口操作的角色。特別地,一個(gè)實(shí)際的物理對(duì)象可能同時(shí)承擔(dān)幾個(gè)角色。例如,一個(gè)退休教師同時(shí)扮演退休者和教師的角色。第十四頁,共六十一頁,2022年,8月28日對(duì)象(3)事件(Events)──一個(gè)事件是某種活動(dòng)的一次“出現(xiàn)”。例如“鼠標(biāo)”事件。一個(gè)事件對(duì)象通常是一個(gè)數(shù)據(jù)實(shí)體,它管理“出現(xiàn)”的重要信息。事件對(duì)象的操作主要用于對(duì)數(shù)據(jù)的存取。如“鼠標(biāo)”事件對(duì)象有諸如光標(biāo)坐標(biāo)、左右鍵、單擊,雙擊等信息。第十五頁,共六十一頁,2022年,8月28日對(duì)象(4)交互(Interactions)──交互表示了在兩個(gè)對(duì)象之間的關(guān)系,這種類型的對(duì)象類似于在數(shù)據(jù)庫設(shè)計(jì)時(shí)所涉及的“關(guān)系”實(shí)體。當(dāng)實(shí)體之間是多對(duì)多的關(guān)系時(shí),利用交互對(duì)象可將其簡化為兩個(gè)一對(duì)多的關(guān)系。例如,在大學(xué)課程注冊(cè)系統(tǒng)中,學(xué)生和課程之間的關(guān)系是多對(duì)多的關(guān)系,可設(shè)置一個(gè)“選課”交互對(duì)象來簡化它們之間的關(guān)系。第十六頁,共六十一頁,2022年,8月28日類與封裝類??梢詫F(xiàn)實(shí)生活中的對(duì)象經(jīng)過抽象,映射為程序中的對(duì)象。對(duì)象在程序中是通過一種抽象數(shù)據(jù)類型來描述的,這種抽象數(shù)據(jù)類型稱為類(Class)。為了讓計(jì)算機(jī)創(chuàng)建對(duì)象,必須先提供對(duì)象的定義,也就是先定義對(duì)象所屬的類。例如,可以將學(xué)生對(duì)象所屬的類定義為Student。類的圖形表示如圖所示。第十七頁,共六十一頁,2022年,8月28日類與封裝封裝。面向?qū)ο蟮姆庋b特性與其抽象特性密切相關(guān)。封裝是一種信息隱蔽技術(shù),就是利用抽象數(shù)據(jù)類型將數(shù)據(jù)和基于數(shù)據(jù)的操作封裝在一起。用戶只能看到對(duì)象的封裝界面信息,對(duì)象的內(nèi)部細(xì)節(jié)對(duì)用戶是隱蔽的。封裝的定義是:(1)清楚的邊界,所有對(duì)象的內(nèi)部信息被限定在這個(gè)邊界內(nèi);(2)接口,即對(duì)象向外界提供的方法,外界可以通過這些方法與對(duì)象進(jìn)行交互;(3)受保護(hù)的內(nèi)部實(shí)現(xiàn),即軟件對(duì)象功能的實(shí)現(xiàn)細(xì)節(jié),實(shí)現(xiàn)細(xì)節(jié)不能從類外訪問。第十八頁,共六十一頁,2022年,8月28日繼承繼承。繼承是一種聯(lián)結(jié)類的層次模型,為類的重用提供了方便,它提供了明確表述不同類之間共性的方法。我們將公共類稱為超類(superclass)、父類(fatherclass)、祖先(ancestor)或基類(baseclass),而從其繼承的類稱為子類(subclasses)、后代(deslendane)或?qū)С鲱悾╠erivedclass)。第十九頁,共六十一頁,2022年,8月28日多態(tài)根據(jù)為請(qǐng)求提供服務(wù)的對(duì)象不同可以得到不同的行為,這種現(xiàn)象稱為多態(tài)。在運(yùn)行時(shí)對(duì)類進(jìn)行實(shí)例化,并調(diào)用與實(shí)例化對(duì)象相應(yīng)的方法,稱為動(dòng)態(tài)綁定、后期綁定或運(yùn)行時(shí)綁定。相應(yīng)地,如果方法的調(diào)用是在編譯時(shí)確定的,則稱為是靜態(tài)綁定、前期綁定或編譯時(shí)綁定。
通過在子類中覆蓋父類的方法實(shí)現(xiàn)多態(tài)。第二十頁,共六十一頁,2022年,8月28日消息通信消息是一個(gè)對(duì)象與另一個(gè)對(duì)象的通信單元,是要求某個(gè)對(duì)象執(zhí)行類中定義的某個(gè)操作的規(guī)格說明。發(fā)送給一個(gè)對(duì)象的消息定義了一個(gè)方法名和一個(gè)參數(shù)表(可能是空的),并指定某一個(gè)對(duì)象。一個(gè)對(duì)象接收到消息,則調(diào)用消息中指定的方法,并將形式參數(shù)與參數(shù)表中相應(yīng)的值結(jié)合起來。第二十一頁,共六十一頁,2022年,8月28日面向?qū)ο蟮拈_發(fā)方法面向?qū)ο筌浖_發(fā)方法的特征方法的唯一性
即方法是對(duì)軟件開發(fā)過程所有階段進(jìn)行綜合考慮而得到的。從生存期的一個(gè)階段到下一個(gè)階段的高度連續(xù)性
即生存期后一階段的成果只是在前一階段成果的補(bǔ)充和修改。把面向?qū)ο蠓治?OOA)、面向?qū)ο笤O(shè)計(jì)(OOD)和面向?qū)ο蟪绦蛟O(shè)計(jì)(OOP)集成到生存期的相應(yīng)階段。第二十二頁,共六十一頁,2022年,8月28日Rumbaugh方法
Rumbaugh和他的同事提出的對(duì)象模型化技術(shù)(OMT)用于分析、系統(tǒng)設(shè)計(jì)和對(duì)象級(jí)設(shè)計(jì)。分析活動(dòng)建立三個(gè)模型:對(duì)象模型(描述對(duì)象、類、層次和關(guān)系);動(dòng)態(tài)模型(描述對(duì)象和系統(tǒng)的行為);功能模型(類似于高層的DFD,描述穿越系統(tǒng)的信息流)。面向?qū)ο蟮拈_發(fā)方法第二十三頁,共六十一頁,2022年,8月28日Coad和Yourdon方法
Coad和Yourdon方法常常被認(rèn)為是最容易學(xué)習(xí)的OOA方法。建模符號(hào)相當(dāng)簡單,其OOA過程如下:(1)使用“要找什么”準(zhǔn)則標(biāo)識(shí)對(duì)象;(2)定義對(duì)象之間的一般化/特殊化結(jié)構(gòu)(又稱為分類結(jié)構(gòu));(3)定義對(duì)象之間的整體/部分結(jié)構(gòu)(又稱為組合結(jié)構(gòu));(4)標(biāo)識(shí)主題;(5)定義對(duì)象的屬性及對(duì)象之間的實(shí)例連接;(6)定義服務(wù)及對(duì)象之間的消息連接。面向?qū)ο蟮拈_發(fā)方法第二十四頁,共六十一頁,2022年,8月28日Booch方法
包含“微開發(fā)過程”和“宏開發(fā)過程”兩個(gè)過程。OOA宏觀開發(fā)過程如下:標(biāo)識(shí)類和對(duì)象;標(biāo)識(shí)類和對(duì)象的語義;標(biāo)識(shí)類和對(duì)象間的關(guān)系;進(jìn)行一系列精化;實(shí)現(xiàn)類和對(duì)象。面向?qū)ο蟮拈_發(fā)方法第二十五頁,共六十一頁,2022年,8月28日J(rèn)acobson方法也稱為OOSE(面向?qū)ο筌浖こ?,其特點(diǎn)是特別強(qiáng)調(diào)使用用例——用以描述用戶和產(chǎn)品或系統(tǒng)間如何交互的場(chǎng)景。過程如下:標(biāo)識(shí)系統(tǒng)的用戶和他們的整體責(zé)任構(gòu)造需求模型構(gòu)造分析模型
面向?qū)ο蟮拈_發(fā)方法第二十六頁,共六十一頁,2022年,8月28日2.3統(tǒng)一建模語言UML簡介面向?qū)ο蟮慕UZ言很多,目前使用最廣泛的是統(tǒng)一建模語言(UML,UnifiedModelingLanguage);它將Booch、Rumbaugh和Jacobson等各自獨(dú)立的OOA和OOD方法中最優(yōu)秀的特色組合成一個(gè)統(tǒng)一的方法。第二十七頁,共六十一頁,2022年,8月28日UML的產(chǎn)生和發(fā)展
UML(UnifiedModelingLanguage)的概念于1996年由面向?qū)ο蠓椒I(lǐng)域的三位著名專家GradyBooch,JamesRumbaugh和IvarJacobson提出的。1996年6月和10月分別發(fā)布了UML0.9,UML0.91。1997年1月,UML1.0被提交給對(duì)象管理組織OMG。1997年9月,提交UML1.1,1997年11月被OMG采納作為基于面向?qū)ο蠹夹g(shù)的標(biāo)準(zhǔn)建模語言。1998、2000、2001、2003、2005年分別發(fā)布了UML1.2、UML1.3、UML1.4、UML1.5、UML2.0。2007年發(fā)布了,。2009年發(fā)布了UML2.2第二十八頁,共六十一頁,2022年,8月28日UML的產(chǎn)生和發(fā)展第二十九頁,共六十一頁,2022年,8月28日(1)統(tǒng)一標(biāo)準(zhǔn)
UML不僅統(tǒng)一了Booch、OMT和OOSE等方法中的基本概念,還吸取了面向?qū)ο蠹夹g(shù)領(lǐng)域中其他流派的長處,其中也包括非OO方法的影響。已經(jīng)成為OMG的標(biāo)準(zhǔn)。(2)面向?qū)ο?/p>
UML支持面向?qū)ο蠹夹g(shù)的主要概念,它提供了一批基本的表示模型元素的圖形和方法,能簡潔明了地表達(dá)面向?qū)ο蟮母鞣N概念和模型元素。UML的特點(diǎn)第三十頁,共六十一頁,2022年,8月28日(3)可視化,表達(dá)能力強(qiáng)大UML是一種圖形化語言,用UML的模型圖形能清晰地表示系統(tǒng)的邏輯模型或?qū)崿F(xiàn)模型。UML還提供了語言的擴(kuò)展機(jī)制,用戶可以根據(jù)需要增加定義自己的構(gòu)造型、標(biāo)記值和約束等。(4)獨(dú)立于過程
UML是系統(tǒng)建模的語言,不依賴特定的開發(fā)過程。UML的特點(diǎn)第三十一頁,共六十一頁,2022年,8月28日(5)容易掌握使用
UML概念明確,建模表示法簡潔明了,圖形結(jié)構(gòu)清晰,容易掌握使用。(6)與編程語言的關(guān)系
支持UML的一些CASE工具(如Rose)可以根據(jù)UML所建立的系統(tǒng)模型自動(dòng)產(chǎn)生Java、C++等代碼框架。UML的特點(diǎn)第三十二頁,共六十一頁,2022年,8月28日2.4軟件工具概述軟件工具的概念軟件工具的發(fā)展軟件工具的分類常用軟件工具介紹第三十三頁,共六十一頁,2022年,8月28日軟件工具的概念軟件工具是指能支持軟件生存周期中某一階段(如系統(tǒng)定義、需求分析、設(shè)計(jì)、編碼、測(cè)試或維護(hù)等)的需要而使用的軟件工具。早期的軟件工具主要用來輔助程序員編程,如編輯程序、編譯程序、排錯(cuò)程序等。在提出了軟件工程的概念以后,出現(xiàn)了一批軟件工具來輔助軟件工程實(shí)施,這些軟件工具涉及到軟件開發(fā)、維護(hù)、管理過程中的各項(xiàng)活動(dòng),并輔助這些活動(dòng)高質(zhì)量地進(jìn)行。軟件工具通常也稱為CASE(計(jì)算機(jī)輔助軟件工程,computeraidedsoftwareengineering)工具。第三十四頁,共六十一頁,2022年,8月28日軟件工具的發(fā)展50年代末期出現(xiàn)了程序設(shè)計(jì)語言,因此,出現(xiàn)了編輯程序、匯編程序和各種程序語言的編譯程序或解釋程序、連接程序、裝配程序、排錯(cuò)程序等輔助軟件編程活動(dòng)的工具。60年代末提出軟件工程的概念后,支持軟件開發(fā)、維護(hù)、管理等過程的各種活動(dòng)的工具也應(yīng)運(yùn)而生。例如,支持需求分析活動(dòng)的需求分析工具、支持維護(hù)過程的維護(hù)工具和理解工具、支持管理過程中進(jìn)度管理活動(dòng)的PERT工具、支持軟件過程的質(zhì)量保證工具等。第三十五頁,共六十一頁,2022年,8月28日軟件工具的發(fā)展80年代中期提出了軟件過程的新概念,人們開始研制過程建模的工具、過程評(píng)價(jià)工具。如今,軟件工具重視用戶界面的設(shè)計(jì),不斷地采用新理論和新技術(shù),正由單個(gè)工具向多個(gè)工具集成的方向發(fā)展,且注重工具間的平滑過渡和互操作性。第三十六頁,共六十一頁,2022年,8月28日軟件工具的分類軟件工具的種類繁多,很難有一種統(tǒng)一的分類方法,通常從不同的觀點(diǎn)來進(jìn)行分類。由于大多數(shù)軟件工具僅支持軟件生存周期過程中的某些特定的活動(dòng),所以通??梢园窜浖^程的活動(dòng)來進(jìn)行分類。如:支持軟件開發(fā)過程的工具:主要有需求分析工具、設(shè)計(jì)工具(通常還可以分為概要設(shè)計(jì)工具和詳細(xì)設(shè)計(jì)工具)、編碼工具、排錯(cuò)工具、測(cè)試工具等。(2)支持軟件維護(hù)過程的工具:主要有版本控制工具、文檔分析工具、信息庫開發(fā)工具、逆向工程工具、再工程工具等。(3)支持軟件管理過程和支持過程的工具:主要有項(xiàng)目管理工具、配置管理工具、軟件評(píng)價(jià)工具等。第三十七頁,共六十一頁,2022年,8月28日常用軟件工具介紹支持軟件開發(fā)過程的工具主要有需求分析工具、設(shè)計(jì)工具、編碼工具、排錯(cuò)工具、測(cè)試工具等。1.需求分析工具需求分析工具的功能與所采用的系統(tǒng)開發(fā)方法密不可分的。按所采用的系統(tǒng)開發(fā)方法,可以將需求分析工具分為兩類:結(jié)構(gòu)化圖形工具箱,面向?qū)ο竽P突ぞ呒胺治龉ぞ?。第三十八頁,共六十一頁?022年,8月28日常用軟件工具介紹1.需求分析工具(1)結(jié)構(gòu)化圖形工具箱這類工具需要通過數(shù)據(jù)流程圖DFD進(jìn)行功能分析。包括DFD圖形工具,實(shí)體-關(guān)系圖(E-R)圖形工具,Jackson圖形工具,Warnier/Orr圖形工具等等。(2)面向?qū)ο竽P突ぞ呒胺治龉ぞ哌@類工具需要通過對(duì)象建立構(gòu)造系統(tǒng)的抽象模型,一般包括圖形工具、對(duì)象瀏覽器及類庫管理系統(tǒng)。第三十九頁,共六十一頁,2022年,8月28日常用軟件工具介紹有代表性的商品化工具有:RationalRose,由RationalCorporation開發(fā)。PowerDesigner,由Sybase開發(fā)。Visio,由Microsoft開發(fā)。ArgoUML,開源工具。ControlCenter,由TogetherSoft開發(fā)。EnterpriseArchitect,由SparxSystems開發(fā)。ObjectTechnologyWorkbench(OTW),由OTWSoftware開發(fā)。SystemArchitect,由PopkinSoftware開發(fā)。UMLStudio,由PragsoftCorporation開發(fā)。VisualUML,由VisualObjectModelers開發(fā)。第四十頁,共六十一頁,2022年,8月28日常用軟件工具介紹設(shè)計(jì)工具設(shè)計(jì)階段分為概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。對(duì)應(yīng)于概要設(shè)計(jì)活動(dòng)和詳細(xì)設(shè)計(jì)活動(dòng),設(shè)計(jì)工具通??煞譃楦乓O(shè)計(jì)工具和詳細(xì)設(shè)計(jì)工具。(1)概要設(shè)計(jì)工具概要設(shè)計(jì)工具用以輔助設(shè)計(jì)人員設(shè)計(jì)目標(biāo)軟件的體系結(jié)構(gòu)、控制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)。軟件的體系結(jié)構(gòu)通常用模塊結(jié)構(gòu)圖來描述,它指明軟件系統(tǒng)的模塊組成及其調(diào)用關(guān)系,模塊的接口定義等。模塊的數(shù)據(jù)結(jié)構(gòu)通常用實(shí)體-關(guān)系圖來描述。第四十一頁,共六十一頁,2022年,8月28日常用軟件工具介紹有代表性的商品化工具有:RationalRose:由Rational開發(fā),是基于UML的設(shè)計(jì)工具,它支持體系結(jié)構(gòu)設(shè)計(jì)中的所有方面。Adalon:由Synthis公司開發(fā),是用于設(shè)計(jì)和構(gòu)建專門基于Web構(gòu)件體系結(jié)構(gòu)的特定設(shè)計(jì)工具。Objectif:由microTOOLGmbH開發(fā),是一個(gè)基于UML的設(shè)計(jì)工具,它可以導(dǎo)致服從基于構(gòu)件的軟件工程的各種體系結(jié)構(gòu)(如,Coldfusion、J2EE和Fusebox等)。第四十二頁,共六十一頁,2022年,8月28日常用軟件工具介紹(2)詳細(xì)設(shè)計(jì)工具詳細(xì)設(shè)計(jì)工具用以輔助設(shè)計(jì)人員設(shè)計(jì)模塊的算法和內(nèi)部實(shí)現(xiàn)細(xì)節(jié)。詳細(xì)設(shè)計(jì)規(guī)范的圖形描述方法通常有輸入-處理-輸出(input-process-output,IPO)圖、問題分析圖(problemanalysisdiagram,PAD)、盒圖(也稱NS圖)、流程圖(flowchart,F(xiàn)C)等。詳細(xì)設(shè)計(jì)規(guī)范的語言描述方法通常有程序設(shè)計(jì)語言(programdesignlanguage,PDL)、結(jié)構(gòu)化語言等。其表格描述方法通常有判定表和判定樹。第四十三頁,共六十一頁,2022年,8月28日常用軟件工具介紹3.編碼工具與調(diào)試工具輔助程序員進(jìn)行編碼活動(dòng)的工具有編碼工具和排錯(cuò)工具。編碼工具輔助程序員用某種程序設(shè)計(jì)語言編制源程序,并對(duì)源程序進(jìn)行翻譯,最終轉(zhuǎn)換成可執(zhí)行的代碼。因此,編碼工具通常與編碼所使用的程序語言密切相關(guān)。排錯(cuò)工具用來輔助程序員尋找源程序中錯(cuò)誤的性質(zhì)和原因,并確定其出錯(cuò)的位置。第四十四頁,共六十一頁,2022年,8月28日常用軟件工具介紹4.測(cè)試工具可將測(cè)試工具分為程序單元測(cè)試工具、組裝測(cè)試工具和系統(tǒng)測(cè)試工具。程序單元測(cè)試工具早期的程序單元測(cè)試工具有三類:程序靜態(tài)分析工具、動(dòng)態(tài)分析工具和自動(dòng)測(cè)試支持工具。目前最流行的單元測(cè)試工具是xUnit系列框架,根據(jù)語言不同分為JUnit(java),CppUnit(C++),DUnit
(Delphi
),NUnit(.net),PhpUnit(Php
)等等。第四十五頁,共六十一頁,2022年,8月28日常用軟件工具介紹(2)組裝測(cè)試工具組裝測(cè)試也稱為集成測(cè)試或聯(lián)合測(cè)試,在單元測(cè)試的基礎(chǔ)上,將所有模塊按照設(shè)計(jì)要求組裝成為子系統(tǒng)或系統(tǒng),進(jìn)行組裝測(cè)試。實(shí)踐表明,一些模塊雖然能夠單獨(dú)地工作,但并不能保證連接起來也能正常地工作。程序在某些局部反映不出來的問題,在全局上很可能暴露出來,影響功能的實(shí)現(xiàn)。第四十六頁,共六十一頁,2022年,8月28日常用軟件工具介紹有代表性的組裝測(cè)試工具有:WinRunner,由Mercury
Interactive公司開發(fā),是一種企業(yè)級(jí)的功能測(cè)試工具,用于檢測(cè)應(yīng)用程序是否能夠達(dá)到預(yù)期的功能及正常運(yùn)行。IBM
Rational
Robot
是業(yè)界最頂尖的功能測(cè)試工具。Borland
SilkTest
2006屬于軟件功能測(cè)試工具,是Borland公司所提出軟件質(zhì)量管理解決方案的套件之一。TestDirector
是業(yè)界第一個(gè)基于Web的測(cè)試管理系統(tǒng),它可以在公司內(nèi)部或外部進(jìn)行全球范圍內(nèi)測(cè)試的管理。第四十七頁,共六十一頁,2022年,8月28日常用軟件工具介紹(3)系統(tǒng)測(cè)試工具系統(tǒng)測(cè)試是對(duì)整個(gè)基于計(jì)算機(jī)的系統(tǒng)進(jìn)行一系列不同考驗(yàn)的測(cè)試。除了功能測(cè)試之外,負(fù)載測(cè)試、性能測(cè)試、可靠性測(cè)試和其他一些測(cè)試一般都是在系統(tǒng)測(cè)試期間進(jìn)行的。第四十八頁,共六十一頁,2022年,8月28日常用軟件工具介紹有代表性的系統(tǒng)測(cè)試工具有:LoadRunner
是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。通過以模擬上千萬用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來確認(rèn)和查找問題,LoadRunner
能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。OTF(ObjectTestingFramework),由MCG軟件公司開發(fā),為Smalltalk對(duì)象的測(cè)試提供管理框架。QADirector,由CompuwareCorp.,為管理測(cè)試過程的各個(gè)階段提供簡單的控制。TestWorks,由SoftwareResearch,Inc.開發(fā),包含一個(gè)完整的測(cè)試工具集,包括測(cè)試管理與測(cè)試報(bào)告。第四十九頁,共六十一頁,2022年,8月28日2.5UML建模工具RationalRoseRationalRose(簡稱Rose)是美國IBMRational軟件公司在軟件工程專家GradyBooch、IvarJacobson、JimRumbaugh等人主持下研制的圖形化、集成化OOCASE產(chǎn)品;支持面向?qū)ο筌浖到y(tǒng)的開發(fā)。利用ROSE可以建立用UML描述的軟件系統(tǒng)的模型,可以自動(dòng)生成和維護(hù)C++、JAVA、VB
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年供應(yīng)商協(xié)作協(xié)議
- 2024年合伙企業(yè)股權(quán)轉(zhuǎn)讓協(xié)議
- 2024年中小企業(yè)借款協(xié)議范本
- 2024年商業(yè)倉庫租賃協(xié)議書
- 2024年中央空調(diào)定制協(xié)議
- 賽馬課程設(shè)計(jì)幼兒園
- 2024至2030年中國菊花菜數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024至2030年中國陶瓷餐巾架數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024至2030年中國木皮廚柜行業(yè)投資前景及策略咨詢研究報(bào)告
- 2024至2030年中國基層處理劑行業(yè)投資前景及策略咨詢研究報(bào)告
- 江蘇省南京市建鄴區(qū)2024-2025學(xué)年九年級(jí)上學(xué)期期中考試物理試題(無答案)
- 中小學(xué)師德師風(fēng)建設(shè)各項(xiàng)制度匯編
- 廣東省珠海市子期中學(xué)、梅華中學(xué) 2024-2025 學(xué)年上學(xué)期期中考試七年級(jí)數(shù)學(xué)試題(無答案)
- 2024秋期河南開放大學(xué)本科《消費(fèi)者權(quán)益保護(hù)法》一平臺(tái)無紙化考試(形考任務(wù)1至3+我要考試)試題及答案
- 公務(wù)員2024年國考申論真題(地市級(jí))及參考答案
- 2024年河南省信陽市招才引智綠色通道招聘市直事業(yè)單位人員183人高頻難、易錯(cuò)點(diǎn)500題模擬試題附帶答案詳解
- 民用無人機(jī)操控員執(zhí)照(CAAC)考試復(fù)習(xí)重點(diǎn)題及答案
- 廣西南寧市第十四中學(xué)2023-2024學(xué)年七年級(jí)上學(xué)期期中地理試題
- 2024-2030年中國應(yīng)急產(chǎn)業(yè)市場(chǎng)發(fā)展分析及競爭形勢(shì)與投資機(jī)會(huì)研究報(bào)告
- 2024年中國電動(dòng)鼻毛器市場(chǎng)調(diào)查研究報(bào)告
- 2025年高考語文復(fù)習(xí)備考復(fù)習(xí)策略講座
評(píng)論
0/150
提交評(píng)論