敏捷开发里的用语,如果我没有记错的话,是从 "user story"里直译过来的。
用户故事,顾名思义,难道是一个有关这个客户的传奇故事?真好笑,显然不是。
也许这是西方的一种什么俗称,或者是因为这写在一张卡片或小贴纸上,便于讲故事的原因?
不管它,反正敏捷开发里的所谓用户故事,是用于描述用户需求的,描述的格式是:
我作为一个。。。的角色,希望有。。。的功能,以便。。。
从中可以看出用户故事具备三个元素:
1、使用者:该功能的使用者或使用角色
2、功能需求
3、实现该功能的目的
我认为最重要的是3。用户提出的功能需求,是为了实现一定的目的。由于用户不够我们专业,他提出的功能需求可能是不全面的,甚至是不必要的,抓住他的目的,我们可以向他推荐更合适的功能。
通常用户故事由产品经理撰写。但在多职能团队里,可能是大家来写。
多职能团队,是指团队成员可以具备多种职能,比如开发人员可以负责一部分测试功能,也参与需求编写,等等。多职能,不同于多技能,比如不代表开发人员也要具备测试专业技能。做非专业工作,是辅助性质的,志在参与,而不强求是主力。