【软考】软件调试方法

目录

          • [1. 说明](#1. 说明)
          • [2. 试探法](#2. 试探法)
          • [3. 归纳法](#3. 归纳法)
          • [4. 演绎法](#4. 演绎法)
          • [5. 回溯法](#5. 回溯法)
          • [6. 对分查找法](#6. 对分查找法)
          • 7.例题
            • [7.1 例题1](#7.1 例题1)
1. 说明
  • 1.软件调试是软件开发过程中不可或缺的一环,旨在发现并修复软件中的错误,确保软件能够按预期运行。
2. 试探法
  • 1.定义:一种比较原始的调试策略,通过分析软件系统运行过程中大量数据信息、中间结果的变化情况来查找错误发生的原因和位置。
  • 2.特点:简单、易行,但调试效率低,主要适用于结构比较简单的小型系统。
3. 归纳法
  • 1.定义:一种由特殊到一般的逻辑推理方法。根据软件测试所取得的个别错误数据或错误线索,通过分析这些线索之间的关系来发现错误。
  • 2.特点:依赖于工作经验和案例积累,能够较为系统地推断错误位置和原因。
4. 演绎法
  • 1.定义:一种由一般到特殊的逻辑推理方法。根据已有的测试数据,设想所有可能的出错原因,然后通过测试逐一排除不正确、不可能的出错原因,最后确定剩余错误的合理性及位置。
  • 2.特点:逻辑严谨,能够全面考虑可能的错误情况,但相对耗时较长。
5. 回溯法
  • 1.定义:从软件系统中发现错误的位置开始,沿着程序的控制流程往回追踪程序代码,直至找到错误发生的位置或范围。
  • 2.特点:对于规模较小的软件系统而言较为有效,但不适宜较大型的软件。
6. 对分查找法
  • 1.定义:在程序中插入某些变量关键点的正确值,检查程序的运行结果。根据结果判断错误发生的位置是在插入点的前半部分还是后半部分,然后不断对分缩小错误范围进行错误定位。
  • 2.特点:能够快速定位错误范围,提高调试效率。
7.例题
7.1 例题1
  • 1.题目

    1.软件调试的任务就是根据测试时所发现的错误,找出原因和具体的位置,进行改正。
    其常用的方法中,(C)是指从测试所暴露的问题出发,收集所有正确或不正确的数据,
    分析它们之间的关系,提出假想的错误原因,用这些数据来证明或反驳,从而查出错误所在。
    A.试探法
    B.回溯法
    C.归纳法
    D.演绎法

  • 2.解析

    1.回溯法:调试人员从发现错误症状的位置开始,人工沿着程序的控制流程往回跟踪代码,直到
    找出错误根源为止这种方法适合于小型程序,对于大规模程序,由于其需要回溯的路径太多而
    变得不可操作。
    2.对分查找法:这种方法主要用来缩小错误的范围,如果已经知道程序中的变量在若干位置的正
    确取值,可以在这些位置给这些变量以正确值,观察程序运行的输出结果,如果没有发现问题,
    则说明从赋予变量一个正确值开始到输出结果之间的程序没有错误,问题可能在除此以外的程
    序中。否则错误就在所观察的这部分程序中,对含有错误的程序段再使用这种方法,直到把故
    障范围缩小到比较容易诊断为止。
    3.归纳法:归纳法就是从测试所暴露的问题出发,收集所有正确或不正确的数据,分析它们之间
    的关系,提出假想的错误原因,用这些数据来证明或反驳,从而查出错误所在。本题题干描述
    的是归纳法。
    4.演绎法:演绎法根据测试结果,列出所有可能的错误原因:分析已有数据,排除不可能和彼此
    矛盾的原因:对其余原因,选择可能性最大的,利用已有的数据完善该假设,使假设更具体;
    用假设来解释所有的原始测试结果,如果能解释这一切,则假设得以证实,也就是找出错误,
    否则,要么是假设不完备或不成立,要么有多个错误同时存在,需要重新分析,提出新的假
    设,直到发现错误为止。

相关推荐
尸僵打怪兽18 小时前
软考(中级-软件设计师)(0919)
java·c语言·数据库·计算机网络·软考·多媒体·软件设计师
X_StarX4 天前
软考中级攻略站】-软件设计师(11)- 法律法规与标准化知识
笔记·软考·科普·大学生·软件设计师
逸尘谈PM4 天前
零基础考过软考信息系统项目管理师经验分享
经验分享·软考高级·软考·信息系统项目管理师·软考备考攻略
W Y5 天前
【架构设计模式-2】创建型、结构型、行为型等设计模式
设计模式·架构·系统架构·架构师·软考
王佑辉6 天前
【软考】设计模式之抽象工厂模式
设计模式·软考
Alueaxten(上学版)7 天前
【软考】程序设计语言基础
经验分享·笔记·学习·软件工程·软考
X_StarX7 天前
【软考中级攻略站】-软件设计师(5)- 软件工程
开发语言·笔记·学习·软件工程·软考·大学生·软件设计师
xcg3401238 天前
【系统分析师】-安全体系
安全·软考·系统分析
王佑辉9 天前
【软考】设计模式之责任链模式
设计模式·软考
沫寒_9 天前
如何从零开始备考高项(信息系统项目管理师),并且可以一次性通过考试?
算法·软考