微服务架构设计 第一步: 从特性到业务场景

2016.9.8, 深圳, Ken Fang

微服务到底应该如何的识别? 微服务的粒度为何? 微服务该如何的分析与设计?

这些问题的答案, 取决于: 为何需要微服务?

为何需要微服务?

目的只有一个: 比竟争对手能更快的响应市场的变化与客户的诉求。

所以, 微服务的分析与设计, 决不是单纯的只考量技术上的解决方案。

微服务的分析与设计, 必需要掌握两个核心的原则:

1.    从外部的业务场景, 驱动微服务的分析与设计。

2.    经由微服务分析与设计出的微服务架构, 必需是能演进与能扩展的架构。

让我们开始探索微服务的分析与设计:

“微服务分析与设计 第一步: 从特性到业务场景”

任何的产品; 不论是与使用者会直接发生互动的应用系统, 或是提供给众多产品使用的平台; 都应该要先有一个完整的产品特性树。

产品特性树将使得我们可以很清楚的知道, 从外部使用者或外部产品的视角, 产品的微服务架构, 最终应提供哪些有价值的服务?

而团队中针对产品特性树中的每一个特性, 都应该要有一个主要的特性负责人; 每一个特性都会有一个主要的特性负责人负责, 每一个特性负责人, 都将负责多个特性。

在微服务分析与设计中, 特性负责人的主要责任便是: 经由与团队中各不同领域的成员; 架构师, 开发骨干人员, 测试经理, 资深测试人员; 共同具体分析出每个特性的业务场景与微服务的边界上下文 (Bounded Context)。

特性负责人与团队成员协作, 分析每个特性业务场景的主要步骤如下:

1.    特性负责人, 分析特性是由哪些业务活动所构成的?

2.    特性负责人, 针对特性中的某个业务活动, 分析出此业务活动的基本流。

3.    团队成员, 以特性负责人所分析出的基本流为基础, 分析出相关的扩展流与异常流。

4.    特性负责人, 决定团队成员所分析出的扩展流与异常流, 哪些是需在这个版本中, 置入到微服务的架构中, 来进行开发的。

5.    特性负责人, 再选取特性中的其他业务活动, 并重复步骤二至步骤五。直到特性中的所有业务活动均已分析完毕为止。

当特性负责人, 将特性的所有业务活动均分析出, 其各自的基本流, 扩展流与异常流之后, 特性负责人便可经由组合基本流, 扩展流与异常流, 而分析出从外部使用者或外部产品的视角, 有价值的端到端的业务场景切片。

特性负责人经由与团队成员的协作:

A.      团队成员, 分析出扩展流与异常流; 团队成员作加法。

B.      特性负责人, 从团队成员所分析出扩展流与异常流中, 删除不需要置入微服务的架构中, 去进行开发的扩展流与异常流; 特性负责人作减法。

团队成员作加法, 特性负责人作减法; 此种团队协作的方式, 不仅使团队成员间, 能对需开发的微服务场景 (需求), 迅速的达成一致的共识, 并且能使得每个微服务, 都能以最少的场景 (需求), 却能对外部使用者或外部产品, 产生最大的正面影响。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我是攻城师

拿什么来衡量工程师的生产力?

3227
来自专栏华章科技

2017年薪酬最高的15门编程语言,GO夺冠

科技一直在经济领域和社会领域占据着主导地位,数百万人因此寻找到了自己的第一份职业,有的人甚至跨领域重新进行学习,就是为了从事计算机科学、编程和其他与技术相关的工...

622
来自专栏安恒信息

从移动安全看企业信息安全发展

近些年,移动应用已是人们生活中重要的一部分。无论是淘宝,还是微信,无论是支付宝还是网银,手机已能完成生活中的大部分工作,我们甚至可以猜想,在未来的某个时刻,我们...

3365
来自专栏ytkah

微信是什么? 你如何用微信决定了它到底是什么

  微信是什么?我们每天用微信和朋友语音聊天、刷朋友圈、摇妹子、玩飞机大战...却没有真正去想过这个问题。那微信之父张小龙是如何define微信的呢?他并没有正...

3215
来自专栏Android 研究

PMI-ACP 敏捷项目管理——模拟试题3

1、一名经验丰富的团队成员没有参与每日站会,导致他们落后于审查活动。敏捷管理专业人士应该怎么做 A 要求管理层解决 B 提醒团队成员基本规则 C 通知产品...

1851
来自专栏FreeBuf

STIX和TAXII:了解国外较成熟的威胁情报标准

如今社会正面临着日益复杂多变的新型威胁场景(例如,国家黑客、网络犯罪、经济威胁、工业间谍、黑客行为和恐怖主义),如何进行有效地防御成为网络安全届必须面对的难题。...

27910
来自专栏ThoughtWorks

敏捷QA,从入门到放弃|TW洞见

今日洞见 文章作者、部分图片来自ThoughtWorks:刘建华。本文封面来自网络。 本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks...

3848
来自专栏BestSDK

千余家淘宝店倒卖支付API,国家将严打违规第三方聚合支付

事实上,“这种违规的接口有多种方式可以开出来”,前述资深支付行业人士告诉记者:“比如,一个商户在我们这开了个接口,提交的资料、内容、业务都是合法的,但他拿到接口...

3079
来自专栏云计算D1net

企业巨头有意通过云计算推动未来的增长

IBM从NiSource拿到6亿美元的外包合同,包括公有和私有云基础架构。惠普推出云计算产品组合Helion,以OpenStack为中心但也涵括很多硬件和服务。...

2786
来自专栏大数据钻研

为什么你应该学习编程

“在硅谷,对于每一个产品经理的职位,约莫配有6个工程岗位。” 很多人,从HR专业人员到市场营销专业人员,都在硅谷工作,但硅谷对编程专业人士的需求更多,也更重视这...

2525

扫码关注云+社区