公共基础知识_第1页
公共基础知识_第2页
公共基础知识_第3页
公共基础知识_第4页
公共基础知识_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、公共基础知识第1页,共33页,2022年,5月20日,6点9分,星期一4.软件工程基础第2页,共33页,2022年,5月20日,6点9分,星期一4.0 内容 软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。结构化分析方法,数据流图,数据字典,软件需求规格说明书。结构化设计方法,总体设计与详细设计。软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。程序的调试,静态调试与动态调试。第3页,共33页,2022年,5月20日,6点9分,星期一4.1 基本概念1. 软件工程软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解

2、决软件问题的工程。其目的是提高软件生产率、提高软件质量、降低软件成本。2. 软件危机早期的软件主要指程序,采用个体工作方式,缺少相关文档,质量低,维护困难,这些问题称为“软件危机”,软件工程概念的出现源自于软件危机。第4页,共33页,2022年,5月20日,6点9分,星期一3. 软件生命周期将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。维护是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护代价6个活动阶段可行性研究与计划制定:确定系统的总体目标。参加人员有用户、项目负责人和系统分析员,

3、产生文档有可行性分析报告、项目计划书等需求分析:确定系统的逻辑模型。参加人员有用户、项目负责人和系统分析员。产生文档为需求规格说明书,其作用:(1)便于用户、开发人员进行理解交流;(2)反映用户问题的结构,可以作为软件开发工作的基础和依据;(3)作为确认测试和验收的依据。第5页,共33页,2022年,5月20日,6点9分,星期一软件设计:包括软件结构设计、数据设计、接口设计和过程设计。其中结构设计是定义软件系统各部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和操作系统之间及软件与人之间如何通信;过程设计则是把系统结构部件转换成软件的过程性描述。软

4、件设计分概要设计和详细设计。参加人员有系统分析员和高级程序员。产生的文档有设计规格说明书。编码:编程。高级程序员和程序员产生源程序清单测试:由另一部门的高级程序员或系统分析员产生软件测试计划和软件测试报告运行维护第6页,共33页,2022年,5月20日,6点9分,星期一4. 软件工程三要素方法:完成软件工程项目的技术手段工具:支持软件的开发、管理、文档生成过程:支持软件开发的各个环节的控制、管理5. 软件工程的理论和技术研究的内容软件开发技术和软件工程管理6. 软件工程的目标在给定的成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可适应性、可移植性、可追踪性和可互操作性且满足

5、用户需求的产品软件工程鼓励研制和采用各种先进的软件开发方法、工具和环境第7页,共33页,2022年,5月20日,6点9分,星期一7. 软件工具和软件开发环境软件工具(CASE):用来辅助软件开、运行、维护、管理、支持等过程中的活动的软件软件开发环境:支持软件产品开发的软件系统,它由软件工具集和环境集成机制构成第8页,共33页,2022年,5月20日,6点9分,星期一4.2 结构化分析方法基本思想将系统分析看成工程项目,有计划、有步骤地进行工作。开发策略自顶向下,逐层分解分析结果一套分层的数据流图(DFD):用来描述数据流从输入到输出的变换流程一个数据字典(DD):用来描述DFD中的每个数据流、

6、文件以及组成数据流或文件的数据项一组小说明(加工逻辑说明):用来描述每个基本加工的加工逻辑第9页,共33页,2022年,5月20日,6点9分,星期一4.3 结构化设计方法、总体设计和详细设计4.3.1 结构化设计方法 结构图基本成分:模块、调用、输入输出数据模块用矩形表示,模块间用线段连接,表示调用关系,输入输出数据可写在调用线段的旁边信息流的类型变换流事务流第10页,共33页,2022年,5月20日,6点9分,星期一4.3.2 总体设计设计原则分解协调原则自顶向下的原则信息屏蔽、抽象的原则一致性原则明确性原则模块间的耦合度尽可能小,模块内部组合尽可能紧凑(内聚性高)模块的扇入和扇出系数合理模

7、块的规模适当第11页,共33页,2022年,5月20日,6点9分,星期一4.3.3 详细设计根本目标确定应用怎样具体的实现所要求的系统,不是具体的编写程序,而是要设计程序的“蓝图”此阶段的结果基本上决定了最终的程序代码的质量包括内容:代码设计输入设计输出设计处理过程设计用户界面设计安全控制设计第12页,共33页,2022年,5月20日,6点9分,星期一4.4 软件测试4.4.1 意义目的为了发现错误希望能以最少的人力和时间发现潜在的各种错误和缺陷保证系统质量和可靠性的关键步骤4.4.2 测试方法人工测试机器测试第13页,共33页,2022年,5月20日,6点9分,星期一4.4.3 白盒测试结构

8、测试将软件看成透明的白盒,根据程序的内部结构和逻辑结构来设计测试例子,对程序的路径和过程进行测试,检查是否满足设计的要求4.4.4 黑盒测试功能测试将软件看成黑盒子,在完全考虑软件内部结构和特性的情况下,测试软件的外部特性4.4.5 软件测试的实施单元测试(模块测试):白盒测试法组装测试(集成测试)确认测试系统测试第14页,共33页,2022年,5月20日,6点9分,星期一4.5 程序调试4.5.1 任务根据测试时发现的错误,找出原因和具体的位置,进行改正有程序开发人员来进行,谁开发的程序就由谁来进行调试方法:强行排错法回溯法原因排除法(演绎、归纳、二分法)第15页,共33页,2022年,5月

9、20日,6点9分,星期一4.5.2 静态调试通过人的思维来分析源程序代码和排错,是主要的调试手段4.4.4 动态调试辅助静态调试第16页,共33页,2022年,5月20日,6点9分,星期一例题讲解第17页,共33页,2022年,5月20日,6点9分,星期一为了提高测试的效率,应该 A) 随机选取测试数据 B) 取一切可能的输入数据作为测试数据 C) 在完成编码以后制定软件的测试计划 D) 集中对付那些错误群集的程序软件生命周期中所花费用最多的阶段是 A) 详细设计 B) 软件编码 C) 软件测试 D) 软件维护下列叙述中,不属于软件需求规格说明书的作用的是 A) 便于用户、开发人员进行理解和交

10、流 B) 反映出用户问题的结构,可以作为软件开发工作的基础和依据 C) 作为确认测试和验收的依据 D) 便于开发人员进行需求分析下列不属于软件工程的3个要素的是 ) 工具) 过程 ) 方法) 环境第18页,共33页,2022年,5月20日,6点9分,星期一 软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指 A) 模块间的关系B) 系统结构部件转换成软件的过程描述 C) 软件层次结构D) 软件开发过程检查软件产品是否符合需求定义的过程称为 ) 确认测试 ) 集成测试 ) 验证测试 ) 验收测试 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识

11、的图符不属于数据流图合法图符的是 ) 控制流 ) 加工 ) 数据存储 ) 源和流第19页,共33页,2022年,5月20日,6点9分,星期一开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作 A) 软件投机 B) 软件危机 C) 软件工程 D) 软件产生下面不属于软件设计原则的是 ) 抽象) 模块化 ) 自底向上 ) 信息隐蔽开发大型软件时,产生困难的根本原因是 A) 大系统的复杂性B) 人员知识不足 C) 客观世界千变万化D) 时间紧、任务重软件工程的出现是由于 A) 程序设计方法学的影响B) 软件产业化的需要 C) 软件危机的出现D) 计算机的发展第20页,共33页,2022

12、年,5月20日,6点9分,星期一软件开发离不开系统环境资源的支持,其中必要的测试数据属于 A) 硬件资源 B) 通信资源 C) 支持软件 D) 辅助资源在数据流图(DFD) 中,带有名字的箭头表示 A) 模块之间的调用关系B) 程序的组成成分 C) 控制程序的执行顺序D) 数据的流向下列不属于结构化分析的常用工具的是 A) 数据流图 B) 数据字典 C) 判定树 D) PAD图在软件生产过程中,需求信息的给出是 A) 程序员 B) 项目管理者 C) 软件分析设计人员 D) 软件用户第21页,共33页,2022年,5月20日,6点9分,星期一下列工具不是需求分析常用工具的是 ) PAD) PFD

13、 ) N-S) DFD模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的 A) 抽象和信息隐蔽 B) 局部化和封装化 C) 内聚性和耦合性 D) 激活机制和控制方法软件开发的结构化生命周期方法将软件生命周期划分成 A) 定义、开发、运行维护 B) 设计阶段、编程阶段、测试阶段 C) 总体设计、详细设计、编程调试 D) 需求分析、功能定义、系统设计第22页,共33页,2022年,5月20日,6点9分,星期一在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是 A) 路径的集合 B) 循环的集合 C) 目标的集合 D) 地址的集合完全不考虑程序的内部结构和内部特

14、征,而只是根据程序功能导出测试用例的测试方法是 A) 黑箱测试法 B) 白箱测试法 C) 错误推测法 D) 安装测试法在结构化设计方法中,生成的结构图(SC) 中,带有箭头的连线表示 A) 模块之间的调用关系B) 程序的组成成分 C) 控制程序的执行顺序D) 数据的流向第23页,共33页,2022年,5月20日,6点9分,星期一下列选项中,不属于模块间耦合的是 A) 数据耦合 B) 同构耦合 C) 异构耦合 D) 公用耦合下列叙述中,不属于测试的特征的是 A) 测试的挑剔性B) 完全测试的不可能性 C) 测试的可靠性D) 测试的经济性需求分析中开发人员要从用户那里了解 A) 软件做什么B) 用

15、户使用界面 C) 输入的信息D) 软件的规模下列不属于软件调试技术的是 A) 强行排错法B) 集成测试法 C) 回溯法D) 原因排除法第24页,共33页,2022年,5月20日,6点9分,星期一为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为 A) PAD图B) N-S图 C) 结构图D) 数据流图 软件复杂性度量的参数包括 A) 效率B) 规模 C) 完整性D) 容错性下列叙述中,正确的是 A) 软件就是程序清单 B) 软件就是存放在计算机中的文件 C) 软件应包括程序清单及运行结果 D) 软件包括程序和文档 软件设计中,有利于提高模块独立性的

16、一个准则是 A) 低内聚低耦合B) 低内聚高耦合 C) 高内聚低耦合D) 高内聚高耦合第25页,共33页,2022年,5月20日,6点9分,星期一软件生命周期中花费时间最多的阶段是 A) 详细设计 B) 软件编码 C) 软件测试 D) 软件维护下列叙述中,不属于结构化分析方法的是 A) 面向数据流的结构化分析方法 B) 面向数据结构的Jackson方法 C) 面向数据结构的结构化数据系统开发方法 D) 面向对象的分析方法详细设计的结果基本决定了最终程序的 A) 代码的规模 B) 运行速度 C) 质量 D) 可维护性下列不属于静态测试方法的是 A) 代码检查B) 白盒法 C) 静态结构分析D)

17、代码质量度量第26页,共33页,2022年,5月20日,6点9分,星期一在软件生命周期中,能准确地确定软件系统必须做什么和必须局别哪些功能的阶段是A)概要设计 B)详细设计 C)可行性分析 D)需求分析检查软件产品是否符合需求定义的过程称为A)确认测试 B)集成测试 C)验证测试 D)验收测试数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成,下列图符名标识的图符不属于数据流图合法图符的是A)控制流 B)加工 C)数据存储 D)源和潭第27页,共33页,2022年,5月20日,6点9分,星期一下面不属于软件设计原则的是A)抽象 B)模块化 C)自底向上 D)信息屏蔽程序流程图

18、(PFD)中的箭头代表的是A)数据流 B)控制流 C)调用关系 D)组成关系下列工具中为需求分析常用工具的是A)PAD B)PFD C)N-S D)DFD在结构化方法中,软件功能分解属于下列软件开发中的阶段是A)详细设计 B)需求分析C)总体设计 D)编程调试第28页,共33页,2022年,5月20日,6点9分,星期一软件调试的目的是A)发现错误 B)改正错误C)改善软件的性能 D)挖掘软件的潜能软件需求分析阶段的工作,可以分为四个方面:需求获取,需求分析,编写需求规格说明书,以及A)阶段性报告 B)需求评审C)总结 D)都不正确第29页,共33页,2022年,5月20日,6点9分,星期一 通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为 【4】 。 耦合和内聚是评价模块独立性的两个主要标准,其中 【3】 反映了模块内各成分之间的联系。 软件工程研究的内容主要包括: 【4】 技术和软件工程管理。 Jackson结构化程序设计方法是英国的M.Jackson提

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论