软件过程与管理学习之(1)Project management Methodologies & Standards(项目管理方法和标准)

项目管理方法和标准(Project management Methodologies & Standards)

常见的方法和标准

在这里插入图片描述

  • waterfall:先做设计,设计完了之后再进行实现,实现完了测试
  • scrum:和 agile 非常相似,都试图克服 waterfall 这种线性方式,他们试图通过迭代的方式来完成项目的管理
  • prince2
  • agile

Waterfall

  • 从其他领域学习来的(建一个大桥或者建一个房子)应该首先规划所有的需求(构建蓝图)
  • 在构建和完全完成实施之前不会进行测试工作
  • 所以 waterfall 是建设没有任何的替代方案,直接将blueprint 设计成完美形态
优势
  • 广泛的计划,这种彻底性通常会导致更精确的时间线和预算;在实施之前就会把所有的东西都设计好,你明确地知道要设计多少个 class,使用多长的时间,雇佣多少开发者来完成这件事 因此实施过程中是非常舒服的
  • 但是在 waterfall 的框架下一旦发现问题也是很难解决的( 难以应用更改或修改/纠正之前的步骤(水不能倒着跑),需要主动预测问题)

Agile

  • 非常适合经常发生需求变动的开发场景(开发过程中使用的依赖库发生改变···,这时候需要相应的改变代码;或者使用新的硬件的时候)
  • 通常开发过程中会经常收到来自用户的反馈情况
  • 开发过程中可以将开发到一定程度的产品给用户展示,方便在中途收到反馈,这是 waterfall 不具备的
  • 但是 agile 的过程非常依赖经验,如果之前没有这么做过可能会做的不好

如何选择项目管理的方法

  • 没有最好的项目管理方法,要根据下面的几个指标进行考虑:
    在这里插入图片描述

清晰稳定的范围(clarity and stability of scope)

  • 如果你什么都不知道,你只是想开始并且看看事情会发展成什么样,不要选择 waterfall 因为你没有需求是没法使用 waterfall 的;
  • 相反如果需求非常明确,那么就采用 waterfall

时间线(timelines)

  • waterfall 使得 timeline 的规划非常简单直接(比如前两个月做 requirement,再一个月做 design,两个月编代码,两个月做测试)
  • 但是对于 agile 或者 scrum,不太容易规划时间线,比如你在开发过程中可能需要获得用户的反馈,但是你并不知道用户什么时候会愿意给你反馈,因此不确定性很高;而且如果他们一直有新的想法,那么时间线的规划就更加遥遥无期

项目失败与否及其主要原因

一些衡量的主要指标

在这里插入图片描述

  • Successful: 项目定期完成,并且在预算范围之内,实现的功能和特点也都达到预期
  • challenged:完成了,但是逾期或者超预算,或者没有完全达到预期的功能要求
  • failure:中途的某个时间点取消了项目

决定项目成功的因素

在这里插入图片描述

  • 技术并不是最重要的,管理也不是最重要的,最重要的是钱、员工的成熟度、用户的参与度、优化

了解组织如何选择最佳/正确的项目(项目筛选)

在这里插入图片描述
在这里插入图片描述

思维导图

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暖仔会飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值