打算在部门内部推行XP,也看了一些资料,根据我们部门的实际情况,打算从需求方面采用user story开始。但是在实践了两次之后,有些问题浮现了出来,因此,特地到此宝地求教一二。
User story,从我的角度来理解,他的好处,显而易见,可以将用户的需求尽快、尽早、尽量详细的向开发团队、以及利益相关者来开放,可以发现需求中不合理的地方,并且可以挖掘出需求中一些真正对客户有价值的东西;也许客户刚开始认为重要的需求,由于某些新的,更加关键或者更加有business value的东西出现,而变得不重要了。此外,对user story的讨论,会对设计者产生潜移默化的影响,user story的INVEST特性中的I(independent)特性,自然的要求系统的各个模块和层次之间,尽量减少耦合。其余的几个特性,虽然说起来很简单,但是怎么做到,真的是挺难的。
以我最近的实践,我们部门内部打算以xp的方式开发一个图书管理系统(BMS)。我要描述的后面三个user story涉及如下的角色:
☆初级读者:只能使用系统的一些基本功能,并且所能查阅到和借阅的书籍也受限制
☆资深读者:可以使用系统的一些深入功能,查阅到的书籍范围比初级读者多
☆系统管理员:系统的全部功能都对他开放,系统中的数据处理权限对他全部开放
user story:
1、初级读者对现有全部图书的情况进行查询。
接受条件:
○ 按照下列查询字段:书籍名称、所属类别、作者、出版社、ISBN;
○ 对查询结果的要求:可以按照书籍名称、所属类别、作者、出版社、价格进行排序;
○ 可以看到书籍当前的借阅状态(是否被借出,归还日期等)
○ 查到的书肯定都是可见的(系统中的书籍,有可能是不可见的,)
○ 不能看到资深级别的书
2、资深读者对现有全部图书的情况进行查询。
接受条件: ○ 按照下列查询字段:书籍名称、所属类别、作者、出版社、ISBN、读者级别、借阅人、借阅状态
○ 对查询结果的要求:可以按照书籍名称、所属类别、作者、出版社、借阅人、借阅读者级别、价格进行排序;
○ 可以看到书籍当前的借阅状态(是否被借出,归还日期等),并且可以看到借阅人是谁
○ 查到的书肯定都是可见
3、系统管理员对现有全部图书的情况进行查询。
接受条件: ○ 按照下列查询字段:书籍名称、所属类别、作者、出版社、ISBN、读者级别、借阅人、借阅状态、是否可见(包括全部的情况)
○ 对查询结果的要求:可以按照书籍名称、所属类别、作者、出版社、借阅人、借阅读者级别、价格、是否可见进行排序;
○ 可以看到书籍当前的借阅状态(是否被借出,是否处于续借状态,归还日期等),并且可以看到借阅人是谁
○ 可以看到系统中的全部书籍(也可以看到对读者不可见的书)
就上述三个user story来讲,主干功能是相同的,但是有些细节:书籍的状态,借阅人的状态,能看到的书籍名录,书籍的明细字段等,这些细节不甚相同。当我写出这三个user story的时候,我对自己产生了怀疑,这些是合格的用户故事么?他们之间并不是互相完全独立的啊。是不是能够考虑拆分?如果考虑的话,又该如何拆分呢?这些疑问,哪位实践过user story的兄弟能给指导一下啊?
分享到:
相关推荐
User Story在敏捷开发过程中的应用 在这本书中,Mike Cohn提供了一种如何编写User Stories以及如何在软件开发生命周期中运用它们的详尽蓝图。
User Story Mapping
对与敏捷开发技术,对于user story 的分析是很重要的
A_good_example_of_user_story
敏捷开发使用用户故事描述需求
为什么使用User Story? 什么是User Story? 好的User Story有哪些特点? User Story的生命周期是什么样的? 切分User Story的小技巧
vanessa-bdd-editor, 具有BDD风格的Epics和 UserStory Каталог 。githubинструкция"контрибьютору
后台管理模块 User Story.xlsx
user story在敏捷开发过程中的应用
人机交互+记事本设计+界面设计+需求设计+概念设计+userstory 逻辑设计 从User Story的描述得知用户期望的电子记事本是记事本、日历以及通讯录的综合,因此可以尝试将三者结合起来,通过超链接实现用户的需求。
OpenStack 用户使用指导 user-guide
对于敏捷开发来说,User Story是开发的基础,它不同于传统的瀑布式开发方式,而是把原本需求拆成最小粒度的Story,以方便拆分Task,估计开发时间,领取开发任务。1.Beingveryshort.Theyrepresentsmall ...
user stories,mainly for agile development
The concept of user stories has its roots as one of the main tenets of Extreme Programming. In simple terms, user stories represent an effective means of gathering requirements from the customer ...
用户建模方法的使用,不是很全^_^;但关键部分很明确,是很好的用户为中心的设计的指导材料
用户的故事 ###我的第一个node.js项目一个基于堆栈的实时Web应用程序,允许用户创建故事并阅读它们。 用户使用jwt软件包模块注册/登录后,便会进行正确的身份验证。
SRS -software requirement specification
HI3516 Hardware Design User Guide 硬件指导手册 ,硬件设计指导。
用户故事介绍User Story的目标是设计和展示一个可扩展的后端基础设施,提供一个 Web 界面,允许用户以简单直观的方式请求新功能并提供反馈。 用户可以在他们的故事中附加文件来解释他们想要什么。 然后管理员可以...
RAC User Equivalence Check Failed (后加个人实际情况总结).txt )