1、 课程设计报告 公司人员管理系统公司人员管理系统 课课 程程 :面向对象课程设计:面向对象课程设计 班班 级级 : 学学 号号 : 姓姓 名名 : 指导老师指导老师 : 20122012 年年 6 6 月月 1212 日日 一、一、 设计题目(问题)描述和要求设计题目(问题)描述和要求 1 1 题目:题目:公司人员管理系统公司人员管理系统 2 2 问题描述:问题描述: 某小型公司,主要有四类人员:经理、兼职技术人员、销售经理和兼职推销 员。现在,需要存储这些人员的姓名、编号、级别、当月薪水,计算月薪总额并 显示全部信息。 要求: (1) 其中,人员编号在生成人员信息时同时生成,每输入一个人员信
2、息编号顺 序加 1。 (2) 程序对所有人员有提升级别的功能 (3) 月薪的计算方法是:经理拿固定月薪,兼职技术人员按工作小时数领取月 薪, 兼职推销员的报酬按该推销员当月销售额提成 ,销售经理既拿固定月 薪也领取销售提成。 (4) 能按姓名或者编号显示、查找、增加、删除和保存各类人员的信息 二、二、 系统分析与系统分析与模块模块设计设计 根据问题描述和要求,系统要求能够按姓名或者编号显示、查找、增加、删 除和保存各类人员的信息。确定程序至少应该具备如下功能: “查询人员” 、 “增 加人员” 、 “删除人员” 、 “数据存盘”基本模块。 系统既然具有“数据存盘”功能人员数据可以保存到磁盘文件
3、,那么也就 意味着今后可以从磁盘文件读出人员数据,所以系统增加了“人员数据装入”模 块,以方便用户使用、避免数据重复录入。考虑到系统实现简捷,人员数据文件 采用文本文件,人员数据文件名:Person.txt。 做为一个完整系统,除了具有增加人员,删除人员信息模块,还应该具有修 改人员相关信息的功能,所以本系统设计时考虑增加“修改人员”模块。 考虑到根据编号查找人员信息功能在“删除人员” 、 “修改人员”等模块都使 用,所以可以考虑设置为一个模块。 考虑到系统要求人员编号在生成人员信息时同时生成,每输入一个人员信息 编号顺序加 1。这样就要求人员编号在增加人员时自动生成(增加 1)且不重复。 根
4、据这个要求,可以考虑设置一个全局量: “当前最大编号” ,每增加一个人员, 当前最大编号自动增 1,然后新增加人员使用这个编号。为了保证系统能记忆这 个编号,可以使用一个数据文件保存当前这个编号。系统每次开始运行前从文件 读入这个编号,随着人员增加,编号自动增加,系统每次运行结束时将这个编号 写入文件。本系统将初值(没有一个用户时)设置为 0。 考虑到人员的许多固定信息如:经理、销售经理的固定月薪,销售经理、销 售人员提成,技术人员小时工资等都是一些不需要每个人员都要输入的信息,所 以可以将这些信息都保存在一个数据文件中,本系统为了方便起见,将这些信息 与“最大编号”全部保存在一个文件中,并使用“基础数据设置”模块进行设置 和管理。基础数据文件也采用文本文件,基础数据文件名:Base.txt。 本系统还提供“查询本月经营信息”帮助计算销售总额,工资总额,并按照 公式计算本月盈亏。 综合考虑系统具有下面 8 项功能模块:增加人员,删除人员,修改人员,查 询本月经营信息,基础数据设置,数据存盘,数据装入。