软件开发和莫斯科方法

开始一个新的软件开发项目是令人畏惧的。很多时候,有太多的事情要做,却没有足够的时间和资源去做。很难知道从哪里开始,或者你应该关注哪些功能。
这就是莫斯科方法等优先排序技术的用武之地。它根据重要性对你的想法和产品需求进行分类。这提供了一个更清晰的视图来关注什么。最终的结果(如果处理得当)是按时按预算交付可用的软件。
那么,究竟什么是MoSCoW方法,如何将其应用到软件开发中呢?
什么是莫斯科方法?
MoSCoW方法是一种在产品开发过程中管理需求的优先级划分技术。它代表了四种重要性:
- 我一定有
- S应该有
- C可能有
- 我们没有。
使用MoSCoW是一种对新软件的每个特性的重要性产生共同理解的方法。这就明确了你需要把时间和资源集中在哪里。
因此,您可以使您的软件开发按计划进行。由于这个原因,MoSCoW方法在敏捷软件开发中特别有用。
必须有
在MoSCoW方法优先级列表的顶部是您必须拥有的。必须包含软件的核心功能和特性。它们是你的MVP(最小可行产品)的组成部分。
因此,必须具备的功能是不可协商的。没有它们,部署软件就没有意义。你可以通过问几个关键问题来识别他们。
没有这个特性,程序还能用吗?
如果答案是否定的,那么这个特性就是你软件的核心,是必须具备的。
如果不包含此功能会发生什么?
必须具备的特性使您的软件具有可用性和功能性。那么,您的目标受众能够在没有该功能的情况下使用您的程序吗?
是否有解决方法或更简单的方法来做到这一点?
如果答案是肯定的,那么很可能这个功能不是必须的。与此同时,这种变通方法可能会成为一种必备工具。
应该有
应该具备的功能在优先级列表中紧随其后。这些特性对程序来说是必不可少的,但不是基本功能的关键组件。
换句话说,您的软件在没有它们的情况下也可以工作,但会因为没有它们而受到影响。
应该具备的特性为您的软件增加了重要的价值。因此,您可以通过考虑没有该特性或功能的影响来识别它们。
如果它破坏了产品,或者使产品无法使用,那么它是必须的。如果程序可以工作,但感觉失去了功能,它是一个应该有的。
必须具备和应该具备的功能应该占用你80%的开发时间和精力。
可能
在使用MoSCoW方法列出的优先级列表中,下一个是可能具有的特性。
could -have指的是你希望拥有的特性和修复。他们想要的。它们可以改善用户体验或客户对软件的满意度。但它们是不需要的。所以,把它们排除在下次送货之外不会有太大的负面影响。
在MoSCoW方法中,可能会错过您的交付而不会损害用户体验的第一组。因此,您应该只在时间和资源允许的情况下,在您的交付中包含可能具有的特性。也就是说,在“必须拥有”和“应该拥有”完成之后。
不会有
莫斯科方法中的最后一类特征是不存在的特征。“不想拥有”的特征分为两类:“这次不想拥有”和“永远不会拥有”。
不需要的功能是那些提供最少投资回报的功能。没有它们不会以任何方式影响您的软件。在某些情况下,包括它们甚至可能会损害用户体验(由于混乱的用户界面)。
莫斯科方法的“W”有时被认为是“可能的”。可能拥有的功能是那些只属于“这次不会拥有”类别的功能。它们的优先级仍然低于可能拥有的功能。
无论你把它们看作是“不会拥有的”还是“将要拥有的”,这一类别的特性和功能都没有时间和资源。它们要么被删除,要么被保存到未来的开发时间表中。
莫斯科方法
简而言之,MoSCoW方法可以帮助您保持项目的进度。它明确了编程的价值所在,并帮助您避免功能蔓延。
那么,您能在下一个软件项目中使用MoSCoW方法吗?