当前位置:文档之家› 体系结构课程设计

体系结构课程设计

出卷系统设计
一.出卷系统的需求概述
二.用例分析与设计
1)确定用例
2)生成用例
3)用例设计描述
三.概念模型与顶层架构设计
1)概念模型设计
2)顶层架构设计
四.用户界面设计
五.数据模型设计
六.设计精化
1)精化软件构架
2)调整软件构成类
3)精化类之间的关系
七.类设计
1)精化类的属性与操作
八.部署模型设计
九.小结
一.出卷系统的需求概述
对出卷系统关注的人有:教师、student、题库维护人员
1)教师:关注如何出一份合理的试卷,并根据试卷样式打印与输出
2)student:关注如何通过生成一些模拟试题,来在线学习和检查学习结果
3)题库维护人员:关注试题的添加、更新和删除等工作
此出卷系统所要实现的主要功能有:
1)自动出卷:系统根据教师的要求自动生成一份合理的试卷
2)手动出卷:教师手动从试题库中挑选试题
3)随机出卷:系统随即抽取试题产生一份试卷
4)在线练习:student可以在线做练习和查看试卷
5)在线评价:系统可以在线评价student的练习情况
6)试题管理:题库维护人员可以维护题库中的试题,进行增删改
7)试卷编辑:更新试题
8)试卷输出:根据某个样式输出试卷
二.用例分析与设计
1)确定用例
由需求概述可总结出
系统的参与者:teacher student operator
系统的功能:出卷(自动出卷手动出卷随机出卷)在线学习在线评价试题管理(试题的增删改)试卷编辑试卷输出
出卷系统的初步用例图
细化后的用例图2)用例设计描述
①用例名称:自动出卷
参与者:teacher
前置条件:teacher已经输入自己的用户名和密码并且密码正确
主事件流:
A teacher输入要求
B系统从试题库中挑选试题生成一份试卷
辅事件流:
如果试题库中没有teacher要求的试题,则显示信息“试题库中没有这种试题,请重新输入要求”,并返回主事件流中的步骤A
后置条件:如果生成试卷成功,系统将保留这套试卷
②用例名称:手动出卷
参与者:teacher
前置条件:teacher已经输入自己的用户名和密码并且密码正确
主事件流:
A teacher打开试题库
B teacher从试题库中挑选合适的试题形成试卷
辅事件流:
如果试题库中没有teacher希望找到的试题,则退出试题库,将这一情况反映给opetator
后置条件:如果生成试卷成功,系统将保留这套试卷
③用例名称:随机出卷
参与者:teacher
前置条件:老师已经输入自己的用户名和密码并且密码正确
主事件流:
老师点击随机生成按钮生成一份试卷
后置条件:如果生成试卷成功,系统将保留这套试卷
④用例名称:试卷输出
参与者:teacher
前置条件:teacher 已经通过出卷生成了试卷
主事件流:
Teacher根据已经出好的试卷通过输出按钮将试卷输出
辅事件流:
如果试卷输出失败,则输出信息“试卷输出失败,请检查输出是否正确。

并返回主事件流。

后置条件:如果输出试卷成功,系统将永久保存着份试卷在题库中,直到operator进行删除操作
⑤用例名称:试卷试题更新
参与者:teacher
前置条件:修改的前提是在一份已经出好的试卷基础上
主事件流:
A teacher打开一份已经出好的试卷
B teacher根据自己的想法对试卷上的试题进行增加和删除操作
辅事件流:
如果teacher修改一份试卷失败则给出信息“请检查自己是否有权限对试卷进行修改”。

后置条件:如果teacher修改试卷成功,试题库将保存修改后的试卷,对试卷进行更新
⑥用例名称:在线学习
参与者:student
前置条件:student已经通过输入帐号和密码进入系统
主事件流:
A student点击自己想要做的试题的类型
B 系统根据student的要求从试题库中已经做好的试卷中抽取试卷
C student根据系统产生的试卷进行练习
辅事件流:
如果系统没有产生student想要练习的试卷,则显示信息“题库中没有此种类型的试题,请重新选择”,并返回主事件流的步骤A
后置条件:如果student已经做好了试卷,系统将暂时保留student
做的试卷
⑦用例名称:在线评估
参与者:student
前置条件:student已经做好了一份试卷
主事件流:
系统根据student做好的试卷对试卷进行评估
辅事件流:
如果系统没办法对试卷进行评估,则显示信息“系统出现故障,请通知operator”。

后置条件:如果系统评估完成,则返回student做错的试题和试题的相应的解答过程。

⑧用例名称:试题增加
参与者:opetator
前置条件:试题库的试题需要更新且opetator已经通过身份的验证主事件流:
A opetator打开试题库
B 对需要加入的试题加入到试题库中
辅事件流:
如果opetator对试题的增加失败则显示信息“请检查你是是否有权限对试题库进行修改”。

后置条件:opetator对试题修改成功则试题库进行更新
⑨用例名称:试题删除
参与者:opetator⑩
前置条件:试题库的试题需要更新且opetator已经通过身份的验证主事件流:
A opetator打开试题库
B 对需要删除的试题从题库中删除
辅事件流:
如果opetator对试题的删除失败则显示信息“请检查你是否有权限对试题库进行修改”。

后置条件:opetator对试题修改成功则试题库进行更新
⑩用例名称:试题更新
参与者:opetator
前置条件:试题库的试题需要更新且opetator已经通过身份的验证主事件流:
A opetator打开试题库
B 对需要修改的试题进行修改。

辅事件流:
如果opetator对试题的修改失败则显示信息“请检查你是否有权限对试题库进行修改”。

后置条件:opetator对试题修改成功则试题库进行更新
(11)用例名称:用户登录
参与者:opetator student teacher
主事件流:
A 参与者打开登录页面
B 输入用户名和密码
辅事件流:
A’如果参与者的用户名错误则输出信息“用户名错误请重新输入用户名”。

并返回主事件流的步骤B
B’如果参与者的密码错误则显示信息“密码错误,请重新输入”。

并返回主事件流的步骤B。

三.概念模型与顶层架构设计
1)概念模型设计
2)顶层架构设计
四.用户界面设计
1)表示屏幕变化的状态图
2)用户操作的包图
3)用户登录屏幕的结构类图
4)student包的结构类图
5)teacher包的结构类图
6)opetator包的结构类图
五.数据模型设计
数据模型的设计可以包括数据结构设计数据库设计数据文件设计等多个方面,但是主要关注的是持久存储数据的设计。

这里主要关注的是持久数据模型的设计。

持久数据模型设计主要包括以下几个步骤:
1)确定设计模型中需要出九保存的类的对象及属性,其中实体类是
主要关注的对象
2)确定出九存储数据之间的组织方式
3)确定数据模型中的操作行为,例如完整性验证数据读取存储与
更新数据求和求平均值等。

4)进一步优化持久数据操作的性能,例如使用数据索引存储过程
触发器等方式
在出卷系统中有两个实例类。

试题库和试卷库。

数据模型可以设计成下面的格式:
六.设计精化
1)精化软件构架
用户交互层精化后的模型
用户交互层子包精化
业务逻辑层精化
业务逻辑层子包精化
2)精化新增加的类
3)精化类之间的关系
七.类设计
八.部署模型设计
九.小结
这次的设计因为对基于UML的面向对象设计方法的不熟练存在很多的问题.但是经过这么长时间的看书和学习,我也从中学习到了很多的东西.争取下次可以做的更好.。

相关主题