軟件工程模型與方法 第9章 面向?qū)ο蠓治鯻第1頁
軟件工程模型與方法 第9章 面向?qū)ο蠓治鯻第2頁
軟件工程模型與方法 第9章 面向?qū)ο蠓治鯻第3頁
軟件工程模型與方法 第9章 面向?qū)ο蠓治鯻第4頁
軟件工程模型與方法 第9章 面向?qū)ο蠓治鯻第5頁
已閱讀5頁,還剩62頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第九章面向?qū)ο蠓治鲂藜样ixiujiapeng@軟件工程模型與方法

Models&MethodsofSoftwareEngineering?2008

BUPTTSEG本章內(nèi)容9.1面向?qū)ο蠓治鼍C述9.2用例建模9.3創(chuàng)建領(lǐng)域模型9.4繪制系統(tǒng)順序圖9.5創(chuàng)建系統(tǒng)操作契約?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.1面向?qū)ο蠓治鼍C述面向?qū)ο蠓治觯∣bject-OrientedAnalysis,簡稱OOA)就是運用面向?qū)ο蟮姆椒ㄟM(jìn)行系統(tǒng)分析,強調(diào)運用面向?qū)ο蠓椒?,對問題域和系統(tǒng)職責(zé)進(jìn)行分析和理解,找出描述問題域及系統(tǒng)職責(zé)所需的對象,定義對象的屬性、服務(wù)以及它們之間的關(guān)系,目標(biāo)是建立一個符合問題域、滿足用戶需求的OOA模型。問題域(problemdomain):被開發(fā)系統(tǒng)的應(yīng)用領(lǐng)域,即在現(xiàn)實世界中由這個系統(tǒng)進(jìn)行處理的業(yè)務(wù)范圍系統(tǒng)職責(zé)(systemresponsibilities),所開發(fā)的系統(tǒng)應(yīng)該具備的職能?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心OOA與OOD的職責(zé)劃分OOA針對現(xiàn)實世界中的問題域與系統(tǒng)職責(zé),用面向?qū)ο蟮姆椒ń⑵疳槍栴}域和系統(tǒng)職責(zé)的模型,作為分析的結(jié)果。OOA模型不考慮與系統(tǒng)的具體實現(xiàn)相關(guān)的因素(譬如,采用什么程序設(shè)計語言和數(shù)據(jù)庫),從而使OOA模型獨立于具體的實現(xiàn)環(huán)境。OOD則是針對系統(tǒng)的具體實現(xiàn),運用OO方法進(jìn)行系統(tǒng)設(shè)計。其中包括兩方面的工作:一是根據(jù)實現(xiàn)條件對OOA模型做某些必要的調(diào)整和修改,使其成為OOD模型的一部分;二是針對具體實現(xiàn)條件,建立人機(jī)界面、數(shù)據(jù)存儲和控制驅(qū)動等模型。這些部分與OOA采用相同的概念和表示法。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心軟件分析所面臨的問題1.對問題域和系統(tǒng)職責(zé)的理解

2.交流問題3.需求的不斷變化4.軟件復(fù)用的要求?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心面向?qū)ο蠓治霾襟E(1)利用用例以及用例圖來捕獲和描述用戶的需求,從而建立系統(tǒng)的功能需求模型。為創(chuàng)建需求模型,首先要從業(yè)務(wù)需求描述出發(fā),識別參與者和使用場景;對場景進(jìn)行匯總、分類和抽象,形成用例;確定參與者和用例、用例和用例之間的關(guān)系,形成用例模型。(2)從業(yè)務(wù)需求描述和用例描述中提取“關(guān)鍵概念”,形成領(lǐng)域模型。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心面向?qū)ο蠓治霾襟E(3)從用例出發(fā),將系統(tǒng)看作一個黑盒子,識別出參與者和系統(tǒng)交互的系統(tǒng)事件,在系統(tǒng)順序圖中進(jìn)行描述,并進(jìn)一步識別出系統(tǒng)操作。(4)從系統(tǒng)順序圖和領(lǐng)域模型出發(fā),建立系統(tǒng)操作契約,描述響應(yīng)系統(tǒng)事件的系統(tǒng)操作執(zhí)行后對系統(tǒng)狀態(tài)的影響,從而回答系統(tǒng)“做什么”的問題。此處的系統(tǒng)狀態(tài)變化指的是領(lǐng)域模型中概念的創(chuàng)建和刪除,概念屬性的修改以及概念之間關(guān)聯(lián)的建立和刪除。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)功能描述本系統(tǒng)主要是為程序設(shè)計類課程考試而設(shè)計,但是也應(yīng)該能適應(yīng)到其他的課程。目的在于:1.增加考試靈活性,減輕任課教師的出題、判卷和統(tǒng)計工作;2.避免紙面考程序設(shè)計題的一些缺陷;3.增加一些統(tǒng)計分析功能,便于老師及時跟蹤學(xué)生對知識點的掌握情況。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心系統(tǒng)用戶教師學(xué)生助教?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心子系統(tǒng)描述1.題庫管理子系統(tǒng)對考題進(jìn)行管理。題目類型有選擇題、填空題、解答題和程序設(shè)計題,功能要求:能增、刪、改、查詢題目。能支持使用Excel批量導(dǎo)入試題到數(shù)據(jù)庫的功能。2.考試子系統(tǒng)根據(jù)一定的試題生成規(guī)則現(xiàn)場生成一套試題供學(xué)生進(jìn)行解答,并記錄答案??荚嚥捎弥痤}方式進(jìn)行,做完一題再出現(xiàn)下一題。學(xué)生可以用上翻、下翻鍵來選擇返回上一題還是進(jìn)行到下一題??荚嚥捎萌斯び嫊r方式。若到考試結(jié)束時間,則系統(tǒng)強行要求學(xué)生結(jié)束答題;若學(xué)生提前做完,則可以按結(jié)束考試鍵終止答題。當(dāng)學(xué)生選擇結(jié)束考試時,給出選擇題的成績,并將學(xué)生所做的試題及答案記錄到數(shù)據(jù)庫中。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心子系統(tǒng)描述3.閱卷子系統(tǒng)為了方便老師批量批改解答題和程序設(shè)計題,系統(tǒng)能靈活支持將某道題的學(xué)生解答匯總成一個文檔供老師拿回去批閱,并將閱后成績導(dǎo)入數(shù)據(jù)庫中。4.給分子系統(tǒng)在每小題的成績都已經(jīng)給出的情況下,統(tǒng)計出每一個學(xué)生的最終機(jī)考成績并記載到數(shù)據(jù)庫中。5.統(tǒng)計子系統(tǒng)統(tǒng)計子系統(tǒng)主要是提供考試結(jié)果分析信息,以方便老師了解考試情況,對教學(xué)結(jié)果做出較好的評估。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例建模目標(biāo)畫出系統(tǒng)用例圖識別系統(tǒng)邊界識別參與者識別用例確定用例之間關(guān)系給出用例的文本描述用例描述模板?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.2用例建模9.2.1確定系統(tǒng)邊界9.2.2識別參與者9.2.3識別用例9.2.4其他需求分析工作?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.2.1確定系統(tǒng)邊界系統(tǒng)邊界是一個系統(tǒng)所包含的所有系統(tǒng)成分與系統(tǒng)以外各事物的分界線。系統(tǒng)邊界以外是與系統(tǒng)進(jìn)行交互的人員、設(shè)備、外部系統(tǒng)或組織。系統(tǒng)是由一條邊界包圍起來的未知空間,系統(tǒng)只通過邊界上的有限個接口與外部交互。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.2.2識別參與者參與者(actor)是具有行為能力的事物,可以是一個人(由所扮演的角色來識別)、計算機(jī)系統(tǒng)或硬件設(shè)備。它們位于系統(tǒng)邊界之外,通過和系統(tǒng)進(jìn)行有意義的交互來實現(xiàn)它們的目標(biāo)。識別參與者的任務(wù)就是找到參與者并明確其在系統(tǒng)中要實現(xiàn)的目標(biāo)。參與者是一個類。參與者可以發(fā)出請求,要求系統(tǒng)提供服務(wù),系統(tǒng)以某種方式進(jìn)行響應(yīng),或者把響應(yīng)的結(jié)果給其他的參與者;系統(tǒng)也可以向參與者發(fā)出請求,參與者對此做出響應(yīng)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心參與者的分類主要參與者:指的是在使用系統(tǒng)服務(wù)的過程中滿足自己目標(biāo)的那些參與者,如使用在線考試系統(tǒng)的任課教師和學(xué)生。識別出這類參與者,可以幫助找到用戶目標(biāo),從而確定系統(tǒng)的功能需求。次要參與者:指的是為系統(tǒng)提供服務(wù)的那些參與者,如一個對信用卡支付進(jìn)行授權(quán)的外部系統(tǒng)。識別出這類參與者,可以幫助確定外部接口和協(xié)議。后臺參與者:指的是對用例的行為感興趣的那些參與者,如政府的稅務(wù)機(jī)關(guān)。識別出這類參與者,可以保證找到所有方面的興趣并讓用例滿足之。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心誰能充當(dāng)參與者人員:可以從直接使用系統(tǒng)的人員中發(fā)現(xiàn)參與者。其從系統(tǒng)獲取信息,或者向系統(tǒng)提供信息。外部系統(tǒng):所有與系統(tǒng)交互的外部系統(tǒng)。設(shè)備:所有與系統(tǒng)交互的設(shè)備。其與系統(tǒng)相連,向系統(tǒng)提供外界信息,或者從系統(tǒng)獲取信息,在系統(tǒng)的控制下運行。例如傳感器、受控馬達(dá)、條形碼掃描設(shè)備等。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心如何找到參與者通過回答以下問題找到參與者:(1)誰使用系統(tǒng)的主要功能?(2)誰需要系統(tǒng)的支持以完成其日常工作任務(wù)?(3)誰負(fù)責(zé)維護(hù)、管理并保證系統(tǒng)的正常運行?(4)系統(tǒng)需要和哪些外部系統(tǒng)交互?(5)系統(tǒng)需要處理哪些設(shè)備?(6)對系統(tǒng)產(chǎn)生的結(jié)果感興趣的人或事物是哪些??2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心如何識別參與者的目標(biāo)可以通過回答以下問題識別參與者的目標(biāo):(1)某個參與者要求系統(tǒng)為其提供什么功能?該參與者需要做哪些工作(可能有些工作需要系統(tǒng)幫助完成)?(2)參與者需要閱讀、創(chuàng)建、銷毀、更新或存儲系統(tǒng)中的某些(類)信息嗎?(3)系統(tǒng)中的事件一定要告知參與者嗎?參與者需要告訴系統(tǒng)一些什么嗎?那些系統(tǒng)內(nèi)部的事件從功能的角度代表什么?(4)由于系統(tǒng)新功能的識別(如那些典型的還沒有實現(xiàn)自動化的人工系統(tǒng)),參與者的日常工作被簡化或效率提高了嗎?若是,則該用例對于該參與者有意義、值得實現(xiàn)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心參與者之間的繼承關(guān)系參與者是一個類,因此在參與者之間可以引入類之間的繼承關(guān)系,通過定義某個抽象參與者來簡化參與者的定義。如果一組參與者具有共同的性質(zhì),可以把這些性質(zhì)抽取出來放在另一個參與者中,這組參與者再從中繼承,這種關(guān)系稱為參與者之間的繼承關(guān)系。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)的參與者四類主要參與者:任課教師、助教、學(xué)生和系統(tǒng)維護(hù)人員。各個參與者的系統(tǒng)目標(biāo):任課教師:能維護(hù)題庫;能設(shè)計一次考試的出題規(guī)則,設(shè)定考生范圍和考試時間及時長;能順利開展考試;能方便有效地開展閱卷工作;能得到有價值的統(tǒng)計信息。助教:能方便有效地開展閱卷工作;學(xué)生:能順利進(jìn)行考試,能查詢自己的考試成績;系統(tǒng)維護(hù)人員:能對系統(tǒng)的用戶、權(quán)限、系統(tǒng)參數(shù)等進(jìn)行方便地維護(hù)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)的參與者任課教師的部分目標(biāo)和助教的目標(biāo)相同,于是可以創(chuàng)建一個新的抽象參與者――閱卷者,它的目標(biāo)是使用系統(tǒng)方便有效地開展閱卷工作;教師和助教再繼承閱卷者閱卷者教師助教學(xué)生系統(tǒng)維護(hù)人員?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.2.3識別用例用例的定義:一個用例(usecase)描述系統(tǒng)的一項功能,功能被描述為一組動作序列(場景)的集合。每一個動作序列表示參與者與系統(tǒng)的一次交互,將為參與者產(chǎn)生一個可觀察的結(jié)果值。每一個用例使用動詞短語定義,該短語描述了系統(tǒng)必須完成的目標(biāo)。對定義的理解:(1)一個用例描述系統(tǒng)的一項功能,是參與者使用系統(tǒng)來達(dá)成目標(biāo)時一組相關(guān)的成功場景(scenario)和失敗場景的集合。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心對用例的理解(2)用例通常是由某個參與者來驅(qū)動執(zhí)行,只有當(dāng)外部的參與者與系統(tǒng)交互時,該功能才會發(fā)生作用。(3)用例中,只描述參與者可以看到的系統(tǒng)行為特征。(4)用例描述的是一個參與者所使用的一項系統(tǒng)級功能,該項功能應(yīng)該相對完整。(5)可觀察的結(jié)果值是指系統(tǒng)對參與者的動作要做出響應(yīng),在經(jīng)過若干次交互之后,系統(tǒng)把最終有意義的結(jié)果值反饋給參與者。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心識別用例從參與者角度出發(fā),識別每類參與者在系統(tǒng)中要實現(xiàn)的目標(biāo),從中抽取用例。用例可以分為三種不同的級別:企業(yè)級別的目標(biāo):如盈利、擴(kuò)大目標(biāo)市場等;用戶級別的目標(biāo):如取款、在線考試等;子功能級別的目標(biāo):如驗證用戶身份、記錄系統(tǒng)日志等。識別用例重點要識別的是用戶級別用例。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心基本業(yè)務(wù)過程基本業(yè)務(wù)過程(EBP,ElementaryBusinessProcess)是指由一個人在某個時間某個地點執(zhí)行的一項任務(wù),這項任務(wù)是對某一業(yè)務(wù)事件的反應(yīng),而且能夠增加可以度量的業(yè)務(wù)價值,并且能夠保持?jǐn)?shù)據(jù)狀態(tài)的一致。進(jìn)行用例分析時,應(yīng)該專注于EBP級別的用例,但是當(dāng)一個子功能在多個用戶目標(biāo)級別用例中重復(fù)出現(xiàn),或這個子功能是多個用戶目標(biāo)級別用例的前置條件,如“驗證用戶身份”、“記錄日志”等,則可以定義一個用例來表示該子功能。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例描述用例描述的目標(biāo)是將用例的功能和應(yīng)用場景描述清楚,包括用例在何時開始,何時結(jié)束參與者何時與系統(tǒng)交互交互什么內(nèi)容所有可能的交互場景對用例的描述,可以用自然語言,也可以采用用戶自定義的語言。為了更清楚地說明問題,也可以采用面向?qū)ο蟮念悎D、交互圖、狀態(tài)圖或活動圖來做進(jìn)一步的描述。

?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例描述模板用例編號:每一個用例一個唯一的編號,方便在文檔中索引。

用例名稱:(狀語+)動詞+(定語+)賓語,體現(xiàn)參與者的目標(biāo)。

范圍:應(yīng)用的軟件系統(tǒng)范圍

級別:企業(yè)目標(biāo)級別/用戶目標(biāo)級別/子系統(tǒng)目標(biāo)級別

主要參與者:調(diào)用系統(tǒng)服務(wù)來完成目標(biāo)的主要參與者

項目相關(guān)人員及其興趣:

用戶應(yīng)包含滿足所有相關(guān)人員興趣的內(nèi)容

前置條件:規(guī)定了在用例中的一個場景開始之前必須為“真”的條件。

后置條件:規(guī)定了用例成功結(jié)束后必須為“真”的條件。

主要成功場景:(基本路徑)描述了能夠滿足項目相關(guān)人員興趣的一個典型的成功路徑。不包括條件和分支

1.

……

n.

擴(kuò)展(或替代流程):(備選路徑)說明了基本路徑以外的所有其他場景或分支

*a.描述任何一個步驟都有可能發(fā)生的條件,前邊加*5a.對基本路徑中某個步驟的擴(kuò)展描述,前邊加基本路徑編號

特殊需求:與用例相關(guān)的非功能性需求技術(shù)與數(shù)據(jù)的變化列表:輸入輸出方式上的變化以及數(shù)據(jù)格式的變化。發(fā)生頻率:用例執(zhí)行的頻率。待解決的問題:不清楚的、尚待解決的問題可集中在此進(jìn)行羅列?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例之間的關(guān)系包含關(guān)系用例A在其內(nèi)部說明的某一位置上顯式地使用用例B行為的結(jié)果,成為用例A包含用例B。包含關(guān)系圖示表示如下左圖。避免用例中相同功能的重復(fù)描述;避免過長的用例。擴(kuò)展關(guān)系在不能改變已有用例的情況下,擴(kuò)展用例的功能。擴(kuò)展用例中必須包含觸發(fā)和擴(kuò)展點說明。擴(kuò)展管理的圖示表示如下右圖?;美话挠美秈nclude》基用例擴(kuò)展用例《extend》?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例的包含關(guān)系舉例假設(shè)在一個旅游電子商務(wù)網(wǎng)站系統(tǒng)中,有如下用例:購買機(jī)票預(yù)定酒店在這兩個用例中,都有一個環(huán)節(jié)是“填寫聯(lián)系資料”,則可以將“填寫聯(lián)系資料”抽象為一個獨立的用例,在上述用例中包含該用例,局部用例圖如下圖所示:購買機(jī)票填寫聯(lián)系資料預(yù)定酒店《include》《include》?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例1:購買機(jī)票主要成功場景:1.顧客輸入航班查詢條件;2.系統(tǒng)顯示查詢結(jié)果;……11.顧客填寫聯(lián)系方式,包含填寫聯(lián)系資料用例。12.顧客選擇信用卡支付,填寫信用卡信息。用例2:預(yù)訂酒店主要成功場景:1.顧客輸入酒店查詢條件;2.系統(tǒng)顯示查詢結(jié)果;3.顧客填寫入住時間;……8.顧客填寫聯(lián)系方式,包含填寫聯(lián)系資料用例。用例10:填寫聯(lián)系資料級別:子功能主要成功場景:1.顧客在聯(lián)系方式界面內(nèi)輸入辦公電話、手機(jī)、Email、郵寄地址和郵箱,點擊提交。2.系統(tǒng)驗證上述信息格式有效。擴(kuò)展(或替代流程):2a.系統(tǒng)發(fā)現(xiàn)有必填信息沒有填寫

1.系統(tǒng)給出提示信息;

2.顧客填寫信息,回到主要成功場景的步驟2。2b.系統(tǒng)驗證信息格式不正確

1.系統(tǒng)給出提示信息;

2.顧客重新填寫信息,回到主要成功場景的步驟2。包含關(guān)系用例描述?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心用例的擴(kuò)展關(guān)系假設(shè)在“購買機(jī)票”用例中,基用例不能修改,此時需要在信用卡支付環(huán)節(jié),增加“里程換機(jī)票”的功能,此時,可以將該功能抽象為擴(kuò)展用例,以擴(kuò)展基本用例的功能。擴(kuò)展后的局部用例圖如下圖所示:購買機(jī)票里程換機(jī)票《extend》?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心擴(kuò)展用例的描述用例1:購買機(jī)票(基用例)主要成功場景:1.顧客輸入航班查詢條件;2.系統(tǒng)顯示查詢結(jié)果;……11.顧客填寫聯(lián)系方式,包含填寫聯(lián)系方式用例。12.顧客選擇信用卡支付,填寫信用卡信息。用例12:里程換機(jī)票(擴(kuò)展用例)觸發(fā):顧客選擇用里程積分支付航班費用擴(kuò)展點:購買機(jī)票用例中的步驟12。所處層次:子功能。主要成功場景:1.系統(tǒng)驗證顧客是否有足夠的積分。2.系統(tǒng)從顧客當(dāng)前積分中扣除相應(yīng)積分,將剩余積分告訴顧客。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)的用例圖設(shè)置考試時間、考試班級、考試規(guī)則;生成學(xué)生密碼;增、刪、改考試設(shè)置對成績特別差的學(xué)生,老師可以查閱其完整的試卷,分析其薄弱點所在?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)的用例描述用例編號用例名稱使用人用例描述用例1批閱答案(按學(xué)生)閱卷者在線逐個學(xué)生地批閱答案。用例2批閱答案(按考題)閱卷者批量導(dǎo)出某題的所有解答,另存為文件供教師離線批閱

用例3批量導(dǎo)入成績閱卷者按照指定的格式,將批量批閱的題目的得分一次性導(dǎo)入

用例4維護(hù)成績閱卷者閱卷者能對成績進(jìn)行增、刪、改、查用例5配置考試教師設(shè)置考試的時間和時長、考試使用的試題生成規(guī)則、參加考試的班級等信息用例6維護(hù)試題生成規(guī)則教師包括對試題生成規(guī)則的增、刪、改、查用例7維護(hù)題庫教師包括對各類試題的增、刪、改、查

用例8查詢學(xué)生卷面教師生成某一個學(xué)生的卷面(word格式),并提供下載或打印功能

用例9批量計算學(xué)生總成績教師批量計算出各學(xué)生的總成績

用例10批量計算學(xué)生總成績教師生成指定班級按學(xué)號升序排列的學(xué)生成績清單

用例11生成統(tǒng)計報表教師對一些有價值的結(jié)果進(jìn)行統(tǒng)計分析用例12查看統(tǒng)計報表教師查看統(tǒng)計報表?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)的用例描述用例編號用例名稱使用人用例描述用例13維護(hù)系統(tǒng)參數(shù)

系統(tǒng)維護(hù)人員維護(hù)系統(tǒng)配置數(shù)據(jù)信息用例14維護(hù)學(xué)生基本信息系統(tǒng)維護(hù)人員對學(xué)生基本信息進(jìn)行維護(hù),包括增加、修改、刪除等。用例15維護(hù)教師基本信息系統(tǒng)維護(hù)人員對教師基本信息進(jìn)行維護(hù),包括增加、修改、刪除等。用例16維護(hù)課程基本信息系統(tǒng)維護(hù)人員對課程基本信息進(jìn)行維護(hù),包括增加、修改、刪除等。用例17管理用戶系統(tǒng)維護(hù)人員對系統(tǒng)登錄用戶信息進(jìn)行維護(hù)用例18管理用戶權(quán)限系統(tǒng)維護(hù)人員對系統(tǒng)用戶的權(quán)限進(jìn)行管理用例19查詢成績學(xué)生查詢某次考試的成績用例20考試學(xué)生參加某次考試?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心“考試”用例文本描述用例編號:UC001用例名稱:考試范圍:在線考試系統(tǒng)級別:用戶目標(biāo)級別主要參與者:學(xué)生項目相關(guān)人員及其興趣:

學(xué)生:順利進(jìn)行考試,能準(zhǔn)確快速地提交答案,考試不間斷,時鐘計時準(zhǔn)確,系統(tǒng)響應(yīng)時間在1秒之內(nèi)。老師:能按照考卷生成規(guī)則對每個考生自動生成一套考卷,能準(zhǔn)確記錄學(xué)生答案,能準(zhǔn)確計時。前置條件:考試已經(jīng)設(shè)置(考卷生成規(guī)則,考試時間,考試對象),監(jiān)考老師已經(jīng)啟動該考試生效,監(jiān)考老師已經(jīng)核實完學(xué)生身份,學(xué)生已從監(jiān)考老師處獲得考試密碼并登陸系統(tǒng),進(jìn)入系統(tǒng)主窗口。后置條件:如果考試成功,則系統(tǒng)記錄學(xué)生的考題及答案,并當(dāng)場給出選擇題分?jǐn)?shù);如果考試失敗,所有信息均不進(jìn)行記錄。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心“考試”用例文本描述主要成功場景:1.學(xué)生在系統(tǒng)主窗口中選擇參加考試。2.系統(tǒng)列出該學(xué)生該時段能參加的所有考試課程名稱。3.學(xué)生選擇其中的一門課程,要求考試。4.系統(tǒng)彈出登陸框,要求學(xué)生輸入考試密碼。5學(xué)生輸入從監(jiān)考老師處獲取的考試密碼,登陸。6.系統(tǒng)顯示歡迎界面,展示考試課程名稱和考試時長,詢問學(xué)生是否開始考試。7.學(xué)生選擇開始考試。8.系統(tǒng)按照預(yù)先設(shè)計好的考卷生成規(guī)則自動生成一套考卷。9.系統(tǒng)顯示考題。10.學(xué)生答題,并提交該題答案。11.系統(tǒng)記錄答案,并使上一題或下一題按鈕生效。12.學(xué)生選擇上一題或者下一題。系統(tǒng)重復(fù)步驟9~12,直到學(xué)生選擇結(jié)束考試或者考試時間到。13.系統(tǒng)顯示學(xué)生的選擇題得分。14.系統(tǒng)詢問學(xué)生是否退出考試。15.學(xué)生選擇退出。16.系統(tǒng)回到系統(tǒng)主窗口。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心“考試”用例文本描述擴(kuò)展(或替代流程):*aA任何時刻,如果學(xué)生使用的電腦出現(xiàn)問題:為了支持恢復(fù)操作和正確地記錄考生信息,要保證所有考試過程中的敏感狀態(tài)和事件都能夠從上述場景中任何一步中完全恢復(fù)。1.學(xué)生重啟系統(tǒng),登陸,請求恢復(fù)上次狀態(tài)。2.系統(tǒng)重建之前的狀態(tài)(包括考題和已經(jīng)提交的答案)。2a.系統(tǒng)恢復(fù)過程中檢測到異常:1.系統(tǒng)向?qū)W生指示錯誤,學(xué)生記錄錯誤,向監(jiān)考老師報告。2.學(xué)生在監(jiān)考老師安排下更換一臺電腦重新登錄繼續(xù)考試。5a.系統(tǒng)驗證輸入的用戶名或者密碼無效:1.系統(tǒng)顯示提示信息。2.用戶重新輸入用戶名和密碼。3.系統(tǒng)驗證密碼有效,回到主要成功場景的步驟6。3a.系統(tǒng)驗證輸入的用戶名或者密碼無效,且驗證次數(shù)小于3次:回到5a的步驟1。3b.系統(tǒng)驗證輸入的用戶名或者密碼無效,且驗證次數(shù)已經(jīng)3次:系統(tǒng)進(jìn)行提示,強迫學(xué)生回到系統(tǒng)主窗口。7a.學(xué)生選擇稍后開始考試:屏幕上提示準(zhǔn)備時間為3分鐘。2.3分鐘后自動進(jìn)入考試。回到主要成功場景的步驟8。10a.學(xué)生答題卻未提交答案:1.系統(tǒng)不記錄答案,并使上一題或下一題按鈕生效?;氐街饕晒鼍暗牟襟E12。9-12a.學(xué)生選擇提前結(jié)束考試:1.系統(tǒng)詢問學(xué)生是否確實提前結(jié)束考試。2.學(xué)生確認(rèn)結(jié)束?;氐街饕晒鼍暗牟襟E13。2a.學(xué)生選擇繼續(xù)考試。回到前一狀態(tài)。15a.學(xué)生不選擇退出:1.系統(tǒng)進(jìn)入30秒倒計時。2.30秒后自動退出原考試界面,回到主要成功場景的步驟16。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心“考試”用例文本描述特殊需求:系統(tǒng)對每個操作的反應(yīng)應(yīng)在1秒鐘內(nèi)。學(xué)生使用分配的密碼成功登陸后,只能進(jìn)入考試界面,不可啟動其他應(yīng)用程序(如QQ、MSN等)和破壞系統(tǒng)。技術(shù)與數(shù)據(jù)的變化列表:目前學(xué)生參與考試過程中只可以使用鍵盤和鼠標(biāo)作為交互設(shè)備。將來可以考慮增加觸摸屏。發(fā)生頻率:期中、期末使用。待解決的問題:1.如果學(xué)生考試中途覺得題目太難繼續(xù)不下去,是否給他重新出一套題在剩下的時間繼續(xù)考試?2.考慮到擴(kuò)展性和通用性,系統(tǒng)是否要能同時支持兩種出題模式,即

1)試題在考試之前先生成、全班通用,

2)試題在考試時才生成,每人的題目均不一樣?3.目前該系統(tǒng)主要支持期中、期末以班為單位的集中式程序設(shè)計測試。但將來是否還要能支持平時一些達(dá)標(biāo)類的小測試?對于此類測試,是否可以多給幾次機(jī)會,讓學(xué)生在規(guī)定時間內(nèi)再次考試?達(dá)標(biāo)總成績?nèi)绾斡嬎??如何確保是本人參加考試??2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心UML活動圖描述?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.2.4其他需求分析工作在統(tǒng)一過程UP中,除了用例模型,需求分析工件(artifact)中還有:補充規(guī)范(supplementaryspecification):記錄系統(tǒng)的非功能性需求,同時也記錄用例模型中沒有表達(dá)或者不方便表達(dá)的功能特性列表。術(shù)語表(glossary):記錄關(guān)鍵的領(lǐng)域術(shù)語。項目構(gòu)想文檔(vision)描述系統(tǒng)高層的目標(biāo)、功能和約束,以便讓項目相關(guān)人員快速地對系統(tǒng)有一個全局的了解,這些目標(biāo)、功能和約束在用例模型和補充規(guī)范中會進(jìn)行細(xì)化。業(yè)務(wù)規(guī)則描述(businessrules):也稱為領(lǐng)域規(guī)則,通常描述業(yè)務(wù)需求和處理策略,應(yīng)用系統(tǒng)必須要遵守這些規(guī)則和策略。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.3創(chuàng)建領(lǐng)域模型9.3.1識別概念類9.3.2添加關(guān)聯(lián)9.3.3添加屬性?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心領(lǐng)域模型簡介領(lǐng)域模型就是用來描述業(yè)務(wù)領(lǐng)域重要概念及其相互關(guān)系的模型,一般用UML的類圖來表達(dá),其中概念用類來表示,概念之間的關(guān)系用關(guān)聯(lián)、繼承、聚合來表示。理解領(lǐng)域模型對理解系統(tǒng)需求至關(guān)重要,領(lǐng)域模型的創(chuàng)建步驟如下:第1步,找出當(dāng)前需求中的候選概念類;第2步,在領(lǐng)域模型中描述這些概念類。用問題域中的詞匯對概念類進(jìn)行命名,將與當(dāng)前需求無關(guān)的概念類排除在外。第3步,在概念類之間添加必要的關(guān)聯(lián)來記錄那些需要保存記憶的關(guān)系。第4步,在概念類中添加用來實現(xiàn)需求的必要屬性。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.3.1識別概念類創(chuàng)建領(lǐng)域模型需要經(jīng)過多次迭代,增量地建立一個領(lǐng)域模型。兩種識別概念類的技巧:使用概念類分類列表:通過建立一個候選概念類的列表來開始創(chuàng)建領(lǐng)域模型。識別名詞短語:識別有關(guān)問題域文本描述中的名詞和名詞短語,然后將它們作為候選的概念類或者屬性。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心使用概念類分類列表概念類分類示例物理或者具體對象商品事物的設(shè)計、描述和規(guī)范商品規(guī)格說明,考題規(guī)格說明位置商店交易銷售,考卷交易項目銷售項,考題人的角色收銀員,考生其他事物的容器商店,考卷容器包含的元素商品,考題在該系統(tǒng)之外的系統(tǒng)信用卡支付授權(quán)系統(tǒng)抽象名詞的概念組織銷售部門事件銷售,考卷過程(通常不表示成一個概念,但也可以表示成概念)銷售一件商品規(guī)則和政策考卷生成規(guī)則分類產(chǎn)品目錄有關(guān)工作、契約、財務(wù)和法律事物的記錄收據(jù)、維護(hù)日志財務(wù)設(shè)施及服務(wù)?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心識別名詞短語1.學(xué)生在系統(tǒng)主窗口中選擇參加考試。2.系統(tǒng)列出該學(xué)生該時段能參加的所有考試課程名稱。3.學(xué)生選擇其中的一門課程,要求考試。4.系統(tǒng)彈出登陸框,要求學(xué)生輸入考試密碼。5學(xué)生輸入從監(jiān)考老師處獲取的考試密碼,登陸。6.系統(tǒng)顯示歡迎界面,展示考試課程名稱和考試時長,詢問學(xué)生是否開始考試。7.學(xué)生選擇開始考試。8.系統(tǒng)按照預(yù)先設(shè)計好的考卷生成規(guī)則自動生成一套考卷。9.系統(tǒng)顯示考題。10.學(xué)生答題,并提交該題答案。11.系統(tǒng)記錄答案,并使上一題或下一題按鈕生效。12.學(xué)生選擇上一題或者下一題。系統(tǒng)重復(fù)步驟9~12,直到學(xué)生選擇結(jié)束考試或者考試時間到。13.系統(tǒng)顯示學(xué)生的選擇題得分。14.系統(tǒng)詢問學(xué)生是否退出考試。15.學(xué)生選擇退出。16.系統(tǒng)回到系統(tǒng)主窗口。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)中的概念類?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.3.2添加關(guān)聯(lián)領(lǐng)域模型中的關(guān)聯(lián)可分為兩種:“需要知道”型關(guān)聯(lián):需要將概念之間的關(guān)系信息保持一段時間的關(guān)聯(lián)。領(lǐng)域模型中需要著重考慮?!爸恍枥斫狻毙完P(guān)聯(lián):有助于增強對領(lǐng)域中關(guān)鍵概念的理解的關(guān)聯(lián)。尋找關(guān)聯(lián)時要遵循下述指導(dǎo)原則:1.將注意力集中在需要知道型關(guān)聯(lián)。2.識別概念類比識別關(guān)聯(lián)更重要,因此領(lǐng)域模型創(chuàng)建過程中應(yīng)該更加注重概念類的識別。3.太多的關(guān)聯(lián)不僅不能有效地表示領(lǐng)域模型,反而容易使領(lǐng)域模型變得混亂。4.避免顯示冗余或?qū)С鲫P(guān)聯(lián)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心通用關(guān)聯(lián)表分類示例A在物理上是B的一部分樹木-森林A在邏輯上是B的一部分銷售項-銷售考題-考卷A在物理上包含在B中或者依賴于B商品-貨架A在邏輯上包含在B中考卷生成規(guī)則項-考卷生成規(guī)則A是對B的描述考題規(guī)格說明-考題A是交易或者報表B中的一項銷售項-銷售考題-考卷A為B所知/為B所記錄/錄入B中/為B所捕獲A是B的一個成員收銀員-商店A是B的一個組織子單元銷售部-商店A使用或管理B收銀員-POS機(jī)A與B通信顧客-收銀員A與一個交易B有關(guān)學(xué)生-考試顧客-銷售A是一個與另一個交易B有關(guān)的事務(wù)支付-銷售A與B相鄰商品-商品A為B所擁有POS機(jī)-商店A是一個與B有關(guān)的事件考試-學(xué)生銷售-顧客?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)通用關(guān)聯(lián)表分類示例A在物理上是B的一部分不適用A在邏輯上是B的一部分考題-考卷A在物理上包含在B中或者依賴于B不適用A在邏輯上包含在B中考卷生成規(guī)則項-考卷生成規(guī)則A是對B的描述考題規(guī)格說明-考題

課程規(guī)格說明-課程A是交易或者報表B中的一項考題-考卷A為B所知/為B所記錄/錄入B中/為B所捕獲不適用A是B的一個成員不適用A是B的一個組織子單元不適用A使用或管理B不適用A與B通信不適用A與一個交易B有關(guān)學(xué)生-考試A是一個與另一個交易B有關(guān)的事務(wù)不適用A與B相鄰考題-考題A為B所擁有不適用A是一個與B有關(guān)的事件考試-學(xué)生?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心考試系統(tǒng)中“需要知道型”關(guān)聯(lián)關(guān)聯(lián)含義學(xué)生“參加”考試為了知道學(xué)生是否需要參加該項考試?yán)蠋煛氨O(jiān)考”考試為了知道由哪(幾)位老師監(jiān)考考卷“記錄著”考題為了知道一份考卷由哪些考題組成考卷生成規(guī)則“對應(yīng)于”課程為了知道是哪門課程的考卷生成規(guī)則考卷生成規(guī)則“應(yīng)用于”考試為了知道某次考試使用哪套考卷生成規(guī)則考卷生成規(guī)則“記錄著”考卷生成規(guī)則項為了知道一套考卷生成規(guī)則由哪些細(xì)項組成考題規(guī)格說明“詳細(xì)描述”考題為了知道一道考題的詳細(xì)描述?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)部分領(lǐng)域模型?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.3.3添加屬性屬性是對象的數(shù)據(jù)特性,領(lǐng)域模型中的屬性往往是需要記憶的信息。識別屬性時應(yīng)注意以下幾點:盡量用簡單數(shù)據(jù)類型定義屬性;識別屬性時首先識別最重要的屬性,忽略那些派生屬性;對每一個屬性,要賦予一個有意義的名稱。除了概念類的屬性,也要尋找關(guān)聯(lián)上的屬性。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心在線考試系統(tǒng)部分屬性概念屬性課程開課時間……課程規(guī)格說明課程編號,課程名稱,學(xué)分,課程簡要介紹……學(xué)生學(xué)號,班級,姓名,聯(lián)系Email……選課選課年份,課程總評成績……老師工作證號,姓名,職稱,所在院系名稱,聯(lián)系電話,聯(lián)系Email……授課授課時間,授課教室……監(jiān)考應(yīng)到人數(shù),實到人數(shù),考場情況簡述……考試考試時間,考試時長,考試地點……考卷總分……考卷生成規(guī)則測試對象,測試目的,內(nèi)容范圍綜述,考卷難度,規(guī)則創(chuàng)建人,規(guī)則創(chuàng)建時間,規(guī)則生效標(biāo)志……考卷生成規(guī)則項題目類型、題目難度、內(nèi)容分類、題目數(shù)量……考題解答,得分……考題規(guī)格說明題目類型、題目難度、內(nèi)容分類、分?jǐn)?shù)、創(chuàng)建時間、創(chuàng)建人、生效標(biāo)志……?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.4繪制系統(tǒng)順序圖系統(tǒng)行為描述一個系統(tǒng)做什么,描述系統(tǒng)行為的有三種工件用例:描述系統(tǒng)行為的第一個抽象層次系統(tǒng)順序圖:第二個抽象層次系統(tǒng)操作契約:在系統(tǒng)順序圖和領(lǐng)域概念模型基礎(chǔ)上得到的第三個抽象層次從第一層次到第三層次,抽象程度在逐步降低。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心系統(tǒng)順序圖一個系統(tǒng)順序圖用來表示在用例的一個特定場景中,外部參與者產(chǎn)生的事件、事件的順序以及系統(tǒng)之間的事件。在交互期間,參與者會向系統(tǒng)發(fā)送事件,系統(tǒng)通過響應(yīng)這些事件來滿足參與者的目標(biāo)。為了識別系統(tǒng)事件,需要從用例的主要成功場景以及頻繁或復(fù)雜的替代場景中尋找系統(tǒng)事件,建立系統(tǒng)順序圖。系統(tǒng)順序圖應(yīng)看作是用例模型的一部分,是用例中交互的可視化。需要注意的是,不要一次性創(chuàng)建所有用例所有場景的系統(tǒng)順序圖,應(yīng)該只為當(dāng)前迭代所選擇的場景創(chuàng)建系統(tǒng)順序圖。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心考試用例場景中的事件從“考試”用例的成功場景中找出的系統(tǒng)事件共有7個:getAvailableTestPapers(學(xué)生)selectTestPaper(學(xué)生選擇其中一門課程進(jìn)行考試)logonTestPaper(學(xué)生登陸一門考試)startTest(學(xué)生開始考試)submitAnswer(學(xué)生提交答案)getNextQuestion(學(xué)生獲取上一題或者下一題)endTest(學(xué)生結(jié)束考試)。?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心考試場景UML順序圖?2008

BUPTTSEG北京郵電大學(xué)通信軟件工程中心9.5創(chuàng)建系統(tǒng)操作契約系統(tǒng)操作:處理系統(tǒng)事件的操作;一般情況下與系統(tǒng)事件具有相同的名字和參數(shù);操作契約是為系統(tǒng)操作而定義的,描述系統(tǒng)操作執(zhí)行的結(jié)果,模板如下表所示:操作:操作以及參數(shù)的名稱交叉引用:(可選擇)可能發(fā)生此操作的用例前置條件:在操作執(zhí)行前,領(lǐng)域模型中系統(tǒng)或?qū)ο鬆顟B(tài)的值得注意的假設(shè),他們在此操作的邏輯內(nèi)不會得到測試,而

溫馨提示

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

最新文檔

評論

0/150

提交評論