软件工程课程设计模板_第1页
软件工程课程设计模板_第2页
软件工程课程设计模板_第3页
软件工程课程设计模板_第4页
软件工程课程设计模板_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

./软件工程课程设计报告课题名称:员工工资管理系统指导教师:何霖专业班级:04级计算机3班小组成员:向凤20045964<组长>朱江涛晃渊华丽石吉吉完成日期:2007年6月12日目录目录21问题的提出41.1选题背景与意义41.2开发工具简介41.3开发人员分工介绍52系统分析52.1系统性能52.2系统特色52.3可行性分析62.3.1社会可行性62.3.2技术可行性62.3.3经济可行性63软件需求分析63.1系统业务流程图73.2系统的功能划分83.3系统的功能要求83.4用户的功能需求:8登陆功能83.4.2员工信息维护功能83.4.3工资信息维护功能9查询功能9计算功能9打印功能10退出功能103.5系统的数据需求:103.5.1总结出数据信息10数据流程图如下103.5.3数据流图的数据字典123.6系统的性能需求:134系统的概要设计:144.1系统结构的总体设计144.2各个模块的功能描述如下:154.2.1员工基本信息维护模块:154.2.2工资信息维护模块:154.2.3查询信息模块:164.2.4计算工资模块:164.2.5打印模块:164.2.6登陆模块:16退出模块:165数据库概念结构设计175.1系统的E-R图175.2系统的物理模型图185.3数据库的设计196系统的详细设计206.1生成报表206.2查询模块的详细设计:217软件测试227.1黑盒测试237.2白盒测试238调试23结论24参考文献26评分表271问题的提出工资管理系统是一个数据库管理系统,是针对企业的工资管理业务进行计算机处理而开发的应用软件。它提供关于公司老员工及新员工信息和工资有效管理等事务的信息,由于需要添加和修改员工的信息和工资信息、删除离职员工信息和在职员工信息修改以及修改其他一些数据,工资管理系统由系统维护、输入、查询、修改、输出、统计等子模块组成,功能基本涵盖普通企业的工资管理业务围。企业应用本系统后,可以有效的提高工资管理水平。1.1选题背景与意义现代科学的发展,使计算机进入了几乎一切领域,计算机已经是家喻户晓、无人不知了。从科学研究到工农业生产,从企业生产管理到家庭生活,各行各业都广泛地使用着计算机,可以说没有计算机,就没有现代化,计算机知识已经成为当代知识分子结构中不可缺少的一个重要组成部分。随着经济的发展,企业正面向着大型化、规模化发展,而对于大中型企业,员工、职称等跟工资管理有关的信息随之急剧增加。在这种情况下单靠人工来处理员工的工资不但显得力不从心,而且极容易出错。在这种情况下,我们建立一个工资管理系统是必要的,该整个系统操作简便、界面友好、灵活、实用、安全的要求出发,完成人事、工资管理的全过程,包括新进员工加入时人事档案的建立、老员工的转出、职位等的变动引起职工信息的修改、员工信息查询、统计等人事管理工作以及新进员工工资的新增、老员工工资修改等工资管理工作。经过实际使用证明,本文所设计的人事工资管理系统可以满足本单位人事、工资管理方面的需要。

该设计主要介绍了本课题的开发背景,需求分析和功能设计等过程。1.2开发工具简介1>pd:PowerDesigner,就是一个容易画出数据流图和生成数据库的逻辑模型和物理模型。该软件很容易实现把数据流图转化成相应的数据库的逻辑模型和物理模型。2SOLServer:它是一种关系数据库管理系统,能处理大量的数据和管理众多的并发用户,保证了数据的完整性,并提供许多高级管理和数据分布能力。3>VisualStudio.NET:向开发人员提供了用于在操作系统之间和语言之间集成解决方案的工具。开发人员可将现有的业务逻辑方便地转换为可重复使用的XMLWeb服务、封装进程并使它们能够用于任何平台上的应用程序。1.3开发人员分工介绍组长:向凤系统的需求分析及功能设计组员:朱江涛问题的提出及软件的测试晃渊概要设计华丽数据库结构设计石吉吉系统分析2系统分析本系统利用PowerDesigner和SQLSever,VisualStudio.NET,通过使用工资管理系统,使企业的工资管理工作系统化、规化、自动化、从而达到提高企业管理效率的目的。系统开发的总体任务是使办公人员可以轻松快捷地完成工资管理的任务。2.1系统性能尽量利用企业现有软件环境,采用先进的管理系统方案,从而达到充分利用企业现有资源,提高系统开发水平和应用效果的目的:1系统应符合企业工资管理的规定,满足企业相关人员日常使用的需要,并达到操作过程的直观、方便、实用、安全等要求;2系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于技术维护人员进行补充、维护。3系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。2.2系统特色1>采用C/S结构技术设计,界面美观、操作简便、容易使用。Excel数据表格风格,部门、员工导航操作,数据检索方便快捷。2>支持外部数据的导入,以及部数据的导出,所有窗口数据支持Excel导出。3>支持按员工状态、部门数据导航操作,模糊查找、逐级过滤查找功能。4>支持报表打印、导出。自定义部门工资、员工统计汇总报表和年报表。2.3可行性分析2.3.1社会可行性C/S模式系统以服务器作为数据处理和存储平台,在终端设计有专门的应用程序进行数据的采集和初次处理,再将数据传递到服务器端,用户必须使用客户端应用程序才能对数据进行操作。C/S模式具有专业化程度高、开发手段灵活、运行速度快等特点,但受到维护成本大、适应性弱等问题的影响。本系统利用了C/S模式,符合企事业单位的管理要求,为其实现较为先进的工资管理提供了有利的支持。2.3.2技术可行性使用PowerBuilder开发传统意义上的C/S模式结构的数据库系统,可以利用其提供的许多对于数据库访问与控制的有效机制,开发过程并不是很长且难度适中。我们曾学习了《数据库原理及应用》,掌握了数据库的基本原理及数据库的设计方法,在此基础上我们又深入学习了PowerBuilder的数据库系统开发。2.3.3经济可行性成本本系统要求的计算机配置不是很高,需要设备购置费用较低,其他设备的购置成本也在承担能力之中。本系统运行费用较低,系统使用方便简洁。收益应用本系统能在一定时期产生明显的收益,此外应用本系统提高了工作效率从而提高了管理水平;节省了人力,减轻了有关人员手工处理的工作负担;即使给管理者提供相应的辅助决策信息。3软件需求分析需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。所谓需指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。通常需求分为两种类型:一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的认识。功能性需指需要计算机系统解决的问题,也就是对数据的处理要求,这是一类最主要的需求。非功能性需指实际使用环境所要求的需求,往往是一些限制要求,例如:性能要求,可靠性要求,安全要求,等等。软件需求一般包含三个层次—业务需求、用户需求和功能需求,还包括非功能需求。业务需求:反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与围文档中予以说明。用户需求:描述了用户使用产品必须要完成的任务和具备的功能,这在使用实例文档或方案脚本说明中予以说明。功能需求:定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足其业务需求。系统目的是能够用计算机实现对各种工资进行日常管理,如添加、删除、修改员工信息,能够根据员工的等级、职位以及出勤情况、奖金、津贴情况等进行工资的计算,能够使员工、部门方便地查询和统计各种信息,最后能生成报表反馈给员工等。3.1系统业务流程图通过对企业原先手工进行员工工资管理业务的情况,可以设计出它的业务流程图,如图4-1所示。用户登录数据输入工资计算存储数据工资查询报表汇总图4-13.2系统的功能划分主要功能如下。·工资信息设置部分:包括设置员工的基本工资和其他项目的金额,如奖金等。并且负责设置员工工资的计算公式。·工资信息管理部分:包括统计出勤、计算工资、查询工资和导出工资表。·系统部分:包括添加用户和修改密码。3.3系统的功能要求①整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。②开发方法,文档规化,便于管理,可扩充。③完善的数据输入,维护,输出。④自检性能高,用户误输、错输均有提示。⑤容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。3.4用户的功能需求:3.4.1登陆功能该系统要有登陆功能。管理员要进行员工信息维护或者进行计算员工工资时,必须首先进行登陆。同理,员工也要先进行登陆才能进行各种查询等操作。<1>用户权限设置,修改密码。

<2>综合初始系统设置。3.4.2员工信息维护功能该系统要能够添加员工信息、删除员工信息和修改员工信息等功能。一个单位的员工不是一成不变的,总是在不断地变化,如有的员工被招聘进入公司,这时就要添加员工的基本信息;当员工辞职或者由于其它原因离开公司,这时就要删除员工的基本信息;当员工进行调动时,就要修改员工的基本信息了。〔1追加员工信息。

〔2删除员工信息。

〔3修改员工信息。〔4自动更新数据库。3.4.3工资信息维护功能〔1该系统要能够输入员工基本工资为了方便系统的计算员工的工资,系统应该能够输入员工基本工资、奖金、津贴等一些工资数据,以计算员工的月工资或者年工资等。〔2该系统要能够修改员工基本工资员工的工资不是一成不变的,它会发生变化,这时就要求能够修改员工的工资等。〔3该系统要能够删除员工基本工资当员工由于某种原因离开公司后,由于员工的基本信息已经删除了,所以也要删除员工的基本工资等信息。3.4.4查询功能一个员工或者部门要更好了解自己工资、出勤情况、奖金、津贴等情况,可以进行相关的查询,为了有更好地适应性,查询应该可以根据各种情况进行查询,能够进行单项查询或者按一定的条件围进行查询,如能够查询单个员工的工资情况,能够查询每个部门的工资情况和月工资的统计情况。〔1根据员工查询员工的工资情况。

〔2根据员工编号等查询员工的工资情况。

〔3根据员工学历等各种条件组合查询员工的工资情况。3.4.5计算功能计算功能是系统中一个比较重要的功能模块。〔1系统应该能够根据员工的基本工资、员工的出勤情况、资金和津贴情况进行工资的计算。〔2系统应该根据能够根据加班的时间、加班的类别等计算出员工所得的津贴工资。〔3系统应该能够根据各种员工在公司的工作表现、,计算出给员工的奖金。〔4系统应该能够计算各个部门的工资情况。〔5统计功能为了更好地了解员工的人数情况、员工的工资情况、部门的工资情况或者发放工资,系统应该能够对各个部门的总工资进行统计。3.4.6打印功能每月发放工资时,要求能够打印本月的工资表、随工资发给每个员工的工资条以及一些统计表等,如工资统计表。〔1打印工资信息。

〔2打印工资条。

〔3打印各种图表。3.4.7退出功能员工或管理员可利用退出功能退出系统。3.5系统的数据需求:3.5.1总结出数据信息对上述系统功能需求,可心分析、归纳出其相应必须管理的信息包括员工基本信息、员工的等级信息、员工出勤情况信息、员工津贴信息等,其数据及其属性需求分析如下:员工基本信息:员工号、员工、性别、工资等级、职称、所在部门、住址、等;部门信息:部门号,部门名称;员工考勤信息:员工号、日期、上午、下午、迟到、早退等。工资等级信息:等级号、等级名称、职位、基本工资;员工津贴信息:员工号、加班时间、加班类别等。3.5.2数据流程图如下:0层图如下所示:3.5.3数据流图的数据字典下面介绍一下一些主要的数据流的数据词典。系统管理数据流数据词典1>数据流名称:管理员登陆信息说明:它的作用是将管理员的ID、密码等让工资管理系统检查,看是否允许登陆。数据流来源:管理员数据流去向:工资管理系统2>数据流名称:非法登陆信息说明:它的作用是把用户的错误登陆信息反馈给用户。数据流来源:工资管理系统数据流去向:管理员3>数据流名称:查询请求信息说明:它的作用是把用户要查询的信息提交给工资管理系统,让其显示查询的信息。数据流来源:管理员数据流去向:工资管理系统4>数据流名称:添加员工信息说明:它的作用是把要添加的员工信息提交给工资管理系统,让其处理该信息。数据流来源:管理员数据流去向:工资管理系统5>数据流名称:更新员工信息说明:它的作用是把要更新的员工信息提交给工资管理系统,让其处理该信息。数据流来源:管理员数据流去向:工资管理系统6>数据流名称:打印信息说明:它的作用是让工资管理系统反馈一些打印信息,如工资条、报表等,以便用户更好地了解相关信息。数据流来源:工资管理系统数据流去向:管理员在用户数据流数据词典1数据流名称:业绩记录表说明:每月执行一次,由各部门主管填写本部门员工的业绩;部门主管和公司高级管理人员则由总经理指定。数据流来源:工资管理系统数据流去向:管理员2>数据流名称:工资标准表说明:每个职工的各项工资标准,由人事部主管填写。数据流来源:工资管理系统数据流去向:管理员包含结构:员工编号基本工资生活补贴岗位补贴还有一些其它的数据词典,在此不一一列出。3.6系统的性能需求:1.硬件要求。

设备名称说明

处理器奔腾III以上,256MB。存256MB,存越大,速度越快。硬盘40GB以上。

2.软件要求。〔1windows2000以上操作系统,IIS服务,配置.net框架。〔2需要有一个数据库服务器,提供数据库的连接,这里选用MicrosoftSQLServer2000来为数据库提供连接,当然要一台计算机来运行程序.这样就可以了。4系统的概要设计:在系统的需求分析阶段,我们已经知道系统"做什么"的问题了,现在我们要进入软件设计的阶段,去解决"怎么做"的问题。在软件设计阶段,它分为根要设计和详细设计。首先做概要设计,它是将软件的需求转化为数据结构和软件的系统结构。然后是详细设计,即过程设计,通过对结构表示进行细化,得到软件的详细的数据结构和算法。4.1系统结构的总体设计根据上面对需求的分析,我们可以得到系统的模块层次结构,层次结构如下所示:工资管理系统工资管理系统员工基本信息维级工资信息维护查询信息计算工资打印登陆退出添加员工信息修改员工信息删除员工信息输入工资信息更新工资信息单项查询计算奖金计算津贴统计工资范围查询打印工资条打印报表4.2各个模块的功能描述如下:4.2.1员工基本信息维护模块:本模块的功能是能够完成对员工基本信息的添加、修改、删除操作等进行维护。它包括三个子模块,添加员工信息子模块、修改员工信息子模块和删除员工信息子模块。4.2.2工资信息维护模块:本模块的功能是能够完成工资信息的输入、修改和删除等操作。它也包括两个子模块,输入工资信息子模块、修改工资信息子模块和删除工资信息子模块。4.2.3查询信息模块:本模块的功能是能够对单个员工工资信息、员工基本信息情况、部门工资情况、总工资情况等进行单项查询或者一定围查询、多项查询等。4.2.4计算工资模块:本模块的功能是能够计算员工工资的奖金情况、计算员工的津贴情况、计算员工月工资、年工资及进行一些相应的统计计算等。它包括一些子模块,如计算津贴子模块、计算奖金子模块、统计工资子模块等。4.2.5打印模块:本模块的功能是能够打印工资条以及一些部门报表、工资报表等,以反馈一些信息给员工。4.2.6登陆模块:本模块的功能是:根据员工的登陆时的输入信息,看是否要让该员工登陆系统。主要是用户登录的一个界面,判断登录的用户是管理员还是普通用户,进入后将面对的是主界面,从而进行相关的操作。登录的界面主要由用户名和密码的信息,还有一些标题设置,确定和取消的按钮组成。通过标题可以知道此系统的大概容,由此,登录界面的设计完成。4.2.7退出模块:本模块的功能是可以让员工或管理员随时利用该模块退出系统。5数据库概念结构设计5.1系统的E-R图根据对系统需求的分析,我们可以得到一些实体,如员工体、部门实体等,它们的一些主要实体属性如下:员工基本表:员工号、员工、性别、工资等级、职称、所在部门、住址、等;部门表:部门号,部门名称员工津贴表:员工号、加班时间、加班类别等工资等级表:等级号、等级名称、职位、基本工资;从而我们可以相应的E—R图,如下所示:1111m员工对应员工工资包括员工基本工资员工津贴员工奖金对应工资等级属于部门加班类别、时间工作情况出勤情况部门号部门名称员工编号姓名职称对应对应住址电话等级号基本工资5.2系统的物理模型图根据上面的E-R图,把上面的数据库概念结构转化为PB数据库系统所支持的实际数据模型,也就是数据库的逻辑结构,从而,我们就可以得到如下的逻辑视图和物理模型图:5.3数据库的设计数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。数据库设计的好与坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率,确保数据信息的完整性和一致性。针对员工工资信息管理系统的需求,通过对员工工资计算过程的容分析,为本系统设计如下的数据项和数据结构:·基本工资信息:包括员工编号和基本工资〔元/小时。·其他项目信息:包括员工编号、奖金、津贴、福利、扣发等。·计算公式信息:包括加班费的百分比、出差工资、旷工、迟到早退扣发等。·出勤统计信息:包括员工编号、、统计日期、出勤天数、迟到早退次数、加班天数、加班天数等。·工资统计信息:包括员工编号、、统计日期、基本工资、奖金、津贴、福利,加班费、出差费、扣发、总额等。6系统的详细设计概要设计完成了软件系统的总体设计,规定了各个模块的功能及模块之间的联系,进一步就要考虑实现各个模块规定的功能,这就是要进行详细设计。在详细设计阶段,要决定名个模块的实现算法,并精确地表达这些算法。下面主要实现一些重点模块的算法。6.1生成报表用Jackson系统设计方法设计报表,如下所示:打印报表打印报表员工信息*工资信息*员工号员工姓名所在部门住址奖金基本工资津贴加班类型加班时间6.2查询模块的详细设计:在该模块中,要查询信息,首先要进行登陆,然后输入要查询的信息,如员工号,接着系统连接数据库,在数据库中查找是否有和输入信息相应的信息,如果有,则显示相应的查找结果;如果没有,则提示找不到相应的信息或者提示出错。流程图如下所示:否否是开始输入要查询的信息在数据库中,查找输入的信息登陆找到相应的信息显示无相应信息或者报错显示结果结束7软件测试在完成了详细设计、编码之后,就要进入软件测试阶段了。软件测试是指根据软件开发各阶段的规格说明各程序的部结构而精心设计一批测试用例〔即输入数据及其预期的输出结果,并利用这些测试用途去运行程序,以发现程序错误的过程。软件测试分为黑盒测试和白盒测试。黑盒测试主要看模块的功能是否实现;白盒测试主要对模块部的检查。7.1黑盒测试黑盒测试主要是为了发现以下几类错误:是否有不正确或遗漏了的功能。在接口上,输入能否正确地接受,能否输出正确的结果。是否有数据结构错误或外部信息访问错误性能上是否能够满足要求是否有初始化或终止性错误7.2白盒测试白盒测试是对软件的过程性细节做细致的检查。白盒测试主要想对模块进行如下的检查:对程序的模块的所有独立的执行路径至少测试一次对所有的逻辑判定,取"真"与取"假"的两种情况都能至少测试一次;在循环的边界和运行界限执行循环体;测试部数据结构的有效性,等等。因此在对程序进行白盒测试测试时,测试用例要有:条件组合覆盖测试用例和路径测试用例。8调试在测试完成之后,还要对程序进行调试。可用下面的几种方法进行调试。强行排错:可以通过存全部来排错,也可在程序特定部位设置打印语句来排错。回溯法排错。这是在小程序中常用的一种有效的排错方法。归纳法排错。它是一种从特殊推断一般的系统化思考方法。演绎法排错等。结论员工工资管理系统是一个典型的信息管理系统,通过软件工程方面的选择课题、需求分析、概要设计、详细设计、程序模块、系统测试等几个步骤来实现。开发本系统的过程中,首先熟悉员工工资发放管理的流程、步骤;其次在系统需求分析过程中,要透过现象看本质,敏锐观察到员工工资管理中存在的各种问题,并在总体设计把握好对问题的分析、理解,进而解决问题。在我们的共同努力下,我们基本完成了这个系统。由于时间、条件和个人水平的限制,软件相对较简单,如果要将该软件用于具体单位,还需针对单位的实际情况对软件进行进一步的完善。本软件的特点和优点:1.本软件可以工资核算正确无误、快速输出,提高企业的管理水平和管理效率。2.可以对工资的各个

温馨提示

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

评论

0/150

提交评论