商业模式与架构设计:A段架构与B段架构

《思考软件创新设计:A段架构师思考技术》
A段架构师必须具备鲜活的创新思维,睿智的策略思考,犀利的洞察力和灵活的战术才能把握稍纵即逝的商机
 
                                               
 
  

 
段架构师
B段架构师
关注点
产品策略规划
实践策略,执行能力,技术变迁
协作对象
协助产品经理
协助研发经理生产经理
思维的差异
获利思维,知彼才能在复杂商业环境生存
成本思维,知己才能在成本和收益做出合适选择
 
 
 
 
 
 
 
 
目前我们所接触的大多是B段技术的架构,更关注“知己”,我们做研发改进,敏捷管理,技术重构,就是为了更好的平衡技术的成本和业务的收益
 

A段架构与商业模式:以不变应万变

 

架构师需要考虑的商业要素

决策前(A段设计)---->决策点--->决策后(B段设计)
 

商业思维三要素:商业模式,架构模式,创新产品

软件是现实世界的映射和抽象

现实世界是复杂多变的,所以由需求就是复杂多变的,软件也是复杂多变的,
所以现实中组织要发展就要面对变化的适合的变化,反应到软件上也会随需求的变化而变化,所以软件本质上是一个演化的系统,是一个复杂的系统
 

商业与技术的关系

商业维度,现实世界是复杂多变的组织需要不停的适应市场的变化,
从产品维度需要不停的创新满足客户和市场的需求,
而从技术和架构的维度来看,架构则希望更少的信息熵,用更少的技术元素来表述更多的业务结构,这也正是为什么我们追求模型,模式,结构与算法
 

商业和产品做加法,架构设计做减法

在复杂的现实中,用简单的抽象来支撑商业的变化,用灵活的设计支持业务的创新
 
《深奥的简洁》是一本科普读物,里面讲述了碎行,自我组织,自我类似等等自然界好些美妙的规律
 
 

大树的隐喻描述商业,架构,研发技术生产管理

大树的上层是枝叶,要吸收阳光雨露,要开花结果,是对外界展示的活跃和生机的一面,这里用来表述商业模式和创新产品
这些都是要变化的部分,而且收外部影响较明显
 
再次是树干是中层A段架构,中层要求稳既要约束和辅助枝叶发展和繁荣又要保护下层树根承受压力
 
下层部分的话就是B段架构,生产,技术,管理,这些是看不见但是很重要的元素,是整个树木生命繁荣的根本
 
 

从复杂中抽象出简单,用简单和较少信息熵,应对复杂多变的商业和产品

简单的有序的产品和架构设计,通过一定的约束组合可以形成一个富有活力的系统,底层元素的简单又保证了它可以包容现实中的复杂变化,应对纷繁复杂的现实情况,支持商业的变革和产品的创新
 
 

B段架构技术和业务的矛盾:用成本收益作为衡量标准

 

变的是需求和技术,不变的是成本与收益评估,是要创造价值的目标

 
"你这个功能啥时候能上? "
"这个有难度目前不行,需要做重构,技术细节blablabla..."
"提这么多需求没几个有用的,根本不懂技术实现,你要觉的能行为啥你不上"
 
产品和技术的矛盾点:
1. 资源的抢占 2. 成本的评估 3.内外部目标的差异 4.内部目标设定不合理
 

解决问题:业务知识+成本核算

技术要了解业务背景,业务收益,要解决的问题是什么?只有这样才能解决问题,做出架构设计,做出模型设计,解决业务问题,帮助客户解决现实场景的问题
 

优秀的架构要融和技术与业务的平衡和成本收益的评估

 
1. 清晰服务业务短期目标,明确技术定位,辅助实现当前阶段业务诉求
2. 协调技术资源投入和分配
3. 进行成本与收益的评估,确定做哪些,不做那些,先做那些,怎么做收益更大
4. 预留长期技术规划和储备
 

我们是解决昨日之债务,还是准备迎接今日之挑战?

衡量的标准就是做这件事的收益?
 
产品和业务做哪些收益更大:产品的愿景和价值观
本年度看做哪些收益更大(OKR)
本季度本月做哪些收益最大(月度发版路标规划)
当天本周做哪些收益最大(周计划)
 

旧系统的改造 OR 新技术的引进?

技术储备和技术栈规划方面:
中小型创业型公司,非技术驱动的公司
关注中长期发展的技术与趋势,不要太超前,不必做小白鼠
 
旧系统改造方面:
假如不能明显的产生业务价值,单纯的把报表生成把半小时优化到5分钟,不如做一些其他更有业务价值的任务
假如没有其他高附件值任务可以去做,假如报表生成占用研发时间减少了质量保证时间,影响了交付质量也可以去做
 

架构C02-商业模式与架构设计的更多相关文章

  1. [书籍分享]0-008.商业模式新生代[Business Model Generation]

    封面 内容简介 <商业模式新生代>内容简介:当你愉快的看完第一章:商业模式画布,赫然发现这些构成要素全都交织成一幅清晰的图像在脑海中呈现,它们如何互相影响.如何交互作用全都历历在目.利用商 ...

  2. IT人必知,互联网主流商业模式

    最近关注互联网电商营销相关方面的知识,对商业化和流量变现有了一些认知. 熟悉的朋友知道,写文章是我学习的一种方式,输出倒逼输入,继而强化知识体系,所以也把这段时间的输入,自顶向下做一个系列的分享. 对 ...

  3. 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获

    项目开发中的一些注意事项以及技巧总结   1.jquery采用ajax向后端请求时,MVC框架并不能返回View的数据,也就是一般我们使用View().PartialView()等,只能返回json以 ...

  4. PLUTO平台是由美林数据技术股份有限公司下属西安交大美林数据挖掘研究中心自主研发的一款基于云计算技术架构的数据挖掘产品,产品设计严格遵循国际数据挖掘标准CRISP-DM(跨行业数据挖掘过程标准),具备完备的数据准备、模型构建、模型评估、模型管理、海量数据处理和高纬数据可视化分析能力。

    http://www.meritdata.com.cn/article/90 PLUTO平台是由美林数据技术股份有限公司下属西安交大美林数据挖掘研究中心自主研发的一款基于云计算技术架构的数据挖掘产品, ...

  5. 大型 JavaScript 应用架构中的模式

    原文:Patterns For Large-Scale JavaScript Application Architecture by @Addy Osmani 今天我们要讨论大型 JavaScript ...

  6. [转]大型 JavaScript 应用架构中的模式

    目录 1.我是谁,以及我为什么写这个主题 2.可以用140个字概述这篇文章吗? 3.究竟什么是“大型”JavaScript应用程序? 4.让我们回顾一下当前的架构 5.想得长远一些 6.头脑风暴 7. ...

  7. [原创].NET 分布式架构开发实战之二 草稿设计

    原文:[原创].NET 分布式架构开发实战之二 草稿设计 .NET 分布式架构开发实战之二 草稿设计 前言:本篇之所以称为草稿设计,是因为设计的都是在纸上完成的.反映了一个思考的过程. 本篇的议题如下 ...

  8. 【架构】MVC模式

    架构模式 如何设计一个程序的结构,这是一门专门的学问,叫做"架构模式"(architectural pattern),属于编程的方法论. MVC模式就是架构模式的一种,它不仅适用于 ...

  9. SaaS模式实现架构

    SaaS模式实现架构 https://blog.csdn.net/xwq911/article/details/50630266 1. 数据库层: 数据库这一层的设计模式是很清晰的,无外乎只有3种方案 ...

随机推荐

  1. ql的python学习之路-day8

    前言:本节主要学习的是函数的全局变量和局部变量以及递归 一.全局变量和局部变量 定义在函数外并且在函数头部的变量,叫做全局变量,全局变量在整个代码中都生效. 局部变量只在函数里生效,这个函数就叫做这个 ...

  2. Django之ORM外部python脚本使用

    python脚本使用django的ROM 如果你想通过自己创建的python文件在django项目中使用django的models,那么就需要调用django的环境: 在总的项目文件夹创建的py文件: ...

  3. InnoDB存储引擎的高级特性大盘点

    InnoDB作为mysql数据库最常用的存储引擎,自然包含了其独有的很多特性.如相比于memory.MyISAM引擎,InnoDB支持行级锁.事务等都是比较重要的特性. 本文将盘点下InnoDB处理事 ...

  4. 架构设计 | 接口幂等性原则,防重复提交Token管理

    本文源码:GitHub·点这里 || GitEE·点这里 一.幂等性概念 1.幂等简介 编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同.就是说,一次和多次请求某一个资源会产 ...

  5. 实验三 Java基本程序设计

    第一部分:理论知识复习部分 第一章:第一章介绍的是Java程序设计的概述,通过两周的Java学习中,重温了Java“白皮书的关键术语,更深一步理解乐11个关键术语. 第二章:本章主要介绍如何安装JDK ...

  6. C语言基础知识(四)——位操作

    一.进制基础知识 1.通常,1字节(Byte)包含8位(bit).C语言用字节表示储存系统字符集所需的大小. 2.对于一个1字节8位的二进制数,最右边(第0位)是最低阶位,最左边(第1位)是最高阶位, ...

  7. vue实现对文章列表的点赞

    今天要做一个对文章点赞的功能,实现后的样式如下,点赞后的文章下面的大拇指图标会变红,并且点赞数加1 一开始分别遇到过两个问题:1.点文章中的一个赞,所有文章的赞全部变红了 2.点赞后,虽然当前文章的赞 ...

  8. 快服务常见TOP3审核雷区,再不过审就要崩溃啦!

    仰天大笑出门去,审核提交很神气. 垂死病中惊坐起,突然驳回伤不起. 江州司马青衫湿,重新修改苦自知. 梦里花落知多少,回复马上就改好. 审批被驳回可能是最常见的令开发者头大的问题了,明明看起来&quo ...

  9. Java 基础系列知识梳理

  10. [Android-NDK编译] ndk 编译 c++ 兼容性问题汇总整理

    1.__int64找不到符号 采用int64_t来代替: #if defined(__ANDROID__) typedef int64_t __int64; #endif 2.<sys/io.h ...