软件工程课程设计报告1.docx
- 文档编号:4209190
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:22
- 大小:788.07KB
软件工程课程设计报告1.docx
《软件工程课程设计报告1.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计报告1.docx(22页珍藏版)》请在冰豆网上搜索。
软件工程课程设计报告1
(此文档为word格式,下载后您可任意编辑修改!
)
福建农林大学计算机与信息学院
课程设计报告
课程名称:
软件工程
课程设计题目:
人事档案管理系统
姓名:
XXX
担任角色:
A主程序员
小组编号:
2011CS0403
小组组长:
XXX
同组其他同学:
XXX,XXX,XXX
系:
计算机信息与技术
专业年级:
2010计科专升本
学号:
XXX
指导教师:
XXX
职称:
2011年12月1日
福建农林大学计算机类
课程设计结果评定
评语:
成绩:
指导教师签字:
任务下达日期:
评定日期:
目录
一、课程设计概述4
1.1题目背景4
1.2项目内容4
1.3小组分工4
1.4项目规划和甘特图5
二、项目设计的基本原理和采用的主要方法与技术6
三、项目的可行性研究与需求分析6
3.1技术可行性7
3.2经济可行性7
四、本人实现项目的过程与步骤8
4.1总体E-R图8
4.2大部分类图9
4.3主界面模块和人事基本信息管理模块的设计10
4.3.1主界面模块设计10
4.3.2人事信息管理模块设计15
4.4编码实现16
4.4.1主界面功能实现16
4.4.2人事信息管理功能实现18
五、个人小结24
六、参考文献24
七、附录25
人事档案管理系统
一、课程设计概述
1.1题目背景
计算机信息管理是现代企业高效率、快节奏生产的重要组成部分,传统的人事档案管理往往采用手工管理,存在工作效率低、重复劳动多、管理人员劳动强度大等弊病,不能够为企业决策提供及时准确的信息,而采用先进的管理方法引进计算机信息技术,将计算机管理完整的对人事档案进行管理,则可以提高工作效率,进一步简化和规范办事程序,提高生产的质量,为企业带来更多的效益,这已经是各个企业的必经之路。
本系统就是针对这种情况,参考同类系统开发的。
我们小组做的程序实现了人员信息管理,部门管理和人事变更三个功能,其他的考勤管理,薪资核算,员工考核,招聘管理,教育培训等功能没完成,因为我们做的只是对档案管理的一个模拟。
1.2项目内容
根据本次毕业设计的要求及任务,我们上网查资料,参考同类系统等,做了详尽的需求分析,确定了项目的具体内容,人力资源管理包含几大方面:
人事管理、考勤管理、薪资核算、员工考核、招聘管理、教育培训等,由于时间有限,系统本身又很庞大,所以我们只完成了人事档案管理部分的人事信息管理,部门信息管理和人事变更功能,通过这次课程设计,运用所学的知识尽量做的好些。
前台设计:
VisualBasic6.0
数据库:
SQLServer2000
操作系统:
WindowsXP
1.3小组分工
角色名称
组员名字
完成部分
A主程序员
XXX
主界面和人事信息管理功能
B程序员
XXX
部门信息管理功能
C程序员
XXX
人事变更管理功能
D辅助程序员
XXX
数据库的实现
本人的角色虽然是A,因为程序完成的功能有限,所以每人各完成一个部分,所以三个程序完成的代码没有偏重,都差不多。
我的工作是主界面的设计了代码实现,以及人事信息管理界面的功能实现,包括了查询信息功能,添加信息功能,修改信息功能,删除信息功能。
1.4项目规划和甘特图
项目进度计划表如下:
序号
设计内容名称
完成时间
1
分组,选题,确定开发平台
2011.11.10
2
初步的需求分析与设计建模,环境搭建
2011.11.12~11.15
3
详细的需求分析与设计建模,建立应用系统的框架
2011.11.16~11.19
4
数据库的实现(模型)
2011.11.20~11.23
5
各个功能模块的实现以及测试
2011.11.21~12.5
6
编写课程设计报告
项目的甘特图如下:
项目甘特图
二、项目设计的基本原理和采用的主要方法与技术
本系统开发主要采用自顶向下的开发方式,瀑布模型,参考下图:
图2-1瀑布模型
虽然我们采用的是这个模型,但是并没有每一步都按照瀑布模型方式走。
我们首先收集资料,编写软件需求分析文档,然后根据文档,编写了一个系统雏形和数据库雏形,接着,我们按照小组的分工,去完成自己的那部分功能。
最后整合把各个软件部分整合起来,并和最后的数据库再次连接上,全组人员对其进行测试。
三、项目的可行性研究与需求分析
开发人事档案管理系统、实现员工管理的计算机化,信息化是非常必要的,也是可行的。
因为使用计算机化的管理系统可以彻底改变目前员工管理的工作现状,能够提高工作效率,能够提供更准确、及时、适用的信息,从根本上解决手工管理中信息滞后、资源浪费等问题。
3.1技术可行性
人事档案管理系统对于大多是企业和单位来说存储的信息量大,必须依靠先进的存储技术。
信息的有序存储要涉及两个方面的技术,一个是硬件的存储介质技术,另一个是软件方面的数据存储的逻辑组织技术,这就是要求降低数据重复存储的冗余度,保持数据的一致性、完整性、安全性和保密性。
这个系统在组织关系上不是很复杂,系统的技术构成上来看,能够改变目前人员管理工作的现状,能够提高工作效率,能够提供更准确、及时、适用的信息。
其基本操作还是对存在数据库进行添加、删除、查找、编辑等。
所以就数据库应用技术来看是可行的。
由于本系统管理的对象单一,都是职工,且每个数据内容具有较强的关联性,涉及的计算过程也不是很复杂。
因此,比较适合于采用数据库管理。
在存储量、速度方面都能满足数据库运行的要求,利用VB提供的控件,可以很方便的设计界面和实现各种功能,同时结合SQL2000,实现职工管理系统所需的功能,完成管理的各项任务。
所以从技术上看开发这个人事档案管理系统,实现员工管理计算机化是可行的。
3.2经济可行性
人事档案管理系统就是典型管理信息系统,通过人事档案管理系统对人事档案进行管理具有人工管理所无法比拟的优点,例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等等。
一个设计完善,运行稳定的人事档案管理系统可以使人们从繁重的手工管理中解脱出来,从而提高企业人事档案管理的工作效率,协助企业更好的完成人事档案管理工作;而且,企业整体管理的信息化建设是企业的科学化、正规化管理也世界接轨的重要条件,人事档案管理的信息化又是企业整体管理信息化建设的重要组成部分。
因此,利用计算机对企业人事档案进行管理是必然趋势,人事档案管理系统是企业管理工作中不可缺少的一部分。
对于整个系统而言,在系统未运行之前,初期投资比较大,花费相对而言比较多。
各部门必须配置电脑、打印机、传真机及相关的设备,但是整个系统投入运行之后,减少了数据的流通环节,不必要花费那么多的时间,也就是说最重要的是就是提高了效率,而又保证了各项数据的准确性,也避免了工作人员的流动造成的损失等问题。
现在计算机已经很普及,而且在计算机硬件和软件方面不需要很高的配置,下面是参考的基本配置。
硬件配置要求
软件配置要求
奔腾3800MHz
Windows982000XP操作系统
512M内存
VB6.0+SQL2000
硬盘可用空间2G左右
这里的硬件配置,仅仅是参考,因为现在的CPU都是四核八核了,硬件价格也越来越便宜,1G内存都很普遍,这样,计算机已完全满足系统的要求。
综合以上,从经济角度上看,在管理方面可以节省大量的开支,一些繁琐的日常事务,也提高了企业或者单位的经济效率,也是可行的。
四、本人实现项目的过程与步骤
4.1总体E-R图
由于数据库部分不是我任务,所以我只是在需求阶段设计了个总体E-R图,详细的部分由相应的同学完成。
下面是总体E-R图:
图4-1总体E-R图
4.2大部分类图
图4-2人事管理系统类图
我们设计实现的系统,包括四个部分,
1人事变更管理类:
也有九个属性和三个操作,添加人员变动的信息,删除变动信息和修改变动信息。
2离职信息管理类:
七个属性和三个操作,添加离职人员信息,删除离职人员信息和修改离职信息。
3部门信息管理类:
六个属性和四个操作,添加新的部门信息,删除部门信息,编辑部门信息和更新部门信息。
4人事信息管理类:
有档案编号,工号等26个属性,还包括了
添加信息:
添加新的职工基本信息,员工的档案编号系统自主创建
删除信息:
由于一些原因,该职工不在公司工作,可删除该员工的基本信息。
修改信息和打印(未完成):
修改一些职工的变化信息,如手机换号码了,家庭住址的变动等等。
4.3主界面模块和人事基本信息管理模块的设计
4.3.1主界面模块设计
1)效果图:
主界面的完成效果图:
图4-3主界面
2)人事管理系统简单状态图
图4-4人事管理系统状态图
3)顺序图
图4-5人事档案管理顺序图
4)人事管理系统简单用例图
图4-6人事管理系统用例图
5)系统总流程图:
图4-7系统流程图
系统0层数据流图:
4.3.2人事信息管理模块设计
1)人事信息管理界面预览:
图4-8人事信息管理界面
2)人事信息管理用例图
图4-9人事信息管理用例图
3)人事信息管理顺序图
图4-10人事系统顺序图
4.4编码实现
4.4.1主界面功能实现
下面是主界面的完成图:
图4-11主界面
界面上部件介绍:
名称
功能
Label1
单击响应人事信息管理界面
Label2
单击响应部门信息管理界面
Label3
单击响应人事变动管理界面
Label4
单击响应退出软件
Image1
主界面的背景
代码实现解释:
代码
备注
PrivateSubForm_Resize()
OnErrorResumeNext
Me.Width=9120
Me.Height=7155
EndSub
这是窗体的属性设置
PrivateSubLabel1_Click(IndexAsInteger)
SelectCaseIndex
Case0
Loadmain_rsxx
main_rsxx.Show
Case1
Loadmain_bmgl
main_bmgl.Show
Case2
Loadmain_rsbd
main_rsbd.Show
Case3
Me.Hide
End
EndSelect
EndSub
这是四个Label的单击事件响应代码:
case0对应label1,打开人事信息管理界面
case1对应label2,打开部门管理界面
case2对应label3,打开人事变更管理界面
case3对应label4,退出程序
PrivateSubLabel1_MouseMove(IndexAsInteger,ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
Fori=0To3
Label1(i).BorderStyle=0
Nexti
IfIndex<4ThenLabel1(Index).BorderStyle=1
EndSub
这是四个Label的鼠标移动事件,当鼠标移到该Label时,显示特殊效果。
4.4.2人事信息管理功能实现
1)人事信息管理主界面
图4-12人事信息管理界面
界面部件介绍:
名称
功能
Adodc1
实现连接后台数据库的功能
CmdAdd
实现“添加“功能按钮
CmdDelete
实现“删除”功能按钮
CmdExit
实现“退出”功能按钮
CmdFind
实现“查询”功能按钮
CmdModify
实现“修改”功能按钮
Combo1
列表,可以实现用户查询条件的选择
DataGrid1
数据视图,显示查询的结果
Text1
文本框,可以输入要查询的条件值
主要实现的代码介绍:
代码
备注
PrivateSubCmdAdd_Click()
'生成档案编号
DimdabhAsLong
Dimrs1AsNewADODB.Recordset
rs1.Open"select*from人事档案信息表orderby档案编号",Cnn,adOpenKeyset,adLockOptimistic
Ifrs1.RecordCount>0Then
Ifrs1.EOF=FalseThenrs1.MoveLast
dabh=Val(Right(rs1.Fields("档案编号"),5))+1
main_rsxx_lr.Txt1(0).Text="C-"&Format(dabh,"00000")
Else
main_rsxx_lr.Txt1(0).Text="C-00001"
EndIf
'生成工号
main_rsxx_lr.Txt1
(1).Text=Right(main_rsxx_lr.Txt1(0),5)
rs1.Close
'调用main_rsxx_lr窗体
Loadmain_rsxx_lr
main_rsxx_lr.Show
main_rsxx_lr.Caption="人事档案信息录入窗口"
main_rsxx_lr.Label10.Caption="人事档案信息录入"
EndSub
“添加”功能的代码实现
PrivateSubCmdFind_Click()
Adodc1.RecordSource="select*from人事档案信息表where(人事档案信息表."&Combo1.Text&"like+'"+Text1.Text+"'+'%')"
Adodc1.Refresh
EndSub
“查询”功能的代码实现,根据Text1输入的文本,查询相应的信息
2)人事信息添加界面
图4-13人事信息录入界面
主要代码实现介绍:
数据录入界面,可以完成数据添加功能,所以之前的添加功能按钮和修改功能按钮单击结果都是弹出该界面。
只是添加功能的话,录入功能界面没有数据,如果是修改的话,录入界面的数据是管理员选中的要修改的那个人事信息。
代码
备注
PrivateSubCmdModify_Click()
DimiAsInteger
Fori=0To3
'对应列
DataGrid1.Col=i
main_rsxx_lr.Txt1(i)=DataGrid1.Text
Nexti
DataGrid1.Col=4
main_rsxx_lr.Cbo1=DataGrid1.Text
DataGrid1.Col=5
main_rsxx_lr.DTP1.Value=DataGrid1.Text
DataGrid1.Col=6
main_rsxx_lr.Txt1(4)=DataGrid1.Text
DataGrid1.Col=7
…
Loadmain_rsxx_lr
main_rsxx_lr.Show
main_rsxx_lr.Caption="人事档案信息修改窗口"
main_rsxx_lr.Label10.Caption="人事档案信息修改"
EndSub
左边就是“修改”功能单击事件代码:
实现从datagrid1读取数据,然后一个一个对应的传给录入界面的各个部件中。
详细代码请看源程序
PrivateSubCmdSave_Click()
DimaAsString
rs1.Open"select*from人事档案信息表where工号='"&Txt1
(1).Text&"'orderby工号",Cnn,adOpenKeyset,adLockOptimistic
Ifrs1.RecordCount>0Then
a=MsgBox("您确实要修改这条数据吗?
",vbYesNo)
Ifa=vbYesThen
Fori=0To3
IfTxt1
(1).Text<>""Thenrs1.Fields(i)=Trim(Txt1(i).Text)
Nexti
rs1.Fields("性别")=Cbo1.Text
***
rs1.Fields("员工状态")=Cbo7.Text
rs1.Update
main_rsxx.Adodc1.Refresh
EndIf
Else
IfTxt1
(2).Text=""Then
MsgBox"姓名不允许为空!
"
ExitSub
EndIf
'新增人员
rs1.AddNew
Fori=0To3
IfTxt1
(1).Text<>""Thenrs1.Fields(i)=Trim(Txt1(i).Text)
Nexti
rs1.Fields("性别")=Cbo1.Text
***
rs1.Fields("员工状态")=Cbo7.Text
rs1.Update
main_rsxx.Adodc1.Refresh
main_rsbd.Adodc1.Refresh
EndIf
'关闭数据集对象
rs1.Close
UnloadMe
EndSub
录入界面中保存按钮的代码实现。
五、个人小结
通过本次课程设计,熟悉了对系统进行分析的一般步骤和方法,对业务流程图、数据流程图、数据字典的认识也更深入了一层,但是还是不能很熟悉的运用。
数据流程图是把握业务流程的一种重要模型,通过正确地绘制数据流程图可以更好地把握业务流程,在以后的学习和工作中也可以通过绘制类似图示来理解企业的流程。
让我学会了既要从系统的角度思考问题,又不能放过每个细节,现实场景中的每一个步骤都需要认真分析,只有这样才能做出比较全面的系统分析与设计,而一个完善、高效地系统正是建立在正确地系统分析与设计基础之上,所以这个阶段尤为重要。
由开始的毫无头绪,后来一步一步去上网找资料,参考网上的源代码,逐渐找到了作业的核心,并和小组同学们一一去克服完成,完成这个大作业的成就感还是很大的。
但是由于对人事档案管理过程了解较少,只是通过查阅各种资料得到信息,系统的分析、设计不太完善,大部分的管理功能没能实现。
在绘制用例图和顺序图的过程中使用了Sybase的PowerDesigner15工具,功能强大,可以画很多的图,用例图,类图,顺序图等等。
并且得到的图结构清晰、界面整洁,是一个不错的画图工具。
学校学到的知识也需要我们通过实践去深刻理解,才能转化为我们自己的能力,相信以后通过工作的实战,我们会越来越理解到在学校所学知识的重要,也会不断提升个人处理实务的能力。
六、参考文献
[1]钱乐秋等.软件工程.清华大学出版社
[2]夏邦贵等.VisualBasic6.0数据库开发经典实例精解.机械工业出版社
[3]求是科技编著.VisualBasic6.0信息管理系统开发实例导航.人民邮电出版社
七、附录
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课程设计 报告