架构设计最佳实践的笔记,BEA经验丰富的架构师多年的积累(强烈推荐,不可错过)...

有幸请到BEA的架构设计师刘杰给公司做了一次为期2天的架构最佳实践培训。个人印象来说,这次培训含金量比较高,讲师有非常多年的实际架构设计经验,且目前一直在做架构。讲的东西都是贴切实际,带来很多经验,和一些新的概念。下面是我在课堂上做的一些笔记,主要记录了一些新的概念和老师的一些经验。

关于软件架构的定义:
一系列重要决策的集合、多个结构的组成

软件架构视图必不可少,是因为各类涉众需要从各自的角度去理解和使用架构


软件架构四要素
1. 图示化元素与元素之间的关系
2. 有明确的图例,定义和说明元素
3. 元素明确的接口和行为规范
4. 设计原理和决策

软件架构的图要根据行业背景不同,画别人能理解的图。


4+1 Vies Model
逻辑视图(Logical View)、开发视图(Development View)、运行时机构图(Process View)、物理视图或部署图(Physical View),这些图像都需要放到实际的场景(Scenarios)中去验证,没有在实际的场景中验证的都是一些很虚的东西。

软件架构的目的:

是为了按照设计师的思想执行,是最初设计的决策体系、是风险承担者、相互交流的手段、是系统可重用、可传递的规则。

一个架构师一定要清晰的表达架构的目的,如果不能清晰的表达出来,就等于没有做架构一样。

架构的三个境界
1. 要做出架构
2. 表达架构的意思
3. 能使别人理解,并遵循架构。

常见的架构视图类型
功能视图、开发视图、进程视图(Run Times时期)、部署图、场景图、数据视图(大数据量、大并发量)、实现视图

数据模型(领域模型)很重要,由架构师负责设计全局的领域模型,一般来说数量大概在50-100个左右。

数据模型的选择会影响最终系统灵活性,数据模型设计好了,系统的扩展性、灵活度会高一些。

软件架构的试图中,对具有风险性的、用户最关心的图需要重点分析。

软件架构的驱动因素
过去我们的软件架构中都是由软件的功能和技术做为整个软件架构的驱动,但是到了后期会出现一系列问题,有些问题是之前未考虑到的,有些或是其他原因,目前软件架构要在功能、质量属性、约束三个方面做为软件架构的驱动力。也就是做架构的时候要在功能、质量属性、约束这三个方面考虑,而不是传统的只考虑功能和技术。比如一个MP3播放器,爱国者的和APPLE的都是能播出MP3,也就是功能是实现了,但是价格为什么相差那么大呢,也就说我们考虑架构不单是要考虑功能、还有质量属性,还有约束条件,东西做出来了,使用的人不会用,那也是白搭。软件的使用中受到那些约束环境,如行业标准、政策、遗留系统、环境条件、用户水平、组织结构等,这些都是在架构设计时候需要考虑的东西。


功能 - 关键业务场景
质量属性 - 开发时的质量属性、运行时的质量属性、商业质量属性
约束 - 客户需求以及业务相关约束、用户以及使用环境相关约束、开发组织以及开发环境相关约束。

架构师的考核能力,可以列举一系列坏的设计(坏症状)出来,然后一条条照套。

架构师必知必会系列:企业架构设计原则与实践 作者:禅与计算机程序设计艺术 1.背景介绍 企业架构是一个复杂的系统工程,涉及众多职责、角色和人员。如何在这个复杂的工程中划分出合适的架构,并将其真正落地,需要长期跟踪不断地总结经验,形成自己的架构设计理论体系。本文将从四个方面入手,探讨企业架构设计的原则和方法论,并分享企业架构设计过程中常用的架构 阅读详情

相关推荐

Power EM与Signal EM解决办法与原理分析

1.面对power EM,首先检查missing via,补全via,还可以加宽,加密局部power mesh,一些power IO出pin有power EM问题,可以叠加多层线和垂直方向补power形成网络降低并联电阻和提供更多电流通路解决,这种方法还可以降低ir drop。3.先进工艺有一个via ladder的方法可以解决power/signal em问题,clock cell出pin绕线或者power rail连接power stripe通过搭梯子的方式连接,原理还是分流。

m0_61544122的博客 4609

参加BEA的架构设计师最佳实践培训

上个星期公司有幸请到BEA的架构设计师刘杰给公司做了一次为期2天的架构最佳实践培训。个人印象来说,这次培训含金量比较高,讲师有非常多年的实际架构设计经验,且目前一直在做架构。讲的东西都是贴切实际,带来很多经验,和一些新的概念。下面是我在课堂上做的一些笔记,主要记录了一些新的概念和老师的一些经验。 关于软件架构的定义: 一系列重要决策的集合、多个结构的组成 软件架构视图必...

191

wvp-GB28181_wvp-gb28181_wvpgb28181_GB28181_

gb28181服务端,包含初始化,注册,注销,心跳,invite等功能模块

企业架构设计思路与实践经验

读完了于海澜先生的《企业架构》一书,并回顾自己这几年所参与的企业架构工作的点滴,理论与实践交织,关于企业架构的认识又增进不少。因此写下此文,其一对自己的过往经历做一阶段总结,其二希望对同为从事企业架构(Enterprise Architecture ,EA)的朋友有所帮助。 目前,很多企业随着自身业务的发展,建立了很多职能部门、流程、系统,但是随着时间的推移,发现它们之间无法有效协调合作, 往往

shanelisy的专栏 2149

10个微服务架构设计最佳实践

微服务极大的改变了服务端引擎的架构方式。微服务不是一个单一的巨型的用来托管应用程序所有业务逻辑的代码库,而是反映了分布式系统模型,在该模型中,一组应用程序组件协同工作来满足业务需求。通过遵循十项基本的微服务最佳实践,你可以实现一个高效的微服务生态系统,从而避免不必要的架构复杂性。 微服务架构的收益 当从单体应用正确的迁移到微服务架构的时候,可以获得以下收益: 你可以根据自己的意愿选择一门语言开发微服务,按照自己的节奏独立发布它,并独立扩展。 组织中的不同团队可以独立的拥有自己特定的微服务,并且随着并

javajavajava 762

刻苦努力----经验丰富的架构师--基于项目

基于项目对于技术栈架构: 前端开发.后台开发.分布式服务器.单元测试.发布系统.协作工具.核心业务逻辑.产品设计.业务逻辑实现.

qq_28695877的博客 372

架构设计最佳实践笔记BEA经验丰富的架构多年积累强烈推荐不可错过

有幸请到BEA的架构设计师刘杰给公司做了一次为期2天的架构最佳实践培训。个人印象来说,这次培训含金量比较高,讲师有非常多年的实际架构设计经验,且目前一直在做架构。讲的东西都是贴切实际,带来很多经验,和一些新的概念。下面是我在课堂上做的一些笔记,主要记录了一些新的概念和老师的一些经验。   关于软件架构的定义:   一系列重要决策的集合、多个结构的组成 软件架构视图必不可少,是因

Sonic 的技术博客 9037

Java学习辅导:从入门到精通 Java Learning Path() 方法篇

Java作为一门编程语言,最好的学习方法就是写代码。当你学习一个类以后,你就可以自己写个简单的例子程序来运行一下,看看有什么结果,然后再多调用几个类的方法,看看运行结果,这样非常直观的把类给学会了,而且记忆非常深刻。然后不应该满足把代码调通,你应该想想看如果我不这样写,换个方式,再试试行不行。记得哪个高人说过学习编程就是个破坏的过程,把书上的例子,自己学习Documentation编写的例子在运行

420

Java学习从入门到精通2

Java学习从入门到精通

kaka的专栏 578

企业架构研究总结(4)——企业架构与企业架构框架概论

通过企业架构的发展历程我们可以看出,经过几十年的发展业界已经涌现出了很多企业架构以及企业架构框架理论。在本章中,笔者将挑选几种主要的企业架构和企业架构框架理论进行详细阐述。需要注意的是,虽然本章定名为“企业架构与企业架构框架”,但是由于企业架构的特性所致,其真实形态在不同的企业之间差异很大,即便是联邦企业架构也只是提供了五层参考模型而已,所以对于企业架构的总结无法逐一进行,而作为指导企业架构创建的方法论,亦即企业架构框架,由于其具备标准化的特性,将被作为本章内容的重点。当然,即便企业架构框...

云上笛暮 886

企业业务架构设计方法论及实践(一)

前言 架构设计的过程就是把沉淀和积累的知识体系,基于企业战略、业务场景、质量、安全、效能等约束条件动态的加以排列组合的分析、论证、决策的逻辑思维过程。架构设计之道在于针对企业的现状和未来的战略目标及业务场景给出优雅合适的解决方案和演进的预期为企业降本增效。 一 隔离业务与技术细节,回归业务和技术的本质,促进业务与技术的协同 优秀的架构师需要具备体系化的架构设计思维能力,加以架构设计方法论的沉淀和实践的操练,久而久之架构设计指导和设计哲学必定了然于心。不管是业务...

一个天秤座的架构师 2万+

企业架构的最佳实践

在战略目标下,进行详细的企业架构规划,主要包括业务架构、信息架构、应用架构、技术架构等的规划。 实施企业架构的流程 实施企业架构的现状评估 实施企业架构的现状评估的主要流程有:评估目前的状态(As-is);分析行业架构框架;着眼将来的状态(To-be),进行差距分析。 任何一个组织构建企业架构,首先要进行基础条件的评估,包括组织的领导力、执行力、企业文化、业务流程、各种资源、I...

iteye_11084的博客 568

企业架构之业务架构

需求成熟度:对未来感知成果的使用满意度;如果早期没有共识,那么后续开发的满意度是没有基础的。万般需求皆业务,万般业务皆流程;管理无止境,流程出效益。根据TOGAF的ADM开发方法,Phas...

Java架构技术 699

架构设计最佳实践与必备素养

摘要:架构或架构师的话题一直在被人们所谈论,什么是架构?如何设计前后端分离的架构?如何设计高可用的架构?如何设计可伸缩的架构?什么又是架构师架构师需要哪些品质?本专题为你一一呈现。 架构或架构师的话题一直在被人们所谈论,对于什么是架构?如何设计前后端分离的架构?如何设计高可用的架构?如何设计可伸缩的架构?什么又是架构师架构师需要哪些品质?程序员应该如何修炼为架构师?本期架构专题会与你

qq_30916723的博客 489

Kafka消息队列出现挤压如何解决?

2如果已经是核心业务逻辑积压了,同一个消费者组里面,消费者数量要大于topic分区数,分区不足先扩容分区,再增加消费者的数量,提升并行消费能力。4如果业务一直都是正常的,没有什么大促或者是搞活动,应该就是下游的消费者出现了接口调用超时、死锁、慢查询等情况,根据日志进行详细的分析,进行优化。1先快速解决线上问题,看一下积压的是什么topic业务的数据,如果是日志、埋点、推荐系统的可以直接丢掉,让订单、支付等核心业务逻辑去跑。5最后就是完善监控,在下次业务出现积压的时候能及时发现,然后进行优化。

ngczx的博客 148

大数据 之 Snappy

【代码】大数据 之 Snappy。

zhixingheyi_tian的博客 182

SaaS客户成功:依托AI知识库实现用户主动赋能与长效增长

SaaS客户成功早已告别单纯的人工服务模式,被动答疑式运营无法适配规模化增长需求。依托Baklib AI知识库搭建标准化知识体系,以智能化工具赋能前置化、主动化的客户运营,既能大幅降低企业服务成本、释放团队人力价值,又能全方位赋能用户用好产品、深挖价值,持续提升客户留存率与生命周期价值,打造SaaS企业可持续的客户增长新范式。

mikiioi的博客 148

Kafka实战 自定义Offset消费 手动Offset管理

<think>我们根据内容生成摘要。内容主要讲Kafka消费者组的offset管理,包括earliest语义、重复消费、自动/手动提交offset、同步异步提交等。需要≤150字。</think>摘要:Kafka消费者组通过offset记录消费位置,实现宕机恢复后从指定位置继续消费。earliest仅当offset不存在时生效;已有有效offset则无效。自动提交offset可能因未提交导致重复消费,可缩短提交周期或改手动提交(同步阻塞、异步回调)降低风险。

小楼一夜听春雨,深巷明朝卖杏花 229

把 Apache DolphinScheduler 变成 Agent 的“手和脚”:从调度平台到自然语言数据入口

李庆旺:Cisco Webex 大数据平台开发工程师、Apache DolphinScheduler Committer。从调度平台到数据入口、Agent 平台定位与架构、治理执行与验证闭环,以及能力扩展与落地准备。回到整场分享的核心,可以看到,Data Agent 并不是要取代 Apache DolphinScheduler,而是在 DolphinScheduler 已有的生产编排能力之上,改变用户进入和使用数据平台的方式。首先,调度底座不变。

Apache DolphinScheduler开源社区 228

Django的手机数据分析与可视化

Django的手机数据分析与可视化系统 摘 要 本系统基于Django框架、HTML和MySQL数据库技术,构建了一个全面的手机数据分析与可视化平台。大屏内容丰富,包括品牌市场份额分布、手机价格区间分布、各维度评分分布、热门机型Top10、内存容量分布以及品牌评分与价格分析等多个模块。通过这些模块,用户可以直观地了解手机市场的整体趋势、各品牌的市场表现、手机价格分布情况、用户评分分布以及热门机型的详细信息。系统采用了先进的可视化技术,将复杂的数据以图表的形式呈现,使得数据更加易于理解和分析。 在管理功能方

weixin_41915110的博客 791
上一篇: Android4.0.3开发环境搭建
下一篇: 架构设计最佳实践的笔记,BEA经验丰富的架构师多年的积累(强烈推荐,不可错过)...
iteye_336
博客等级 码龄8年 0粉丝 1原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值