《软件工程学(UML)》课程设计实验报告
更新时间:2024-01-14 14:04:01 阅读量: 教育文库 文档下载
- 软件工程学硕推荐度:
- 相关推荐
课程设计报告
课程设计名称 : 软件工程学(UML)课程设计
课程设计时间:
课程设计报告(附页) 1.课程设计目的 利用UML实现一个小型的信息系统的分析和设计。 2.课程设计题目描述和要求 2.1 系统名称:通用无纸化考试系统 2.2 需求分析 2.2.1功能需求分析 本系统主要用于学校内部考生考试使用,目标是实现考试效率的提高、工作量的 减少以及成本的降低,根据实际需要,系统所要实现的系统功能模块如下所示: 通用无纸化考试系统 管理员子系统 教师子系统 考生子系统 用户信息维护用户权限维护班级管理系部管理科目管理个人信息维护题库管理 试卷管理阅卷管理成绩查询成绩统计分析 学生信息管理各模块要实现的功能说明如下: 1.管理员子系统 用户信息维护是指以系统管理员的身份通过验证后登入系统,并对管理员个人信息 以及教师用户的信息和学生信息进行管理及一些班级信息和科目的设置 (1)用户信息维护 教师信息管理 个人信息维护个人信息维护在线考试 用户注册自我测试成绩查询
系统管理员可以对自己个人信息进行编辑修改,也可以对教师用户和学生用户进行添加和删除,系统将为添加后的教师用户和学生用户自动分配用户编号 (2)用户权限维护 系统管理员在对教师用户信息进行管理时,可以为其设置相应的权限。 2.教师子系统 教师子系统是指以教师用户的身份通过验证后登入系统,并对个人信息、题库、 试卷信息、考生成绩等信息进行管理。 (1)个人信息维护 教师成功登入系统后可以对自己的用户名,密码等信息进行查看和修改,但不 可以对账号名称进行更改。 (2)题库管理 教师可以在题库中添加、编辑和修改试题,可以为每道试题设置其分值、类型 等信息,系统会自动为添加的试题分配相应的试题编号。 (3)试卷管理 教师用户可以对每次考试的试卷信息进行设置,比如可以设置考试的课程、时 间、总分、各类型题目(单项选择题,多选题,判断题,主观题)的数量等信息。 (4)成绩查询 教师用户可以对考生的成绩进行查看。 (5)考试结果统计 教师用户可以对考生的成绩进行统计和分析,比如最高分,平均分以及每道题的正确率让教师更好的掌握考生的知识点掌握情况。 (6)阅卷管理 教师可以针对考生的主观题信息进行阅卷给出分数 3.考生子系统 考生考试是指以考生用户的身份通过验证后登入系统,可以进行个人注册信息 编辑、自我测试、成绩查看等工作。 (1)考生注册 考生可以进行个人信息的注册,包括姓名,班级,口令等信息,考生用户注册 成功后自动加入考生信息表中,系统会自动为其分配相应的id。 (2)个人信息维护
考生可以对个人注册的信息进行维护,包括姓名,班级,口令等信息,但不可 以对id信息进行修改。 (3)考生在线考试 考生以合法的身份信息登录系统,选择开始考试后系统会自动进行组卷工作并 将组成的试卷提交给考生,考试就可以顺利进行了。考生考试完成后将试卷提交给系 统,考试系统会保存考生的试卷信息并自动评分(主观题目教师手动评分)。 (4)成绩查询 考生可以对考试后的试卷成绩信息进行浏览查询。 (5)自我测试 考生可以事先进行一些自我测试,了解自己的知识盲区,帮助考生更好的复习。 2.2.2系统业务流程图 (1)管理员登录管理模块流程如下图所示 管理员验证失败身份验证管理员信息表登录成功科目管理考试管理用户管理班级管理系部管理数据库 (2)教师登录管理模块流程如下图所示
教师验证失败教师信息表身份验证登录成功选择任务成绩统计分析题库管理试卷管理阅卷管理成绩查询 (3)学生用户登录考试模块流程图 学生验证失败身份验证学生信息表登录选择考试科目成绩查询进入考场提取考卷答题试题库交卷成绩表自动评分查看正确答案 3.课程设计报告内容
3.1 Use Case 个人信息维护班级管理学生信息管理系部管理教师信息管理<
在线考试成绩查询自我测试个人信息维护<
前置条件: 后置条件: 基本操作流程: 身份为学生 选择试卷后,进入考试界面 1.学生请求考试 2.系统随机选择试卷 3.显示随机试卷的基本信息 4.学生进入考试 5.学生保存答案 6.学生提交试卷 7.学生答卷过程中中途断电而未提交试卷,可重新登录进入考试试卷并下载已答过的答案,并提交试卷。 8.用例结束 可选操作流程: 1.选择试卷失败 2.学生考试时出现系统故障(例如网络故障或数据库服务器故障)弹出异常界面,考试失败 3.教师录入试题用例描述如2.3所示: 表2.3教师录入试题用例描述 用例名称: 标识符: 参与角色: 用例说明: 前置条件: 后置条件: 基本操作流: 录入试题 03 教师 该用例主要用于考前收集考试试题; 老师成功登录考试系统 添加试题成功,允许用户的下一步操作; 1. 2. 3. 4. 5. 6. 教师选择题型,并请求录入考试试题 系统允许录入试题 教师录入试题,并不断发送录入试题请求 系统不断验证并保存试题信息 教师请求保存试题 系统验证通过并写入数据库 可选操作输入的试题有误,重新跳转到添加试题界面; 流: 4.教师录入正确答案用例描述如2.4所示; 表2.4教师录入正确答案用例描述 用例名称: 标识符: 参与角色: 用例说明: 前置条件: 后置条件: 录入正确答案 04 教师 该用例主要用于实现后期系统的自动阅卷; 老师成功登录考试系统 添加答案成功,允许用户的下一步操作;
基本操作1. 教师选择试题,并请求录入试题答案 2.系统验证是否符合规定要求,确认无误后,允许继续操作 流: 3. 教师录入试题答案,并不断发送录入试题答案请求 4. 系统不断验证并保存试题答案信息 5. 教师请求保存试题 6.系统验证通过并写入数据库 可选操作输入的答案不符合规格,重新跳转到本页面; 流: 5.教师录入考试时间用例描述如2.5所示: 表2.5教师录入正确答案用例描述 用例名称: 标识符: 参与角色: 用例说明: 前置条件: 后置条件: 基本操作流: 录入考试时间 05 教师 该用例主要用于实现后期对参加考试过程中的时间限制; 老师成功登录考试系统 添加考试时间限制成功,允许用户的下一步操作; 1. 教师请求录入答题时间与提交时间 2.系统验证输入的时间是否符合规定要求,确认无误后,允许继续操作 3. 教师请求保存提交时间 4.系统验证通过并写入数据库 可选操作流: 输入的考试时间不符合规格,重新跳转到本页面; 6.教师保存试题用例描述如2.6所示: 表2.6教师录入正确答案用例描述 用例名称: 标识符: 参与角色: 用例说明: 前置条件: 后置条件: 基本事操作流: 保存试题 06 教师 该用例主要用于保存已提交的试题; 老师成功登录考试系统并完成添加试题操作; 保存成功,老师退出系统; 1. 教师完成所有有关考试试题的操作后,点击保存按钮 2.系统验证输入的信息是否符合规定要求,确认无误后,允许保存 可选操作流: 无 7. 成绩处理系统录入成绩并排名如2.7所示: 表2.7成绩处理系统录入成绩并排名描述 用例名称: 标识符: 参与角色: 用例说明: 前置条件: 录入成绩并排名 07 试卷处理系统 该用例主要实现对已提交试卷的打分及录入成绩并降序排名; 该门考试已结束;
后置条件: 基本事件流: 显示录入成功,允许下一步操作; 1.成绩处理系统录入成绩并发送存储信息到后台数据库 2.后台数据库进行降序排名; 可选操作流: 无 8.总结考试信息用例描述如2.8所示: 表2.8总结考试信息用例描述 用例名称: 总结考试信息 08 标识符: 参与角色: 试卷处理系统 用例说明: 该用例主要实现对考后该门课程的总结,方便师生分析交流; 前置条件: 该门考试已结束且考试成绩已完成录入; 后置条件: 无 基本事件流: 1.试卷处理系统对试卷的参考人数,题目的正确率,平均分等基本信息进行总结; 2.系统将总结的结果以表格的形式存入后台数据库; 可选操作流 无 9.查看考试总结用例描述如2.9所示: 表2.9考试总结用例描述 用例名称: 标识符: 参与角色: 用例说明: 前置条件: 后置条件: 基本事件流: 查看考试总结 09 教师 该用例主要实现师生分析交流考试心得; 该门考试已结束且考试总结已完成录入; 老师退出考试系统 1.教师查看试卷的参考人数,题目的正确率,平均分等基本信息; 2.系统将根据老师的需求显示相应的考试信息; 无 可选事件流: 3.2系统各类图之间的联系
用户-账号 : string-姓名 : string-密码 : string-用户类型 : string管理员-账号 : string-密码 : string-用户类型 : string-修改个人信息()-分配权限()学生-账号 : string-密码 : string-用户类型 : string-查看试卷名称()-查看试卷内容()-答卷()-提交试卷()教师-账号 : string-密码 : string-用户类型 : string-录入试题()-录入正确答案()-录入考试时间()-查看考试结果()0..*试题-试题编号 : int-难易程度 : string-问题 : string-答案 : string-科目 : string-录入试题信息()-保存试题()+录入试题正确答案()+录入考试时间()11..*判断题多选题单选题简答题10..*10..*试卷学生试卷-考生账号-试卷编号 : int-考生答案 : string-考生编号 : int-所得分数 : int-总分 : int+增加试题信息()+总结分析考试()+加载考试信息()+用户创建()1试卷处理系统+判定成绩()+成绩降序排列()-试卷编号 : int-试题编号 : int-所在大题 : int-所在小题 : int-分值 : uint-考生答案 : string-考生编号 : int-所得分数 : int+增加试题信息()+总结分析考试()+加载考试信息()+用户创建()科目-科目号 : int-科目名称 : string-11..*10..*考试总结-参考人数 : int-平均分 : int-各分数人数分布 : string-每道题目回答的正确率 : double 3.3 顺序图和协作图(协作图可选) 3.3.1考生注册(创建成功的顺序图)如下图所示
考生1.进入注册界面注册界面屏幕数据库账户2.读取消息3.初始化4.提示填写注册信息5.填写注册信息6.连接数据库7.查询需要创建账号的用户是否已经存在8.允许创建用户账号8.创建成功9.显示创建成功的用户账号信息 图3.1考生注册(创建成功的)顺序图 创建用户(失败的)顺序图 考生1.进入注册界面注册界面屏幕数据库账户2.读取消息3.初始化4.提示填写注册信息5.填写注册信息6.连接数据库7.查询需要创建账号的用户是否已经存在8.此用户已存在,禁止创建8.创建失败,需要创建的用户已存在9.返回用户创建失败,请重新申请 图3.2考生注册(创建失败的)顺序图
3.3.2试题管理用例顺序图 教师1.请求进入考试系统用户登录界面后台数据库试题管理表2.身份验证3.请求录入试题信息4.请求录入试题信息5.验证输入的试题格式是否符合6.允许录入试题信息7.允许录入试题信息8.请求被允许,可以录入试题信息9.继续发送录入试题请求10.请求保存试题信息11.请求保存试题信息12.允许保存操作13.允许保存 图3.3试题管理顺序图 3.3.3学生考试顺序图 考生用户登录界面1.请求进入考试系统考试界面后台数据库考生试卷表试题管理表2.身份验证3.请求参加考试4.传入申请考试请求5.请求加载试题信息6.加载试题信息7.返回考试试卷8.考试计时开始9.提交答案10.考试计时结束11.发送答案12.获取试卷答案13.返回试题答案14.自动评分15.添加成绩记录16.返回成绩记录
图3.4考试在线考试顺序图 3.3.4学生自我测试顺序图 考生在线考试界面发送测试请求自我测试试题信息获取测试条件发送测试条件根据测试条件提取试题信息返回试题信息生成测试试卷返回测试试卷提交试卷获取学生答案发送学生答案获取答案答案信息自动评分返回结果显示结果 图3.5考试自我测试顺序图 3.4 活动图和状态图(状态图可选) 3.4.1”录入考试信息用例”活动图:
教师系统登录验证身份验证失败登录失败验证成功录入试题录入正确答案录入考试时间保存试题退出系统 图.3.4.1录入考试信息用例”活动图: 3.4.2考生参加考试活动图 考生系统登录身份验证登录失败验证失败验证成功登录成功查看试卷名称未到考试时间考试时间到查看试卷内容答卷试卷完成提交试卷 图3.4.2考生参加考试活动图
3.4.3数据统计分析活动图 教师系统身份验证登录登录失败验证失败验证成功登录成功数据统计 图3.4.3数据统计分析活动图 3.4.4考生答题状态图 / 输入密码错误登录/ 输入密码正确准备考试在线答题考试/ 提前交卷交卷/ 交卷成功 3.5组件图和部署图(部署图可选)
成绩管理通用无纸化考试系统考试管理考生前台系统后台管理科目管理试题管理在线管理成绩查询试卷评阅 部署图 服务器数据库教师端学生端管理员端 4.课程设计总结 一周的课程设计很快就结束了,虽然时间并不是很长,只有短短的一个星期而已,但这已让我受益匪浅,通过这次的UML课程设计,使我所学的书本知识得到了全面的检验,也让我对这门课程有了更加深厚的体会。 本次课程设计的主要内容是:针对某个特定的系统,比如我选的是通用无纸化考试系统。利用UML里的用例图,类图,顺序图,活动图,状态图,组件图等图对该系统进行静态和动态的建模。虽然对于理论知识有些了解,但对于我来说用这种方法对一个系统进行全面的分析还是第一次,不知道该如何开始下手,而且由于自己感情趣的课题已被别人选走,只好选这个虽说也有接触过但并不了解主要流程的通用化无纸考试系统。虽说自己没有这方面的经验,也不是特别熟悉其工作流程,但是在网上搜集了一些资料
的一些基础,自己对他也有一定初步的认识,虽然不是很全面,但只好自己慢慢的琢磨,慢慢的去研究它的业务流程。 在初期的用例图勾画中,我不停的想用例可以做的一些事情,然后一一的把它列举出来,然后再把一个个的画出来,有些用例因为我还不确定他的边界,删了改,改了增,经过很长时间的纠结才完成了这一步。后来接着画的是类图,对于各个类要实现什么功能,要事先打好草稿。就像画了一张张数据库表然后将他们一一联系起来,类之间的关系我认为还是蛮好确认的,下面的动态建模,就是按我平时参加的一些网上建模考试,按照一步一步的顺序设想出来的。但还是有一些不尽人意的地方,比如对象的确认,顺序的安排等等也让我遇到不少的问题。但还是坚持的做下来了,并成功了。 对这次课程设计的评价是趣味性很强,不仅锻炼能力而且可以学到很多东西,能够将课本知识融会贯通,这样的学习效果相比较纯粹的讲课更好些。最重要的收获是我们学会了一种快速有效的学习方法。以往的学习都是老师讲学士记,不懂的地方就靠解答大量习题帮助记忆,学习的主要目的是通过最后的考试,而课程设计使文明发现考试真的并不是最重要的,最重要的是能运用所学的知识,在整个UML课程的学习过程中,我们突破了传统学习模式,把被动接受转变为主动学习。不再是用学到的知识解题,而是在实际运用时遇到什么学什么,重点把知识应用于实际。 最后感谢老师的悉心指导,希望这周学到的知识能运用到以后的实际中。为今后的工作做好铺垫。
正在阅读:
《软件工程学(UML)》课程设计实验报告01-14
建筑给水排水工程设计实例 -10-03
国家骨干高职院校对口支援实例研究——以秦皇岛职业技术学院对口07-20
《平语近人》观后感04-02
2022年个人现实表现材料范文简短07-31
加强和改进未成年人思想道德建设09-16
2017年6月福州市初中毕业班适应性试卷及答案(生物)06-04
九年级思维导图08-28
高二生物学业水平模拟试题六06-14
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 软件工程学
- 课程
- 实验
- 报告
- 设计
- UML