在上一篇文章的小结中,我们对设计可能出现的遗漏产生了担心。为了增强信心,本文就对之前的设计做一个回顾,看看能否发现一些被我们忽略掉的东西。
我们会通过对输入和输出的进一步研究。下面两个问题会对我们有所帮助:
- 输入来自哪?
- 输出如何用?
我们先来回顾购买自行车的第一个步骤(目标):添加自行车到购物车。
输入来自哪?
在 添加自行车到购物车
的步骤中,有两个输入:
- 自行车
- 购物车
第一个问题:自行车来自哪?
用户要先选择自行车,然后才能加到购物车。用户从哪里选自行车呢?显而易见,用户要先查询自行车,从查询的结果中,选择自行车。用户如何查询呢?用户可以指定名称
或者品牌
进行查询。查询应该返回什么结果呢?应该返回匹配用户查询条件的自行车列表
。这样,用户就可以选择自行车,并把它加入购物车。
第二个问题:购物车来自哪?
用户能够提供购物车吗?不能。每个用户都只有一个购物车,应该由 API 服务负责提供。用户只需要说明把自行车加到购物车,而不是收藏夹就可以了。
输出如何用?
在 添加自行车到购物车
的步骤中,没有返回业务信息,所以不做讨论。
成果
通过以上的设计回顾,我们发现了遗漏的步骤:搜索自行车
。同时,提出更多问题,找出了搜索自行车
步骤的输入和输出。大家可以参考上一篇文章中的成果示例,补充搜索自行车
的设计成果。
小结
对输入和输出的进一步研究,有助于发现遗漏的步骤或目标,甚至是用户的目的。我们使用输入来自哪?
和 输出如何用?
这两个问题,帮助我们找到被忽略的地方。
最后,对我们已经学到的问题做个总结: