收藏 分享(赏)

软件工程课程设计-人事管理系统.doc

上传人:精品资料 文档编号:10747942 上传时间:2020-01-04 格式:DOC 页数:39 大小:212.47KB
下载 相关 举报
软件工程课程设计-人事管理系统.doc_第1页
第1页 / 共39页
软件工程课程设计-人事管理系统.doc_第2页
第2页 / 共39页
软件工程课程设计-人事管理系统.doc_第3页
第3页 / 共39页
软件工程课程设计-人事管理系统.doc_第4页
第4页 / 共39页
软件工程课程设计-人事管理系统.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、目录一、 系统概述 2二、 需求分析 2三、 建立系统用例模型 3四、 建立系统动态模型 4五、 系统类模型 7六、 数据库概念模型设计 9七、 可行性研究 11八、 详细设计 12九、 总结 39十、 参考文献 392一、 系统概述随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件;计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事管理的效

2、率,也是企业的科学化、正规化管理,与世界接轨的重要条件。不同的企业具有不同的人事管理制度,这就决定了不同的企业需要不同的人事管理系统。二、 需求分析需求分析是介于系统分析阶段和软件设计阶段之间的重要桥梁。一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从软件角度对它们进行检查与调整;另一方面,需求规格说明又是软件设计、实现测试直至维护的主要基础。良好的分析活动有助于避免或尽早发现早期的错误,从而提高软件生产率,降低开发成本,改进软件质量。该系统分为 4 个模块:用户管理模块、人事信息管理模块、员工调动管理模块和薪酬管理模块。用户登管理模块:该模块是对登陆该系统的用户的用户名

3、及密码进行管理。分为用户登录和注册新用户两项。不同的用户拥有不同的权限。人事信息管理模块:该模块是关于公司的人事信息维护,首先是对入职员工的基本信息的录入、修改、浏览等操作;其次是员工人事档案、合同档案等基本信息的管理和公司的部门管理;最后,并对公司的人事信息从工种,专业,学历等属性进行统计分析。员工调动管理模块:该模块是对员工的职位调动进行管理的,员工调动主要分为内部调动和外部调动两方面,内部调动为本城市中部门间的调动,外部调动为分公司间的调动。本模块还有登记新员工和复职、离职等信息管理。薪酬管理模块:主要包括薪酬登记、薪酬修改、薪酬查询薪酬设置 4 部分组成。其中,薪酬登记是完成对员工薪酬

4、的添加,如果有需要更正的部分,通过薪酬修改模块来实现,系统还提供给员工查询薪酬的功能,通过薪酬查询来实现。3综上所述,系统的总体功能需求如图 2.1 所示。三、 建立系统用例模型(1)识别角色 人事部 财务部 员工(2)创建用例与人事部相关的用例:用户管理;人事信息管理;员工调动管理; 1与财务部相关的用例:薪酬管理; 2人事资源管理系统离职信息管理复职信息管理员工调动管理新员工登记管理员工调动管理用户管理注册新用户用户登录职务类型管理合同管理人事信息管理基本资料管理工种类型管理部门管理职称类型管理薪酬查询管理薪酬登记管理薪酬管理考勤管理薪酬设置奖惩项目设置工资设置薪酬修改管理员工奖惩管理帮助

5、帮助退出图 2.14与员工相关的用例:用户管理;人事信息管理;员工调动管理;薪酬管理; 3(3)建立用例图整个系统用例图如图 3.1 所示图 3.1四、 建立系统动态模型(1)活动图图 4.1 是描述员工申请调动过程。首先,员工提出书面调动申请。若人事部不同意,则通知员工不能进行工作交换。若人事部同意,则提出岗位安排,通知财务部进行工资变更,并且通知员工办理相关手续,进行工作交换。储存新职位变动,操作完成。5图 4.1(2)时序图员工工资过程时序图如图 4.2 所示。图 4.2员工考勤查询时序图如图 4.3 所示。6(3)协作图员工实际工资协作图如图 4.4 所示。图 4.4考勤记录查询协作图

6、如图 4.5 所示。7图 4.5员工信息查询协作图如图 4.6图 4.6五、 系统类模型(1) 系统包图如图 5.1 所示。图 5.1(2) 类图图 5.2 描述了员工信息包中的类图。8图 5.2图 5.3 描述了合同信息包中的类图图 5.3图 5.4 描述了实发工资包中的类图图 5.49编号 姓名 身份证号员 工性别 六、 数据库概念模型设计在需求分析的基础上设计出能够满足用户需求的各种实体以及它们之间的关系。下面例举出各实体的实体图及实体关系 E-R 图:1 员工:编号、姓名、性别、身份证号图 6.1 员工实体图2 合同:合同编号、员工编号、合同类型、合同开始日期、合同期限合同编号员工编号

7、 合同开始日期合 同合同类型 合同期限图 6.2 合同实体图3 考勤:所属工资月份、员工编号、出勤天数、请假天数、迟到或早退次数所属工资月份员工编号 请假天数考 勤出勤天数 迟到或早退次数10名称 权限用 户密码合同签定员工合同类型图 6.3 考勤实体图4 工资:所属工资月份、员工编号、员工姓名、出勤天数图 6.4 工资实体图5 操作员:名称、密码、权限图 6.5 操作员实体图6 员工合同实体关系图图 6.6 员工合同实体关系图7 与工资有关的实体关系 E-R 图所属工资月份员工编号 出勤天数薪酬员工姓名员工减少奖励工资实发工资惩罚总额 添加领取11图 6.7 与工资有关的实体关系 E-R 图

8、七、 可行性研究开发任何一个基于计算机的系统,都会受到时间和资源上的限制。因此,在接受项目开发任务之前,必须根据客户提供的时间和资源条件进行可行性分析,以减少项目开发风险,避免人力、物力和财力的浪费。可行性分析与风险分析在很多方面是相互关联的,项目风险越大,开发高质量的软件的可行性就越小。(1)新系统目标可行性分析:分析新系统的目标是否符合企业的现状和发展的需要。如果公司采用人事管理系统来管理公司人员,那么它在工作效率上会有很大的提高。(2)社会可行性分析:社会可行性分析主要是指管理信息系统的开发是否符合国家法律、政策,是否能够与社会大系统实现良好的对接。这个人事管理系统是个小规模的管理系统,

9、是用来管理一个公司的员工信息的,它符合国家法律要求,能与社会大系统实现良好对接。(3)技术可行性分析:技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。(4)经济可行性分析:经济可行性分析主要是对开发新系统所投入的资金与系统投入使用后所带来的经济效益进行比较,确认新系统是否会给企业带来一定的经济效益。由于本系统规模较小,所以开发本系统不会耗费太多的资金,相反如果将本系统很好的运用到工作中,能大大提高工作效率,给公司带来更多的经济效益。12(5)管理可行性分析:管理可行性分析主要是分析企业现行的管理体制和企业领导是否具有现代

10、化的管理意识和管理水平。八、 详细设计图 8.1 登录窗体主要实现代码如下:#pragma oncenamespace 登陆界面using namespace System;using namespace System:ComponentModel;using namespace System:Collections;using namespace System:Windows:Forms;using namespace System:Data;using namespace System:Drawing;public ref class Form1 : public System:Windo

11、ws:Forms:Formpublic:Form1(void)InitializeComponent();13protected:Form1()if (components)delete components;private: System:Windows:Forms:Button button1;private: System:Windows:Forms:CheckBox 登陆界面;private: System:Windows:Forms:Button button2;private: System:Windows:Forms:Button button3;private: System:

12、Windows:Forms:CheckBox checkBox2;private: System:Windows:Forms:TextBox textBox1;private: System:Windows:Forms:TextBox textBox2;private: System:Windows:Forms:TextBox textBox3;private: System:Windows:Forms:Label label1;private: System:Windows:Forms:Label label2;private: System:Windows:Forms:Label labe

13、l3;protected: private:System:ComponentModel:Container components;#pragma region Windows Form Designer generated codevoid InitializeComponent(void)this-button1 = (gcnew System:Windows:Forms:Button();this-登陆界面= (gcnew System:Windows:Forms:CheckBox();this-button2 = (gcnew System:Windows:Forms:Button();

14、this-button3 = (gcnew System:Windows:Forms:Button();this-checkBox2 = (gcnew System:Windows:Forms:CheckBox();this-textBox1 = (gcnew System:Windows:Forms:TextBox();this-textBox2 = (gcnew System:Windows:Forms:TextBox();this-textBox3 = (gcnew System:Windows:Forms:TextBox();this-label1 = (gcnew System:Wi

15、ndows:Forms:Label();this-label2 = (gcnew System:Windows:Forms:Label();this-label3 = (gcnew System:Windows:Forms:Label();14this-SuspendLayout();/ / button1/ this-button1-Font = (gcnew System:Drawing:Font(L“宋体“, 9, System:Drawing:FontStyle:Bold, System:Drawing:GraphicsUnit:Point, static_cast(134);this

16、-button1-Location = System:Drawing:Point(22, 215);this-button1-Name = L“button1“;this-button1-Size = System:Drawing:Size(54, 26);this-button1-TabIndex = 0;this-button1-Text = L“登陆“;this-button1-UseVisualStyleBackColor = true;/ / 登陆界面/ this-登陆界面-AutoSize = true;this-登陆界面-Checked = true;this-登陆界面-Chec

17、kState = System:Windows:Forms:CheckState:Checked;this-登陆界面-Cursor = System:Windows:Forms:Cursors:No;this-登陆界面-Location = System:Drawing:Point(31, 193);this-登陆界面-Name = L“登陆界面“;this-登陆界面-Size = System:Drawing:Size(72, 16);this-登陆界面-TabIndex = 1;this-登陆界面-Text = L“记住密码“;this-登陆界面-UseVisualStyleBackCol

18、or = true;/ / button2/ this-button2-Font = (gcnew System:Drawing:Font(L“宋体“, 9, System:Drawing:FontStyle:Bold, System:Drawing:GraphicsUnit:Point, static_cast(134);this-button2-Location = System:Drawing:Point(115, 215);this-button2-Name = L“button2“;this-button2-Size = System:Drawing:Size(54, 26);thi

19、s-button2-TabIndex = 2;this-button2-Text = L“取消“;this-button2-UseVisualStyleBackColor = true;/ / button3/ this-button3-Font = (gcnew System:Drawing:Font(L“宋体“, 9, System:Drawing:FontStyle:Bold, System:Drawing:GraphicsUnit:Point, static_cast(134);15this-button3-Location = System:Drawing:Point(207, 21

20、5);this-button3-Name = L“button3“;this-button3-Size = System:Drawing:Size(86, 26);this-button3-TabIndex = 3;this-button3-Text = L“注册新用户“;this-button3-UseVisualStyleBackColor = true;/ / checkBox2/ this-checkBox2-AutoSize = true;this-checkBox2-Location = System:Drawing:Point(179, 193);this-checkBox2-N

21、ame = L“checkBox2“;this-checkBox2-Size = System:Drawing:Size(72, 16);this-checkBox2-TabIndex = 4;this-checkBox2-Text = L“自动登陆“;this-checkBox2-UseVisualStyleBackColor = true;/ / textBox1/ this-textBox1-Location = System:Drawing:Point(179, 32);this-textBox1-Name = L“textBox1“;this-textBox1-Size = Syst

22、em:Drawing:Size(100, 21);this-textBox1-TabIndex = 5;/ / textBox2/ this-textBox2-Location = System:Drawing:Point(179, 84);this-textBox2-Name = L“textBox2“;this-textBox2-Size = System:Drawing:Size(100, 21);this-textBox2-TabIndex = 6;/ / textBox3/ this-textBox3-Location = System:Drawing:Point(179, 136)

23、;this-textBox3-Name = L“textBox3“;this-textBox3-Size = System:Drawing:Size(100, 21);this-textBox3-TabIndex = 7;/ / label1/ this-label1-AutoSize = true;this-label1-Location = System:Drawing:Point(35, 35);this-label1-Name = L“label1“;this-label1-Size = System:Drawing:Size(53, 12);16this-label1-TabInde

24、x = 8;this-label1-Text = L“职工编号“;/ / label2/ this-label2-AutoSize = true;this-label2-Location = System:Drawing:Point(35, 87);this-label2-Name = L“label2“;this-label2-Size = System:Drawing:Size(53, 12);this-label2-TabIndex = 9;this-label2-Text = L“职工姓名“;/ / label3/ this-label3-AutoSize = true;this-la

25、bel3-Location = System:Drawing:Point(35, 136);this-label3-Name = L“label3“;this-label3-Size = System:Drawing:Size(29, 12);this-label3-TabIndex = 10;this-label3-Text = L“密码“;/ / Form1/ this-AutoScaleDimensions = System:Drawing:SizeF(6, 12);this-AutoScaleMode = System:Windows:Forms:AutoScaleMode:Font;

26、this-ClientSize = System:Drawing:Size(312, 266);this-Controls-Add(this-label3);this-Controls-Add(this-label2);this-Controls-Add(this-label1);this-Controls-Add(this-textBox3);this-Controls-Add(this-textBox2);this-Controls-Add(this-textBox1);this-Controls-Add(this-checkBox2);this-Controls-Add(this-but

27、ton3);this-Controls-Add(this-button2);this-Controls-Add(this-登陆界面);this-Controls-Add(this-button1);this-Name = L“Form1“;this-Text = L“Form1“;this-Load += gcnew System:EventHandler(this, this-ResumeLayout(false);this-PerformLayout();17#pragma endregionprivate: System:Void Form1_Load(System:Object sen

28、der, System:EventArgs e) ;End Class图 8.2 注册新用户主要实现代码如下#pragma oncenamespace 注册新用户using namespace System;using namespace System:ComponentModel;using namespace System:Collections;using namespace System:Windows:Forms;using namespace System:Data;using namespace System:Drawing;/ / public ref class Form1

29、: public System:Windows:Forms:Formpublic:Form1(void)18InitializeComponent();protected:/ / 清理所有正在使用的资源。/ Form1()if (components)delete components;private: System:Windows:Forms:Button button1;protected: private: System:Windows:Forms:Button button2;private: System:Windows:Forms:TextBox textBox1;private:

30、 System:Windows:Forms:TextBox textBox2;private: System:Windows:Forms:TextBox textBox3;private: System:Windows:Forms:TextBox textBox4;private: System:Windows:Forms:Label label1;private: System:Windows:Forms:Label label2;private: System:Windows:Forms:Label label3;private: System:Windows:Forms:Label la

31、bel4;private:/ / 必需的设计器变量。/ System:ComponentModel:Container components;#pragma region Windows Form Designer generated code/ / 设计器支持所需的方法- 不要/ 使用代码编辑器修改此方法的内容。/ void InitializeComponent(void)this-button1 = (gcnew System:Windows:Forms:Button();this-button2 = (gcnew System:Windows:Forms:Button();this-t

32、extBox1 = (gcnew System:Windows:Forms:TextBox();this-textBox2 = (gcnew System:Windows:Forms:TextBox();19this-textBox3 = (gcnew System:Windows:Forms:TextBox();this-textBox4 = (gcnew System:Windows:Forms:TextBox();this-label1 = (gcnew System:Windows:Forms:Label();this-label2 = (gcnew System:Windows:Fo

33、rms:Label();this-label3 = (gcnew System:Windows:Forms:Label();this-label4 = (gcnew System:Windows:Forms:Label();this-SuspendLayout();/ / button1/ this-button1-Font = (gcnew System:Drawing:Font(L“宋体“, 9, System:Drawing:FontStyle:Bold, System:Drawing:GraphicsUnit:Point, static_cast(134);this-button1-L

34、ocation = System:Drawing:Point(29, 220);this-button1-Name = L“button1“;this-button1-Size = System:Drawing:Size(74, 22);this-button1-TabIndex = 0;this-button1-Text = L“注册“;this-button1-UseVisualStyleBackColor = true;/ / button2/ this-button2-Font = (gcnew System:Drawing:Font(L“宋体“, 9, System:Drawing:

35、FontStyle:Bold, System:Drawing:GraphicsUnit:Point, static_cast(134);this-button2-Location = System:Drawing:Point(176, 221);this-button2-Name = L“button2“;this-button2-Size = System:Drawing:Size(72, 21);this-button2-TabIndex = 1;this-button2-Text = L“取消“;this-button2-UseVisualStyleBackColor = true;th

36、is-button2-Click += gcnew System:EventHandler(this, / / textBox1/ this-textBox1-Location = System:Drawing:Point(172, 36);this-textBox1-Name = L“textBox1“;this-textBox1-Size = System:Drawing:Size(76, 21);this-textBox1-TabIndex = 2;/ / textBox2/ this-textBox2-Location = System:Drawing:Point(172, 77);2

37、0this-textBox2-Name = L“textBox2“;this-textBox2-Size = System:Drawing:Size(75, 21);this-textBox2-TabIndex = 3;/ / textBox3/ this-textBox3-Location = System:Drawing:Point(172, 120);this-textBox3-Name = L“textBox3“;this-textBox3-Size = System:Drawing:Size(73, 21);this-textBox3-TabIndex = 4;/ / textBox

38、4/ this-textBox4-Location = System:Drawing:Point(172, 163);this-textBox4-Name = L“textBox4“;this-textBox4-Size = System:Drawing:Size(73, 21);this-textBox4-TabIndex = 5;/ / label1/ this-label1-AutoSize = true;this-label1-Location = System:Drawing:Point(27, 39);this-label1-Name = L“label1“;this-label1

39、-Size = System:Drawing:Size(53, 12);this-label1-TabIndex = 6;this-label1-Text = L“输入编号“;/ / label2/ this-label2-AutoSize = true;this-label2-Location = System:Drawing:Point(27, 81);this-label2-Name = L“label2“;this-label2-Size = System:Drawing:Size(53, 12);this-label2-TabIndex = 7;this-label2-Text =

40、L“输入姓名“;/ / label3/ this-label3-AutoSize = true;this-label3-Location = System:Drawing:Point(27, 123);this-label3-Name = L“label3“;this-label3-Size = System:Drawing:Size(53, 12);this-label3-TabIndex = 8;this-label3-Text = L“输入密码“;21/ / label4/ this-label4-AutoSize = true;this-label4-Location = System

41、:Drawing:Point(27, 166);this-label4-Name = L“label4“;this-label4-Size = System:Drawing:Size(53, 12);this-label4-TabIndex = 9;this-label4-Text = L“确定密码“;/ / Form1/ this-AutoScaleDimensions = System:Drawing:SizeF(6, 12);this-AutoScaleMode = System:Windows:Forms:AutoScaleMode:Font;this-ClientSize = Sys

42、tem:Drawing:Size(292, 266);this-Controls-Add(this-label4);this-Controls-Add(this-label3);this-Controls-Add(this-label2);this-Controls-Add(this-label1);this-Controls-Add(this-textBox4);this-Controls-Add(this-textBox3);this-Controls-Add(this-textBox2);this-Controls-Add(this-textBox1);this-Controls-Add

43、(this-button2);this-Controls-Add(this-button1);this-Name = L“Form1“;this-Text = L“注册新用户“;this-ResumeLayout(false);this-PerformLayout();#pragma endregionprivate: System:Void button2_Click(System:Object sender, System:EventArgs e) ;22图8.3 添加内部调动信息窗体主要实现代码如下#pragma oncenamespace 添加内部调动信息窗体using namespa

44、ce System;using namespace System:ComponentModel;using namespace System:Collections;using namespace System:Windows:Forms;using namespace System:Data;using namespace System:Drawing;/ / Form1 摘要/ 警告: 如果更改此类的名称,则需要更改/ 与此类所依赖的所有.resx 文件关联的托管资源编译器工具的/ “资源文件名” 属性。否则,/ 设计器将不能与此窗体的关联/ 本地化资源正确交互。/ public ref

45、class Form1 : public System:Windows:Forms:Formpublic:Form1(void)23InitializeComponent();/TODO: 在此处添加构造函数代码/protected:/ / 清理所有正在使用的资源。/ Form1()if (components)delete components;private: System:Windows:Forms:TextBox textBox1;protected: private: System:Windows:Forms:TextBox textBox2;private: System:Wind

46、ows:Forms:TextBox textBox3;private: System:Windows:Forms:TextBox textBox4;private: System:Windows:Forms:Label label1;private: System:Windows:Forms:Label label2;private: System:Windows:Forms:Label label3;private: System:Windows:Forms:Label label4;private: System:Windows:Forms:Label label5;private: Sy

47、stem:Windows:Forms:Label label6;private: System:Windows:Forms:ListBox listBox1;private: System:Windows:Forms:ListBox listBox2;private:/ / 必需的设计器变量。/ System:ComponentModel:Container components;#pragma region Windows Form Designer generated code/ / 设计器支持所需的方法- 不要/ void InitializeComponent(void)24this-textBox1 = (gcnew System:Windows:Forms:TextBox();this-textBox2 = (gcnew System:Windows:Forms:TextBox();this-textBox3 = (gcnew System:Windows:Forms:TextBox();this-textBox4 = (gcnew System:Windows:Forms:TextBox();this-label1 = (gcnew System:Windows

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报