要想管理好一个软件项目,主要是管理好「人」和「事」,「人」包括项目涉及到到所有关联人员,而管理好「事」就是软件工程要做的事情。
基本理论
//TODO:
软件质量金三角
时间,范围,成本,质量 四个要素不可能面面俱到,如同CAP定理和Base理论一样。一定要让老板和产品经理意识到这个问题,才能顺利进行解决方案到分析和讨论。其实我们几乎所有的项目方案都是在这些要素之间做取舍。
知道哪些是正确的事
//TODO:
需求变更
需求变更的根源
- 对需求的理解不够透彻,产品方案不够慎重。
- 需求变更的成本其实是很高的。
- 需求方或产品认为需求变更是几乎无成本的。
如何应对?
- 要把需求理解的更透彻,需要更专业和更有经验的产品经理,有时候开发人员也可以参与到产品前期的方案讨论中,多讨论,才能挖掘更深层次的需求。
- 要降低需求变更的成本:对于互联网项目,可以采用快速迭代的敏捷开发方式,减小迭代周期,增加应对需求变更的灵活性。对于后期有很大可能产生需求变更的点,可以在设计上做成可配置的,或者方便修改的形式,但是也不能过度设计,因为这些应对变化方案也是有相应成本的,我们需要根据情况进行取舍。
- 对于产品和需求方:要在需求变更是有成本的这一点上达成共识,可以通过软件工程相关知识、以房地产举例等方法说服他们接受这个事实。 量化每个需求变更的成本,比如需求变更也是一个独立的任务,也要进行评估、估点。对于插入到正常迭代周期内的变更需求、会导致其他需求延期。优先级由产品团队自己去决定。其实这也是变相增加了产品提出需求变更的成本、只有当需求变更对他们自己来说也是有很高成本的时候,他们才会再需求定稿的时候更加慎重。
风险管理
主要风险
- 项目风险:预算、进度、用户、需求等
- 人员风险:离职、人手不足
- 技术风险:引进了项目成员不熟悉的技术、技术不成熟等
- 商业风险:市场反应、产品策略、市场变化和应对策略等
应对方法
用合适的方式去做
应对相关人员
//TODO:
充分认识环境
//TODO:
正确和基本正确的权衡
//TODO:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。