待开发的系统有时相当复杂,涉及多种不同的业务,为了控制分析的复杂度,我们通常需要先将其分解成更小的部分。可以根据实现结构来划分,但在需求阶段更推荐根据业务来划分。
1、业务子系统划分
业务子系统划分包括以下三个步骤,
(1)划分业务子系统:根据系统特点,选择合适的划分策略进行分解。对于系统业务简单、用户群单一的系统,没必要划分。对于基于遗留系统开发的系统而言,更合适分析有哪些新增、修改、影响的子系统。对于相对复杂的新开发系统而言,最常用的策略包括,
(2)标识接口、确定关系:正所谓“哪里有分解,哪里就有接口”,在分解完成后,整理出两两业务子系统之间的“业务关系”、“服务关系”,明确各子系统之间的服务接口。
(3)呈现业务子系统划分:根据实际情况选择合适的图表来呈现划分的结果,以便读者建立清晰、直观的理解。常用的模型、图表主要包括层次图、构件图和数据流图三种。
业务子系统描述及说明模板,
划分业务子系统不是目的,而是一种手段,一种控制复杂度的手段。
2、业务接口分析
标识出各个业务子系统之间的服务关系之后,就需要针对这些服务关系(即业务接口)做逐一分析。分三个步骤,
1、明确接口的用途与业务价值,也就是Why的问题。在这一步中,最重要的是厘清以下三个问题。
2、细化接口的交互过程,在细化过程中,会使用到两种工具:一是时序图,呈现出接口的交互过程;二是数据词典,细化地定义出每次交互过程中数据包的构成情况。
3、确定接口设计约束,看客户技术管理部门是否有要求使用特定的数据、通信协议,或者遗留系统带来的限制;其次对数据传输、数据查询、加解密方面的性能要求进行一些分析;还应该考虑系统的部署环境(如服务器、网络)、使用者特点(频率、操作环境)等方面是否会带来一些设计约束。
业务接口分析模板,
业务接口是指不同业务子系统之间的服务关系,因此只要系统中存在多个业务子系统(也包括修改、影响的子系统)就需要执行该任务。