




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
人事管理系统(网络版)的设计与实现目 录第一章 绪论(3)1.1课题背景和来源(3)1.2课题总体介绍 (3)1.3系统整体开发过程 (3)1.4分析设计工具介绍 (4)1.5开发实现工具介绍 (5)第二章 人事管理系统需求分析(6)2.1需求分析的实施过程 (6)2.2系统功能调查(6)2.3整体需求概述(9)2.4组织结构图(9)2.5业务流程图(10)2.6用况图的产生(14)2.7系统实现目标(16)第三章 总体设计分析(17)3.1概要设计阶段的实施过程 (17)3.2概念模型的建立(17)3.3数据库设计 (18)3.4系统应用的网络拓扑(25)3.5系统的总体体系结构(26)3.6系统运行过程描述和系统交互图(27) 3.7系统体系结构包图(28)第四章 详细设计分析(30)4.1详细设计阶段的实施过程 (30)4.2系统的通信协议定义(30)4.3系统类图级实现(32)4.4系统界面设计(36)4.5系统安全策略(37)4.6代码构造应注意的问题 (38)第五章 系统编码和测试(39)第六章 结束语(41)摘要中文摘要:本课题是人事系统(网络版)的设计与实现,本系统运用面向对象的设计方法进行分析设计,利用面向对象的设计方法和UML(统一建模语言)进行系统建模,并综合运用MDA进行分析,给出了较为详细的系统的需求分析、组织结构图、业务流程图、用况图、系统概念模型图、系统架构图、数据库详细设计表、系统包图、系统类图等重要内容,给出各个阶段的详细设计报告,并利用object Pascal 语言、借助Delphi开发平台实现了系统的编码工作。本文展示了UML在系统设计分析中的应用过程,并突出了软件项目开发各个阶段的衔接和成果转化的基本方法和过程,取得了良好的效果;本文对同类的MIS系统分析设计有一定的参考价值.关键字:abstract This program is realization and the design of personnel system ( network edition ), this system utilizes the method of object oriented design to carry out analysis design , and uses the method of object oriented design and UML (Unified Modeling Language ) to build the model of the system , It also analyse roundly with MDA,and has given the relatively detailed demand analyse of the system , the pictures of Organize structure and the chart of business process , the pictures of use case, the pictures of systematic concept model and the chart of system configuration , the database table of detailed design and the bale of the system,the class of the system and so on .It also gives the report of detailed design every stage and use the language of object Pascal , have the aid of Delphi development platform realized system. This paper has demonstrated the application course of the UML in system designs, which extrude joint in software develops every stage and the base method and course of accomplishment transformation, have gotten good effect,this paper has certain reference value in the MIS design of systems analysis.第一章 绪论1.1 课题背景和来源在政府工作中人事组织工作占有着极其重要的地位,然而在现阶段的人事组织工作中却存在着多个相关部门之间各行其事,信息独享等无法避免的尴尬现象,这严重降低了工作效率,增大了部门间协调的难度.而且,这也是与当今社会市场化进程的快速发展相悖的;为了改变这样的局面,政府人事各部门就必须借助现代化的科学技术和先进的管理手段,我们的组织人事管理系统就在这样的背景下应运而生了,它的出现可以使人事组织部门的工作真真做到以人为中心,各部门之间使用共有的资源,同时提高工作效率,简化繁琐的手工统计和信息汇总的人工工作,让人事组织工作在人事组织相关的各部门之间活起来。当前的研究方向基本上包括如下两个方面:一是力求系统的通用性好,架构符合现代的人力资源管理体系所规定的标准;二是能够利用人力资源管理所积蓄的数据进行数据分析和数据挖掘,并从中获取有用信息。因此需要开发本系统。1.2 课题总体介绍本课题是人事系统(网络版)的设计与实现,主要是运用面向对象的设计方法进行分析设计,能对面向对象的设计方法和UML建模有一个较为深入的了解,并利用该原理和方法实现对人事管理系统的分析、设计和实现,给出各个阶段的详细设计报告,并有一定的实用价值,能满足小型企事业单位的应用需要。1.3 系统整体开发过程本文采用面向对象的设计方法进行分析设计,并利用UML(统一建模语言)进行建模,借助于Rational公司出品的Rational rose EnterpriseEdition2000软件进行辅助设计。本文给出了详细的用户需求、组织结构图、各类业务流程图、用例视图、系统状态图、系统顺序图、系统概念模型图、系统应用网络拓扑图、系统数据库详细设计、系统架构包模型、详细逻辑视图(类图级实现),最后,给出了系统的安全解决方案和系统维护方案。系统具体的开发阶段划分如下:第一阶段 全面挖掘需求阶段在挖掘需求阶段,本文给出了详尽的用户需求,并选择适中的粗粒度给出了组织结构图、事务处理流程图和系统用例。第二阶段 系统总体设计阶段在总体设计阶段,本文给出了系统的数据库解决方案、网络拓扑图、系统结构图、系统顺序图、和系统架构包图等。第三阶段 系统的详细设计阶段 在系统详细设计阶段,本文给出了第四阶段 系统的编码实现阶段根据前几个阶段的分析成果,实现系统的编码实现。本系统采用了object Pascal语言和C+语言实现,采用Borland公司的Delphi 和C+Builder6.0开发环境进行开发。第五阶段 后期维护阶段对于本文而言,后期阶段仅仅提出了可行的方案,并没有实践。本文正是按照本项目的开发过程分析的。具体内容参见后面各章节。1.4 分析设计工具介绍面向对象方法是一种运用对象、类、继承、封装、聚合、消息传送、多态性等概念来构造系统的软件开发方法。 自八十年代以来,面向对象方法已深入到计算机软件领域的几乎所有分支。面向对象方法起源于面向对象的编程语言,发展到面向对象的分析与设计,进而发展到整个软件生命周期。面向对象方法真正意义深远的目标是它适合于解决分析与设计期间的复杂性并实现分析与设计的复用。面向对象分析建立一个符合问题域、满足用户需求的OOA模型。面向对象设计以问题与为基础,考虑实现因素,建立OOD模型。面向对象编程以OOD模型为输入,用面向对象的编程语言(以及DBMS、GUI)实现整个系统。可见OOAD是面向对象软件过程的关键。 UML是为了简化和强化现有的大量面向对象开发方法这一目的而开发的。统一建模语言(UML)是一个通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。它记录了对必须构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。UML 适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具,UML 是一种总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。本文采用了Rational公司的Rational rose EnterpriseEdition2000软件进行辅助设计。1.5 开发实现工具介绍本毕业设计主要使用了object pascal语言来完成代码部分.Delphi是一个面向对象的可视化编程平台,应用于32位Windows应用程序的快速开发。Delphi提供了所有开始设计应用程序所必需的工具:1) 一个称为“窗体”的空白窗口,作为用于设计应用程序的用户界面。2) 一个包容许多可重用的对象的扩展的类库。3) 一个对象观察器,用于检查和改变对象的特性。4) 用于直接访问基本程序逻辑的源代码编辑器。5) 一个可以管理多个工程的工程管理器。6) 许多其他的用于支持应用程序开发的工具,例如工具栏中的图像编辑器和菜单中的集成调试程序等。7) 包括编译器、链接器和其他许多工具在内的命令行工具。Delphi可以用来设计任何类型的32位Windows应用程序:从一般的工具应用程序到复杂的数据存取程序或分布式应用程序。Delphi的数据库工具和数据感知组件让你快速开发出功能强大的桌面数据库和客户、服务器应用程序。同时,使用Delphi的数据感知控件,你能在设计应用程序的同时观察到当前的数据,也能立即见到数据库查询操作和对应用程序界面的更改的结果。第二章 需求分析2.1 需求分析的实施过程 本项目需求分析的实施分为4个阶段,第一阶段是功能调查阶段,本阶段,主要工作是进行详细的功能性的调查取证,作出整体需求归纳,并形成文字材料;第二阶段是分析组织结构阶段,本阶段主要工作是得出公司的组织结构关系,并形成文字和图表材料;第三阶段是获取业务处理流程阶段,本阶段将以前两个阶段的工作为基础,进一步了解清楚具体业务的处理流程,并形成文字和图表材料;第四阶段是归纳用户用例阶段,本阶段是根据前三个阶段的工作进行归纳总结,提取出系统的参与者和角色,形成用况图(use case diagram),并给出系统的实现目标。本文就按照这个顺序进行详细分析。2.2 系统功能调查2.2.1 权限管理类定义了人事管理系统的应用权限和应用功能。1) 权限的设置。2) 用户权限的删除。3) 用户权限的修改。2.2.2 密码管理类定义了系统密码管理子部分个体间的具体的制约关系。1) 密码包括:用户名、用户密码、用户权限等级。2) 用户密码的设置。3) 用户密码的修改2.2.3 档案信息管理类本部分对事物的基本档案进行管理。1) 员工档案信息包括: 员工户口状况、政治面貌、生理状况、合同管理、投保情况、担保情况等。2) 人口状况包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、出生日期、政治面貌、户口性质、家庭住址、联系方式、籍贯、身份证号、备注等。3) 政治面貌包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、出生日期、政治面貌、宗教信仰、入会时间等。4) 生理状况包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、出生日期、身高、体重、血型、病史等。5) 合同管理包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、出生日期、生效日期、终止日期等。6) 投保情况包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、出生日期、投保日期、保险编号、退保日期等。7) 担保情况包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、出生日期、保人姓名、保人关系、保人住址、保人电话等。8) 公司的档案信息包括:公司的编号、名称、地址、性质、荣誉情况、备注等。9) 部门的档案信息包括:部门的编号、名称、地址、性质、荣誉情况、备注等。 10)关系的信息包括:从属关系的表述。11)档案信息的浏览。12)档案信息的删除。13)档案信息的标注。2.2.4 考勤管理类本部分是对员工考勤进行管理的功能模块。1) 包括考勤、出差、节假、加班等。2) 考勤信息包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、考察日期、出勤、病假、事假、休假、公假、婚嫁、丧假、迟到、早退、旷职、公差、备注等。3) 加班信息包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、加班工作内容和地点、起始时间、结束时间、加班费、备注等。4) 公差信息包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、考察日期、代理人、出差目的、出差地点、起始日期、结束日期、备注等。5) 考勤信息的保存。6) 考勤信息的修改。2.2.5 人事变动管理类记录了人事的变动和部门的变动情况。1) 变动包括:新员工登记、员工离职登记、人员变更登记2) 新员工登记包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、进单位时间、职称、基本工资等。3) 员工离职登记包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、离职日期、离职原因。4) 人员变更登记包括: 员工的编号、姓名、原单位编号、原单位名称、原部门编号、原部门名称、原职务、性别、现单位编号、现单位名称、现部门编号、现部门名称、现职务、变更说明等。人事变动信息的浏览。5) 人事变动信息的删除。6) 人事变动信息的标注。2.2.6 员工培训管理类记录着员工的培训情况。1) 培训信息包括:员工培训和员工学历。2) 员工培训包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、培训名称、培训时间、培训成绩、培训费用、备注等。3) 员工学历包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、学校名称、科系、专业、学历、学校地点、校长或负责人、备注等。4) 培训信息的添加。5) 培训信息的修改。6) 培训信息的浏览。2.2.7 考核奖惩管理类对员工的考核进行管理。1) 奖励情况包括:员工的编号、姓名、单位编号、单位名称、部门编号、部门名称、职务、性别、身份证号、奖励事项及文件号、奖励办法、警告、记过、记大过、嘉奖、记功、记大功、备注等。2) 考核信息的修改。3) 考核信息的浏览。4) 考核信息的添加。2.2.8 系统控制类系统控制是指对为了确保系统的正确运行或测试系统稳定性,正确性而进行的相应控制。本部分是对系统控制进行管理的功能模块。1) 系统运行日志。2) 启动系统底层控制。3) 系统各部分功能的禁止与否。4) 启动系统的出错告警系统。2.3 整体需求概述系统功能结构图如下: (图1)系统功能结构图2.4 组织结构图人事管理组织的系统结构图如图2所示。(图2)组织结构图2.5 总体业务流程图2.5.1 业务流程综述业务总图如下图所示,本系统包含考核奖惩、考勤、档案管理、人事变更登记、密码权限管理、员工培训等部分。其中加班、出差、休假、出勤等都属于考勤管理,作为工资的主要依据;密码权限管理是由系统管理员或授权管理员进行分配管理;员工培训完毕后要有培训结论并存档备案;人事的就职、离职、部门调动、升迁、部门变更(如部门名称变更)等都要履行人事变更手续;考核奖惩是由上级领导(总经理或授权主管)来完成的,作为工资标准的重要补充,并为奖惩提供依据。具体的事务流程将在下面各节内详细给出。2.5.2 新员工登记流程(图4) 应聘、新员工登记工作流程2.5.3员工离职处理工作流程 (图5)员工离职工作流程2.5.4 加班、出差、休假的工作流程(图6)员工加班、出差、休假等的工作流程2.5.5员工调动登记流程(图7)员工调动(部门调动或职务变动)等的工作流程2.5.6 公司奖惩处理工作流程 (图8)奖惩处理流程2.5.7员工培训工作流程(图9)员工培训处理流程2.5.8员工系统帐号申请工作流程(图10)系统帐号申请处理流程2.6 系统用况图的产生2.6.1 Use Case diagram(用况图)的作用 本部分提取出了系统的参与者(actor)和角色(Character)之间的关系,并以用况图的形式把关系表示出来。下面各节将详细给出本系统的主要高层用况图例。2.6.2 帐号管理子系统的部分用况图 (图11)帐号管理子系统的部分用况图2.6.3 使用系统的部分用况图(图12)使用系统的部分用况图2.6.4 事务处理部分整体用况图(图13)事务处理部分整体用况图2.7 系统实现目标系统实现的目标如下:a) 对人事管理的基本理论和方法有一个深入的了解。b) 能够对数据库的开发有一个全面、深入的了解。c) 系统能够满足一定的办公的需求。d) 系统力求操作简便、灵活。e) 系统力求架构合理、科学,扩展性好。f) 系统利用局域网进行数据交换,构造C/S模型。g) 能够对聊天功能有一定的支持。第三章 系统分析和概要设计3.1概要设计阶段的实施过程本项目概要设计实施过程共分为四个阶段:第一个阶段是概念模型的建立阶段,本阶段是根据项目的需求分析阶段得出的重要成果进一步分析,提取出系统的概念模型;第二个阶段是系统数据库的设计阶段,本阶段是根据概念模型和挖掘需求阶段的结论确定数据表类别和详细的数据表项;第三阶段是系统架构设计阶段,本阶段根据具体的应用情景和系统安全方面考虑设计应用网络拓扑结构,然后确定系统架构模式,最终确定系统的体系结构;第四阶段是系统执行顺序和各模块配合关系分析阶段,本阶段将根据具体的分析得出系统顺序图和体系结构包图。本文就按照这个顺序进行详细分析。3.2概念模型的建立概念模型图如下:(图14)系统概念模型3.3数据库设计2.3.1 员工档案相关信息员工档案信息视图包括:员工户口状况、政治面貌、生理状况、合同管理、投保情况、担保情况等。a) 员工户口状况子表(hukou) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串姓名NameNULL字符串单位编号OfficeIDNULL字符串部门编号DepartmentIDNULL字符串职务JobNULL字符串性别SexNULL字符串出生日期BornNow时间类型户口性质HukouNULL字符串家庭住址HomeAddNULL字符串联系方式PhoneNULL字符串籍贯JiguanNULL字符串身份证号CardIDNULL字符串备注BeizhuNULL字符串b) 政治面貌子表(zhengzhi) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串政治面貌ZhengzhiNULL字符串宗教信仰ZhongjiaoNULL字符串入会时间RuhuiTimeNow时间类型备注BeizhuNULL字符串c) 生理情况子表(shengli) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串身高High0浮点数体重Height0浮点数血型XuexingNULL字符串病史BingshiNULL字符串备注BeizhuNULL字符串d) 合同管理子表(hetong) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串生效日期BeginTimeNow时间类型中止日期EndTimeNow时间类型备注BeizhuNULL字符串e) 投保情况子表(toubao) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串投保日期ToubaoTimeNow时间类型终保日期ZhongbaoEndTimeNow时间类型保险编号BaoIDNULL字符串备注BeizhuNULL字符串f) 担保情况子表(danbao) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串保人姓名BaorenNameNULL字符串保人关系BaorenguanxiNULL字符串保人地址BaorenAddNULL字符串保人电话BaorenPhoneNULL字符串备注BeizhuNULL字符串g) 公司档案信息子表 (office) 字段定义 字段名称 默认值 类型公司的编号IDNot NULL字符串名称NameNULL字符串地址AddNULL字符串性质XingzhiNULL字符串荣誉情况RuyuNULL字符串备注BeizhuNULL字符串h) 部门的档案信息子表(Department) 字段定义 字段名称 默认值 类型部门的编号IDNot NULL字符串名称NameNULL字符串地址AddNULL字符串性质XingzhiNULL字符串荣誉情况RuyuNULL字符串备注BeizhuNULL字符串i) 从属关系子表(保留)(congshu)2.3.2 考勤管理相关信息考勤管理信息视图包括:考勤、公差、加班等;a) 考勤管理信息子表(kaoqin) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串考察日期NameNow时间类型出勤ChuqinFalse布尔型病假BingjiaFalse布尔型事假ShijiaFalse布尔型休假XiujiaFalse布尔型公假GongjiaFalse布尔型婚假HunjiaFalse布尔型丧假ShangjiaFalse布尔型迟到ChidaoFalse布尔型早退ZaotuiFalse布尔型旷职KuangzhiFalse布尔型公差编号GongcaiNULL字符串备注BeizhuNULL字符串b) 加班管理信息子表(jiaban) 字段定义 字段名称 默认值 类型员工的编号IDNot NULL字符串加班地点AddNULL字符串起始时间BeginTimeNULL时间类型结束时间EndTimeNULL时间类型加班费用FeeNULL字符串备注BeizhuNULL字符串c) 公差管理信息子表(gongchai) 字段定义 字段名称 默认值 类型公差的编号IDNot NULL字符串代理人ProxyNameNULL字符串出差目的AddNULL字符串出差日期BeginTimeNULL时间类型结束日期EndTimeNULL时间类型备注BeizhuNULL字符串 2.3.3 人事变更相关信息人事变更信息视图包括:人事的变动和部门的变动等。a) 新员工登记信息子表(xindengji) 字段定义 字段名称 默认值 类型变更编号IDNot NULL字符串员工编号ManIDNULL字符串进单位时间BeginTimeNow时间类型职称ZhichengNULL字符串基本工资BaseFeeNULL字符串备注BeizhuNULL字符串b) 员工离职登记信息子表(lizhi) 字段定义 字段名称 默认值 类型变更编号IDNot NULL字符串员工编号ManIDNow字符串离职日期EndTimeNULL时间类型离职原因YuanyinNULL字符串备注BeizhuNULL字符串c) 人员变更登记子表(Manbiangeng) 字段定义 字段名称 默认值 类型变更编号IDNot NULL字符串员工编号ManIDNULL字符串原单位编号Y_OfficeNULL字符串原部门编号Y_DepartmentNULL字符串原职务Y_zhiwuNULL字符串现单位编号X_OfficeNULL字符串现部门编号X_DepartmentNULL字符串现职务X_zhiwuNULL字符串变更说明BeizhuNULL字符串d)部门变更登记子表(备用)(bumenbiangeng)2.3.4 奖励情况相关信息 奖励情况包括:员工的编号、奖励事项及文件号、奖励办法、警告、记过、记大过、嘉奖、记功、记大功、备注等。 字段定义 字段名称 默认值 类型员工编号IDNot NULL字符串奖励文件号FileIDNULL字符串奖励办法BanfaNULL字符串警告JinggaoFalse布尔型记过JiguoFalse布尔型计大过JidaguoFalse布尔型嘉奖JiajiangFalse布尔型记功JigongFalse布尔型记大功JidagongFalse布尔型备注BeizhuNULL字符串2.3.5 员工培训相关信息员工培训信息视图包括:员工培训和员工学历。a) 员工培训子表(peixun) 字段定义 字段名称 默认值 类型员工编号IDNot NULL字符串培训名称NameNULL字符串培训时间TimeNULL时间类型培训成绩ScoreNULL字符串培训费用FeeNULL字符串备注BeizhuNULL字符串b) 员工学历子表(xueli) 字段定义 字段名称 默认值 类型员工编号IDNot NULL字符串学校名称SchoolNameNULL字符串科系KexiNULL字符串专业ZhuanyeNULL字符串学历XueliNULL字符串学校地点SchoolAddNULL字符串校长或负责人XiaozhangNULL字符串备注BeizhuNULL字符串2.3.6密码(权限)管理相关信息视图包括:密码管理和权限管理。a) 密码管理信息子表(mima) 字段定义 字段名称 默认值 类型密码编号IDNot NULL字符串员工编号ManIDNULL字符串用户名UserNameNULL字符串密码PswNULL字符串权限编号QuanxianIDNULL字符串备注BeizhuNULL字符串b) 权限管理信息子表(quanxian) 字段定义 字段名称 默认值 类型权限编号IDNot NULL字符串模块名称ModuleNameNULL字符串不可见HideFalse布尔型只读访问ReadFalse布尔型读写访问ReadWriteFalse布尔型备注BeizhuNULL字符串3.4 系统应用的网络拓扑 系统最大应用网络拓扑图如下: (图15)系统最大应用网络拓扑结构图3.5 系统的总体体系结构系统的体系结构如下:(图16)系统体系结构图考虑到了应用的范围和安全性,本系统采用C/S结构设计,结构如下图所示: (图17)C/S结构图3.6系统运行过程描述和系统交互图系统管理员将服务器端程序运行起来并保证网络畅通后,才可能使用本系统。用户启动应用程序后,客户端在刚启动时向客户端所在的网络内的所有主机发送查找主机广播(采用UDP协议),仅仅有服务器作出回应,回应中含有服务器的IP地址和端口号,这时客户端向用户发出提示,用户输入帐号和密码后,客户端将密码传给服务器验证,验证通过后,服务器发送本用户的权限,并给客户端分配了一个独立的服务进程(包括数据库服务线程,可能该服务进程含有多个进程),客户端根据该信息处理后(若收不到该权限设置消息,就默认为最低级用户)进入系统,当用户有事务需要向服务器请求时,客户端将请求发送给服务器,服务器处理后把结果反馈给客户端,就实现了一次处理,当用户主动退出系统时,系统将向服务器发送请求,服务器收到后,进行注销用户登录的善后处理;服务器会控制客户端与服务器的连接,当连接断开时,对用户的登录进行善后处理;当服务器异常退出时,客户端也会提示退出信息。系统交互图如下图所示:(图18)系统交互图3.7系统体系结构包图 系统分为4个包,分别是:GUI(用户图形界面接口包)、NetComm(网络通信处理包)、DataBase(数据库存储和处理包)、Business(逻辑事务处理包)。其中GUI(用户图形界面接口包)实现了与用户的图形界面接口;NetComm(网络通信处理包)封装了所有的与网络通信有关的通信处理功能;DataBase(数据库存储和处理包)封装了数据库存储相关的处理功能并为其他部分提供接口;Business(逻辑事务处理包)封装了所有的逻辑事务的处理,本部分是系统逻辑处理的核心,为高效、可靠的交互提供了重要保障。 (图19)系统体系结构包图第四章 详细设计4.1详细设计的实施过程本项目详细设计的实施过程分为4个阶段:第一阶段是通信协议的定义阶段,本阶段对系统通信的基本协议作了详细的描述;第二阶段是系统的类图级实现阶段,本阶段是根据总体设计阶段的分析结论进行类图级实现,主要是考虑对象之间的关系和接口,本部分包括用户图形界面的设计(GUI接口的设计);第三阶段是系统关键技术分析阶段,本阶段对本部分第一阶段发现的影响系统效率和系统质量的部分进行分析设计,并给出重点解决方案,回归迭代前一阶段的设计;第四阶段是对系统的安全问题进行分析,并给出具体的安全策略,进一步回归迭代前一阶段的设计;本文将按照这个顺序进行详细的分析。4.2系统的通信协议定义本协议的物理层依赖是计算机网络,本部分的设计本处从简;协议逻辑层的业务操作在总体设计阶段已经有论述,本处不在赘述,仅对协议的基本结构进行规定,系统建立链路的过程中采用UDP协议通信,客户端与服务器之间采用UDP协议通信;客户端与数据库服务器之间采用TCP协议通信,保证链路的可靠。 4.2.1命令格式命令的格式: 命令字符 参数 参数 参数 回应的格式: 回应数字代号 回应的文字描述 帧结构定义:帧头交互定义命令标志字帧标志帧长度数据内容帧尾帧头:交互定义:用于标识帧的事务处理命令所属类型命令标志字:用于命令的类型帧标志:x00 为数据帧,x0 为ACK帧,x0 为NAK帧.数据长度和内容:标识数据长度和内容帧尾: 4.2.2 链路建立过程的通信协议 通信过程中,Client端使用5554端口监听数据、用5555端口发送数据,Server端使用5555端口监听数据、用5554端口发送数据。C Client,前台S Server,后台下面的例子中没有在命令和回应的后面标识,但实际中是一定要加上的。C:SEARCHSERVERS:SERVERHERES:GIVE YOU MY IP +IP地址; C:I KNOW(C:I UNKNOW)4.2.3 密码验证时的通信协议C: SECURITY + 验证帧S:SECURITYRUSULT+验证回复帧S:RULE +权限回复帧4.2.4 事务处理时的通信协议C:BUNINESS + 事务请求帧S:BUNINESS + 事务请求回复帧C:BUNINESS + 事务处理交互帧S:BUNINESS + 事务请求回复帧4.2.5 链路撤消时的通信协议C:STOPCOMMUNICATOR + 链路撤消请求帧S:STOPCOMMUNICATOR + 链路撤消回复帧4.3系统类图级实现4.3.1 Buniness包 Buniness包是最主要的业务流程处理包。主要由下列类组成:1) Wanalyser(数据分析器)2) Wdispatcher(消息分发器)3) WcommandHandle(消息处理句柄)4) WCommand(虚拟的消息处理类)5) WtransData(数据发送对象)6) WbackSystem(全局系统后台对象)7) Wapplication(系统主进程)8) WPSWCommand(密码验证消息处理对象)9) WreleaseLinkCommand(释放链路消息处理对象)10) WstopTransCommand(停止传输数据消息处理对象)11) DossierManager(档案管理对象)12) AttendanceManager(考勤管理对象)13) ModifyManager(变更管理对象)14) PasswordManager(密码管理对象)15) PunishManager(奖惩管理对象)16) TrainManager(培训管理对象)17) PurviewManager(权限管理对象)关于类的详细描述图中已经给出详尽的说明,本处就不在论述。(图20)Business包的详细设计类图4.3.2 NetComm包 NetComm包负责客户端和服务器之间的通信,通过TCP和UDP协议,可以实现系统的内部通信,此包主要由下列类组成:1) WlinkManager(链路管理对象)2) WlinkWay(链路对象)3) WsmartTimer(全局精确定时时钟对象)4) Wparser(数据分析器)5) Wcommunicator(通信器)本部分类的具体定义也已经在下图中说明清楚,本处不在论述。(图21)NetComm包的详细设计类图4.3.3 DataBase包 DataBase包是负责和数据库交互的对象封装,提供数据库的访问服务给上层的各个对象,主要由下列类组成:1) WdataBaseEngine(数据库引擎接口)2) Wconnection(链接器)3) Wquery(SQL语句执行器)4) WdataBase(数据库对数据感知接口)这些类对象形成了与数据库的安全高效的交互机制。(图22)DataBase包的详细设计类图4.3.4 GUI包 GUI包负责系统的界面显示,反映系统内在实体之间的状态,主要由下列类组成:1) Wface(系统界面显示资源对象)2) Wobject(组织结构节点的虚拟类)3) Wdepartment(部门节点对象)4) WNUL(空节点对象)5) Wman(人节点对象)6) Woffice(公司节点对象)7) Wline(所属关系节点对象)8) WDBGrid(图表显示对象)9) WactorDriverHandle(动作驱动句柄)(图23)GUI包的详细设计类图4.4系统界面设计4.4.1 系统登录界面设计(图24)系统登录图4.4.2 系统主界面设计 (图25)系统主界面4.5系统安全策略4.5.1 安全策略概述由于网络本身存在着很多不安全因素,因此需要考虑系统的安全性问题。系统的不安全因素可分为来自系统本身的和外部的两类,对于第一类,主要是系统发生异常的情况。来自外部的攻击系统的主要方式有:截获数据包并进行分析、伪造数据包、攻击数据库、切断通信线路、破解可执行文件等方式。针对这些问题,本文提出了如下的6种策略,下面将对这6种策略进行详细的分析。4.5.2 通信加密为了防止“黑客”截获数据包并进行解析,本文采用采用DES算法对通信的数据报文进行加密;通信模块实现了加解密算法,这样可以有效的防止数据报文内容的泄露。 4.5.3 程序加密为了防止“黑客”利用反编译工具对应用程序进行破解,本文通过对可执行程序进行加密。由于可执行文件在执行的过程中可以读自己,因此,笔者将生成应用程序后,又实现了一个加密程序,对应用程序的有效部分进行CRC校验,并将校验和写到程序的静态数据区。这样,在应用程序运行时,就读自己并进行CRC校验(本次校验不包括静态数据区的CRC校验和的存储字节),如果CRC校验和相等,表示程序可以运行;否则,将退出执行。这样就实现了程序加密。4.5.4 增加防火墙策略为了防止“黑客”利用黑客工具攻击数据库,本文采用了增加防火墙的策略解决这个问题。防火墙可以在不改变网络结构的前提下对数据包进行过滤,这样,可以有效的防止来自外部的攻击。4.5.5 合理搭建计算机网络尽量不要把服务器端与客户端直接置于同一个网内,如果条件允许的话,可以将网络划分成若干个子网,将服务端(包括数据库服务器)单独置于一个子网内,通过路由与其他子网相连。否则尽量能够安装防火墙。 4.5.6 数据库备份与恢复系统能够定时对数据库进行备份,这样可以在当前数据库损坏的情况下手动恢复数据库,这样可以让损失减小到最小。4.5.7 系统日志对于用户作出的每一个有效的操作,系统均会在运行日志中一一记录,当系统发生异常时,系统分析员能够根据异常信息进行最大可能性的恢复。4.6代码构造应注意的问题 代码构造时一定要严格按照以上设计进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 济南市2024-2025学年九年级下学期语文期末测试试卷
- 电路板元件回收知识培训课件
- 高速行车注意事项
- 电视剪辑课件
- 电装检验知识技能培训课件
- 电脑趣味知识培训课件
- 苗木补偿合同
- 房屋拆迁补偿委托合同
- 电脑摄影基础知识培训课件
- 电缆销售知识培训内容课件
- 工期目标、工期保证体系及保证措施
- 集成电路测试指南
- 铝合金搅拌摩擦焊技术研究进展
- 《亚低温冬眠治疗》课件
- 2025年淫羊藿提取物项目可行性研究报告
- 2025年山西中阳钢铁有限公司招聘笔试参考题库含答案解析
- 2025年四川攀枝花钒钛高新国有资本投资运营有限公司招聘笔试参考题库附带答案详解
- 呼吸内科培训与考核制度
- DB11T 2330-2024 行业协会商会诚信建设规范
- 新课标(水平三)体育与健康《篮球》大单元教学计划及配套教案(18课时)
- (新版)电信网上大学智能云服务交付工程师认证考试题库-上(单选题)
评论
0/150
提交评论