教學(xué)管理系統(tǒng)的分析與設(shè)計_第1頁
教學(xué)管理系統(tǒng)的分析與設(shè)計_第2頁
教學(xué)管理系統(tǒng)的分析與設(shè)計_第3頁
教學(xué)管理系統(tǒng)的分析與設(shè)計_第4頁
教學(xué)管理系統(tǒng)的分析與設(shè)計_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、教學(xué)管理系統(tǒng)的教學(xué)管理系統(tǒng)的分析與設(shè)計分析與設(shè)計 以簡易教學(xué)管理系統(tǒng)以簡易教學(xué)管理系統(tǒng)JXGL的分析與設(shè)計作為示例,說明的分析與設(shè)計作為示例,說明UML在軟件項目開發(fā)中的應(yīng)用。這里僅僅敘述用在軟件項目開發(fā)中的應(yīng)用。這里僅僅敘述用UML幫助幫助進(jìn)行進(jìn)行JXGL系統(tǒng)的分析與設(shè)計,建立主要的系統(tǒng)的分析與設(shè)計,建立主要的系統(tǒng)靜態(tài)結(jié)構(gòu)模系統(tǒng)靜態(tài)結(jié)構(gòu)模型與動態(tài)行為模型型與動態(tài)行為模型。 一般對系統(tǒng)做分析與設(shè)計,建立靜態(tài)結(jié)構(gòu)模型與建立動一般對系統(tǒng)做分析與設(shè)計,建立靜態(tài)結(jié)構(gòu)模型與建立動態(tài)行為模型應(yīng)當(dāng)同時、交替進(jìn)行,相互印證和補充。態(tài)行為模型應(yīng)當(dāng)同時、交替進(jìn)行,相互印證和補充。 UML的創(chuàng)始者們主張采用的創(chuàng)始者

2、們主張采用Use Case驅(qū)動的軟件開發(fā)方驅(qū)動的軟件開發(fā)方法。實際上,法。實際上,UML是一種通用的工具,它可以使用于是一種通用的工具,它可以使用于Use Case驅(qū)動的軟件開發(fā),也可以使用于其他面向?qū)ο蟮能浖?qū)動的軟件開發(fā),也可以使用于其他面向?qū)ο蟮能浖_發(fā)方法,例如直接從現(xiàn)實世界抽象出對象和類,建立系開發(fā)方法,例如直接從現(xiàn)實世界抽象出對象和類,建立系統(tǒng)的對象模型。統(tǒng)的對象模型。本章目錄本章目錄n1 1 系統(tǒng)需求系統(tǒng)需求n2 2 分析問題領(lǐng)域分析問題領(lǐng)域n2.1 2.1 確定系統(tǒng)范圍和系統(tǒng)邊界確定系統(tǒng)范圍和系統(tǒng)邊界n2.2 2.2 定義活動者定義活動者n2.3 2.3 定義定義Use Cas

3、eUse Casen2.4 2.4 繪制繪制Use CaseUse Case圖圖n2.5 2.5 繪制主要交互圖繪制主要交互圖n3 3 靜態(tài)結(jié)構(gòu)模型靜態(tài)結(jié)構(gòu)模型n3.1 3.1 建立對象類圖建立對象類圖n3.2 3.2 建立數(shù)據(jù)庫模型建立數(shù)據(jù)庫模型n3.3 3.3 建立包圖建立包圖n4 4 動態(tài)行為模型動態(tài)行為模型n4.1 4.1 建立順序圖建立順序圖n4.2 4.2 建立協(xié)同圖建立協(xié)同圖n4.3 4.3 建立狀態(tài)機圖建立狀態(tài)機圖n4.4 4.4 建立活動圖建立活動圖n5 5 物理模型物理模型n5.1 5.1 建立組件圖建立組件圖n5.2 5.2 建立配置圖建立配置圖n本章小結(jié)和習(xí)題本章小結(jié)和

4、習(xí)題 作為一個簡單的示例,規(guī)定所開發(fā)的簡易教學(xué)管理系統(tǒng)作為一個簡單的示例,規(guī)定所開發(fā)的簡易教學(xué)管理系統(tǒng)JXGL只處理每學(xué)期的課程選修注冊和學(xué)生的成績管理。只處理每學(xué)期的課程選修注冊和學(xué)生的成績管理。對對JXGL系統(tǒng)要求提供兩個方面的服務(wù):系統(tǒng)要求提供兩個方面的服務(wù):(1)選課管理,負(fù)責(zé)新學(xué)期的課程選課注冊工作)選課管理,負(fù)責(zé)新學(xué)期的課程選課注冊工作錄入與生成新學(xué)期課程表錄入與生成新學(xué)期課程表學(xué)生選課注冊學(xué)生選課注冊查詢查詢選課注冊信息的統(tǒng)計與報表生成選課注冊信息的統(tǒng)計與報表生成把學(xué)生選課注冊信息傳送給財務(wù)系統(tǒng)把學(xué)生選課注冊信息傳送給財務(wù)系統(tǒng)(2)成績管理,負(fù)責(zé)學(xué)生成績管理。)成績管理,負(fù)責(zé)學(xué)生

5、成績管理。成績錄入成績錄入成績查詢成績查詢成績統(tǒng)計與報表生成成績統(tǒng)計與報表生成1 系統(tǒng)需求系統(tǒng)需求 JXGL系統(tǒng)的直接用戶有學(xué)生、教師和教學(xué)管理員。系統(tǒng)的直接用戶有學(xué)生、教師和教學(xué)管理員。教學(xué)管理員有權(quán)操縱數(shù)據(jù)庫的數(shù)據(jù),進(jìn)行添加、更新、刪教學(xué)管理員有權(quán)操縱數(shù)據(jù)庫的數(shù)據(jù),進(jìn)行添加、更新、刪除等操作。學(xué)生和教師一般只查詢信息,只允許對自己有除等操作。學(xué)生和教師一般只查詢信息,只允許對自己有關(guān)的數(shù)據(jù)進(jìn)行添加、更新、刪除等操作。關(guān)的數(shù)據(jù)進(jìn)行添加、更新、刪除等操作。 JXGL系統(tǒng)的相關(guān)系統(tǒng)有財務(wù)系統(tǒng)。系統(tǒng)的相關(guān)系統(tǒng)有財務(wù)系統(tǒng)。JXGL系統(tǒng)需要把系統(tǒng)需要把學(xué)生選課注冊信息傳送給財務(wù)系統(tǒng),以供財務(wù)系統(tǒng)計算學(xué)

6、學(xué)生選課注冊信息傳送給財務(wù)系統(tǒng),以供財務(wù)系統(tǒng)計算學(xué)生應(yīng)交納的費用,但是不要求財務(wù)系統(tǒng)回饋學(xué)生應(yīng)交納的生應(yīng)交納的費用,但是不要求財務(wù)系統(tǒng)回饋學(xué)生應(yīng)交納的費用信息。費用信息。 假定在學(xué)校的計算中心有功能強大的工作站機器,在假定在學(xué)校的計算中心有功能強大的工作站機器,在各系、各部門、圖書館、學(xué)生宿舍都有臺式各系、各部門、圖書館、學(xué)生宿舍都有臺式PC,學(xué)校的全,學(xué)校的全部計算機已經(jīng)連網(wǎng)。部計算機已經(jīng)連網(wǎng)。JXGL系統(tǒng)將采用客戶機系統(tǒng)將采用客戶機/服務(wù)器結(jié)構(gòu)服務(wù)器結(jié)構(gòu)建立,建立,JXGL系統(tǒng)的應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器設(shè)置在學(xué)校系統(tǒng)的應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器設(shè)置在學(xué)校計算中心的工作站。計算中心的工作站。

7、學(xué)生、教師和教學(xué)管理員可以在各系、各部門、圖書學(xué)生、教師和教學(xué)管理員可以在各系、各部門、圖書館、學(xué)生宿舍的臺式館、學(xué)生宿舍的臺式PC上使用上使用JXGL系統(tǒng)。系統(tǒng)。1 系統(tǒng)需求系統(tǒng)需求 2 分析問題領(lǐng)域分析問題領(lǐng)域 分析問題領(lǐng)域分析問題領(lǐng)域是軟件系統(tǒng)開發(fā)的一項基本工作,是項是軟件系統(tǒng)開發(fā)的一項基本工作,是項目開發(fā)之初必須首先進(jìn)行的重要工作。目開發(fā)之初必須首先進(jìn)行的重要工作。 分析問題領(lǐng)域的結(jié)果分析問題領(lǐng)域的結(jié)果是對問題領(lǐng)域的清晰、精確的定是對問題領(lǐng)域的清晰、精確的定義,明確目標(biāo)系統(tǒng)將做些什么。義,明確目標(biāo)系統(tǒng)將做些什么。 分析問題領(lǐng)域的主要任務(wù)分析問題領(lǐng)域的主要任務(wù)是:對問題領(lǐng)域進(jìn)行抽象,是:

8、對問題領(lǐng)域進(jìn)行抽象,提出解決方案;對未來的系統(tǒng)進(jìn)行需求分析,確定系統(tǒng)的職提出解決方案;對未來的系統(tǒng)進(jìn)行需求分析,確定系統(tǒng)的職責(zé)范圍、功能需求、性能需求、應(yīng)用環(huán)境及假設(shè)條件等;用責(zé)范圍、功能需求、性能需求、應(yīng)用環(huán)境及假設(shè)條件等;用Use Case圖對未來系統(tǒng)的行為建立模型,初步確定未來系圖對未來系統(tǒng)的行為建立模型,初步確定未來系統(tǒng)的體系結(jié)構(gòu)等。統(tǒng)的體系結(jié)構(gòu)等。 2.1 確定系統(tǒng)范圍和系統(tǒng)邊界確定系統(tǒng)范圍和系統(tǒng)邊界 首先要確定業(yè)務(wù)需求和系統(tǒng)目標(biāo)。首先要確定業(yè)務(wù)需求和系統(tǒng)目標(biāo)。 JXGL系統(tǒng)用于新學(xué)期課程的選課注冊管理和學(xué)生的成系統(tǒng)用于新學(xué)期課程的選課注冊管理和學(xué)生的成績管理。凡是這兩方面的教學(xué)管理

9、內(nèi)容都是績管理。凡是這兩方面的教學(xué)管理內(nèi)容都是JXGL系統(tǒng)的職系統(tǒng)的職責(zé)范圍,其他的教學(xué)管理內(nèi)容,如安排教學(xué)計劃、排課、實責(zé)范圍,其他的教學(xué)管理內(nèi)容,如安排教學(xué)計劃、排課、實習(xí)、實驗、考試等都不屬于習(xí)、實驗、考試等都不屬于JXGL系統(tǒng)的職責(zé)范圍。至于學(xué)系統(tǒng)的職責(zé)范圍。至于學(xué)校的其他管理工作,如科研、人事、財務(wù)、資產(chǎn)等管理也不校的其他管理工作,如科研、人事、財務(wù)、資產(chǎn)等管理也不屬于屬于JXGL系統(tǒng)的職責(zé)范圍。系統(tǒng)的職責(zé)范圍。 JXGL系統(tǒng)與財務(wù)系統(tǒng)存在系統(tǒng)邊界,財務(wù)系統(tǒng)將從系統(tǒng)與財務(wù)系統(tǒng)存在系統(tǒng)邊界,財務(wù)系統(tǒng)將從JXGL系統(tǒng)得到學(xué)生選課注冊信息。系統(tǒng)得到學(xué)生選課注冊信息。 JXGL系統(tǒng)與學(xué)校的其

10、他信息管理系統(tǒng)沒有直接的聯(lián)系,系統(tǒng)與學(xué)校的其他信息管理系統(tǒng)沒有直接的聯(lián)系,但是可以從學(xué)校的全局?jǐn)?shù)據(jù)庫中共享學(xué)生、教師、教學(xué)計劃但是可以從學(xué)校的全局?jǐn)?shù)據(jù)庫中共享學(xué)生、教師、教學(xué)計劃等必要的數(shù)據(jù)。等必要的數(shù)據(jù)。 2.2 定義活動者定義活動者 根據(jù)根據(jù)JXGL系統(tǒng)的職責(zé)范圍和需求可以確定系統(tǒng)的職責(zé)范圍和需求可以確定4個活動者:個活動者:學(xué)生、老師、教學(xué)管理員和財務(wù)系統(tǒng)。對于每一個活動者,學(xué)生、老師、教學(xué)管理員和財務(wù)系統(tǒng)。對于每一個活動者,應(yīng)當(dāng)明確其業(yè)務(wù)活動的內(nèi)容、對系統(tǒng)的服務(wù)要求。應(yīng)當(dāng)明確其業(yè)務(wù)活動的內(nèi)容、對系統(tǒng)的服務(wù)要求。 “學(xué)生學(xué)生”活動者活動者使用使用JXGL系統(tǒng)查詢新學(xué)期開設(shè)的課程信息系統(tǒng)查

11、詢新學(xué)期開設(shè)的課程信息和教師開課信息,選課并登記注冊課程,查詢自己的課程成和教師開課信息,選課并登記注冊課程,查詢自己的課程成績信息??冃畔?。 “老師老師”活動者活動者使用使用JXGL系統(tǒng)查詢新學(xué)期開設(shè)的課程信息、系統(tǒng)查詢新學(xué)期開設(shè)的課程信息、學(xué)生選課信息和學(xué)生成績信息。學(xué)生選課信息和學(xué)生成績信息。 “教學(xué)管理員教學(xué)管理員”活動者活動者使用使用JXGL系統(tǒng)管理學(xué)期開設(shè)課程的系統(tǒng)管理學(xué)期開設(shè)課程的選課注冊和學(xué)生的考試成績。管理工作包括課程與成績數(shù)據(jù)選課注冊和學(xué)生的考試成績。管理工作包括課程與成績數(shù)據(jù)的錄入、維護(hù)、統(tǒng)計、報表打印等,并且負(fù)責(zé)把學(xué)生的選課的錄入、維護(hù)、統(tǒng)計、報表打印等,并且負(fù)責(zé)把學(xué)生

12、的選課注冊信息發(fā)送給財務(wù)系統(tǒng),作為計算學(xué)生應(yīng)付費用的依據(jù)。注冊信息發(fā)送給財務(wù)系統(tǒng),作為計算學(xué)生應(yīng)付費用的依據(jù)?!敖虒W(xué)管理員教學(xué)管理員”要求能夠方便地查詢課程信息、學(xué)生選課信息、要求能夠方便地查詢課程信息、學(xué)生選課信息、學(xué)生信息、教師信息和成績信息。學(xué)生信息、教師信息和成績信息。 “財務(wù)系統(tǒng)財務(wù)系統(tǒng)”活動者活動者是外部系統(tǒng)活動者,從是外部系統(tǒng)活動者,從JXGL系統(tǒng)接受系統(tǒng)接受學(xué)生的課程注冊信息。學(xué)生的課程注冊信息。 2.3 定義定義Use Case 從從JXGL系統(tǒng)的頂層系統(tǒng)的頂層Use Case抽象,可以確定兩個抽象,可以確定兩個Use Case :“選課管理選課管理”和和“成績管理成績管理”

13、。 Use Case“選課管理選課管理”與與4個活動者都存在交互,個活動者都存在交互,Use Case“成績管理成績管理”與活動者與活動者“學(xué)生學(xué)生”、“老師老師”和和“教學(xué)管理員教學(xué)管理員”存存在著交互。在著交互。 2.3 定義定義Use Case 2.4 繪制繪制Use Case圖圖 Use Case圖是系統(tǒng)的外部行為視圖。在確定了活動圖是系統(tǒng)的外部行為視圖。在確定了活動者和者和Use Case的基礎(chǔ)上,繪制的基礎(chǔ)上,繪制Use Case圖,可視化活圖,可視化活動者與動者與Use Case之間的聯(lián)系,可以更清楚地了解系統(tǒng)的之間的聯(lián)系,可以更清楚地了解系統(tǒng)的行為。行為。 繪制繪制Use Ca

14、se圖從頂層抽象開始,如圖圖從頂層抽象開始,如圖1所示,然所示,然后逐步分解,精細(xì)化后逐步分解,精細(xì)化Use Case圖,如圖圖,如圖2、圖、圖3所示,直所示,直到能清晰地表達(dá)問題,滿足系統(tǒng)分析與建立模型的需要到能清晰地表達(dá)問題,滿足系統(tǒng)分析與建立模型的需要為止。為止。 除了除了Use Case圖之外,對每一個圖之外,對每一個Use Case還應(yīng)進(jìn)還應(yīng)進(jìn)行描述,編寫行描述,編寫Use Case的說明文檔。的說明文檔。 在繪制在繪制Use Case圖時不但要把圖時不但要把Use Case與活動者之間的與活動者之間的聯(lián)系表示出來,而且應(yīng)當(dāng)把聯(lián)系表示出來,而且應(yīng)當(dāng)把Use Case之間的聯(lián)系也表現(xiàn)出

15、來。之間的聯(lián)系也表現(xiàn)出來。 Use Case間的聯(lián)系最常見的有間的聯(lián)系最常見的有,和和等聯(lián)系。如圖等聯(lián)系。如圖4所示,所示,Use Case“查詢課程信息查詢課程信息”和和Use Case“選課注冊選課注冊”都與都與Use Case“身份驗證身份驗證”有有聯(lián)系,即它們在運行中都使用聯(lián)系,即它們在運行中都使用Use Case“身份驗證身份驗證”進(jìn)行用戶的合法身份檢查。同樣的進(jìn)行用戶的合法身份檢查。同樣的聯(lián)系存在于其他聯(lián)系存在于其他Use Case與與Use Case“身份驗證身份驗證”之間。之間。 2.4 繪制繪制Use Case圖圖 2.5 繪制主要交互圖繪制主要交互圖 交互圖描述交互圖描述U

16、se Case如何實現(xiàn)對象之間的交互。如何實現(xiàn)對象之間的交互。 交互圖用于建立系統(tǒng)的動態(tài)行為模型。交互圖用于建立系統(tǒng)的動態(tài)行為模型。Use Case圖是系統(tǒng)圖是系統(tǒng)的外部視圖,在分析和繪制了的外部視圖,在分析和繪制了Use Case圖之后,對主要的圖之后,對主要的Use Case做交互行為的分析是有必要的。分析的結(jié)果可以寫成文檔做交互行為的分析是有必要的。分析的結(jié)果可以寫成文檔,繪制初步的交互圖,從而更清楚地理解,繪制初步的交互圖,從而更清楚地理解Use Case的行為,以的行為,以便進(jìn)一步調(diào)整便進(jìn)一步調(diào)整Use Case視圖,確定問題的解決方案。視圖,確定問題的解決方案。 交互圖有兩種:順序

17、圖和協(xié)同圖??梢愿鶕?jù)需要繪制。交互圖有兩種:順序圖和協(xié)同圖??梢愿鶕?jù)需要繪制。 繪制活動者繪制活動者“學(xué)生學(xué)生”與與Use Case“選課注冊選課注冊”的順序圖的順序圖. Use Case “選課注冊選課注冊”的的行為由行為由“注冊表單注冊表單”接口對象、接口對象、“選課注冊表單選課注冊表單”接口對象和接口對象和“開開設(shè)課程設(shè)課程”對象實現(xiàn)。對象實現(xiàn)。 在項目開發(fā)之初,分析問在項目開發(fā)之初,分析問題領(lǐng)域時,繪制交互圖只是為題領(lǐng)域時,繪制交互圖只是為了印證領(lǐng)域分析的結(jié)果和了印證領(lǐng)域分析的結(jié)果和Use Case視圖的正確性,在以后對視圖的正確性,在以后對系統(tǒng)動態(tài)行為建模的過程中,系統(tǒng)動態(tài)行為建模的

18、過程中,還需要對交互圖做深入的分析、還需要對交互圖做深入的分析、細(xì)化和完善。細(xì)化和完善。 2.5 繪制主要交互圖繪制主要交互圖 系統(tǒng)的靜態(tài)結(jié)構(gòu)模型主要由對象類圖和對象圖表達(dá)。系統(tǒng)的靜態(tài)結(jié)構(gòu)模型主要由對象類圖和對象圖表達(dá)。發(fā)現(xiàn)對象類及其聯(lián)系,確定它們的靜態(tài)結(jié)構(gòu)和動態(tài)行為,發(fā)現(xiàn)對象類及其聯(lián)系,確定它們的靜態(tài)結(jié)構(gòu)和動態(tài)行為,是面向?qū)ο蠓治龅淖罨镜娜蝿?wù)。是面向?qū)ο蠓治龅淖罨镜娜蝿?wù)。 3 靜態(tài)結(jié)構(gòu)模型靜態(tài)結(jié)構(gòu)模型 3.1 建立對象類圖建立對象類圖1定義對象類定義對象類 首先從研究首先從研究Use Case和交互劇本中發(fā)現(xiàn)對象類,確定和交互劇本中發(fā)現(xiàn)對象類,確定類的屬性和主要操作。對于類的屬性和主要操

19、作。對于JXGL系統(tǒng)可以抽象出以下一些系統(tǒng)可以抽象出以下一些主要的對象類。主要的對象類。(1)在人事信息處理方面有在人事信息處理方面有“學(xué)生學(xué)生”類、類、“教師教師”類。類。(2)在選課管理方面有在選課管理方面有“課程課程”類、類、“開設(shè)課程開設(shè)課程”類、類、“學(xué)生登記學(xué)生登記”類、類、“課程登記課程登記”類、類、“選課統(tǒng)計選課統(tǒng)計”類等。類等。(3)在成績管理方面有在成績管理方面有“學(xué)生成績登記學(xué)生成績登記”類、類、“成績統(tǒng)計成績統(tǒng)計”類。類。對于每一個類應(yīng)當(dāng)確定其職責(zé)、屬性、主要操作以及其他性對于每一個類應(yīng)當(dāng)確定其職責(zé)、屬性、主要操作以及其他性質(zhì)說明。質(zhì)說明。 對象類的操作可以通過檢查分析

20、交互圖確定,把交互圖對象類的操作可以通過檢查分析交互圖確定,把交互圖中對象之間的交互活動抽象成一個類的操作。例如,可以從中對象之間的交互活動抽象成一個類的操作。例如,可以從課程信息管理順序圖中的活動課程信息管理順序圖中的活動“加入課程(數(shù)據(jù)結(jié)構(gòu),基礎(chǔ)課,加入課程(數(shù)據(jù)結(jié)構(gòu),基礎(chǔ)課,3)”抽象得到抽象得到“課程課程”類的操作類的操作“加入課程()加入課程()”。 3.1 建立對象類圖建立對象類圖2定義用戶接口定義用戶接口 除了一般類外還需要分析與定義系統(tǒng)的用戶接口,這些除了一般類外還需要分析與定義系統(tǒng)的用戶接口,這些接口??梢杂脤ο箢惗x。接口??梢杂脤ο箢惗x。對于對于JXGL系統(tǒng)可以有以下一

21、些用戶接口類。系統(tǒng)可以有以下一些用戶接口類。 3.1 建立對象類圖建立對象類圖3定義聯(lián)系定義聯(lián)系 在定義了對象類之后,需要進(jìn)一步分析對象類之間的在定義了對象類之后,需要進(jìn)一步分析對象類之間的聯(lián)系。聯(lián)系。JXGL系統(tǒng)的對象類之間的聯(lián)系有多種類型,關(guān)聯(lián)、系統(tǒng)的對象類之間的聯(lián)系有多種類型,關(guān)聯(lián)、聚合、泛化、依賴等都有。聚合、泛化、依賴等都有。 3.1 建立對象類圖建立對象類圖(1)關(guān)聯(lián)。)關(guān)聯(lián)。在在“開設(shè)課程開設(shè)課程”類與類與“師生師生”類之間存類之間存在在“授課授課”關(guān)聯(lián)和關(guān)聯(lián)和“登記注冊登記注冊”關(guān)聯(lián)。關(guān)聯(lián)。在在“開設(shè)課程開設(shè)課程”類類與與“學(xué)生成績登學(xué)生成績登記記”類之間存在類之間存在關(guān)聯(lián)。相

22、互關(guān)聯(lián)關(guān)聯(lián)。相互關(guān)聯(lián)的類之間不存在的類之間不存在繼承關(guān)系,而是繼承關(guān)系,而是通過消息傳遞相通過消息傳遞相互聯(lián)系、協(xié)同工互聯(lián)系、協(xié)同工作。作。 3.1 建立對象類圖建立對象類圖(2)聚集聯(lián)系)聚集聯(lián)系。新學(xué)期開設(shè)的課程只是學(xué)校的教學(xué)計劃中需要。新學(xué)期開設(shè)的課程只是學(xué)校的教學(xué)計劃中需要設(shè)置的課程中的一部分,設(shè)置的課程中的一部分,“開設(shè)課程開設(shè)課程”類與類與“課程課程”類之間存在聚集類之間存在聚集聯(lián)系,聯(lián)系,“開設(shè)課程開設(shè)課程”類是代表部分的對象類,類是代表部分的對象類,“課程課程”類是代表整體類是代表整體的對象類。同樣地,的對象類。同樣地,“開設(shè)課程開設(shè)課程”類與類與“學(xué)生登記學(xué)生登記”類、類、“

23、課程登記課程登記”類之間存在聚集聯(lián)系。類之間存在聚集聯(lián)系。 3.1 建立對象類圖建立對象類圖【例【例3-203-20】分析下面程序的運行結(jié)果分析下面程序的運行結(jié)果(3)泛化聯(lián)系。)泛化聯(lián)系。把學(xué)生與教師的共同信息和共把學(xué)生與教師的共同信息和共同操作抽取出來,組成一個新同操作抽取出來,組成一個新類類“師生師生”,原來的,原來的“學(xué)生學(xué)生”類中類中保留學(xué)生特有的屬性保留學(xué)生特有的屬性“專業(yè)專業(yè)”和和“班級班級”,在,在“教師教師”類中保留教類中保留教師特有的屬性師特有的屬性“職稱職稱”。 “學(xué)學(xué)生生”類、類、“教師教師”類與類與“師生師生”類的類的聯(lián)系為泛化聯(lián)系,聯(lián)系為泛化聯(lián)系,“師生師生”類為類

24、為更一般的類,更一般的類,“學(xué)生學(xué)生”類和類和“教師教師”類是特殊類,它們繼承類是特殊類,它們繼承“師生師生”類中的公共屬性。類中的公共屬性。(4)依賴聯(lián)系。)依賴聯(lián)系。 成績統(tǒng)計是在學(xué)生的成績數(shù)據(jù)上進(jìn)行的,在成績統(tǒng)計是在學(xué)生的成績數(shù)據(jù)上進(jìn)行的,在“成績統(tǒng)計成績統(tǒng)計”類與類與“學(xué)生成績登記學(xué)生成績登記”類之間存在依賴聯(lián)類之間存在依賴聯(lián)系,系,“成績統(tǒng)計成績統(tǒng)計”類依賴于類依賴于“學(xué)生成績登記學(xué)生成績登記”類。同類。同樣地,樣地,“選課統(tǒng)計選課統(tǒng)計”類依賴于類依賴于“開設(shè)課程開設(shè)課程”類。類。 在定義聯(lián)系時,需要同時分析和確定聯(lián)系端在定義聯(lián)系時,需要同時分析和確定聯(lián)系端的對象類的多重性、角色、導(dǎo)

25、航等性質(zhì)。這些可的對象類的多重性、角色、導(dǎo)航等性質(zhì)。這些可以從需求分析、領(lǐng)域知識來分析和確定。以從需求分析、領(lǐng)域知識來分析和確定。 在確定對象類之間的聯(lián)系的同時,還需要考在確定對象類之間的聯(lián)系的同時,還需要考慮對象類之間的接口。慮對象類之間的接口。 3.1 建立對象類圖建立對象類圖 JXGL系統(tǒng)采用關(guān)系數(shù)據(jù)庫系統(tǒng)存儲和管理數(shù)據(jù)。在系統(tǒng)采用關(guān)系數(shù)據(jù)庫系統(tǒng)存儲和管理數(shù)據(jù)。在分析和設(shè)計系統(tǒng)的靜態(tài)結(jié)構(gòu)模型時需要進(jìn)行數(shù)據(jù)分析和數(shù)分析和設(shè)計系統(tǒng)的靜態(tài)結(jié)構(gòu)模型時需要進(jìn)行數(shù)據(jù)分析和數(shù)據(jù)庫設(shè)計。據(jù)庫設(shè)計。 JXGL系統(tǒng)有系統(tǒng)有4個方面的數(shù)據(jù)需要管理:人員數(shù)據(jù)個方面的數(shù)據(jù)需要管理:人員數(shù)據(jù)(學(xué)生、教師)、課程數(shù)據(jù)

26、、選課注冊數(shù)據(jù)和學(xué)生成績數(shù)(學(xué)生、教師)、課程數(shù)據(jù)、選課注冊數(shù)據(jù)和學(xué)生成績數(shù)據(jù)。經(jīng)過分析,據(jù)。經(jīng)過分析,JXGL系統(tǒng)至少應(yīng)有系統(tǒng)至少應(yīng)有6個數(shù)據(jù)庫表:學(xué)生個數(shù)據(jù)庫表:學(xué)生表、教師表、課程表、開設(shè)課程表、選課表和任課表。表、教師表、課程表、開設(shè)課程表、選課表和任課表。 3.2 建立數(shù)據(jù)庫模型建立數(shù)據(jù)庫模型這些基本表定義為這些基本表定義為 學(xué)生(學(xué)生號、姓名、出生日期、性別、籍貫、地學(xué)生(學(xué)生號、姓名、出生日期、性別、籍貫、地址、電話、入學(xué)時間、專業(yè)、班級備注)址、電話、入學(xué)時間、專業(yè)、班級備注) 教師(教師號、姓名、出生日期、性別、籍貫、地教師(教師號、姓名、出生日期、性別、籍貫、地址、電話、職

27、稱、專長、備注)址、電話、職稱、專長、備注) 課程(課程號、課程名、描述、學(xué)分、學(xué)時、性質(zhì)、課程(課程號、課程名、描述、學(xué)分、學(xué)時、性質(zhì)、備注)備注) 開設(shè)課程(課程號、學(xué)期、授課日期、授課時間、開設(shè)課程(課程號、學(xué)期、授課日期、授課時間、地點、選修人數(shù)、備注)地點、選修人數(shù)、備注) 選課(學(xué)生號、課程號、學(xué)期、成績、備注)選課(學(xué)生號、課程號、學(xué)期、成績、備注) 任課(教師號、課程號、學(xué)期、備注)任課(教師號、課程號、學(xué)期、備注) 對于上述的基本表需要進(jìn)行關(guān)系規(guī)范化,設(shè)計用戶對于上述的基本表需要進(jìn)行關(guān)系規(guī)范化,設(shè)計用戶視圖、觸發(fā)器、存儲過程等。視圖、觸發(fā)器、存儲過程等。 數(shù)據(jù)庫模式通常用實體

28、數(shù)據(jù)庫模式通常用實體聯(lián)系模型(聯(lián)系模型(ERD)表示,)表示,如果需要也可以用對象類圖為數(shù)據(jù)庫模式建立模型。如果需要也可以用對象類圖為數(shù)據(jù)庫模式建立模型。 3.2 建立數(shù)據(jù)庫模型建立數(shù)據(jù)庫模型 3.3 建立包圖建立包圖JXGL系統(tǒng)一共有系統(tǒng)一共有5個包:個包:“教學(xué)管理教學(xué)管理”包、包、“用戶接口用戶接口”包、包、“數(shù)據(jù)庫數(shù)據(jù)庫”包、包、“MFC類類”包和包和“出錯處理出錯處理”包。包。 “教學(xué)管理教學(xué)管理”包如圖包如圖12所示,其中所示,其中包含了為實現(xiàn)教學(xué)管理業(yè)務(wù)領(lǐng)域任包含了為實現(xiàn)教學(xué)管理業(yè)務(wù)領(lǐng)域任務(wù)的對象類,即前文敘述的全部對務(wù)的對象類,即前文敘述的全部對象類:象類:“學(xué)生學(xué)生”類、類、

29、“教師教師”類、類、“師生師生”類、類、“課程課程”類、類、“開設(shè)課程開設(shè)課程”類、類、“學(xué)學(xué)生登記生登記”類、類、“課程登記課程登記”類、類、“選課統(tǒng)選課統(tǒng)計計”類、類、“學(xué)生成績登記學(xué)生成績登記”類、類、“成績統(tǒng)成績統(tǒng)計計”類,以及類,以及“身份驗證身份驗證”類等。類等。 這些類又分別組成這些類又分別組成3個小包:個小包:“選課管理選課管理”包、包、“成績管理成績管理”包和包和“人事人事信息信息”包。包?!吧矸蒡炞C身份驗證”類則相對獨立類則相對獨立。 3.3 建立包圖建立包圖JXGL系統(tǒng)由如下系統(tǒng)由如下兩個子系統(tǒng)組成兩個子系統(tǒng)組成。 (1)課程注冊子系統(tǒng),負(fù)責(zé)新學(xué)期的選課注冊管理)課程注冊

30、子系統(tǒng),負(fù)責(zé)新學(xué)期的選課注冊管理工作。工作。 (2)成績管理子系統(tǒng),負(fù)責(zé)學(xué)生成績管理。)成績管理子系統(tǒng),負(fù)責(zé)學(xué)生成績管理。 3.3 建立包圖建立包圖 系統(tǒng)的動態(tài)行為模型由系統(tǒng)的動態(tài)行為模型由交互圖(順序圖和協(xié)同圖)、交互圖(順序圖和協(xié)同圖)、狀態(tài)機圖和活動圖狀態(tài)機圖和活動圖表達(dá)。表達(dá)。 在系統(tǒng)的分析和設(shè)計中應(yīng)當(dāng)對主要的在系統(tǒng)的分析和設(shè)計中應(yīng)當(dāng)對主要的Use Case和對和對象類繪制這些圖形,以便分析系統(tǒng)的行為,印證和修改系象類繪制這些圖形,以便分析系統(tǒng)的行為,印證和修改系統(tǒng)的靜態(tài)結(jié)構(gòu),滿足用戶的需求,達(dá)到系統(tǒng)的目標(biāo)。統(tǒng)的靜態(tài)結(jié)構(gòu),滿足用戶的需求,達(dá)到系統(tǒng)的目標(biāo)。 4 動態(tài)行為模型動態(tài)行為模型繪

31、制設(shè)置開設(shè)課程的順序圖繪制設(shè)置開設(shè)課程的順序圖.其中的交互事件如下。其中的交互事件如下。 4.1 建立順序圖建立順序圖 協(xié)同圖協(xié)同圖用于描述系統(tǒng)的行為是如何由系統(tǒng)的成分實現(xiàn)的。用于描述系統(tǒng)的行為是如何由系統(tǒng)的成分實現(xiàn)的。對于對于JXGL系統(tǒng)也需要繪制主要的系統(tǒng)也需要繪制主要的Use Case的協(xié)同圖,以深的協(xié)同圖,以深入了解和表示系統(tǒng)的行為和各個對象的作用。入了解和表示系統(tǒng)的行為和各個對象的作用。對于一個協(xié)同圖,首先應(yīng)確定參與協(xié)同的對象角色、關(guān)聯(lián)角對于一個協(xié)同圖,首先應(yīng)確定參與協(xié)同的對象角色、關(guān)聯(lián)角色和消息,然后才能繪制協(xié)同圖。色和消息,然后才能繪制協(xié)同圖。 例如,對于例如,對于Use Cas

32、e“管理課程信息管理課程信息”的協(xié)同圖如圖的協(xié)同圖如圖16所示。圖中的對象角色有所示。圖中的對象角色有“注冊表單注冊表單”接口對象、接口對象、“開設(shè)課程開設(shè)課程表單表單”接口對象、接口對象、“課程課程”對象和對象和“開設(shè)課程開設(shè)課程”對象。它們協(xié)同對象。它們協(xié)同工作,實現(xiàn)設(shè)置新開設(shè)課程的服務(wù)。工作,實現(xiàn)設(shè)置新開設(shè)課程的服務(wù)。 4.2 建立協(xié)同圖建立協(xié)同圖 4.2 建立協(xié)同圖建立協(xié)同圖 活動者活動者“教學(xué)管理員教學(xué)管理員”與與“注冊表單注冊表單”接口對象聯(lián)系。接口對象聯(lián)系?!白宰员韱伪韱巍苯涌趯ο笈c接口對象與“開設(shè)課程表單開設(shè)課程表單”接口對象之間、接口對象之間、“開設(shè)課程開設(shè)課程表單表單”

33、接口對象與接口對象與“課程課程”對象之間、對象之間、“開設(shè)課程表單開設(shè)課程表單”接口對象接口對象與與“開設(shè)課程開設(shè)課程”對象之間存在著關(guān)聯(lián)?;顒诱邔ο笾g存在著關(guān)聯(lián)?;顒诱摺敖虒W(xué)管理員教學(xué)管理員”發(fā)發(fā)送消息送消息“登錄登錄”給給“注冊表單注冊表單”接口對象,接口對象,“注冊表單注冊表單”接口對象接口對象發(fā)送消息發(fā)送消息“新開課程新開課程”給給“開設(shè)課程表單開設(shè)課程表單”接口對象,接口對象,“開設(shè)課程開設(shè)課程表單表單”接口對象發(fā)送消息接口對象發(fā)送消息“取課程信息取課程信息”給給“課程課程”對象,發(fā)送消對象,發(fā)送消息息“增加增加/刪除開設(shè)課程刪除開設(shè)課程”給給“開設(shè)課程開設(shè)課程”對象。對象。 4.2 建立協(xié)同圖建立協(xié)同圖 狀態(tài)機圖狀態(tài)機圖表現(xiàn)一個表現(xiàn)一個對象(類)的生命史。對象(類)的生命史。對于一些實現(xiàn)重要行為對于一些實現(xiàn)重要行為動作的對象應(yīng)當(dāng)繪制狀動作的對象應(yīng)當(dāng)繪制狀態(tài)機圖。繪制狀態(tài)機圖態(tài)機圖。繪制狀態(tài)機圖需要確定一個對象的生需要確定一個對象的生命期可能出現(xiàn)的全部狀命期可能出現(xiàn)的全部狀態(tài),哪些事件將引起狀態(tài),哪些事件將引起狀態(tài)的轉(zhuǎn)移,將會發(fā)生哪態(tài)的轉(zhuǎn)移,將會發(fā)生哪些動作。些動作。學(xué)生的選課學(xué)生登記狀學(xué)生的選課學(xué)生登記狀態(tài)機圖如圖所示。態(tài)機圖如圖所示。 4.3 建立狀態(tài)機圖建立狀態(tài)機圖同樣地,可以繪制選課課程登記狀態(tài)機圖如圖所示同樣地,可以繪制選課課程登記狀態(tà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

提交評論