培训搜索引擎

软件架构设计最佳实践课程培训邀请函

参加对象:开发团队中的设计人员,系统分析人员,开发、测试主管或项目经理,以及有望或有志成长为以上角色的技术人员。

公开课编号 GKK2386
主讲老师 刘沛春,康凯
参加费用 5000元
课时安排 4天
近期开课时间 2013-05-02
举办地址 加载中...

其他开课时间
  • 开课地址: 开课时间:

公开课大纲
在软件开发项目中,系统架构师是软件项目的总设计师,是软件企业新产品、新技术体系的构建者,是目前软件开发中急需的高层次技术人才,为建立符合中国国情的软件开发架构设计体系,结合我国现有的软件企业开发环境,同时针对软件需求的多种场景进行综合分析,参照国际上规范的软件过程模型,我培训中心(原信息产业部计算机技术培训中心)特此开展高级系统架构系列培训,以提高企业在软件开发中的系统架构设计能力、使其达到高级系统架构师的基本要求。

培训对象

   开发团队中的设计人员,系统分析人员,开发、测试主管或项目经理,以及有望或有志成长为以上角色的技术人员。

培训目标

培训内容从实用性、规范性和系统性出发,通过培训使学员掌握软件架构的基础知识、设计原则、设计模式、设计方法,熟悉主流架构技术,了解规范的软件项目管理流程,并且通过一些典型的案例,揉合讲师的大型项目经验,以项目过程中的问题带动原理的描述,从理论和实际的结合上有重点的讲清问题,使其达到高级系统架构师的基本要求。

师资介绍

刘沛春
资深讲师和技术顾问,软件架构高级工程师。工作经历:Sun、IBM、Oracle等厂商合作,进行OOAD/UML、Java/J2EE、WebSphere/WebLogic、Oracle等技术和产品的培训及开发咨询工作;参与了大量电子商务/政务系统及电信、金融等行业应用案例的咨询与研究,在工作中积累了丰富的企业应用经验。
主要客户包括:Nortel北京研发中心、Motolora南京研发中心、西门子BISC、LG电子、东软股份、新华社通信局、中国国际电子商务中心、朗讯中国、网易、法国布尔等。

康  凯
国内资深高级系统架构师
UML/RUP专家,现任国内某知名企业研究院首席架构师,软件设计师。具有15年的从事IT行业的软件开发、系统架构设计分析经验。熟悉中国企业的需求管理,经历过多种文化氛围与组织形态,对大型项目、系统工程管理有着深入的实践与体会。最难能可贵的是康老师现在一直工作在实际项目的大型软件开发、系统架构设计的一线,拥有几十项专利技术。
康老师在国内外曾主持过各级政府、教育部、中国石化、美国外包项目、国税总局金税工程、中国军队(总参)信息化、金融信息化项目、2008年北京奥运会首都机场奥运福娃机器人项目等很多大型复杂信息化项目的架构设计,在实际项目工作中积累了丰富的项目实际工作经验和丰富的系统架构设计分析经验。
主要客户包括:中国工商银行、中国农业银行、国家开发银行、交通银行、中国铁通、中国电信、中电集团、中石油、中石化、西南电信、海关总署、中国科学院计算机网络信息中心、中国航天研究院、上海盛大网络、上海证券研究所、上海携程计算机、杭州恒生电子等上百家企事业单位。

培训大纲

第一单元:软件生命周期与软件架构介绍
  • 软件架构介绍
  • IT行业的人才结构与软件架构师的定位
  • 软件架构师应掌握的知识体系
  • 软件架构设计的特点、层次、分类
  • 软件架构的主要理论、方向和趋势
  • 软件工厂,实现软件开发的产业化
  • 软件生命周期进程模型介绍
  • RUP与XP
  • Agile与CMMI
  • MSF
 
第二单元:技术架构视图─面向对象程序设计原则与模式及方法论
  • 衡量软件系统质量的标准
  • 软件系统开始变坏的表现:硬化、脆弱、绑死、胶着。
  • 软件系统关键的质量特性:正确性、健壮性、可扩展性、可复用性、兼容、可移植性、高效性、timeliness、economy and functionality
  • 面向对象设计的基本原则
  • 类的设计原则:
    开闭原则、依赖倒置原则、Liskov替换原则、单一职责原则、接口分离原则、组合复用原则、所知最少原则
    例:会议管理系统等、API函数的启示等
  • 包内聚原则:发布与复用等价原则、共同封闭原则、共同复用原则
  • 包耦合原则:无循环的依赖原则、稳定的依赖原则、稳定的抽象
  • 用GRASP模式指导架构设计:
  • GRASP架构模式:信息专家、创建者、高内聚、低耦合、控制者、多态、间接、纯虚构、保护变化
  • 典型案例分析:
    违反信息专家模式案例分析
    应用信息专家模式案例分析
    应用GRASP模式精化架构设计案例分析
  • 软件架构设计的关键因素
  • 什么是架构, 它和系统是如何关联的。
  • 如何获得可维护性、可扩展性、可重用性、互操作性等。
  • 在系统中如何组织组件(Component) 。
  • 如何组织组件(Component)的内部。
  • 如何保持平台相关的细节和应用的分离。
  • 如何应用封装(encapsulation)、抽象(abstraction)和委派(delegation)的原则。
  • 如何应用设计模式来实现好的结构。
  • 案例分析:
模板容器、Movie查询等。


第三单元:用UML辅助系统分析与设计
  • UML中的常见疑难问题辨析
  • 用例图
  • 参与者建模中的常见问题。
  • 用例建模中的常见问题。
  • UaseCase的本质讨论。
  • 类设计
  • UML中关系的辨析:
依赖关系、关联关系辨析;聚合,组合辨析。
  1. 类设计中的常见问题:
  2. 一些常见但易混淆的类关系图;
  3. 熟悉类的自关联形式;使用关联类;
  4. 一些易混淆的重数表示方法
  5. 建模为对象与建模为属性/ 建模为方法与建模为对象的辨析。
  6. 其它辨析
  7. 包与组件。
  8. 扩展基类与覆盖基类等;自关联、关联多重性、关联角色名辨析。
  9. 消除多重继承的常用手段。
  10. 借鉴RUP的设计过程。
  11. 全局分析:
选用架构模式;识别关键抽象;标识分析机制;常见的分析机制
  1. 局部分析:
提取分析类:
分析类的类型划分:边界类、实体类、控制类,分析类在模型中的位置,边界类的复用,控制类的变通。
分析动态场景:
消息与责任;事件序列在边界、实体及控制类间的原则;控制类在交互图中的表现特征;交互图的正确性。
整理分析类:
分析类的责任和关联关系;动态与静态的关系;确定类的责任;设计类和子系统接口。
  • 实践:
    投递系统分析设计。
 
第四单元:设计模式与软件设计思想
  • GOF设计模式。
  • 使用GOF设计模式,借鉴前人的经验。
  • 分析创建型模式:
    单例模式(Singleton)、工厂模式、抽象工厂模式(Abstractfactory)
  • 分析结构型模式:
     桥梁模式(Bridge)、装饰模式(Decorator)、适配器模式(Adapter)、代理模式(Proxy)、组合模式(Composite)
  • 分析行为型模式:
    命令模式(Command )、观察者模式(Observer)、状态模式(State)、策略模式(Strategy)、模板方法模式(Template Method)、访问者模式(Template Method)
  • 设计模式深入讨论:
  • 设计模式的本质:
    隔离变化点;间接;透明;局部双向依赖;逻辑与功能;用接口抹平差异、延迟调用。
  • 模式的推演:
    掌握模式的本质,而非形式。
  • 设计模式的高级运用:
    高手的选择;神似而非形似;一切以工程实际为标准;可以牺牲掉的特征;简化的模式;防止滥用;自创的模式。
  • 常用的软件架构风格及适用情况分析:
  • 系统软件
    分层(Layer)、管道和过滤器(Pipes and Filters)、黑板(Blackboard)
  • 分布式软件
    经纪人(Broker) 、客户/服务器(Client/Server)、点对点(Peer to Peer)
  • 交互软件
    模型-视图-控制器(Model-View-Controller)、显示-抽象-控制(Presentation-Abstraction-COntrol)
  • SOA的设计思想:
  • SOA的概念。
  • SOA的设计目标
    异构性Heterogeneity;可伸缩性Scalability;适用性Availability;分布式Distribution;.机动性Flexibility;可见性
  • 典型案例分析:
    媒体显示、数据采集系统、编辑器、文件解析器。
 
第五单元:架构设计实践
  • 静态设计:
  • 按层+高内聚低耦合的原则进行模块划分
    高内聚原则;按功能分解;按业务进行分解;以数据转换为中心分解;实际运用中的折中。
  • 划分层次
    将模块划入对应的层;分层与分区;逻辑模块与实体组件的对应关系。
  • 为模块进行职责分配
隔离关注面:低耦合原则;适当采用设计模式;
用设计模式优化核心结构:经典模式运用:
用桥接模式作为中心骨架。
用桥接模式作为中心骨架。
用工厂模式进行组装。
用命令模式处理事务。
模块结构的常见形式
容器模块+ 控制者+ 功能模块+ 临时构建的小类;单例模式;命令模式。
核心模块的接口设计。
外观模式;适配器模式;代理模式;中介者模式。
其它形式的的模块结构:变换型模块结构;事务型模块结构。
  • 模块间的通信及耦合设计:
  • 组件式编程。
  • 通讯机制:
    观察者模式;本地SDK;轮训。
  • 解耦:
    针对接口编程;增加间接模块;依赖注入。
  • 设计数据层
    数据结构选用的设计;数据访问层的设计
  • 动态设计:
  • 抽象与统一不同的因素
    根据业务寻找关键因素;统一到复杂的情况。
  • 常用的流程抽象手段:
    依赖注入/ 控制反转;表格法;配置文件。
  • 逻辑控制:
    控制者模式;信息专家模式。
  • 消息通知机制
    MVC模式;观察者模式;责任链模式;中介者模式。
  • 模块调整:
  • 调整模块等级。
    适当封装;把属性提升为类;将类降为属性;将类提升为组件。
  • 用设计模式优化设计
    在主体的框架上进行调整:访问者模式;装饰模式。
  • 编码时构建适当的动态临时类。
    命令模式;事务处理类型。
  • 效率的优化
    效率与结构的折中:优化效率的3步骤。   
 
第六单元:软件架构设计案例分析
  • 综合架构案例剖析
  • 商店POS系统架构设计
  • 薪酬系统架构设计
  • 仓库管理系统架构设计
  • 实战典型案例分析(以实际项目案例为背景)
  • 需求分析、领域建模:零售店销售系统
  • 设计模式的综合运用:Dvc文件分析系统
  • 架构分析:互联网商品数据分析系统
  • 综合案例分析:
图像处理系统
基于搜索的二次开发系统

培训时间、地点及方式

4天      北京中软大厦第一会议室    
培训采用讲授、演示与实践相结合,理论与案例相结合的生动而具体的教学方法,突出实践运用,通过实际演练发现并解决问题。

培训费用

5000元/人(含培训费、教材资料费、证书费、午餐茶歇等费用)需要住宿的学员请提前告知,食宿统一安排,费用自理。
 

附件:培训报名回执表

参加课程名称:
单位发票名称   联系人  
联系电话   手  机  
部门职务   邮  件  
邮寄地址   QQ/MSN  
姓名 部门职务 手机 电话 E-mail QQ/MSN 备注
             
             
             
                   
说明:
  1. 此表复印有效。
  2. 需要安排住宿的学员,请提前与咨询老师联系。
  3. 报名先后顺序以财务缴费到帐日为准。
  4. 此课程开班报名截止日期为开班前一周,请报名个企业或个人,提前以邮件方式发送此报名表。
  5. 发送此报名表后,中心在开班前2-3周左右会以电子邮件的方式发送培训报道通知,通知到报名负责人和参加培训的所有人员,确认您的报名成功,收到中心的培训报道通知的企业或个人,即可办理缴费事宜。 
     

上一篇:关于举办“高级软件需求分析最佳实践”—“实战案例
下一篇:南京大学2013自主命题在职软件工程硕士(上海)班春季招生中

培训现场