软件工程课程设计-人事管理系统_第1页
软件工程课程设计-人事管理系统_第2页
软件工程课程设计-人事管理系统_第3页
软件工程课程设计-人事管理系统_第4页
软件工程课程设计-人事管理系统_第5页
免费预览已结束,剩余42页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

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

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

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

5、如图3.1所示图3.1四、建立系统动态模型(1)活动图图4.1是描述员工申请调动过程。首先,员工提出书面调动申请。 若人事部不同意,则通知员工不能进行工作交换。 若人事部 同意,则提出岗位安排,通知财务部进行工资变更,并且通知员工办理相关手续,进行工作交换。储存新职位变动,操作完成。11(2)时序图员工工资过程时序图如图4.2所示。昌工考勤记录加减金领图4.2员工考勤查询时序图如图4.3所示。靖瘤加Mid品三T老嗡F录以匈早由透我直通正中:=:家/新.农直目趣1?B查国IC录下诣期耻E亲这堂启退士蓑尚度11国已录I.协作图员工实际工资协作图如图4.4所示。,员工工资苫射上家图4.4考勤记录查询

6、协作图如图4.5所示。图4.5员工信息查询协作图如图4.6图4.6五、系统类模型系统包图 如图5.1所示。图5.1(2)类图图5.2描述了员工信息包中的类图。薪酬 咫编号 必出勤天数 魁姓名 觌所属工贸,发放工黄0品工F订合同0离取o 俳取工姿Q图5.2人事都签订合同0图5.3描述了合同信息包中的类图图5.3图5.4描述了实发工资包中的类图图5.4六、数据库概念模型设计在需求分析的基础上设计出能够满足用户需求的各种实体以及它们之间的关系。下面例举出各实体的实体图及实体关系E-R图:1员工:编号、姓名、性别、身份证号图6.1员工实体图2合同:合同编号、员工编号、合同类型、合同开始日期、合同期限3

7、考勤:所属工资月份、员工编号、出勤天数、请假天数、迟到或早退次数图6.3考勤实体图4工资:所属工资月份、员工编号、员工姓名、出勤天数5操作员:名称、密码、权限6员工一合同实体关系图图6.6员工一合同实体关系图7与工资有关的实体关系E-R图图 6.7 与工资有关的实体关系E-R 图七、 可行性研究开发任何一个基于计算机的系统,都会受到时间和资源上的限制。因此, 在接受项目开发任务之前,必须根据客户提供的时间和资源条件进行可行性分析,以减少项目开发风险,避免人力、物力和财力的浪费。可行性分析与风险分析在很多方面是相互关联的,项目风险越大,开发高质量的软件的可行性就越小。(1)新系统目标可行性分析:

8、分析新系统的目标是否符合企业的现状和发展的需要。如果公司采用人事管理系统来管理公司人员,那么它在工作效率上会有很大的提高。(2)社会可行性分析:社会可行性分析主要是指管理信息系统的开发是否符合国家法律、政策,是否能够与社会大系统实现良好的对接。这个人事管理系统是个小规模的管理系统,是用来管理一个公司的员工信息的,它符合国家法律要求,能与社会大系统实现良好对接。(3)技术可行性分析:技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。(4)经济可行性分析:经济可行性分析主要是对开发新系统所投入的资金与系统投入使用后所带来的经济

9、效益进行比较,确认新系统是否会给企业带来一定的经济效益。由于本系统规模较小,所以开发本系统不会耗费太多的资金,相反如果将本系统很好的运用到工作中,能大大提高工作效率,给公司带来更多的经济效益。(5)管理可行性分析:管理可行性分析主要是分析企业现行的管理体制和企业领导是否具有现代化的管理意识和管理水平。八、详细设计图8.1登录窗体主要实现代码如下:#pragma once namespace 登陆界面 using namespaceSystem;using namespaceSystem:ComponentModel;using namespaceSystem:Collections;using

10、 namespaceSystem:Windows:Forms;using namespaceSystem:Data;using namespaceSystem:Drawing;public ref class Form1 : public System:Windows:Forms:Form public :Form1(void ) InitializeComponent();protected :Form1()if (components) delete components;private : System:Windows:Forms:ButtonA buttonl;private : Sy

11、stem:Windows:Forms:CheckBoxA 登陆界面;private : System:Windows:Forms:ButtonA button2;private : System:Windows:Forms:ButtonA button3;private : System:Windows:Forms:CheckBoxA checkBox2;private : System:Windows:Forms:TextBoxA textBox1;private : System:Windows:Forms:TextBoxA textBox2;private : System:Window

12、s:Forms:TextBoxA textBox3;private : System:Windows:Forms:LabelA label1;private : System:Windows:Forms:LabelA label2;private : System:Windows:Forms:LabelA label3;protected :private :System:ComponentModel:Container Acomponents;#pragma region Windows Form Designer generated codevoid InitializeComponent

13、( void )this -button1 = ( gcnew System:Windows:Forms:Button();this - 登陆界面= ( gcnew System:Windows:Forms:CheckBox();this -button2 = ( gcnew System:Windows:Forms:Button();this -button3 = ( gcnew System:Windows:Forms:Button();this -checkBox2 = ( gcnew System:Windows:Forms:CheckBox();this -textBox1 = (

14、gcnew System:Windows:Forms:TextBox();this -textBox2 = ( gcnew System:Windows:Forms:TextBox();this -textBox3 = ( gcnew System:Windows:Forms:TextBox();this -label1 = ( gcnew System:Windows:Forms:Label();this -label2 = ( gcnew System:Windows:Forms:Label();this -label3 = ( gcnew System:Windows:Forms:Lab

15、el();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-Location = System:Drawing:Point(22, 215);this -button1-Name = L button1 ;this -button1-Size = System:Drawing

16、:Size(54, 26);this -button1-TabIndex = 0;this -button1-Text = L 登陆 ;this -button1-UseVisualStyleBackColor = true ;/ 登陆界面/this - 登陆界面-AutoSize = true ;this - 登陆界面-Checked = true ;this - 登陆界面-CheckState = System:Windows:Forms:CheckState:Checked;this - 登陆界面-Cursor = System:Windows:Forms:Cursors:No;this

17、 - 登陆界面-Location = System:Drawing:Point(31, 193);this- 登陆界面-Name = L 登陆界面;this - 登陆界面-Size = System:Drawing:Size(72, 16);this- 登陆界面-TabIndex = 1;this- 登陆界面-Text = L 记住密码;this - 登陆界面-UseVisualStyleBackColor = true ;/ button2/this -button2-Font = ( gcnew System:Drawing:Font(L 宋体 , 9,System:Drawing:Fon

18、tStyle: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);this -button2-TabIndex = 2;this -button2-Text = L 取消 ;this -button2-UseVisualStyleBackColor = true

19、 ;/ button3/this -button3-Font = ( gcnew System:Drawing:Font(L 宋体 , 9,System:Drawing:FontStyle:Bold, System:Drawing:GraphicsUnit:Point,static_cast (134);this -button3-Location = System:Drawing:Point(207, 215);this -button3-Name = L button3 ;this -button3-Size = System:Drawing:Size(86, 26);this -butt

20、on3-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-Name = L checkBox2 ;this -checkBox2-Size = System:Drawing:Size(72, 16);this -checkBox2-Ta

21、bIndex = 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 = System:Drawing:Size(100, 21);this -textBox1-TabIndex = 5;/ textBox2/this -textBox2-Locat

22、ion = 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);this -textBox3-Name = L textBox3 ;this -textBox3-Size = System:Drawing:Size(100, 21

23、);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);this -label1-TabIndex = 8;this -label1-Text = L 职工编号 ;/ label2/this -label2-AutoSize = true ;this -l

24、abel2-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 -label3-Location = System:Drawing:Point(35, 136);this -label3-Name = L label3 ;

25、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;this -ClientSize = System:Drawing:Size(312, 266);this -Controls-Add( this

26、-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 -button3);this -Controls-Add( this -button2);this -Co

27、ntrols-Add( this - 登陆界面);this -Controls-Add( this -button1);this -Name = L Form1 ;this -Text = L Form1 ;this -Load += gcnew System:EventHandler(this , &Form1:Form1_Load);this -ResumeLayout( false );this -PerformLayout();#pragma endregionprivate : System:Void Form1_Load(System:ObjecS sender, System:E

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

29、:Forms:Form public :Form1(void ) InitializeComponent();protected :/ / 清理所有正在使用的资源。/ Form1()if (components) delete components;private : System:Windows:Forms:ButtonA buttonl;protected :private : System:Windows:Forms:ButtonA button2;private : System:Windows:Forms:TextBoxA textBox1;private : System:Wind

30、ows:Forms:TextBoxA textBox2; private : System:Windows:Forms:TextBoxA textBox3; private : System:Windows:Forms:TextBoxA textBox4; private : System:Windows:Forms:LabelA label1; private : System:Windows:Forms:LabelA label2;private : System:Windows:Forms:LabelA label3; private : System:Windows:Forms:Lab

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

32、utton();this -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:Forms:Label();this-label2 = (gcne

33、w System:Windows:Forms: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

34、(134);this -button1-Location = 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

35、(L 宋体 , 9, System:Drawing: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-U

36、seVisualStyleBackColor = true ;this -button2-Click += gcnew System:EventHandler( this , &Form1:button2_Click); / 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

37、/this -textBox2-Location = System:Drawing:Point(172, 77);this -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:

38、Drawing:Size(73, 21);this -textBox3-TabIndex = 4;/ textBox4/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:D

39、rawing:Point(27, 39);this -label1-Name = L label1 ;this -label1-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 = Syste

40、m:Drawing:Size(53, 12);this -label2-TabIndex = 7;this -label2-Text = 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 输入密码

41、 ;/ label4 /true ;this -label4-AutoSize = this -label4-Location = System: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 -Aut

42、oScaleMode = System:Windows:Forms:AutoScaleMode:Fontthis -ClientSize = System: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);thi

43、s -Controls-Add(this-textBox2);this -Controls-Add(this-textBox1);this -Controls-Add(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:ObjecS sender,

44、System:EventArgsA e) ;图8.3添加内部调动信息窗体主要实现代码如下#pragma once namespace添加内部调动信息窗体 using namespaceSystem;using namespaceSystem:ComponentModel;using namespaceSystem:Collections;using namespaceSystem:Windows:Forms;using namespaceSystem:Data; using namespaceSystem:Drawing;/ / Form1 摘要 /警告:如果更改此类的名称,则需要更改/与此类

45、所依赖的所有.resx文件关联的托管资源编译器工具的/资源文件名”属性。否则,/设计器将不能与此窗体的关联/本地化资源正确交互。/ public ref class Form1 : public System:Windows:Forms:Form public :Form1(void )InitializeComponent();/TODO: 在此处添加构造函数代码/protected :/ / 清理所有正在使用的资源。/ Form1()if (components) delete components;private : System:Windows:Forms:TextBoxA textB

46、oxI;protected :private : System:Windows:Forms:TextBoxA textBox2;private : System:Windows:Forms:TextBoxA textBox3;private : System:Windows:Forms:TextBoxA textBox4;private : System:Windows:Forms:LabelA label1;private : System:Windows:Forms:LabelA label2;private : System:Windows:Forms:LabelA label3;pri

47、vate : System:Windows:Forms:LabelA label4;private : System:Windows:Forms:LabelA label5;private : System:Windows:Forms:LabelA label6;private : System:Windows:Forms:ListBoxA listBox1;private : System:Windows:Forms:ListBoxA listBox2;private :/ / 必需的设计器变量。/ System:ComponentModel:Container Acomponents;#p

48、ragma region Windows Form Designer generated code/ / 设计器支持所需的方法- 不要/ void InitializeComponent( void )45this -textBox1 = (gcnew System:Windows:Forms:TextBox();this -textBox2 = (gcnew System:Windows:Forms:TextBox();this -textBox3 = (gcnew System:Windows:Forms:TextBox();this -textBox4 = (gcnew System:W

49、indows:Forms:TextBox();this -label1 = ( gcnew System:Windows:Forms:Label();this -label2 = ( gcnew System:Windows:Forms:Label();this -label3 = (gcnew System:Windows:Forms:Label();this -label4 = (gcnew System:Windows:Forms:Label();this -label5 = ( gcnew System:Windows:Forms:Label();this -label6 = ( gcnew System:Windows:Forms:Label();this -listBox1 = ( gcnew System:Windows:Forms:ListBox

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论