知识科普|软件开发中项目管理的应用

_原题为 软件开发中项目管理的应用
软件行业是一个极具挑战性和创造性的新行业 , 在管理上没有成熟的经验可供借鉴 。 而项目管理应该说对于软件企业 , 尤其是那些以开发为主的软件企业 , 是行之有效的管理方法 。 因此 , 项目管理在软件开发中的应用日益受到重视 。
关于项目管理的问题
1、什么是项目管理?
项目管理是在一定的约束条件下 , 以高效率地实现项目业主的目标为目的 , 以项目经理个人负责制为基础和以项目为独立实体进行经济核算 , 并按照项目内在的逻辑规律进行有效的计划、组织、协调、控制的系统管理活动 。
【知识科普|软件开发中项目管理的应用】2、 为什么要有项目管理?
没有项目管理 , 项目也有可能成功 。 但没有管理的项目 , 很难保证项目的利润空间 , 对公司来说 , 亏损的风险就更大 。 所以我们要有项目管理 , 以保证公司在总体上是盈利的 , 特别注意不是每一个项目都要盈利 。 另外 , 有了项目管理 , 就有了管理改进的基础 , 无论刚开始的项目管理是多么的糟糕 , 只要有了管理 , 就有了改进的可能性 , 至于能不能得到改进 , 以及改进的快慢或好坏 , 则取决于两个因素:一个是人 , 特别是各级管理者;另一个是利益 。 关键是“利益” , 准确的说是“利益的分配” , 在权责利明确的前提下 , 人才能充分的发挥作用 。 还需要指出的是“利益”是多元的 , 这里的多元不仅指利益的具体形式 , 而且指利益的受众是多元的 , 包括客户方相关人员个人的利益
项目管理的发展与现状
今天 , 项目管理作为一种现代化管理方式在国际上已经获得了广泛的应用 , 从最初的国防、航天、建设工程领域 , 迅速发展到电子、通信、计算机、软件开发、金融等行业以及政府机关的项目管理工作 。 随着计算机、网络系统的迅速发展 , 项目管理技术的不断进步 , 项目管理软件产品层出不穷 , 其功能、特点、应用对象也各不相同 。 当前 , 越来越多的企业和组织在内部推广项目管理的理论方法及管理模式 , 如果都采用项目管理软件进行管理 , 效果就更加明显 , 可以节省大量的资源和财富 。 国外90%以上的项目管理都采用软件进行 , 但我国在这方面的应用还不到30% 。 新世纪项目管理在中国的迅速兴起 , 给软件企业的发展带来了前所未有的发展机遇 。 随着信息技术的飞速发展 , 软件产品的规模也越来越庞大 , 个人单打独斗的作坊式开发方式已经越来越不适应发展的需要 。 各软件企业都在积极将软件项目管理引入开发活动中 , 对开发实行有效的管理 。 从概念上讲 , 软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成 , 而对成本、人员、进度、质量、风险等进行分析和管理的活动 。 实际上 , 软件项目管理的意义不仅仅如此 , 进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力 , 企业的软件开发能力越高 , 表明这个企业的软件生产越趋向于成熟 , 企业越能够稳定发展(即减小开发风险) 。 同时 , 随着软件开发规模及开发队伍的逐渐增大 , 软件开发不再是像过去那样一二个开发人员即可解决的事情 。 迫切需要一种开发规范来规范每个开发人员、测试人员与支持人员的工作 , 每个项目组成员按约定的规则准时完成自己的工作 。 同时采用规范化管理 , 专业分工也可以降低对开发人员的要求 , 从而降低产品研发成本 。 软件开发是一项复杂的系统工程 , 牵涉到各方面的因素 , 实际工作中 , 经常会出现各种各样的问题 , 甚至面临失败 。 如何总结、分析失败的原因 , 得出有益的教训 , 对一个公司来说 , 是在今后的项目中取得成功的关键 。
目前的软件开发正逐步趋向于复杂化、多元化 , 大多数开发团队中都会出现同时开发多个版本、开发/维护工作并存、多地点同时开发等情况 , 给软件开发管理带来了前所未有的困难 。 如果管理不善 , 必将造成版本混乱 , 各个开发人员的工作相互交叉、干扰 , 整个开发团队的工作在一种无秩序的不良状况下运行 , 严重影响软件产品开发的进度和质量 。 因此 , 随着软件开发的深入、各种技术的不断创新以及软件产业的形成 , 人们越来越意识到软件过程管理的重要性 , 管理学的思想逐渐融入软件开发过程中 , 应用开发的项目管理日益受到重视 。 而项目管理技术的发展与计算机技术的发展是密不可分的 , 随着计算机性能的迅速提高 , 大量的项目管理软件涌现出来 。 它们可以用于各种商业活动 , 提供便于操作的图形界面 , 帮助用户制定任务、管理资源、进行成本预算、跟踪项目进度等 , 比如北京奥博思公司的PowerProject项目管理软件就可以很好地应用于软件开发中 , 实现进度管理、流程管理、工时管理、预算成本、质量管理、商务管理等应用 。
软件项目管理常见问题及解决方案
对于软件开发项目中 , 经常出现两种极端情况 , 一种是创造了新的生产率和质量的纪录;一种则完全是一场灾难 , 不是被取消就是拖延很长时间 。 前者如在很短的时间内 , 为了赶进度 , 在几乎不可能的时间内开发出一套软件产品 , 创造了软件开发的记录 , 满足了上级所要求的上线日期 , 由于开发时间太短 , 过于仓促 , 上线时 , 问题百出 , 试运行时间长达几个月或一年半载的 , 而且程序一改再改 , 维护工作量大 。 后者 , 如某套系统未弄清楚需求 , 或因设计问题 , 开发失败 。 通过提炼这些成功和失败的例子 , 软件项目成功或失败的根本原因可能会更清晰一些 。 目前我国大部分软件公司 , 无论是产品型公司还是项目型公司 , 都没有形成适合自己公司特点的软件开发管理模式 , 虽然有些公司根据软件工程理论建立了一些软件开发管理规范 , 但并没有从根本上解决软件开发的质量控制问题 。 这样导致软件产品质量不稳定 , 软件后期的维护、升级出现麻烦 , 同时最终也会损害用户的利益 。


推荐阅读