王争《设计模式之美》学习笔记
需求分析
- 文中举例,一个积分兑换系统的开发实战,技术人员应该更多地参与到产品设计中。
- 作为技术人,我该怎么做产品设计呢?首先,一定不要自己一个人闷头想。一方面,这样做很难想全面。另一方面,从零开始设计也比较浪费时间。所以,我们要学会“借鉴”。
- 除了“借鉴”的思路,还可以通过产品的线框图、用户用例(user case )或者叫用户故事(userstory)来细化业务流程,挖掘一些比较细节的、不容易想到的功能点。
- 用户用例有点儿类似我们后面要讲的单元测试用例。它侧重情景化,其实就是模拟用户如何使用我们的产品,描述用户在一个特定的应用场景里的一个完整的业务操作流程。
- 有关积分有效期的用户用例,我们可以进行如下的设计:
- 用户在获取积分的时候,会告知积分的有效期
- 用户在使用积分的时候,会优先使用快过期的积分
- 用户在查询积分明细的时候,会显示积分的有效期和状态(是否过期)
- 用户在查询总可用积分的时候,会排除掉过期的积分。
- 通过上面讲的方法,积分系统的需求如下:
- 积分赚取和兑换规则:
- 积分的赚取渠道包括:下订单、每日签到、评论等。
- 对于积分的有效期,我们可以根据不同渠道,设置不同的有效期。
- 积分消费和兑换规则:
- 积分赚取和兑换规则: