【系统分析师之路】第八章 系统测试与维护(章节重点)

第八章 系统测试与维护章节重点

  • 【系统分析师之路】第八章 系统测试与维护(章节重点)
    • 章节重点
    • 一.软件测试的概念和方法(★★)
      • 1)软件测试的概念
      • 2)软件测试方法的分类
    • 二. 系统测试(★★★★)
      • 1)容量测试
      • 2)负载测试
      • 3)压力测试
      • 4)强度测试
      • 5)冒烟测试
    • 三. 自动化测试
      • 1)能够做到的
      • 2)不能做到的
    • 四. 软件调试的方法
      • 1)蛮力法
      • 2)回溯法
      • 3)原因排除法
      • 4)与测试的区别
    • 五.遗留系统演化策略
      • 1)集成策略
      • 2)改造策略
      • 3)淘汰策略
      • 4)继承策略
      • 5)新旧系统转换策略
      • 6)数据迁移的准备工作
    • 六.软件维护
      • 1)软件维护的概念
      • 2)正确性维护
      • 3)适应性维护
      • 4)预防性维护
      • 5)完善性维护
    • 七. 系统运行与评价
      • 1)系统审计
      • 2)软件评审
      • 3)验证与确认
      • 4)系统评价
      • 6)软件过程改进CMMI
        • 阶段式组织能力成熟度
        • 持续式软件过程能力
    • 八. 软件质量保证

章节重点

软件测试的概念和方法(★★)
系统测试(★★★★)
软件开发环境与工具(★)
可维护性因素(★★★)
系统运行与评价(★★★)
 系统转换计划
 软件维护
 系统审计
 系统评价

一.软件测试的概念和方法(★★)

1)软件测试的概念

尽早不断地进行测试
程序员应避免测试自己设置的程序。
既要选择有效合理的数据,也要选择无效不合理的数据
修改后应进行回归测试
尚未发现的错误数量与已发现的错误数量成正比

2)软件测试方法的分类

动态测试:黑盒测试,白盒测试,灰盒测试
静态测试:桌前检查,代码审查,代码走查
其中黑盒测试法又分为四种:等价类划分,边界值分析,错误推测,因果图。一般先划分等价类再在此基础上进行边界值分析。
白盒测试法分为基本路径测试,循环覆盖测试,逻辑覆盖测试三种。
逻辑覆盖包含了语句覆盖,判定覆盖,条件覆盖,条件判定覆盖,条件组合覆盖,点覆盖,边覆盖,路径覆盖。
判定覆盖:每个菱形的真假条件都得要覆盖一次。 达成共识的测试划分方法:单元测试,集成测试,确认测试,系统测试四种。确认测试和系统测试的先后顺序是不一定的。
集成测试包括:一次性组装和增量式组装测试。增量式组装测试成本高,但是测试的效果与质量会更好。增量式组装测试分为自顶向下,自底向上和混合式三种方式。
监理方的测试也归属于确认测试,因为监理方可代表甲方进行测试。比如甲方专业性不高时,可委托监理方作确认测试。
而确认测试又包括了阿尔法测试,beta测试,内部确认测试和验收测试。

二. 系统测试(★★★★)

系统测试:包括功能方面,性能方面,可用性方面,安全方面的测试。它是一个大杂烩。
系统测试包括了恢复测试,安全性测试,压力测试,性能测试,可靠性测试,可用性测试,可维护性测试,安装测试。

1)容量测试

往往是在对资源限制的条件下看同时能够容纳的并发的测试。最大并发能够达到什么样一个程度。

2)负载测试

各种负载情况下表现出来的性能指标。

3)压力测试

直到你被压垮的临界值。找出什么样的压力下是无法承受的。

4)强度测试

为了实现1000人并发,不断调低临界点,让系统不能够正常运行。强度测试就是去寻找这种临界点。

5)冒烟测试

大致初步的进行测试。

三. 自动化测试

1)能够做到的

提高测试执行的速度
提高运行效率
保证测试结果的准确性
连续运行测试脚本
模拟现实环境下受约束的情况

2)不能做到的

所有测试活动都可以自动完成
减少人力成本
可以免费获得
降低测试工作量。

四. 软件调试的方法

1)蛮力法

主要思想是通过计算机找错;低效耗时;

2)回溯法

从出错处人工沿控制流程往回追踪,直至发现出错的根源。复杂程序由于回溯路径多,难以实施。

3)原因排除法

主要思想是演绎和归纳,用二分法实现。

4)与测试的区别

1.目的
测试是找出存在的错误,而调试是定位错误并修改程序以修正错误
2.实施时点
一般在调式之前进行测试 调试是测试之后的活动
3.开始条件
测试从一个已知的条件开始,使用预先定义的过程,有预知的结果
调试从一个未知条件开始,结束的过程不可预计
4.过程
可以事先设计,进度可以事先确定
不能描述过程或持续时间。

五.遗留系统演化策略

1)集成策略

关键字:高技术水平,低业务价值
可能只能完成某个部门或子公司的业务管理。这种系统在各自的领域里工作良好,但对于整个企业来说,存在多个这样的系统,不同的系统基于不同的平台,不同的数据模型,形成一个个信息孤岛,对这种遗留系统的演化策略为集成。

2)改造策略

关键字:高技术水平,高业务价值
这种系统可能建成的时间还很短,对这种遗留系统的演化策略为改造。改造包括系统功能的增强和数据模型的改造两个方面。系统功能的增强是指在原有系统的基础上增加新的应用要求,对遗留系统本身不做改变,数据模型的改造是指将遗留系统旧的数据模型向新的数据模型的转化。

3)淘汰策略

关键字:低技术水平,低业务价值
遗留系统的技术含量较低,且具有较低的业务价值。对遗留系统的完全淘汰是企业资源的根本浪费,系统分析师应该善于变废为宝,通过对遗留系统功能的理解和借鉴,可以帮助新系统的设计,降低新系统开发的风险。

4)继承策略

关键字:低技术水平,高业务价值
技术含量低,且已经满足企业运作的功能或性能要求,但具有较高的商业价值,目前企业的业务尚紧密依赖该系统。对这种遗留系统的演化策略为继承,在开发新系统时,需要完全兼容遗留系统的功能模型和数据模型。为了保证业务的连续性,新老系统必须并行运行一段时间,再逐渐切换到新系统上运行。

5)新旧系统转换策略

新旧系统的转换策略一共有三种:直接转换策略,并行转换策略,分段转换策略。
数据转换与迁移包括了数据抽取,数据转换和数据装载等三个步骤。
1.系统切换前通过工具迁移
2.系统切换前采用手工录入
3.系统切换后通过新系统生成

6)数据迁移的准备工作

(1) 待迁移数据源的详细说明,包括数据的存放方式、数据量和数据的时间跨度。
(2) 建立新旧系统数据库的数据字典,对现有系统的历史数据进行质量分析,以及新旧系统数据结构的差异分析。
(3) 新旧系统代码数据的差异分析。
(4) 建立新旧系统数据库表的映射关系,对无法映射字段的处理方法。
(5) 开发或购买、部署ETL工具。
(6) 编写数据转换的测试计划和校验程序。
(7) 制定数据转换的应急措施

六.软件维护

1)软件维护的概念

软件维护是生命周期的一个完整部分,可以将软件维护定义为需要提供软件支持的全部活动,这些活动包括在交付前完成的活动,以及交付后完成的活动。交付前完成的活动包括交付后运行的计划和维护计划;交付后的活动包括软件修改,培训,帮助资料。
可维护性可以细分为:易分析性,易改变性,易测试性
软件的维护并不只是修正错误,为了满足用户提出的增加新功能,修改现有功能以及一般性的改进要求和建议,需要进行完善性维护,他是软件维护的重要组成部分。 软件测试不可能揭露旧系统中所有潜在的错误,所以这些程序在使用过程中还可能发生错误,诊断和更正这些错误的过程称为改正性维护。 为了改进软件未来的可维护性或可靠性,或者给未来的改进提供更好的基础而对软件进行修改,这类活动称为预防性维护

2)正确性维护

占比25%,改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
在2000年之前对应千年虫问题就属于预防性维护,而在2000年之后发生了千年虫病毒,就是改正性维护了。

3)适应性维护

占比20%,指使应用软件适应信息技术变化和管理需求变化而进行的修改。企业的外部市场环境和管理需求的不断变化也使得各级管理人员不断提出新的信息需求
被动调整是适应性维护,为了更好的适应而进行的主动调整是预防性维护,它是锦上添花的维护。
适应性维护是必须要做的维护,因为它已经出错了。

4)预防性维护

占比最少只有5%。扩充功能和改善性能而进行的修改。对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。
重构代码,改善代码通用性是使系统的适应性更强,它属于预防性维护。

5)完善性维护

占比最大有50%左右。
关键字:功能增加,性能增强
为了改进应用软件的可靠性和可维护性,为了适应未来的硬件环境变化,应主动增加预防性的新的功能,以使系统适应各类变化而不被淘汰。如将专用报表功能改成通用报表功能,以适应将来报表格式的变化

七. 系统运行与评价

1)系统审计

在项目执行过程之中可以进行审计,事后也可以进行审计,审计一般由第三方进行。

2)软件评审

软件评审包括了技术评审和管理评审
不应该以测试代替评审
评审人员应关注产品而不应评论开发人员
评审人员应关注于实质性的问题
评审会议不应变为问题解决方案讨论会
评审应该被安排进入项目计划
评审参与者应了解整个评审的过程
评审人员事先应对评审材料充分了解
应重视评审的组织工作

3)验证与确认

1.验证
在软件开发周期中的一个给定阶段的产品是否已经达到在上一个阶段确立的需求的过程。
2.确认
在软件开发过程结束时对软件进行评价以确定他是否和软件需求相一致的过程。
3.测试
通过执行程序来有意识的发现程序中的设计错误和编码错误的过程。测试是验证和确认的手段之一。

4)系统评价

系统性能评价,系统效益评价,系统建设评价
确定评价对象,下达评价通知书,组织成立评价工作组,专家咨询组
拟定评价工作方案,收集基础资料 评价工作组实施评价,征求专家意见和反馈给企业,撰写评价报告
评价工作组将评价报告报送专家咨询组复核,向委托人送达评价报告,选择公布评价结果,建立评价项目档案。

6)软件过程改进CMMI

它由持续式软件过程能力和阶段式组织能力成熟度两部分组成。

阶段式组织能力成熟度

1.已管理级
需求管理,项目计划,配置管理,项目监督与控制,供应商合同管理,度量和分析,过程和产品质量保证
2.已定义级
需求开发,技术解决方案,产品集成,验证,确认,组织级过程焦点,组织级过程定义,组织级培训,集成项目管理,风险管理,集成化团队,决策分析和解决方案,组织级集成环境
3.定量管理级
组织级过程性能,定量项目管理
4.优化级
组织级改革与实施,因果分析和解决方案

持续式软件过程能力

1.过程管理
组织级过程焦点,组织级过程定义,组织级培训,组织级过程性能,组织级改革与实施
2.项目管理
项目计划,项目监督与控制,供应商合同管理,集成项目管理,风险管理,集成化团队,定量项目管理
3.工程
需求管理,需求开发,技术解决方案,产品集成,验证,确认
4.支持
配置管理,度量与分析,过程和产品质量保证,决策分析和解决方案,组织级集成环境,因果分析和解决方案

八. 软件质量保证

软件质量保证 (Software Quality Insurance,SQA)是在软件过程中的每一步都进行的“保护性活动”。 SQA主要由基于非执行的测试(也称为评审)、基于执行的测试(即通常所说的测试)和程序正确性证明。软件评审是最为重要的SQA活动之一。它的作用是,在发现及改正错误的成本相对较小时就及时发现并排除错误。审查和走查是进行正式技术评审的两类具体方法。
审查过程不仅步数比走审多,而且每个步骤都是正规的。由于在开发大型软件过程中所犯的错误绝大数是规格说明错误或设计镇误,而正式的技术评审发现这两类错误的有效性高达75%,因此是非常有效的软件质量保证方法。

【系统分析师之路】第八章 系统测试与维护(章节重点)相关推荐

  1. 【系统分析师之路】应用数学与经济管理章节错题集锦

    [系统分析师之路]应用数学与经济管理章节错题集锦 [系分章节错题集第01题:黄色] 01.某部门邀请3位专家对12个项目进行评选,每个专家选了5个项目.评选的结果中,有a个项目被3人都选中,有b个项目 ...

  2. 【系统分析师之路】2008年上系统分析师上午综合知识真题

    [系统分析师之路]2008年上系统分析师上午综合知识真题 章节No 章节 总分数 获得分 考点 心得 3 企业信息化战略 7 4 企业应用集成,信息系统概述,企业应用系统开发,数据仓库数据挖掘,企业会 ...

  3. 【系统分析师之路】 第八章 复盘软件测试与维护(测试与过程改进)

    [系统分析师之路] 第八章 复盘软件测试与维护(测试与过程改进) 复盘软件测试与维护-测试与过程改进 [系统分析师之路] 第八章 复盘软件测试与维护(测试与过程改进) 前言部分 历年真题考点分析 1) ...

  4. 【系统分析师之路】第十八章 系统安全分析与设计章节习题集

    [系统分析师之路]第十八章 系统安全分析与设计章节习题集 ■习题汇总 [系分章节习题第01题:绿色] 01.以下关于利用三重DES进行加密的说法中,()是正确的. A.三重DES的密钥长度是56位. ...

  5. 【系统分析师之路】2014年系统分析师上午综合知识真题

    [系统分析师之路]2014年系统分析师上午综合知识真题 章节 总分数 获得分 考点 心得 第三章 企业信息化战略 5 4 考点有信息系统战略规划.企业信息化规划.企业应用系统集成 系统集成的掌握灵活应 ...

  6. 【系统分析师之路】2017年系统分析师上午综合知识历年真题

    [系统分析师之路]2017年系统分析师上午综合知识历年真题 [系统分析师之路]2017年系统分析师上午综合知识历年真题 [系统分析师之路]2017年系统分析师上午综合知识历年真题 第三章 企业信息化战 ...

  7. 【系统分析师之路】2015年系统分析师上午综合知识真题

    [系统分析师之路]2015年系统分析师上午综合知识历年真题 [系统分析师之路]2015年系统分析师上午综合知识历年真题 [系统分析师之路]2015年系统分析师上午综合知识历年真题 章节分类汇总 第三章 ...

  8. 【系统分析师之路】2019年上系统分析师下午论文真题

    [系统分析师之路]2019年上系统分析师下午论文真题 2019年上系统分析师下午论文真题 [系统分析师之路]2019年上系统分析师下午论文真题 试题一:论系统需求分析方法 试题二:论系统自动化测试及其 ...

  9. 【系统分析师之路】2012年系统分析师上午综合知识真题

    [系统分析师之路]2012年系统分析师上午综合知识真题 章节 总分数 获得分 考点 心得 第三章 企业信息化战略 10 6 企业门户,决策支持系统,电子商务标准,信息属性,信息工程法,企业建模IO 结 ...

最新文章

  1. SQL Server 2012 安装杂谈
  2. java程序如何优化--技巧总结
  3. 大脑比机器智能_机器大脑的第一步
  4. Tomcat 的 Server 文件配置详解
  5. android 编辑自定义可编辑表格,smart 框架 列表 可编辑表格
  6. 虚拟云服务器有哪些,虚拟云主机和服务器有什么区别
  7. 【操作系统】死锁-思维导图
  8. DevOps冲击下的软件测试
  9. ubuntu命令行打开vscode-insider_在 Linux 中如何从命令行查找 VirtualBox 版本
  10. Unity3D中脚本的执行顺序和编译顺序
  11. CCF NOI 2022获奖名单
  12. 常用U盘量产工具下载
  13. 关于配色常见的几种搭配方式
  14. 如何选择固定资产标签?
  15. linux下ftp命令输出日志,ftp中/var/log/xferlog日志解析及ftp常用命令常用
  16. 用latex排版中的对象旋转问题
  17. 11 wifi6速率_实测:华硕、华为、小米、水星,千元以内的wifi6路由器哪家强?...
  18. 仪表和中控车机GUI界面开发工具介绍
  19. 网络安全:网络攻击原理与方法.
  20. lombok 异常:Lombok needs a default constructor in the base class less... (Ctrl+F1) Inspe

热门文章

  1. 唯品会 java_唯品会 java 面试
  2. python 获取qq群成员信息_Python-获取QQ群成员信息并存入excel及redis并发送邮件
  3. 基于C++的Qt计算器
  4. 偏向锁、轻量级锁、自旋锁、适应性自旋锁、锁消除、锁粗化
  5. 单机版五子棋java功能_JAVA单机版五子棋怎么写
  6. TryHackMe-VulnNet_dotpy
  7. 《可爱的Python》读书笔记(九)
  8. 如何重构一个过万Star开源项目—BetterScroll
  9. 本周总结 前端第二次作业 模仿制作百度界面
  10. 新款任天堂(Switch)游戏机底座带网口方案LDR6023B+AX88179