网上教学系统的uml设计文档格式.docx
《网上教学系统的uml设计文档格式.docx》由会员分享,可在线阅读,更多相关《网上教学系统的uml设计文档格式.docx(16页珍藏版)》请在冰点文库上搜索。
整合案例开发--网络教学管理系统
二实验目的与要求
掌握利用建模工具进行完整案例建模的方法与技能
三实验内容
·
1对选定案例进行需求调查与分析。
2用选定案例进行建模,完成用例模型(用例图,主要用例文本,系统顺序图,操作契约),领域模型,主要用例的用例实现(交互图及设计类图)。
3用正向工程完成实现模型。
4练习利用逆向工程对修改后的代码重新生成模型。
四需求调查与分析
·
1系统功能需求
(1)学生可以登陆网站浏览和查找各种信息以及下载文件。
(2)教师可以登陆网站给出课程见解、发布、修改和更新消息以及上传课件。
(3)系统管理员可以对页面进行维护和批准用户的注册申请。
满足上述需求的系统主要包括下面几个模块
(1)数据库管理模块:
提供使用者录入、修改并维护数据的途径。
(2)基本业务模块:
教师可以上传文件、发布消息、修改和更新消息;
学生可以下载文件;
管理员可以维护页面,批准注册等。
(3)信息浏览、查询模块:
主要用于对网站的信息进行浏览、搜索查询。
图1系统功能需求
2数据库管理模块
图2数据库管理模块
(1)教师信息管理:
负责教师信息的管理。
(2)课程简介信息管理:
负责课程简介信息的管理。
(3)文件上传信息管理:
负责文件上传信息的管理。
3基本业务模块
图3基本业务模块
(1)文件上传:
教师可以使用此模块将课程的数据上传到网站服务器。
(2)文件下载:
学生可以使用此模块从网站上下载课件及其他资料。
(3)消息发布:
教师可以通过此模块发布学习方法、课程重点等和教学相关的文章,以及和课程相关的通知等。
(4)消息修改和更新:
教师可以通过此模块对自己发布的信息进行修改和更新。
(5)页面维护:
网站管理员可以使用此模块对网站的页面进行维护。
(6)用户注册批准:
网站管理员可以使用此模块批准用户注册。
4信息浏览、查询模块
图4信息查询模块功能
(1)网页信息浏览:
用户浏览网站信息。
(2)文章信息搜索:
用户根据关键字搜索文章。
五系统的UML建模
1系统的用例图
创建用例图之前首先需要确定参与者:
在网络教学系统中,需要学生和教师的参与。
学生可以浏览课程简介,教学计划,学习方法等教师发布的文章,并可以根据关键字查询文章。
此外,学生可以从网站上下载课件。
教师作为教学的主导者,使用此网站可以发布学习方法,课程重点等和教学相关的文章,以及和课程相关的通知等,还可以将某一门课程的课件上传,另外网站需要一个专门的管理者进行日常维护与管理,所以需要有系统管理员的参与。
(1)系统用户参与的总的用例图
图5系统用户参与的总的用例图
(2)学生参与者的用例图
图6学生参与的用例图
〖用例图说明〗
1Download:
文件下载用例。
2Lookthroughinfo:
文章浏览用例。
3Articlesearch:
文章搜索用例。
4Identify:
权限认证用例。
此用例用来认证文件下载是否具有下载文件的权限。
(3)教师参与者的用例图
图7教师参与的用例图
1CourseIntro:
添加课程简介用例。
2UploadCAI:
上传课件用例。
3MessageIssue:
文章或消息发布用例。
4MessageUpdate:
文章或消息修改用例。
(4)系统管理员参与者的用例图
图8系统管理员参与的用例图
1PageMaintenance:
页面维护。
2CAIProcess:
教师上传的课件经过系统管理员的审批和处理。
3InformationUpdate:
页面更新。
系统管理员负责网站的页面更新,除了文章,消息,图片等的更新,还包括页面的美化和板块的调整。
4ProcessRegistration:
处理注册申请。
2系统的时序图
(1)系统管理人员管理网站的时序图
图9系统管理人员管理网站的时序图
〖时序图说明〗
1Login:
登录系统的函数。
2Add_or_delete_Article:
添加或删除的文章。
3UpdateCAI():
更新CAI课件的函数。
4Add_or_delete_User:
添加或删除用户。
5Show():
刷新页面的函数。
6Notify():
通知用户的函数。
(2)用户登录系统的时序图
图10用户登录系统的时序图
1Input(String,String):
输入用户名和密码的函数。
2Send(String,String):
将用户名和密码发送给服务器的函数。
3Query_and_Validate():
查询数据库并验证用户名和密码正确性的函数。
4feedBack():
发送反馈消息的函数,如果验证通过,发送OK;
如果验证出错,发送Error.
5ShowInformation():
将反馈信息显示给用户的函数。
(3)学生下载文件时序图
图11学生下载文件的时序图
①Request:
学生发送下载请求。
②Send(String,String):
传递下载参数的函数。
③Identity():
验证用户权限的函。
④authorize:
返回认证信息的函数。
3系统的协作图:
(1)用户登录系统的协作图
图12用户登录系统的协作图
〖协作图说明〗
①Input(String,String):
③Query_and_Validate():
④feedback():
发送反馈消息的函数,如果验证通过,发送OK,否则,发送Error。
⑤ShowInformation():
(2)学生下载文件的协作图
图13学生下载文件的协作图
②Request(String,String):
验证用户权限的函数。
④showStatus():
返回下载状态的函数。
如果认证成功,开始下载,不成功则报错。
4系统的状态图:
图14系统的状态图
〖状态图说明〗
1HomePage:
处于网站主页。
2Certify:
登录验证状态。
3SuccessPage:
登录成功页面。
4UploadApplyPage:
文件上传页面。
5StoringFile:
文件存储状态。
6OldPage:
页面未更新状态。
7NewPage:
页面更新状态。
5系统的活动图:
(1)用户登录系统的活动图
图15用户登录系统的活动图
〖活动图说明〗
①InputURL:
输入网站的URL。
②ShowHomePage:
显示网站主页。
③InputLoginInformation:
输入登录信息。
④Press”OK”Button:
单击“OK”按钮。
⑤CertifyUserInfo:
用户信息认证。
⑥ShowSuccessPage:
显示登录成功界面。
用户登录系统时,首先要输入登录网站的URL,然后从首页的登录窗口中输
(2)教师上传课件的活动图
图16教师上传课件的活动图
①ApplyFileUpload:
申请文件上传。
②CertifySizeAndOtherAspact:
验证文件的大小和其他信息。
③Store:
文件存储。
④AdministratorAuthorize:
系统管理员认证。
⑤UpdatePage:
更新页面。
⑥DeleteFile:
删除文件。
(3)系统管理员维护网站的活动图
图17系统管理员维护网站的活动图
①Login:
登录系统。
②ProcessCAI:
处理上传的课件。
③UpdateInformation:
更新页面信息。
④ModifyPage:
修改页面。
6系统中的类
(1)参与者相关的类
系统中和参与者相关的类的类图如下:
图18参与者相关的类
〖类图说明〗
①User类是所有类的父类,包括属性有Account(登录名)、Password(密码)、email(用户邮箱)等。
方法有getEmail(获取邮箱)、getAccount(获取登录账户名)以及changePass(修改密码)。
②Student类是学生类,除了继承父类的属性和方法,还包括number(学号)、name(姓名)、sex(性别)、age(年龄)、class(班级)、和grade(年级)等属性。
③Teacher类是教师类,除了继承父类的属性和方法,还包括name(姓名)、sex(性别)、IdentityCard(身份证号)、course(教授的课程)、以及TelephoneNum(电话号码)。
④Adminstrator是管理类,管理员有自己的属性,TelephoneNum(电话号码)。
还有自己的方法:
CertifyUpload(文件的上传认证)、UpdatePageInformation(更新页面信息)、AddUser(添加用户)和DeleteUser(删除用户)等。
(2)各类之间的关系,如下图:
图19各类之间的关系
①CourseIntro类表示课程介绍类。
此类的属性有:
courseName(课程名)、college(开课院校)、teacher(授课教师)、scorePoint(课程学分)、time(开课时间)、Place(上课地点)和teachingPlan(教学计划)等,它有一个修改课程信息的方法Modify()。
②类表示发表的文章类,包括articleNum(文章序号)、articleTitle(文章标题)、teacherToIssue(发布教师)、createTime(创建时间)以及文章内容。
方法有Issue(文章发布)、Delete(文章删除)和Modify(修改)。
③FileUploadOrDownload类表示上传的文件信息类,属性包括fileName(文件名)、fileType(文件类型)、fileSize(文件大小)、shortIntro(文件的简短介绍)、fileURL(文件地址)、create(文件的创建者)以及createTime(文件的创建时间)等。
操作包括checkSize(检查文件大小)、Modify(修改文件信息)、Store(文件存储)以及Cancle(取消上传)等。
五、实验小结
综合以前实验来看,在实验过程中,遇到诸多问题,最后都得到了比较满意的解决;
在这次实验中,关于UML的概念以前比较模糊的地方,我在实际操作中,变得更加清楚了,对RationalRose的UML功能运用的更加系统,更加熟练;
但是更让我明白,UML的知识太多了,我懂得的太少了,我会加强自己的UML知识的。