北京软件扩展性与重用性设计培训

导读 本课程根据企业需求,着重讲解如何提高软件的灵活性,可扩展性和可重用性。
400-888-9073 167
华为 安全 自动化运维 云计算与物联网 前沿课程 项目管理 编程语言 研发改进 软件测试 大数据与人工智能 架构设计 职业素养 管理技能

课程详情

2021-04-07

软件扩展性与重用性设计培训

本课程根据企业需求,着重讲解如何提高软件的灵活性,可扩展性和可重用性。
软件扩展性与重用性设计培训
课程大纲:

1.什么是好的设计以及如何预先设计实现

(1)百家争鸣:什么是好的设计?

(2)衡量好设计的手段

(3)可扩展性(Extensibility)容易添加新的功能

(4)灵活性(Flexibility)代码修改平稳地发生

(5)可插入性(Plug ability)容易将一个类抽去-同时也可将相同接口类加入

(6)软件的变化分析-发现变化/封装变化/隔离变化

(7)软件需求的不可预测性-设计师预测式设计与过度设计

(8)软件演化式设计-敏捷的设计思想

2.逻辑架构切割

(1)技术切割范式:针对所有业务功能进行技术切割方法论

(2)技术元素的分层组织

(3)技术元素的分*组织

(4)技术元素的相似性与重叠性分析

(5)技术元素的变化性设计

(6)技术元素的性能、可靠、稳定与安全设计

(7)技术元素并行开发与开发管理组织

(8)技术元素难度复杂度与开发者能力关系

(9)动手实践:面向对象与面向方面的技术切割实践,评选*实践成果

3.接口设计与解耦

(1)接口设计的基本原则

(2)接口的变化性与稳定性

(3)定义技术元素间相互调用的接口

(4)定义系统外部访问集成的接口

(5)定义框架管理的接口

(6)注入变化观察技术元素的波及面-耦合性分析

(7)技术元素职责单一性与松耦合

(8)案例分析:google的MapReduce的接口设计

(9)动手实践:类库接口设计实践,评选*实践成果

4.数据库结构设计与大数据

(1)数据库设计的基本原则:适度使用范式原则

(2)实现数据库结构的弹性设计8种方案

(3)大数据设计:权衡SQL与NoSQL

(4)数据切割:分库、分区与分布

(5)数据存储文件系统的弹性设计:MySQL与淘宝TFS

(6)数据性能设计方案:对比MemCached、OceanBase与Spark

(7)数据中的知识与决策

(8)动手实践:分组实现数据库弹性设计,评选*实践成果

5.公共组件设计

(1)公共组件结构切割

(2)公共组件接口设计

(3)公共组件的弹性设计

(4)公共组件与功能组件的动态耦合设计

(5)动手实践:Cache组件设计

(6)动手实践:现有系统反向工程的公共组件合理性分析

6.框架平台设计

(1)UI框架设计

(2)功能逻辑组件集成管理框架设计

(3)数据访问框架设计

(4)数据存储框架设计

(5)案例分析:HADOOP框架剖析

(6)动手实践:现有系统反向工程的自定义框架的合理性分析

7.非功能性设计

(1)各种质量属性设计的战术策略

(2)掌控“相互冲突的质量属性”设计的平衡点

(3)软件变化分析与预测

(4)软件变化设计策略

(5)基于设计模式的变化设计

(6)基于key-value的变化设计

(7)基于逻辑判断的变化设计

(8)高可靠性设计

(9)案例分析:SAP自我维护设计策略分析

(10)动手实践:现有系统反向工程的质量设计的合理性分析

8.部署运行维护设计

(1)规划系统开发的配置库结构

(2)规划系统的编译方案

(3)规划系统源代码的版本方案

(4)规划系统物理文件的安装方案

(5)规划系统中各个技术元素部署方案

(6)系统集成构建方案

(7)注入敏捷思想-持续集成构建

(8)案例分析:微软的每日构建

(9)标注软件结构中的“运维点”

(10)制定“运维点”的运行维护策略

(11)软件结构中内置免疫系统

(12)动手实践:产品源代码结构、编译计划、版本计划与部署方案,评选*实践成果

9.架构关键点与工程

(1)架构设计与开发效率:简化开发

(2)架构设计指导详细设计与代码编写

(3)注入敏捷的开发实践方法:TDD

(4)融合ITIL与DevOps的架构设计

(5)软件架构与人力组织结构映射

(6)基于“软件工厂”的开发模式

(7)建立企业级知识库

(8)软件动态运行维护规划

(9)动手实践:现有系统反向工程的运维设计的合理性分析

10.架构模式与设计模式

(1)模式的场景、角色、职责

(2)模式应用误区与风险

(3)设计重构中模式应用

(4)把握模式的使用尺度-过度使用模式与适度使用模式

11.软件设计模式的应用(Design Patterns)

(1)建筑模式与设计模式

(2)过度使用设计模式的问题

(3)设计模式如何适应变化和封装

(4)GRASP设计原则

(5)关于功能与逻辑的分离

(6)设计模式的组合应用方式

(7)Framework设计中设计模式

(8)结合案例进行分析,应用设计模式之前和应用之后的对比

(9)动手实践:学员依据案例进行设计模式实践

上一篇: 北京敏捷需求分析课程培训 下一篇: 北京集成产品开发课程培训

推荐课程

查看全部课程
北京IT认证培训中心

北京IT认证培训中心

海淀校区

查看全部校区 进入官方主页