当前位置:范文大全 > 调查报告 > 数据库课程设计报告精彩3篇(范文推荐)

数据库课程设计报告精彩3篇(范文推荐)

时间:2023-10-12 08:00:40 浏览次数:

数据库课程设计报告精彩本次课程设计,使我对《数据结构》这门课程有了更深入理解。《数据结构》是一门实践性较强课程,为了学好这门课程,必须在掌握理论知识同时,加下面是小编为大家整理的数据库课程设计报告精彩3篇,供大家参考。

数据库课程设计报告精彩3篇

数据库课程设计报告精彩篇1

本次课程设计,使我对《数据结构》这门课程有了更深入理解。《数据结构》是一门实践性较强课程,为了学好这门课程,必须在掌握理论知识同时,加强上机实践。

我课程设计题目是线索二叉树运算。刚开始做这个程序时候,感到完全无从下手,甚至让我觉得完成这次程序设计根本就是不可能,于是开始查阅各种资料以及参考文献,之后便开始着手写程序,写完运行时有很多问题。特别是实现线索二叉树删除运算时很多情况没有考虑周全,经常运行出现错误,但通过同学间帮助最终基本解决问题。

在本课程设计中,我明白了理论与实际应用相结合重要性,并提高了自己组织数据及编写大型程序能力。培养了基本、良好程序设计技能以及合作能力。这次课程设计同样提高了我综合运用所学知识能力。并对VC有了更深入了解。《数据结构》是一门实践性很强课程,上机实习是对学生全面综合素质进行训练一种最基本方法,是与课堂听讲、自学和练习相辅相成、必不可少一个教学环节。

上机实习一方面能使书本上知识变“活”,起到深化理解和灵活掌握教学内容目;另一方面,上机实习是对学生软件设计综合能力训练,包括问题分析,总体结构设计,程序设计基本技能和技巧训练。此外,还有更重要一点是:机器是比任何教师更严厉检查者。因此,在“数据结构”学习过程中,必须严格按照老师要求,主动地、积极地、认真地做好每一个实验,以不断提高自己编程能力与专业素质。

通过这段时间课程设计,我认识到数据结构是一门比较难课程。需要多花时间上机练习。这次程序训练培养了我实际分析问题、编程和动手能力,使我掌握了程序设计基本技能,提高了我适应实际,实践编程能力。总来说,这次课程设计让我获益匪浅,对数据结构也有了进一步理解和认识。

一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在设计过程中,和同学们相互探讨,相互学习,相互监督。我学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世,这次课程设计对我来说受益良多。

课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程。“千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义。我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。我这次设计的科目是数据结。

数据结构,是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。“数据结构”在计算机科学中是一门综合性的专业基础课。数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。通过这次模具设计,我在多方面都有所提高。

在界面设置中使用函数调用while。其中文本显示颜色和背景颜色都可以任意按照自己的喜好,任意改变,但改变的时候必须采用标准英文大写,同时在制作显示菜单的窗口,大小根据菜单条数设计。最后采用printf输出程序设计界面。

这次的程序软件基本上运行成功,可以简单的建立链式循环链表,并进行输出,及循环语句的运用和选择语句的控制。由于时间和知识上的限制,使得程序规模相对较小,即功能还不很全面,应用也不很普遍。原来C语言可是涉及很多知识,而不是枯燥无聊的简单的代码部分而已,利用C语言方面的知识,我们可以设计出更完善的软件。

通过这次的课程设计,更是让我深刻认识到自己在学习中的不足,同时也找到了克服这些不足的方法,这也是一笔很大的资源。在以后的时间中,我们应该利用更多的时间去上机实验,加强自学的能力,多编写程序,相信不久后我们的编程能力都会有很大的提高能设计出更多的更有创新的作品。

数据库课程设计报告精彩篇2

vb程序设计实验心得一:数据库VB课程设计心得体会

数据库课程设计大赛的尘嚣渐渐远去,怀着对这次大赛的些许不舍,怀着对当初课程设计开始时候的豪情万丈的决心的留恋,怀着通过这次课程设计积累的信心与斗志,我开始写这篇文章,为自己的足迹留下哪怕是微不足道但是对自己弥足珍贵的痕迹并期望与大家共勉。

首先,让我的记忆追溯到大二暑假,在老大的指引下 ,我接触到Microsoft 公司的。NET产品。那个时候我已经学过vc和asp,因为windows程序设计实验的课的关系,接触过vb,但是没有专门去学他,因为习惯了c++里面的class,int,觉得vb的sub,var 看着就不是很顺心。我是一个好奇心很强的人,突然看到了一个号称“.网络是用于创建下一代应用程序的理想而又现实的开发工具”,而且主推c#语言,由于对c语言的一贯好感,我几乎是立刻对他产生了兴趣。我就开始了对c#的学习,任何语言都不是孤立存在的,所以数据交互是很重要的,暑假的时候我把我们这学期的课本数据库系统概论看了一遍。我记得以前用c语言编程的时候,数据是在内存中申请空间,譬如使用数组等等。很耗费内存空间。这个时候就是数据库站出来的时候啦,于是我又装上了sql serverXX,以前学asp的时候用的是access,那个时候只是照着人家做,理论是什么也不是很清楚。

通过一个暑假的学习,基本搞清楚了理论方面的东西,具体怎么用也不是很清楚。但是这为这学期的课程设计打下了铺垫。

来到学校后,随着这学期的数据库课程大赛开始了,我有一个看法就是我自己应该具备的能力不是我会多少,而是我应该具备快速学会东西的能力。遇到什么就学什么。我们有时候很容易被一些专业名词说吓着,包括什么建模,软件工程,数据分析,数据挖掘等等。我身边就有很多同学被这些纸老虎所唬住,而没有勇气去接触他们,总是说这个太难了之类的退堂鼓的话,他们低估了自己的潜力同时也压抑住了他们自己的好奇心。其实都是纸老虎,又不是什么国家科研难题,只是去用一些工具,发明工具是很难,但是用一个工具就容易多了,just do it!我记得我做这个数据库之前,我们老师说要做好前期分析,我就在网上搜索用什么分析工具好。最后我选择了roseUML建模工具。在此之前,我脑袋里面没有软件建模的思想,什么UML建模对我而言就是一张空白的纸。但是真正接触后并没有想象的那么难,有什么不懂的上网去搜索,这是一个信息横流的世界,有google,baidu就没有不能解决的知识难题。以及后来的数据库分析的时候用到的powerdesigner也是一样。

开发的时候我想过用什么架构,c/s模式?模式有很多,怎么选择?我就上网搜索现在最流行的架构是什么。结果搜到了MVC架构,就是你啦。我决定用这个架构,不会,没关系,咱学。Just do it!前期工作准备好后,那么我就得把我暑假学的。网络加以实践。这个时候我更加深入的了解了利用操纵数据库的知识。并且对数据库里面的存储过程有了比较深入的了解。经过大概2个多星期的奋斗,我完成了我的数据库课程设计--基于。网络数据集的图书馆管理系统。并最后非常荣幸的获得了大赛的一等奖以及以及新技术应用奖。

与其临渊羡鱼,不如退而结网。这次数据库课程设计给我的最大的印象就是如果自己有了兴趣,就动手去做,困难在你的勇气和毅力下是抬不了头的。从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。出于对知识的渴望,出于对新技术的好奇,出于对一切未知的求知。我完成了这次数据库课程设计,不过这只是我学习路上的驿站,未来十年。NET的核心技术就是XML[至少微软是这么宣传的],我会继续学习它,包括jave公司的j2ee我也很想试试,语言本来就是相通的,just do it!语言并不重要毕竟它仅仅是工具,用好一个工具并不是一件值得为外人道的事情,主要是了解学习思想。古语说的好:学无止境啊!

我很庆幸我参加了这次数据库大赛,让我确实打开了眼界。

(最后,很感激学校给了我们这次动手实践的机会,让我们学生有了一个共同学习,增长见识,开拓视野的机会。也感谢老师们对我们无私忘我的指导,我会以这次课程设计大赛作为对自己的激励,继续学习。毕竟学习就是一个just do it的过程!)我直接从报告上面复制过来的。所以这段也不删去了。呵呵。

题目大概是用可视化编程实现一个简单的数据库管理系统我用的是BCB 题目虽然是简单 但也明白了很多以前以为懂的问题代码到没什么 这种题目用BCB的话已经不用几行代码了关键是了解了这些名词Paradox,ADO,BDE,ODBC 一开始拖控件,写几行代码 很快就完成了编译也通过了 但传到同学机器上就是显示不出数据来折腾了我1天 又是发帖子 又是问群里的达人后来明白了我用的Paradox数据库是用BDE引擎的发布软件的时候要把BDE打包于是又学着打包BDE 却发现不到1m的软件如果打包BDE的话就10+m了而且BCB6自带的那个打包软件用的我头晕目眩于是又想不用BDE 所以又折腾了我半天答案是要使用ADO控件( 以前我用的是BDE控件 )而且要用Access数据库了解了这些之后 作业也就完成了总的看来还是很有收获的 幸亏我下了决心这个作业要自己做没有去网上下载 呵呵

vb程序设计实验心得二:vb课设心得体会(1581字)

课程是计算机科学与技术本科专业的专业骨干课。本课程主要通过论述了面向对象程序设计和组建编程的机理,涉及到控制台界面程序、Windows窗体程序、图形界面编程、数据库、网络应用系统等多方面的内容。内容量大,程序设计复杂、同时程序调试是在环境下进行,在编程过程中环境会自动为用户生成一些必要代码,以降低编程难度,降低学生的编程负担,但这也带来了一些问题,如:学生对的程序结构把握和了解不全面,对编程机理了解不透彻,学生容易盲目照搬书上代码,不求甚解,似是而非。为了解决这个问题,我们采取了课程设计的方法来加深学生对知识的理解,将书本知识迁移到新的问题解决中,提高学生分析问题和解决问题的能力。

要求学生在学习该课程中,应用每个相对独立的、完整的单元知识解决一个实际项目,设计编写一个小作品;学完整个课程后,完成一个综合性比较强的编程项目,使学生对整个课程内容进行全面的总结、梳理,以项目完成为手段,全面锻炼学生分析问题和解决问题的能力。

一。目的

1.为使学生掌握编程、面向对象程序设计思想和组建编程的知识实际技能,除了系统地讲授必要的知识,上机练习,做作业外,还应该对学生作较全面的编程技能和分析问题解决问题的能力训练,即作课程设计,以达到如下目的:具体应用和巩固本课程及有关先修课的基础理论和专业知识,了解面向对象程序设计思想,掌握应用编程和组建编程程序设计方法,培养学生初步的项目设计能力。

2.独立地根据一定的项目要求,查阅资料,写出项目开发目标,分析开发过程中所用到的课程知识,提出解决方案,编码并上机调试完成系统,培养学生分析问题和解决问题的能力。课程设计是教学过程中的一个重要环节,必须认真对待。

二。要求

在课程设计中要求学生注意培养认真负责,踏实细致的工作作风和保质保量,按时完成任务的习惯。在设计过程中必须做到:

1.在某个教学单元结束后,完成一个教师布置的、或学生自己拟定的、知识覆盖整个章节的,有一定综合性和难度的项目,要求学生描述出要达到的目标、围绕目标,收集资料和素材,复习所需的课程知识,描述问题解决方案、编写程序上机调试,直到项目的完成。最后的成果要有完成的作品和相应的文档。

2.在课程结束后,完成一个大的编程项目,其要求与课程单元的项目差不多,只是综合性更强、难度更大、知识覆盖面更广,工作量更大,以全面促进学生复习和梳理学科教学内容,提升学生分析问题、解决问题和文档的书写和编制。

三、采取的措施

为了保证课程设计能够按照预定的目标和计划进行,我们还采取了以下措施来加强对学生监督和管理。

1.首先讲清楚课程设计的意义,让学生能够自觉积极主动地进行课程设计,发挥学生的主观能动性;

2.在课程设计过程中,教师随时巡视和监督,了解把握和控制课程设计的进展;

3.将学生的作品集中展示、评价、打分,可以让学生在展示的过程中获得成就感、自豪感,学生之间可以相互学习、取长补短,同时在此过程中可以明确标准,自觉地按照标准来调整自己地学习;

4.将课程设计作为学期成绩的一部分记载,大约占10%,必须完成课程设计后才能参加考试,课程设计不过关,即使考得再好,也不能过。

四、取得的效果

通过以上措施,学生全部都完成了自己的项目、将所有的作品通过超链接网页的方式集成在一个作品集中,所有的学生都完成了4~6个小作品,每个作品都反映了学生应用课程的某部分知识解决某个问题的结果,通过完成这些作品,学生巩固、加深了对相关知识的理解,加强了知识之间的联系,促进了知识的迁移和应用。同时学生看到凝聚着自己的心血、汗水、思维和创新的作品,就像一个母亲看到自己呱呱坠地孩子那样充满了喜悦,激发了学生的创造欲望。通过同学之间作品的对比,提供了一个相互学习交流的平台,激发了学生的竞争意识。总之通过课程设计受到了良好的多方面的效果,从考试成绩来看,级本科全部都及格了。

数据库课程设计报告精彩篇3

课题名称:员工工资管理系统的设计与实践研究

姓 名:学 号:班 级:指导教师:

目 录

1.概述。 4

1.1问题的提出。 4

1.1.1 选题背景与意义。 4

1.1.2 开发工具简介。 5

2.可行性分析。 5

2.1社会可行性。 5

2.2技术可行性。 5

2.3经济可行性。 6

3.需求分析。 6

3.1系统业务流程图。 7

3.2 系统的功能划分 .............................................. 7

3.3 系统的功能要求 .............................................. 7

3.4 用户的功能需求: ............................................ 7

3.4.1登陆功能 ............................................... 7

3.4.2 员工信息维护功能。 8

3.4.3 工资信息维护功能。 8

3.4.4查询功能 ............................................... 8

3.4.5计算功能 ............................................... 9

3.4.6打印功能 ............................................... 9

3.4.7退出功能 ............................................... 9

3.5系统的数据需求。 10

3.5.1 总结出数据信息。 10

3.5.2数据流程图如下 ........................................ 10

3.5.3 数据流图的数据字典。 12

3.6 系统的性能需求 ............................................. 13

4.总体设计。 13

4.1系统结构的总体设计。 14

4.2 各个模块的功能描述如下 ..................................... 14

4.2.1 员工基本信息维护模块。 14

4.2.2 工资信息维护模块。 15

4.2.3 查询信息模块。 15

4.2.4 计算工资模块。 15

4.2.5 打印模块。 15

4.2.6 登陆模块。 15

4.2.7退出模块 .............................................. 16

5.详细设计。 16

5.1 生成报表 ................................................... 16

5.2 查询模块的详细设计 ......................................... 17

6.测试。 18

6.1 黑盒测试 ................................................... 18

6.2 白盒测试 ................................................... 18

7. 调试。 19

8.结 论。 19

9.参考文献。 21

1.概述

1.1问题的提出

工资管理系统是一个数据库管理系统,是针对企业的工资管理业务进行计算机处理而开发的应用软件。它提供关于公司老员工及新员工信息和工资有效管理等事务的信息,由于需要添加和修改员工的信息和工资信息、删除离职员工信息和在职员工信息修改以及修改其他一些数据,工资管理系统由系统维护、输入、查询、修改、输出、统计等子模块组成,功能基本涵盖普通企业的工资管理业务范围。企业应用本系统后,可以有效的提高工资管理水平。

1.1.1 选题背景与意义

现代科学的发展,使计算机进入了几乎一切领域,计算机已经是家喻户晓、无人不知了。从科学研究到工农业生产,从企业生产管理到家庭生活,各行各业都广泛地使用着计算机,可以说没有计算机,就没有现代化,计算机知识已经成为当代知识分子结构中不可缺少的一个重要组成部分。随着经济的发展,企业正面向着大型化、规模化发展,而对于大中型企业,员工、职称等跟工资管理有关的信息随之急剧增加。在这种情况下单靠人工来处理员工的工资不但显得力不从心,而且极容易出错。

在这种情况下,我们建立一个工资管理系统是必要的,该整个系统操作简便、界面友好、灵活、实用、安全的要求出发,完成人事、工资管理的全过程,包括新进员工加入时人事档案的建立、老员工的转出、职位等的变动引起职工信息的修改、员工信息查询、统计等人事管理工作以及新进员工工资的新增、老员工工资修改等工资管理工作。经过实际使用证明,本文所设计的人事工资管理系统可以满足本单位人事、工资管理方面的需要。

该设计主要介绍了本课题的开发背景,需求分析和功能设计等过程。

1.1.2 开发工具简介

1)pd:PowerDesigner,就是一个容易画出数据流图和生成数据库的逻辑模型和物理模型。该软件很容易实现把数据流图转化成相应的数据库的逻辑模型和物理模型。

2)SOL Server:它是一种关系数据库管理系统,能处理大量的数据和管理众多的并发用户,保证了数据的完整性,并提供许多高级管理和数据分布能力。

3) Visual Studio .NET: 向开发人员提供了用于在操作系统之间和语言之间集成解决方案的工具。开发人员可将现有的业务逻辑方便地转换为可重复使用的 XML Web 服务、封装进程并使它们能够用于任何平台上的应用程序。

2.可行性分析

2.1社会可行性

C/S模式系统以服务器作为数据处理和存储平台,在终端设计有专门的应用程序进行数据的采集和初次处理,再将数据传递到服务器端,用户必须使用客户端应用程序才能对数据进行操作。C/S模式具有专业化程度高、开发手段灵活、运行速度快等特点,但受到维护成本大、适应性弱等问题的影响。本系统利用了C/S模式,符合企事业单位的管理要求,为其实现较为先进的工资管理提供了有利的支持。

2.2技术可行性

使用PowerBuilder开发传统意义上的C/S模式结构的数据库系统,可以利用其提供的许多对于数据库访问与控制的有效机制,开发过程并不是很长且难度适中。我们曾学习了《数据库原理及应用》,掌握了数据库的基本原理及数据库的设计方法,在此基础上我们又深入学习了PowerBuilder的数据库系统开发。

2.3经济可行性

成本:本系统要求的计算机配置不是很高,需要设备购置费用较低,其他设备的购置成本也在承担能力之中。本系统运行费用较低,系统使用方便简洁。

收益:应用本系统能在一定时期内产生明显的收益,此外应用本系统提高了工作效率从而提高了管理水平;节省了人力,减轻了有关人员手工处理的工作负担;即使给管理者提供相应的辅助决策信息。

3.需求分析

需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。理解就是对 现实问题的。理解,要弄清楚究竟需要解决什么问题。抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。通常需求分为两种类型:一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的认识。功能性需求是指需要计算机系统解决的问题,也就是对数据的处理要求,这是一类最主要的需求。非功能性需求是指实际使用环境所要求的需求,往往是一些限制要求,例如:性能要求,可靠性要求,安全保密要求,等等。 软件需求一般包含三个层次―业务需求、用户需求和功能需求,还包括非功能需求。业务需求:反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。用户需求:描述了用户使用产品必须要完成的任务和具备的功能,这在使用实例文档或方案脚本说明中予以说明。功能需求:定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足其业务需求。 系统目的是能够用计算机实现对各种工资进行日常管理,如添加、删除、修改员工信息,能够根据员工的等级、职位以及出勤情况、奖金、津贴情况等进行工资的计算,能够使员工、部门方便地查询和统计各种信息,最后能生成报表反馈给员工等。

3.1系统业务流程图

通过对企业原先手工进行员工工资管理业务的情况,可以设计出它的业务流程图,如图4-1所示。

用户登录数据输入工资计算存储数据

工资查询 报表汇总

图3-1

3.2 系统的功能划分

1. 工资信息设置部分:包括设置员工的基本工资和其他项目的金额,如奖金等。

并且负责设置员工工资的计算公式。

2. 工资信息管理部分:包括统计出勤、计算工资、查询工资和导出工资表。

3. 系统部分:包括添加用户和修改密码。

3.3 系统的功能要求

1. 整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。

2. 开发方法,文档规范化,便于管理,可扩充。

3. 完善的数据输入,维护,输出。

4. 自检性能高,用户误输、错输均有提示。

5. 容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操

作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。

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 总结出数据信息

对上述系统功能需求,可心分析、归纳出其相应必须管理的信息包括员工基本信息、员工的等级信息、员工出勤情况信息、员工津贴信息等,其数据及其属性需求分析如下:

1. 员工基本信息:员工号、员工姓名、性别、工资等级、职称、所在部门、住

址、电话等;

2. 部门信息:部门号,部门名称;

3. 员工考勤信息:员工号、日期、上午、下午、迟到、早退等。

4. 工资等级信息:等级号、等级名称、职位、基本工资;

5. 员工津贴信息:员工号、加班时间、加班类别等。

3.5.2数据流程图如下

0层图如下所示:

3.5.3 数据流图的数据字典

下面介绍一下一些主要的数据流的数据词典。 一、

系统管理数据流数据词典

1. 数据流名称:管理员登陆信息

说明:它的作用是将管理员的ID、密码等让工资管理系统检查,看是否允

许登陆。

数据流来源:管理员 数据流去向:工资管理系统 2. 数据流名称:非法登陆信息

说明:它的作用是把用户的错误登陆信息反馈给用户。 数据流来源:工资管理系统 数据流去向:管理员 3. 数据流名称:查询请求信息

说明:它的作用是把用户要查询的信息提交给工资管理系统,让其显示查询

的信息。

数据流来源:管理员 数据流去向:工资管理系统 4. 数据流名称:添加员工信息

说明:它的作用是把要添加的员工信息提交给工资管理系统,让其处理该信

息。

数据流来源:管理员 数据流去向:工资管理系统 5. 数据流名称:更新员工信息

说明:它的作用是把要更新的员工信息提交给工资管理系统,让其处理该信

息。

数据流来源:管理员 数据流去向:工资管理系统 6. 数据流名称:打印信息

说明:它的作用是让工资管理系统反馈一些打印信息,如工资条、报表等,

以便用户更好地了解相关信息。

数据流来源:工资管理系统 数据流去向:管理员 二、

在用户数据流数据词典

1. 数据流名称: 业绩记录表

说明: 每月执行一次,由各部门主管填写本部门员工的业绩;部门主管和

公司高级管理人员则由总经理指定。

数据流来源:工资管理系统 数据流去向:管理员 2. 数据流名称: 工资标准表

说明:每个职工的各项工资标准,由人事部主管填写。 数据流来源:工资管理系统 数据流去向:管理员

包含结构:员工编号、姓名、基本工资、生活补贴、岗位补贴,还有一些其它的数据词典,在此不一一列出。

3.6 系统的性能需求

1.硬件要求。 设备名称说明:处理器奔腾III以上,256MB。内存256MB,内存越大,速度越快。硬盘40GB以上。

2.软件要求。(1)windows 以上操作系统,IIS服务,配置。net框架。

(2)需要有一个数据库服务器,提供数据库的连接,这里选用

Microsoft SQL Server2000来为数据库提供连接,当然要一台计算机来运行程序。这样就可以了。

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 生成报表

用Jackson系统设计方法设计报表,如下所示:

5.2 查询模块的详细设计

在该模块中,要查询信息,首先要进行登陆,然后输入要查询的信息,如员工号,接着系统连接数据库,在数据库中查找是否有和输入信息相应的信息,如果有,则显示相应的查找结果;如果没有,则提示找不到相应的信息或者提示出错。流程图如下所示:

在完成了详细设计、编码之后,就要进入软件测试阶段了。软件测试是指根据软件开发各阶段的规格说明各程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用途去运行程序,以发现程序错误的过程。软件测试分为黑盒测试和白盒测试。黑盒测试主要看模块的功能是否实现;白盒测试主要对模块内部的检查。

6.1 黑盒测试

黑盒测试主要是为了发现以下几类错误: 1)是否有不正确或遗漏了的功能。

2)在接口上,输入能否正确地接受,能否输出正确的结果。 3)是否有数据结构错误或外部信息访问错误 4)性能上是否能够满足要求 5)是否有初始化或终止性错误

6.2 白盒测试

白盒测试是对软件的过程性细节做细致的检查。 白盒测试主要想对模块进行如下的检查:

1)对程序的模块的所有独立的执行路径至少测试一次

2)对所有的逻辑判定,取”真”与取”假”的两种情况都能至少测试一次; 3)在循环的边界和运行界限内执行循环体; 4)测试内部数据结构的有效性,等等。

因此在对程序进行白盒测试测试时,测试用例要有:条件组合覆盖测试用例和路径测试用例。

在测试完成之后,还要对程序进行调试。 可用下面的几种方法进行调试。

1)强行排错: 可以通过内存全部来排错,也可在程序特定部位设置打印语句来排错。

2)回溯法排错。这是在小程序中常用的一种有效的排错方法。 3)归纳法排错。 它是一种从特殊推断一般的系统化思考方法。 4)演绎法排错软件工程课程设计报告等。

8.结 论

员工工资管理系统是一个典型的信息管理系统,通过软件工程方面的选择课题、需求分析、概要设计、详细设计、程序模块、系统测试等几个步骤来实现。开发本系统的过程中,首先熟悉员工工资发放管理的流程、步骤;其次在系统需求分析过程中,要透过现象看本质,敏锐观察到员工工资管理中存在的各种问题,并在总体设计把握好对问题的分析、理解,进而解决问题。

在我们的共同努力下,我们基本完成了这个系统。由于时间、条件和个人水平的限制,软件相对较简单,如果要将该软件用于具体单位,还需针对单位的实际情况对软件进行进一步的完善。

本软件的特点和优点:

1. 本软件可以工资核算正确无误、快速输出,提高企业的管理水平和管理效率。 2. 可以对工资的各个项目随时作增加和删除。

3. 可以分别查询单个工人每个月的工资,包括工资的各个细节项目。 4. 可以查询各部门以及全公司的员工的工资报表。

本软件需要改进的地方有:

1. 基本工资的设定太笼统,不能满足有些单位的需要。 2. 员工管理部分比较少需要结合人事管理软件使用。

4. 软件的界面美观性方面需要很大的改进。 5. 帮助文档比较简单。

课程设计对一个学生来说是一个非常的重要的学习过程。从对PowerDesigner,软件开发过程的一知半解,到完成这个系统的基本设计,虽然这个系统还存在这样那样的缺点,但是我在专业知识方面学到的东西是非常多的。而设计过程中也遇到了很多的困难,在老师和同学的帮助之下最终我还是克服了困难完成了设计。这个过程更使我学到了面对困难应该持有的积极态度。

总的来说,这次的课程设计是非常有意义的,在我的人生学习的路上起到了一个里程碑的作用,让我有一个质的飞跃!

衷心感谢何老师给予我们这次机会,让我们对软件的开发过程还是对程序的编写步骤都有了更加深刻的认识。

9.参考文献

[1] 杨文龙 《软件工程》,电子工业出版社,

[2] 张国藩,《软件工程》。北京:清华大学出版社,

[3] 郑人杰 殷人昆 陶永雷, 《实用软件件工程》. 清华大学出版社,2001

[4] 萨师煊 王珊,《数据库系统概论》,高等教育出版社2003

[5] 丁宝康,《数据库原理》,经济科学出版社,2000

[6] 林福泉,《SQL Server 中小企业实务应用》,中国铁道出版社,2002

[7] 杨昭,《PowerDesigner对象与控件技术详解》,中国水利水电出版社,2003

[8] 周红芳,《PowerDesigner基础应用与系统开发》,电子工业出版社,

[9] 刘斌 卞慧,《PowerDesigner入门与提高》,中国铁道出版社,2003

[10] 薛华成,《管理信息系统》,清华大学出版社,2002

[11] 汤庸 叶小平汤娜,《数据库理论及应用基础》,清华大学出版社,2004

[12] MSDN - Microstft Developers"NetWork Microstft

Microstft 编著

[13] 谭桂华 魏亮,《Visual C# 高级编程范例》,清华大学出版社

[14] 章立民,《用实例学,电子工业出版社