课程地址
https://www.bilibili.com/video/BV1Eb411W7kc?p=139
思维导图
系统开发基础
- 软件开发模型
- 信息系统开发方法
- 需求开发
- 结构化设计
- 软件测试
- 系统运行与维护
- 软件过程改进-CMMI
- 项目管理
软件开发模型
瀑布模型(SDLC) 结构化的典型代表
适用于需求明确的项目或二次开发
缺点:开发过程中需求不明确容易推翻已编码设计的过程,导致软件项目失败
原型模型
针对需求不明确的情况,运用于需求分析阶段。构建一个简易的系统(Demo)给用户演示,利于获取用户的需求
演化模型
从原型基础上经过多轮演化为最终产品
增量模型
原型模型思想 + 瀑布模型思想
优先开发重要的部分(核心模块)给用户使用,再逐步添加其他功能
螺旋模型
由多个模型组成,引入了风险分析
(最重要特征)
以风险为驱动,有利于防范风险
V模型
V模型强调测试
贯穿开发过程始终
需求分析阶段需要写验收测试与系统测试的测试计划,发现需求设计过程中产生的问题
概要设计阶段(模块划分)需要写模块之间的集成测试的测试计划,发现模块划分的问题
详细设计阶段需要写模块的单元测试的测试计划
喷泉模型 面型对象模型
构件组装模型(CBSD)
极大提高软件开发的复用性
RAD模型 快速地构建应用系统
瀑布模型(SDLC)+构件组装模型(CBSD)
敏捷开发方法
局限性:只适用于小型项目(小步快跑)
信息系统开发方法
结构化法:流程固化不灵活
需求开发
结构化设计
基本原则
内聚与耦合
系统结构/模块结构
软件测试(必考,主要出现在上午)
测试的原则及类型
测试用例设计
- #### 黑盒测试
等价类划分
:把所有的数据类进行汇总,一个范围只取一个,例如:优(95)、良(88)、及格(63)、不及格(8)
边界值分析
:边界值、边界值+1、边界值-1,常与等价类划分结合
错误推测法
:经验法
因果图
:由果推因
- #### 白盒测试
语句覆盖
:测试用例走过程序中的所有语句
判定覆盖
:所有判定的真假分支都要走一遍
条件覆盖
:判定中的多个条件的分支也要都走一遍
路径覆盖
:所有可行的路径都覆盖一遍
测试阶段
单元测试
:关注模块,测试局部的功能、数据结构、相关接口
集成测试
:将各个模块联合起来一次测试,测试模块之间的衔接手否有问题。
- 一次性组装
-
增量式组装:发现问题更加全面
确认测试
:确认需求是否得到满足
系统测试
:偏重于压力、性能测试
- 压力测试:在极限值时的表现,会不会崩溃
-
负载测试:不同负载下的性能表现
-
强度测试:在系统异常时的应对情况
冒烟测试
:修改后,初步检测是否有缺陷,没有回归测试全面
McCabe复杂度(重要)
环路复杂度:V(G)(环路个数) = m(有向弧数)) – n(节点数) + 2
系统运行与维护
改正性维护
:修正bug-
适应性维护
:适配操作系统、数据环境的变化 -
完善性维护
:扩充功能,改善性能 -
预防性维护
:重构、文档健全
软件过程改进-CMMI
CMM:能力成熟度模型
衡量软件开发商改善软件质量的能力
CMMI:能力成熟度模型集成
成熟度等级(利于推广)(选择题)
- 1:混乱级 默认
-
2:已管理级 个人经验、项目级
-
3:已定义级 组织化、文档化、标准化
-
4:定量管理级 量化管理
-
5:优化级:持续优化
发表回复