软件开发管控经验谈:项目经理对流程理解直接影响项目质量
谈到软件项目管理,很多时候如果不真正的实践很容易误解。也曾认为软件开发项目管理是件很轻松容易的事情,无非是按软件开发需求组织软件开发技术团队完成任务。可真正实践的时候才发现软件项目管理涉及到很多的知识,技术和工具链。成熟的软件项目管理体系是保证项目成败的技术保证,而软件项目经理是这个项目保证的实际操刀者,是项目的灵魂人物,其对流程的理解和把握直接影响项目的质量。
如何有效的实施软件开发项目管控有很多经验和技术分享,自己这些年的积累说说在软件研发项目中的几点注意的事项。
1. 可行性分析
很多时候在软件开发项目的时候对这一步几乎没有足够重视, 或者说对系统的估计不足, 亦或无从下手.所以在开发后期经常遇到难以克服的瓶颈和系统缺陷, 影响客户对系统的满意度. 那么怎么来做可行性分析呢?
我以为可以从以下几个方面来评估.
(A) 系统可行性 - 目标系统是否可以支持?有没有系统限制? 是否可以克服?
(B) 功能可行性 - 项目中的各项需求是否都能完整实现, 有没有功能限制?
(C) 资源可行性 - 项目的时间, 人员, 设备, 环境[库]....
可行性分析一定要多方人员的参与, 不仅仅是项目负责人的事情.
2. 架构设计
这一步是软件开发架构师来考虑的, 但架构设计的系统适应性也常常关乎项目的成败. 以自己的经验来谈谈这一步考虑的几个要点.
(A) 可行性 - 这指的是这个机制能够达到预定需求, 这个是最基本的.
(B) 可靠性 - 架构一定下来, 就很难改变, 所以模块化程度和稳定性通常是应该考虑的.
(C) 可扩展性 - 主要指代码复用, 功能复用和扩展, 接口通用.
3. 项目开发
这个过程中主要涉及到项目的具体实现和实施, 进度控制是重点, 也因此会带来各方的资源平衡和有效的沟通.可以从以下几个方面来跟进.
(A) 进度报告 - 定期的PSR, 让项目成员和利益相关者了解项目的情况和面临的问题.
(B) 开放问题讨论 - 组织项目组人员和技术专家对已经开发的问题分析和寻求解决方案.
(C) 文档更新 - 定期更新相关项目文档, 包括需求, 设计, 测试计划等等一系列文档.
4. 项目总结
很多时候, 这一步也容易被轻视, 毕竟项目进行到这里各方都需要调整一下, 轻松一下了, 呵呵. 庆祝的同时, 这个关键的一步也不能少, 这可以为我们以后的项目提供宝贵的信息和有建设性的意见. 我们可以从以下几个方面来总结.
(A) 内存需求 - 总共耗费了多少内存, 代码量增加了多少.
(B) 新增接口 - 有没有新的接口增加
(C) 主要限制 - 项目有没有限制, 是否是之前没有预计的? 有没有发现新的系统限制?
(D) 主要问题分析 - 项目中出现的各种突出问题(包括技术和非技术性的)分析
(E) 亮点分析 - 项目过程中有什么值得我们借鉴和推广的。