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

下載本文檔

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

文檔簡介

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

2、們主張采用Use Case驅(qū)動(dòng)的軟件開發(fā)方驅(qū)動(dòng)的軟件開發(fā)方法。實(shí)際上,法。實(shí)際上,UML是一種通用的工具,它可以使用于是一種通用的工具,它可以使用于Use Case驅(qū)動(dòng)的軟件開發(fā),也可以使用于其他面向?qū)ο蟮能浖?qū)動(dòng)的軟件開發(fā),也可以使用于其他面向?qū)ο蟮能浖_發(fā)方法,例如直接從現(xiàn)實(shí)世界抽象出對象和類,建立系開發(fā)方法,例如直接從現(xiàn)實(shí)世界抽象出對象和類,建立系統(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 定義活動(dòng)者定義活動(dòng)者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 動(dòng)態(tài)行為模型動(dòng)態(tài)行為模型n4.1 4.1 建立順序圖建立順序圖n4.2 4.2 建立協(xié)同圖建立協(xié)同圖n4.3 4.3 建立狀態(tài)機(jī)圖建立狀態(tài)機(jī)圖n4.4 4.4 建立活動(dòng)圖建立活動(dòng)圖n5 5 物理模型物理模型n5.1 5.1 建立組件圖建立組件圖n5.2 5.2 建立配置圖建立配置圖n本章小結(jié)和習(xí)題本章小結(jié)和

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

5、成績管理。成績錄入成績錄入成績查詢成績查詢成績統(tǒng)計(jì)與報(bào)表生成成績統(tǒng)計(jì)與報(bào)表生成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)有財(cái)務(wù)系統(tǒng)。系統(tǒng)的相關(guān)系統(tǒng)有財(cái)務(wù)系統(tǒng)。JXGL系統(tǒng)需要把系統(tǒng)需要把學(xué)生選課注冊信息傳送給財(cái)務(wù)系統(tǒng),以供財(cái)務(wù)系統(tǒng)計(jì)算學(xué)

6、學(xué)生選課注冊信息傳送給財(cái)務(wù)系統(tǒng),以供財(cái)務(wù)系統(tǒng)計(jì)算學(xué)生應(yīng)交納的費(fèi)用,但是不要求財(cái)務(wù)系統(tǒng)回饋學(xué)生應(yīng)交納的生應(yīng)交納的費(fèi)用,但是不要求財(cái)務(wù)系統(tǒng)回饋學(xué)生應(yīng)交納的費(fèi)用信息。費(fèi)用信息。 假定在學(xué)校的計(jì)算中心有功能強(qiáng)大的工作站機(jī)器,在假定在學(xué)校的計(jì)算中心有功能強(qiáng)大的工作站機(jī)器,在各系、各部門、圖書館、學(xué)生宿舍都有臺(tái)式各系、各部門、圖書館、學(xué)生宿舍都有臺(tái)式PC,學(xué)校的全,學(xué)校的全部計(jì)算機(jī)已經(jīng)連網(wǎng)。部計(jì)算機(jī)已經(jīng)連網(wǎng)。JXGL系統(tǒng)將采用客戶機(jī)系統(tǒng)將采用客戶機(jī)/服務(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é)校計(jì)算中心的工作站。計(jì)算中心的工作站。

7、學(xué)生、教師和教學(xué)管理員可以在各系、各部門、圖書學(xué)生、教師和教學(xué)管理員可以在各系、各部門、圖書館、學(xué)生宿舍的臺(tái)式館、學(xué)生宿舍的臺(tái)式PC上使用上使用JXGL系統(tǒng)。系統(tǒng)。1 系統(tǒng)需求系統(tǒng)需求 2 分析問題領(lǐng)域分析問題領(lǐng)域 分析問題領(lǐng)域分析問題領(lǐng)域是軟件系統(tǒng)開發(fā)的一項(xiàng)基本工作,是項(xiàng)是軟件系統(tǒng)開發(fā)的一項(xiàng)基本工作,是項(xiàng)目開發(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é)計(jì)劃、排課、實(shí)責(zé)范圍,其他的教學(xué)管理內(nèi)容,如安排教學(xué)計(jì)劃、排課、實(shí)習(xí)、實(shí)驗(yàn)、考試等都不屬于習(xí)、實(shí)驗(yàn)、考試等都不屬于JXGL系統(tǒng)的職責(zé)范圍。至于學(xué)系統(tǒng)的職責(zé)范圍。至于學(xué)校的其他管理工作,如科研、人事、財(cái)務(wù)、資產(chǎn)等管理也不校的其他管理工作,如科研、人事、財(cái)務(wù)、資產(chǎn)等管理也不屬于屬于JXGL系統(tǒng)的職責(zé)范圍。系統(tǒng)的職責(zé)范圍。 JXGL系統(tǒng)與財(cái)務(wù)系統(tǒng)存在系統(tǒng)邊界,財(cái)務(wù)系統(tǒng)將從系統(tǒng)與財(cái)務(wù)系統(tǒng)存在系統(tǒng)邊界,財(cái)務(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é)計(jì)劃但是可以從學(xué)校的全局?jǐn)?shù)據(jù)庫中共享學(xué)生、教師、教學(xué)計(jì)劃等必要的數(shù)據(jù)。等必要的數(shù)據(jù)。 2.2 定義活動(dòng)者定義活動(dòng)者 根據(jù)根據(jù)JXGL系統(tǒng)的職責(zé)范圍和需求可以確定系統(tǒng)的職責(zé)范圍和需求可以確定4個(gè)活動(dòng)者:個(gè)活動(dòng)者:學(xué)生、老師、教學(xué)管理員和財(cái)務(wù)系統(tǒng)。對于每一個(gè)活動(dòng)者,學(xué)生、老師、教學(xué)管理員和財(cái)務(wù)系統(tǒng)。對于每一個(gè)活動(dòng)者,應(yīng)當(dāng)明確其業(yè)務(wù)活動(dòng)的內(nèi)容、對系統(tǒng)的服務(wù)要求。應(yīng)當(dāng)明確其業(yè)務(wù)活動(dòng)的內(nèi)容、對系統(tǒng)的服務(wù)要求。 “學(xué)生學(xué)生”活動(dòng)者活動(dòng)者使用使用JXGL系統(tǒng)查詢新學(xué)期開設(shè)的課程信系統(tǒng)查詢

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

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

13、。 Use Case“選課管理選課管理”與與4個(gè)活動(dòng)者都存在交互,個(gè)活動(dòng)者都存在交互,Use Case“成績管理成績管理”與活動(dòng)者與活動(dòng)者“學(xué)生學(xué)生”、“老師老師”和和“教學(xué)管教學(xué)管理員理員”存在著交互。存在著交互。 2.3 定義定義Use Case 2.4 繪制繪制Use Case圖圖 Use Case圖是系統(tǒng)的外部行為視圖。在確定了活動(dòng)圖是系統(tǒng)的外部行為視圖。在確定了活動(dòng)者和者和Use Case的基礎(chǔ)上,繪制的基礎(chǔ)上,繪制Use Case圖,可視化活圖,可視化活動(dòng)者與動(dòng)者與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圖之外,對每一個(gè)圖之外,對每一個(gè)Use Case還應(yīng)進(jìn)還應(yīng)進(jìn)行描述,編寫行描述,編寫Use Case的說明文檔。的說明文檔。 在繪制在繪制Use Case圖時(shí)不但要把圖時(shí)不但要把Use Case與活動(dòng)者之間的與活動(dòng)者之間的聯(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“身份驗(yàn)證身份驗(yàn)證”有有聯(lián)系,即它們在運(yùn)行中都使聯(lián)系,即它們在運(yùn)行中都使用用Use Case“身份驗(yàn)證身份驗(yàn)證”進(jìn)行用戶的合法身份檢查。同樣的進(jìn)行用戶的合法身份檢查。同樣的聯(lián)系存在于其他聯(lián)系存在于其他Use Case與與Use Case“身份驗(yàn)身份驗(yàn)證證”之間。之間。 2.4 繪制繪制Use Case圖圖 2.5 繪制主要交互圖繪制主要交互圖 交互圖描述交互圖描述U

16、se Case如何實(shí)現(xiàn)對象之間的交互。如何實(shí)現(xiàn)對象之間的交互。 交互圖用于建立系統(tǒng)的動(dòng)態(tài)行為模型。交互圖用于建立系統(tǒng)的動(dò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ù)需要繪制。 繪制活動(dòng)者繪制活動(dòng)者“學(xué)生學(xué)生”與與Use Case“選課注冊選課注冊”的順序的順序圖圖. Use Case “選課注冊選課注冊”的行為由的行為由“注冊表單注冊表單”接口對接口對象、象、“選課注冊表單選課注冊表單”接口對接口對象和象和“開設(shè)課程開設(shè)課程”對象實(shí)現(xiàn)。對象實(shí)現(xiàn)。 在項(xiàng)目開發(fā)之初,分析問在項(xiàng)目開發(fā)之初,分析問題領(lǐng)域時(shí),繪制交互圖只是為題領(lǐng)域時(shí),繪制交互圖只是為了印證領(lǐng)域分析的結(jié)果和了印證領(lǐng)域分析的結(jié)果和Use Case視圖的正確性,在以后對視圖的正確性,在以后對系統(tǒng)動(dòng)態(tài)行為建模的過程中,系統(tǒng)動(dò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)和動(dòng)態(tài)行為,發(fā)現(xiàn)對象類及其聯(lián)系,確定它們的靜態(tài)結(jié)構(gòu)和動(dòng)態(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)計(jì)選課統(tǒng)計(jì)”類等。類等。(3)在成績管理方面有在成績管理方面有“學(xué)生成績登記學(xué)生成績登記”類、類、“成績統(tǒng)計(jì)成績統(tǒng)計(jì)”類。類。對于每一個(gè)類應(yīng)當(dāng)確定其職責(zé)、屬性、主要操作以及其他性對于每一個(gè)類應(yīng)當(dāng)確定其職責(zé)、屬性、主要操作以及其他性質(zhì)說明。質(zhì)說明。 對象類的操作可以通過檢查分析

20、交互圖確定,把交互圖對象類的操作可以通過檢查分析交互圖確定,把交互圖中對象之間的交互活動(dòng)抽象成一個(gè)類的操作。例如,可以從中對象之間的交互活動(dòng)抽象成一個(gè)類的操作。例如,可以從課程信息管理順序圖中的活動(dòng)課程信息管理順序圖中的活動(dòng)“加入課程(數(shù)據(jù)結(jié)構(gòu),基礎(chǔ)加入課程(數(shù)據(jù)結(jié)構(gòu),基礎(chǔ)課,課,3)”抽象得到抽象得到“課程課程”類的操作類的操作“加入課程()加入課程()”。 3.1 建立對象類圖建立對象類圖2定義用戶接口定義用戶接口 除了一般類外還需要分析與定義系統(tǒng)的用戶接口,這些除了一般類外還需要分析與定義系統(tǒng)的用戶接口,這些接口常可以用對象類定義。接口??梢杂脤ο箢惗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é)計(jì)劃中需要。新學(xué)期開設(shè)的課程只是學(xué)校的教學(xué)計(jì)劃中需要設(shè)置的課程中的一部分,設(shè)置的課程中的一部分,“開設(shè)課程開設(shè)課程”類與類與“課程課程”類之間存在類之間存在聚集聯(lián)系,聚集聯(lián)系,“開設(shè)課程開設(shè)課程”類是代表部分的對象類,類是代表部分的對象類,“課程課程”類是類是代表整體的對象類。同樣地,代表整體的對象類。同樣地,“開設(shè)課程開設(shè)課程”類與類與“學(xué)生登記學(xué)生登記”類類、“課

23、程登記課程登記”類之間存在聚集聯(lián)系。類之間存在聚集聯(lián)系。 3.1 建立對象類圖建立對象類圖【例【例3-203-20】分析下面程序的運(yùn)行結(jié)果分析下面程序的運(yùn)行結(jié)果(3)泛化聯(lián)系。)泛化聯(lián)系。把學(xué)生與教師的共同信息和共把學(xué)生與教師的共同信息和共同操作抽取出來,組成一個(gè)新同操作抽取出來,組成一個(gè)新類類“師生師生”,原來的,原來的“學(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)計(jì)是在學(xué)生的成績數(shù)據(jù)上進(jìn)行的,在成績統(tǒng)計(jì)是在學(xué)生的成績數(shù)據(jù)上進(jìn)行的,在“成績統(tǒng)計(jì)成績統(tǒng)計(jì)”類與類與“學(xué)生成績登記學(xué)生成績登記”類之間存在類之間存在依賴聯(lián)系,依賴聯(lián)系,“成績統(tǒng)計(jì)成績統(tǒng)計(jì)”類依賴于類依賴于“學(xué)生成績登學(xué)生成績登記記”類。同樣地,類。同樣地,“選課統(tǒng)計(jì)選課統(tǒng)計(jì)”類依賴于類依賴于“開設(shè)開設(shè)課程課程”類。類。 在定義聯(lián)系時(shí),需要同時(shí)分析和確定聯(lián)系端在定義聯(lián)系時(shí),需要同時(shí)分析和確定聯(lián)系端的對象類的多重性、角色、導(dǎo)航

25、等性質(zhì)。這些可的對象類的多重性、角色、導(dǎo)航等性質(zhì)。這些可以從需求分析、領(lǐng)域知識(shí)來分析和確定。以從需求分析、領(lǐng)域知識(shí)來分析和確定。 在確定對象類之間的聯(lián)系的同時(shí),還需要考在確定對象類之間的聯(lián)系的同時(shí),還需要考慮對象類之間的接口。慮對象類之間的接口。 3.1 建立對象類圖建立對象類圖 JXGL系統(tǒng)采用關(guān)系數(shù)據(jù)庫系統(tǒng)存儲(chǔ)和管理數(shù)據(jù)。在系統(tǒng)采用關(guān)系數(shù)據(jù)庫系統(tǒng)存儲(chǔ)和管理數(shù)據(jù)。在分析和設(shè)計(jì)系統(tǒng)的靜態(tài)結(jié)構(gòu)模型時(shí)需要進(jìn)行數(shù)據(jù)分析和數(shù)分析和設(shè)計(jì)系統(tǒng)的靜態(tài)結(jié)構(gòu)模型時(shí)需要進(jìn)行數(shù)據(jù)分析和數(shù)據(jù)庫設(shè)計(jì)。據(jù)庫設(shè)計(jì)。 JXGL系統(tǒng)有系統(tǒng)有4個(gè)方面的數(shù)據(jù)需要管理:人員數(shù)據(jù)個(gè)方面的數(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個(gè)數(shù)據(jù)庫表:學(xué)生個(gè)數(shù)據(jù)庫表:學(xué)生表、教師表、課程表、開設(shè)課程表、選課表和任課表。表、教師表、課程表、開設(shè)課程表、選課表和任課表。 3.2 建立數(shù)據(jù)庫模型建立數(shù)據(jù)庫模型這些基本表定義為這些基本表定義為 學(xué)生(學(xué)生號、姓名、出生日期、性別、籍貫、地學(xué)生(學(xué)生號、姓名、出生日期、性別、籍貫、地址、電話、入學(xué)時(shí)間、專業(yè)、班級備注)址、電話、入學(xué)時(shí)間、專業(yè)、班級備注) 教師(教師號、姓名、出生日期、性別、籍貫、地教師(教師號、姓名、出生日期、性別、籍貫、地址、電話、職稱

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

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

29、教師教師”類類、“師生師生”類、類、“課程課程”類、類、“開開設(shè)課程設(shè)課程”類、類、“學(xué)生登記學(xué)生登記”類、類、“課程登記課程登記”類、類、“選課統(tǒng)計(jì)選課統(tǒng)計(jì)”類、類、“學(xué)生成績登記學(xué)生成績登記”類、類、“成績統(tǒng)計(jì)成績統(tǒng)計(jì)”類,以及類,以及“身份驗(yàn)證身份驗(yàn)證”類等。類等。 這些類又分別組成這些類又分別組成3個(gè)小包:個(gè)小包:“選課管理選課管理”包、包、“成績管理成績管理”包和包和“人事信息人事信息”包。包?!吧矸蒡?yàn)證身份驗(yàn)證”類類則相對獨(dú)立。則相對獨(dú)立。 3.3 建立包圖建立包圖JXGL系統(tǒng)由如下系統(tǒng)由如下兩個(gè)子系統(tǒng)組成兩個(gè)子系統(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)的動(dòng)態(tài)行為模型由系統(tǒng)的動(dòng)態(tài)行為模型由交互圖(順序圖和協(xié)同圖)、交互圖(順序圖和協(xié)同圖)、狀態(tài)機(jī)圖和活動(dòng)圖狀態(tài)機(jī)圖和活動(dòng)圖表達(dá)。表達(dá)。 在系統(tǒng)的分析和設(shè)計(jì)中應(yīng)當(dāng)對主要的在系統(tǒng)的分析和設(shè)計(jì)中應(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 動(dòng)態(tài)行為模型動(dòng)態(tài)行為模型繪制

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

32、“管理課程信息管理課程信息”的協(xié)同圖如圖的協(xié)同圖如圖16所示。圖中的對象角色有所示。圖中的對象角色有“注冊表單注冊表單”接口對象、接口對象、“開開設(shè)課程表單設(shè)課程表單”接口對象、接口對象、“課程課程”對象和對象和“開設(shè)課程開設(shè)課程”對象。對象。它們協(xié)同工作,實(shí)現(xiàn)設(shè)置新開設(shè)課程的服務(wù)。它們協(xié)同工作,實(shí)現(xiàn)設(shè)置新開設(shè)課程的服務(wù)。 4.2 建立協(xié)同圖建立協(xié)同圖 4.2 建立協(xié)同圖建立協(xié)同圖 活動(dòng)者活動(dòng)者“教學(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)?;顒?dòng)者動(dòng)者“教學(xué)管理員教學(xué)管理員”發(fā)送消息發(fā)送消息“登錄登錄”給給“注冊表單注冊表單”接口接口對象,對象,“注冊表單注冊表單”接口對象發(fā)送消息接口對象發(fā)送消息“新開課程新開課程”給給“開開設(shè)課程表單設(shè)課程表單”接口對象,接口對象,“開設(shè)課程表單開設(shè)課程表單”接口對象發(fā)送消接口對象發(fā)送消息息“取課程信息取課程信息”給給“課程課程”對象,發(fā)送消息對象,發(fā)送消息“增加增加/刪除開刪除開設(shè)課程設(shè)課程”給給“開設(shè)課程開設(shè)課程”對象。對象。 4.2 建立協(xié)同圖建立協(xié)同圖 狀態(tài)機(jī)圖狀態(tài)機(jī)圖表現(xiàn)一個(gè)表現(xiàn)一個(gè)對象(類)的生命史。對象(類)的生命史。對于一些實(shí)現(xiàn)重要行為對于一些實(shí)現(xiàn)重要行為動(dòng)作的對象應(yīng)當(dāng)繪制狀動(dòng)作的對象應(yīng)當(dāng)繪制狀態(tài)機(jī)圖。繪制狀態(tài)機(jī)圖態(tài)機(jī)圖。繪制狀態(tài)機(jī)圖需要確定一個(gè)對象的生需要確定一個(gè)對象的生命期可能出現(xiàn)的全部狀命期可能出現(xiàn)的全部狀態(tài),哪些事件將引起狀態(tài),哪些事件將引起狀態(tài)的轉(zhuǎn)移,將會(huì)發(fā)生哪態(tài)的轉(zhuǎn)移,將會(huì)發(fā)生哪些動(dòng)作。些動(dòng)作。學(xué)生的選課學(xué)生登記狀學(xué)生的選課學(xué)生登記狀態(tài)機(jī)圖如圖所示。態(tài)機(jī)圖如圖所示。 4.3 建立狀態(tài)機(jī)圖建立狀態(tài)機(jī)圖同樣地,可以繪制選課課程登記狀態(tài)機(jī)圖如圖所示同樣地,可以繪制選課課程登記狀態(tài)機(jī)圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論