系统设计
处理流程设计
业务注流程建模
标标对照
IDEF
0 业务注流程建模
1 信息建模
1X ER
4 面向对象设计
12 组织结构建模
DEMO
Petri网
业务注流程建模语言
基于服务的BPM
软件架构设计
需求分析 架构 软件设计
架构设计就是需求分配,即将满足需求的职责分配到组件上
架构风格
数据流风格:批处理序列、管道-过滤器
调用、返回风格:主、子程序、面向对旬、层次结构
独立构件: 进程通信、事件驱动系统(隐式)
虚拟机风格:解释器、基于规则的系统
仓库风格:数据库系统,黑板系统(语方处理、信号处理)、超文本系统
结构化设计
概要设计:拆分、模块之间交互 =架构设计
详细设计:单个模块的内部设计
思想:
抽象化
自顶而下、逐步求精
信息隐藏
模块独立(高内聚、低耦合)
多扇入,少扇出
面向对象设计
分析模型
用例模型 用例
分析模型 类图
设计原则
单一职责
开封原则
李氏替换原则
依赖倒置
接口隔离
组合重用
迪米特原则(最少知识法则)
架构模式:高层决策
设计模式:局布,关注软件系统的设计与具体实现语言无关
创建型
抽象工厂模式:生产成系统对象
工厂方法模式:生产一个
构建器模式:将复杂对象构造
原型模式:克隆
单例
结构型
适配器模式(转换接口)
桥接模式:类的抽象部和实现部分分离
组合模式:整本-部分
装饰模式:附加职责
外观模式:对外统一接口
享元模式:共享
代理模式:快捷方式
行为型
职责链:传递职责
命令模式:可撤销
解释器模式:虚拟机的机制
迭代器模式:数据集
中介者:不直接引用
备忘录模式:游戏存档
观察者模式:联动
状态模式:状态变成类
策略模式:多方案切换
模板方法:
访问者:访问和数据做分离
习惯用法:是最低层
人机界面设计
置于用户控制之下
减少用户的记忆负担
保持界面的一致性
Web应用设计
1台单机
1台应用服务器+1台数据库服务器
负责均衡+应用服务器集群+1台数据库服务器
HTTP重定向 (应用层)
特点:实现简单,但性能较差
反向代理 (应用层)
特点:部署简单,但代理服务器可能成为性能的瓶颈
DNS(传输层)域名解析
特点:效率比HTTP重定向高,减少维护负责均衡服务器成本
故障,不能及时通知DNS,控制权在域名服务商那里,无法做更多的改善
NAT(传输层)域名解析
特点:技术较为成熟,一般在网关位置,可以通过硬件实现。像四层
交换机一般就采用了这种技术。
混合
静态算法:轮转
动态算法:最小连接算法、加权最小连接、加权百分比
负责均衡:有状态与无状态问题
无状态:对单次请求的处理,不依赖其他请求,也就是说,处理一次请求
所需的全部信息,要么都包含在这个请求里,要么可以从外部获取
有状态:则相反,它会在自身保存一些数据,先后的请求是有关联的
负责均衡+应用服务器集群+1台写数据库服务器+1-N 从(读)库
负责均衡+应用服务器集群+缓存集群+1台写数据库服务器+1-N 从(读)库
CDN(内容分发网络)Content Delivery Network 就近访问,分发新的资源
XML 与JSON
XML 优点:格式统一,符合标准备,数据共享比较方便
缺点:XML文伯庞大,文件格式复杂,传输占带宽
解析复杂花费时间和资源多,难维护
JSON 优点:格式简单,易于读写,点用带宽小、易于解析、支持多种语言、开发效率高,易维护
缺点:格式,没有XML那么通用
WEB 应用服务器
WEB服务器
应用服务器
REST(表述性状态传递)(Representational state Transfer)是一种只使用HTTP
和XML进行基于Web通信的技术,可以降低开发的复杂性,提高系统的可伸缩性。
2023年软考高级系统分析师学习笔记三【系统设计】
最新推荐文章于 2024-07-08 21:59:31 发布