计算机二级数据库复习重点2 软件工程基础

第二部分 软件工程基础 (历年比例27%)

  1. 软件工程基本概念

    ★★ 软件是包括【程序】、【数据】及【相关文档】的完整集合,软件是一种逻辑产品。软件工程三要素包括【方法、工具和过程】,其中【过程】支持软件开发的各个环节的控制和管理。

         ◆ 软件工程的核心思想:把软件产品当作是一个工程产品来处理,强调在软件开发过程中应用【工程化】原则。

         软件测试主要包括单元测试、集成测试、确认测试和系统测试。

   ◆ 从工程管理角度,软件设计一般分为两步完成,它们是【概要设计】和【详细设计】。

        ★★ 软件生命周期可分为多个阶段,一般分为【定义】阶段、【开发】阶段和【维护】阶段,编码和测试属于【开发阶段】。

        技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。

        软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。主要活动阶段是:可行性研究与计划阶段,需求分析,软件设计,软件实现,软件测试,运行和维护,

       通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。

      ◆ 需求分析阶段产生的主要文档是【软件需求规格说明书】。软件需求的规格说明书应该有完整性、无歧义性、正确性、可验证性、可修改性等特征,其中最重要的是【正确性】。

      编译软件、操作系统、汇编程序都属于系统软件,教务管理系统才是应用软件。

      软件按功能可以分为:应用软件、系统软件、支撑软件。操作系统、编译程序、汇编程序、网络软件、数据库管理系统都属于系统软件。

      软件危机主要表现在:软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。

  2、结构化分析与设计

     ★★ 需求分析的分发有:【结构化】需求分析方法,【面向对象】的分析方法。DFD是【需求分析阶段】可以使用的工具之一。

    需求分析阶段的工作可以概括为:需求获取、需求分析、编写需求规格说明书、需求评审四个方面。

     软件需求规格说明书是需求分析阶段的最后成果,是软件开发的重要文档之一。
     软件需求规格说明书有以下几个方面的作用。
    ①便于用户、开发人员进行理解和交流;
    ②反映出用户问题的结构,可以作为软件开发工作的基础和依据;
    ③作为确认测试和验收的依据。

    ◆ 结构化分析的常用工具:数据流图(DFD);数据字典;判定树;判定表。

     在需求分析阶段可以使用的工具有数据流图DFD图,数据字典DD,判定树与判定表,

 ◆ 在结构化分析使用数据流图(DFD)时候,利用【数据字典】对其中的图形元素进行确切的解释。【数据字典】是结构化分析的核心。

 ◆ 典型的数据流类型有两种,【交换性】和【事务型】。

    ◆ 常见的过程设计工具有:图形工具(程序流程图、N-S,PAD,HIPO)、表格工具(判定表)、语言工具(PDL伪码)。

     N-S图提出了用方框图来代替传统的程序流程图。PAD图是问题分析图,它是继承程序流程图和方框图之后提出的又一种主要用于描述软件详细设计的图形表示工具。E-R图是数据库中的用于表示E-R模型的图示工具。根据图中所示表示方法是进行软件详细设计时使用的程序流程图。

  ◆ 内聚性是模块内部的联系,耦合性模块之间的相互联系的紧密程度。

  ★★★ 追求目标是:模块的内聚程度要高,模块间的耦合程度要尽量弱。即高内聚低耦合

  ★★ 程序流程图中带有箭头的线段表示的是【控制流】。【平行四边形】代表输入输出,【矩形】代表处理,菱形代表【判断】(注意,数据流图中的箭头,代表【数据流】)。

  ◆ 符合结构化原则的三种基本控制结构是:【顺序结构】,【选择结构】和【循环结构】。

  3、软件测试与维护

  ★★ 软件测试的目的是尽可能多的发现程序中的错误,但是不包括改正错误。(软件调试的目的才是改正错误)

  ★★ 软件测试分为静态测试和动态测试,其中【静态测试】是指不执行程序,只对程序文本进行检查。软件的动态测试主要包括【黑盒测试】和【白盒测试】。

  ◆ 黑盒测试的方法有等价类划分法,边界值分析法,错误推测法,因果图;

         白盒测试主要方法有逻辑覆盖、基本路径测试。(考试时给出一种方法的名字,你要知道属于白盒还是黑盒)

  【白盒测试】的原则之一是保证所测模块的每一个独立路径至少要执行一次。白盒测试将程序看做是【路径的集合】。

  ◆ 软件测试一般按照四个步骤进行:单元测试,集成测试,验收测试和系统测试。集成测试应该在【单元测试】之后进行。

  ◆ 在模块测试中,需要为每个被测试的模块设计【驱动模块】和【承接模块】。其中,驱动模块的作用是将测试的数据传给被测试的模块,并显示结果。

  ◆ 【测试用例】是为某个目标而编制的一组测试输入、执行条件及预期结果。测试用例包括输入值集和【输出值集】。

  ★★ 诊断和改正程序中的错误称为【程序调试】(或软件调试),通常也称为Debug。软件调试可分为【静态调试】和【动态调试】。

  ◆ 在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程称为【软件维护】。注意软件维护不属于软件生命周期【开发阶段】的任务。

黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证,黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只根据程序的需求和功能规格说明,检查程序的功能是否符合它的功能说明,

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值