敏捷开发中的用户故事

news2024/11/27 6:20:58

用户故事

drawio是一款强大的图表绘制软件,支持在线云端版本以及windows, macOS, linux安装版。 如果想在线直接使用,则直接输入网址drawon.cn或者使用drawon(桌案), drawon.cn内部完整的集成了drawio的所有功能,并实现了云端存储,以及在线共创,分享,协作的功能。

用户故事是与UML用例图是强相关的, 用户故事与UML两者均被用于敏捷软件开发上下文。 两种类型的图表被用于研究和编写用户需求, 他们标识了不同的用户组和他们的目标, 但是他们通常以不同的方式使用。

用例图

一个用力展示了所有的结束方式——用户与你的系统进行交互,可以通过所有的前置,后置条件, 异常,备选路径等。 这些图表可以被用来建立你的系统需求, 无论他是否是一个软件系统或者与其他团队或者个人进行互动。

UML用例图不用于调度或广泛的计划目的,因为它们是高度技术性和具体的,而是作为系统技术文档的基础。

用户故事或者故事地图

用户故事捕捉的是用户需要做什么和为什么这么做, 是站在用户的视角。使用自然语言是很简单的写出来的。

作为一个[扮演者] 我想要做[动作] 去完成 一个 [目标].
As an [actor] I want to do [action] to achieve a [goal].

例如:

  • 作为制造商,我希望尽量减少刀具更换,以优化生产线,从而降低成本。
  • 作为一名顾客,我想在网上订购食品(以避免去商店,可以享受我的饭菜)。
  • 作为一个软件开发者, 我想要远程办公,节省路上的时间,写出更好的代码。

作为一个客户, 是不会对你的系统的技术实现细节感兴趣的,用户故事不是用来细化系统需求, 是为你留出时间和空间,用来研究备选解决方案(多个路径解决方案)为了能更好的满足客户的需求。

多个不同类型的团队发现用户故事映射是非常灵活和有用的计划工具可以保持持续的改进,保持开发完全聚焦在客户排优先级的需求上。

  • 软件开发——确定编码任务的优先级和时间表。
  • 市场——策划吸引客户的广告活动。
  • HR——改进招聘和入职流程和系统。
  • 工厂管理者——优化装配站或整条生产线。
  • 产品设计者——计划对现有产品的增量改进。
  • ITS——提高数据和网络的安全性和稳定性。
  • ...

例如客户聚焦的故事在敏捷开发中非常流行,而用户故事(epics[史诗]),会被分解成更小的任务(故事)或者实现步骤。 这些可以让敏捷开发团队评估和计划开发项目。小一点的任务能够更容易的排优先级,和按照时间表分配到backlogs中或者一个冲刺中(短跑)。

传统上,故事映射是用某种网格布局的白板上的便利贴来完成的,当您在分布式团队中工作时,这并不真正有用。

在当今的远程世界, 你可以复制白板和故事映射到drawon.cn中, 在drawon.cn中,可以使用表格映射, 容器和泳道(例如这些用于交叉功能流程图), 或者仅仅在看板上放置矩形来表示。

故事地图是一个活动, 客户想要去完成(某件事情),不应该包含更多的技术实现细节。 这个故事映射是以跨职能的方式进行构建。

如何构建一个故事地图

  1. 理解你的客户:标识他们的目标和他们想要实现目标的广泛活动。这些在你的地图中顶层,是大的故事——动作要领是有很多步骤。从高级图形库中找出一个名字为: 表格图像或者携带泳道跨职能流程图。

    例如, 作为一个【客户】, 我想要【在网上订购食品】。

  2. 把这些活动分解成小一些的步骤: 客户必须完成这些小任务以实现他们的目标: 浏览商品, 添加商品到购物车, 选择配送货物地质, 进入支付细节,等等。也许可以或者不可以定义工作量,任务能够被分解成更小一些的子任务,如果他们太大的话。

  3. 按照序列组织任务和子任务: 将较小的任务和子任务按照从左到右的顺序排列在它们的活动下面(或者用你喜欢的方式来阅读图表)。这可以显示客户完成活动和任务的顺序。

  4. 排列任务和子任务的优先级: 通过垂直排列指示任务/子任务的优先级——更重要的任务位于故事地图的较高位置。

        

Tips

  • 那些不需要按任何顺序执行的任务,或者那些具有同等优先级的任务,可以按照对你和你的团队最有意义的方式来组织。
  • 不要把技术细节放在图表中——技术细节使用UML来描绘,或者其他更详细的图表。

        

这是一个想要在线订购食品的顾客的故事地图,使用了通用图形库中的简单图形。

贯穿整个开发过程中不断的跟新你的故事地图

你的故事地图可以作为一个可视化的路线图,显示你已经完成的工作,剩下的和计划的工作,以及超出范围的工作。

将未实现的任务和子任务分发到版本中, 故事地图中的迭代和冲刺, 注意由它们的左右位置或依赖关系箭头指示的依赖关系,以及由它们的垂直位置指示的优先级

通过将任务和子任务拖到新的位置,或泳道中的新位置来重新确定优先级。

在您的故事地图中跟踪开发,就像您使用它计划您的项目一样。当您完成每个任务的实现时,添加一个图形、工具提示、颜色或标签,以显示任务已经完成(或正在测试、记录等)。

用特定的颜色表示超出发布范围的任务,添加一个形状来表示计划的冲刺以及任务是否已经实现。

和你的客户一起贯穿整个故事地图

你可以简单的用drawon.cn 发布一个故事地图,并创建连接分享给你的客户, 用于交流,提供分享理解, 产生新的想法。

与他们一起浏览故事地图,检查活动细节并从客户那里获得见解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1437357.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LLM是一个向量程序库,提示是查询语言

2013 年,Mikolov 等人在 Google。 注意到一些值得注意的事情。 他们正在构建一个模型,将单词嵌入到向量空间中——这个问题从 20 世纪 80 年代开始就已经有很长的学术历史了。 他们的模型使用了一个优化目标,旨在将单词之间的相关关系转化为…

【刷题日记】最长定差子序列

给你一个整数数组 arr 和一个整数 difference,请你找出并返回 arr 中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference 。 子序列 是指在不改变其余元素顺序的情况下,通过删除一些元素或不删除任何元素而从 arr 派生出来的序…

HDL Designer 2021.1 如何将默认编辑器修改为VsCode

第1步 安装Vscode 第2步 添加Vscode至HDL Designer 第3步 更改HDL Designer编译器 第4步 修改结束,在HDL Designer中双击block可使用Vscode编辑verilog

SpringBoot+Druid并开启监控页面

介绍 Druid 是一个开源的数据库连接池项目,由阿里巴巴集团开发并贡献给开源社区。它在Java领域中以其高性能、强大功能和易用性著称,是Java应用中广泛使用的数据库连接池组件之一。 Druid 的主要特点包括:   高性能与低延迟: Dr…

2月6日作业

1.现有无序序列数组为23,24,12,5,33,5347&#xff0c;请使用以下排序实现编程 函数1:请使用冒泡排序实现升序排序 函数2:请使用简单选择排序实现升序排序 函数3:请使用快速排序实现升序排序 函数4:请使用插入排序实现升序排序 #include<stdio.h> #include<string.h&…

我的QQ编程学习群

欢迎大家加入我的QQ编程学习群。 群号:950365002 群里面有许多的大学生大佬&#xff0c;有编程上的疑惑可以随时问&#xff0c;也可以聊一些休闲的东西。 热烈欢迎大家加入&#xff01;&#xff01; 上限:150人。

C++核心deque容器,stack容器,queue容器,list容器,set容器,pair ,map容器

3.deque容器 1.deque容器的基本概念 Vector容器是单向开口的连续内存空间&#xff0c;deque则是一种双向开口的连续线性空间。所谓的双向开口&#xff0c;意思是可以在头尾两端插入元素&#xff0c;但是在其头部操作效率奇差&#xff0c;无法被接受。 deque容器和vector容器最…

【C++第二阶段】空指针访问成员函数常成员函数常成员属性

你好你好&#xff01; 以下内容仅为当前认识&#xff0c;可能有不足之处&#xff0c;欢迎讨论&#xff01; 文章目录 空指针访问成员函数常成员函数&常成员属性 空指针访问成员函数 类对象类型的空指针可以访问成员函数&#xff0c;但是不能够访问带有成员属性的成员函数。…

Java基于微信小程序的医院核酸检测服务系统,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

arduino D1 中esp8266 没有ide的库

http://arduino.esp8266.com/stable/package_esp8266com_index.json https://arduino.esp8266.com/stable/package_esp8266com_index.json 这个是官网的包地址 拿到后复制到arduino ide中 然后在开发板管理器&#xff0c;搜索esp&#xff0c;搜出来后安装 去开发板选择 然后测…

俩种方法解决 VScode中 NPM 脚本消失,NPM 脚本未显示在资源管理器侧栏中

npm脚本是npm包管理器的一个功能&#xff0c;允许开发者在package.json文件中定义一系列命令脚本&#xff0c;用于执行各种开发任务。 今天打开准备运行的时候发现找不到NPM脚本了&#xff0c;左侧的一栏完全没有显示&#xff0c;在网上查阅了很多资料后总结出俩个方法可以用来…

前端基础复习(后端人员看前端知识)

企业级前端项目开发中&#xff0c;需要将前端开发所需要的工具、技术、流程、经验进行规范化和标准化&#xff0c;而不是零散的html、js、css文件堆叠在一起。 首先我们需配置前端的开发基础环境NodeJS&#xff0c;相当于后端人员java开发的JDK。然后搭建前端工程脚手架Vue-cl…

vue electron应用调exe程序

描述 用Python写了一个本地服务编译成exe程序&#xff0c;在electron程序启动后&#xff0c;自动执行exe程序 实现 1. 使用node的child_process模块可以执行windows执行&#xff0c;通过指令调exe程序 // electron/index.js var cp require("child_process"); /…

企业邮箱是什么?企业邮箱百科

本文将为大家讲解&#xff1a;1、企业邮箱的定义&#xff1b;2、企业邮箱的主要功能特点&#xff1b;3、企业邮箱如何选择和部署&#xff1b;4、企业邮箱的运营与维护&#xff1b;5、企业邮箱在实际工作中的应用与挑战&#xff1b;6、2024年最新五大企业邮箱盘点   下面提到的…

U盘显示空间小于实际U盘空间的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

IP地址如何保护网络安全

面对网络攻击时&#xff0c;仅依靠常态化的网络安全防御系统已捉襟见肘&#xff0c;如联合使用IP地址数据可以形成多元化的安全解决方案&#xff0c;全面监控网络活动&#xff0c;发现潜在威胁&#xff0c;制定有针对性的应对措施。 网络攻击追踪 当网站或应用遭受DDoS等网络攻…

【JS逆向五】逆向模拟某网站的生成的【jsonKey】值 仅供学习

逆向日期&#xff1a;2024.02.07 使用工具&#xff1a;Node.js 加密方法&#xff1a;AES 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 可使用AES进行解密处理&#xff08;直接解密即可&#xff09;&#xff1a;在线AES加解密工具 1、打开…

Spring Batch 批处理框架适配达梦数据库,实现从文件批量读取写入数据库(完整教程)

效果展示(达梦数据库): 技术简介: Spring Batch 是一个基于 Spring 的批处理框架,用于开发和执行大规模、高性能、可靠的批处理应用程序。它提供了丰富的功能和组件,用于处理复杂的批处理任务,例如大数据ETL(Extract-Transform-Load)、数据清洗、数据迁移、报表生成…

StringBuilder类常用方法(Java)

StringBuilder类常用方法 StringBuilder 是 Java 中常用的字符串缓冲区类&#xff0c;适用于频繁修改字符串的场景。 1. append(): 将指定字符串、字符、布尔值或其他数据类型的表示追加到字符串缓冲区的末尾。 StringBuilder sb new StringBuilder("Hello"); sb.…

9.0 Zookeeper 节点特性

本章节介绍一下 zookeeper 的节点特性和简单使用场景&#xff0c;正是由于这些节点特性的存在使 zookeeper 开发出不同的场景应用。 1、同一级节点 key 名称是唯一的 实例&#xff1a; $ ls / $ create /runoob 2 已存在 /runoob 节点&#xff0c;再次创建会提示已经存在。 …