freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程實(shí)驗(yàn)指導(dǎo)(編輯修改稿)

2024-08-23 03:28 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 課堂案例中所采用的軟件開發(fā)過(guò)程,在建模工具的支持下,選擇一個(gè)簡(jiǎn)單的軟件系統(tǒng)進(jìn)行建模,并寫出實(shí)驗(yàn)報(bào)告。實(shí)驗(yàn)報(bào)告需要有:Use Case圖、順序圖(Sequence Diagram)和協(xié)作圖(Collaboration Diagram)、類圖以及模型自動(dòng)生成的代碼。五、實(shí)驗(yàn)步驟(僅供參考):《用UML模型實(shí)現(xiàn)XXXXX系統(tǒng)》在具體建模前,先簡(jiǎn)單了解一下Rational ROSE軟件。Rational ROSE的界面分為三個(gè)部分——Browser窗口、Diagram窗口和Document窗口。Browser窗口用來(lái)瀏覽、創(chuàng)建、刪除和修改模型中的模型元素;Diagram窗口用來(lái)顯示和創(chuàng)作模型的各種圖;而Document窗口則是用來(lái)顯示和書寫各個(gè)模型元素的文檔注釋。如果需要建造一個(gè)軟件系統(tǒng)模型,首先必須考察清楚用戶需求,也就是軟件系統(tǒng)的功能,這是下一步開發(fā)的基礎(chǔ)。用戶需求以后的工作就是分析系統(tǒng)的靜態(tài)結(jié)構(gòu),以此了解要實(shí)現(xiàn)這些需求,系統(tǒng)必須具備哪些功能。確定系統(tǒng)的結(jié)構(gòu)后,就是設(shè)計(jì)工作。需要分析系統(tǒng)成分如何相互配合以實(shí)現(xiàn)系統(tǒng)功能(即系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu)),同時(shí)還必須考慮與實(shí)現(xiàn)環(huán)境有關(guān)的細(xì)節(jié),比如用什么語(yǔ)言,在什么操作系統(tǒng)上等。設(shè)計(jì)工作細(xì)化到一定程度,就可以實(shí)現(xiàn)編碼。最后的工作,就是測(cè)試和維護(hù)。這個(gè)順序大體上就是“功能——靜態(tài)結(jié)構(gòu)——?jiǎng)討B(tài)結(jié)構(gòu)——編碼——測(cè)試——維護(hù)”。以下將通過(guò)一個(gè)簡(jiǎn)單的例子:一個(gè)ToDo(待辦事宜)表的維護(hù)工具,來(lái)學(xué)習(xí)一下UML這種語(yǔ)言在軟件系統(tǒng)建造的全過(guò)程中所起的作用,并初步了解一下ROSE的用法。這個(gè)軟件可以為用戶創(chuàng)建、刪除和管理ToDo信息。ToDo表的信息存貯在文件系統(tǒng)中。 步驟1:確定用戶需求和系統(tǒng)功能首先,需要識(shí)別系統(tǒng)的用戶和相關(guān)的外部系統(tǒng),在UML中,它們被稱為Actor(角色)。識(shí)別Actor很重要,它可以幫助界定軟件系統(tǒng)的邊界,引導(dǎo)發(fā)掘用戶的需求,輔助設(shè)計(jì)用戶界面,是需求分析階段的第一步。對(duì)于本例,有兩個(gè)Actor:ToDo User(系統(tǒng)的用戶) 和 FileSystem(相關(guān)外部系統(tǒng))。接下來(lái),針對(duì)每個(gè)Actor,開始分析系統(tǒng)的Use Case(用例)。Use Case是一個(gè)UML中非常重要的概念,在使用UML的整個(gè)軟件開發(fā)過(guò)程中,Use Case處于一個(gè)中心地位。 Use Case就是對(duì)系統(tǒng)功能的描述,不過(guò)一個(gè)Use Case描述的是整個(gè)系統(tǒng)功能的一部分,這一部分一定是在邏輯上相對(duì)完整的功能流程。 在使用UML的開發(fā)過(guò)程中,需求是用Use Case來(lái)表達(dá)的,界面是在Use Case的輔助下設(shè)計(jì)的,很多類是根據(jù)Use Case來(lái)發(fā)現(xiàn)的,測(cè)試實(shí)例是根據(jù)Use Case來(lái)生成的,包括整個(gè)開發(fā)的管理和任務(wù)分配,也是依據(jù)Use Case來(lái)組織的。對(duì)于每個(gè)Actor來(lái)說(shuō),它都要使用系統(tǒng)的某項(xiàng)功能,所以識(shí)別和分析Use Case,要對(duì)于每個(gè)Actor來(lái)逐個(gè)進(jìn)行。對(duì)于ToDo User,可以輕易的識(shí)別出兩個(gè)Use Case:Add Task 和 Remove Task,Use 。ToDo User主動(dòng)使用這兩個(gè)Use Case所描述的系統(tǒng)功能,所以在Use Case圖上,ToDo User和這兩個(gè)Use Case的關(guān)系是用從ToDo User發(fā)出的箭頭來(lái)表示的。對(duì)于FileSystem,識(shí)別出的也是同樣的兩個(gè)Use Case,不過(guò)這次箭頭從Use Case指向FileSystem,表示FileSystem是被動(dòng)的。Use Case可以用很多方式來(lái)描述,可以用自然語(yǔ)言,可以用形式化語(yǔ)言,也可以用各種圖示。在UML中,通常用兩種圖來(lái)描述Use Case,它們就是順序圖(Sequence Diagram)和協(xié)作圖(Collaboration Diagram)。 系統(tǒng)的Use Case圖 從面向?qū)ο蟮慕嵌葋?lái)看,系統(tǒng)的功能是由一組對(duì)象通過(guò)相互發(fā)送消息來(lái)完成的,順序圖和協(xié)作圖就是通過(guò)描述這樣的對(duì)象和消息來(lái)描述系統(tǒng)的動(dòng)態(tài)行為的。 現(xiàn)在用一個(gè)順序圖來(lái)描述Use Case AddTask。AddTask的功能是向ToDo表中加入一個(gè)Task項(xiàng),它的步驟應(yīng)該是: 打開加入Task項(xiàng)的窗口; 輸入相應(yīng)信息; 生成一個(gè)Task對(duì)象; 把這個(gè)Task加入到Task表中。 所以。圖中,方塊表示一個(gè)對(duì)象,方塊中的文字中冒號(hào)之前的部分是對(duì)象的名字,冒號(hào)之后的是對(duì)象所屬的類的名字。方塊下面的豎直虛線是對(duì)象的生命線,表示對(duì)象按照從上到下的時(shí)間軸的在某段時(shí)間內(nèi)存在。對(duì)象間的箭頭表示對(duì)象之間的消息通訊。而那些狹長(zhǎng)的長(zhǎng)方塊表示某個(gè)操作方法執(zhí)行的時(shí)間和調(diào)用關(guān)系。順序圖有一個(gè)孿生兄弟——協(xié)作圖。這兩種圖描述的其實(shí)是同一種東西,即實(shí)現(xiàn)某種系統(tǒng)功能的一組對(duì)象和它們之間的消息傳遞。不過(guò)在順序圖中,時(shí)間是作為一個(gè)顯式的因素出現(xiàn)的。順序圖在構(gòu)造實(shí)時(shí)系統(tǒng)時(shí)特別有用。而在協(xié)作圖中,沒(méi)有顯式的時(shí)間因素,但是對(duì)象之間的關(guān)聯(lián)是一目了然的,這對(duì)在一組相互關(guān)聯(lián)的對(duì)象的語(yǔ)境中考察它們的消息傳遞是很有幫助的。順序圖和協(xié)作圖是對(duì)同一事物的不同角度的考察。 系統(tǒng)的順序圖 系統(tǒng)的協(xié)作圖從Use Case自然語(yǔ)言的描述得到了它的順序圖,從順序圖中可以發(fā)現(xiàn)許多類。有一個(gè)窗口,所以需要有一個(gè)對(duì)應(yīng)的窗口類;有一個(gè)Task對(duì)象,相應(yīng)的就得有一個(gè)Task類,類似的,Tasks這個(gè)用來(lái)管理和組織Task的集合對(duì)象也是必須的。通過(guò)分析Use Case,構(gòu)造它的順序圖描述,再加上傳統(tǒng)的對(duì)問(wèn)題域中的對(duì)象和類的考察,可以發(fā)現(xiàn)大多數(shù)和系統(tǒng)相關(guān)的類。步驟2:分析系統(tǒng)的靜態(tài)結(jié)構(gòu)——類的分析和設(shè)計(jì)靜態(tài)結(jié)構(gòu)分析通過(guò)分析Use Case和問(wèn)題域,得到了類?,F(xiàn)在需要分析這些類的屬性、操作和它們之間的關(guān)系,即系統(tǒng)的靜態(tài)結(jié)構(gòu)。屬性就是對(duì)象必須要存貯的信息,而類的操作,則可以通過(guò)順序圖中向?qū)ο蟀l(fā)送的消息來(lái)識(shí)別。系統(tǒng)的靜態(tài)結(jié)構(gòu)主要用類圖來(lái)表示。在類圖中,類用一個(gè)方框來(lái)表示,這個(gè)方框用橫線分為三個(gè)部分,第一部分是類的名字,第二部分是類的屬性,第三部分是類的操作。類之間的關(guān)聯(lián)用一條連接類方框的橫線來(lái)表示。一端有箭頭的橫線表示單向關(guān)聯(lián),沒(méi)有箭頭的表示雙向關(guān)聯(lián)。對(duì)類之間關(guān)聯(lián)的良好分析對(duì)以后系統(tǒng)的實(shí)現(xiàn)和擴(kuò)充都有非常大的幫助。 系統(tǒng)的類圖面向?qū)ο筌浖こ痰囊粋€(gè)很大的好處就是在分析和設(shè)計(jì)之間沒(méi)有什么明顯的區(qū)別,更不會(huì)有傳統(tǒng)軟件工程中在分析和設(shè)計(jì)之間的語(yǔ)義上的鴻溝。在分析進(jìn)行到一定程度時(shí),把具體實(shí)現(xiàn)環(huán)境的因素考慮進(jìn)來(lái),就自然過(guò)渡到了設(shè)計(jì)階段。由于本例使用文件系統(tǒng)存貯ToDo表的信息,所以需要一個(gè)CFile類來(lái)封裝文件系統(tǒng)的功能和操作。至此,實(shí)例的靜態(tài)結(jié)構(gòu)分析和設(shè)計(jì)已經(jīng)有了初步的成果。接下來(lái),可以根據(jù)這些成果分析和設(shè)計(jì)系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu)。這包括細(xì)化和修改Use Case的描述,比如把類的操作和對(duì)象之間的消息相對(duì)應(yīng)、充填參數(shù)等等,還有為比較復(fù)雜的類設(shè)計(jì)狀態(tài)圖等工作。因?yàn)檫@個(gè)例子比較簡(jiǎn)單,沒(méi)有什么比較復(fù)雜的類,所以沒(méi)有必要設(shè)計(jì)狀態(tài)圖,只需要細(xì)化一下Use Case的順序圖就可以了。這些分析和設(shè)計(jì)的工作經(jīng)常是相互影響和促進(jìn)的。常常會(huì)在分析動(dòng)態(tài)結(jié)構(gòu)的時(shí)候,發(fā)現(xiàn)漏掉了一個(gè)類、一個(gè)屬性,或者需要加上一個(gè)操作;而隨著對(duì)靜態(tài)結(jié)構(gòu)的進(jìn)一步深入刻畫,對(duì)類之間的關(guān)聯(lián)、消息傳遞的設(shè)計(jì)也會(huì)不斷發(fā)生變化。所以需要不斷的對(duì)設(shè)計(jì)方案進(jìn)行深化和細(xì)化,直到達(dá)到一個(gè)穩(wěn)定的狀態(tài),這時(shí)就可以考慮系統(tǒng)的實(shí)現(xiàn)了。步驟3:建立實(shí)現(xiàn)模型在實(shí)現(xiàn)模型中,用來(lái)定義一些組成軟件系統(tǒng)的組件,例如DLL庫(kù),EXE文件,Java Applet,ActiveX Control,Web頁(yè)面等等。定義這些部件和它們之間的關(guān)系,對(duì)代碼的自動(dòng)生成、軟件系統(tǒng)的配置、測(cè)試管理、軟件的打包發(fā)行等等都有很大的好處。對(duì)于本例,只有一個(gè)部件——最終的EXE文件ToDoList。在Rational ROSE中的Component View包中,創(chuàng)建這個(gè)組件,然后可以將各個(gè)類拖動(dòng)到這個(gè)組件上,表示這些類最終是用這個(gè)組件實(shí)現(xiàn)的。步驟4:代碼的自動(dòng)生成Rational ROSE可以自動(dòng)生成C++、Java、CORBA IDL、Visual Basic、Visual C++、Oracle Schema等等不同語(yǔ)言和系統(tǒng)的代碼,并且可以進(jìn)行“雙向工程”——模型和代碼之間的雙向轉(zhuǎn)換,大大減輕了代碼書寫的工作。 附錄一:實(shí)驗(yàn)要求軟件工程實(shí)驗(yàn)要求學(xué)生采用“項(xiàng)目小組”的形式,結(jié)合具體的開發(fā)項(xiàng)目進(jìn)行設(shè)計(jì)。具體要求如下:1.每個(gè)班按項(xiàng)目小組進(jìn)行分組,每組不得超過(guò)3人;2.每個(gè)項(xiàng)目小組選出項(xiàng)目負(fù)責(zé)人,由項(xiàng)目負(fù)責(zé)人召集項(xiàng)目組成員討論、選定開發(fā)項(xiàng)目;3.項(xiàng)目開發(fā)的每項(xiàng)任務(wù)要落實(shí)到人且規(guī)定該任務(wù)的起止日期和時(shí)間;4.每個(gè)項(xiàng)目小組必須按照《軟件工程實(shí)驗(yàn)指導(dǎo)書》附錄三中給定的文檔規(guī)范標(biāo)準(zhǔn)提供項(xiàng)目文檔;5.題目自選或采用附錄二中的題目;6.軟件開發(fā)的方法自定(結(jié)構(gòu)化或面向?qū)ο蟮姆椒ǎ?附錄二:實(shí)驗(yàn)
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1