论文部分内容阅读
[摘 要] 对CS和BS结构体系的优缺点进行了研究和比较,并结合实际业务需求对系统的关键技术进行了分析,提出了工资管理系统的设计方案。
[关键词] 软件结构 动态数据表 工作流
一、引言
工资管理工作在高校的日常管理工作中占据了重要的地位,在高校的工资管理工作中,由于工资结构复杂、人事变动频繁,市场上通用的一些工资管理软件难以满足要求,因此量身定做工资管理系统已成为工资管理部门的一个迫切需求。
二、系统架构分析
(一)CS结构的优缺点
CS结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。客户端需要安装专用的客户端软件。
CS的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:
■ 一般只适用于局域网环境。
■ 客户端需要安装专用的客户端软件,维护和升级成本非常高。
(二)BS结构的优缺点
BS结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对CS结构的一种变化或者改进的结构。在这种结构下,客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer,浏览器通过WebServer同数据库进行数据交互。用户界面完全通过WWW浏览器实现,
BS最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。然而BS结构并非完美,也存在如下缺点:
■ 执行效率低,受网络环境影响较大。
■ 由于BS结构是瘦客户端,Web服务器负担较重。
■ 安全性不强。
■ 对于一些实时性要求比较高,数据量比较大的系统,BS结构无法满足系统的需求。
根据以上分析,不能片面的认为哪种模式更好,应该从实际情况出发,选择适合的系统模式。
(三)工资系统的软件架构
工资系统有一个特点就是录入量较大,录入要求高,比如说需要实时保存、需要支持全键盘操作、需要灵活的对工资项目进行排序、需要拖动列以方便操作、需要固定表头和前几列等等,根据以上操作特点,如果采用BS的软件结构,很难满足用户需求,因此需要采用专用的客户端。另外,工资系统又是一个涉及到全校所有部门的应用系统,为了避免频繁的客户端安装和升级,又需要采用浏览器作为客户端。
因此,从实际业务情况出发,本系统采用的是一个数据库服务器,CS和BS两种客户端的软件结构,因为财务处的录入量很大,涉及到几十个工资项目,所以采用专用客户端,而其它处室涉及到的工资项目较少,都不超过10个,所以采用浏览器作为客户端。即本系统BS、CS结构并存。软件结构图如下:
三、数据库设计
(一)设计中存在的诸多问题
工资系统的数据库设计是一个难点,其中涉及到诸多问题:
■ 工资项目多达几十个,在设计时要考虑到工资项目的变化情况,既要保存历史数据,又要适应工资项目的增加。
■ 人员变化频繁,职称变动,职务变动,岗位变动,最后对应工资都会做相应的变动。
■ 某人的工资项目的是由多个部分组成的,比如说张三的工资=财政项目+学校项目,而学校项目又等于津贴项目,课时费,加班费,劳酬等等组成。
■ 需要出各种报表,每个部门、每人,每年每月、每个项目的工资汇总情况,不同时间的工资对比情况,工资项目调整前后的对比情况等等。
(二)数据库设计
工资是按月发放的,因此再进行系统设计时,本系统将每月的工资发放流程设计为一个工作流。对应工作流的数据库设计如下:
1.流程开始时,生成“流程对应人员表”,“流程对应工资项目表”,记录工资发放流程所对应的人员信息和工资项目信息,目的是为了记录历史数据。
2.流程对应的数据表采用动态数据表的形式,其中包括:
■ 正式工资表,这张表的字段是不会减少,只会增加。这样做的目的是为了记录所有历史数据。
■ 若干临时工资表,这些表的字段分别对应相应职能处室的录入情况,表的字段根据工资项目的设置进行动态变化。
■ 最后流程结束时,要将临时工资表的数据清空,只保留正式工资表内容,这样做的好处是既适应了工资项目的动态变化,保存了历史数据,又保证了工资发放流程时的数据库访问速度。
四、系统功能模块
按功能区分本系统主要分为三大模块:系统设置、人事管理、工资发放管理。
(一)系统设置:
工资项目设置:考虑到软件使用的灵活性和可扩充性,本系统的工资项目都是可以动态添加和删除的。根据工资项目的设置,各用户的操作界面会动态进行变化。
角色用户管理:本系统通过角色的分配来完成对用户权限的授予,整个访问控制过程就分成两个部分,即访问权限与角色关联,角色再与用户关联,从而实现了用户与访问权限的逻辑分离。
(二)人事管理
人事管理是对人员的基本信息进行管理,由于人员的某些基本信息是与人员对应的学校津贴是相关的,所以说人员信息十分重要,在具体业务过程中,需要经过填写和复核两个步骤。在具体的程序设计中,则需要考虑人员的状态变化。与人员状态相关的概念有人员状态、审核状态和动作。人员状态包括:0-新建状态、1-修改状态、2-删除状态。审核状态包括:0-未提交、1-已提交、2-审核未通过、3-审核通过。动作包括新建动作、编辑动作、删除动作。
(三)工资发放管理
首先需要区分工资项目,根据工资项目的性质,将工资项目的性质分为基础项目和上报项目,基础项目由人事处制定,上报项目由各处室上报,比如说课时费、加班费等等,具体流程参见下图:
五、系统功能特点
■ 系统主要具有如下功能特点:
■ 支持灵活定义工资项目和编辑公式
■ 录入界面完全动态生成,用户操作性好
■ 权限管理明晰,日志记录完善
■ 针对工资系统的特点,数据表设计采用了动态表的方式
实现了和上级部门工资管理系统的数据对接
六、结束语
本文在详细分析CS和BS两种模式优缺点的基础上,结合本单位工作管理业务的实际情况,详细讨论了本系统的软件架构、数据库设计和功能结构,通过灵活的设计,使用户能够根据系统提供的各种定制功能自行设置满足自己的需要,使系统满足了职能部门复杂的业务需求。
参 考 文 献
[1]沈永强;曹玉金。通用工资管理系统的设计与实现。计算机工程与应用,Computer Engineering and Applications,2002年13期
[2]孙国荣;韩敏欣;石宏;刘厚铭。运用工作流(Workflow)实现审批系统的电子化。【会议】OA’2004第八届办公自动化国际学术研讨会论文集
[3]余乐。一个OA系统中的工作流模型计算机工程与应用2003-05
[关键词] 软件结构 动态数据表 工作流
一、引言
工资管理工作在高校的日常管理工作中占据了重要的地位,在高校的工资管理工作中,由于工资结构复杂、人事变动频繁,市场上通用的一些工资管理软件难以满足要求,因此量身定做工资管理系统已成为工资管理部门的一个迫切需求。
二、系统架构分析
(一)CS结构的优缺点
CS结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。客户端需要安装专用的客户端软件。
CS的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:
■ 一般只适用于局域网环境。
■ 客户端需要安装专用的客户端软件,维护和升级成本非常高。
(二)BS结构的优缺点
BS结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对CS结构的一种变化或者改进的结构。在这种结构下,客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer,浏览器通过WebServer同数据库进行数据交互。用户界面完全通过WWW浏览器实现,
BS最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。然而BS结构并非完美,也存在如下缺点:
■ 执行效率低,受网络环境影响较大。
■ 由于BS结构是瘦客户端,Web服务器负担较重。
■ 安全性不强。
■ 对于一些实时性要求比较高,数据量比较大的系统,BS结构无法满足系统的需求。
根据以上分析,不能片面的认为哪种模式更好,应该从实际情况出发,选择适合的系统模式。
(三)工资系统的软件架构
工资系统有一个特点就是录入量较大,录入要求高,比如说需要实时保存、需要支持全键盘操作、需要灵活的对工资项目进行排序、需要拖动列以方便操作、需要固定表头和前几列等等,根据以上操作特点,如果采用BS的软件结构,很难满足用户需求,因此需要采用专用的客户端。另外,工资系统又是一个涉及到全校所有部门的应用系统,为了避免频繁的客户端安装和升级,又需要采用浏览器作为客户端。
因此,从实际业务情况出发,本系统采用的是一个数据库服务器,CS和BS两种客户端的软件结构,因为财务处的录入量很大,涉及到几十个工资项目,所以采用专用客户端,而其它处室涉及到的工资项目较少,都不超过10个,所以采用浏览器作为客户端。即本系统BS、CS结构并存。软件结构图如下:
三、数据库设计
(一)设计中存在的诸多问题
工资系统的数据库设计是一个难点,其中涉及到诸多问题:
■ 工资项目多达几十个,在设计时要考虑到工资项目的变化情况,既要保存历史数据,又要适应工资项目的增加。
■ 人员变化频繁,职称变动,职务变动,岗位变动,最后对应工资都会做相应的变动。
■ 某人的工资项目的是由多个部分组成的,比如说张三的工资=财政项目+学校项目,而学校项目又等于津贴项目,课时费,加班费,劳酬等等组成。
■ 需要出各种报表,每个部门、每人,每年每月、每个项目的工资汇总情况,不同时间的工资对比情况,工资项目调整前后的对比情况等等。
(二)数据库设计
工资是按月发放的,因此再进行系统设计时,本系统将每月的工资发放流程设计为一个工作流。对应工作流的数据库设计如下:
1.流程开始时,生成“流程对应人员表”,“流程对应工资项目表”,记录工资发放流程所对应的人员信息和工资项目信息,目的是为了记录历史数据。
2.流程对应的数据表采用动态数据表的形式,其中包括:
■ 正式工资表,这张表的字段是不会减少,只会增加。这样做的目的是为了记录所有历史数据。
■ 若干临时工资表,这些表的字段分别对应相应职能处室的录入情况,表的字段根据工资项目的设置进行动态变化。
■ 最后流程结束时,要将临时工资表的数据清空,只保留正式工资表内容,这样做的好处是既适应了工资项目的动态变化,保存了历史数据,又保证了工资发放流程时的数据库访问速度。
四、系统功能模块
按功能区分本系统主要分为三大模块:系统设置、人事管理、工资发放管理。
(一)系统设置:
工资项目设置:考虑到软件使用的灵活性和可扩充性,本系统的工资项目都是可以动态添加和删除的。根据工资项目的设置,各用户的操作界面会动态进行变化。
角色用户管理:本系统通过角色的分配来完成对用户权限的授予,整个访问控制过程就分成两个部分,即访问权限与角色关联,角色再与用户关联,从而实现了用户与访问权限的逻辑分离。
(二)人事管理
人事管理是对人员的基本信息进行管理,由于人员的某些基本信息是与人员对应的学校津贴是相关的,所以说人员信息十分重要,在具体业务过程中,需要经过填写和复核两个步骤。在具体的程序设计中,则需要考虑人员的状态变化。与人员状态相关的概念有人员状态、审核状态和动作。人员状态包括:0-新建状态、1-修改状态、2-删除状态。审核状态包括:0-未提交、1-已提交、2-审核未通过、3-审核通过。动作包括新建动作、编辑动作、删除动作。
(三)工资发放管理
首先需要区分工资项目,根据工资项目的性质,将工资项目的性质分为基础项目和上报项目,基础项目由人事处制定,上报项目由各处室上报,比如说课时费、加班费等等,具体流程参见下图:
五、系统功能特点
■ 系统主要具有如下功能特点:
■ 支持灵活定义工资项目和编辑公式
■ 录入界面完全动态生成,用户操作性好
■ 权限管理明晰,日志记录完善
■ 针对工资系统的特点,数据表设计采用了动态表的方式
实现了和上级部门工资管理系统的数据对接
六、结束语
本文在详细分析CS和BS两种模式优缺点的基础上,结合本单位工作管理业务的实际情况,详细讨论了本系统的软件架构、数据库设计和功能结构,通过灵活的设计,使用户能够根据系统提供的各种定制功能自行设置满足自己的需要,使系统满足了职能部门复杂的业务需求。
参 考 文 献
[1]沈永强;曹玉金。通用工资管理系统的设计与实现。计算机工程与应用,Computer Engineering and Applications,2002年13期
[2]孙国荣;韩敏欣;石宏;刘厚铭。运用工作流(Workflow)实现审批系统的电子化。【会议】OA’2004第八届办公自动化国际学术研讨会论文集
[3]余乐。一个OA系统中的工作流模型计算机工程与应用2003-05