软件架构的原理和实践研修班-易程培训-软件研发管理培训、咨询服务
首页 | 快捷通道:我是

关注的讲师:

分享到:
公开课
软件架构的原理和实践研修班

开课地点:北京
开课时间:2014-05-26至2014-05-29
课程费用:5000 元/人
课程简介:

课程背景

    通过本课程的学习,学员将对软件架构设计过程、方法、主流技术有深入理解,掌握成功架构设计的精髓和思维体系,更有机会分享资深架构专家十年经验沉淀之精华,在实际工作中少走弯路.

课程目标

  • 获得可复用架构设计的规范
  • 获得软件架构审核方法
  • 提升企业架构设计的能力
  • 提升企业产品的竞争能力
  • 获得可持续发展的潜力
  • 能借鉴、应用一套先进的架构方法,解决遇到的因为需求膨胀和用户对专业性要求高所带来的一系列问题
  • 在新产品开发中能够应用起来,提高公司的架构设计能力,改善公司产品架构

授课对象

架构师(首要对象)、其他开发人员和项目经理

课程要求

  • 要求学员具备一定的OO基础,具有一定的面向对象分析、设计经验更佳。
  • 要求学员有使用任何一种面向对象的语言的编程基础。
  • 培训学员需要具备一定的UML基础知识,对UML的各种概念有一定的了解,知道各种模型图的大致概念和含义。
  • 接受过《面向对象分析与设计》或《软件设计师》等类似课程的培训。

具体安排

课程正常授课时间为3天,每天授课时间为上午9:00~12:00,下午13:30~16:30。

 

内容

实战及案例

Part I:架构的不同层次和视角

软件架构一软件架构概述

  • 软件架构定义、架构设计的目标;
  • 架构师的定义和职责、架构师的技能要求;
  • 混乱是思维的大敌,如何有序进行架构设计;
  • 关键需求决定架构,缓解时间紧的压力;
  • 概念架构确定高层方案,关乎大型系统成败;

                                         

4+1视图方法将众多技术关注点划归不同视图

  • 逻辑视图的要点是职责划分
  • 开发视图的要点是程序单元
  • 运行视图的要点是控制流
  • 物理视图的要点是节点拓扑
  • 用例视图的要点是保证软件系统的业务价值

使用UML进行软件架构设计—如何用模型驱动架构设计

  • 业务建模
  • 需求建模(域建模,用例建模)
  • 架构建模
  • 应用建模
  • 数据库建模
  • 测试建模

 

Part II:架构设计主线过程和实作详解

需求决定架构,

  • 质量需求对架构的影响
  • 功能需求对架构的影响
  • 约束对架构的影响

架构设计主线过程

  • 确定关键需求,确定业务架构的运作方式,软件系统和外部的系统接口、子系统功能分解和子系统间接口
  • 概念架构设计,建立逻辑的框架
  • 细化架构设计,确定细化架构的

 

 

 

 

 

 

 

案例分析:应用基础平台架构

 

 

 

 

案例分析:社保核心平台架构分析

 

 

 

 

 

 

 

 

 

案例分析:航空领域案例(主线实作串讲案例)

 

确定关键需求的主要步骤

  • 需求结构化
  • 约束分析
  • 约束不仅来自甲方也来自乙方
  • 约束不仅来自技术也来自业务
  • 确定关键质量
  • 确定关键功能

架构实现技术

  • 架构模式的采用,架构重构和复用
  • 模型驱动架构(Model  Driven  Architecture:  MDA)
  • 基于关键功能,进行初步设计

分层架构模式理解

  • 上下文-问题-解决方案
  • 分层架构模式实践
  • 按通用性分层
  • 按Layer分层
  • 按Tier分层
  • 技术堆叠
  • 活用:综合多种分层思维

“划分”子系统的手段

  • 分层的细化,分区的引入
  • 机制的提取,以逻辑架构为核心细化架构设计
  • 划分子系统,确定子系统职责
  • 定义子系统接口,明确子系统协作
  • 明确关键类,说明设计模式
  • 不断考虑其他视图和非功能

Part III:架构质量

如何描述和评估软件架构质量

  • 评估软件架构质量的价值
  • 怎样改变软件架构的质量
  • 如何评价软件架构
  • 评估软件构架师的能力

提升软件架构质量的最佳实践

  • 同时使用用例和方面
  • 使用用例捕获关注
  • 保持关注点的分离
  • 对用例片和方面建模
  • 保持基础结构能力的分离
  • 如何应用设计模式来实现好的结构 

如何避免架构设计中遗漏关键质量要求

  • 注意质量分类是否适合当前实践
  • 考虑多方涉众的不同利益
  • Checklist思维确保没有遗漏重要质量要求
  • 考虑质量间(正向和逆向)的相互影响
  • 质量严格程度与系统特点(领域、规模)相适应
  • 松耦合:多维度关注点分离
  • 松耦合:“良性耦合”是“松耦合”的有益补充
  • 持续可用性:策略的选择应符合成本-效益要求
  • 重用:重视大粒度重用、Framework重用、Server重用
  • 重用:To Reuse 比 Be Reused 应更优先考虑
  • 可伸缩:区分垂直(专门化)服务与水平(广泛化)服务
  • 群集原理,避免开销激增
  • Cache原理,命中率和集中化很关键
  • 性能原理,职责模型对时间和资源的总体消耗是核心
  • 安全审计原理,audit trail的安全级别必须更高

 

 

 

 

 

 

案例分析:可支持上亿用户的MSN是如何支持可伸缩性的

 

 

 

案例分析:大型网站高性能的一系列策略

Part IV:Framework技术

设计模式与软件架构设计

  • 面向对象软件架构设计思想
  • 设计模式的本质论
  • 设计模式的综合应用
  • AOP与OOAD  ,  GOF设计模式关系

认识框架技术

  • 如何开发框架
  • 使用MVC模式设计表现层
  • 表现层动态生成设计思想
  • 表现层的模块通讯设计思想
  • 表示层的数据验证设计
  • OO语言:抽象方法等
  • 通用技术:数据驱动等
  • Model  Driven  Architecture  (MDA)

研究开源软件架构

  • 开源框架的复用机制
  • 基于J2EE轻型软件架构:JSF,  Spring  ,  Hibernate

案例分析:一个小型Framework的实际代码

设计模式

反射机制

数据驱动

Part V:架构文档写作

架构设计文档格式详解:

  • ISO模板
  • RUP模板

高质量架构文档的标准

  • 避免出现不必要的重复
  • 使用标准结构
  • 从读者的角度编写文档
  • 记录基本原理
  • 使文档保持更新,但更新频度不要过高
  • 针对目标的适应性对文档进行评估

 

案例分析:大型系统实际架构文档演示

 

实战:读文档,给评价(讲师不断答疑并最终讲解)

Part VI :SOA架构设计

 

基于SOA架构设计

  • 服务的设计与原则和模式
  • 评估基于服务的集成技术的过程和准则
  • 服务模式与反模式
  • Web服务的体系结构
  • 改善web服务的协同工作能力
  • 基于SOA的软件构件的复用模式
  • 基于SOA的软件构件的管理模式

企业集成框架设计

  • 解决方案、数据集成、应用(接口)集成及应用服务
  • EAI参考模型:业务模式、概念模式、逻辑模式、物理模式和实现模式
  • 如何采用SOA设计企业应用系统集成

 

Part VI :数据架构

 

数据访问层设计(持久层架构设计)

  • 5种数据访问模式(在线访问,Data  AccESs  object,Data  Transfer  Object,离线数据模式,对象/关系映射)
  • 数据访问层组件设计
  • ORM、Hibernate与CMP2.0设计思想
  • 事务处理设计
  • 连接对象管理设计

数据架构规划与数据库设计

  • 数据库的设计原则
  • 数据库设计与类的设计融合
  • 数据库设计与XML设计融合
  • 数据库性能规划
  • 在数据库封装设计

组织机构数据模型案例讲解

Part VI:架构与管理

软件架构风险管理

  • 如何识别软件架构的风险
  • 如何规避软件架构风险
  • 软件架构风险管理与控制

架构在整个生命周期中的作用

  • 系统构建
  • 系统维护
  • 系统升级

架构设计开始的条件

  • 如何尽早开始架构设计
  • 架构设计必须能支持详细设计的并行进行
  • 架构设计到什么程度

架构评估

  • 架构评估概述
  • 架构评估技术
  • 场景技术
  • 原型技术
  • 架构评估方法
  • 评估方法与评估技术的关系
  • 架构原型
  • RUP的观点

本课的观点

 

 

 

案例分析:为什么业务层要更深入地设计

 

 

 

案例分析:JBoss架构的评估

 

 

 

案例分析:Saas系统架构原型

     

 

讲师资料:


肖老师

肖先生兼任2008奥运会IT特聘专家。肖先生深谙软件业务和技术的本质,能熟练驾驭软件开发过程管理(RUP,MSF,PSP等)和配套方法论,有卓越的软件整体规划和软件架构设计能力,在基础软件平台方面有丰富的规划和设计经验,曾主持流通业、政府、电信、奥运等大型机构复杂信息系统的规划和建设,承担多项国家科技攻关专题项目,为多家软件企业、研究所、大学提供软件架构设计、过程改进的专业咨询服务。

06年至今先后获得以下计算机软件著作权:

  • 基于软件自适应和可进化的分销管理平台软件。
  • 基于SAAS模式的业务基础平台软件。
  • 基于J2EE的服务调度系统软件。

 

近年的主要工作业绩:

  • 航空,航天领域软件架构和过程改进咨询服务(近10个成功案例)。
  • Rational系列产品咨询实施服务(近20个成功案例)。
  • SOA业务规划和建模的方法论的整理和传播。
  • 参与中国劳动与社会保障部社保核心平台咨询,重塑了社保核心信息模型。
  • 主持了陕西电信积分系统管理系统的规划和实施。

主持并实施了北京2008奥运会赛时服务整体咨询规划。



易程培训长期致力于面向软件研发团队的培训与咨询专业机构,专注于软件研发中心快速成长,提升软件研发团队技能、改善研发流程及研发产品创新能力。分享行业软件研发团队最佳管理实践,致力成为中国最专业权威的IT高端技术专业培训机构!

销售服务热线 010-56106823- CopyRight © 2009-2018 易程培训

京ICP备12043667号-1