--WORD格式--可编辑-----江西理工大学软件学院《面向对象程技术》课设计报告2011—2012学年第二学期课程名称面向对象技术设计题目职工信息管理系统专业班级11机械电子(2)班姓名杨锦其学号11212203指导教师吉宝玉2012年6月日--WORD格式--可编辑-----目录职工信息管理系统····································21前言···············································21.1项目背景················································21.2问题描述················································21.3详细要求················································21.4问题分析················································32.概要设计···········································32.1系统总体设计·············································32.1.1功能描述··············································32.1.2系统操作功能图········································42.2系统详细设计·············································2.2.1数据库设计··························2.2.2系统主界面设计·····································2.2.3·模块流程图·······························3.系统测试·······································3.1测试举例······················3.2测试项目及方法·····························4.课程设计总结······································4.1该课程设计的特点及不足·····································4.3心得体会·····························5.小组成员分工说明······························6.附件(源程序)···································--WORD格式--可编辑-----职工信息管理系统1.前言1.1项目背景职工信息管理系统是一个企业单位不可绝少的部分,它的内容对于企业的决策者和管理者来说都是至关重要的,所以职工信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来各个公司基本上都是靠传统的人工方式来管理职工信息,这种管理方式存在着许多缺点,如效率低,保密性差,另外时间一长将产生大量的文件和数据,这对于信息的查找,更新和维护都带来不少困难。当今社会,信息迅速膨胀,随着各个公司的规模扩大,有关信息管理工作所涉及的数据量越来越大,职工信息量也大大增加,利用传统的手工查询,等登记和修改等方法的处理速度远远跟不上公司的需求,有的公司不得不靠增加人力,物力来进行信息管理。随着计算机级数的不断提高,计算机作为知识经济时代的产物,其强大的功能已为人们深刻认识,它已进入人类社会的各个行业和领域并发挥着越来越重要的作用,成为人们工作和生活中不可缺少的一部分。而作为计算机应用的一部分,使用计算机对职工进行信息管理,具有手工管理所无法比拟的优点。例如检查迅速,查询方便,可靠性高,存储量大,保密性好,寿命长,成本低等。这些优点能够极大地提高职工信息管理的效率,也是公司的科学化,正规化管理与世界接轨的重要条件,职工信息管理系统作为一种管理软件正在各公司中得到越来越广泛的应用,且以达到良好的效果。1.2问题描述根据题目要求,由于职工信息是存放在文件中所以应提供文件的输入,输出,查询等操作;在程序中需要浏览职工的信息,应提供显示,查找,更改,删除等功能;另外还提供键盘式选择菜单实现功能选择。1.3详细要求(1)问题说明设计一个简单的职工信息管理系统,按照课程设计的要求,实现对职工信息的添加,查询,修改以及删除操作。(2)输入要求由信息管理员输入现有职工和新增职工的以下信息:姓名(可以重复),工作证号,身份证号,出生日期,家庭住址,联系电话,工资数等信息,并且注意输入时姓名为字符串形式,性别为字符,其余的为长整型数字。--WORD格式--可编辑-----(3)输出要求系统管理员根据公司的人员流动情况,选择系统提供的各项功能进行操作,并输出相应的结果。1.4问题分析(1)具体要求简单的职工信息管理系统主要实现以下功能:①新增一名职工:将新增职工对象按姓名存入职工管理文件中。②删除一名职工:从职工管理文件中删除一名职工对象。③查询:从职工管理文件中查询符合一些条件的职工。④修改:检索某个职工对象,对其某些属性进行修改。要求:职工信息包括:职工姓名、工作证号、身份证号、出生日期、家庭住址、联系电话、工资数等。(2)实现提示①有键盘输入职工对象,以文件方式保存。程序执行时先将文件读入内存。②对职工对象进行增,删,查询,修改等操作。2.概要设计2.1系统总体设计2.1.1功能描述①员工信息管理实现对员工基本信息的管理,如员工基本信息的添加,查询,修改以及删除,员工基本信息主要包括:姓名,身份证号,工作证号,电话,住址等基本信息情况,可在系统软件中快速查询得到。②工资管理包括工资变动,分配及其查询。③系统管理主要是对用户和密码的管理。包括添加系统用户信息及密码的修改,系统启动后首先要做的就是用户登录,若不登陆系统,所有功能都无法使用。只有用户登陆系统后才可以根据--WORD格式--可编辑-----用户权限进行一定的操作。2.1.2系统操作功能图2.2系统详细设计员工管理员职工信息管理系统查询查询信息添加信息删除信息修改信息退出系统管理员信息员工信息--WORD格式--可编辑-----2.2.1数据库设计目前设计数据库主要采用的是以逻辑数据库设计和物理数据库设计为核心的规范设计方法。其中逻辑数据库是根据用户要求和特定数据库管理系统的具体特点,以数据库设计理论为依据,设计数据库的全局逻辑结构和每个用户的局部逻辑结构。物理数据库设计是在逻辑结构确定之后,设计数据库的存储结构及其他实现细节。各种规范设计方法在设计步骤上存在差别,各有不同。对职工信息管理系统的分析是建立在UML系统模型基础上的,这里给出UML图分析及其分析。实际关系图的分析结果非常复杂,一般情况下使用从简到烦的方式进行设计,首先从大的方面设计出各个实体之间的关系,然后在这个关系的基础上进行细化。UML系统模型图职工管理系统的实体关系简单图职工信息管理系统添加信息删除信息查询信息修改信息--WORD格式--可编辑-----创建数据库:列号数据类型长度是否允许为空姓名0身份证号工作证号出生日期家庭住址联系电话工资2.2.2系统主界面设计打开程序软件首先进入密码页面:输入密码,进入操作系统主页面:上图即为职工信息管理系统主页面,根据用户需要,选择操作。2.2.3模块流程图①添加模块--WORD格式--可编辑-----3.系统测试3.1测试举例举例职工张三的信息:姓名:张三;身份证号:1234567890;工作证号:0987654321;出生日期:19931010;家庭住址:昌北双港东大街1180号;联系电话:18720082008;工资:100000;3.2测试项目及方法测试职工张三信息的添加,显示,查询,修改。①添加职工张三信息进入系统,输入密码123456,进入系统操作页面输入A,添加信息,如下:确认添加信息,输入Y,进入页面添加信息,进行操作:--WORD格式--可编辑-----输入Y,确认输入后的信息,张三信息添加成功!②显示职工张三信息进入系统,如添加信息第一步,输入S,显示所有职工信息,因为只添加了职工张三的信息所以只显示张三的信息,如下:--WORD格式--可编辑-----③查找职工张三的信息进入操作页面,输入F,进入如下页面:输入职工张三的姓名,即可查询得其职工信息;④删除职工张三的信息进入系统后输入D,进入修改信息页面,输入所需修改职工姓名张三,然后重新输入其要求的新信息,并保存,如下--WORD格式--可编辑-----4.课程设计总结4.1该课程设计的特点及不足此课程设计拥有密码保护,保密性高,并且背景颜色可以变换,增加美感,操作方便且简易,但是该软件所保存的信息不多,如员工的考勤情况,惩罚情况,每个月工资的提成与奖金都没有覆盖,所以该程序所存信息不足,有待改善,但该程序适合现阶段面向对象技术初学者的练习作业,能有效的反映出学生的学习情况及其动手能力,也能让学生自己检测出本学期自己所获得的知识掌握情况,是一向很好的课程设计项目。4.2心得体会在本系统的开封设计中,由于组是初次开发软件,在知识,经验方面都存在着不足。另外这个开发的过程比较仓促,因此留下了一些不足与缺陷,因为对职工信息管理的流程不太熟悉,在分析时未能做到完善。尽管如此,我组还是学到了很多东西。通过开发这个系统,我组掌握了项目基本开发过程,用到的知识巩固了我组对C++语言的学习,但在这次设计中的最大收获并不是掌握这几门开发工具的应用,而是学习了设计系统的思维方法,以及同学们之间相互帮助的精神。这次课程设计也同时让我个人认识到了自己知识的不足,并让我对C++有了全新的认识,也对其产生了浓厚的兴趣,要好好学习C++,充实自己。为自己加油!为自己组加油!5.小组成员分工说明--WORD格式--可编辑-----本组是11机械电子(2)班第一小组,成员有王永莎,赵晓燕,杨锦其,胡浩然,丁世成,傅旭海。分工如下:组长:王永莎,负责分派任务,督促小组成员完成自己任务。并完成大量编写任务;赵晓燕:编写UML图;胡浩然:编写代码,编写UML图;杨锦其,丁世成,傅旭海:编写添加,显示,修改,查找四个模块的流程图及其任务描述。6.附件(源程序)#includeiostream#includestring#includecstdio#includeprocess.husingnamespacestd;classCrew{public:voidadd();voidshow();voidcheck();voidchange();private:stringname;//职工姓名stringid1;//工作证号stringid2;//身份证号stringbirthday;//出生日期stringaddress;//家庭住址stringtelphone;//联系电话stringsalary;//工资--WORD格式--可编辑-----staticintaccount;};intCrew::account=0;Crewstiff[256];voidCrew::add(){stringname,id1,id2,birthday,address,telphone,salary;cout请输入职工的姓名:;cinname;cout请输入职工的身份证号:;cinid1;cout请输入职工的工作证号:;cinid2;cout请输入职工的出生日期:;cinbirthday;cout请输入职工的家庭住址:;cinaddress;cout请输入职工的联系电话:;cintelphone;cout请输入职工的工资:;cinsalary;charc;cout你是否确认输入的信息?(Y/N)