敏捷顶层设计方法

发表于:2013-03-25来源:减法架构设计专业论坛作者:高煥堂点击数: 标签:敏捷
敏捷顶层设计方法!这是由高焕堂老师所提出的顶层设计(Top-level Design)方法论。适用于智慧城市、数字家庭,以及大型SoS(System of Systems)系统设计,例如公共交通、旅游休闲、医疗健康等不同业务区块的顶层设计;并促进不同业务区块或系统之间的互联互通、信息共享、

  简介

  这是由高焕堂老师所提出的顶层设计(Top-level Design)方法论。适用于智慧城市、数字家庭,以及大型SoS(System of Systems)系统设计,例如公共交通、旅游休闲、医疗健康等不同业务区块的顶层设计;并促进不同业务区块或系统之间的互联互通、信息共享、并避免信息孤岛。欢迎各界先进专家批评指教,也欢迎广泛使用,不必付费。

  1. 目标:互联互通、信息共享、避免信息孤岛

  为了支持此目标,兹设计出一种顶层设计方法,如图-1a所示。

top-level-01

  图-1a 高焕堂老师提出的<敏捷顶层设计方法>

  与顶层设计的攸关的人员是:老板、设计团队、外界的专家、用户。本方法让攸关人员(Stakeholder)一起来贡献经验和知识,创造高质量的顶层设计,包括:老板提供愿景、设计团队提出架构、外界专家提供决策评核准则、用户提供需求测试。如图-1b所示。

Noname

  图-1b 高焕堂老师提出的<敏捷顶层设计方法>

  针对此图所示的方法,兹从不同面向来说明如下:

  1.1 架构(Architecture):基于EA和SoS原理

  此方法是基于企业架构(EA, Enterprise Architecture)框架和SoS(System of System)的原理而设计出来的。其设计文件包括愿景叙述、业务架构、系统架构等顶层架构设计文件和中层设计。其产出顺序如图-1所示。

  1.2 过程(Process):基于敏捷开发(Agile Development)原则

  此方法的顶层设计过程是基于当今最流行的敏捷(Agile)开发原则。以敏捷的测试来带动设计团队进行迭代(Iterative)过程。以测试结果的反馈(Feedback)激发各参与人员(Stakeholder)的反思、讨论与重构设计,让顶层设计止于至善。图-1里的循环圆圈,就表示其迭代过程。

  1.3 决策分析(Decision Analysis):基于AHP方法

  采用AHP决策分析方法(常与EA框架搭配),来评估顶层设计里的重要决策。以确保设计决策的<最佳性>。这表示于图-1里最右边的小圆圈。

  1.4 需求检验(Requirement Test):基于TDD方法

  以敏捷的<测试驱动开发>(TDD, Test-Driven Development)来带动整个设计团队进行迭代过程。这迭代过程,会不断重构顶层设计,来满足用户的功能性需求。这表示于图-1里最左边的红色圆形。

  1.5 中层设计(Middle-Level Design):基于EIT软件造形

  这个中层设计是此方法里最独特的部分。其特性如下:

  基于高焕堂设计的EIT软件造形。

  EIT造形以软件代码(Code)实践上层系统架构的互联互通接口设计(Interface Design)。

  这造形的软件代码,做为TDD测试的对象。

  如果EIT造形的代码没有通过TDD检验,就会发出反馈来驱动一次新的迭代循环,驱动设计团队重构顶层设计。

  当EIT造形代码通过了TDD检验,就表示该接口设计是电脑可执行的,也确保了顶层设计里的互联互通(接口)设计是具有<可实现性>的。

  1.6 减法设计:善用MCS模式和EIT造形

  使用高焕堂老师设计的MCS系统模式,定义了系统架构层级的共同概念(Concept)和词汇,以秦代”书同文”途径来创造顶层设计的<简洁性>;进而提升团队之间的共识(Shared Understanding),建立出系统互联互通的基础。

  基于MCS系统模式所创造的简洁性,就可针对各系统之间互联互通的接口部分,以明确的EIT软件造形来定义之;以唐代”诗同形”途径来提升顶层设计(和中层设计)的<明确性>。才能有效检验顶层设计的<可实现性>。

  1.7 加法设计:无限创新

  有了愿景和架构的指引,让人们的思考连结到更多的未知(Unknown)新事物。基于减法设计,让人们更有勇气面对复杂。透过迭代和反馈的去芜存菁,让人们更具有信心去经营未来、捕捉新机会。因此,激发出更多的新型商业模式和策略。

  2. 架构的设计步骤:举例说明

  由于本文的篇幅限制,于此仅介绍顶层设计的架构的分层(Layering)和设计步骤,就不特别说明各步骤的详细工作内涵和细节文件了。

  2.1 业务架构:商业创新

  从图-1所示,说明了业务架构是基于愿景(Vision)而激发的创新业务,使用EA框架而产出的业务架构设计文件或蓝图(属于顶层架构设计文件的一部分)。例如有一个新型业务,如图-2所示。

top-level-02

  图-2 创新业务之例:在家服务的股市分析

  基于这项创新业务模式,使用EA框架来规划其详细的架构,并产出业务架构设计文件。一旦完成了,就进入下一步骤,进行<系统架构设计>任务。

  2.2 系统架构:运用MCS模式

  建立TMCS系统模式

  在本方法里,建议运用xMCS模式来思考系统结构,此模式如图-3所示。

top-level-03

  图-3 TMCS模式定义了4种元素

  基于这4种元素来构思系统架构,将其标示如图-4所示。

top-level-04

  图-4 以TMCS模式来构思上述的创新业务

  基于此图,可以延续上一节的EA业务架构,进入到EA的系统架构设计。

  建立系统架构

  一旦各个系统都以MCS系统模式去构思,系统架构层有了一致性的思维;则系统架构图,就呈现出既简单又能互相理解的架构文件了。这项简化的设计动作,通称为减法设计。其简化效果如图-5所示。

原文转自:http://223.26.63.39/?p=138