做企业培训,当然要找对好讲师!合作联系

刘晖:软件架构最佳实践和案例分析

刘晖老师刘晖 注册讲师 200查看

课程概要

培训时长 : 3天

课程价格 : 扫码添加微信咨询

课程分类 : 问题分析解决

课程编号 : 16884

面议联系老师

适用对象

营销经理、小CEO、自有营业厅小CEO,驻地网营销部小CEO

课程介绍

【课程目标】

1、掌握软件架构设计思想及本质;

2、掌握软件架构建模,4+1视图,软件架构文档;

3、软件架构的设计过程;

4、熟悉软件架构设计模式;

5、了解架构设计原则和方法学;

6、掌握软件架构设计实现和企业架构应用实践;

7、掌握架构设计问题的分析方法;

【课程收益】

1、深入阐述软件架构设计的思想、方向及趋势;

2、剖析软件架构的全景视图;

3、结合实际案例分析架构设计过程及需求对架构的影响;

4、如何实用设计模式来实现好的架构;

5、实践分享多种类型架构设计的实现;

6、SOA架构、企业集成系统架构、企业门户架构的设计实践;

7、真实案例分析各行业软件架构实践。

【课程特色】

1.   课上采用案例式教学,通俗易懂,课下一对一辅导强化训练,学与练交叉进行强化记忆,你所要做的就是认真听,勤于问,乐于练。

2.   清晰的知识结构,根据应用经验采用最优化授课模式。

3.   内容充沛、详略得当,前后呼应。

4.   讲师资历丰富,具有丰富的实践经验。

5.   知识讲授+贴身案例+场景故事+互动讨论+现场演练+落地跟踪

【课程对象】营销经理、小CEO、自有营业厅小CEO,驻地网营销部小CEO等

【课程时长】 3天(6小时/天)

【课程大纲】

主题一:软件架构本质

1.软件架构思想

(1)软件架构诞生原因和定义

(2)软件架构设计的任务,质量评价,特点

(3)软件架构的主要理论、方向和趋势

(4)Zachman架构框架, Meta Group/

Open Group/Gartner企业架构

(5)基于J2EE,.Net等技术架构概述

2.软件架构的视图

(1)软件架构视图的意义

(2)4+1架构视图

(3)逻辑视图 开发视图 物理视图 运行视图 场景视图

(4)如何和怎样绘制软件架构视图

(5)UML建模工具在架构视图的应用

(6)结合多个案例,进行分析软件架构视图

3.软件架构文档编写

(1)软件架构文档的意义

(2)ISO模板和RUP模板

(3)软件架构文档的结构(避免出现不必要的重复和缺少关键信息)

(4)从读者的角度编写软件架构文档

(5)软件架构文档记录原理和如何避免歧义

(6)文档的后期管理(使文档保持更新)

(7)软件架构文档的评审

(8)结合多个案例,进行分析和评价软件架构文档

主题二:软件架构设计过程

1.软件架构设计过程

(1)软件架构设计过程方法论(应该有法可依)

(2)确定关键需求

(3)概念架构设计   

(4)细化架构设计

(5)软件架构的验证

(6)结合具体案例进行分析,介绍当初项目架构设计的过程

2. 需求决定架构

(1)软件功能需求对架构的影响

(2)软件质量需求对架构的影响

(3)软件约束条件与架构的影响

(4)结合多个案例,分析关键功能需求,质量属性需求,约束对架构的影响(项目错误的架构,导致不能最终验收)

3. 概念架构设计

(1)软件架构立方体图

(2)软件架构模式和架构师经验的引入

(3)使用目标-场景-决策表进行迭代架构设计

(4)综合初步设计,确定高层分割

(5)结合案例,进行分析该阶段的主要任务和相关成果,注意事项等

4. 细化架构设计

(1)根据功能确定职责模型

(2)根据质量调整职责模型

(3)基于接口确定职责间协作

(4)完成4+1架构视图

(5)完成架构文档

(6)结合案例,进行细化架构的主要方法和成果,以及注意事项等

5.架构设计的验证和评审

(1)软件架构的验证

(2)软件架构的验证方法和指标

(3)软件架构的重构

(4)软件架构的评审

(5)软件架构的风险管理

(6)结合案例,分析如何进行验证架构和架构设计的后期重构技巧

主题三:软件架构设计原则与架构模式

1.软件架构模式

(1)软件架构模式概述

(2)分层架构模式

(3)Pipe/Filter Pattern

(4)MVC Pattern

(5)Event-Based Pattern和Microkernel Pattern

(6)其他模式的介绍

(7)软件架构模式如何应用在实际项目

(8)架构师实际项目架构经验总结和应用

2.软件架构设计的方法论

(1)什么是架构任务,如何分离关注点,它和系统是如何关联的

(2)如何获得可维护性、可扩展性、可重用性、互操作性等

(3)在系统中如何组织组件(Component)

(4)如何组织组件(Component)的内部

(5)如何保持平台相关的细节和应用的分离

(6)如何应用封装(encapsulation)、抽象(abstraction)和 委派(delegation)的原则

(7)如何应用设计模式来实现好的结构

(8)如何使测试改进架构

3.设计模式技术在软件架构设计之中的应用

(1)面向对象软件架构设计思想

(2)设计模式的本质论

(3)分析创建型模式 

(4)分析结构型模式

(5)分析行为型模式

(6)设计模式的在架构设计的综合应用

(7)结合实际案例,分析设计模式在架构设计时期的应用

4.软件架构之中应用框架(framework)

(1)框架vs.类库

(2)通用点vs.扩展点

(3)设计模式技术在框架的设计之中的应用

(4)如何开发框架 

(5)如何选择第三方框架

主题四:软件架构设计实现

1.表现层框架设计

(1)使用MVC模式设计表现层

(2)BS和CS的选择

(3)表现层中AJAX设计思想

(4)表现层易用性的考虑

(5)表现层的设计框架(Struts,JSF,WebWork,ASP.net,PHP等)

(6)表现层的如何支持多渠道的接入(如支持Web,WAP等)

(7)结合案例分析,表现层的架构设计

2.业务逻辑层架构设计

(1)业务逻辑层组件设计

(2)业务逻辑层工作流设计

(3)服务facade设计   

(4)业务逻辑层实体设计

(5)分布式应用场景

(6)业务逻辑层框架(EJB,Springframework,.Net框架)

(7)结合案例分析,业务逻辑层的架构设计

3.数据访问层架构设计

(1)数据访问层架构模式

(2)数据访问层组件设计

(3)离线和在线方式的数据访问

(4)ORM、Hibernate,JPA与SQLMap(iBatis),LINQ设计思想

(5)缓存技术在存取层的应用

(6)数据访问层的性能考虑

(7)事务管理和数据的同步与锁

(8)连接对象管理设计

(9)结合案例分析,数据访问层的架构设计

4.领域模型设计,数据架构规划与数据库设计

(1)领域模型设计 

(2)数据库设计与类的设计融合

(3)数据库设计与XML设计融合 

(4)数据库性能规划

5.通用服务层的架构设计

(1)系统通用服务的架构设计

(2)业务通用层的架构设计

6.各层通信设计

(1)应用通信的策略

(2)进程之间和分布式通信

(3)通信内容组织

(4)同步、异步(基于Message的架构)

主题五:企业应用系统架构设计

1.SOA 面向服务的架构设计

1)掌握SOA的基本概念

(2)了解服务的设计原则和方法学

(3)SOA基础架构和企业服务总线ESB

(4)服务识别,分类,实现

(5)业务流程管理和BPEL技术

(6)服务注册,发现,生命周期管理

(7)服务的消息交换模式

(8)服务的版本管理和SOA安全,性能管理

(9)SOA的开发过程

(10)SOA和组织,监管(SOA Organization and Governance)

(11)SOA应用案例

2. 企业集成系统架构设计

(1)解决方案、数据集成、应用(接口)集成及应用服务

(2)EAI参考模型:业务模式、概念模式、逻辑模式、物理模式和实现模式

(3)如何设计企业应用系统集成

(4)企业集成应用的架构模式

(5)企业集成应用的案例分析

3. 企业门户Portal系统架构设计

(1)企业门户Portal概述

(2)企业门户核心技术

(3)企业门户内容管理(CMS)

(4)企业门户的个性化

(5)企业门户的架构案例

主题六:软件架构设计专题技术问题分析

1.软件架构设计专题技术问题分析

(1)架构体系选择

(2)架构设计中的数据库存取(ORM,底层存取,SQLMap等选择)

(3)架构设计中的WEB容器、EJB容器及Spring等相关容器

(4)软件架构设计的分布式和通讯的思考

(5)软件架构设计的性能的思考

(6)软件架构设计的可扩展性(集群技术)的思考

(7)软件架构设计的事务管理的思考

(8)软件架构设计的异常管理的思考

(9)软件架构设计利用AOP和IOC这两个有价值的技术­­

(10)软件架构设计的缓存技术的应用

(11)软件架构设计的安全考虑

(12)以上技术专题结合实际案例进行分析

主题七:软件架构案例分析

1.软件架构案例分析

(1)电信行业软件架构案例研究

(2)金融行业 软件架构案例研究

(3)政府行业(社保和税务)软件架构案例研究

(4)电力行业软件架构案例研究

(5)SOA软件架构案例研究

刘晖老师的其他课程

• 刘晖:软件需求工程与建模
【课程特色】1.   课上采用案例式教学,通俗易懂,课下一对一辅导强化训练,学与练交叉进行强化记忆,你所要做的就是认真听,勤于问,乐于练。2.   清晰的知识结构,根据应用经验采用最优化授课模式。3.   内容充沛、详略得当,前后呼应。4.   讲师资历丰富,具有丰富的实践经验。5.   知识讲授+贴身案例+场景故事+互动讨论+现场演练+落地跟踪【课程时间】3天【课程大纲】第1章 需求工程导论1.1 软件生产中的需求问题1.1.1 需求问题是当前软件开发面临的主要问题1.1.2 软件的模拟特性1.1.3 需求问题具体原因1.2 需求工程1.2.1 需求工程简介1.2.2 需求工程与系统工程1.2.3 需求工程的重要性1.2.4 需求工程的复杂性1.3 需求工程师第2章 需求基础2.1 需求的定义2.2 满足需求就是解决问题2.2.1 问题与需求2.2.2 问题解决的两个方面——问题域与解系统2.2 -3问题解决的基础——模拟与共享现象2.2.4 问题解决的方法——直接与间接2.2.5 问题解决方案——需求规格说明2.2.6 问题解决的困难性2.3 需求和问题都有层次性2.3.1 战略问题与业务需求2.3.2 任务问题与用户需求2.3.3 系统行为问题与系统级2.3.4 需求开发要遵从层次性2.4 需求的分类与表述2.4.1 需求的分类2.4.2 功能需求2.4.3 性能需求2.4.4 质量属性2.4.5 对外接口2.4.6 约束2.4.7 其他需求2.5 优秀需求的特性第3章 需求工程过程3.1 概述3.2 需求工程活动3.2.1 需求获取3.2.2 需求分析3.2.2 需求规格说明3.2.4 需求验证3.2.5 需求管理3.3 需求开发过程是迭代和第4章 需求获取第5章 需求分析第6章 需求的规格化与验证第7章 需求管理及工程管理第8章 建模和设计方法概览用例建模静态建模对象和类组织动态交互建模有限状态机状态相关的动态交互建模第9章 软件体系结构设计软件体系结构概览软件子系统体系结构设计设计面向对象的软件体系结构设计客户端/服务器软件体系结构设计面向服务的体系结构设计基于构件的软件体系结构设计并发和实时软件体系结构设计软件产品线体系结构软件质量属性第10章 案例研究客户端/服务器软件体系结构案例研究:银行系统面向服务的体系结构案例研究:在线购物系统基于构件的软件体系结构案例研究:应急监控系统实时软件体系结构案例研究:自动引导车辆系统
• 刘晖:软件编程与设计
【课程特色】1.   课上采用案例式教学,通俗易懂,课下一对一辅导强化训练,学与练交叉进行强化记忆,你所要做的就是认真听,勤于问,乐于练。2.   清晰的知识结构,根据应用经验采用最优化授课模式。3.   内容充沛、详略得当,前后呼应。4.   讲师资历丰富,具有丰富的实践经验。5.   知识讲授+贴身案例+场景故事+互动讨论+现场演练+落地跟踪【课程时间】4天【课程大纲】第一部分  软件编程与设计的技巧第 1章 开 篇1.1 一次友好的对话1.2 准确的问题描述1.3 程序设计1.4 实现概要1.5 原理第 2章 啊哈!算法2.1 三个问题2.2 无处不在的二分搜索2.3 基本操作的威力2.4 排序2.5 原理第3章 数据决定程序结构3.1 一个调查程序3.2 格式信函编程3.3 一组示例3.4 结构化数据3.5 用于特殊数据的强大工具3.6 原理第4章 编写正确的程序4.1 二分搜索的挑战4.2 编写程序4.3 理解程序4.4 原理4.5 程序验证的角色第5章 编程小事5.1 从伪代码到程序5.2 测试工具5.3 断言的艺术5.4 自动测试5.5 计时5.6 完整的程序5.7 原理第二部分 软件编程与设计的一些经验和技巧第6章 程序性能分析6.1 实例研究6.2 设计层面6.3 原理第7章 粗略估算7.1 基本技巧7.2 性能估计7.3 安全系数7.4 Little定律7.5 原理第8章 算法设计技术8.1 问题及简单算法8.2 两个平方算法8.3 分治算法8.4 扫描算法8.5 实际运行时间8.6 原理第9章 代码调优9.1 典型的故事9.2 急救方案集锦9.3 大手术——二分搜索9.4 原理第 10章 节省空间10.1 关键在于简单10.2 示例问题10.3 数据空间技术10.4 代码空间技术10.5 原理第三部分 软件编程与设计的标准化第 11章 排 序11.1 插入排序11.2 一种简单的快速排序11.3 更好的几种快速排序第 12章 取样问题12.1 问题12.2 一种解决方案12.3 设计空间12.4 原理第 13章 搜 索13.1 接口13.2 线性结构13.3 二分搜索树13.4 用于整数的结构13.5 原理第 14章 堆14.1 数据结构14.2 两个关键函数14.3 优先级队列14.4 一种排序算法14.5 原理第 15章 字符串15.1 单词15.2 短语15.3 生成文本15.4 原理第四部分 实践环节通过实践练习巩固复习以上知识点。
• 刘晖:《容器弹性云时代(Kubenetes)超大规模Service Mesh(服务网格)架构设计与实践之道》
课程内容         微服务架构1.0在带来业务研发效率提升的同时,也引入了架构的复杂性以及业务进程间相互通信的代价,通过物理解耦业务功能和非业务功能,必将进一步提升业务研发效率,做到使业务项目能够真正的快速迭代和持续交付,从而使得企业能够大幅度降本增效。Service Mesh服务网格架构应运而生。课程培训对象      对互联网高可用高并发架构、微服务架构、Service Mesh架构、Kubernetes、Docker等感兴趣的同学,最好有一定的后端开发基础。课程收益使同学系统掌握Service Mesh架构设计和实践;使同学系统掌握微服务架构设计和实践;使同学系统掌握互联网高可用高并发架构设计和实践;使同学们系统掌握Service Mesh架构中的关键技术;使同学们系统掌握容器云的设计和实践;使同学们掌握架构背后设计的哲学;使同学们对架构未来能够有清晰的认知;使得同学们掌握Kubernetes服务治理。课程大纲第一课:微服务架构1.0痛点微服务架构拆分之道;微服务架构典型应用场景;微服务架构线上大规模应用技术架构;微服务架构痛点;第二课:Service Mesh 服务网格知识原理篇深度理解Service Mesh架构;Service Mesh如何解决业务研发痛点;Service Mesh引入带来新挑战及应对;第三课:Service Mesh服务网格总体架构篇Service Mesh架构下,业务总体系统架构如何设计;Service Mesh架构的开源框架深度分析对比(Linkerd、Conduit、Nginmesh、Envoy、Istio、SOFAMesh、WeiboMesh等);集大成者Istio架构实践案例分享;第四课:Service Mesh服务网格架构实践篇Service Mesh架构如何针对企业现状做好技术选型;Service Mesh总体架构设计与实践;Service Mesh总体数据流程设计与实践;Service Mesh调用方/服务方时序设计与实践;Service Mesh通信协议设计与实践;Service Mesh数据传输协议设计与实践;Service Mesh混合云部署设计与实践;Service Mesh核心通信技术设计与实践(熔断、Timeout/Retry、Health Check、负载均衡、鉴权、流控);第五课:Service Mesh架构下业务需关注核心技术篇业务需关注的“非业务技术”还有哪些;业务数据序列化和反序列化设计与实践;业务数据幂等设计与实践;业务数据一致性(分布式事务)设计与实践;第六课:Service Mesh 架构容器云部署篇Service Mesh架构与容器云相依为命;Docker容器技术揭秘;kubernetes容器管理技术揭秘大规模容器弹性云平台设计与实践;Service Mesh基于容器云大规模快速部署实践;第七课:Service Mesh架构未来篇一切皆Mesh化;DataBase Mesh;Redis Mesh;……  

添加企业微信

1V1服务,高效匹配老师
欢迎各种培训合作扫码联系,我们将竭诚为您服务