ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 软件项目经理最应该关心的 14 件事

软件项目经理最应该关心的 14 件事

原创 Linux操作系统 作者:张恂 时间:2010-07-15 15:26:04 0 删除 编辑
本文的最新版在 http://www.zhangxun.com/entry.aspx?sname=TaijiAgile§ion=pmconcerns


软件项目经理的首要职责是确保项目的成功。如何保障项目的成功?有些事情和关键词对于软件项目经理来说非常重要。

不同的行业,不同的企业或组织,不同的项目,PM 的关注点可能各有不同。以下,列出一些我们认为最重要的几件事情或方面。


1. People - 人类

首先是人和。

与任何其他行业的工程项目一样,没有和谐的人际关系,软件项目也是不可能成功的。


1.1 Customers and Users - 搞好客户和用户关系

满足客户和用户的需求是第一位的。客户不满意,不高兴了,项目还有可能成功吗?

所以,自始至终地搞好客户关系和用户关系,就显得尤为重要。

很多客户并不是 IT/软件方面的行家,他们误以为软件开发和盖房子、造汽车差不多。如何更好地 Engage the customer,得到客户与用户的理解和密切配合?这是一个难题。


1.2 The Team - 团队

没有哪个 PM 不希望自己拥有一支优秀的团队。


1.3 Collaborate with Communication - 合作与沟通

完成一个项目,有时往往需要依靠外部的力量,与各方面的干系人(如其他部门和团队、供应商、合作伙伴等等)进行密切而有效的合作与沟通。


1.4 Culture, Goals and Values - 文化、目标与价值观

企业文化、团队文化非常重要。

太极软件工程认为 CMT:文化决定管理,管理决定技术。

如果所有利益攸关者都拥有共同的目标和价值观,那么项目就容易成功。


1.5 Politics and Economics - 政治经济学

正如任何企业的管理者,每个 PM 都应该懂一点政治经济学。如果 PM 缺乏政治头脑和经济头脑,那么他不可能在这个位置上坐久坐稳。


2. Reuse First - 重用(或复用)优先!

很遗憾,过去 10 多年,人们谈论了很多过程改进、流程管理与质量管理,却很少谈及系统地重用(Systematic Reuse)。

重用不是银弹,却是金弹!

如何才能让必需做的工作减到最少?


3. Process and Methodology - 选择最适合的项目过程/流程与方法论

流程管理和改进是过去 20 年来全球管理界和工程界的一个持续关注热点,软件过程也不例外。

一个软件企业、项目团队遇到的大多数问题和烦恼与 Process 问题直接或间接有关。所以,首先要把工艺流程理清楚。是重点,还是轻点?

到底软件开发的最佳流程什么样?什么是软件开发和管理的最佳方法?

我的项目团队到底应该采用什么样的过程和方法论?


4. Models and Documentation - 模型与文档

怎么才能更有效地进行沟通?

口头沟通很不可靠,最好形成书面的文档,白纸黑字,有据可查。

图形建模既是人类的一项本能,也是一种非常重要的沟通手段。


5. Risks - 风险

风险管理是软件项目管理的第一管理。

PM 具有风险意识,每周每月维护一张 Risk List,是风险管理的一种最佳实践。


6. Requirements (Functional and Non-Functional) and Scope - 需求(功能与非功能)与范围

需求(To do what)位于软件开发因果链的上游,需求定义不稳定、不全面、质量不高,往往会导致下游工作如估算和计划、设计、编程、测试等等出现一系列错误,从而导致软件项目的返工、超支和超期。

所以,PM 用心抓好需求工作这个牛鼻子,项目就已经成功一半了。


7. Plan, Review and Adapt - 计划、评审与调整

做计划,写很多的管理文档和报告,是 PM 的首要职责?

做好计划对于 PM 来说,的确是一件非常重要的工作。谁都希望料事如神,一切尽在计划、掌握和管控之中。这样的项目做起来自然很爽了。

可事实是,在复杂的软件开发项目之中,套用一句俗话:永远不变的是变化,而且宇宙定律告诉我们:运动与变化是永恒的,静止与不变是相对的。

在对待计划这个问题上,传统方法与敏捷方法有着显著不同。传统方法更强调事先完美的计划,敏捷方法更强调及时的反馈、评审和调整。把两者有机地结合起来,就能让我们立于不败之地。(太极)


8. Time (Timing), Schedule and Progress - 时间、排程与进度

天时,历来是个热点与核心问题。

客户和领导们最关心的往往是:这个系统到底什么时候才能真正交付?

目前已知最好的保证进度、确保按时交付的软件开发方法是:迭代式(Iterative)。


9. Testing and Verifying the Quality - 测试与质量

软件质量一旦出了问题,会给项目带来很大的麻烦。


10. Measurements and Metrics - 度量指标

如何减少拍脑袋决策?

量化,拿出科学数据来。

度量指标并不是越多越好,够用就好。


11. Architecture and Design - 系统/软件架构与设计

太极软件工程认为,架构设计是软件设计的主要内容和主要矛盾,架构的质量决定了软件系统的质量。

PM 应该与团队中的架构师紧密合作,尽早消除软件架构的技术风险。


12. Reduce Cost - 降低成本

项目经理一定要会算账。

时间成本是一种主要的隐性成本。


13. Optimize Management - 优化管理

何谓管理?

管理动作:Planning, Estimating,Controlling & Monitoring, Leading, Reviewing, Adapting, Coaching and Serving - 计划、估算、监控、领导、评审、调整,教练与服务 ...

不同的价值观,不同的哲学,导致不同的管理理念和方法。


14. Keep Learning, Accumulating Knowledge and Experience - 坚持知识与经验的学习和积累

一位有经验的 PM 会非常留意个人管理知识和经验的不断学习、更新与积累。

Values, Principles, Patterns and Practices (VP3) - 价值观、原则、模式与实践做法

建议参照 VP3 结构来组织知识和经验。

...


做一名普通、平凡和平庸的软件项目经理比较容易,做一名优秀的软件项目经理很难。

您认为哪些事情和关键词对于 IT/软件项目经理来说最重要?

请拍砖、补充。

[ 本帖最后由 张恂 于 2010-7-15 15:25 编辑 ]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13633641/viewspace-668091/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 年度最佳案例
下一篇: 没有了~
请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2008-03-27

  • 博文量
    32
  • 访问量
    486563