zoukankan      html  css  js  c++  java
  • 《用户故事与敏捷方法》阅读笔记一

      第一章:概览

      1.什么是用户故事

      作者在文中给出了如下的定义:描述对用户、系统或软件购买者有价值的功能。我们不难看出,对于用户故事,他的立足点是用户,那么他就是对用户需求的描述。在BigMoneyJob网站的例子中:作者给出了几个事例故事:(1)用户可以搜索职位(2)公司可以发布新职位(3)用户可以限制浏览其简历的人。不难总结,用户,公司都是软件的用户。不理想的用户故事则是(1)这个软件将用C++语言来编写(2)程序将通过连接池连接数据库。如果是这样,则变成了开发者故事了。用户故事就是对用户有价值的需求。

      2.细节在哪里

      如何编写一个故事,像这样吗?(1)用户可以搜索职位(2)公司可以发布职位,显然这些需求比较庞大,甚至可以说没有用处,它没有细节之处,我们需要不断地分解故事,知道有一个故事能够覆盖到每一个细节,简单的一句“用户可以搜索职位”,我们首先需要分解为(1)用户可以通过地区,薪水范围,职位,公司名和发布日期之类的属性来进行搜索(2)用户可以查看搜索结果中每个工作的具体信息(3)用户可以查看发布工作的公司的信息。仅仅在第二点中,我们又可以继续划分(1)查看工作描述(2)查看薪水范围(3)查看工作地点,当然,这些不可能由开发者一人完成,需要与客户不断地交流讨论,毕竟他们才是真正的使用者。

      3.必须多长时间完成?

      显然我们需要知道用户对于软件完成时间的期望,这样有利于我们对软件完成的进度。

      4.客户团队

      这个类似于测试环节,但是又高于测试,建立一个客户团队,帮助开发者理解和完成所有的用户需求,这其中离不开测试人员,产品经理,实际用户和交互设计师。

      5.使用故事的过程是怎么样的?

      客户和用户不应该只在开始的时候参与进来写需求,而是在项目整个过程中全程参与。客户团队在迭代期间高度参与,与开发人员谈论正在开发的需求,不过我认为,这样做是否会有一个弊端,就是客户团队对于需求是否能够一直不改变,是否会一直变动需求?

      6.规划发布和迭代

      为发布中的所有迭代分配好需求之后,发布计划便“浮出水面”,开发人员需要估算出他们在议论迭代中能够完成多少个需求,客户团队则需要将这些需求按照优先级来分配到每轮迭代中。

      7.什么是验收测试?

      验收测试用来验证实现的用户需求是否符合客户团队的期望,而验收测试严需要尽早的编写并进行测试。

      8.为什么要变?

      需求集可以迭代,恰恰说明了需要,我们不必假装可以实现知道并写下所有东西,一客户团队和开发人员的讨论为基础,不断地今年我们的需求。

  • 相关阅读:
    EF多个上下文迁移
    Ruby知识点三:运算符
    Ruby知识点二:类
    不用搭环境的10分钟AngularJS指令简易入门01(含例子)
    JavaScript DOM编程艺术第二版学习(1/4)
    VisualStudio2013&VS2015内置SQLServer入门 (三)
    VisualStudio2015内置LocalDB
    VisualStudio2013内置SQLServer入门
    Java反射学习(java reflect)(三)
    Java反射学习(java reflect)(二)
  • 原文地址:https://www.cnblogs.com/heiyang/p/10976258.html
Copyright © 2011-2022 走看看