实验室排课系统.docx
- 文档编号:6071450
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:18
- 大小:2.22MB
实验室排课系统.docx
《实验室排课系统.docx》由会员分享,可在线阅读,更多相关《实验室排课系统.docx(18页珍藏版)》请在冰豆网上搜索。
实验室排课系统
实验室排课系统
中南民族大学
软工实验报告
院系:
计算机科学学院
专业:
计算机科学与技术
年级:
04级
课程名称:
软件工程导论
项目名称:
实验课程排课系统
指导教师:
刘卫平
组号:
6
学号:
04061041040610290406101304061015
姓名:
郑步青徐鹏吴歧郭胜宾
2.第一层:
3.1.2.数据字典:
3.1.3ER图:
3.2.对性能的规定
3.2.1.精度
本系统的数据输入输出精度有严格的要求,因为要准确的安排实验课,所以输入的信息不能有差错,同时,输出的课表也不容有错,不然排课就有冲突的可能性。
这样会对实验课的教学带来不便。
3.2.2.时间特性要求
本系统采用MicrosoftVisualC++6.0前台开发
3.3.输入输出要求
输入数据以表格的形式输入,给排课系统提供数据需求。
经过整个排课系统进行排课以后,数据以报表的形式输出,输出至打印机打出课表,分配给实验室管理员、学生以及任课教师(辅导教师)。
3.4.数据管理能力要求
3.5.故障处理要求
4.运行环境设定
4.1.设备:
计算机
操作系统:
Windows2000/XP/ME
处理器:
IntelPentium166MX或更高
内存:
32M
硬盘:
1GB
显卡:
SVGA显示适配器
4.2.支持软件:
MicrosoftOfficeVisio2007
4.3.接口:
打印机,USB接口
4.4.控制
5.参考文献
《软件工程导论》,《Delphi课程设计》,《Access2003中文版实用教程》等
一.概要设计:
1.
1.1需求规定
说明对本系统的主要的输入输出项目、处理的功能性能要求,详细的说明可参见附录C。
1.2运行环境
操作系统:
Windows2000/xp/ME
内存:
32M
处理器:
IntelPentium166MX或更高
硬盘:
1G。
显卡:
SVGA显示适配器
1.3软件结构的层次图.
2.接口设计
2.1用户接口
采用目前非常流行的Windows风格,如窗口,菜单,对话框,滚动条等,并对鼠标提供支持.
2.2外部接口
运行于WindowsXP,并且具有WIN32API的操作系统。
2.3内部接口
a.信息输入管理模块,可以输入实验室信息,输入行政班级信息,输入教师课表信息.
b.信息修改模块,可以修改实验室信息,修改行政班级信息,修改教师课表信息.
c.排棵模块.该模块主要是根据输入的排课信息进行排课.
d.排课信息查询,可以按行政班级号查询,按教师工号查询,按时间查询.
e.打印排课信息表.
3 运行设计
3.1运行模块组合
说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运行所历经的内部模块和支持软件。
3.2运行控制
说明每一种外界的运行控制的方式方法和操作步骤。
3.3运行时间
说明每种运行模块组合将占用各种资源的时间。
4.出错处理.
排课不成功返回出错警告----排课要求无法满足.
二.详细设计
一.人机界面设计.
1.背景:
人机界面的设计质量直接影响用户对软件产品的评价.从而影响软件产品的竞争力和寿命,因此,必须对人机界面设计给予足够重视.
2.设计环境:
WINDOWSXP,MicrosoftVisualFoxpro6.0.
2.具体设计:
1.总体界面如下图所示:
3.每个模块界面具体如下面所示:
3.1.信息输入模块:
3.2信息修改模块:
3.3排课信息查询模块:
二.数据库设计.
(1)排课计划表:
记录排课的信息,是该系统最重要的数据表,由于要记录的内容较多,如果用一个表来存放信息,将产生很大的数据冗余,故将排课计划表分为两个表:
排课计划主表和排课计划子表,主表用来记录每门上机课程的基本信息,如计划编号、上课教师、课程名称、上课班级、上机人数、计划学时、课程代码等;子表则存放每门实验课程的具体机房安排,如计划编号、周次、星期、节次、所用机房、上机人数等,排课主表与子表通过计划编号相关联,两者是一对多的关系.如下图所示:
\
(2)班级信息表:
记录全院有上机课程的班级情况,字段有:
班级名称、班级编号、所属院系、所学专业、人数等;
(3)机房信息表:
记录机房的主要情况,有机房编号、机房名称、机房性质、机位数、可用机位数、是否允许排课等;
(4)课程信息表:
记录所有上机的课程情况,有课程名称、课程代号、课程类别、使用环境等;
(5)日志信息表:
记录有关重大操作的信息,有操作日期、操作项目、计划编号、课程名称、操作员等
三.过程设计.
排课过程算法实现:
用N-S流程图表示,如下图所示:
三.测试
.测试计划的目标
(1)收集并组织测试测试计划信息
(2)将软件细化为可检验的测试需求
(3)建立测试计划
2.测试需求
根据用户需求定义测试需求。
该软件的主要操作者是实验室管理员,学生和教师可以不了解实验室信息。
只要和实验室管理员一起获得系统的输出即可。
该软件的数据源有三个,学生信息,教师信息,排课要求,软件要根据这三个信息输出正确的排课表。
排课问题的本质是将课程、教师和学生在合适的时间段内分配到合适的教室中,涉及到的因素较多,是一个多目标的调度问题。
在排课问题中,我们的主要任务是将班级、教室、课程、教师安排在一周内且不发生时间冲突。
一张正确的课表应至少满足以下硬约束条件:
(1)一个教师或者一个班级或者一个教室在同一时间段内只能安排一门课程;
(2)分配的教室可容纳人数应该大于学生数。
除了上述的硬性约束,还有些软约束,这些软约束有助于使得课表更加合理,更加人性化。
这些软约束条件可能是:
(1)尽可能满足个别教师的特殊上课时间要求;
(2)一门课尽量分散在一个星期中,即某天上完某一门课后,要隔一天以上再上这门课,以使教师有充足的时间备课和批改作业,而学生也有足够的时间复习消化;
(3)一个教师的课不能排满一整天;
(4)学生课表中的上课时间不能过分集中,应避免一天课程很满而另一天却一整天没课的情况。
3.主要的测试内容
(1)系统功能
该系统的功能如下:
其中以排课管理功能为整个系统的核心,是主要测试对象。
(2)用户界面
测试软件界面的每个功能键是否能正常使用
(3)系统性能
测试系统的性能如何,是否能满足用户的需求,该系统的主要性能指标是输出结果的正确性,要保证不能出现排课冲突,对时间性能要求不是很高,但实现算法也不能过于缓慢。
二测试设计
1.测试设计的目标
(1)定义自动测试过程
(2)选择适当的测试用例
2.测试过程
根据测试需求定义测试过程
3.选择适当的测试用例
根据测试过程选择测试用例
该排课管理系统的核心功能是排课管理,因此应把排课管理作为主要的测试对象。
设计测试用例时应尽量输入和学生课表,教师课表有冲突的排课要求,看系统能否输出排课失败,或是给出了一个错误的排课结果。
对每个例子,应说明:
□测试项及属性
□输入说明(数据来源与格式)
□输出说明(预期结果)
□环境要求(实际环境/具有实效的模拟测试环境)
□与其它例子之间的关系
将软件可能产生的错误性质分三类:
即致命性错误、大错误、小错误。
致命性错误:
系统不能正常运行
大错误:
出现排课冲突,上机学生数大于机房机子数。
小错误;同一门课的排课过于集中,如今天刚上完,明天又有。
一个教师的课集中在某一整天。
学生课的上课时间过分集中,应避免一天课程很满而另一天却一整天没课的情况。
对每一种错误设计相对的测试用例。
三测试开发
1.测试开发的目标
(1)建立可重用的测试用例
(2)维护测试对于测试需求的可跟踪性
四测试执行
1.测试执行的目标
(1)执行测试
(2)检查测试结果
(3)研究并组织测试结果以便评估
(4)缺陷维护
2.测试执行的步骤
单元——>模块——>集成——>维护——>回归测试
五测试评估
1测试评估的目标:
(1)提交量化的测试覆盖域及缺陷跟踪报告
(2)评估软件质量
2测试评估的内容
1.覆盖域
(1).哪些测试需求经过了测试
(2).那些需求通过了测试
2.缺陷
(1)我们发现哪些缺陷
(2)我们解决了哪些缺陷
(3)遗留缺陷对软件有何影响
3.总体评估
该系统是否合格,能否投入使用
总结:
本文介绍了实验室排课系统的设计与实现,实现了排课、调课、查询、统计、打印等基本功能,投入实际运行后,不但大大提高了排课人员的工作效率,而且规范了实验室人员的机房管理工作和学生的上机实验过程。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验室 系统