本书构建的人力资源管理服务系统是借助模型—视图—控制器模式进行设计研发的,系统的总体框架应包括互联网浏览器和数据库服务端两部分,普通员工可以借助企业的内部网络在任意一台计算机设备上登录该系统,外部网络使用者也可以借助Web服务器登录该系统浏览相关界面。
在系统的互联网功能设计阶段,基于对系统的需求分析,应专门研发通过Web服务器登录系统的模式,实现企业内部的信息交互。系统的总体技术架构决定了系统运行的稳定性和效率问题,本书构建的人力资源管理服务系统的分层架构如图6-1所示,整个系统可以分为三层。
图6-1 人力资源管理服务系统的分层架构
1.表现层主要负责获得用户的输入,并将后台处理的结果展现给用户。用户可以在系统的表现层中,使用系统功能模块的用户界面进行交互操作。
2.业务逻辑层主要由过滤器、数据转换等Struts核心组件构成,其作用是对用户输入的数据和操作请求进行处理,实现系统服务。
3.数据层主要是指系统存储数据所使用的MySQL数据库环境,以及系统中的服务器和其他软件、硬件环境。
系统完成开发后,需要部署在企业内部的服务器上。服务器安装了安全、开源的Linux最新版操作系统,并且使用WebLogic作为应用服务器。开发人员将编译好的项目文件打包成WAR文件就可以在服务器上进行发布。在部署时,可以考虑:将各类服务器都部署在企业内部的局域网环境中,将所有用户的访问也都默认设置在内网访问。这样和外部网络的物理隔离,保证了系统可以避免各类非法侵入。但是考虑到用户也有外网访问的需求,所以在内网访问设置的基础上,增加防火墙来避免非法用户的恶意入侵,同时又满足用户需求。人力资源管理服务系统的部署架构如图6-2所示。
图6-2 人力资源管理服务系统的部署架构(www.xing528.com)
人力资源管理系统中的各个模块之间都以客户端申请操作的数据为模块的输入,以模块处理之后的数据为模块的输出。那么,模块之间的数据分为三种:同步性质的数据、异步性质的数据和共享性质的数据。凡是人力资源管理员申请查看的数据都属于共享性数据,共享性质的数据只具备只读属性。共享内容处理示意图如图6-3所示。
图6-3 共享内容处理示意图
由图6-3可知,功能模块1到功能模块4同时申请查看人力资源管理系统中的某项信息,如果系统给各个功能模块授予修改权限,功能模块同时对数据采取修改操作会导致每个模块获取的数据都不准确,所以系统只是授予各个模块对申请数据的只读权限。
共享数据在系统中存在于共享内存中,共享数据只具有只读属性,所以各个模块的访问不影响获取数据的准确性。如果客户端申请修改数据,系统会对申请数据权限进行修改,此时的数据属性改为可读可写。对于可读可写的数据,如果多个功能模块在操作该数据过程中同时申请修改数据内容,系统会采用互斥机制或者同步机制进行处理,以防止模块被同时修改。实现互斥和同步机制的前提是信号量的实现,图6-4展示的是信号量实现同步互斥的流程,也是信号机制处理的流程。[3]
图6-4 信号机制处理流程
最后,根据系统功能需求分析将人力资源管理系统划分为系统管理模块、员工档案管理模块、薪资福利管理模块、考勤管理模块、人事异动管理模块以及绩效管理模块。人力资源管理服务系统的模块架构如图6-5所示。
图6-5 人力资源管理服务系统的模块架构
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。