资源描述
*******************
实践教学
*******************
大学
面向对象 课程设计
题 目: 企业人事管理系统
专业班级: 计算机科学与技术
姓 名:
学 号:
指导教师:
成 绩:
前 言
企业人事管理系统是企业管理中的一个重要内容,随着时代的进步,企业人员数量也不断增加,分工的不断细化,各个行业之间的联系也不断密切,对人事管理的要求也不断提高,早期的人工管理的方式已经不适合现代企业公司的发展。实现企业人事管理的系统化、规范化、自动化,是现代企业管理的首选。使用计算机管理人员信息,不但可以大量节省时间、人力、财力,而且能更全面的有效的掌握公司的基本情况,及时获得最新而又准确的资料和信息。此课设设计就是这样一个管理公司人员信息的系统,其功能与实现性有较好的针对性和实用性。能比较方便的实现对人员信息的操作和管理。
在Windows环境下利用Virtual C++开发了企业人事管理系统,设计的功能主要有职工信息的录入、修改、添加、删除、查询、存储和读取功能,通过对文件的操作,更好的保证了信息的安全性,功能的实现主要通过对话框的方式来实现,利用口令进行友好的交互界面。
目 录
摘 要 2
第一章 系统总体设计 4
1.系统功能模块图 4
2.各类间关系 5
第二章 详细设计 6
第三章 系统测试 12
1.测试方法 12
2.测试用例 12
3.测试结果 13
第四章 软件使用说明书 15
总 结 21
参考文献 22
致谢 23
摘 要
企业人事管理系统是典型的信息管理系统,其中开发主要包括累的应用于成员函数的实现。对于前者要求建立起封装性好、完备性高的类。而对于后者则要求函数能够完全,功能齐全。
本系统主要完成对企业职员基本信息的管理,其中包括对职员信息的添加、信息修改、信息删除、信息统计以及信息的保存和显示等功能。本系统的开发采用面向对象的设计思想,系统的介绍了企业人事管理系统的开发过程及面向对象的具体实现。
关键词: 人事管理;面向对象;类
第一章 系统总体设计
企业人事管理系统是一套功能强大、操作简便而又实用的企业人事管理软件,它可以被广泛的应用于各种类型的公司人员管理中。开发此人事管理系统的目的为了克服传统人员管理模式中遇到的诸如人员繁杂,部门较多,对员工的人员信息记录不全,人员调配不均和员工信息不明等问题,根据对现有管理模式的分析,确定了该系统需实现以下功能:
(1) 实现对员工信息的添加功能;
(2) 实现对员工信息的修改功能;
(3) 实现对员工信息的删除功能;
(4) 实现对员工信息的存储功能;
(5) 实现对员工信息的查询功能;
(6) 实现对员工信息的读取功能;
(7) 实现对员工工资和年龄的平均统计功能。
1.系统功能模块图
根据用户需求,本系统将主要实现以下功能:
企业人事管理系统
信息添加
信息删除
信息读取
信息统计
信息查询
信息存储
信息修改
图1-1 系统功能模块图
其中:
信息添加:对新进员工或已有员工的信息进行添加或补充;
信息修改:对已经录入的员工信息进行修改;
信息删除:对不存员工或离职员工信息进行删除;
信息查询:通过编号、姓名及职称对对对应员工信息进行查询;
信息存储:将员工信息进行文件保存;
信息读取:通过打开文件对已存储的员工信息进行读取;
信息统计:对已有员工的工资和年龄进行平均统计。
2.各类间关系
本系统共使用两个类:company类,manager类。
其中类company定义了职工编号、职工姓名、职工年龄、职工工资、职工职称、职工部门等变量,类manager描述职工信息的添加、修改、删除、查询以及职工年龄的平均值统计和职工工资的平均值统计。它们之间的关系如图1-2所示:
Company类
Manager类
图1-2 系统类关系图
其中,类manager公有继承类company.
第二章 详细设计
本系统主要功能包括:职工信息的修改、添加、删除、查询以及职工年龄的平均值计算和职工工资得平均值计算,职工信息的存储和读取等。
其中以上功能所用到的职工编号、年龄、姓名、工资、职称和部门等变量通过类company来定义,功能职工信息的添加、修改、删除、查询、存储、读取以及职工年龄和工资的平均值统计使用类manager来实现。下面分别介绍类company,manager的详细设计。
整个系统操作总体流程图如下图所示:
开始运行
显示菜单
信息添加
信息修改
信息保存
信息统计
退出
信息显示
信息查询
信息删除
输入操作编号
执行相应程序
条件判断
执行最后结束语
结束程序
不
符
符合
或者
图2-1 总体流程图
类company主要描述变量职工编号、职工姓名、年龄、工资、职称和所在部门的定义。
类company定义为:
class company
{
public:
char num[10],name[10],position[10],depart[20];
int age,salary;
company(){}
void show();
~company(){}
};
类manager具体实现流程为:
开始
添加
删除
修改
查询
保存
显示
统计
执行相应程序
结束
图2-2 类manager总体流程图
类manager定义为:
class manager:public company
{private:
company c[N];
int NUM;
int count;
public:
void add(); //职员信息添加函数
void modify(); //职员信息修改函数
void dele(); //职员信息删除函数
void sort(); //职员信息统计函数
void search(); //职员信息查询函数
void showcompany(); //职员信息显示函数
void save(); //职员信息保存函数
manager(){NUM=0;count=0;} //职员信息记录函数
};
其中:成员函数void add()主要功能为添加职员的信息,实现方式如下图:
开始
显示界面
输入职工信息
判断编号是否存在
添加成功
是否继续添加
结束程序
是
是
否
否
图2-3 添加功能流程图
成员函数void modify()主要功能是修改职员的信息,实现方式如下图所示:
结束
开始
是否存在职员信息
显示菜单
输入职工编号
编号是否存在
输出该编号信息
输出修改列表
输入修改项编号
编号是否为(0-6)
修改信息并保存
否
是
否
是
否
是
图2-4 修改功能流程图
开始
显示菜单
是否存在信息
输出职工信息
输入要删除的职工编号
编号是否存在
输出编号信息
是否删除(Y/N)
删除信息
结束
成员函数void dele()主要功能是修改删除职员信息,实现方式如下图所示:
否
是
否
是
否
是
图2-5删除功能流程图
成员函数void search()主要功能是查询职员信息,实现方式如下图所示:
输入0
显示主菜单
开始
显示菜单
NUM<=0?
输出查询方式菜单
输入方式编号
编号是否为0-4
输入1
输入2
输入3
输入4
输入编号
输入姓名
输入职称
输入职称
找到?
找到?
找到?
找到?
输出信息
输出信息
输出信息
输出信息
是
否
否
是
是
是 是 是 是
否 否 否
否
否
图2-6 查询功能流程图
第三章 系统测试
1. 测试方法
系统常见的测试方法有:黑盒测试和白盒测试。
黑盒测试:又叫功能测试或数据驱动测试。黑盒测试是在程序接口上进行测试,主要是为了发现以下错误:是否有不正确或者是遗漏了的功能。在接口上,输入能否正确的接受,能否输出正确的结果;是否有数据结构或者外部信息访问错误;性能上是否满足要求;是否有初始化或终止行错误;用黑盒法测试发现程序中的错误,必须在所有可能的输入条件和输出条件中正确的测定数据,来检查程序是否都能产生正确的结果。
白盒测试:测试人员利用程序内部的逻辑机构以及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试;通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为数据结构测试或数据驱动测试。白盒测试主要对程序模块机型如下检查:所有独立的执行路径至少检查一次。对所有的逻辑判定,取真和假的两种情况都至少测试一次,在循环的边界和运行界限内执行循环体,测试内部数据结构的有效性等。
本系统采用黑盒测试法,通过对企业信息管理系统中的职工信息的添加功能、修改功能、查询功能、删除功能、保存功能、统计功能和显示功能进行测试,输入正确的接受,测试所有输出结果的正确性,并检查系统是否有遗漏的功能。
2.测试用例
本系统进行测试所用数据如下:
表3-1 测试数据表
编号
姓名
年龄
工资
职称
部门
1
邵明明
26
2500
销售员
销售部
2
邢菲
25
2300
销售员
销售部
3
宋妍霏
28
4000
销售经理
销售部
4
赵顺然
27
3000
设计职员
设计部
5
吕邵聪
26
3200
设计职员
设计部
6
万国鹏
30
5000
设计部经理
设计部
3.测试结果
本系统主要完成基本信息的添加,删除,修改和查询等功能。
添加功能主要实现对企业职员信息的增加,在菜单栏选择选项1,弹出提示语,输入职工信息包括编号、姓名、年龄、工资、职称和部门,如果回车提示是否继续添加,如继续添加,输入Y,继续弹出提示语进行信息输入,如不继续则输入N。图3-1 为职员信息添加功能测试界面。
图3-1 添加功能界面
修改功能主要实现对企业职员信息的修改,输入菜单所示序号2,输入你要修改的人员编号,显示该编号职工信息;弹出修改项列表,有修改编号、修改姓名、修改年龄、修改工资、修改职称、修改部门和返回主菜单选项,选择要修改的想的序号输入,弹出提示语,输入要修改的信息,回车提示修改成功,是否返回主菜单,输入Y,则返回主菜单,输入N则退出系统。图3-2为职员信息修改功能测试界面。
图3-2 修改功能界面
查询功能主要实现对企业职员信息的查询,根据提示输入修改序号5,弹出查询方式菜单,包括按编号查询、按姓名查询、按职称查询、查询职称平均工资和返回主菜单选项,输入查询方式编号,输出该编号职员信息,并提示是否返回主菜单,输入Y则返回主菜单,输入N则退出系统。图3-3为职员信息查询功能测试界面。
图3-3 查询功能界面
删除功能主要实现对企业职员信息的删除,输入删除项编号,输出全部职员信息,并提示选择你所要删除的信息职工的编号,输入要删除的职工编号,输出该编号职工信息,并弹出提示是否确认删除该信息,确认则输入Y并提示员工信息已删除,并提示是否返回主菜单,否则不确认删除信息则输入N返回主菜单。图3-4为职员信息删除功能测试界面。
图3-4 删除功能界面
第四章 软件使用说明书
1、系统运行环境
软件环境:Windows8 开发工具:Virtual C++ 6.0
硬件环境: CPU:56GHZ 内存:128MB以上
2、系统操作提示
本系统主要实现对企业职工信息的添加、修改、删除、查询、保存、读取和统计等功能,首先用户进入菜单界面,如图4-1所示,显示提示语:输入自己想要操作的功能选项。
图4-1 菜单界面
输入1,选择职工信息添加功能,根据提示输入要添加的信息,比如添加员工信息为编号:1,姓名:邵明明,年龄:26,工资:2500,职称:销售员,部门:销售部如4-2图所示。
图4-2 职员信息添加界面
输入2,选择职工信息修改功能,选择修改项,输入修改内容提示修改成功。比如修改邵明明的年龄由26该为27,如图4-3所示。
图4-3 职员信息修改界面
输入3,选择职工信息删除功能,选择你要删除的职工编号,确认删除。比如删除编号为4的职工信息,如图4-4所示。
图4-4 职工信息删除界面
输入4,选择职工信息统计功能,对职工的平均年龄进行统计输出,如图4-5所示。
图4-5 职工信息统计界面
输入5,选择职工信息查询功能,选择查询方式进行查询,比如查询编号为3的员工信息,如图4-6所示。
图4-6 职工信息查询界面
输入6,选择职工信息显示功能,显示所有职员信息,如图4-7所示。
图4-7 职员信息显示界面
其中,显示功能内包括对职员根据职称计算平均工资的统计,比如统计销售员的平均工资,如图4-8所示。
图4-8 根据职称统计平均工资界面
输入7,选择保存职员信息功能,可对职员信息进行文件保存,如图4-9所示。
图4-9 职员信息保存界面
输入0,退出系统,如图4-10所示。
图4-10 退出界面
总结
这次课设经历了两周时间,在两周课设期间,我发现了很多自己的不足之处,自己的知识有很多漏洞,也遇到很多之前没有遇到的问题,从而更加明白知识扎实的重要性及实践能力的重要性。因为基础知识的不扎实让我在此次课设中走了不少弯路,不过我认为是值得的,因为它大大地补足我知识缺失的那一面,我始终相信付出必有收获。
课程设计是综合培养学生运用所学知识,发现,提出,分析和解决问题,锻炼实践能力的重要环节,是对学生综合工作能力的检验和考察,他为学生提供了一个既动手又动脑,独立实践的机会,将课本上的知识和实际有机的结合起来,锻炼学生分析解决问题的能力。课程实践是我们逐步掌握所学知识,熟练运用解决问题,一步步锻炼工作能力,逐步走向社会必不可少的过程。
通过这次课程设计,我在很多方面都有所体会和提高。首先,整体与局部的把握,在系统设计之前,需要思考人事管理系统所包含的信息及其要实现的功能,在设计工程中,在思考局部功能实现的完整性与整个系统的结合,系统所包含的录入,查找,删除等功能也让我对以前的只是有了一个完整的回顾。这次课设也让我懂得在以后的知识学习中要多做练习增加自己的知识面,培养自己的更加全面的逻辑思维,才能更好的适应自己的工作。遇到困难时不沮丧,用积极的心态去解决。只有将所学的理论能与实践相结合,才能真正巩固所学到的知识,提高自己的能力。
参考文献
1.面向对象技术C++,年福忠 庞淑侠,清华大学出版社,2015
2.C++程序开发教程, 张基温, 清华大学出版社,2002
3.C++语言教程, 吴祖峰 陈文宇 张松梅, 电子科技大学出版社,2008
4.C语言程序设计(第二版), 谭浩强, 清华大学出版社,1999
5.C++语言程序设计教程与实验,温秀梅 丁学钧,清华大学出版社,2008
6.Visual C++面向对象编程教程(第2版),王育坚,清华大学出版社, 2003
7.C++面向对象程序设计教程, 陈维兴 林小茶, 清华大学出版社,2009
致谢
在此课设完成之时,我要由衷感谢在此次课设中辅导我们的各位老师,面对我们的每一个疑问,老师都细心解答,认真回答我们的任何问题,帮助我们的课设更加完美的完成。也要感谢一起做课设的同学的帮助,在遇到困难时总能全身心的伸出援手。
22
展开阅读全文