版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精选优质文档-----倾情为你奉上精选优质文档-----倾情为你奉上专心---专注---专业专心---专注---专业精选优质文档-----倾情为你奉上专心---专注---专业高级系统架构设计师培训课程简介:
本课程将对软件生命周期与软件架构进行介绍,重点讲述面向对象程序设计原则与模式及方法论、用UML辅助系统分析与设计、借鉴RUP的设计过程、设计模式与软件设计思想、架构设计实践等要点,并结合软件架构设计案例进行进一步分析。【主办单位】中国电子标准协会【协办单位】深圳市威硕企业管理咨询有限公司Day1内容软件生命周期与软件
架构介绍软件架构介绍
IT行业的人才结构与软件架构师的定位
软件架构师应掌握的知识体系
软件架构设计的特点、层次、分类
软件架构的主要理论、方向和趋势
软件工厂,实现软件开发的产业化软件生命周期进程模型介绍
RUP与XP
Agile与CMMI
MSF技术架构视图─面向对象程序设计原则与模式及方法论衡量软件系统质量的标准
软件系统开始变坏的表现:硬化、脆弱、绑死、胶着。
软件系统关键的质量特性:正确性、健壮性、可扩展性、可复用性、兼容、可移植性、高效性、timeliness、economyandfunctionality面向对象设计的基本原则
类的设计原则:
开闭原则、依赖倒置原则、Liskov替换原则、单一职责原则、接口分离原则、组合复用原则、所知最少原则
例:会议管理系统等、API函数的启示等
包内聚原则:发布与复用等价原则、共同封闭原则、共同复用原则
包耦合原则:无循环的依赖原则、稳定的依赖原则、稳定的抽象用GRASP模式指导架构设计
GRASP架构模式:
信息专家、创建者、高内聚、低耦合、控制者、多态、间接、纯虚构、保护变化
典型案例分析:
违反信息专家模式案例分析
应用信息专家模式案例分析
应用GRASP模式精化架构设计案例分析软件架构设计的关键因素
什么是架构,它和系统是如何关联的。
如何获得可维护性、可扩展性、可重用性、互操作性等。
在系统中如何组织组件(Component)。
如何组织组件(Component)的内部。
如何保持平台相关的细节和应用的分离。
如何应用封装(encapsulation)、抽象(abstraction)和委派(delegation)的原则。
如何应用设计模式来实现好的结构。案例分析
模板容器、Movie查询等用UML辅助系统分析与设计UML中的常见疑难问题辨析
用例图
-参与者建模中的常见问题
-用例建模中的常见问题
-UaseCase的本质讨论
类设计
-UML中关系的辨析:依赖关系、关联关系辨析;聚合,组合辨析
类设计中的常见问题:
-一些常见但易混淆的类关系图;
-熟悉类的自关联形式;使用关联类;
-一些易混淆的重数表示方法
-建模为对象与建模为属性/建模为方法与建模为对象的辨析。
其它辨析
-包与组件
-扩展基类与覆盖基类等;自关联、关联多重性、关联角色名辨析
-消除多重继承的常用手段借鉴RUP的设计过程借鉴RUP的设计过程
全局分析:
选用架构模式;识别关键抽象;标识分析机制;常见的分析机制
局部分析:
提取分析类:
分析类的类型划分:边界类、实体类、控制类,分析类在模型中的位置,边界类的复用,控制类的变通。
分析动态场景:
消息与责任;事件序列在边界、实体及控制类间的原则;控制类在交互图中的表现特征;交互图的正确性。
整理分析类:
分析类的责任和关联关系;动态与静态的关系;确定类的责任;设计类和子系统接口。实践投递系统分析设计Day2内容设计模式与软件设计思想GOF设计模式
-使用GOF设计模式,借鉴前人的经验。
-分析创建型模式:
-单例模式(Singleton)、工厂模式、抽象工厂模式(Abstractfactory)
-分析结构型模式:
-桥梁模式(Bridge)、装饰模式(Decorator)、适配器模式(Adapter)、代理模式(Proxy)、组合模式(Composite)
-分析行为型模式:
-命令模式(Command)、观察者模式(Observer)、状态模式(State)、策略模式(Strategy)、模板方法模式(TemplateMethod)、访问者模式(TemplateMethod)设计模式深入讨论
-设计模式的本质:
-隔离变化点;间接;透明;局部双向依赖;逻辑与功能;用接口抹平差异、延迟调用。
-模式的推演:
-掌握模式的本质,而非形式。
-设计模式的高级运用:
-高手的选择;神似而非形似;一切以工程实际为标准;可以牺牲掉的特征;简化的模式;防止滥用;自创的模式。常用的软件架构风格及适用情况分析
-系统软件
-分层(Layer)、管道和过滤器(PipesandFilters)、黑板(Blackboard)
-分布式软件
-经纪人(Broker)、客户/服务器(Client/Server)、点对点(PeertoPeer)
-交互软件
模型-视图-控制器(Model-View-Controller)、显示-抽象-控制(Presentation-Abstraction-COntrol)SOA的设计思想
-SOA的概念
-SOA的设计目标
异构性Heterogeneity;可伸缩性Scalability;适用性Availability;分布式Distribution;.机动性Flexibility;可见性典型案例分析
媒体显示、数据采集系统、编辑器、文件解析器。架构设计实践静态设计
-按层+高内聚低耦合的原则进行模块划分
高内聚原则;按功能分解;按业务进行分解;以数据转换为中心分解;实际运用中的折中。
-划分层次
-将模块划入对应的层;分层与分区;逻辑模块与实体组件的对应关系。
-为模块进行职责分配隔离关注面:低耦合原则;适当采用设计模式;
用设计模式优化核心结构:经典模式运用:
用桥接模式作为中心骨架。
用桥接模式作为中心骨架。
用工厂模式进行组装。
用命令模式处理事务。
模块结构的常见形式
容器模块+控制者+功能模块+临时构建的小类;单例模式;命令模式。
核心模块的接口设计。
外观模式;适配器模式;代理模式;中介者模式。
其它形式的的模块结构:变换型模块结构;事务型模块结构。模块间的通信及耦合设计
-组件式编程。
-通讯机制:
-观察者模式;本地SDK;轮训。
-解耦:
-针对接口编程;增加间接模块;依赖注入。
-设计数据层
数据结构选用的设计;数据访问层的设计动态设计
-抽象与统一不同的因素
根据业务寻找关键因素;统一到复杂的情况。
-常用的流程抽象手段:
依赖注入/控制反转;表格法;配置文件。
-逻辑控制:
控制者模式;信息专家模式。
-消息通知机制MVC模式;观察者模式;责任链模式;中介者模式。模块调整
-调整模块等级。
适当封装;把属性提升为类;将类降为属性;将类提升为组件。
-用设计模式优化设计
在主体的框架上进行调整:访问者模式;装饰模式。
-编码时构建适当的动态临时类。
命令模式;事务处理类型。
-效率的优化效率与结构的折中:优化效率的3步骤。软件架构设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年全球及中国乙烯-丙烯酸乙酯共聚物(EEA)行业头部企业市场占有率及排名调研报告
- 2025医疗服务合同有什么特征
- 2025委托经营管理合同(详细)
- 提高时间管理能力的训练
- 提高学习效果的方法和技巧
- 2025广告场地租赁合同样本版
- 演出合同范文集合
- 续签借款简单的合同范本
- 建设工程廉政合同范本年
- 旅游资源开发合同2024
- 选择性必修一 期末综合测试(二)(解析版)2021-2022学年人教版(2019)高二数学选修一
- 学校制度改进
- 各行业智能客服占比分析报告
- 年产30万吨高钛渣生产线技改扩建项目环评报告公示
- 民谣酒吧项目创业计划书
- 2023年珠海市招考合同制职员笔试参考题库(共500题)答案详解版
- 心电监护考核标准
- 特种行业许可证申请表
- 古典芭蕾:基本技巧和术语
- 内地居民前往香港或者澳门定居申请表
- DB43-T 2612-2023林下竹荪栽培技术规程
评论
0/150
提交评论