基于uml的校外通信錄系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
基于uml的校外通信錄系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
基于uml的校外通信錄系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
基于uml的校外通信錄系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
基于uml的校外通信錄系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

基于uml的校外通信錄系統(tǒng)的設(shè)計與實現(xiàn)

1開發(fā)uml系統(tǒng)的應(yīng)用在云南農(nóng)業(yè)大學(xué),我們的研究團隊計劃開發(fā)一個由許多子系統(tǒng)組成的學(xué)校網(wǎng)站系統(tǒng)。這個開發(fā)出于三個動機:1)服務(wù)所有大學(xué)的在校生、校友、教師,提供他們實用的、及時的信息,為他們進行信息交流建立互動平臺;2)把面向?qū)ο蠛蛙浖こ痰乃枷?、方法和技術(shù),特別UML,運用于這個系統(tǒng)的整個開發(fā)過程,使參與項目的學(xué)生和老師能夠?qū)W以致用,并且,為軟件工程教學(xué)準(zhǔn)備應(yīng)用案例;3)促進本校師生與其它大學(xué)師生的、與社會的信息交流,促進本校的發(fā)展,擴大本校的社會影響。本文中所述通信錄子系統(tǒng),簡稱系統(tǒng)。目的是讓在校生和校友通過瀏覽方式訪問通信錄,實現(xiàn)信息交流。以UML建模驅(qū)動系統(tǒng)開發(fā):建立系統(tǒng)的需求分析的用例圖模型,建立系統(tǒng)設(shè)計的類圖、順序圖和活動圖模型。同時,使用功能流程圖、數(shù)據(jù)流圖、關(guān)系數(shù)據(jù)表和ER圖來幫助系統(tǒng)分析和設(shè)計。運用模塊化和逐步求精原理,逐步建立模型。問題識別、系統(tǒng)分解、模型建立、程序構(gòu)造、用戶界面設(shè)計等均遵循面向?qū)ο蠓椒?。使用C#和ASP.NET編程,SQLServer支持?jǐn)?shù)據(jù)庫,采用B/S(Browser/Server)模式,運行在微軟.NET環(huán)境上。2需求分析2.1開發(fā)通信錄的用戶傳統(tǒng)的書面通信錄、現(xiàn)代的手機通信錄都有不便之處:難以攜帶、信息量小、信息更新不及時、信息互動性差、信息利用率低。因特網(wǎng)提供了方便快速的通信技術(shù)。網(wǎng)站通信錄能容納任意屆、任意班,可包含全面信息(在保護隱私權(quán)的前提下),可由成員自己及時更新信息,信息充分共享。無論在何地何時,我們都可上網(wǎng)訪問通信錄,取得有用信息、進行實時通信。本通信錄在院系下,以班為組織單位,同學(xué)之間可以相互通信。為此,區(qū)分四類用戶:校友網(wǎng)站的普通用戶、通信錄的普通用戶、通信錄的班管理員、通信錄的系統(tǒng)管理員。校友網(wǎng)站的普通用戶指已注冊過校友網(wǎng)站、但未注冊過通信錄的用戶。此類用戶可以登錄校友網(wǎng)站,瀏覽公開信息、做一些有限的操作,但不可以訪問通信錄。通信錄的普通用戶指登錄校友網(wǎng)站后,成功注冊過通信錄的用戶。此類用戶可以進入通信錄,瀏覽相關(guān)信息,修改個人信息和留言。也稱此類用戶為班成員、或成員。通信錄的班管理員是班成員,且管理其所在班的成員的信息和留言。通常,班管理員是一個班的最先注冊用戶。通信錄的系統(tǒng)管理員負責(zé)管理系統(tǒng)的運行,對院系、專業(yè)、班、用戶權(quán)限進行管理。2.2在用例圖中引入數(shù)據(jù)庫本系統(tǒng)主要包括以下功能:登錄校友網(wǎng)站、登錄通信錄后,系統(tǒng)管理員可以對注冊用戶權(quán)限、院系信息、專業(yè)信息、班信息和個人信息進行管理,也可以留言。成員可以對自己的個人信息進行管理,并留言。此系統(tǒng)的參與者是系統(tǒng)管理員、班管理員和成員。系統(tǒng)管理員涉及的用例有:系統(tǒng)權(quán)限管理、維護院系信息、維護專業(yè)信息和維護班信息。班管理員處理用例:刪除班成員。留言、修改個人信息是三種用戶都做的操作。圖1表示系統(tǒng)的全局用例圖。需要說明,UML標(biāo)準(zhǔn)的用例圖并不包含對數(shù)據(jù)庫的表示??墒?在教學(xué)和系統(tǒng)開發(fā)的實踐中,我們發(fā)現(xiàn),在用例圖中適當(dāng)引入數(shù)據(jù)庫表示,可清晰表達系統(tǒng)內(nèi)的數(shù)據(jù)庫與用例、與參與者之間的關(guān)系,幫助發(fā)現(xiàn)、設(shè)計數(shù)據(jù)庫表本身。這里的6張數(shù)據(jù)庫表將在后文詳述。三種用戶對留言具有相同和不同的操作。系統(tǒng)管理員可查詢和刪除任意一條留言(包括班內(nèi)留言和個人留言)。班管理員可查詢和刪除班內(nèi)留言(包括他人的個人留言),可添加和修改自己的個人留言。成員可查詢、添加、修改和刪除自己的個人留言。圖2描述了這些細節(jié),即是圖1中留言的細化。2.3班信息的添加系統(tǒng)管理員管理用戶權(quán)限:查詢、修改、取消。維護院系、專業(yè)和班的信息就說對這些信息進行添加、查詢、修改和刪除。另外,三種用戶都可維護自己的個人信息。從以上分析得知,本系統(tǒng)應(yīng)該提供的功能如圖3所示。這從功能劃分、控制流的角度來觀察系統(tǒng)。3系統(tǒng)設(shè)計3.1生成充放電方案為系統(tǒng)設(shè)計了9個類:User,校友網(wǎng)站用戶;Member,系統(tǒng)成員;ClassAdministrator,班管理員;SystemAdministrator,系統(tǒng)管理員;Department,院系;Speciality,專業(yè);Class,班類;Message,留言,處理班內(nèi)的留言;AdminMessage,管理留言,系統(tǒng)管理員處理所有留言。圖4是系統(tǒng)的類圖。Member繼承User,而它又被ClassAdministrator和SystemAdministrator同時繼承。院系包含專業(yè),專業(yè)包含班,班包含成員??紤]到在現(xiàn)實中,院系、專業(yè)、班、成員是獨立存在的,所以,用聚合表示它們之間的包含關(guān)系。每個用戶可以留言,也可以不留言,所以,Message類與Member類有關(guān)聯(lián)。系統(tǒng)管理員可以刪除、保留留言,所以,AdminMessage類與SystemAdministrator類有關(guān)聯(lián)。下面說明每個類的屬性和操作。1性現(xiàn)行屬性有很多屬性,圖4沒有逐一列出,而是用userMessage屬性代表除userName、password和access以外的其它屬性。userName存儲已注冊校友網(wǎng)站的用戶名,其值是唯一的,password存儲用戶密碼,access存儲用戶權(quán)限。2注冊成功或失敗繼承了User類的所有屬性,還定義了自己的4個屬性:number、realName、phone、address分別為用戶的學(xué)號、真實姓名、聯(lián)系電話、聯(lián)系地址。access是從User類繼承來的。registerMember(no,uname,dpt,sname,cname,rname,add,des:String,phone:Integer,t:Date),用戶注冊通信錄系統(tǒng),參數(shù)分別是學(xué)號、用戶名、院系ID、專業(yè)名稱、班名稱、現(xiàn)實名字、聯(lián)系電話和地址、備注、入學(xué)時間,結(jié)果表示注冊成功或失敗。addMessage()、deleteMessage()、updateMessage()用戶添加、刪除和修改留言,返回結(jié)果表示操作成功與否。updateMember(no,uname,dpt,sname,cname,rname,add,des:String,phone:Integer,t:Date)更新個人信息,其參數(shù)和返回結(jié)果與注冊操作一樣。3刪除/刪除班內(nèi)部投訴具有Member和User的所有屬性和操作。deleteMember(uname:String)和deleteMessge(m:String),班管理員刪除成員、刪除班內(nèi)留言,參數(shù)分別是用戶名、留言ID,返回值都表示提示操作成功或失敗。4添加、刪除、修改院系信息的種類繼承Member和User的所有屬性和操作。addDepartment(dpt,name,des:String,num:Integer)、deleteDepartment(dpt:String)、updateDepartment(dpt,name,des:String,snum:Integer),分別是添加、刪除、修改院系信息,參數(shù)分別是院系ID、院系名稱、備注、專業(yè)數(shù)。addSpeciality(name,dpt,des:String,cnum:Integer)、deleteSpeciality(name:String)、updateSpeciality(name,dpt,des:String,cnum:Integer)分別是添加、刪除、修改專業(yè)信息,參數(shù)分別是專業(yè)名稱、院系ID、備注、班數(shù)。addClass(c,cname,sname,des:String,num:Integer)、deleteClass(c:String)、updateClass()分別是添加、刪除、修改班信息,參數(shù)分別為班ID、班名稱、專業(yè)名稱、備注、成員數(shù)。deleteMember(uname:String)刪除成員,deleteMessage(m:String)刪除任意一條留言,參數(shù)留言ID。此類中所有操作的結(jié)果都表示操作成功與否。5院系由來顯示院系信息。departmentID為院系編號,其值是唯一的。name為院系名稱。specialtyNum為院系包含的專業(yè)數(shù)目。description為院系備注。showDepartment(),用戶登錄系統(tǒng)后,顯示院系信息。6um、description顯示專業(yè)信息。name為專業(yè)名稱,classNum為包含的班數(shù)目,description為備注。showSpecialtyies(dpt:String),顯示專業(yè)信息,參數(shù)為院系ID。7班名稱、班名稱、班注顯示班信息。classID、Name、memberNum、description為班編號、班名稱、班成員數(shù)、班備注。showClasses(sname:String)顯示班信息,參數(shù)是專業(yè)名稱。8修正缺陷投訴內(nèi)容負責(zé)每個成員管理個人留言,顯示留言。messageID為留言編號。content為留言內(nèi)容。showMessages(uname:String)顯示參數(shù)用戶的所有個人留言。9療效見圖1負責(zé)系統(tǒng)管理員管理留言,提供顯示留言的功能。messageID為留言編號,其值是唯一的。content為留言內(nèi)容。showMessages()顯示所有留言。3.2刪除成員的功能圖5是從通信錄中刪除成員的順序圖。它描述了四個對象之間的動態(tài)交互,即事件發(fā)生、消息傳遞的時間順序:班管理員對象、成員表單對象、成員信息對象和數(shù)據(jù)庫管理對象。班管理員已登錄通信錄系統(tǒng),刪除成員的步驟是:1)管理員提出刪除成員請求;2)系統(tǒng)發(fā)送查詢成員請求;3)構(gòu)造查詢信息;4)數(shù)據(jù)庫操作對象返回查詢結(jié)果;5)顯示成員信息;6)管理員選擇要刪除的成員;7)管理員確認(rèn)刪除操作;8)構(gòu)造成員表單對象,發(fā)送刪除請求;9)構(gòu)造成員信息對象,發(fā)送刪除請求;10)數(shù)據(jù)庫進行刪除操作,返回結(jié)果信息;11)成員信息對象返回結(jié)果信息;12)顯示刪除后的結(jié)果。3.3幾何通信圖與yordon圖的比較我們建立了班管理員刪除成員的通信圖;由于空間緣故,這里就不給出圖形了。我們發(fā)現(xiàn),對于此例,順序圖和通信圖具有完全相同的表達能力;另一方面,順序圖在表達消息的時序上直觀,而通信圖在畫對象之間的連接上靈活。我們還發(fā)現(xiàn),通信圖與Yordon圖有很大的相似性:1)通信圖中的對象和Yordon圖中的模塊都用方框代表,并且方框間皆由直線連接。2)通信圖和Yordon圖皆有帶注釋的箭頭。通信圖中箭頭表示對象間消息傳遞方向,其注釋表示消息;Yordon圖中箭頭表示模塊間的調(diào)用,注釋表示調(diào)用過程中來回傳遞的信息。3)在Yordon圖中,注釋箭頭的尾部狀態(tài)可以區(qū)分傳遞的信息是數(shù)據(jù)、或者控制信息。這并不奇怪,因為UML吸收了先前各種圖形語言的思想。事實上,Yordon圖是UML通信圖的影響源之一。3.4uml活動圖的形成圖6描述了系統(tǒng)管理員在登錄系統(tǒng)后,添加院系信息的動作、動作的結(jié)果,即對象狀態(tài)的變化。此活動圖有三個泳道。添加院系信息的步驟如下:1)系統(tǒng)顯示目前所建立的全部院系信息;2)系統(tǒng)管理員選擇添加院系;3)系統(tǒng)顯示輸入信息文本框;4)系統(tǒng)管理員輸入各項信息;5)系統(tǒng)驗證院系信息是否合法;6)若合法,系統(tǒng)添加院系信息;7)提示添加成功信息;8)結(jié)束。若輸入信息不合法:1)提示添加失敗;2)回到院系顯示頁面,重新輸入信息;3)繼續(xù)驗證直到合法;4)進入第6步。UML活動圖與程序流程圖很相似。在此例中,若1)將輸入菱形框的矩形框內(nèi)的文字放入菱形框內(nèi),將矩形框刪除,2)將起始狀態(tài)、終止?fàn)顟B(tài)替換為流程圖的起始標(biāo)志、終止標(biāo)志,3)將泳道刪去,4)將菱形框輸出箭頭上的衛(wèi)式條件的方括號刪去,那么,此活動圖便成了一個流程圖。的確,UML活動圖來源于程序流程圖、Petri網(wǎng)、狀態(tài)機等?;顒訄D比起流程圖來有更強的表達性:流程圖對動作順序的描述比較確定,活動圖善于描述動作順序的不確定性;流程圖一般用來表示串行過程,活動圖常用于并行過程。3.5強化用戶體驗管理除了運用UML,我們還運用數(shù)據(jù)流圖來從不同的角度刻畫系統(tǒng)。數(shù)據(jù)流圖善于表現(xiàn)數(shù)據(jù)或信息的流向、存儲。圖7在抽象層次上刻畫系統(tǒng),數(shù)據(jù)源點和終點都是用戶。它描繪登錄信息輸入通信錄系統(tǒng),輸出時,信息變換成通信、留言信息。圖8是系統(tǒng)管理員對權(quán)限管理的細化數(shù)據(jù)流圖。它描述登錄信息由系統(tǒng)管理員輸入后,在系統(tǒng)中經(jīng)歷的處理、變換、流動和存儲。圖9是班管理員管理班的細化數(shù)據(jù)流圖。班管理員輸入登錄信息,信息經(jīng)歷一系列處理、變換、流動和存儲。3.6云財大數(shù)據(jù)分析建立名為SchoolmateWeb的數(shù)據(jù)庫,包含8張表。其中,公用表:User,已注冊校友網(wǎng)站的用戶信息;Access,用戶的權(quán)限信息。專用表:Department,院系信息;Specialty,專業(yè)信息;Class,班信息;Member,成員信息;Message,留言信息;City,城市信息。公用表是校友網(wǎng)站中所有子系統(tǒng)都可能用到的,專用表是為本子系統(tǒng)設(shè)計的。在表2中,通信錄系統(tǒng)管理員的權(quán)限為11,通信錄本班管理員的權(quán)限為12,通信錄的普通用戶的權(quán)限為13,校友網(wǎng)站普通用戶的權(quán)限為14。在校友網(wǎng)站中,用戶權(quán)限設(shè)置為2位數(shù)字,第一位表示子系統(tǒng),第二位表示子系統(tǒng)內(nèi)的用戶分類,如第一位為1表示通信錄子系統(tǒng)。表3、表4和表5分別存儲云財大的所有院系信息、所有專業(yè)信息和注冊過通信錄系統(tǒng)的班信息。顯示院系信息、專業(yè)信息時,顯示其全部或部分信息。這三張表的關(guān)系用ER圖表示,見圖10。其中,忽略了表的屬性。表6用于通信錄系統(tǒng)用戶注冊和個人信息修改,以及班管理員管理班成員。它與User表通過用戶名連接。表7存儲用戶的所有留言。顯示用戶留言時,顯示此表中部分或全部留言。用戶留言或?qū)α粞赃M行相關(guān)操作實際上是通過數(shù)據(jù)庫接口訪問和操作此表。表8存儲城市名稱和城市對應(yīng)的省份代碼。用戶注冊時,選擇相應(yīng)的省份,系統(tǒng)查詢此表,在頁面下拉菜單中列出選中省份對應(yīng)的所有城市。這里給出表User、Member和Message的ER圖,即圖11。4克氏原螯蝦系統(tǒng)數(shù)據(jù)庫設(shè)計使用C#語言和ASP.NET編程,使用SQLServer數(shù)據(jù)庫存儲數(shù)據(jù)

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論