论文部分内容阅读
当我们把软件开发当作一个项目来管理时,软件开发过程中所有工作也都可以按照项目生命周期的五个流程的特征来看待和区分,即把软件开发过程划分为项目启动、项目计划、项目执行、项目控制和项目结束阶段。
在对当前软件开发项目管理信息系统进行需求分析的基础上,整合项目管理九大知识体系与软件开发过程的特点,确定了软件开发项目管理信息系统的总体结构。本系统包括十一个子系统,他们分别是综合管理系统、计划管理系统、需求管理系统、费用管理系统、质量管理系统、人员管理系统、配置管理系统、进度管理系统、风险管理系统、售后服务系统和后台维护系统。本文重点阐述计划管理系统、需求管理系统与配置管理系统三部分。
1 总体设计
1.1 计划管理系统
制定软件开发项目的计划,是软件项目管理系统中最重要的工作。对软件项目的有效管理,取决于对项目的全面计划。制定计划时应该预见到可能发生的问题,并且预先准备好试探性的解决方法。
本系统主要显现项目规划阶段的各项计划的编制、审查、审批、变更、查询等功能,主要包括项目总计划、时间进度计划、质量管理计划、需求管理计划、费用管理计划、人员管理计划、配置管理计划以及风险管理,此外,系统还应该与其他常用办公软件进行集成协作,例如,时间进度计划表可以从Microsoft Project中导入。
1.2 需求管理系统
需求管理的目的是在客户与开发方之间建立对需求的共同理解,维护需求和其他工作产品(设计、代码、测试、测试用例等)的一致性,并控制需求的变更。主要分为需求跟踪和需求变更控制两部分。
需求跟踪,是通过建立需求文档和后续工作产品之间的对应关系,确保产品根据需求文档进行设计、开发、测试等后续工作。
需求变更控制,指通过规范的变更控制流程进行需求的变更,防止需求变更因为失去控制而产生混乱。需求变更管理是软件开发项目特有的一项任务。对需求变更的处理结果将直接影响到软件开发的进展状况以及成功与否。
通过本系统,项目人员可以对软件需求进行统一的管理与变更控制,方便了项目开发人员与客户能够实时进行沟通。主要功能包括:需求分析、需求確认、需求开发、开发确认、变更申请、变更审批、变更处理、变更实施、需求检索等。
1.3 配置管理系统
软件配置管理(Software Configuration Management,SCM)是一组针对软件产品的追踪和控制活动,它贯穿于项目生命周期的始终,并管理着软件产品接受各项评审。配置管理的目的是建立和维护在项目的整个软件生存周期中软件项目产品的完整性和可追溯性。合理的实施配置管理,软件产品的质量才能够得到保障。配置管理的基本活动主要包括制定配置管理计划、确定配置标识、版本管理、变更控制、系统整合和配置审核。
本系统主要提供产品入库管理、产品变更管理和配置报告管理三大方面的功能。
2 结构设计
在B/S的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。B/S结构极大地简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
B/S模式与C/S模式比较,有许多优点:
(1)跨平台是B/S最大的优点之一,运用标准通信协议组HTTP、统一客户端软件、统一界面,它的应用程序能够从世界各地和完全不同的硬件平台进行通信;
(2)数据库应用和B/S信息处理模式紧密结合,B/S模式能运用其他系统的信息处理资源和信息;
(3)应用服务器提供的动态的HTML页面生成的能力、三层客户访问、安全性、处理逻辑以及数据库访问等功能,使得B/S模式成为当前Web开发的主流技术。
本系统由若干浏览器、WEB服务器和后台数据库服务器组成。Web服务器和客户端采用B/S结构,每个客户端都通过浏览器访问Web服务器,Web服务器与数据库SQL.server2003联接通过ADO对象实现。三者通过Internet或者Intranet实现互连。
3 数据库的设计
为了系统处理的方便、准确,我们为整个系统设计一个数据库(CPM.pb),并在数据库中建立了一系列的表。这些表主要分为三类:第一类是基本信息数据表,如历史资料、进度分配表等,这一类表一般不大变动;第二类是系统信息数据表,这类表示经常需要不断变化的;第三类是工作表,即临时表,这类表的特点是表中的数据在不断的变化数据并不需要保留,只是为打印报表提供服务。除以上数据表之外,在数据库中建立了大量的查询“表”,这类“表”是在运行中在多个数据表中根据一定的条件才产生的表。它们用SQL语句建立,或通过创建“Data Window”中的SQL select对象来实现。
数据库完整性规则的目的就是保证数据的一致性、正确性和符合业务规则。它主要包括四个方面:实体完整性、值域完整性、引用完整性和用户定义完整性。为了防止数据冗余,数据库的数据表中不是包括所有需要的信息的,有些信息可以通过表之间的关系从其他表中获取。出于以上考虑,在本系统中通过设置主关键字和外关键字将这些表联系在一起。
4 系统安全性设计
在基于B/S的管理系统中,WWW服务器与浏览器之间是开放的,一个突出的问题是要防止非法用户的访问,合法用户的越权访问及通讯线路上的在线窃取、修改。由于Web服务器采用微软公司的IIS,在安全性方面,除了对用户分级分层管理外,IIS的核心依赖于Windows NT Server内置的安全性,同时还提供了加密、验证和IIS扩展等。可通过账户名以及口令进行控制访问,也可以对目录的访问权限进行控制,还可通过P地址来控制访问站点的主机。此外,IIS还可以保证客户与服务器之间的通信安全性,进行数据加密传输,支持的标准有SSL、PCT、SET和PPTP等。
在进行数据库访问时,安全性也必须进行考虑,最好不要通过网络传输数据库访问的用户名和密码等登陆信息。本系统是通过中间件服务器进行数据库连接,可以把连接参数设置在中间件服务器中,而在代码中避免使用,这样就消除了通过网络传递的可能性。
在系统设计中,业务逻辑也考虑了安全性。系统中的所有用户都是和角色进行关联的,每种角色都是和特定功能权限关联。在用户访问系统的每个资源(包括所有的URL、以及所有其他资源)都进行角色权限的检查。这样就在访问用户级别进行控制。
在对当前软件开发项目管理信息系统进行需求分析的基础上,整合项目管理九大知识体系与软件开发过程的特点,确定了软件开发项目管理信息系统的总体结构。本系统包括十一个子系统,他们分别是综合管理系统、计划管理系统、需求管理系统、费用管理系统、质量管理系统、人员管理系统、配置管理系统、进度管理系统、风险管理系统、售后服务系统和后台维护系统。本文重点阐述计划管理系统、需求管理系统与配置管理系统三部分。
1 总体设计
1.1 计划管理系统
制定软件开发项目的计划,是软件项目管理系统中最重要的工作。对软件项目的有效管理,取决于对项目的全面计划。制定计划时应该预见到可能发生的问题,并且预先准备好试探性的解决方法。
本系统主要显现项目规划阶段的各项计划的编制、审查、审批、变更、查询等功能,主要包括项目总计划、时间进度计划、质量管理计划、需求管理计划、费用管理计划、人员管理计划、配置管理计划以及风险管理,此外,系统还应该与其他常用办公软件进行集成协作,例如,时间进度计划表可以从Microsoft Project中导入。
1.2 需求管理系统
需求管理的目的是在客户与开发方之间建立对需求的共同理解,维护需求和其他工作产品(设计、代码、测试、测试用例等)的一致性,并控制需求的变更。主要分为需求跟踪和需求变更控制两部分。
需求跟踪,是通过建立需求文档和后续工作产品之间的对应关系,确保产品根据需求文档进行设计、开发、测试等后续工作。
需求变更控制,指通过规范的变更控制流程进行需求的变更,防止需求变更因为失去控制而产生混乱。需求变更管理是软件开发项目特有的一项任务。对需求变更的处理结果将直接影响到软件开发的进展状况以及成功与否。
通过本系统,项目人员可以对软件需求进行统一的管理与变更控制,方便了项目开发人员与客户能够实时进行沟通。主要功能包括:需求分析、需求確认、需求开发、开发确认、变更申请、变更审批、变更处理、变更实施、需求检索等。
1.3 配置管理系统
软件配置管理(Software Configuration Management,SCM)是一组针对软件产品的追踪和控制活动,它贯穿于项目生命周期的始终,并管理着软件产品接受各项评审。配置管理的目的是建立和维护在项目的整个软件生存周期中软件项目产品的完整性和可追溯性。合理的实施配置管理,软件产品的质量才能够得到保障。配置管理的基本活动主要包括制定配置管理计划、确定配置标识、版本管理、变更控制、系统整合和配置审核。
本系统主要提供产品入库管理、产品变更管理和配置报告管理三大方面的功能。
2 结构设计
在B/S的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。B/S结构极大地简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
B/S模式与C/S模式比较,有许多优点:
(1)跨平台是B/S最大的优点之一,运用标准通信协议组HTTP、统一客户端软件、统一界面,它的应用程序能够从世界各地和完全不同的硬件平台进行通信;
(2)数据库应用和B/S信息处理模式紧密结合,B/S模式能运用其他系统的信息处理资源和信息;
(3)应用服务器提供的动态的HTML页面生成的能力、三层客户访问、安全性、处理逻辑以及数据库访问等功能,使得B/S模式成为当前Web开发的主流技术。
本系统由若干浏览器、WEB服务器和后台数据库服务器组成。Web服务器和客户端采用B/S结构,每个客户端都通过浏览器访问Web服务器,Web服务器与数据库SQL.server2003联接通过ADO对象实现。三者通过Internet或者Intranet实现互连。
3 数据库的设计
为了系统处理的方便、准确,我们为整个系统设计一个数据库(CPM.pb),并在数据库中建立了一系列的表。这些表主要分为三类:第一类是基本信息数据表,如历史资料、进度分配表等,这一类表一般不大变动;第二类是系统信息数据表,这类表示经常需要不断变化的;第三类是工作表,即临时表,这类表的特点是表中的数据在不断的变化数据并不需要保留,只是为打印报表提供服务。除以上数据表之外,在数据库中建立了大量的查询“表”,这类“表”是在运行中在多个数据表中根据一定的条件才产生的表。它们用SQL语句建立,或通过创建“Data Window”中的SQL select对象来实现。
数据库完整性规则的目的就是保证数据的一致性、正确性和符合业务规则。它主要包括四个方面:实体完整性、值域完整性、引用完整性和用户定义完整性。为了防止数据冗余,数据库的数据表中不是包括所有需要的信息的,有些信息可以通过表之间的关系从其他表中获取。出于以上考虑,在本系统中通过设置主关键字和外关键字将这些表联系在一起。
4 系统安全性设计
在基于B/S的管理系统中,WWW服务器与浏览器之间是开放的,一个突出的问题是要防止非法用户的访问,合法用户的越权访问及通讯线路上的在线窃取、修改。由于Web服务器采用微软公司的IIS,在安全性方面,除了对用户分级分层管理外,IIS的核心依赖于Windows NT Server内置的安全性,同时还提供了加密、验证和IIS扩展等。可通过账户名以及口令进行控制访问,也可以对目录的访问权限进行控制,还可通过P地址来控制访问站点的主机。此外,IIS还可以保证客户与服务器之间的通信安全性,进行数据加密传输,支持的标准有SSL、PCT、SET和PPTP等。
在进行数据库访问时,安全性也必须进行考虑,最好不要通过网络传输数据库访问的用户名和密码等登陆信息。本系统是通过中间件服务器进行数据库连接,可以把连接参数设置在中间件服务器中,而在代码中避免使用,这样就消除了通过网络传递的可能性。
在系统设计中,业务逻辑也考虑了安全性。系统中的所有用户都是和角色进行关联的,每种角色都是和特定功能权限关联。在用户访问系统的每个资源(包括所有的URL、以及所有其他资源)都进行角色权限的检查。这样就在访问用户级别进行控制。