通瀛软件实训项目文档通瀛教务管理系统概要设计说明书OD-OUTLINE /TY20121030/ TY-JWGL-1.00目录目录 (1)1 概述 (2)1.1 编写目的 (2)1.2 术语和缩写 (2)1.3 参考资料 (2)2 系统构架设计 (2)2.1 系统总体结构图及其约束和假定 (2)2.2 技术构架设计 (4)2.3 软件功能结构设计 (5)3 应用系统设计 (6)3.1 设计原则 (6)3.2 逻辑结构分析 (6)3.3 公共的功能模块设计接口及实现 (7)3.4 功能模块设计 (8)3.4.1 物理模型(Model) (8)3.4.2 控制层(Controller) (9)3.4.3 业务逻辑层(Service) (9)3.4.4 数据访问层(DAO) (10)3.4.5 展现层(View) (10)4 接口设计 (12)4.1 外部接口 (12)4.2 部接口 (12)5 开发环境的设计 (13)5.1 开发环境设计 (13)5.2 编码规 (13)6 运行环境设计 (13)1概述1.1编写目的本概要设计是根据《系统需求说明书》编写,提供给详细设计参考。
本概要设计的读者包括项目经理,需求分析员,设计人员,以及开发人员。
当然也包括测试人员。
1.2术语和缩写1.3参考资料2系统构架设计2.1系统总体结构图及其约束和假定EduMS系统涉及到通瀛软件技术职业培训学校的各教职工人员的工作安排及对学生的教务管理,为方便学生和教职工可在任何时间和地点对教务进行管理等特点。
其系统结构采用B/S的模式。
其系统的网络结构如下:系统的围适合IT培训机构的教务管理通过以上分析,决定采用以下的方案来开发:语言:Java环境配置:服务器安装Oracle、TomcatServer和SVN。
使用工具:TortoiseSVN(源码管理,文档管理……)、astah community(流程图……)、PowerDesigner(数据库设计)、Navicat Premium(数据库相关操作)、MyEclipse(编码开发)数据库:Oracle10g使用核心技术:JavaScript、JSP、Struts2、Hibernate3.6、Spring3、DWR2.2技术构架设计系统主要采用MVC的架构模式。
系统分成五层:控制层(Controller)、业务逻辑层(Service)、数据访问层(DAO)、数据模型层(Model)、展现层(View)。
数据访问层主要对数据库数据进行操作,包括增加数据,修改数据和删除数据。
业务逻辑层基于数据访问层之上,它主要针对业务流程来实现系统的功能。
控制层又基于业务逻辑层之上,它主要控制请求流转,并处理业务层通过数据访问层得到的数据在View表现层进行展现,以完成教务管理系统所要完成的功能。
其结构如下:2.3软件功能结构设计在这里的Model是领域模型的实体即数据模型,它与Database中的实体是一一对应的关系。
Dao就是采用Model的形式来存取数据,采用Model或集合的形式来呈现或存储数据的。
Service所处理的是业务流程中所要实现的功能,通过业务分析来定义,其根据可结合View来设计。
Service所要处理的功能如下:这里我们把EduMS分成八个模块:➢班级管理➢学籍管理➢成绩管理➢考勤管理➢课程管理➢部门管理➢教职工管理➢系统管理3应用系统设计3.1设计原则1、根据功能细分,使组件或(对象)具有相对的独立性,可以封装在任何子系统的功能模块中。
2、一个对象的基本要素包括四大要素对象标识:给对象一个可以辨识的名称,要求具有唯一性。
对象的标识符全为自增并且名为id。
主实体:对象主要操作的数据库表结构。
动作过程:即对象的输入输出和对数据的处理过程。
I/O关系:即对象的动作过程中所牵涉到的其他数据实体。
3.2逻辑结构分析本系统采用SSH进行开发。
模型结构如下图所示,Spring接收来自表示层的请求“xxxAction.do”请求参数封装在model中,Struts根据配置信息调用控制层xxxAction的相关方法,该方法从model中获取参数,并从Spring容器中获取业务层接口xxxService的一个实例xxxServiceImpl。
在Spring容器初始化xxxServiceImpl实例时,会获取BaseDaoImpl 的一个实例(此实例继承了Hibernate的实现类)xxxServiceImpl实例会调用持久层BaseDaoImpl实例的方法(传入获取的model参数)来完成具体的操作。
3.3公共的功能模块设计接口及实现1、公共接口及实现:接口包名:cn.rjtraining.base2、业务层接口与实现的对应关系业务层需调用持久层提供的接口进行数据存取,而业务层又是在控制层之下的,因而业务层即要调用持久层DAO的接口,又要提供接口给控制层来进行调用。
接口包名:cn.rjtraining.service3、常用工具类的实现Encryptor加密工具(MD5)、GenericsUtils泛型工具3.4功能模块设计3.4.1物理模型(Model)教职工用户权限物理模型图:学生、成绩、课程、考勤相关物理模型图:3.4.2控制层(Controller)控制层使用Struts2,主要控制用户请求及响应,控制层调用业务逻辑层处理业务逻辑,通过返回的信息处理控制给View层展现相应的数据。
3.4.3业务逻辑层(Service)业务层需调用持久层提供的接口进行数据存取,而业务层又是在控制层之下的,因而业务层即要调用持久层DAO的接口,又要提供接口给控制层来进行调用。
业务逻辑主要从业务流程的角度来分析。
EduMS主要有以下几块业务处理,我们将具体分析:➢班级管理班级管理主要涉及的过程为:首先教务管理员创建培训班,设置培训课程,确定任课教师,设定培训目标等事务。
➢学藉管理学藉管理主要涉及学生的基本信息的添加和修改。
教务管理员录入学生信息,查询修改学生相关信息等。
学生的基本信息有:学生编号,学生,所在班级,学生性别,联系,所读专业,所在大学,入学时间,是否毕业等。
➢成绩管理成绩管理主要涉及学生成绩的录入和修改及成绩统计。
教务管理员针对班级的学生科目的考核,将成绩录入,并管理统计生成图表打印。
➢考勤管理领域考勤管理领域主要负责教职工和学生每日的考勤。
如到校时间,请假原因等,并且记录统计教职工和学生的考勤状况。
教职工考勤以刷卡的形式,学生考勤以老师点名的形式存储考勤信息。
教师考勤由教务管理员来管理,学生考勤由学生管理员来管理➢课程管理课程信息管理主要创建负责课程信息的确定和升级。
培训决策人创建课程信息及及课程时间培训标准和教师资格。
➢教职工管理领域教职工管理领域主要涉及教职工的基本信息的处理和维护。
包括:教职工编号,所在部门,教职工,性别,,地址,入职日期,是否在职,工作量统计等。
➢部门管理领域部门管理主要涉及部门的基本信息的处理和维护。
包括:部门名称,部门类型,部门创建时间,部门描述,部门编号。
➢系统管理系统管理主要涉及教务系统权限分配。
培训决策人确定给教职工分配,并授于角色。
3.4.4数据访问层(DAO)Dao模块主要使用HibernateTemplate通过操作对象来操作数据库。
通过SQL的数据访问接口来提取数据库的数据和传入数据到数据库中存储。
各个领域对象的Dao主要设计部分:单记录的操作,提供一条记录存储在Model中;多记录的操作,提供多条记录存储在集合中;程序操作完毕后,把修改后的数据更新到数据库中输入:配置文件,例如beansHibernate.xml信息:这个组件主要功能是应用程序配置文件中读取相应的配置信息,联系数据库和应用程序。
3.4.5展现层(View)➢设计原则美观大方、便于操作管理,满足客户的需求和要求。
➢框架设计(详细设计请参考《教务管理系统界面设计》)1、设计思路整个页面分为三个部分:名称一:top,页面顶层,用于展示公司的名称、LOGO等;名称二:left,页面左部,导航栏部分,显示四大模块(考勤管理、人事管理、教务管理、系统管理)及各模块的相关子菜单;名称三:main,页面的主要容,通过导航栏显示详细信息(见详细设计)。
评分统计1、单击页面left部分的四大模块中的某个小模块之一,将展开显示其各模块所包含的容;2、点击容,将在页面的main部分显示其对应的页面;3、在页面main部分,根据需要进行选择或点击等操作。
4接口设计4.1外部接口考勤接口:使用通瀛软件技术职业培训学校的指纹打卡机接口4.2部接口无5开发环境的设计5.1开发环境设计开发工具:MyEclipse 9.0 + Oracle+Tomcat+SSH(Struts2.2+Spring3.0+Hibernate3.6.7)5.2编码规参考《SUN Java编码规中文版》6运行环境设计网络环境:可在已建立的局域网和全国广域网框架上运行,基于以TCP/IP传输协议为基础的数据联网模式。
架构模式:B/S结构。
数据库服务器:Oracle10g。
服务器操作系统平台:WIN2003/WIN xp /WIN7 ,2G以上存。
客户机操作系统平台: WIN xp /WIN7,800X600分辨率及以上,512M以上存。
客户端运行工具:IE或FireFox。