软件开发和莫斯科方法

开始一个新的软件开发项目是令人畏惧的。很多时候,有太多的事情要做,却没有足够的时间和资源去做。很难知道从哪里开始,或者你应该关注哪些功能。

这就是莫斯科方法等优先排序技术的用武之地。它根据重要性对你的想法和产品需求进行分类。这提供了一个更清晰的视图来关注什么。最终的结果(如果处理得当)是按时按预算交付可用的软件。

那么,究竟什么是MoSCoW方法,如何将其应用到软件开发中呢?


什么是莫斯科方法?

MoSCoW方法是一种在产品开发过程中管理需求的优先级划分技术。它代表了四种重要性:

  • 我一定有
  • S应该有
  • C可能有
  • 我们没有。

使用MoSCoW是一种对新软件的每个特性的重要性产生共同理解的方法。这就明确了你需要把时间和资源集中在哪里。

因此,您可以使您的软件开发按计划进行。由于这个原因,MoSCoW方法在敏捷软件开发中特别有用。


必须有

在MoSCoW方法优先级列表的顶部是您必须拥有的。必须包含软件的核心功能和特性。它们是你的MVP(最小可行产品)的组成部分。

因此,必须具备的功能是不可协商的。没有它们,部署软件就没有意义。你可以通过问几个关键问题来识别他们。

没有这个特性,程序还能用吗?

如果答案是否定的,那么这个特性就是你软件的核心,是必须具备的。

如果不包含此功能会发生什么?

必须具备的特性使您的软件具有可用性和功能性。那么,您的目标受众能够在没有该功能的情况下使用您的程序吗?

是否有解决方法或更简单的方法来做到这一点?

如果答案是肯定的,那么很可能这个功能不是必须的。与此同时,这种变通方法可能会成为一种必备工具。


应该有

应该具备的功能在优先级列表中紧随其后。这些特性对程序来说是必不可少的,但不是基本功能的关键组件。

换句话说,您的软件在没有它们的情况下也可以工作,但会因为没有它们而受到影响。

应该具备的特性为您的软件增加了重要的价值。因此,您可以通过考虑没有该特性或功能的影响来识别它们。

如果它破坏了产品,或者使产品无法使用,那么它是必须的。如果程序可以工作,但感觉失去了功能,它是一个应该有的。

必须具备和应该具备的功能应该占用你80%的开发时间和精力。


可能

在使用MoSCoW方法列出的优先级列表中,下一个是可能具有的特性。

could -have指的是你希望拥有的特性和修复。他们想要的。它们可以改善用户体验或客户对软件的满意度。但它们是不需要的。所以,把它们排除在下次送货之外不会有太大的负面影响。

在MoSCoW方法中,可能会错过您的交付而不会损害用户体验的第一组。因此,您应该只在时间和资源允许的情况下,在您的交付中包含可能具有的特性。也就是说,在“必须拥有”和“应该拥有”完成之后。


不会有

莫斯科方法中的最后一类特征是不存在的特征。“不想拥有”的特征分为两类:“这次不想拥有”和“永远不会拥有”。

不需要的功能是那些提供最少投资回报的功能。没有它们不会以任何方式影响您的软件。在某些情况下,包括它们甚至可能会损害用户体验(由于混乱的用户界面)。

莫斯科方法的“W”有时被认为是“可能的”。可能拥有的功能是那些只属于“这次不会拥有”类别的功能。它们的优先级仍然低于可能拥有的功能。

无论你把它们看作是“不会拥有的”还是“将要拥有的”,这一类别的特性和功能都没有时间和资源。它们要么被删除,要么被保存到未来的开发时间表中。


莫斯科方法

简而言之,MoSCoW方法可以帮助您保持项目的进度。它明确了编程的价值所在,并帮助您避免功能蔓延。

那么,您能在下一个软件项目中使用MoSCoW方法吗?


有用的链接