课程设计报告(2010--2011年度第二学期)名称:软件工程课程设计题目:库存管理系统院系:计算机系班级:计科0802学号:200809010203学生姓名:褚文凯指导教师:宋雨,陈晴,王艳设计周数:2周成绩:日期:2011年6月《软件工程》课程设计任务书一、目的、要求通过该课程设计要使学生树立起强烈的工程化意识,用工程化思想和方法开发软件。切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,学生在对所开发的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。通过一系列规范化软件文档的编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试的基本能力。二、主要内容要求学生掌握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和管理奠定基础。每个学生选择一个小型软件项目(内容参照《计算机综合实践指导》,宋雨等编著,清华大学出版社出版),按照软件工程的生命周期,完成软件计划、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的文档。具体的方法可以选用传统的软件工程方法或者面向对象的方法,开发环境和工具不限。三、进度计划序号设计(实验)内容完成时间备注1软件计划、软件需求分析、软件设计,制定出软件测试计划,软件测试用例第1周要求上机前做好充分的文档准备2各模块录入、编码、编译及单元测试第2周的第1、2天3联调及整体测试,第2周的第3、4天4验收,学生讲解、演示、回答问题第2周的第5天四、设计成果要求1.至少提交4个文档,包括软件计划、软件需求规格说明书、软件设计说明书、软件测试计划,要求文档格式规范、逻辑性强(可参考《计算机综合实践指导》中给出的要求及格式)、图表规范;2.独自实现了系统的某些功能,基本达到了要求的性能,经过了测试,基本能运行。五、考核方式(1)提交的文档规范,工作量大,文档逻辑性强、正确,按《计算机综合实践指导》标准考核(附《软件工程课程设计》实验报告评分表)占60%(2)系统验收、讲解、答辩占25%(3)考勤占15%学生姓名:褚文凯指导教师:2011年5月30日《软件工程课程设计》实验报告评分表姓名专业班级学号题目标准分数得分(√)标准分数得分(√)标准分数得分(√)报告规范,符合要求20报告较规范,基本符合要求17报告不规范,不符合要求1110169819157614541813321210工作量大,报告完整20工作量适中,报告较完整17工作量较小,报告不完整14191613181512文档逻辑性强、正确,语言流畅20文档逻辑性较强,无明显错误,文字表述较流畅16文档有逻辑性,有明显错误,语言表述不顺畅12111915109181487171365实验报告成绩评分教师签字1.设计目的改革开放以来,中国经济的得到了长足的发展。中小型公司企业在其中发挥了重要作用。随着改革开放的深入,公司企业也不得不顺应潮流改变内部运作来提高生产效率。企业工资管理系统是一款协助公司财务管理公司内部资金的软件。它的出现大大节省了财务统计的时间,提高了公司的运作效率,减少了员工之间由于工资不透明产生的矛盾。是先在公司企业必备的管理软件。2需求分析2.1具体目标企业工资管理系统的主要任务是对工资的日常管理和维护,如查询、修改、增加、删除以及存储等,还可以迅速准确地对工资信息进行统计计算和汇总工作,快速打印出工资报表,针对系统服务对象的具体要求,设计了企业工资管理系统。企业工资管理系统主要有以下几大功能:(1)对职工的工资进行计算、修改。能对各职工的工资进行计算,即计算应发金额、应扣金额及实发金额等。(2)查询统计功能。要求即可以单项查询,比如查看某个职工的工资情况等;也可以查询全部。(3)报表打印功能。每月发放工资时,要求能够打印本月的工资表、随工资发给每个职工的工资条以及工资统计表。2.2系统功能建模2.2.1数据描述1静态变量企业工资管理系统的静态变量包括:部门员工表:员工编号、员工名、部门名工资情况表:员工编号、正常加班工资、特殊加班工资、出差工资、旷工工资、迟到早退基本工资奖金等表:员工编号、部门名、加班工资、特殊加班次数;月度员工考勤表:员工编号、员工姓名、统计时间、迟到早退次数、旷工次数、正常加班次数、特殊加班次数、出差次数2动态数据输入数据:查询方式,查询关键字;登记新的员工,新的部门;操作权限密码。输出数据:查询出的记录集;统计资料输出工资表;统计旷工次数、迟到早退次数。2.2.2数据流图和数据字典1对职工的工资进行计算、修改(1)数据流图:(2)数据字典:###数据源点及汇点描述:###名称:会计简要描述:查阅,开工资帐目有关数据流:工资表###加工逻辑词条描述:###职工会计计算工资表月度员工考勤表基本工资奖金表查阅加工名:计算加工编号:3简要描述:通过月度员工考勤表和基本工资奖金等表,开工资账目。输入数据流:基本工资奖金等表、月度员工考勤表输出数据流:工资表###数据流名词条描述:###①数据流名:开工资说明:记录工资流水账数据流来源:审查数据流去向:会计数据流组成:工资账目=职工编号+职工姓名+部门名+实发工资###数据文件词条描述:###①数据文件名:基本工资奖金等表简述:基本工资和应发奖金输出数据:职工编号、基本工资、应得奖金数据文件组成:职工编号、基本工资、应得奖金存储方式:关键字②数据文件名:月度员工考勤表简述:每月职工的考勤情况输入数据:职工名输出数据:旷工次数、正常加班次数、特殊加班次数、出差次数、迟到早退次数数据文件组成:职工名、旷工次数、正常加班次数、特殊加班次数、出差次数、迟到早退次数存储方式:关键字2查询统计过程(1)数据流图:(2)数据字典:###数据源点及汇点描述:###①名称:职工简要描述:申请查阅工资有关数据流:审查有权性###加工逻辑词条描述:###①加工名:审查加工编号:4简要描述:申请的职工登记并审查其有权性输入数据流:申请查阅输出数据流:批准查阅加工逻辑:申请的职工登记并审查有权性②加工名:处理事务加工编号:5简要描述:将提交的事务进行处理输入数据流:事务输出数据流:工资表加工逻辑:将工资表交给职工###数据流名词条描述:###①数据流名:工资表说明:职工的工资情况数据流来源:会计职工审查工资表查询批准申请数据流去向:登记售书数据流组成:工资表=员工编号+正常加班工资+特殊加班工资+出差工资+旷工工资+迟到早退+实得工资3报表打印过程(1)数据流图:(2)数据字典:###加工逻辑词条描述:###①加工名:处理事务加工编号:6简要描述:审查其有权性输入数据流:申请打印输出数据流:批准打印加工逻辑:审查有权性②加工名:报表打印加工编号:7简要描述:打印报表输入数据流:批准打印报表加工逻辑:打印报表职工处理事务申请报表打印批准工资表2.3系统数据模型通过对企业员工管理内容、工资管理内容和过程的分析,本系统设计的实体和属性如下及图4-1和图4-2:员工(员工编号、员工姓名、性别、籍贯、年龄、生日、学历、专业、住址、邮编、电话、Email、参加工作时间、进入公司时间、起薪时间、备注)部门(员工编号、部门名称)工资结构(员工编号、正常加班工资、特殊加班工资、出差工资、旷工工资、迟到早退)2_1用例表2_2类图3.概要设计本系统的开发宗旨以及总体任务就是帮助企业的财务主管部门提高工作效率,实现企业工资信息管理的自动化、规范化和系统化。所以为了能够实现编制这个系统所设定的目标,在程序的开发之前,需求分析是必不可少的。需求分析的第一步描述工资管理系统的功能,即定义用例,以此确定系统的功能需求。工资管理系统的用例分析主要是找出系统中所有的用例,因此要和工资管理系统的潜在用户进行讨论。系统最终实现的主要功能如下。工资管理系统的用例包括:(1)系统管理(2)工资设置(3)工资统计(4)工资查询(5)工资表导出(6)打印报表系统管理用例包括添加用户和修改密码。都通过其相应的窗口来实现。工资设置用例包括基本工资设置和其它项目设置。其它项目设置有奖金、津贴、福利、扣发等项目。工资统计用例可以根据不同的月份对其进行相应地统计。工资查询用例包括单人查询和查询所有,可以显示员工基本工资、员工其它项目情况,以及员工工资具体统计情况。工资表导出用例可根据所需的月份把工资表导出并可直接显示在Excel表格中,而且可以加以保存。打印报表用例是一个很重要的一个用例,它提供给用户生成报表和报印的功能,能够很方便地将员工的工资情况表打印出来。3.1系统目标采用公司现有的软硬件及科学的管理系统开发方案,建立工资管理系统,实现企业工资管理的计算机自动化。系统应符合公司人事、工资管理制度,并达到操作直观、方便、实用、安全等要求。3.2系统功能调查系统从总体上可以分为系统管理、工资信息设置、工资信息管理、打印报表等功能。3.2.1系统管理功能(1)添加用户:使用这个用户登录后,可以添加其他用户(2)修改密码:每一个用户都可以更改自己的密码3.2.1工资信息设置功能(1)基本工资设置:按照员工编号或职务设置员工的基本工资信息。(2)其他项目设置:设置单个员工的出差费、加班费等信息。(3)工资计算公式设置:设置员工实发工资的计算公式信息。3.2.2工资信息管理功能(1)出勤统计:按照月份统计员工的当月出勤信息。(2)计算实发工资:计算当月员工实发工资的金额。(3)查询工资:可以按月查询所有员工工资信息或查询个人工资信息。(4)导出工资表:把数据库中员工的工资信息导出到Excel2000中。3.2.3打印报表功能(1)基本工资列表打印:打印出基本工资列表(2)其他项目打印:打印其他项目列表(3)工资统计列表打印:打印工资统计列表3.3系统功能模块图图3-1系统功能模块图基本工资设置其他项目设置计算公式设置添加用户退出修改密码工资信息设置系统管理工资信息管理打印报表企业工资管理系统工资统计打印其他项目打印基本工资打印工资表导出查询工资计算实发工资出勤统计4.详细设计根据系统分析、系统概要设计的结果,采用VB作为开发工具,实现公司工资管理各模块的功能。系统运行时,首先出现在用户面前的就是一个登录窗口。4.1登录窗体设计4.1.1功能说明它主要是控制员工登录,防止非法用户闯入本系统,保证系统的安全,输入口令时屏幕显示为“*”以利保密。在开发过程当中,我还给系统限制了登录出错的次数,如果用户名或密码出错超过三次,那就自动退出系统。4.2主窗口设计4.2.1功能说明图4-1总体模块图主菜单系统管理工资信息设置工资信息管理打印报表4.3系统管理模块4.3.1功能说明系统管理模块主要实现的是添加用户和修改密码的功能,当想要添加用户时,就可直接在添加用户这个窗体上进行录入;而用户想要修改密码时则可以在修改密码这个窗口上进行操作,此时用户必须记得原先的密码才能进行修改,而且修改密码时设置了再次确认密码,以免由于误输而导致操作无法完成。4.4工资信息设置模块4.4.1功能说明此模块的功能主要是系统管理员根据本企业的规章制度及条例对工资的各项内容进行设置。包括基本工资设置、其他项目设置,以及工资计算公式设置。其分解模块图如下:图4-2分解模块图基本工资设置这个窗口采用了单选按钮,管理员可以任意选择员工编号或员工职称来对员工的基本工资进行设置。一旦设置成功就会跳转到查询的界面显示其基本工资设置后的情况,这个是在代码设置中调用了查询这个界面。工资计算公式设置主要是用来设置正常加班的百分比、特殊加班的百分比以及出差、旷工、迟到早退等每天的金额,这样设置以后就成了一个标准,计算工资时就按照这个标准来进行统计。而恢复设置就工资信息设置其他项目设置工资公式设置基本工资设置是删除刚才所设置的参数,使它还原到原来的这些标准。4.5工资信息管理模块4.5.1功能说明此模块是整个系统中最重要的一部分,包括出勤统计、计算实发工资、查询工资和导出工资表这些功能,其分解模块图如下:图4-3分解模块图出勤统计这个窗口是为管理员统计员工的出勤情况而提供的,管理员可以选择所需的月份来统计员工的当月出勤信