×

首页 > 企业定制

高级软件设计实践

课程介绍:

1 全球下一代能源勘探开发平台--大型跨国企业实例设计剖析 2 2个大中型项目的架构设计--大型跨国企业实例架构剖析 3 中间件平台的架构设计--大型跨国企业实例代码剖析 4 国家电网信息化工程架构规划 5 中国石油门户建设系统架构及规划 6 工商银行大型BI系统部署架构规划 7 浦发银行大型账单系统部署架构规划 8 交通部大型GIS系统架构及规划

培训目标:

课程大纲:

第一天      软件设计概述
1、分析开发人员缺乏对设计的深入认识,无法将需求有效地转换为设计
2、软件设计的相关角色和职责
3、软件设计的流程(可操作性设计步骤)
4、架构设计与详细设计
5、软件设计的交付工件和相关规范
6、多人/多团队协作设计如何协作?
7、分析开发人员设计能力不足,无法独立承担模块的开发设计任务
8、过度设计(Over-engineering)问题和注意事项,
9、设计不足(Under-engineering)问题和注意事项

什么是好的设计
1、什么是优秀的软件设计和衡量的手段
2、可扩展性(Extensibility)容易添加新的功能;结合案例说明通过哪些手段如何实现该目标
3、灵活性(Flexibility)使代码修改平稳地发生;结合案例说明通过哪些手段如何实现该目标
4、可插入性(Pluggability)容易将一个类抽出去,同时将另一个有同样接口的类加入进来。结合案例说明如何实现该目标

软件设计原则
1、设计基本原则
2、发现和封装变化的原则
3、面向对象的基本原则(OCP/SRP/ LSP/DIP)
4、共性和可变性分析原理
5、分析矩阵
6、共性和可变性分析

设计的GRASP原则
1、什么是GRASP设计原则
2、信息专家模式和应用场景,以及案例分析
3、创建者模式和应用场景,以及案例分析
4、高内聚/低耦合模式和应用场景,以及案例分析
5、控制者模式和应用场景,以及案例分析
6、多态纯虚构模式和应用场景,以及案例分析
7、间接/保护变量模式和应用场景,以及案例分析
8、保护变量模式的重要意义。

第二天      设计模式本质
1、设计模式的本质
2、设计模式的使用误区
3、框架设计中的反模式

设计模式与软件设计思想
1、使用GOF设计模式,借鉴前人的经验。
2、分析创建型模式:单例模式(Singleton)、工厂模式、抽象工厂模式(Abstractfactory)
3、分析结构型模式:桥梁模式(Bridge)、装饰模式(Decorator)、适配器模式(Adapter)、代理模式(Proxy)、组合模式(Composite)
4、分析行为型模式:命令模式(Command )、观察者模式(Observer)、状态模式(State)、策略模式(Strategy)、模板方法模式(Template Method)、访问者模式(Template Method)

第三天      软件架构设计实践开篇-大型应用系统架构设计实践
1、软件架构与企业信息化架构
2、解决项目风险的关键-架构基线
3、大系统成败的关键因素
4、软件开发的完整生命周期中,架构设计参与哪些周期
5、敏捷开发中的架构设计与瀑布式开发中的架构设计异同
6、架构定义系统整体结构
7、架构定义系统的交互行为
8、所有系统都存在架构-哪些系统对架构的要求更高
9、架构的边界定义-如何界定架构的范围
10、产品型应用系统与项目型应用系统的架构设计差异
11、11个软件架构设计关注的考量点
12、软件架构设计的核心
13、软件架构 = 需求+架构机制+广义功能
14、软件架构设计的六个阶段

从业务架构设计过渡到软件架构设计-从需求到设计(解决需求与架构间的鸿沟)
1、需求与设计的映射
2、如何构建设计阶段的需求类型
3、如何进行分层的设计
4、从业务架构到模块划分, 模块的职责分配与有效的业务到模块的设计
5、如何获得可维护性、可扩展性、可靠性、健壮性等非功能性属性
6、系统架构的可靠性设计策略
7、系统架构的可修改性设计策略
8、系统架构的性能设计策略
9、从需求到设计的过渡及转变
10、从特定的需求输出转化到软件的架构设计

系统架构的机制决策
1、架构机制的实践分析过程
2、确认架构的分析机制
3、系统架构机制决策的实践原则
4、12种通用的分析机制解决方案实践
5、可靠性系统架构的设计决策
6、健壮性系统架构的设计决策
7、可扩展性系统架构的设计决策
8、高性能系统架构的设计决策
9、安全性系统架构的设计决策
10、易用性系统架构的设计决策

架构设计实现实践
1、基础架构设计实做
2、架构的骨架-完整的架构搭建
3、完成架构的基础架构设计

第四天      展现层与业务逻辑层代码分离架构设计
1、展现层与业务逻辑层代码分离的核心设计思想
2、MVC的错误认知(如:Action中的业务逻辑如何管理?)
3、MVC的实现途径
4、MVC的扩展实现,大型系统的MVC实现特性已超过Struts的实现更加有效
5、大型系统的MVC设计
6、基于移动互联应用的MVC设计, 提高展现层代码高可维护性
7、展现层与业务逻辑层代码分离架构设计实现

高可配置型软件架构设计
1、实现业务服务的配置管理
2、基于架构的业务服务加载及配置
3、高可扩展性的关键框架设计及实现
4、业务服务的动态加载与管理架构设计

高可扩展性及高灵活性软件架构设计-设计可适应于软件需求变更的架构设计
1、业务变更与扩展
2、业务服务架构如何动态支撑业务变更与扩展
3、业务扩展如何支持
4、抽象的业务服务设计原则
5、扩展性软件架构的核心设计

DDD开发(DomainDriving Development)领域模型驱动的开发
1、从企业级应用到领域模型
2、从业务模型分解领域模型
3、领域模型驱动的开发形式
4、基于领域模型的开发协作与模块访问形式
5、DDD开发中的分层设计
6、领域建模
7、领域本身的分析
8、现实世界中对象的可视化表示
9、抽象业务模型
10、对象-关系行为模式
11、领域对象的实践设计原则
12、领域对象关联设计的实践设计原则
13、成熟、有效的DDD架构使用与选型

系统的数据总线架构设计
1、统一的数据总线管理机制
2、对象-关系结构映射模式
3、数据层对整体架构设计的重要意义
4、数据总线对业务层的支撑
5、业务层到数据总线的访问
6、数据总线的架构设计

第五天      软件设计评估
1、初步实施规划
2、设计评估的4大要点
3、评估优先顺序
4、设计优化
5、架构设计与详细设计的测试,如何有效通过测试团队验证设计的有效性
6、详细设计的落地过程与设计跟进
7、架构的使用,如何提升团队对架构的使用, 降低开发成本

国际主流架构应用案例分析
1、几个大型实例系统的主流架构应用案例分析
2、国际先进架构设计思想分析
3、当下重要的开源架构实现

拙劣设计的坏症状和重构技术
1、拙劣设计概述
2、拙劣设计常见症状
3、重构概述以及常见的手段
4、重构到设计模式
5、在详细设计之中,如何对发现问题的设计进行重构

架构的重构-老系统如何焕发新的生命力
1、软件架构重构的价值
2、老系统的软件架构中的主要难题
3、架构的重构时机
4、架构的重构步骤
5、架构重构的实践原则
6、架构重构是的主体重构策略

TDD测试先行的开发
1、TDD测试的基本方法
2、TDD测试策略
3、TDD测试过程
4、TDD的实施过程概述
5、依据需求确认测试用例,框定开发的需求点,代码修改的安全保障
6、从测试用例到代码开发
7、执行测试用例
8、TDD的单元测试
9、TDD测试的桩和驱动

单元测试与持续集成
1、持续集成及日构建
2、持续集成服务器选型
3、单元测试的自动化执行
4、持续集成与回归测试
 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

PMI, PMP, Project Management Professional, CAPM, PgMP, PfMP, PMI-ACP, PMI-RMP, PMI-SP, PMI-PBA and PMBOK are registered marks of the Project Management Institute, Inc.

ITIL® is a registered trade mark of AXELOS Limited, used under permission of AXELOS Limited. All rights reserved.

PRINCE2® is a registered trade mark of AXELOS Limited, used under permission of AXELOS Limited. All rights reserved.

Copyright © 2006-2019 东方瑞通(北京)咨询服务有限公司版权所有

京ICP备 13009094号 京公网安备 11010802031185号