技术开发 频道

软件开发过程中的项目管理

  2.2.2软件项目的估算

  软件项目管理过程开始于项目的计划,估算是完成项目计划的基础,它主要包括对完成该软件项目所需的资源、成本和进度的估算。估算具有风险性,它需要一定的经验、有用的历史信息、足够的定量数据等来完成。估算的精确程度取决于项目的复杂度、项目的规模、项目的结构化程度以及历史信息的有效性等的影响。

  估算的依据是软件的范围,包括功能、性能、限制、接口和可靠性。软件项目估算一般采用分解技术、经验估算模型和自动估算工具进行估算。在估算开始之前,应对软件的功能进行评价,并对其进行适当的细化以便提供更详细的细节。由于成本和进度的估算都与功能有关,因此常常采用功能分解的办法。性能主要考虑包括处理和响应时间的需求。约束条件则标识外部硬件、可用存储和其它现有系统对软件的限制。

  估算内容包括:

  ●项目规模

  ●项目工作量和成本

  ●人力资源、硬件资源和软件资源

  可以采用项目工作结构分解(麟),制定wBs(Work Breakdown Structure,工作分解)计划是制定项目计划的主要活动。通过工作分解的方式,将工作范围细分为活动,然后对每项活动分配时间和资源。

  ●分解工作任务。将一个总的工作范围逐渐细分到合适的粒度,以便对任务计划、执行和控制。

  ●定义活动依赖关系。活动依赖关系是确定项目关键路径和活动浮动时间的必要条件,定义活动间依赖关系的目的是确定每一项活动所需的输入、输出关系。

  ●分配时间和资源。

  2.2.3软件项目进度计划编制

  软件项目的进度安排主要是考虑软件开发具体工期的安排,进度安排必须根据软件项目估算的实际情况,制定切实可行的进度计划。在软件开发的各个阶段设置里程碑,以便实现对项目进度的有效控制与检测。进度安排通常采用甘特图或网络图描述。

  制定计划的过程不仅是一个对项目逐渐了解掌握的过程,也是在进度、资源、范围之间寻求平衡的过程。好的计划有助于在项目过程中防范各种问题的出现,保障项目顺利完成。

  2.3软件项目配置管理

  软件配置管理SCM(Software ConfigurationManagement),是在团队开发中,标识、控制和管理软件变更的一种管理。配置管理的使用取决于项目规模和复杂性以及风险水平。软件配置管理是一套规范、高效的软件开发管理方法,同时也是提高软件质量的重要手段,它帮助开发团队对软件开发过程进行有效的变更控制,高效地开发高质量的软件。

  配置管理并不是一个新的概念,早在二十世纪7O年代,加州大学的教授就已经提出变更和配置控制的理论,它随着软件产业的逐渐壮大,在国外成熟的软件企业中逐渐得到重视和普及。

  软件配置管理的功能:唯一地标识每个软件项的版本;标识共同构成一完整产品的特定版本的每一软件项的版本;控制由两个或多个独立工作的人员同时对一给定软件项的更新;按要求在一个或多个位置对复杂产品的更新进行协调;标识并跟踪所有的措施和更改;这些措施和更改是在从开始直到放行期间,由于更改请求或问题引起的。

  软件配置管理包含了用于所有软件项目的良好工程实践方法,它通过下面几种方式强化软件的可靠性和质量:

  ●提供用于识别和控制文档、代码、接口、数据库的结构框架,适用于软件开发整个生命周期;

  ●全面支撑某一特定开发及维护工作方法,能够适应各种类型的需求、标准、政策、组织机构以及相关的管理策略;

  ●针对特定的基线状态、变更控制、测试、发布版本或审计活动,生成相应的管理信息和产品信息。

  实施配置管理系统,要从以下几方面考虑:

  ●规划、调整网络开发环境,这是实施配置管理系统的前提;

  ●根据项目开发的要求,设计开发资源的存储模式,良好的存储模式有利于减轻管理上的负担,增强配置管理库的访问性能,同时便于控制访问权限,保护软件资产;

  ●定义配置管理系统的角色;

  ●制定配置管理流程:这是配置管理实施的一个重要阶段,其主要目的是根据项目开发的需要,制定相应的配置管理流程,更好地支持开发;

  ●相关人员的培训。

  2.4软件项目风险管理

  软件风险是指软件开发过程中及软件产品本身可能造成的伤害或损失。风险关注未来的事情,这意味着风险涉及选择及选择本身包含的不确定性。

  风险主要指项目风险、技术风险和商业风险。

  ●项目风险是指潜在的预算、进度、人力(工作人员和组织)、资源、客户、需求等方面的问题以及它们对软件项目的影响。项目风险威胁项目计划,如果风险变成现实,有可能会拖延项目的进度,增加项目的成本。项目风险的因素还包括项目的复杂性、规模 结构的不确定性。

  ●技术风险:是指潜在的设计、实现、接口、验证和维护等方面的问题。此外规定的二义性、技术的不确定性等也是风险因素。技术风险会威胁到开发软件的质量及交付时间。如果技术风险变成现实,则开发工作可能变得很困难或者不可能。

  ●商业风险:商业风险威胁到要开发软件的生存能力。商业风险常常会危害项目或产品。风险管理在项目管理中有非常重要的地位。有效的风险管理可以提高项目的成功率。

  2.5软件项目质量管理

  根据软件项目计划和进度,定期控制软件项目的实际进度是软件项目控制的关键。软件项目管理的目的是控制工作、资源、成本和时间,确保项目达到全部质量标准,符合各种要求和规范,真正满足用户需求。

  2.6软件项目资源管理

  软件项目资源管理包括:人力资源、硬件资源和软件资源的管理。项目人力资源管理是保证参加项目人员能够被最有效使用所需要的过程。软件开发中的开发人员是最大的资源。对人员的配置、调度安排贯穿整个软件过程,人员的组织管理是否得当,是影响软件项目质量的决定性因素。因此,必须充分重视软件项目资源管理。

  三、结束语

  软件项目管理是一门很大的学问,它贯穿于项目启动、计划、执行、控制、收尾的五个阶段,它不仅需要项目管理相关的基础理论知识作为指导,也需要我们在实践中不断学习、摸索。因此,总结项目经验是非常重要的,它有利于组织内部或行业内部经验与数据的积累,以及项目过程的改进和技术与管理经验积累,对于今后的项目有非常重要的指导意义,必须引起足够的重视。

0
相关文章