2025年上软件系统架构师最全核心资料思维导图
2024-11-12 12:49:52 0 举报
AI智能生成
"2025年上软件系统架构师最全核心资料思维导图"是一份全面详细的学习资料,涵盖了软件系统架构师所需的核心知识和技能。这份资料以思维导图的形式呈现,结构清晰,易于理解。它包括软件架构的基础概念、软件架构设计模式、软件架构方法论、软件质量保证、软件项目管理等方面的内容。此外,还有关于云计算、微服务、大数据等热门技术的专题介绍。这份资料适用于想要成为软件系统架构师的IT专业人士,对于提升软件设计和开发能力具有很高的实用价值。
作者其他创作
大纲/内容
软件高级架构师
描述和介绍
调查和分析
测试
报告
四个阶段
可用性
安全性
可修改性
性能
效用树
可测试性
可靠性
易用性
质量属性7个
架构权衡分析方法ATAM
基于场景的架构分析方法SAAM
基于成本效益的架构分析方法CBAM
其他
架构评估
服务化原则
弹性原则
子主题
可观测原则
韧性原则
自动化原则
零信任原则
原则
微服务
小服务
服务化架构模式
无服务化架构
分布式架构
事件驱动架构
架构模式
云原生架构
架构需求
架构设计
架构规格说明书
测试架构质量设计说明书
架构文档化
架构复审
架构实现
架构演化
开发阶段:6个阶段
需求获取
标识构件
需求评审
需求阶段
基于架构的软件设计
分层式体系结构
层次式体系结构
MVC
MVP
MVVM模式
表现层设计模式
表现层中UIP设计思想
表现层动态生成设计思想
表现层框架设计
业务逻辑层组件设计
业务逻辑层工作流设计
业务逻辑层实体设计
业务逻辑层框架
中间层框架设计
5种数据访问模式
工厂模式在数据访问层应用
事务处理设计
ORM、Hibernate与CMP2.0设计思想
连接对象管理设计
数据访问层设计
感知层
网络层
应用层
物联网层次架构设计
层次式架构设计理论与实践
物理安全威胁
通信链路安全威胁
网络安全威胁
操作系统安全威胁
应用系统安全威胁
管理系统安全威胁
安全威胁方面
常见安全威胁
产品安全架构
安全技术体系架构
审计架构
安全防线
安全架构概述
模型分类
状态机模型
Bell-LaPadula模型
Biba模型
Clark-Wilson模型
Chinese Wall模型
模型类型
安全模型
信息系统安全体系规划
信息系统安全规划框架
系统安全体系架构规划框架
预警
保护
检测
响应
恢复
反击
信息安全体系架构模型(WPDRRC模型)
1.系统安全保障体系
2.信息安全体系架构
信息安全体系架构设计
信息安全整体架构设计
一种面向企业的安全控制系统安全架构
鉴别
访问控制框架
机密性框架
完整性框架
抗抵赖框架
网络安全体系架构设计
数据库完整性的作用
数据库系统的安全设计
引入阶段
产生破坏效果阶段
修补阶段
软件脆弱性生命周期
C/S 架构的脆弱性
B/S 架构的脆弱性
事件驱动架构的脆弱性
MVC架构的脆弱性
微内核架构的脆弱性
微服务架构的脆弱性
典型软件架构的脆弱性分析
软件脆弱性分析考虑方面
系统架构的脆弱性分析
安全架构设计理论与实践
大数据处理系统面临挑战
大数据处理系统架构特征
大数据处理系统架构分析
机器学习中的Lambda架构
物联网的 Lambda架构
流处理和Lambda架构挑战
Lambda架构应用场景
批处理层
加速层
服务层
Lambda架构介绍
Lambda架构的实现
Lambda架构优缺点
Lambda架构
架构图
Kappa架构介绍
Kappa架构的实现
Kappa架构的优缺点
Kappa+
Kappa架构
Lambda架构与Kappa架构的特性对比
Lambda架构与Kappa架构的设计选择
Lambda架构与Kappa架构的对比和设计选择
大数据架构设计理论与实践
知识点
字数 300-320之间
项目相关背景及主要功能
你的岗位及主要职责
论文主体内容的总概
项目最终的实施效果或你的总结和感悟等
主体内容
摘要
字数 2000—2250之间
项目的开发原因
担任的工作
开发周期:开始时间(3年内)持续时间(8个月)上线(半年以上)
可选:介绍项目规模可从 资金、团队、功能划分
宏观背景:项目的来龙去脉
项目背景(400字左右)
回应题目问题非核心论点
引出主体内容
过度段(300-400字)
功能模块
技术
开发周期
分论点构思
一总三分 3*400
主要内容(1000-1500字)
分析项目运行效果
总结项目不足
最后提供解决思路
总结展望(可选)
总结(400-600字)
主体
论文
划分
找核心论点(5')
搭建论文框架(10')
写摘要(15')
写正文(90')
基本流程
论文和核心概念
程序控制
时间控制
操作控制
数据处理
CPU功能
算术逻辑单元ALU
累加器
状态条件寄存器
缓冲寄存器
运算器(数据加工、算术运算、逻辑运算)
指令寄存器
程序计数器
地址寄存器
指令译码器
控制器(保证指令执行、处理异常事件)
寄存器组(保存程序的中间结果)
总线
CPU组成
中央处理器 CPU
奇偶校验码
算检测码案例
算是否有误码案例
循环冗余校验码CRC
海明码
校验码
原码
反码
补码
原码、反码、补码
数据表示
结构图
Cache位于CPU与主存之间
Cache对程序员来说是透明的
设置多级高速缓存Cache以提高命中率(访问主存的效率)
高速缓存cache
直接相连
全相连
组相连
习题
地址映像和冲突率
随机替换算法RAND(Randon)
先进先出算法FIFO(FirstinFirstout)
近期最少使用算法LRU(LeastRecently Used)
最不频繁使用算法LFU(LeastFrequently Used)
优化替换算法
cache淘汰算法
写直达:同时写Cache与内存
cache读写过程
存储器层次结构
CISC与RISC
分为无条件传送和程序查询方式
降低了CPU的效率
对外部的突发事件无法做出实时响应
直接程序控制
利用中断方式完成数据的输入/输出
程序中断方式
在主存与I/0设备(外设)之间建立数据通路进行数据的交换处理
在DMA传送过程中无须CPU的干预
DMA
输入/输出处理机(IOP)
输入输出技术
1、平均存取时间
这种题记得画图 C 、B
2、优化分布
先来先服务
C
最短寻道时间优先
扫描算法
循环扫描算法
3、移臂调度算法
结合流水线公式
4、单缓冲区与双缓冲区
考点
磁头
磁臂
磁面
磁柱
磁道
扇区
组成
读写时间
示意图
磁盘
理论公式:(t1+t2+...+ty)+(n-1)*t
实践公式:K*t+(n-1)*t t为执行最长时间也叫流水线周期
流水线执行时间计算公式
吞吐率
加速比
流水线
冯诺依曼结构
哈弗结构
CPU结构
适合长距离传输使用
串行总线
适合短距离传输使用
并行总线
串行、并行
只能传一个方向,不能更改
单工
可以切换方向的单工
半双工
双向传输
全双工
单工、双工
数据总线
地址总线
控制总线
数据类型
计算机基础
硬件
功能描述
安装文档
使用手册
参考手册
操作员指南
用户文档
和系统实现相关文档
系统文档
系统文档分类
需求分析工具、设计工具、编码与排错工具、测试工具等
开发工具
版本控制工具、文档分析工具、开发信息库库工具、逆向工程工具、再工程工具
维护工具
项目管理工具、配置管理工具、软件评价工具、软件开发工具的评价和选择
软件管理和支持工具
软件工具
数据设计
架构(体系结构)设计
人机界面(接口)设计
过程(功能)设计
软件设计
软件工程概述
软件系统建模
但前一阶段的错误会延续到下一阶段
阶段清晰
各阶段均有产出物
自顶向下,逐步分解求精
特点
需求明确的开发
二次开发
应用场合
瀑布模型
先构造一个建议系统
适合需求不明确的情况
获得需求后抛弃原型
快速原型
将原型演化为最终软件产品
演化原型
分类
原型化模型
原型为基础+瀑布+迭代
引入风险分析
适合庞大复杂高风险的系统
目标设定
风险分析
开发和有效性验证
评审(客户评价)
四个阶段(迭代)
螺旋模型
适合需求明确
适合变更不频繁
强调测试
V模型
测试和开发并行进行
W模型
需求分析和定义
构件库的建立
应用软件构件
测试和发布
阶段
微软
DNA
Corba
Java体系
EJB
构件标准
易扩展、易重用、降低成本、安排任务更灵活
第三方构件质量难以控制
基于构件的开发模型CBSD
瀑布模型+CBSD(基于构建)
模块化程度高
快速应用开发模型(RAD)
是\"适应性\"而非\"预设性\"
是\"面向人的\"而非\"面向过程的\".
增量迭代,小步快跑
适合小型项目以原型为基础
价值观【交流、朴素、反馈、勇气】、近旋式的开发方法
极限编程
提倡“机动性”的方法,拥有对不同类型项目非常有效的敏捷过程。
水晶方法
侧重项目管理
SCRUM
认为有效的软件开发需要3要素【人、过程、技术】。定义了6种关键的项目角色:项目经理、首席架构设计师、开发经理、主程序员、程序员和领域专家。
特征驱动开发(FDD)
开发方法
沟通【加强面对面沟通】
简单【不过度设计】
反馈【及时反馈】
勇气【接受变更的勇气】
四大价值观(敏捷宣言)
敏捷模型
初始
细化
构造
移交
在每一轮迭代中都要进行测试与集成。
以架构为中心
用例驱动
增量与迭代
核心特征
9个核心工作流
统一过程RUP
实现级:包括程序的抽象语法树、符号表、过程的设计表示。
实现级
结构级:包括反映font color=\"#ff0000\
结构级
功能级:包括反映font color=\"#ff0000\
功能级
领域级:包括反映程序分量或程序诸实体与font color=\"#ff0000\
领域级
四个级别
在【同一抽象级别】上【转换系统描述形式】
重构
源码到设计或设计到分析
设计恢复
改变系统性能
正向工程
设计到源码
逆向工程
重新开发
再工程/重构工程
四个概念
逆向工程⭐
开发模型⭐⭐
可部署性
可组装性
文档化
标准化
独立性
特征
6个活动
顺序组装
层次组装
叠加组装
组装
基于构件的软件开发(CBSE)⭐⭐
净室软件工程⭐
用户需求
业务需求
功能需求
非功能需求
设计约束
系统需求
从用户角度来看
基本需求(明示,常规需求)
期望需求(隐含)
兴奋需求(多余)
从项目管理维度看
用户访谈
问卷调查
采样
情节串烧
联合需求计划
需求记录技术
获取方法
数据流图DFD
功能建模
ER图
数据建模
状态转换图
行为建模
三大模型
核心:数据字典
结构化需求分析
用例图
用例模型
类图
分析模型
四种事物
事物
关系和图考的少(了解)
考点一
静态图
动态图
来自画布:画布1
UML图
概要
考点二
构造快
UML
面向对象的需求分析
需求分析
严格定义法
原型法
形成需求规格(需求定义)
需求评审/需求测试
方法
要求用户参与,签字
需求的确认与验证
项目在形成需求基线后不能随意调整
产生原因
项目经理、客户方、开发团队、监理方
变更控制委员会(CCB)
变更控制
申请、评估、审批、执行、版本控制
版本控制
需求开发工作不易
获取全面正确的需求
产生的原因
在二维表中如果FR-m和UC-n没有用例和元素对应,这个需求就不会开发出来
需求跟踪
需求状态跟踪
需求管理
需求工程⭐⭐
置于用户控制之下
减少用户的记忆负担
保持界面的一致性
界面设计
模块结构图
层次图
HIPO图
概要设计
程序流程图
伪代码
盒图
详细设计
设计内容
确定模块间的调用关系,关注模块间接口,如系统结构
模块内的设计,如确定算法
尽可能减少调用的深度和宽度:
保持模块大小适中
高内聚
低耦合
高内聚 低耦合
设计原则
输入输出
处理功能
内部代码
程序代码
四要素
结构化设计方法
扇出多了可以拆分模块来降低扇出
基本过程
边界类
控制类
实体类
类的分类
知道什么情况的类归属于那种类
面向对象设计方法
系统设计方法
系统分析与设计⭐⭐
桌前检查
代码审查
代码走查
静态测试
都叫静态分析
等价值划分
边界值划分
错误推断
因果图
黑合测试
语句覆盖SC:
判定覆盖DC:
条件覆盖CC:
条件判定组合覆盖CDC:
覆盖层级最高
路径覆盖:
白盒测试
动态测试
测试方法
模块测试,模块功能、性能、接口等
测试内容
详细设计阶段完成
测试计划
单元测试
模块间的接口
概要设计阶段完成
一次性组装【高风险】
自顶向下,需要桩模块
自底向上,需要驱动模块
增量式组装
方式
集成测试
真实环境下,验证完整的软件配置项能否和系统正确连接
需求分析阶段完成
系统测试
验证软件与需求是否一致
确认测试
测试阶段
软件测试⭐⭐
改造
集成
继承
淘汰
遗留系统
直接转换
并行转换
分段转换
手段
系统转换策略
可理解
可修改
可测试
影响可维护性因素
正确(修BUG)
适应(应变)
完善(新需求)
预防(针对未来)
维护类型
软件维护
系统运行与维护⭐
软件工程
外模式 概念模式 内模式 分别对应 :视图、表、文件
三级模式
物理独立性和逻辑独立性分别保证数据的独立性
两级映射
聚簇索引会影响内模式
聚簇索引
集中式数据库
1、可用性:当某个节点故障其他节点可用
2、性能好:多副本可读,就近读取
3、自治性
4、共享性:各个数据节点之间数据共享
透明性分类
分片/分块方式
2PC
分布式数据库
数据库概述
数据库设计总览
如字段类型冲突和取值范围冲突
属性冲突
同名异义和异名同义
命名冲突
某2个实体相同但是属性数量不同
结构冲突
冲突及解决办法
协商解决
font color=\"#ff0000\
概念结构设计过程
示例图
1对1 可以单独转入也可以并入任意一端
1对多 可以单独转换,可以并入多端
多对对 只能单独转换
联系向关系模式的转换
逻辑结构设计的过程
属性个数:目与度
属性集合可以有多个属性也可以有一个属性 : 候选码(候选键)
主码/主键
主属性与非主属性
外码/外键
关系模式的所有属性组是这个关系的候选码:全码
概念
简单属性
复合属性
按是否可以拆分
派生属性
按是否可以计算得出
多值属性
一个人有多个手机号
属性
关系模式
数据库设计阶段
并
交
差
D C
自然连接
关系代数的运算结果
笛卡尔积和自然连接等价判断
原则一:运算对象尽可能先压缩
原则二:理论上自然连接的性能优于笛卡尔积
查询性能
B
关系代数⭐⭐
属性集合和函数依赖
公理体系
概念示意图
1)入度为0且可遍历所有节点
2)若1不符合则加入中间节点(既有入度也有出度)再看能否变量所有节点
判断方法
候选键的判断(主属性和非主属性)
第一范式
第二范式 如果候选键是单个属性在1NF的前提至少能达到2NF
第三范式 如果没有非主属性在1NF的前提至少能达到3NF
BC范式
规范化程度
概念示例图
只要有一对交集和差集满足给出函数依赖则无损
公式法判断是否无损
模式分解
规范化理论⭐⭐
主键唯一且非空
实体完整性约束
外键是其他关系的主键或者为空
参照物完整性
用CHECK写
用户自定义完整性约束
在某个数据对象上添加监听出现变化联动修改其他数据对象
触发器
完整性
并发控制
冷备
热备
优缺点
备份
数据故障
故障恢复
数据控制
数据流图与ER图转化
实体与联系 规范化设计过程
性能提升考反规范化技术手段
反规范化的优缺点及缺点带来的数据不一致问题的解决方法
规范化与反规范化
索引的优势
视图的概念、特点、优点物化视图
索引与视图
分区分表区别
分区优点、方式
分布透明性(分片、位置、复制、逻辑)
和关系型数据库的对比
主从
读写分离
NoSQL
内存数据库
案例专题⭐⭐⭐
数据库系统
保护的范围与对象⭐⭐⭐
保护期限⭐⭐
知识产权人确定⭐⭐⭐
侵权判断⭐⭐⭐⭐
标准的分类
标准代号的识别
知识产权与标准化
机密性(C)
完整性(I)
可用性(A)
可控性
可审查性
5个基本要素
物理安全性
软件安全漏洞
不兼容使用安全漏洞
选择合适的安全哲理
网络安全漏洞
非授权访问
信息泄露或者丢失
破坏数据完整性
拒绝服务攻击
利用网络传播病毒
访问控制
认证
审计
保密
安全措施目标
基础知识⭐⭐
保证机密性
目的
加密强度不高,但效率高,易破解
密钥分发困难
对称加密技术
密钥分发容易
加密强度高,但效率低,极难破解
非对称加密技术
信息加解密技术⭐⭐⭐
加密算法介绍
证书的版本信息
证书的序列号
证书所使用的签名算法
证书的发行机构名称
证书的有效期
证书所有人的公开密钥
证书发行者对证书的签名
数字证书
PKI公钥体系
加密通信流程
密钥管理技术⭐⭐
防止非法用户进入系统
阻止合法用户对系统资源的非法使用,即禁止合法用户的越权访问
目标
主体S
客体O
控制策略KS
三要素
访问控制列表
按列分隔
能力表
按行分隔
访问控制矩阵ACM
ACM
确保信息的完整性,防篡改
作用
信息摘要
签名过程
数字签名
访问控制及数字签名技术⭐⭐⭐
用户自主保护级
系统审计保护级
安全标记保护级
结构化保护级
访问验证保护级
用系安结访
信息安全保证体系
网络监听
非法登录
业务流分析
被动型攻击
破环保密性
破坏可用、完整、真实性
主动型攻击
人为破坏
灾害性
系统故障
人员无意识行为
安全架构⭐⭐
星属性安全规则
上写
简单安全规则
下读
强星属性安全规则
同级读写
自主安全规则
访问控制矩阵
BLP
CHIANESE WALL
MAC强制
DAC自主
RBAC角色
信息流
机密性
星完整性规则
下写
简单完整性规则
上读
调用属性规则
高调
Biba
一个主体一旦访问过一个客体,则该主体只能访问位于同一公司数据集的客体或在不同利益组的客体。
在一个利益冲突组中,一个主体最多只能访问一个公司数据集。
Clark-Wilson
安全模型⭐⭐⭐
六个环节
人员
策略
三大要素
WPDRRC模型
用户名和密码
已知的
身份证
拥有的
人脸
不可改变的特性
支付宝身份验证
第三方
IP地址鉴别
环境
鉴别方式
交换鉴别信息
申请鉴别信息
验证鉴别信息
鉴别信息类型
鉴别技术
认证框架
禁止访问
加密
阻止访问
用以探测对数据或数据项序列的非授权修改的机制。
区块链技术⭐⭐
案例专题
信息安全技术基础
批处理操作系统: 单道批:一次一个作业入内存,作业由程序、数据、作业说明书组成。 多道批:一次多个作业入内存,特点:多道,宏观上并行微观上串行。
分时操作系统:采用时间片轮转的方式为多个用户提供服务,每个用户感觉独占系统。特点:多路性、独立性、交互性和及时性。
实时操作系统:实时控制系统和实时信息系统。交互能力要求不高,可靠性要求高(规定时间内响应并处理)。
网络操作系统:方便有效共享网络资源,提供服务软件和有关协议的集合。主要的网络操作系统有:Unix、Linux和Windows Server系统。
分布式操作系统:任意两台计算机可以通过通信交换信息。是网络操作系统的更高级形式,具有透明性、可靠性和高性能等特性。
微机操作系统: Windows:Microsoft开发的图形用户界面、多任务、多线程操作系统。 Linux:免费使用和自由传播的类Unix操作系统,多用户、多任务、多线程和多CPU的操作系统。
嵌入式操作系统:运行在智能芯片环境中。特点:微型化、可定制(针对硬件变化配置)、实时性、可靠性、易移植性(HAL和BSP支持)。
线程与线程共享
共享
控制块(PCB)
程序
数据
停止
就绪
运行
三态图
三态
前驱图
进程资源图
图
P操作
V操作
试题
信号量
同步 互斥
死锁与银行家算法
进程
逻辑地址
物理地址
利用率高、碎片小(只在最后一个页中有)、分配及管理简单。
优点
缺点
逻辑地址=页号+页内地址
物理地址=页帧号(块号)+页内地址
习题(选B)
地址转换
最优算法OPT
先进先出算法:FIFO
最近最少使用:LRU
页面置换算法
页式存储
1、通常段是大于页的
2、段的逻辑地址组成:段号、段内偏移量
3、如果段内偏移量大于段长则逻辑地址转物理地址溢出
习题(D、C)
段式存储
特点: 先分段在分页,页大小相同段大小不同
段页存储
一级间接索引存放盘块数=索引块大小 ÷ 地址项大小(注意单位换算)
二级间接索引存放盘块数=一级索引盘块数的平方
考点:范围计算 设大范围边界为X 。 X - 小编号 + 1 = 一级/二级/三级盘块数
文件结构⭐⭐
1、第n号磁盘放在几号字的几号bit位
注意单位换算
2、求位示图大小
特点:0表示空闲(收回) 1表示占用(放置)
位示图
快表
存储管理
操作系统⭐⭐⭐⭐
软件
阿姆达尔定律
设计和优化
评估方法
性能指标⭐
网络延迟=处理延迟+排队延迟+发送延迟+传播延迟。如果不考虑网络环境,服务器的延迟的主要因素是队列延迟和磁盘I/0延迟。
性能指标
非性能指标
网络指标
局域网拓扑结构
网络分类
5G技术
计算机网络技术概述⭐
OSI七层
交换机
网络层与相关设备
模型⭐
重要端口
www服务:HTTP:80 ----HTTP+SSL=HTTPS :443
邮件服务:SMTP:25 POP3:110 IMAP IMIE
文件传输:FTP:20数据21控制信息
远程服务:不安全 Telnet :23 RDP:3389 (Windows) 安全:SSH:22 (Linux)
递归查询
迭代查询
区分迭代查询和递归查询
DNS文件存放位置
``DNS:53``服务:
固定分配【由管理员分配】
动态分配【有效期限的IP地址】8天 常用
自动分配【无限期长的IP地址】
分配方式
分配过程
DHCP:67 经典C/S架构
应用层协议
可靠性高,性能差
TCP
可靠性差,性能较好
UDP
传输层协议
IP
ICMP
ARP\\RARP
IGMP
网络层协议
TCP/IP协议簇⭐⭐⭐
主机号
网络号
子网掩码
子网和子网掩码
IP地址
IPv6
IP地址和子网
网络模型与TCP/IP协议簇
接入层
汇聚层
核心层
网络规划与设计
实现工作区终端设备到水平子系统的信息息插座之间的互联。
工作区子系统
实现信息插座和管理子系统之间、工作区子系统和干线子系统之间的连接。
水平子系统
实现中央主配线架与各种不同设备之间的连接亲。
设备间子系统
实现各楼层设备间子系统之间的互连
垂直干线子系统
管理子系统
各个建筑物通信系统之间的互联。
建筑群子系统
综合布线系统
计算机网络
逻辑视图也称为设计视图,它表示了设计模型中在架构方面具有重要意义的部即类、子系统、包和用例实现的子集。
逻辑视图
进程视图是可执行线程和进程作为活动类的建模,它是逻辑视图的一次执行实例,描述了并发与同步结构。
进程视图
实现视图对组成基于系统的物理代码的文件和构件进行建模。
实现视图
部署视图把构件部署到一组物理节点上,表示软件到硬件的映射和分布结构。
部署视图
用例视图是最基本的需求分析模型
用例视图
视图(罗锦拾布)
结构事物
行为事物
分组事物
注释事物
依赖是两个事物之间的语义关系,其中一个事物发生变化会影响另一个事务的语义
依赖
整体与部分生命周期不同
聚合关系
整体与部分生命周期相同
组合关系
关联
继承
泛化
类实现接口
实现
类关系
包含(include)
泛化(generalize)
扩展(extend)
用例关系
关系
1、识别参与者(用户、组织、外部系统、时间)
2、合并需求获得用例
用例名称
用例ID
角色
用例说明
前置条件
基本、其他、异常事件流
后置条件
描述元素
3、细化用例描述
4、调整用例模型(可选)优化
建立流程
表现细节交互,按时间顺序
题目中,要有对业务流程非常详细的呈现
顺序图(序列图)
强调收发消息的对象或参与者的组织结构
通信图(协作图)
定时图(计时图)
交互图
注意:如S1挂起状态改为订单挂起
挖空考法
描述一个状态机,由状态,转移,事件和活动组成
用来描述复杂对象
状态图
与结构化的流程图及为相似
是一种特殊的状态图
多了一条粗线表示并发
活动图
活动图是一种特殊的状态图,与流程图极为类似
类名、方法名、属性名
多重度
对象图
构件图
包图
构件图和包图
强调软硬件之间的部署关系
部署图
单例模式
工厂模式
抽象工厂模式
原型模式
构建器模式
创建型5个(口诀:单抽元件厂)
外观模式
桥接模式
组合模式
享元模式
代理模式
装饰器模式
适配器模式
结构型7个(口诀:外侨组元带适配)
行为型11个(口诀:多次命令,责备中,车模见状。方解释)
设计模式
面向对象
销售额=固定成本+可变成本+税费+利润
正常情况下
销售额=固定成本+可变成本+税费
盈亏平衡时
注意计算时要统一单位
盈亏平衡分析
例题
WBS分解基本要求
前置-范围管理
总时差为0的路径为关键路径
最早完成工期时间点的为标准工期,以标准工期作为目标来完成项目
单代号网络图、PDM
关键路径法
示例图
甘特图直观、简单、容易制作,便于理解,能很清晰地标识出每一项任务的起始时间与结束时间,一般适用比较简单的小型项目,可用于WBS的任何层次、进度控制、资源优化、编制资源和费用计划。
不能系统地表达一个项目所包含的各项工作之间的复杂关系,难以进行定量的计算和分析,以及计划的优化等。
甘特图
制定进度计划
进度管理主要流程
进度管理
一般是每隔一定时间(例如,每个阶段末)进行的,主要通过系统的质量审计和过程分析来保证项目的质量。独特工具包括:质量审计和过程分析。
【事前预防】工作
尽量在刚刚引入缺陷时即将其捕获,而不是让缺陷扩散到下一个阶段。
作用于【过程】而【不是最终产品】
贯穿于【所有的活动之中】,而不是只集中于一点
主要目标
软件能力成熟度模型集成(CMMI)
数据战略领头羊,治理架构两翼张。安全质量双保障,标准周期记心上。
数据管理能力成熟度评估模型(DCMM)
2个工具(记关键字)
质量保证(关注过程)
质量控制是实时监控项目的具体结果,以判断它们是否符合相关质量标准,制定有效方案,以消除产生质量问题的原因。
质量控制(关注结果)
软件质量管理
一个产品在其生命周期各个阶段所产生的各种形式(机器可读或人工可读)和各种版本的文档、计算机程序、部件及数据的集合。
基线配置项(可交付的成果)需求文档、设计文档、源代码、可执行代码测试用例、运行软件所需数据等
非基线配置项:各类计划 (如项目管理计划,进度管理计划)、各类报告
配置项
系统功能描述、安装文档、使用手册、参考手册、操作员指南
系统分析、系统设计、系统实现、系统测试的文档
文档管理
0.X
草稿版
第一个正式版为1.0,之后可以是2.0 或者1.1
正式版
1.XY,比正常版本号多一位
修改状态
版本管理
软件开发工具 : 需求分析工具、设计工具、编码与排错工具、测试工具。
软件维护工具 : 版本控制工具(VSS、CVS、SCCS、SVN)、文档分析工具、开发信息库工具、逆向工程工具、再工程工具。
软件管理和软件支持工具 : 项目管理工具、配置管理工具、软件评价工具、软件开发工具的评价和选择。
按照软件过程活动分
配置管理工具 的常见功能包括版本控制、变更管理、配置状态管理,访问控制和安全控制等。配置管理工具是包含了版本控制工具的。
软件配置管理
成本估算
成本预算
成本控制
软件成本管理
项目管理
软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力
系统能够正常运行时间的比例
复杂性:软件复杂性比硬件高,大部分失效来自于软件失效。
物理退化:硬件失效主要是物理退化所致,软件不存在物理退化。
唯一性:软件是唯一的,每个coPY版本都一样,而两个硬件不可能完全一样。
版本更新周期:硬件较慢,软件较快。
软件可靠性和硬件可靠性区别
基本概念
平均失效前时间(MTTF)=1/λ λ为失效率
平均恢复前时间(MTTR)=1/µ µ为修复率
平均故障间隔时间(MTBF) =MTTR+MTTF
可靠性指标
MTBF≈MTTF
串联系统
并联系统
混合系统
可靠性计算 (R代表可靠度)
种子法模型。利用捕获一再捕获抽样技术估计程序中的错误数,在程序中预先有意“播种”一些设定的错误“种子”,然后根据测试出的原始错误数和发现的诱导错误的比例,来估计程序中残留的错误数。
可靠性模型
可靠性分析
软件开发方法和开发环境
运行环境
系统外
软件规模
软件的内部结构
软件可靠性投入
系统内
影响可靠性主要因素
降低复杂度
出错后报警,人工处理,成本较低。
检错技术
避错技术
N版本程序设计
恢复块方法设计(动态冗余)
try.......catch
防卫式程序设计
结构冗余(硬件冗余、软件冗余)
信息冗余(校验码)
时间冗余(重复多次进行相同计算)
冗余
双机热备模式
双机互备模式
双机双工模式
双机容错(集群的前身)
容错技术
差异
设计技术
可靠性设计
软件可靠性分析与设计
0 条评论
下一页