项目进度跟踪管理系统毕业设计(论文)

项目进度跟踪管理系统毕业设计

(论文)

摘 要

项目管理是一项复杂的工程,尤其是对于一些中小企业,没有科学的管理手段很难实现对项目有效的管理。而项目跟踪管理系统(PTS),将可以提高企业管理的科学化水平和信息化水平,从而可以达到对项目的科学有效的管理。 本文结合项目跟踪管理系统的国内外发展和应用现状,通过对系统的需求分析和可行性分析,以JAVA为开发技术,详细说明了项目进度跟踪管理系统的设计与实现过程。该系统具有项目任务管理和BUG管理的功能,实现了客户项目沟通及其管理层对项目进度的控制和对员工日常工作的监督与考核。

本系统使用MyEclipse作为开发工具,使用Java为开发语言,Sqlserver为数据库。开发简单,而且维护起来比较方便,它的风格类似于C++,从某种意义上来讲,Java是对C++去粗取精加以改良的结果。而且Java预言师完全面向对象的,完全的区别于C++的“半面向对象”。它是健壮的,源自强类型检查和自我内存管理。最重要的一点保证是:Java的安全体系架构稳定。Java代码是解释执行的,与平台无关。Java语言是多线程的,简而言之就是为一项任务多点开工。Java允许程序动态地装入运动中所需要的类。

关键词:项目跟踪管理(PTS) 任务管理 BUG管理

ABSTRACT

The project management is a complicated engineering, particularly for some

small business enterprises. It is difficult to efficiently carry out managing the project without scientific management means. However, the project following the system PTS, will be able to raise the scientific level and information-based level of the management of business enterprises, and can attain thus a valid management to science of the project.

This thesis mainly expounds the system’s design and process while elaborating

on Corporation, by combining IT projects to follow a management system of domestic and international development and application present condition, passing the need of analysis to the system and viability assessment, The system has a project task management and BUG management, realize customer project communication and its management to the project schedule control and supervision of the daily work of staff and evaluation.

Task management system this MyEclipse use as a development tool, use Java

language for development, Sqlserver database for. and achieves the goal facilitating communication between customers and workers, strengthening the management and controlling the progress of the daily work of supervision and evaluation. The most important guarantee is: the security system of Java architecture stability.Java language is multi-thread, in a word, is for a task more commenced.

Key words:project tracking system(PTS) task management BUG

management

目 录

1 前 言 ................................................................................................................ 1

1.1 开发背景 ...................................................................................................................... 1

1.2 国内外研究现状 ........................................................................................................ 1

1.3 系统设计目标 ............................................................................................................. 2

2 系统开发所采用的技术 .................................................................................... 3

2.1 JSP技术 ......................................................................................................... 3

2.2 MVC 架构 ........................................................................................................ 3

2.3 SQL Server ..................................................................................................... 3

2.4 Tomcat ............................................................................................................ 4

3 项目进度跟踪管理系统需求分析 ................................................................. 5

3.1 系统可行性分析 ............................................................................................ 5

3.1.1 技术可行性.......................................................................................... 5

3.1.2 经济性.................................................................................................. 5

3.1.3运行可行性........................................................................................... 5

3.2 系统功能性需求分析 .................................................................................... 5

3.2.1系统功能描述....................................................................................... 5

3.2.2 系统业务流程...................................................................................... 6

3.3 系统各模块用例模型分析 ............................................................................ 7

3.3.1 用例模型整体描述.............................................................................. 7

3.3.2 各功能模块用例描述.......................................................................... 7

3.4 系统开发环境 .............................................................................................. 11

4 概要设计 .............................................................................................................. 12

4.1 系统架构原则 .............................................................................................. 12

4.2 系统的功能结构设计 .................................................................................. 12

4.2.1 执行者管理模块设计........................................................................ 12

4.2.2 项目阶段管理模块设计.................................................................... 13

4.2.3 BUG信息管理模块设计..................................................................... 13

4.2.4 项目任务管理模块设计.................................................................... 14

4.2.5 系统管理模块设计............................................................................ 14

4.3 系统类图 ...................................................................................................... 15

4.4 数据库设计 .................................................................................................. 16

5 详细设计 .............................................................................................................. 18

5.1 项目阶段管理模块 ...................................................................................... 18

5.1.1 添加项目阶段.................................................................................... 18

5.1.2 管理项目阶段.................................................................................... 19

5.2 BUG信息管理模块 ....................................................................................... 20

5.2.1 添加BUG信息.................................................................................... 21

5.2.2 查询、删除BUG信息........................................................................ 21

5.3 项目任务管理模块 ...................................................................................... 24

5.3.1 添加项目任务.................................................................................... 24

5.3.2 修改、删除项目任务........................................................................ 25

6 测试结果及运行效果 ....................................................................................... 27

6.1 测试概论 ...................................................................................................... 27

6.2 项目进度跟踪管理系统采用的测试方法 .................................................. 27

6.2.1 黑盒测试............................................................................................ 27

6.2.2 白盒测试............................................................................................ 27

6.3 项目进度跟踪管理系统具体测试 .............................................................. 28

6.3.1 系统登录功能的测试........................................................................ 28

6.3.2 添加管理员信息的测试.................................................................... 29

结 论 ................................................................................................................... 30 谢 辞 ................................................................................................................... 31 参考文献 ................................................................................................................... 31 附 录 ................................................................................................................... 32

1 前 言

随着计算机的日益普及和网络的发展,数据库的应用范围越来越广,数据库应用的功能也越来越强,因此编写管理信息系统应用程序也显得尤为重要,在强调管理,强调信息的现代社会中它变得越来越普及。

中国IT软件企业目前主要的管理方式是以“项目”为主的,项目管理水平参差不齐,绝大多数IT软件企业或多或少地存在“项目黑洞”:项目无法按期完成,项目工作难以协调,用户需求经常变动,工作质量难以保证。特别是,对于中小软件开发企业目前面临着用户需求变化快,开发周期短,资金周转困难,开发队伍不稳定,技术延续性差等诸多问题困扰。像大的软件开发企业进行CMM,ISO9001认证,并实施较完善项目过程管理和质量控制,无论从认证成本和实施成本都是中小软件开发企业难以承受的。

国外已有完整的软件帮助项目经理监控项目,但由于国内此方面还未完全进入正规,已有软件对于项目经理来说,过于复杂,而“项目跟踪管理系统”,它是根据软件设计思想,简化的项目跟踪工具,也是促进项目管理正规化的工具。

1.1 开发背景

在过去,各行各业往往都有不少管理人员孤立地看待数据处理和计算机。造成这种看法的原因是,数据处理和信息服务人员不愿使用容易被计算机用户理解的语言同用户进行交替。管理人员对这种交流缺乏兴趣和无能为力,导致延缓了计算机西听的开发,从而在许多其他方面助长了自守和冗余劳动的现象。

一个值得深思的事实是,到2006年底为止,已经信息化的企业在IT(Information Technology,信息技术)的投资超过了未信息化企业在IT的投资。这意味着什么?

这意味着IT项目的投资已经由厂商驱动向用户驱动转变,以往什么利润高IT厂商就说什么好,用户低着头掏腰包的时代过去了。现在大多数的用户都经历过信息化,或成功过,或失败过,经验教训都有了许多。用户更加重视企业信息战略的规划、IT投资的实实在在的效益。

能够为用户提供IT能力的厂商如雨后春笋般成长,这些企业为了生存,竞争手段花样百出,竞争也日趋白热化。那么,作为IT企业,要想在竞争的市场上持续发展,就必须提高自己核心竞争力。IT企业的竞争力体现在两方面:一是IT解决方案的技术水平;一是IT项目的实施能力。相对于前者,后者在短期提高利润方面更能显示出威力。因为项目管理水平的提高,意味着项目能得到更好地控制。成本能得到更多的节约,人力资源能得到更加合理的安排,客户的需求能得到更好地满足。

1.2 国内外研究现状

观察当今国内外众多的企业人力资源管理系统,不难看出这些系统可以是人工的或

基于计算机的,独立的或是综合的,成批处理的或联机的。通常的信息系统是上述各种类型的组合。当然它不能即是独立的有是综合的。

独立的系统是为了满足某个特定的应用领域(例如项目进度跟踪管理系统)而设计的,独立系统有它自己的文件或数据库系统。

以人工系统为基础已经开发出各种各样的计算机信息系统。到目前为止,在进行人工“计算机化”时,仍然缺乏设计经验和缺少信息服务人员与用户之间的交流。也就是说,基于计算机的系统的工作流程直接借签了人工系统的工作流程。通常这些系统是独立的,而且把计算机仅仅用作为数据处理机。在设计这些系统时,很少考虑到最终要将它们综合的意图。

在每个社会团体的每个专业领域都能发现数据处理系统或信息系统的潜力。下面我们按社会团体列举出这些实行计算机化的专业或应用领域。对于某种程度在专业上相近的系统多数可以综合在一起(例如,工资,会计和人事)。

1.3 系统设计目标

通过调查,根据项目管理的基本需求,一个项目运作的完整的系统需要完成以下功能:

详细的项目信息管理、项目进度管理信息、执行项目人员情况、项目任务管理、项目BUG管理、提供系统用户管理功能。

介于时间和能力因素,本系统只实现详细项目信息管理、项目进度管理信息、执行项目人员的调动情况管理和系统用户管理功能四个功能。

2 系统开发所采用的技术

系统开发的技术在软件开发过程中是至关重要的一个环节,它将直接决定软件开发的成败问题。因此在软件开发之前一定要进行方案论证这一步,从多个可供选择的方案中选择出确实可行的最佳方案。

2.1 JSP技术

JSP全称是JavaServer Pages,它是一种基于Java的脚本技术。在JSP的众多优点之中,其中之一是它可以将HTML编码从Web页面的业务逻辑中有效地分离。用JSP访问可重用的组件,比如Servlet、JavaBean和基于Java的Web应用程序。它还支持在Web页面之中直接嵌入Java代码。可以用两种方法来访问JSP文件:浏览器发送文件请求、发送至Servlet的请求。

JSP文件扩展名为.jsp,可以包含指令、Class-wide变量和方法、直接插入的Java代码、访问JavaBean、变量数据的HTML模型、变量数据的Java表达式的组合。使用JSP指令来指定所使用的脚本语言、Servlet实现的接口、Servlet扩展的类和Servlet导入的软件包。Class-wide变量和方法一般使用和标记说明Servlet类得class-wide方法。JSP对javabean的支持使能通过Web站点重复使用组件。可以在JSP文件的标记间直接嵌入任何有效的Java语言代码。这样嵌入的代码称为scriptlet.当页面被返回给浏览器时,应用服务器HTML模板语法使您可以把变量字段放在页面上。并且使Servlet和JavaBean可利用数据库的值动态替换变量。当处理文件时,要指定分解一个Java语言表达式,请用JSP表达式标记。该表达式被评估和转换成一个字符串加以显示

2.2 MVC 架构

MVC是一个叫Xerox PARC的人,在八十年代为Smalltalk-80编程语言所发明的一种软件设计模式。MVC既不是Java特有的设计思想,也不是Web应用所特有的思想,它是所有面向对象程序设计语言都应该遵守的规范。

MVC思想将一个应用分成三个基本的部分:Model-->模型、View-->视图、Controller-->控制。这三个部分以最少的耦合协同合作,来达到提高应用的可扩展性及可维护性。MVC被广泛应用,其主要是因为以下3个优点:1、各有各的应用,相互不冲突。2、对开发项目的分工十分有利。3、对于组件的重组也非常有利。

2.3 SQL Server

SQL(Structured Query Language)结构化查询语言,是数据库查询和程序设计语言,用于存取数据及查询、更新和管理关系数据库系统。

由于如今Windows操作系统占领主导地位,选择SQL一定会在兼容性方面取得一些优势。另外,SQLServer除了具有扩展性可靠性以外,还具有可迅速开发新的因特网系

统功能。尤其是它可直接存储XML数据,可以将搜索结果以XML格式输出等特点。有利于构建异构系统的互操作性,奠定了面向网络的企业应用和服务的基础。

如今的商业环境要求不同类型的数据库解决方案。性能、可伸缩性以及可靠性是基本要求,而进入市场时间也非常的关键。除了可信企业品质外,SQLServer 2000还为数据管理与分析带来了灵活性,可以让单位在快速变化的环境中从容响应,从而获取竞争优势。

它还提供了以Web标准为基础的扩展数据编程功能,丰富的XML和Internet标准支持可以让您使用内置的存储过程以XML格式轻松存储和检索数据。您还可以用XML更新程序,容易的插入和更新以及删除数据。

2.4 Tomcat

Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一核心项目,有了Sun的加入和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。

与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和JSP文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和JSP或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。

Tomcat也可与其它的一些软件集成起来实现更多功能,如JBoss集成起来开发EJB和Cocoon集成开发基于Xml的应用。Tomcat确实是一个很好的工具,不仅是因为它的免费,功能强大,更因为它的开放性。

3 项目进度跟踪管理系统需求分析

3.1 系统可行性分析

3.1.1 技术可行性

本系统使用MyEclipse作为开发工具,使用Java为开发语言,Sqlserver为数据库。开发简单,而且维护起来比较方便,Java语言简单的风格类似于C++,从某种意义上来讲,Java是对C++去粗取精加以改良的结果。而且Java预言师完全面向对象的,完全的区别于C++的“半面向对象”。它是健壮的,源自强类型检查和自我内存管理。最重要的一点保证是:Java的安全体系架构稳定。Java代码是解释执行的,与平台无关。Java语言是多线程的,简而言之就是为一项任务多点开工。Java允许程序动态地装入运动中所需要的类。

3.1.2 经济性

随着我国改革开放的不断深化和社会主义市场经济日趋完善,我国企业面临着前所未有的巨大挑战。特别是软件行业,如何提高自身的软件开发能力,完善软件开发流程已经成为每个软件企业的必修课。因此项目管理作为现代组织发展过程中的一种重要管理手段,越来越受到人们的重视。一个项目的运行要考虑到成本/效益,软件开发成本基本上是可以忽略,效益看网上使用率以及实际用户的数量。成本/效益≥1表示没有亏损。支出 、效益、收益/投资比、投资回收周期,其次是在使用过程中的一些维护数据库的费用。该系统可以很好的部署在公司或者互联网上,用户可以随时登陆系统进行查询正在进行的项目信息,可以随时掌握最新的项目动态,对项目的开发起到一定的帮助作用,提高项目的开发规范和实用性提供很好的方便。

3.1.3运行可行性

因为在公司开发项目的过程中,可能存在着项目信息处理量大,耗费时间长,出错率高等情况。在本系统投入使用后,可以对所开发的项目进行有效的管理,整合、处理开发中所遇到的各种问题,提高工作效率。

项目进度跟踪管理系统属于自主开发设计,因此不会构成侵权,在法律上是可行的。本系统的界面友好,操作简单,操作配置不高,使用人员极易上手。

3.2 系统功能性需求分析

3.2.1系统功能描述

(1)执行者模块

系统就是让管理员可以对执行者信息进行管理。

①添加执行者信息

管理员可以在进行添加,这样登录系统后可以对执行者信息进行操作,管理等。 ②修改执行者信息

管理员登陆后,可以对执行者信息进行修改操作。

③删除执行者信息

管理员可以删除执行者信息。

(2)项目阶段模块

管理员对项目阶段进行添加,删除,修改等管理。

(3)BUG信息模块

管理员对BUG信息进行添加,删除,修改等管理。

(4)项目任务模块

管理员对任务信息进行添加,删除,修改等操作。

(5)系统管理模块

管理员对用户信息进行添加,删除,修改等操作。

3.2.2 系统业务流程

为方便用户使用本系统,系统采用JSP技术编写。使用用户需通过网页输入正确的用户名和密码登陆本系统,只有当用户输入的用户名和密码都正确时,系统会自动跳转到系统主页。此时用户可以根据自己所做项目的需要来选择不同的系统业务进行操作,例如:注册用户,修改项目阶段信息,删除BUG信息等。用户在使用完本系统之后,点击“系统退出”即可退出本系统。如图3-1所示,为本系统的系统业务流程图。

图3-1 系统业务流程图

3.3 系统各模块用例模型分析 3.3.1 用例模型整体描述

本系统管理员登陆系统,可以对执行者信息,项目任务信息,项目阶段信息,BUG信息,系统信息进行管理,如图3-2所示。管理员可以对所有信息进行管理,并且处理用户信息的操作。

图3-2 整体用例图

3.3.2 各功能模块用例描述

(1)管理执行者

执行者管理的用例图如图3-3所示。

图3-3 执行者管理用例图

其用例描述如表3-1所示:

表3-1 执行者管理用例描述

(2)项目阶段管理

管理项目阶段的用例如图3-4所示:

图3-4管理项目阶段用例图

用例描述如表3-2所示:

表3-2 项目阶段管理

(3)BUG信息管理

一个项目在开发的过程中,无论开发人员怎样的避免,都会出现BUG,这时就需要管理人员对其进行管理。管理员对BUG信息管理的用例图如图3-5所示:

图3-5 BUG信息管理用例

其用例描述如表3-3所示:

表3-3 BUG信息管理

(4)项目任务管理

管理员对项目任务管理的用例图如图3-6示:

图3-6 项目任务管理用例

其用例描述如表3-4所示:

表3-4 任务管理

(5)系统管理

管理员对系统管理的用例图如图3-7所示:

图3-7 系统管理用例

其用例描述如表3-5所示:

表3-5 系统信息管理

3.4 系统开发环境

硬件环境:Intel(R)Pentium(R)processor2.00GHZ/1024MB/40G/ 软件环境:Microsoft MyEclipse6.0/Microsoft SQL Server 2000sp4

4 概要设计

4.1 系统架构原则

软件设计是一种极度富有创造性的过程,对某些设计者来说她们可能需要一定的资质,而最后设计通常都是由一些初步设计演变来而的。这些只是在书本上学不会设计,只能通过实践,通过对实际情况的研究和实践才能学会。对于高效的软件工程,良好的设计是关键,一个设计得好的系统应该能直接实现和易于维护、易懂和可靠的。设计得不好的系统,尽管可以工作,但很可能维护起来花费多、测试困难和不可靠,因此,设计阶段是一个软件开发过程中最重要的阶段。

项目进度跟踪管理系统由系统管理模块、执行者管理模块、项目阶段管理模块、项目任务管理模块、项目BUG管理模块5个主要部分组成,规划系统功能模块如下:

系统管理模块:该模块主要是登陆系统的管理员对本系统用户的管理。 执行者管理模块:该模块主要是对项目参加人员调动信息进行管理。

项目阶段管理模块:该模块主要功能是管理项目的各个阶段,对项目阶段实现添加、删除、修改以及查询的功能。

项目任务管理模块:该模块主要是是开发人员明确项目开发的情况,以便更加合理的进行项目开发。

项目BUG管理模块:该模块主要是对项目出现的BUG进行添加、删除、修改以及查询等的管理。

系统结构如图4-1所示:

图4-1系统体系结构图

4.2 系统的功能结构设计 4.2.1 执行者管理模块设计

(1)功能设计

本模块的最主要功能就是建立执行者信息,添加,删除和修改执行者信息。经过处理,管理员可以登陆系统,对执行者信息进行处理,增加,删除,修改等操作。

(2)功能结构图

执行者信息模块的功能结构图,如图4-2所示。用户对系统的执行者信息进行管理,如果操作成功,则提示,否则失败。

图4-2执行者信息模块功能结构图

4.2.2 项目阶段管理模块设计

(1)功能设计

本模块主要是对系统的项目阶段信息进行管理,对项目阶段信息进行删除、修改等操作。

(2)功能结构图

项目阶段管理模块的功能结构图,管理员登陆系统,可以对项目阶段管理模块进行删除和修改等操作,管理员可以在列表界面对项目阶段进行查询等操作。如图4-3所示:

图4-3 项目阶段管理模块功能结构图

4.2.3 BUG信息管理模块设计

(1)功能设计

本模块主要是实现对BUG信息的增加,删除和修改等操作,用户可以在列表界面对BUG信息进行查询等操作。

(2)功能结构图

BUG信息模块的功能结构图,如图4-4所示:

图4-4 BUG信息模块功能结构图

4.2.4 项目任务管理模块设计

(1)功能模块

管理登陆系统后,可以对项目任务信息进行维护,修改,删除等操作。 (2)功能结构图

项目任务信息模块的功能结构图,管理员登陆系统,对任务信息进行维护,可以对任务信息进行维护,修改,删除等。如图4-5所示:

图4-5 项目任务信息功能结构图

4.2.5 系统管理模块设计

(1)功能模块

管理登陆系统后,可以对系统信息进行维护,修改,删除等操作。 (2)功能结构图

系统信息模块的功能结构图,管理员登陆系统,可以对系统信息进行维护,修改,删除等。如图4-6所示:

图4-6 系统信息功能结构图

4.3 系统类图

类图说明:

用户类:对用户的信息进行存储。 项目阶段类:对项目阶段信息进行存储。 执行者类:对项目执行者进行处理,并存储信息。 项目任务类:对项目任务信息进行存储,增加,删除等。

BUG类:对项目开发中遇到的BUG信息进行存储,增加,删除以及查询等操作。 本系统是一个项目进度跟踪系统,管理员可以对项目进度跟踪信息进行查看,管理员登陆后台对项目进度信息进行处理,处理信息后,完成。

系统类图如图4-7所示:

图4-7 系统类图

4.4 数据库设计

基于以上所提出的系统的所有功能,设计出了以下的数据库的表的结构,给用户处理。

表4-1 用户信息表

表4-4 项目执行者表

表4-5 项目任务信息表

5 详细设计

本系统界面使用JSP技术开发,因此主页画面简洁,使用的用户要先输入正确的用户名和密码才可登陆到本系统主页。登陆后的系统主页如图5-1所示,主页的左侧为系统菜单列,用户可以在此操作本系统对相关的项目进行管理操作。

图5-1 系统主界面

5.1 项目阶段管理模块

该模块可以对项目阶段信息进行增加,删除和修改等操作。 5.1.1 添加项目阶段

用户进入本系统后,点击“添加项目阶段”,输入想要添加项目阶段,确认后点击“提交”按钮,系统会弹出一个对话框提示用户添加操作成功。如果用户对输入的信息感到不满意,可点击“重置”按钮,将信息清掉重新输入。界面情况如图5-2所示:

图5-2 添加项目阶段

该模块所用到主要代码如下: /** * 增加 * @return */

public int AddComType(ComType com) { }

String SqlSr=

* @param userInfo

5.1.2 管理项目阶段

用户进入本系统后,点击“管理项目阶段”,可以进入到项目阶段信息的管理界面,对已有的项目阶段进行修改以及删除的操作。界面信息如图5-3所示:

图5-3 管理项目阶段

该模块所用到主要代码如下: }

5.2 BUG信息管理模块

一个项目在开发阶段免不了出现各种问题,有些是可预知的,而有些则不然。本系统提供了一个BUG信息管理模块给开发人员,开发人员可以对开发中项目所出现的BUG信息进行添加、查询以及删除等操作。

/** * 修改

* @param userInfo * @return */

public int UpdateComType(ComType com) {

int i=1;

String SqlStr=

5.2.1 添加BUG信息

用户进入本系统后,点击“添加BUG信息”,首先选择BUG所在的项目阶段,然后输入想要添加的BUG信息,和提出人信息,确认后点击“提交”按钮。添加成功,如图5-4所示:

图5-4 添加BUG信息

其主要实现代码如下:

public int AddInfo (BugInfo com){

String SqlSr=

insert into BugInfo(score,teamid,ying,shu,ping,typeid) values(?,?,?,?,?,?)

user[]={com.getScore(),com.getTeamid(),com.getYing(),com.getShu(),com.getPing(),com.getTypeid()};

int j=DBManager.ExcuteUpdate(SqlSr, user); return j;

5.2.2 查询、删除BUG信息

(1)查询BUG信息

用户进入本系统后,点击“查询BUG信息”,按照项目出现的BUG内容以及提出人进行查询,确认后点击“查询”按钮。如图5-5所示:

图5-5 查询BUG信息

其主要实现代码如下: /** * 取得所有 * @return */

public ArrayList SelectAllScoreInfo() {

ArrayList comtype = new ArrayList (); String SqlStr=

while(rs.next()) {

ScoreInfo userInfo=new ScoreInfo(); userInfo.setId(rs.getInt(1));

userInfo.setScore(rs.getString(2)); userInfo.setTeamid(rs.getInt(3)); userInfo.setYing(rs.getString(4)); userInfo.setShu(rs.getString(5)); userInfo.setPing(rs.getString(6));

}

userInfo.setTypeid(rs.getInt(7)); comtype.add(userInfo); }

} catch (SQLException e) { }

return comtype;

e.printStackTrace();

(2)删除BUG信息

在项目出现BUG后开发人员除了提出BUG信息,还要着手解决。本系统还提供BUG信息删除的功能。用户进入本系统后,点击“管理BUG信息”,会出现已经提交的项目BUG信息,用户点击“删除”,系统会提示用户是否确定删除所选的内容,如图5-6所示:

图5-6 确认删除BUG信息

用户可以根据自己项目的BUG解决情况,选择“确定”还是“取消”。一旦确定,系统会从数据库中删除所选的BUG信息,并提示操作成功。如图5-7所示:

图5-7 删除BUG信息成功

5.3 项目任务管理模块

该模块主要是对项目任务信息进行管理,主要进行增加,删除,修改等操作。 在此模块中,管理员可以对项目任务基本信息进行修改,新增,如果想删除,则进行删除确认,信息自动从数据库中删除。 5.3.1 添加项目任务

用户进入本系统后,点击“添加项目任务”,输入想要添加的项目任务信息,确认后点击“提交”按钮。如图5-8所示:

图5-8 添加项目任务

其主要代码如下: /**

* 增加项目信息 * @param userInfo * @return */

public int AddCompet(Compet com) { }

String SqlSr=

int j=DBManager.ExcuteUpdate(SqlSr, user); return j;

user[]={com.getComname(),com.getScore(),com.getRound(),com.getTypeid()};

5.3.2 修改、删除项目任务

用户进入本系统后,点击“管理项目任务”,按照项目任务执行人查询,确认后点击“查询”按钮。如图5-9所示:

点击“修改”按钮,调用update方法,把数据更新到本数据库中。

点击“删除”按钮,弹出是否要删除提示信息,调用delete方法,把数据更新到本数据库中。

图5-9 管理项目任务

其主要实现代码如下:

public int UpdateCompet(Compet com){

int i=1;

String SqlStr=

id=?

Object

user[]={com.getComname(),com.getScore(),com.getRound(),com.getTypeid(),com.getId()};

i=DBManager.ExcuteUpdate(SqlStr, user); return i;

}

public void DeleteCompet(String id) { }

String Sqlstr=

DBManager.ExcuteUpdate(Sqlstr, user);

6 测试结果及运行效果

6.1 测试概论

软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。通俗地讲,软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码进行最终复审的活动。

1983年IEEE提出的软件工程术语中给软件测试下的定义是:“使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别”。这个定义明确指出:测试的目的就是发现软件中的各种缺陷,测试只能证明软件存在缺陷,不能证明软件不存在缺陷。测试可以使软件中缺陷降低到一定程度,而不是彻底消灭。以较少的用例、时间和人力找出软件中的各种错误和缺陷,以确保软件的质量当设计工作完成以后,就应该着手测试的准备工作了,一般来讲,由一位对整个系统设计熟悉的设计人员编写测试大纲,明确测试的内容和测试通过的准则,设计完整合理的测试用例,以便系统实现后进行全面测试。

6.2 项目进度跟踪管理系统采用的测试方法

6.2.1 黑盒测试

黑盒测试(Black-box Testing),它又叫做功能测试或者是数据驱动测试,它是把被测试者看做是一个黑盒子。利用黑盒测试的方法进行动态测试时,需要测试软件的功能,不需要测试软件产品的内部结构。它主用于测试软件功能性的需求,即是黑盒测试使软件工程师排除执行程序所有功能需求的条件。它不是白盒测试的替代品,而是用于辅助白盒测试发现别的类型的错误。

6.2.2 白盒测试

白盒测试也叫做结构测试或者叫做逻辑驱动测试,它主要是知道了产品内部工作的过程,可以通过测试来看产品内部的动作是不是按照规格说明书中所说的规定正常进行的,是按照程序内部的结构来测试程序,检验程序中的每条通路是不是都能按照预定的要求进行正确的工作,而不是考虑它的功能怎样,它的主要方法包括了逻辑驱动、基路测试等等,它主要用于给软件的验证。它全面地了解程序内部逻辑结构、对所有地逻辑路径进行测试。“白盒”穷举路径测试。在用白盒测试这一方案时,测试者必须检查程序内部结构,从检查程序的逻辑入手,从而得出了需要测试的数据。所以采用的是黑盒测试。

6.3 项目进度跟踪管理系统具体测试

6.3.1 系统登录功能的测试

(1)系统登录成功

测试系统的登录模块:用正确账号密码进行登录,对系统进行测试。

测试用例:在首页登陆栏填写正确的账号,查看运行的结果。

测试结果:登陆成功,如图6-1所示:

图6-1 系统登录成功图

(2)系统登录失败

测试系统的登录模块:用错误的账号密码进行登录,对系统进行测试。

测试用例:在首页登陆栏填写错误的账号,查看运行的结果。

测试结果:登录失败,如图6-2所示:

图6-2 系统登录失败图

6.3.2 添加管理员信息的测试

(1)添加管理员信息成功

测试景点模块:正确输入管理员信息。

测试用例:在添加界面,正确的输入需要添加的管理员信息:点击“确认”按钮,查看结果。

测试结果:添加成功,如图6-3所示:

图6-3 添加成功

(2)添加管理员信息失败

测试模块:添加管理员信息模块。

测试用例:在添加管理员界面,输入错误名称,确认之后查看结果。

测试结果:添加失败 。如图6-4所示:

图6-4 添加失败

结 论

现今的社会是一个信息大爆炸的时代,电脑已经被普遍用于社会的各个领域。其中有着各种由不同公司所开发的软件,这些软件在人们的日常生活中起到了关键的作用。而软件的开发是一项耗时费力的工程,有时它需要一个公司投入大量的人力、物力和时间,而且软件在开发过程中很容易出错,这时就需要一个好的软件项目规划系统来时刻监督开发的进程,提醒开发者项目的进度情况。本文主要研究了项目进度跟踪管理系统的设计与实现。本次论文研究的内容主要包括:

(1)分析研究了本课题的开发背景、目的和研究意义。

(2)对此次毕业设计进行了详尽的分析设计,包括关键技术介绍、系统设计规范介绍、系统内容结构设计介绍等。

(3)对系统中各个主要功能进行了详细的说明。

(4)介绍了系统的使用方法并进行了系统功能的测试。

本论文主要描述了项目进度跟踪管理系统的主要功能是:系统管理,项目执行者管理,项目阶段信息,BUG信息管理,项目任务管理。

经过这次课题的设计并实现,尽管会遇到很多难题,但是让能收益的就是在这次题目中得到的经验、新的和锻炼。我发现开发项目的过程其实就是一个不断的提出问题然后解决问题的过程。在本次课题的编写代码部分,本人就参照了《JAVA核心技术》,从中得到了程序编程的很多有用的方法。这次课程的设计给我以前所学的知识做了一个总结,为我深入学习编程做了铺垫。在本课题中存在的不足之处是在所难免的,本人将在日后更加改进。

由于时间,以及对工具的使用并不熟悉等原因,我设计的项目进度跟踪管理系统虽然完成了大部分功能,可是还存在着一些问题有待解决,系统设计的还不够精致,同时也存在着很多的不足与缺陷,这还需要我在以后得学习中加以改进,希望以后可以做的更加成功。

谢 辞

经过半年的忙碌和工作,本次毕业设计已经接近了尾声,作为一个本科学生的毕业设计,由于的经验匮乏,使我难免有许多考虑的不是很周全的地方,如果没有老师以及老师的督促与指导,以及一起生活、学习的同学的支持,很难想象我会完成这个设计。

在这里我要深深地感谢的我导师。老师平日里工作繁多,但是在我们做毕业设计的每个阶段,老师们每周都挤出足够的时间为我们讲解答疑,从开始使得开题报告,到中期的程序检查,后期论文的审核,整个过程中都给予我了悉心的指导。老师们的严谨治学和科学研究的精神是永远值得我们学习并且将积极影响我今后的学习和工作。

然后还要感谢大学四年来所有的老师,为我打下了计算机、Java专业知识的基础;同时还要感谢我的家人以及所有关心我的同学和朋友们,正式因为有了大家的支持和鼓励,我才能顺利完成此次设计。谢谢你们,我会继续努力。

最后还要感谢我的母校,四年来给我如此好的大学生活环境,和对我的大力栽培,让我大学四年的经历永远难忘。

参考文献

[1] 耿祥义.JSP实用教程.北京清华大学出版社.2003

[2] Cornel Horstman.Core Java第3版.Prentice-Hall.1997

[3] 叶核亚.Java程序设计实用教程.北京电子工业出版社.2003

[4] 张桂珠.Java面向对象程序设计.北京邮电大学出版社.2007

[5] 周颢.网络编程语言JSP实例教程.电子工业出版社.2002

[6] 王国辉.JSP数据库系统开发完全手册.北京人民邮电出版社.2006

[7] 吴斌.SQL Server应用与提高.科学出版社.2002

[8] Bruce Eckel.Java编程思想.北京机械工业出版社.2004

[9] Kevin.JSP站点设计编程指南[M].电子工业出版社.2002

[10] 汪孝宜.JSP数据库开发实例精粹.电子工业出版社.2005

[11] Elliote.Java Network Programming.O'Reilly.1997

[12] Harvey.Java How to Program.北京机械工业出版社.2002

[13] 万峰.JSP网站开发四酷全书.电子工业出版社.2005

附 录

以下的代码是用户注册界面的源码:

response.setContentType(

if(j>0) { out.print(

项目进度跟踪管理系统毕业设计

(论文)

摘 要

项目管理是一项复杂的工程,尤其是对于一些中小企业,没有科学的管理手段很难实现对项目有效的管理。而项目跟踪管理系统(PTS),将可以提高企业管理的科学化水平和信息化水平,从而可以达到对项目的科学有效的管理。 本文结合项目跟踪管理系统的国内外发展和应用现状,通过对系统的需求分析和可行性分析,以JAVA为开发技术,详细说明了项目进度跟踪管理系统的设计与实现过程。该系统具有项目任务管理和BUG管理的功能,实现了客户项目沟通及其管理层对项目进度的控制和对员工日常工作的监督与考核。

本系统使用MyEclipse作为开发工具,使用Java为开发语言,Sqlserver为数据库。开发简单,而且维护起来比较方便,它的风格类似于C++,从某种意义上来讲,Java是对C++去粗取精加以改良的结果。而且Java预言师完全面向对象的,完全的区别于C++的“半面向对象”。它是健壮的,源自强类型检查和自我内存管理。最重要的一点保证是:Java的安全体系架构稳定。Java代码是解释执行的,与平台无关。Java语言是多线程的,简而言之就是为一项任务多点开工。Java允许程序动态地装入运动中所需要的类。

关键词:项目跟踪管理(PTS) 任务管理 BUG管理

ABSTRACT

The project management is a complicated engineering, particularly for some

small business enterprises. It is difficult to efficiently carry out managing the project without scientific management means. However, the project following the system PTS, will be able to raise the scientific level and information-based level of the management of business enterprises, and can attain thus a valid management to science of the project.

This thesis mainly expounds the system’s design and process while elaborating

on Corporation, by combining IT projects to follow a management system of domestic and international development and application present condition, passing the need of analysis to the system and viability assessment, The system has a project task management and BUG management, realize customer project communication and its management to the project schedule control and supervision of the daily work of staff and evaluation.

Task management system this MyEclipse use as a development tool, use Java

language for development, Sqlserver database for. and achieves the goal facilitating communication between customers and workers, strengthening the management and controlling the progress of the daily work of supervision and evaluation. The most important guarantee is: the security system of Java architecture stability.Java language is multi-thread, in a word, is for a task more commenced.

Key words:project tracking system(PTS) task management BUG

management

目 录

1 前 言 ................................................................................................................ 1

1.1 开发背景 ...................................................................................................................... 1

1.2 国内外研究现状 ........................................................................................................ 1

1.3 系统设计目标 ............................................................................................................. 2

2 系统开发所采用的技术 .................................................................................... 3

2.1 JSP技术 ......................................................................................................... 3

2.2 MVC 架构 ........................................................................................................ 3

2.3 SQL Server ..................................................................................................... 3

2.4 Tomcat ............................................................................................................ 4

3 项目进度跟踪管理系统需求分析 ................................................................. 5

3.1 系统可行性分析 ............................................................................................ 5

3.1.1 技术可行性.......................................................................................... 5

3.1.2 经济性.................................................................................................. 5

3.1.3运行可行性........................................................................................... 5

3.2 系统功能性需求分析 .................................................................................... 5

3.2.1系统功能描述....................................................................................... 5

3.2.2 系统业务流程...................................................................................... 6

3.3 系统各模块用例模型分析 ............................................................................ 7

3.3.1 用例模型整体描述.............................................................................. 7

3.3.2 各功能模块用例描述.......................................................................... 7

3.4 系统开发环境 .............................................................................................. 11

4 概要设计 .............................................................................................................. 12

4.1 系统架构原则 .............................................................................................. 12

4.2 系统的功能结构设计 .................................................................................. 12

4.2.1 执行者管理模块设计........................................................................ 12

4.2.2 项目阶段管理模块设计.................................................................... 13

4.2.3 BUG信息管理模块设计..................................................................... 13

4.2.4 项目任务管理模块设计.................................................................... 14

4.2.5 系统管理模块设计............................................................................ 14

4.3 系统类图 ...................................................................................................... 15

4.4 数据库设计 .................................................................................................. 16

5 详细设计 .............................................................................................................. 18

5.1 项目阶段管理模块 ...................................................................................... 18

5.1.1 添加项目阶段.................................................................................... 18

5.1.2 管理项目阶段.................................................................................... 19

5.2 BUG信息管理模块 ....................................................................................... 20

5.2.1 添加BUG信息.................................................................................... 21

5.2.2 查询、删除BUG信息........................................................................ 21

5.3 项目任务管理模块 ...................................................................................... 24

5.3.1 添加项目任务.................................................................................... 24

5.3.2 修改、删除项目任务........................................................................ 25

6 测试结果及运行效果 ....................................................................................... 27

6.1 测试概论 ...................................................................................................... 27

6.2 项目进度跟踪管理系统采用的测试方法 .................................................. 27

6.2.1 黑盒测试............................................................................................ 27

6.2.2 白盒测试............................................................................................ 27

6.3 项目进度跟踪管理系统具体测试 .............................................................. 28

6.3.1 系统登录功能的测试........................................................................ 28

6.3.2 添加管理员信息的测试.................................................................... 29

结 论 ................................................................................................................... 30 谢 辞 ................................................................................................................... 31 参考文献 ................................................................................................................... 31 附 录 ................................................................................................................... 32

1 前 言

随着计算机的日益普及和网络的发展,数据库的应用范围越来越广,数据库应用的功能也越来越强,因此编写管理信息系统应用程序也显得尤为重要,在强调管理,强调信息的现代社会中它变得越来越普及。

中国IT软件企业目前主要的管理方式是以“项目”为主的,项目管理水平参差不齐,绝大多数IT软件企业或多或少地存在“项目黑洞”:项目无法按期完成,项目工作难以协调,用户需求经常变动,工作质量难以保证。特别是,对于中小软件开发企业目前面临着用户需求变化快,开发周期短,资金周转困难,开发队伍不稳定,技术延续性差等诸多问题困扰。像大的软件开发企业进行CMM,ISO9001认证,并实施较完善项目过程管理和质量控制,无论从认证成本和实施成本都是中小软件开发企业难以承受的。

国外已有完整的软件帮助项目经理监控项目,但由于国内此方面还未完全进入正规,已有软件对于项目经理来说,过于复杂,而“项目跟踪管理系统”,它是根据软件设计思想,简化的项目跟踪工具,也是促进项目管理正规化的工具。

1.1 开发背景

在过去,各行各业往往都有不少管理人员孤立地看待数据处理和计算机。造成这种看法的原因是,数据处理和信息服务人员不愿使用容易被计算机用户理解的语言同用户进行交替。管理人员对这种交流缺乏兴趣和无能为力,导致延缓了计算机西听的开发,从而在许多其他方面助长了自守和冗余劳动的现象。

一个值得深思的事实是,到2006年底为止,已经信息化的企业在IT(Information Technology,信息技术)的投资超过了未信息化企业在IT的投资。这意味着什么?

这意味着IT项目的投资已经由厂商驱动向用户驱动转变,以往什么利润高IT厂商就说什么好,用户低着头掏腰包的时代过去了。现在大多数的用户都经历过信息化,或成功过,或失败过,经验教训都有了许多。用户更加重视企业信息战略的规划、IT投资的实实在在的效益。

能够为用户提供IT能力的厂商如雨后春笋般成长,这些企业为了生存,竞争手段花样百出,竞争也日趋白热化。那么,作为IT企业,要想在竞争的市场上持续发展,就必须提高自己核心竞争力。IT企业的竞争力体现在两方面:一是IT解决方案的技术水平;一是IT项目的实施能力。相对于前者,后者在短期提高利润方面更能显示出威力。因为项目管理水平的提高,意味着项目能得到更好地控制。成本能得到更多的节约,人力资源能得到更加合理的安排,客户的需求能得到更好地满足。

1.2 国内外研究现状

观察当今国内外众多的企业人力资源管理系统,不难看出这些系统可以是人工的或

基于计算机的,独立的或是综合的,成批处理的或联机的。通常的信息系统是上述各种类型的组合。当然它不能即是独立的有是综合的。

独立的系统是为了满足某个特定的应用领域(例如项目进度跟踪管理系统)而设计的,独立系统有它自己的文件或数据库系统。

以人工系统为基础已经开发出各种各样的计算机信息系统。到目前为止,在进行人工“计算机化”时,仍然缺乏设计经验和缺少信息服务人员与用户之间的交流。也就是说,基于计算机的系统的工作流程直接借签了人工系统的工作流程。通常这些系统是独立的,而且把计算机仅仅用作为数据处理机。在设计这些系统时,很少考虑到最终要将它们综合的意图。

在每个社会团体的每个专业领域都能发现数据处理系统或信息系统的潜力。下面我们按社会团体列举出这些实行计算机化的专业或应用领域。对于某种程度在专业上相近的系统多数可以综合在一起(例如,工资,会计和人事)。

1.3 系统设计目标

通过调查,根据项目管理的基本需求,一个项目运作的完整的系统需要完成以下功能:

详细的项目信息管理、项目进度管理信息、执行项目人员情况、项目任务管理、项目BUG管理、提供系统用户管理功能。

介于时间和能力因素,本系统只实现详细项目信息管理、项目进度管理信息、执行项目人员的调动情况管理和系统用户管理功能四个功能。

2 系统开发所采用的技术

系统开发的技术在软件开发过程中是至关重要的一个环节,它将直接决定软件开发的成败问题。因此在软件开发之前一定要进行方案论证这一步,从多个可供选择的方案中选择出确实可行的最佳方案。

2.1 JSP技术

JSP全称是JavaServer Pages,它是一种基于Java的脚本技术。在JSP的众多优点之中,其中之一是它可以将HTML编码从Web页面的业务逻辑中有效地分离。用JSP访问可重用的组件,比如Servlet、JavaBean和基于Java的Web应用程序。它还支持在Web页面之中直接嵌入Java代码。可以用两种方法来访问JSP文件:浏览器发送文件请求、发送至Servlet的请求。

JSP文件扩展名为.jsp,可以包含指令、Class-wide变量和方法、直接插入的Java代码、访问JavaBean、变量数据的HTML模型、变量数据的Java表达式的组合。使用JSP指令来指定所使用的脚本语言、Servlet实现的接口、Servlet扩展的类和Servlet导入的软件包。Class-wide变量和方法一般使用和标记说明Servlet类得class-wide方法。JSP对javabean的支持使能通过Web站点重复使用组件。可以在JSP文件的标记间直接嵌入任何有效的Java语言代码。这样嵌入的代码称为scriptlet.当页面被返回给浏览器时,应用服务器HTML模板语法使您可以把变量字段放在页面上。并且使Servlet和JavaBean可利用数据库的值动态替换变量。当处理文件时,要指定分解一个Java语言表达式,请用JSP表达式标记。该表达式被评估和转换成一个字符串加以显示

2.2 MVC 架构

MVC是一个叫Xerox PARC的人,在八十年代为Smalltalk-80编程语言所发明的一种软件设计模式。MVC既不是Java特有的设计思想,也不是Web应用所特有的思想,它是所有面向对象程序设计语言都应该遵守的规范。

MVC思想将一个应用分成三个基本的部分:Model-->模型、View-->视图、Controller-->控制。这三个部分以最少的耦合协同合作,来达到提高应用的可扩展性及可维护性。MVC被广泛应用,其主要是因为以下3个优点:1、各有各的应用,相互不冲突。2、对开发项目的分工十分有利。3、对于组件的重组也非常有利。

2.3 SQL Server

SQL(Structured Query Language)结构化查询语言,是数据库查询和程序设计语言,用于存取数据及查询、更新和管理关系数据库系统。

由于如今Windows操作系统占领主导地位,选择SQL一定会在兼容性方面取得一些优势。另外,SQLServer除了具有扩展性可靠性以外,还具有可迅速开发新的因特网系

统功能。尤其是它可直接存储XML数据,可以将搜索结果以XML格式输出等特点。有利于构建异构系统的互操作性,奠定了面向网络的企业应用和服务的基础。

如今的商业环境要求不同类型的数据库解决方案。性能、可伸缩性以及可靠性是基本要求,而进入市场时间也非常的关键。除了可信企业品质外,SQLServer 2000还为数据管理与分析带来了灵活性,可以让单位在快速变化的环境中从容响应,从而获取竞争优势。

它还提供了以Web标准为基础的扩展数据编程功能,丰富的XML和Internet标准支持可以让您使用内置的存储过程以XML格式轻松存储和检索数据。您还可以用XML更新程序,容易的插入和更新以及删除数据。

2.4 Tomcat

Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一核心项目,有了Sun的加入和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。

与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和JSP文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和JSP或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。

Tomcat也可与其它的一些软件集成起来实现更多功能,如JBoss集成起来开发EJB和Cocoon集成开发基于Xml的应用。Tomcat确实是一个很好的工具,不仅是因为它的免费,功能强大,更因为它的开放性。

3 项目进度跟踪管理系统需求分析

3.1 系统可行性分析

3.1.1 技术可行性

本系统使用MyEclipse作为开发工具,使用Java为开发语言,Sqlserver为数据库。开发简单,而且维护起来比较方便,Java语言简单的风格类似于C++,从某种意义上来讲,Java是对C++去粗取精加以改良的结果。而且Java预言师完全面向对象的,完全的区别于C++的“半面向对象”。它是健壮的,源自强类型检查和自我内存管理。最重要的一点保证是:Java的安全体系架构稳定。Java代码是解释执行的,与平台无关。Java语言是多线程的,简而言之就是为一项任务多点开工。Java允许程序动态地装入运动中所需要的类。

3.1.2 经济性

随着我国改革开放的不断深化和社会主义市场经济日趋完善,我国企业面临着前所未有的巨大挑战。特别是软件行业,如何提高自身的软件开发能力,完善软件开发流程已经成为每个软件企业的必修课。因此项目管理作为现代组织发展过程中的一种重要管理手段,越来越受到人们的重视。一个项目的运行要考虑到成本/效益,软件开发成本基本上是可以忽略,效益看网上使用率以及实际用户的数量。成本/效益≥1表示没有亏损。支出 、效益、收益/投资比、投资回收周期,其次是在使用过程中的一些维护数据库的费用。该系统可以很好的部署在公司或者互联网上,用户可以随时登陆系统进行查询正在进行的项目信息,可以随时掌握最新的项目动态,对项目的开发起到一定的帮助作用,提高项目的开发规范和实用性提供很好的方便。

3.1.3运行可行性

因为在公司开发项目的过程中,可能存在着项目信息处理量大,耗费时间长,出错率高等情况。在本系统投入使用后,可以对所开发的项目进行有效的管理,整合、处理开发中所遇到的各种问题,提高工作效率。

项目进度跟踪管理系统属于自主开发设计,因此不会构成侵权,在法律上是可行的。本系统的界面友好,操作简单,操作配置不高,使用人员极易上手。

3.2 系统功能性需求分析

3.2.1系统功能描述

(1)执行者模块

系统就是让管理员可以对执行者信息进行管理。

①添加执行者信息

管理员可以在进行添加,这样登录系统后可以对执行者信息进行操作,管理等。 ②修改执行者信息

管理员登陆后,可以对执行者信息进行修改操作。

③删除执行者信息

管理员可以删除执行者信息。

(2)项目阶段模块

管理员对项目阶段进行添加,删除,修改等管理。

(3)BUG信息模块

管理员对BUG信息进行添加,删除,修改等管理。

(4)项目任务模块

管理员对任务信息进行添加,删除,修改等操作。

(5)系统管理模块

管理员对用户信息进行添加,删除,修改等操作。

3.2.2 系统业务流程

为方便用户使用本系统,系统采用JSP技术编写。使用用户需通过网页输入正确的用户名和密码登陆本系统,只有当用户输入的用户名和密码都正确时,系统会自动跳转到系统主页。此时用户可以根据自己所做项目的需要来选择不同的系统业务进行操作,例如:注册用户,修改项目阶段信息,删除BUG信息等。用户在使用完本系统之后,点击“系统退出”即可退出本系统。如图3-1所示,为本系统的系统业务流程图。

图3-1 系统业务流程图

3.3 系统各模块用例模型分析 3.3.1 用例模型整体描述

本系统管理员登陆系统,可以对执行者信息,项目任务信息,项目阶段信息,BUG信息,系统信息进行管理,如图3-2所示。管理员可以对所有信息进行管理,并且处理用户信息的操作。

图3-2 整体用例图

3.3.2 各功能模块用例描述

(1)管理执行者

执行者管理的用例图如图3-3所示。

图3-3 执行者管理用例图

其用例描述如表3-1所示:

表3-1 执行者管理用例描述

(2)项目阶段管理

管理项目阶段的用例如图3-4所示:

图3-4管理项目阶段用例图

用例描述如表3-2所示:

表3-2 项目阶段管理

(3)BUG信息管理

一个项目在开发的过程中,无论开发人员怎样的避免,都会出现BUG,这时就需要管理人员对其进行管理。管理员对BUG信息管理的用例图如图3-5所示:

图3-5 BUG信息管理用例

其用例描述如表3-3所示:

表3-3 BUG信息管理

(4)项目任务管理

管理员对项目任务管理的用例图如图3-6示:

图3-6 项目任务管理用例

其用例描述如表3-4所示:

表3-4 任务管理

(5)系统管理

管理员对系统管理的用例图如图3-7所示:

图3-7 系统管理用例

其用例描述如表3-5所示:

表3-5 系统信息管理

3.4 系统开发环境

硬件环境:Intel(R)Pentium(R)processor2.00GHZ/1024MB/40G/ 软件环境:Microsoft MyEclipse6.0/Microsoft SQL Server 2000sp4

4 概要设计

4.1 系统架构原则

软件设计是一种极度富有创造性的过程,对某些设计者来说她们可能需要一定的资质,而最后设计通常都是由一些初步设计演变来而的。这些只是在书本上学不会设计,只能通过实践,通过对实际情况的研究和实践才能学会。对于高效的软件工程,良好的设计是关键,一个设计得好的系统应该能直接实现和易于维护、易懂和可靠的。设计得不好的系统,尽管可以工作,但很可能维护起来花费多、测试困难和不可靠,因此,设计阶段是一个软件开发过程中最重要的阶段。

项目进度跟踪管理系统由系统管理模块、执行者管理模块、项目阶段管理模块、项目任务管理模块、项目BUG管理模块5个主要部分组成,规划系统功能模块如下:

系统管理模块:该模块主要是登陆系统的管理员对本系统用户的管理。 执行者管理模块:该模块主要是对项目参加人员调动信息进行管理。

项目阶段管理模块:该模块主要功能是管理项目的各个阶段,对项目阶段实现添加、删除、修改以及查询的功能。

项目任务管理模块:该模块主要是是开发人员明确项目开发的情况,以便更加合理的进行项目开发。

项目BUG管理模块:该模块主要是对项目出现的BUG进行添加、删除、修改以及查询等的管理。

系统结构如图4-1所示:

图4-1系统体系结构图

4.2 系统的功能结构设计 4.2.1 执行者管理模块设计

(1)功能设计

本模块的最主要功能就是建立执行者信息,添加,删除和修改执行者信息。经过处理,管理员可以登陆系统,对执行者信息进行处理,增加,删除,修改等操作。

(2)功能结构图

执行者信息模块的功能结构图,如图4-2所示。用户对系统的执行者信息进行管理,如果操作成功,则提示,否则失败。

图4-2执行者信息模块功能结构图

4.2.2 项目阶段管理模块设计

(1)功能设计

本模块主要是对系统的项目阶段信息进行管理,对项目阶段信息进行删除、修改等操作。

(2)功能结构图

项目阶段管理模块的功能结构图,管理员登陆系统,可以对项目阶段管理模块进行删除和修改等操作,管理员可以在列表界面对项目阶段进行查询等操作。如图4-3所示:

图4-3 项目阶段管理模块功能结构图

4.2.3 BUG信息管理模块设计

(1)功能设计

本模块主要是实现对BUG信息的增加,删除和修改等操作,用户可以在列表界面对BUG信息进行查询等操作。

(2)功能结构图

BUG信息模块的功能结构图,如图4-4所示:

图4-4 BUG信息模块功能结构图

4.2.4 项目任务管理模块设计

(1)功能模块

管理登陆系统后,可以对项目任务信息进行维护,修改,删除等操作。 (2)功能结构图

项目任务信息模块的功能结构图,管理员登陆系统,对任务信息进行维护,可以对任务信息进行维护,修改,删除等。如图4-5所示:

图4-5 项目任务信息功能结构图

4.2.5 系统管理模块设计

(1)功能模块

管理登陆系统后,可以对系统信息进行维护,修改,删除等操作。 (2)功能结构图

系统信息模块的功能结构图,管理员登陆系统,可以对系统信息进行维护,修改,删除等。如图4-6所示:

图4-6 系统信息功能结构图

4.3 系统类图

类图说明:

用户类:对用户的信息进行存储。 项目阶段类:对项目阶段信息进行存储。 执行者类:对项目执行者进行处理,并存储信息。 项目任务类:对项目任务信息进行存储,增加,删除等。

BUG类:对项目开发中遇到的BUG信息进行存储,增加,删除以及查询等操作。 本系统是一个项目进度跟踪系统,管理员可以对项目进度跟踪信息进行查看,管理员登陆后台对项目进度信息进行处理,处理信息后,完成。

系统类图如图4-7所示:

图4-7 系统类图

4.4 数据库设计

基于以上所提出的系统的所有功能,设计出了以下的数据库的表的结构,给用户处理。

表4-1 用户信息表

表4-4 项目执行者表

表4-5 项目任务信息表

5 详细设计

本系统界面使用JSP技术开发,因此主页画面简洁,使用的用户要先输入正确的用户名和密码才可登陆到本系统主页。登陆后的系统主页如图5-1所示,主页的左侧为系统菜单列,用户可以在此操作本系统对相关的项目进行管理操作。

图5-1 系统主界面

5.1 项目阶段管理模块

该模块可以对项目阶段信息进行增加,删除和修改等操作。 5.1.1 添加项目阶段

用户进入本系统后,点击“添加项目阶段”,输入想要添加项目阶段,确认后点击“提交”按钮,系统会弹出一个对话框提示用户添加操作成功。如果用户对输入的信息感到不满意,可点击“重置”按钮,将信息清掉重新输入。界面情况如图5-2所示:

图5-2 添加项目阶段

该模块所用到主要代码如下: /** * 增加 * @return */

public int AddComType(ComType com) { }

String SqlSr=

* @param userInfo

5.1.2 管理项目阶段

用户进入本系统后,点击“管理项目阶段”,可以进入到项目阶段信息的管理界面,对已有的项目阶段进行修改以及删除的操作。界面信息如图5-3所示:

图5-3 管理项目阶段

该模块所用到主要代码如下: }

5.2 BUG信息管理模块

一个项目在开发阶段免不了出现各种问题,有些是可预知的,而有些则不然。本系统提供了一个BUG信息管理模块给开发人员,开发人员可以对开发中项目所出现的BUG信息进行添加、查询以及删除等操作。

/** * 修改

* @param userInfo * @return */

public int UpdateComType(ComType com) {

int i=1;

String SqlStr=

5.2.1 添加BUG信息

用户进入本系统后,点击“添加BUG信息”,首先选择BUG所在的项目阶段,然后输入想要添加的BUG信息,和提出人信息,确认后点击“提交”按钮。添加成功,如图5-4所示:

图5-4 添加BUG信息

其主要实现代码如下:

public int AddInfo (BugInfo com){

String SqlSr=

insert into BugInfo(score,teamid,ying,shu,ping,typeid) values(?,?,?,?,?,?)

user[]={com.getScore(),com.getTeamid(),com.getYing(),com.getShu(),com.getPing(),com.getTypeid()};

int j=DBManager.ExcuteUpdate(SqlSr, user); return j;

5.2.2 查询、删除BUG信息

(1)查询BUG信息

用户进入本系统后,点击“查询BUG信息”,按照项目出现的BUG内容以及提出人进行查询,确认后点击“查询”按钮。如图5-5所示:

图5-5 查询BUG信息

其主要实现代码如下: /** * 取得所有 * @return */

public ArrayList SelectAllScoreInfo() {

ArrayList comtype = new ArrayList (); String SqlStr=

while(rs.next()) {

ScoreInfo userInfo=new ScoreInfo(); userInfo.setId(rs.getInt(1));

userInfo.setScore(rs.getString(2)); userInfo.setTeamid(rs.getInt(3)); userInfo.setYing(rs.getString(4)); userInfo.setShu(rs.getString(5)); userInfo.setPing(rs.getString(6));

}

userInfo.setTypeid(rs.getInt(7)); comtype.add(userInfo); }

} catch (SQLException e) { }

return comtype;

e.printStackTrace();

(2)删除BUG信息

在项目出现BUG后开发人员除了提出BUG信息,还要着手解决。本系统还提供BUG信息删除的功能。用户进入本系统后,点击“管理BUG信息”,会出现已经提交的项目BUG信息,用户点击“删除”,系统会提示用户是否确定删除所选的内容,如图5-6所示:

图5-6 确认删除BUG信息

用户可以根据自己项目的BUG解决情况,选择“确定”还是“取消”。一旦确定,系统会从数据库中删除所选的BUG信息,并提示操作成功。如图5-7所示:

图5-7 删除BUG信息成功

5.3 项目任务管理模块

该模块主要是对项目任务信息进行管理,主要进行增加,删除,修改等操作。 在此模块中,管理员可以对项目任务基本信息进行修改,新增,如果想删除,则进行删除确认,信息自动从数据库中删除。 5.3.1 添加项目任务

用户进入本系统后,点击“添加项目任务”,输入想要添加的项目任务信息,确认后点击“提交”按钮。如图5-8所示:

图5-8 添加项目任务

其主要代码如下: /**

* 增加项目信息 * @param userInfo * @return */

public int AddCompet(Compet com) { }

String SqlSr=

int j=DBManager.ExcuteUpdate(SqlSr, user); return j;

user[]={com.getComname(),com.getScore(),com.getRound(),com.getTypeid()};

5.3.2 修改、删除项目任务

用户进入本系统后,点击“管理项目任务”,按照项目任务执行人查询,确认后点击“查询”按钮。如图5-9所示:

点击“修改”按钮,调用update方法,把数据更新到本数据库中。

点击“删除”按钮,弹出是否要删除提示信息,调用delete方法,把数据更新到本数据库中。

图5-9 管理项目任务

其主要实现代码如下:

public int UpdateCompet(Compet com){

int i=1;

String SqlStr=

id=?

Object

user[]={com.getComname(),com.getScore(),com.getRound(),com.getTypeid(),com.getId()};

i=DBManager.ExcuteUpdate(SqlStr, user); return i;

}

public void DeleteCompet(String id) { }

String Sqlstr=

DBManager.ExcuteUpdate(Sqlstr, user);

6 测试结果及运行效果

6.1 测试概论

软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。通俗地讲,软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码进行最终复审的活动。

1983年IEEE提出的软件工程术语中给软件测试下的定义是:“使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别”。这个定义明确指出:测试的目的就是发现软件中的各种缺陷,测试只能证明软件存在缺陷,不能证明软件不存在缺陷。测试可以使软件中缺陷降低到一定程度,而不是彻底消灭。以较少的用例、时间和人力找出软件中的各种错误和缺陷,以确保软件的质量当设计工作完成以后,就应该着手测试的准备工作了,一般来讲,由一位对整个系统设计熟悉的设计人员编写测试大纲,明确测试的内容和测试通过的准则,设计完整合理的测试用例,以便系统实现后进行全面测试。

6.2 项目进度跟踪管理系统采用的测试方法

6.2.1 黑盒测试

黑盒测试(Black-box Testing),它又叫做功能测试或者是数据驱动测试,它是把被测试者看做是一个黑盒子。利用黑盒测试的方法进行动态测试时,需要测试软件的功能,不需要测试软件产品的内部结构。它主用于测试软件功能性的需求,即是黑盒测试使软件工程师排除执行程序所有功能需求的条件。它不是白盒测试的替代品,而是用于辅助白盒测试发现别的类型的错误。

6.2.2 白盒测试

白盒测试也叫做结构测试或者叫做逻辑驱动测试,它主要是知道了产品内部工作的过程,可以通过测试来看产品内部的动作是不是按照规格说明书中所说的规定正常进行的,是按照程序内部的结构来测试程序,检验程序中的每条通路是不是都能按照预定的要求进行正确的工作,而不是考虑它的功能怎样,它的主要方法包括了逻辑驱动、基路测试等等,它主要用于给软件的验证。它全面地了解程序内部逻辑结构、对所有地逻辑路径进行测试。“白盒”穷举路径测试。在用白盒测试这一方案时,测试者必须检查程序内部结构,从检查程序的逻辑入手,从而得出了需要测试的数据。所以采用的是黑盒测试。

6.3 项目进度跟踪管理系统具体测试

6.3.1 系统登录功能的测试

(1)系统登录成功

测试系统的登录模块:用正确账号密码进行登录,对系统进行测试。

测试用例:在首页登陆栏填写正确的账号,查看运行的结果。

测试结果:登陆成功,如图6-1所示:

图6-1 系统登录成功图

(2)系统登录失败

测试系统的登录模块:用错误的账号密码进行登录,对系统进行测试。

测试用例:在首页登陆栏填写错误的账号,查看运行的结果。

测试结果:登录失败,如图6-2所示:

图6-2 系统登录失败图

6.3.2 添加管理员信息的测试

(1)添加管理员信息成功

测试景点模块:正确输入管理员信息。

测试用例:在添加界面,正确的输入需要添加的管理员信息:点击“确认”按钮,查看结果。

测试结果:添加成功,如图6-3所示:

图6-3 添加成功

(2)添加管理员信息失败

测试模块:添加管理员信息模块。

测试用例:在添加管理员界面,输入错误名称,确认之后查看结果。

测试结果:添加失败 。如图6-4所示:

图6-4 添加失败

结 论

现今的社会是一个信息大爆炸的时代,电脑已经被普遍用于社会的各个领域。其中有着各种由不同公司所开发的软件,这些软件在人们的日常生活中起到了关键的作用。而软件的开发是一项耗时费力的工程,有时它需要一个公司投入大量的人力、物力和时间,而且软件在开发过程中很容易出错,这时就需要一个好的软件项目规划系统来时刻监督开发的进程,提醒开发者项目的进度情况。本文主要研究了项目进度跟踪管理系统的设计与实现。本次论文研究的内容主要包括:

(1)分析研究了本课题的开发背景、目的和研究意义。

(2)对此次毕业设计进行了详尽的分析设计,包括关键技术介绍、系统设计规范介绍、系统内容结构设计介绍等。

(3)对系统中各个主要功能进行了详细的说明。

(4)介绍了系统的使用方法并进行了系统功能的测试。

本论文主要描述了项目进度跟踪管理系统的主要功能是:系统管理,项目执行者管理,项目阶段信息,BUG信息管理,项目任务管理。

经过这次课题的设计并实现,尽管会遇到很多难题,但是让能收益的就是在这次题目中得到的经验、新的和锻炼。我发现开发项目的过程其实就是一个不断的提出问题然后解决问题的过程。在本次课题的编写代码部分,本人就参照了《JAVA核心技术》,从中得到了程序编程的很多有用的方法。这次课程的设计给我以前所学的知识做了一个总结,为我深入学习编程做了铺垫。在本课题中存在的不足之处是在所难免的,本人将在日后更加改进。

由于时间,以及对工具的使用并不熟悉等原因,我设计的项目进度跟踪管理系统虽然完成了大部分功能,可是还存在着一些问题有待解决,系统设计的还不够精致,同时也存在着很多的不足与缺陷,这还需要我在以后得学习中加以改进,希望以后可以做的更加成功。

谢 辞

经过半年的忙碌和工作,本次毕业设计已经接近了尾声,作为一个本科学生的毕业设计,由于的经验匮乏,使我难免有许多考虑的不是很周全的地方,如果没有老师以及老师的督促与指导,以及一起生活、学习的同学的支持,很难想象我会完成这个设计。

在这里我要深深地感谢的我导师。老师平日里工作繁多,但是在我们做毕业设计的每个阶段,老师们每周都挤出足够的时间为我们讲解答疑,从开始使得开题报告,到中期的程序检查,后期论文的审核,整个过程中都给予我了悉心的指导。老师们的严谨治学和科学研究的精神是永远值得我们学习并且将积极影响我今后的学习和工作。

然后还要感谢大学四年来所有的老师,为我打下了计算机、Java专业知识的基础;同时还要感谢我的家人以及所有关心我的同学和朋友们,正式因为有了大家的支持和鼓励,我才能顺利完成此次设计。谢谢你们,我会继续努力。

最后还要感谢我的母校,四年来给我如此好的大学生活环境,和对我的大力栽培,让我大学四年的经历永远难忘。

参考文献

[1] 耿祥义.JSP实用教程.北京清华大学出版社.2003

[2] Cornel Horstman.Core Java第3版.Prentice-Hall.1997

[3] 叶核亚.Java程序设计实用教程.北京电子工业出版社.2003

[4] 张桂珠.Java面向对象程序设计.北京邮电大学出版社.2007

[5] 周颢.网络编程语言JSP实例教程.电子工业出版社.2002

[6] 王国辉.JSP数据库系统开发完全手册.北京人民邮电出版社.2006

[7] 吴斌.SQL Server应用与提高.科学出版社.2002

[8] Bruce Eckel.Java编程思想.北京机械工业出版社.2004

[9] Kevin.JSP站点设计编程指南[M].电子工业出版社.2002

[10] 汪孝宜.JSP数据库开发实例精粹.电子工业出版社.2005

[11] Elliote.Java Network Programming.O'Reilly.1997

[12] Harvey.Java How to Program.北京机械工业出版社.2002

[13] 万峰.JSP网站开发四酷全书.电子工业出版社.2005

附 录

以下的代码是用户注册界面的源码:

response.setContentType(

if(j>0) { out.print(


    相关文章

    论文-时间进度管理

    摘要: 2008年5月,我公司承担"某卷烟厂生产执行管理系统"的建设工作.该项目是企业生产运行的核心系统,建立覆盖企业生产处.质检处.制丝.卷包.动力能源等主要管理部门和全部的生产车间,实现生产作业计划与调度优化.产品质 ...

    论文写作的领域知识和建议思路

    论文写作的领域知识和写作思路 1.质量管理: 在本领域,涉及到的知识点主要是质量保证和质量控制的措施.质量是规划出来的,不是靠后期的检查和测试出来的. 质量保证的目的是保证项目实施是按照组织的质量政策来实施的,是按照质量管理计划来进行的.它 ...

    房地产项目开发建设论文

    房地产项目开发建设论文 [摘要]房地产开发施工是一个完整的过程,它应该涵盖:项目策划.工程建设.房屋销售和售后维修,因此,进行成本控制,必须贯穿从策划到售后的整个环节,才能真正压缩成本,实现效益最佳化和利益最大化,这样需要全部涉及到的部门的 ...

    2015华中科技大学土木工程系毕业论文

    毕 业 论 文 题 目: 学院(直属系): 继 续 教 育 学 院 年级. 专业: 学 生 姓 名: 陈 俊 学 号: [1**********]4 指 导 教 师: 刘 琦 网 站: 九块九包邮www.huiniuzhe.com 目 录 ...

    工程项目进度控制研究本科毕业论文

    毕业论文 工程项目进度控制研究 毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果.尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组 ...

    工程造价论文4

    新疆轻工职业技术学院 毕业论文 论文题目: 姓 名: 班 级: 指导教师:某教学楼工程施工图预算 2008年 03月25日 摘要 向管理要效益已成为企业家的共识.搞好工程项目管理是建筑施工企业追求经济效益最大化的重要途径. 工程项目管理要搞 ...

    西科大毕业设计(论文)

    毕业设计(论文)任务书 题目名称学生姓名题目来源选题背景及目的工作任务及要求时间安排 1. 开题报告:2. 完成初稿:3.答 辩: 年年年 月月月 日至日至日至 年年年 月月月 日.日.日. □教师科研□实验室建设 □其它 准考证号 □社会 ...

    个人技术工作总结

     本人于 20xx年 12 月经 20xx年 12 月经广东交通工程技术工程师资格评审委员会评审通过,具备路桥工程师资格以来,任省路桥建设发展有限公司控股的汕揭高速公路有限公司项目工程部副经理兼交通工程部副经理,负责汕揭高速公路项目的建设管 ...

    建筑工程造价控制与管理毕业论文

    目录 摘要„„„„„„„„„„„„„„„„„„„„„„„„A 绪论„„„„„„„„„„„„„„„„„„„„„„„1.. 第一章.我国工程造价管理的现状„„„„„„„1 第二章.工程项目成本管理的意义与控制的原则„2 2.1项目成本管理的意义 ...