第 4 章 系统设计
在上一章系统需求分析的基础上,我们本章将对汽车线束公司员工信息管理系统进行整体的架构,给出整套系统的功能模块的设计、数据库设计等方面。
4.1 设计原则
本文在进行员工信息管理系统设计时,主要考虑一下几个原则:
1、实用性原则:
本系统充分考虑了用户的功能需求,并且在最大的程度上满足用户的需求。
用户只需要根据界面的提示,进入对应的功能模块。比如考勤系统,职工可以在线查看每天的工作任务,在遇到某些特殊的情况,可以根据需求,向领导发出请假申请,而领导在看到请假申请以后,根据请假的实际情况,给予批准或者不批准,职工可以通过及时看到领导的回复。
2、开放性原则:
员工与员工之间、员工与领导之间都可以通过本系统进行交流,这样更好的解决现实中遇到的工作问题,并且有什么困惑和对工作的想法也可以及时和领导提出,避免了不必要的误会,同时提高了工作的积极性。
3、易用性原则:
员工和管理员在使用本系统的时候,不需要事先进行培训,直接可以上手,因为界面非常的清晰明了,每个模块都显而易见,只需要根据功能模块的按钮进入相应的模块,完成对应的功能操作。
4、完全稳定性原则:
为了使本系统安全稳定,本系统将采用 B/S 架构,这样有效的减轻了服务器端的压力,可以使服务器不会因为访问量的突增,而导致整套系统的崩溃。在数据库设计时,也考虑了数据的可恢复性,使得数据库在遇到某些问题时,能够自动修复之前的数据,不会让数据都丢失,造成巨大的损失。
4.2 系统设计
4.2.1 系统的体系结构
本系统采用 B/S 结构。具体如图 4.1 所示客户端浏览器:
管理员和职工通过客户端浏览器对网页进行访问,客户端浏览器主要负责向服务器发出请求,并将服务器返回的结果在界面上进行显示。
因特网:
主要负责将客户端与服务器端进行连接,使二者进行交互,实现客户端与服务器端的通信。
网页服务器:
网页服务器主要根据客户端的请求,返回对应的结果,并且将客户端的操作转化为对数据库的增删改查,以及访问的效果。其中静态页面主要由 Apache 负责响应,而动态页面则是由 Tomcat 进行回应。
数据库服务器:
数据库服务器主要负责存储与管理重要数据,将网页服务器的操作转化为对某个或某些特定表单的操作。
4.2.2 系统的总体功能模块设计
汽车线束公司员工信息管理系统,依照功能需求分析,主要分为五个功能模块:员工信息管理、薪资福利管理、考勤管理、员工讨论区、员工邮件系统。其中,员工信息管理子系统负责对员工基本信息(比如职务、姓名、年龄等)的管理以及员工信息的“增删改查”功能;薪资福利管理子系统实现对员工工资以及福利待遇进行管理;考勤管理,则可以由领导为每位员工安排每天的工作任务,并且对任务的完成情况进行检查记录;在员工讨论区的模块,员工们可以交流各种工作上的技术问题,相互分享工作经验,提高工作的效率;而员工邮件子系统实现了公司内容交流方式的统一以及做到了对公司机密的有效保护。本系统总体功能设计如图 4.1 所示
4.2.3 系统详细设计
在完成整体功能模块设计的基础上,我们每个功能模块内部的功能点进行更加详细的设计,来满足客户的需求。由于篇幅的限制,本文下面挑选核心的功能进行详细的设计。
(1)用户登录过程如图 4.3 所示
(2)用户信息注册过程如图 4.4 所示
(3)职工任务发布如图 4.5 所示
4.3 数据库设计
数据库设计需要考虑数据库的设计模式,以及第三范式(3NF)的要求,来构造完整的、相互制约数据库系统,并且设计出来的数据库要满足用户提出的各种需求。根据用户提出的需求,开发人员将需求从现实世界中抽象出来,构造相应的实体、数据表的形式,将用户的各种操作,通过与数据库系统的交互,对相应的表单进行存储以及管理。
4.3.1 系统实体图
本节中,我们将介绍系统中所涉及到的实体与它们各自的属性所构成的实体图。
(1)职工实体图如图 4.6 所示
(2)管理员实体图如图 4.7 所示
(3)员工讨论区帖子实体图如图 4.8 所示
(4)邮件实体图如图 4.9 所示
4.3.2 系统实体关系图
本节将给出系统实体之间的关系,由于篇幅的限制,并没有给出所有实体之间的关系,只是将系统中较为重要的实体,及其它们之间的关系进行了分析,具体如图 4.10 所示
4.3.3 数据表
根据对上述的实体关系图的分析,本文将设计出如下的数据表:职工表、管理员表、帖子表、薪资福利表、邮件表、考勤任务表等。
1、职工表
职工表如表 4.1 所示。
2、管理员表
管理员表如表 4.2 所示。
3、帖子表
帖子表如表 4.3 所示。
4、薪资福利表
薪资福利表如表 4.4 所示。
5、邮件表
邮件表如表 4.5 所示。
6、考勤任务表
4.4 本章小结
本章中,我们对汽车线束公司员工信息管理系统进行了具体功能模块的分析,给出了系统整体的功能模块图,并且对于核心模块的功能进行了详细的分析和阐述。在对系统进一步分析的基础上,我们构造出系统的大致实体关系图,并将实体关系图进行分解,转化为一个个具体的数据表。