当我们面对一个新的项目时,可以讲到开发的新系统看作一个黑盒子。我们首先要做的就是是否需要为这个项目划分“主题域”。如果需要,则通过“构件图”表示出来。
主题域:
通常,传统的对子系统划分的方式都是采用“业务名词+管理”的形式(例如:某系统划分为订单管理、客户管理、库存管理等等模块),该种方式是以“物”为划分线索的。区别于该种方式的以“事”为划分线索的方式,作者命名为“主题域”。
因为每一个主题域或者子系统都不会是单独存在的。他们有各种协作关系,所以我们需要使用“构件图”来表达出每一个主题域之间的协作关系。而这个协作关系也称为“服务接口”。
确定主题域范围:
我们将一个新的系统“事”线索划分了不同的主题域之后。还需要通过“上下文关系图”来确定出主题域的范围。
上下文关系图绘制要点:
1. 将主题域当作一个黑盒子;
2. 找出这个主题域的所有用户,考虑这些用户可能发什么的事件。这些事件将会引发内部生产人员的什么操作;
3. 再找出内部生产人员是否有主动发起的事件。