客户想要优秀的软件产品,企业想要提供这些产品,开发团队想要创造这些产品。但要创造一款让用户和客户满意的最终产品,需要在产品开发的每个阶段进行清晰的沟通,以确保每个人都同意项目的目标、流程和结果。
无论您是希望用户按成分类型搜索网站的食品垂直行业,还是希望在个人资料中显示不同性别或性取向供用户选择的约会应用程序,清楚地确定您希望产品满足的需求以及产品必须满足的条件才能满足这些需求,这对于以最少的混乱和延迟制造出最好的产品至关重要。
这就是用户故事和验收标准的用武之地。用户故事可以帮助您和您的客户在开始开发之前走到一起,为产品制定共同的愿景,阐明您要满足的需求和为谁满足的需求,以及何时您会知道您已经实现了目标。
验收标准是什么?它们在用户故事中起什么作用?
在开发圈中(尤其是在使用 Agile 时),团队希望定义他们正在开发的产品的功 以色列电话号码库 能以满足最终用户的需求。但团队中的每个人对最终用户可能想要什么都有不同的想法(或者他们带来的技能或观点也不同),即使是最团结的团队也难以定义他们的项目并确定他们何时实现了目标。
用户故事和验收标准旨在解决这些问题,并使开发工作尽可能有效和高效。
当开发团队创建待办事项时,他们首先会创建用户故事。用户故事是对产品用户想要的功能的简单描述,以及他们将如何使用该功能的描述。它通常采用以下形式:作为 [用户类型],我想要一个 [特定功能],这样我就可以 [满足特定需求]。例如,图书馆用户可能想要一个可搜索的在线目录,这样她就可以足不出户地发现某本书是否有货。
客户、产品所有者和开发团队可以共同制定用户故事,以确保每个人都能达成共识。但之后,开发团队就需要交付功能。这时验收标准就派上用场了。验收标准是开发团队完成用户故事必须满足的条件。换句话说,验收标准让团队知道他们何时创建了满足用户需求的功能。验收标准提供了清晰、可实现、可测试的标准,让团队确切地知道他们何时完成了产品开发难题的一部分,以及何时可以继续下一个任务。它们充当现实的时间表,让团队可以规划出一个项目需要多长时间,并安排好自己的成功计划。由于制定验收标准需要开发团队所有利益相关者的参与,因此它还可以确保客户和开发人员从一开始就朝着明确而共同的目标努力,减少沟通不畅并最大限度地提高效率。
编写出色的验收标准的技巧
验收标准是创建满足用户需求的产品的重要工具。它是一种通用语言,可帮助您的团队朝着共同目标努力,是一份让每个人都步入正轨的核对清单,也是可测试的系统,可让您知道何时完成任务 — — 所有这些都包含在一个系统中。
每个产品待办事项或用户故事在实施之前都应至少写一个验收标准。但谁来写呢?每家公司对编写过程的处理方式都不同。有些公司选择让客户牵头编写,因为他们对自己想要的功能有清晰的愿景,并且与产品用户有关系。其他团队将任务分配给业务分析师,业务分析师利用她对客户需求的了解和开发人员的技能来制定故事标准。选择最适合您团队的人。要记住的关键是,编写应该在项目开始之前完成——并且所有参与者都应该在开始之前理解并同意标准。
简洁有效的验收标准应该:
明确但不狭隘
验收标准应该明确阐述目标,但不应具体规定如何实现目标。这样做的验收标准太过狭隘,不允许开发人员灵活地有效解决问题。同样,狭隘的验收标准可能会无意中排除某些用户行为。应制定足够具体的标准来提供方向,但又足够宽泛来涵盖不同的潜在方法和用户行为。
可实现且可独立测试
在制定个人目标时,确保目标可实现且可衡量非常重要。验收标准也是如此。编写可以独立客观测试的标准 - 让开发人员知道他们何时达到了目标。这样,您不仅可以创建可实现的用户故事。您还会知道何时实现了它们。
简单直接
验收标准不应该像手册一样阅读。它们应该像指令一样阅读:清晰、简洁、切中要点。验收标准应该始终阐明用户故事,而不是混淆它,因此请避免使用复杂的想法、技术细节或行话。清楚地说明您想要实现的最终结果。专注于您想要实现的目标,而不是如何实现。这将建立清晰的沟通,同时让开发人员能够灵活地解决问题。请记住,使用所有利益相关者都能同意和理解的语言。
得到所有利益相关方的支持
用户故事的好坏取决于其验收标准——但每个人都需要接受验收标准才能使其有效。验收标准的全部目的是确保每个人都朝着同一个目标努力。因此,每个人都必须对标准本身有共同的理解。无论谁最初编写标准,都要确保所有利益相关者(从客户到产品和开发团队)都同意。这将确认每个人都同意手头的任务及其衡量方法,并在您开始之前为顺利的用户故事流程铺平道路。
验收标准示例
谈论编写验收标准是一回事,但要掌握它却可能很难。正如用户故事遵循一个粗略的公式——[类型的用户]想要一个[特定功能]来满足[特定需求]——验收标准遵循所谓的给定/何时/然后格式。更简单地说,它可以采用用户故事必须满足的条件列表的形式。在编写验收标准时,您应该解释场景,然后遵循以下模板:给定[事情如何开始],何时[特定操作发生],然后[采取行动的结果]。
为了使这一点更容易理解,我们提供了两种场景,下面提供了有效的基于列表的验收标准的示例。
场景一
在这个例子中,用户(旅游网站的访问者)想要在搜索栏中输入地址并获取附近的酒店列表。
此场景的验收标准可能如下所示。
场景:用户在网站上输入地址以查找附近的酒店
假设:假设我输入了我的地址来查找附近的酒店
时间:当我使用搜索栏时
然后:然后我会找到附近的酒店列表
场景二
在这个例子中,用户想要恢复帐户的密码,以便在忘记密码的情况下可以访问该帐户。
此场景的验收标准可能如下所示。
场景:用户忘记密码并点击“忘记密码”链接来恢复密码。
鉴于:鉴于我已请求恢复密码
时间:当我到达登录页面时
然后:系统会将恢复链接发送到我的电子邮件
鉴于:鉴于我收到了电子邮件
然后:然后我可以打开链接,验证我的身份,并得到重置密码的提示。
时间:然后我可以安全地重置我的密码。