基于UML的毕业设计管理系统的分析与设计
<本段与标题无关,自行略过 最近各种忙,天气不错,导师心情不错:“我们要写一个关于UML的专著”,一句话:“一个完整的系统贯穿整个UML的知识”;我:“--o---k--”。忙里偷闲,先回顾一下吧>
毕业设计是实现本科教学培养目标的重要环节,从选题到答辩一般需要四至六个月的时间,其间工作量很大,尤其需要保留大量的文件,以便于管理者对毕业设计工作进行监督。传统的、人工的方式管理各项事务和文件档案,存在着诸如效率低、准确性差等缺点,对高效、合理地安排毕业设计很不方便。
利用计算机和WWW网络技术实现高校毕业设计的管理势在必行,制作毕业设计期间的教学管理、频繁的师生交流,以及大篇幅的论文管理,现在只要通过计算机就可以方便快捷的来完成。因此毕业设计管理系统的应用能够为用户提供充足的信息和快捷的查询手段。
通过互联网和校园网进行各学院毕业设计选题、中期、答辩和后期的流程管理。各阶段都要教务长来开通和关闭,对整个毕业设计的流程进行管理。其中系统的用户信息来自于现教务管理系统。
一.毕业设计管理系统的总体需求
1.总体业务流程
毕业设计的管理流程划分为四个基本步骤,见图1-1。
图1-1 毕业设计管理流程
2.系统功能框图
系统总体功能框图见图1-2。系统按照工作流程划分出四个主要功能模块,另外该系统还应提供登录功能模块和系统维护功能模块,其中系统维护模块包括身份管理、数据维护和流程管理三个子模块。每个模块完成的功能见表1-1。
图1-2 系统总体功能框图
3.总体功能分类描述
系统总体功能分类描述见表1-1
表1-1 总体功能分类
功能类别/标识符 |
目标描述 |
选题管理 |
完成教师立题、学生选题的双向选择过程。最终达到每人一题。 |
进行过程管理 |
完成教师与学生交流、中期检查、教师与学生互评过程。 |
答辩管理 |
完成答辩准备工作,提交答辩结果。 |
后期处理 |
完成收集、上报材料,统计成绩,评优过程。 |
登录管理 |
提供用户登录验证及用户权限查询的功能。 |
系统维护 |
系统维护包括:身份管理、流程管理和数据维护三个子功能块。 |
二.建立用例模型
1.建模思想
用例是对一个活动者(actor)使用系统的一项功能时所进行的交互过程的一个文字描述序列。用例是代表系统中各个项目相关人员之间就系统的行为所达成的契约。软件的开发
过程可以分为需求分析、设计、实现、测试等阶段,用例把所有这些都捆绑在一起,用例分析的结果也为预测系统的开发时间和预算提供依据,保证项目的顺利进行。因此可以,软件开发过程是用例驱动的。
用例分析的步骤可以按下面的顺序进行:
(1) 找出系统外部的参与者和外部系统,确定系统的边界和范围。
(2) 确定每一个参与者所期望的系统行为。
(3) 把这些系统行为命名为用例。
(4) 使用泛化、包含、扩展等关系处理系统行为的公共或变更部分
(5) 编制每一个用例的脚本。
(6) 绘制用例图。
(7) 区分主事件流和异常情况的事件流,如果需要可以把表示异常情况的事件流作为单独的用例处理。
(8) 细化用例图,解决用例间的重复与冲突问题。
采用用例分析法捕获用户的需求,其中一个比较困难的工作是确定系统应该包含哪些用例,以及如何有效地发现这些用例。事实上,在做用例分析时,并没有一个固定的方式或方法来发现用例,而且对同一个系统,往往会同时存在多种解决方案,但其中某些方案会比另一些方案好。与设计和实现阶段相比,需求分析阶段更多的还是依赖于分析人员的个人经验和领域知识。
2.用例模型
2.1、用例定义
用例通过某种途径与系统交互。从系统外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者(用例)是谁。确保所有角色都被完全识别出来。
本系统用户群分为四大类:教务管理员、毕业设计专家组、教师和学生。各类用户用不同的职责和权限。本系统的用例于表2-1中。
表2-1 系统的用例定义
用例名称 |
用力职能 |
教务管理员 |
完成拟题和选题公告、论文选题管理、优秀论文展示、手动操作选题、发布选题、分配答辩教师、管理答辩小组、论文推优、工作总结、处理论文材料、留言删除等相关管理功能 |
毕业设计专家组 |
审核论文题目、审核论文、参与答辩等 |
教师 |
参与拟题,指导学生、评审论文等相关功能 |
学生 |
参与选题、提交论文、进行答辩等功能 |
系统维护员 |
主要负责系统维护、系统公告、用户添加、数据维护等 |
2.2、系统顶层例图
用例是参与者与系统的交互过程,代表系统为其参与者所执行的有价值的操作,表达了系统的功能需求和行为。用例的用途是在不揭示系统内部构造的情况下定义连贯的行为。用例可以在执行过程中持续接受参与者的输入信息,可以描述系统向用户提供的有价值的功能。
用例不仅是描述需求的工具,还可以驱动开发过程,通过对用例的创建、整合,开发设计人员可以构建一系列实现这些用例的设计和实现模型。系统顶层用例的构建,可以使得系统整体性的呈现并被建模人员把握。通过前述需求分析的结果,可以得出顶层用例,其中涉及的参与者及其活动系统顶层用例图如图2-1所示:
图2-1:系统顶层用例图
2.3、用例的细化(主要模块的用例)
每一个用例都是一个参与者与系统在交互中执行的有关事务序列。从毕业论文指导交互系统的用例抽象,可以确定如下的主要模块的用例: 毕设选题管理、毕设进行过程管理、毕设答辩管理、毕设后期处理等。
从系统总的用例来建立用例图,这样设计在项目开始阶段对理解系统的要求和目标都有好处,但需要进一步细化,划分为更具体的一些用例,以便深入分析系统的要求和目标。
1)毕设选题管理
毕业设计选题管理中中的参与者包括教务、毕业设计专家、教师和学生。教务发布拟题要求、管理双向选题、发布题目和公布选题结果;专家组对论文题目进行评审,并给出意见;教师根据拟题要求拟题和提交题目的任务说明,并通过学生的选题情况选择学生;学生根据选题要求选择论文题目等。选题管理用例图如图2-2所示:
图 2-2 选题管理用例图
毕业设计选题部分各子功能描述见表2-2。
表2-2 选题管理功能及用例描述
名称、标识符 | 执行用例 | 描述 |
发布拟题要求 | 教务管理 | 根据毕业学生和学院要求发布本届毕业设计信息和拟题要求: |
确立题目 | 教师 教务管理 |
①指导教师根据拟题要求拟题并提交: |
双向选题 | 学生 教师 教务管理 |
①学生初选题目:学生对发布的论文题目进行初选,每人最多选择三个设计题目,每个设计题目可被三个学生备选; |
发布选题结果 | 教务管理 | 发布最终选题结果。此后学生和教师都可查询到选题结果。 |
2)毕设进行过程管理
毕设进行过程管理中的参与者包括教务、毕业设计专家、教师和学生。教务开通指导园地,进行开题管理,教务存档中期报告等活动;毕业设计专家组对学生提交的开题报告进行评审,如不合格提出修改意见反馈给学生,学生重写开题报告并提交;指导教师收取中期报告并送审中期报告;学生与老师通过一下外部接口通信,学生提交开题报告和中期报告。毕业设计进行过程管理用例图如图2-3所示:
图 2-3 毕业设计进行过程管理用例图
毕业设计进行过程管理部分各子功能描述见表2-3。
表2-3 进行过程管理功能及用例描述
名称、标识符 | 执行用例 | 描述 |
指导园地 | 学生 教师 教务管理 |
教务人员开通指导园地,学生与老师通过一下外部接口通信:(目前只设计提交通信方式功能,带以后完善与外部系统的接口通信。) |
开题管理 | 学生 教师 教务管理 |
①学生提交开题报告。 |
中期检查 | 学生 教师 教务管理 |
①学生提交中期报告。 |
3)毕设答辩管理
毕设答辩管理中的参与者包括教务、毕业设计专家、教师和学生。其中教务教务人员安排答辩同时开通论文评审并分配评审论文,教务存档评审结果等;专家组对学生进行答辩并提交答辩记录和成绩评定;教师指导审查论文初稿并提出修改意见,学生依此修改并再次提交;学生修稿、提交论文,参加答辩,上传材料等。毕设答辩管理用例图2-4所示:
图2-4 毕设答辩管理用例图
毕业设计答辩管理部分各子功能描述见表2-4。
表2-4 答辩管理功能及用例描述
名称、标识符 | 执行用例 | 描述 |