美文网首页
用户故事与敏捷开发(一)什么是用户故事

用户故事与敏捷开发(一)什么是用户故事

作者: 是高斯斯 | 来源:发表于2020-05-10 21:09 被阅读0次

    本文内容整理于《用户故事与敏捷开发》,这本书介绍了用户故事的重要价值和实践方法,同时介绍了如何在敏捷开发方法中使用用户故事。

    一、什么是用户故事

    用户故事描述了对用户有价值的功能。用户故事站在最终用户的立场考虑问题,从用户角度出发描述功能。

    以求职网站为例,“用户可以发布新职位”是一个故事,“这个软件用C++语言来编写”则不是一个故事,用户并不关心系统是用什么语言编写的。

    完整的用户故事主要由三部分组成:

    1)描述:“作为(角色),我想要(功能),以此(商业价值)”,用来做计划和作为提示

    2)对话:记录产品经理和开发之间的对话,用于具体化故事细节

    3)测试:表达和编档故事细节,用于验证故事是否完成

    二、用户故事不是什么

    为了更好地理解用户故事是什么,应该了解用户故事不是什么。用户故事与其他三种常见的需求方法产品需求文档、用例和交互设计场景的区分如下。

    1.用户故事不是产品需求文档

    产品需求文档与用户故事的区别在于:

    1)撰写目的不同

    需求文档假定事先可以完整定义所有需求,如细节改动被记录为“需求变更”;用户故事的细节在开发前才讨论确定

    2)侧重点不同

    需求文档是需求列表,是一个check list;用户故事描述用户目标

    3)时间成本不同

    需求文档成本不可见,撰写文档、需求排期还需额外花费时间;用户故事以故事点为单位,速率估算更直观

    2.用户故事不是用例

    1)范围不同

    用例覆盖的范围比故事范围大,故事会与用例中的某个场景类似

    2)完整性不同

    故事对应用例的主要成功场景,故事测试对应用例扩展

    3)寿命不同

    用例常常永久性存在,故事不会超过包含他们的迭代,迭代结束时故事即完结

    4)关注用户界面程度不同

    用例比较容易包含用户界面,用例编写者会过早地关注软件实现,而不是去关注商业目标;在项目早期,故事会避免过早涉及用户界面,更为关注需求和目标

    5)目的不同

    用例用来记录客户和开发团队之间的协议;用户故事为了更方便发布计划和迭代计划,充当用户具体需求对话的占位符

    3.用户故事不是交互设计场景

    交互设计场景包含更多细节,范围通常涵盖多个故事。

    三、用户故事的优势在哪里

    在开发中使用用户故事具有以下优势:

    1)方便多种角色理解

    从用户角度出发描述功能,方便与不同角色人员沟通“一个软件系统应该做什么”

    2)强调口头沟通

    口头沟通便于调整切换需求或开发方向,同时面对面沟通能促进团队内隐性知识的累积

    3)鼓励延迟细节

    故事作为占位符,可以提醒产品与开发将来需要沟通。快速写出故事可以帮助产品和开发先建立系统整体概念,在开发中再讨论具体故事细节,先整体后局部

    4)适合迭代开发

    以故事点为单位,方便掌握实现目标所需的时间成本,适合做迭代开发计划

    5)鼓励参与设计

    用户故事收集和描述方式,可以激发用户积极性,成为软件设计的参与者

    相关文章

      网友评论

          本文标题:用户故事与敏捷开发(一)什么是用户故事

          本文链接:https://www.haomeiwen.com/subject/xdusnhtx.html