资源描述
实 验 报 告
课程名称 面向对象分析与设计
专业班级 ____ ____
学 号 __ ___
姓 名 ___ ____
同构成员
实验日期 _
成 绩 ____________ ___________
工资管理系统
1.1 系统功能需求
工资管理系统涉及员工管理、工资管理、销售奖金管理、保险费用管理等。
1.工资管理
在获得授权状况下,关于人员要进行如下工作。
(1) 工资录入
工资管理员录入员工工资,修改录入出错(维护),形成工资表。
(2)销售奖金录入
工资管理员录入员工销售奖金,修改录入出错(维护),形成销售奖金表。
(3)保险费用录入
工资管理员录入员工若干保险费用,修改录入出错(维护),形成保险费用登记表。
(4)计算工资
工资管理员按工作证号码来进行工资计算记录,然后生成报表再上报给财务部。
(5)计算销售奖金
工资管理员按照工作证号码进行工资销售奖金计算记录,然后生成报表上报给财务部。
(6)计算若干保险扣除费用
工资管理员按照工作证号码进行若干保险计算记录,然后生成报表上报给财务部、
(7)工资或销售奖金、保险费用查询
公司员工可以依照自己工作证号码查询自己工资或销售奖金及保险费用。
工资管理重要业务流程:
此处给出以上7个业务之间流程图(用活动图描述)
1.2 建立需求模型
对工资管理系统先划分子系统,然后再通过建立用况模型,对需求进行捕获与描述。
1.2.1 划分子系统
限定工资管理系统功能为:工资管理、记录部门、财务系统、员工管理。对上述每个功能,用一种子系统来实现。下图给出了这些子系统以及它们之间依赖。
工资管理系统中子系统以及它们之间依赖:
此处给出子系统布置图如下
上图中子系“财务系统”要分别使用子系统“员工管理”、“工资管理”中员工号码、员工姓名、员工工资。子系统“工资管理”要分别使用子系统“记录部门”和“员工管理”中员工信息和记录工资信息。子系统“记录部门”要使用子系统“员工管理”中员工信息。
1.2.2 辨认参加者
子系统“工资管理”人员顾客有工资管理员和员工。与子系统“工资管理”关于子系统有“记录部门”、“员工管理”和“财务系统”,这些子系统是“工资管理”参加者。
1.2.3 辨认用况
对1.1节中用况需求,现归纳整顿如下。
1. 工资管理
(1)录入与维护工资、销售奖金及保险费用
工资管理员需录入员工工资、销售奖金及若干保险费用信息做出工资表、销售奖金表及保险费用表。
(2)计算工资或销售奖金及保险费用
工资管理员按工作证号码进行计算做出工资报表、销售奖金报表及保险费用表。
(3)查询工资、销售奖金或保险费用
员工查询自己工资、销售奖金及保险费用。
(4)登录
工资管理员和员工进入该子系统都需要登录。
1.2.4 对需求进行捕获与描述
通过到当前为止掌握需求,初步理解了系统所要完毕功能。下面进一步建立参加者与用况之间关系,并对用况进行详细描述。
图1.3为子系统“工资管理”用况图。
一方面,使用系统员工和工资管理员都先要进行登录。参加者“工资管理员”通过用况“录入与维护工资、销售奖金及保险费用”来录入、修改,形成工资表、销售奖金表及保险费用表;再通过用况“计算工资、销售奖金及保险费用”生成工资报表、销售奖金报表及保险费用表并予以发布。所发布工资报表、销售奖金报表及保险费用表供参加者“员工”、“财务系统”和“工资管理员”使用。员工要通过用况“查询工资、销售奖金及保险费用”来得知自己工资、销售奖金及保险费用。
此处规定给出各个用况有关活动图
如下是对上述各用况描述。
用况:录入与维护工资、销售奖金及保险费用
【前置条件:工资管理员已经登录成功】
工资管理员选取工资录入与维护、销售奖金录入与维护、保险费用录入与维护。
系统呈现出供录入和修改工资、销售奖金及保险费用界面
工资管理员解决完数据(录入、修改)后,发控制命令
若为保存,系统进行存储,并告知成绩管理员与否成功
若为取消,退出本功能
用况:计算工资、销售奖金及保险费用
【前置条件:工资管理员已经登录成功】
工资管理员发出进行工资、销售奖金及保险费用计算祈求
按工作证号生成工资、销售奖金及保险费用报表,并发送到子系统“财务系统”中
用况:查询工资、销售奖金及保险费用
【前置条件:员工已经登录成功】
交互内容见表1.1中编号为1那栏输入/输出某些。
1.3系统分析
在掌握了上述需求后,下面开始使用面向对象办法进行系统分析。
1.3.1 寻找类
工资管理
在子系统“工资管理”中,也要设立两个类“员工”和“工资管理员”,用它们分别模仿相应参加者。
工资管理中对象是工资和销售奖金及保险费用,因而设立类“工资构成”、“销售奖金表”及“保险费用表”。各种工资构成诸多,需要设立类“工资表”,它与类“工资构成”形成组合关系。
子系统“工资管理”需要从工资管理部门获取信息,需要设立需接口“工资管理”。子系统“工资管理”要向财务系统提供数据,需要设立供接口“财务系统”。
1.3.2 建立状态机图
对于上述所找到类,当前按照上述分析能理解它们职责了。现针对子系统“工资管理”中类“工资表”绘制一种状态机图。
按照问题域,可为类“工资表”对象设立了5个状态,分别为:初始、初始化、查询、关闭和终结。
施加在工资表上时间有:发布、查询和关闭。这些事情都是针对工资表所发消息响应。
下图展示是针对工资表状态机图。
图 工资表状态机图
1.3.3 建立类图
对在1.3.1节中找到各个类进行考察,分别定义它们属性和操作,考虑它们之间关系,绘制出类图。
(1)类“员工”
该类中属性有“姓名”、“工作证号”、“密码”和“职务”,操作有“登入”、“查询”、“修改密码”、“查询工资”和“查询年终奖金”。
(2)类“工资”
该类中有属性“工作证号”和“工资”。
(3)类“工资表”
该类中有属性“姓名”、“工作证号”、“时间”和“工资额”。它与类“工资”构成组合关系,在其中要设立操作“生成工资构成”、“查询工资构成”。它尚有一种操作“查询工资”,供员工查询工资之用。
(4)类“销售奖金表”
该类中有属性“姓名”、“工作证号”、“时间”和“销售奖金额”。它与类“工资”构成组合关系,在其中要设立操作“生成销售奖金构成”、“查询销售奖金构成”。它尚有一种操作“查询销售奖金额”,供员工查询销售奖金之用。
(5)类“保险费用表”
该类中有属性“姓名”、“工作证号”、“时间”和“保险费用”。它与类“工资”构成组合关系,在其中要设立操作“生成年保险费用构成”、“查询保险费用构成”。它尚有一种操作“查询保险费用”,供员工查询保险费用。
(6)类“工资管理员”
该类中有属性“姓名”、“工作证号”和“密码”;属性有“登入”、“录入与维护工资”、“修改密码”、“生成工资表”、“生成销售奖金表”、“生成保险费用表”、“计算工资”、“计算销售奖金”、“计算保险费用”、“向财务部发工资表”、“向财务部发销售奖金表”及“向财务部发保险费用表”。
上述六个类及其间关系如下图所示。
图 工资管理某些分类图
工资管理员按工作证号输入与维护工资构成,为此在类“工资管理员”与类“工资表”之间设立一种关联“录入与维护工资表”。工资管理员还要生成工资报表,因而在类”工资管理员与类“工资表”间设立一种关联“计算”。
员工要查询工资状况,因而在类“员工”和“工资表”间设立关联“查询工资”。
类“销售奖金表”及类“保险费用表”和类“工资管理员”、类“员工”之间关联建立与上述类似。
1.3.4 建立顺序图
在上一节中,以文字形式阐明了类之间关联作用。这种阐明往往不能清晰描述事物间交互状况,这就需要使用交互图来予以精确表达。对于员工查询工资来讲,下图给出针对员工以及员工工资查询关于对象建立顺序图
图 员工以及与员工查询工资关于对象之间交互状况(一)
图 员工以及与员工查询工资关于对象之间交互状况(二)
1.4 系统设计
1.4.1 问题域某些设计
工资查询子系统通过数据库与其她子系统互换数据,即,通过需接口从数据库中获取数据,通过供接口向数据库写入数据。故需要按照供需双方共同商定借口规约设计相应数据库表构造,并在接口有关类操作中构造SQL语句即可。
1.4.2 界面某些设计
应当针对表1-1中内容进行界面设计,按照第8章规定设计出所有界面。
下图 所示是顾客登入界面,该界面也合用于员工。
下二图 是在登入成功后,系统给出选取时间界面。
图 登入界面
图 选取时间界面
在选取时间并拟定后,浮现下图所示界面。
图1-10 工资
1.4.3 数据管理某些设计
类“工资”和“工资表”构成了组合关系,对她们分别设立两张表,并在与类“工资”相应表中用外键隐含它与类“工资报表”关联。对于类“员工”和类“工资管理员”也分别设立一张表,用于存储相应对象。
下面给出了类“工资”和类“工资表”所相应数据库表构造。
表 类“工资”所相应数据库表构造
本表主核心字为工作证号
表 类“工资表”所相应数据库表构造
本表主核心字为工作证号+时间,外键为工作证号。
表 类“销售奖金”所相应数据库表构造
本表主核心字为工作证号+时间,外键为工作证号
表 类“保险费用”所相应数据库表构造
本表主核心字为工作证号+时间,外键为工作证号
展开阅读全文