第一阶段-需求定义阶段
需求定义阶段强调了一个重点就是高屋建瓴和从顶向下的思路。当要做一个全新的软件产品的时候,我们首先肯定是进行需求收集和调研,所以书里面专门谈到了需求捕获的最佳实践,包括用户的访谈和调查,现场的观摩等。同时也提出了类似任务卡片等很好的现场需求捕获工具。为什么一开始要强调第一阶段对系统的宏观把握和高屋建瓴,因为在做一个全新的软件产品的时候我们很容易收集到大量用户现有的流程,表单,组织架构等信息和资料,但是这样很容易一次的陷入到需求细节中而对企业的业务没有一个宏观的把握。主题域划分+上下文图,是需求定义阶段的重要输出。主题域划分主要是从业务的视角来考虑子系统应该如何划以降低业务本身的耦合,在书中也专门提到了主题域划分的思考应该从组织结构为线索,从分管领导找突破以及借鉴典型的业务职能区块等。主题域划分清楚了下一步重点就是要确定主题域的范围,自然引入了上下文关系图,其核心就是要将主题域或子系统作为一个黑盒来分析,搞清楚边界和其于外部用户的交互。通过理清楚上下文关系图后第一阶段的输出基本就很容易明确了,即业务事件+报表需求。在这里我觉得重点要借鉴的就是从顶向下的系统思维和分而治之,这是解决问题很重要方法。同时刚开始一定不要跳过这个阶段而落入需求细节。主题域和业务事件是两个重要概念,而这两个概念核心又是业务场景。