陕西国防工业职业技术学院
J2EE
项目开发报告
题目排课系统概要设计
专业计算机软件技术
班级软件3121
姓名巨建波
学号 ********
指导教师魏晓燕刘慧梅房栋
二○一四年
概要设计说明书
目录
1引言 (3)
1.1编写目的 (3)
1.2定义 (4)
1.3参考资料 (4)
2.总体设计 (5)
2.1 任务目标 (5)
2.2 运行环境 (5)
2.3 条件与限制 (5)
2.4基本设计概念和处理流程 (6)
2.4结构 (7)
2.5功能器求与程序的关系 (7)
2.6人工处理过程 (8)
2.7尚未问决的问题 (8)
3.接口设计 (8)
3.1用户接口 (8)
3.2外部接口 (9)
3.3内部接口 (9)
4.运行设计 (10)
4.1运行模块组合 (10)
4.2运行控制 (10)
4.3运行时间 (11)
5.系统数据结构设计 (11)
5.1逻辑结构设计要点........................................................... 错误!未定义书签。
5.2物理结构设计要点 (11)
5.3数据结构与程序的关系 (11)
6.系统出错处理设计 (11)
6.1出错信息 (11)
6.2补救措施 (12)
1引言
1.1编写目的
在排课系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对学校,老师,学生中调研中获得,并在需求规格说明书中得到详尽的叙述及阐述。
本阶段已在系统的需求分析的基础上,对排课系统做概要设计。
主要解决了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。
在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对机票预定系统所做的模块结构设计的基础上,对系统进行详细设计。
在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。
本文档为排课系统设计、实现、测试、以及验收提供重要的依据,也为评价系统功能和性能提供依据,本文档可供用户、项目管理人员、系统分析员、程序设计人员、以及系统测试人员阅读和参考。
项目名称:排课系统
1.2定义
1.2.1专业术语
SQL SERVER: 系统服务器所使用的数据库管理系统(DBMS)。
SQL: 一种用于访问查询数据库的语言
事务流:数据进入模块后可能有多种路径进行处理。
主键:数据库表中的关键域。
值互不相同。
外部主键:数据库表中与其他表的主键关联的域。
ROLLBACK: 数据库的错误恢复机制。
1.2.2缩写
系统:若未特别指出,统指本机票预定系统。
SQL: Structured Query Language(结构化查询语言)。
ATM: Asynchronous Transfer Mode (异步传输模式)
1.3参考资料
1.J2EE整合详解与典型案例
2.J2EE 开源编程精要15讲
3.需求规格说明书
4.J2EE应用框架设计与项目设计
2.总体设计
2.1 任务目标
排课系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的排课系统,实现学校排课自动化的计算机系统,为学校的决策层提供准确、精细、迅速的教务信息。
总之,这个系统要求能够实现实时,高效,便捷,完善,安全性好等特点。
2.2 运行环境
1 设备:Pentium 133以上, 32M RAM, 4.3G HD。
2 支持软件:用C#程序设计语言作为系统的支持软件。
3 接口:本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:登陆界面)。
用户对程序的维护,最好要有备份。
4 操作系统:Win XP/Win 7/Vista。
5 数据库管理系统:SQL Server。
2.3 条件与限制
计算机技术和产品的发展日新月异,将会给信息处理带来更多的手段,同时也会带来更加丰富的信息表达形式。
例如图像和语音技术
的进步,多媒体技术的发展,这些都要求系统在设计时考虑技术变化的可能性,为可能的变化预留一定的系统处理能力。
2.4基本设计概念和处理流程
该排课系统的设计基本概念主要是学校首先对各个学院上报的教学计划和开课计划进行审核,然后确定其要开的课程是否合格。
对各个学院的开课计划审核过后对教室资源进行分配和管理。
然后开始排课,学校根据公共课的难度和各个学院相应的情况进行排课,排好公共课再进行素质选修课的排课。
待学校排完所有的课程后,学院收到各自的开始排课标志,然后根据学校所排的课程和自己的情况进行统一的排课,对自动排课结果不满意的地方可以进行手动的修改。
处理流程:
2.4结构
2.5功能器求与程序的关系
本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:
2.6人工处理过程
在本软件系统中虽然可以进行自动排课,但是对于所牌的课程个别不满意需要调节的需要进行手动的改变。
比如某老师发现上课时间与自己的某些重要活动时间相冲突,那么就需要进行手动的修改,然后再用软件自动进行冲突检查。
其次对个别的信息录入除了可以进行上传以外还要进行手动的输入,如教学计划,教师信息,教室信息等等。
2.7尚未问决的问题
框架设计尚未完整
3.接口设计
3.1用户接口
提示用户输入用户名密码,并且输入的用户名密码要符合要求的格式,若不符合系统提示相应的出错原因并提示重新输入。
当用户上传文档或者输入了基本信息后,系统提示确认上传吗和已经成功上传或者上传失败的命令
当用户对自动排课结果不满意进行手动修改后的结果进行冲突检查时提示是否有冲突
当用户对自动排课的结果不满意并且进行修改后提示是否保存命令
3.2外部接口
该系统主要是运行在pc上,支持windows的操作系统,利用键盘输入基本的信息,利用鼠标操作各种上传确认操作等。
由于本软件是一个独立的软件,它不存在和其他软件有关联。
3.3内部接口
信息录入接口:接收用户输入的文字信息或者是文档信息,并且可以对这些信息进行修改,删除,添加等
排课系统接口:接收用户输入的教师信息,教室信息等,然后对其进行排课
权限管理接口:接收用户名信息,判断其身份,并对其权限进行管理
教室分配接口:接收各个教室的基本信息,和各个学院的基本信息,然后对其进行教室分配
信息查询接口:接收该系统中的各种信息,比如教室信息,教师信息,排课结果,教学计划等等,然后输出这些信息供用户查看冲突检查功能接口:接收自动排课后的结果或者是经过用户修正后的排课结果,然后对其进行时间或者地点冲突检查
4.运行设计
4.1运行模块组合
运行模块主要包括信息查询模块,排课模块和权限控制模块。
学校的信息查询模块中包括教学计划查询,开课计划查询,教室资源查询,教师资源查询。
学院的信息查询模块包括教室信息查询,教室信息查询。
权限控制模块属于系统的管理员。
排课模块中包括排课和课表的查询。
4.2运行控制
用户可以对系统进行的控制,主要包括以下几个方面:
1.用户在自动排课的基础上,可以对所排课程不满意的地方
进行修改
2.用户可以总体查看已经排好了的课程确定其实否符合要求
3.用户在对院级的排课中可以通过选择特定的年级、学院和
专业手动的排课也可以自动的排课然后对其进行修改
4.用户可以进行信息查询,包括对教学计划。
教师信息、教
室信息和课程信息的查询
5.用户可以对各学院进行统一的排课权限管理
6.用户可以对个学院进行教室分配
7.用户可以对排课结果进行冲突检查
这些控制信号都主要来源于用户自己和管理员,用户和管理员
通过各种操作来控制这些信号,以达到对软件的控制目的。
4.3运行时间
系统的所有运行时间控制在秒级别。
5.系统数据结构设计
5.2物理结构设计要点
给出本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系(索引、设备、存储区域)、设计考虑和保密条件。
5.3数据结构与程序的关系
说明各个数据结构与访问这些数据结构的形式:
6.系统出错处理设计
6.1出错信息
6.2补救措施
系统意外关闭或者关闭出错,后备设备周期性地把磁盘信息记录到磁带上。
当排课算法或者是冲突检查算法出错时,系统给出提示并让系统用户进行人工的检查
当系统出现任何错误后用户再次登录系统时提示用户是否返回到出错时候的系统状态。