二级考试公共基础知识单元软件工程
计算机二级【公共基础知识】软件工程基础课件
需求优先级排序
根据项目目标和资源情况,对需 求进行优先级排序,确定哪些需 求是关键的、紧急的。
建立需求模型
使用合适的工具和技术,如原型 、流程图等,建立需求模型,帮 助团队更好地理解和管理需求。
需求规格说明
编写需求规格说明书
根据需求分析结果,编写详细的需求规格说明书,明 确各项需求的详细描述、功能要求和验收标准。
评审与确认
组织相关人员对需求规格说明书进行评审和确认,确 保其准确性和完整性。
发布与更新
将需求规格说明书发布给相关人员,并建立更新和维 护机制,确保其始终与项目实际情况保持一致。
需求验证与管理
验证需求
通过原型、测试用例等方式验证需求的正确 性和可行性,确保开发出来的软件能够满足 用户需求。
变更控制
02
需求获取
01
确定需求来源
识别并确定需求来源,包括用户、利益相关者和其他关 键干系人。
02
制定需求获取计划
制定详细的需求获取计划,包括时间、地点、人员和资 源等。
03
采集需求信息
通过访谈、问卷调查、原型演示等方式采集需求信息, 确保信息的准确性和完整性。
需求分析
需求分类
对获取的需求进行分类,明确哪 些是功能性需求,哪些是非功能 性需求。
需求分析
对软件需求进行重新审查和确认,确 保软件需求满足新的要求或变化。
设计修改
根据需求分析的结果,对软件的体系 结构、数据结构、接口等进行修改和 优化。
编码和测试
根据修改后的设计,进行代码编写和 测试,确保软件功能和性能的正确性 和稳定性。
软件可维护性
01
02
03
04
05
软件可维护性包 括四个方面
计算机二级【公共基础知识】软件工程基础【2024版】
(2)数据字典是结构化分析方法的核心,定义
了数据流图中每一个图形元素,使得用户和系 统分析员对于输入、输出、存储成分和中间结 果有共同的理解。
5.软件需求规格说明书
是需求分析的最后结果,是软件开发中重要的文档之一。 软件需求规格说明书的特点: (1)正确性; (2)无岐义性(最重要) ; (3)完整性; (4)可验证性; (5)一致性; (6)可理解性; (7)可追踪性。
软件生命周期是指软件产品从提出、实现、使
用维护到停止使用退役的过程。
3.软件生命周期:软件产品从提出、实现、使用
维护到停止使用退役的过程。包括软件定义、 软件开发、运行维护,主要活动阶段是:
(1)可行性研究与计划制定; (2)需求分析; (3)软件设计; (4)软件实现; (5)软件测试; (6)运行和维护。
答案:D
例题:
软件工程的出现是由于 A)程序设计方法学的影响 B)软件产业化的需要 C)软件危机的出现 D)计算机的发展
答案:C
例题:
软件设计中,有利于提高模块独立性的一个准 则是
A)低内聚低耦合 B)低内聚高耦合 C)高内聚低耦合 D)高内聚高耦合
答案:C
例题:
下列不属于结构化分析的常用工具的是 A)数据流图 B)数据字典 C)判定树 D)PAD图
3.4软件测试
软件测试的指用人工或自动手段来运行或测定
某个系统的过程,其目的在于检验它是否满足 规定的需求或是弄清预期结果与实际结果之间
的差别。简单地说,软件测试的目的是尽可能 多地发现程序中的错误。
考点2:软件测试方法
按是否要执行被测试软件的角度分为:静态测 试和动态测试。
静态测试包括代码检查、静态结构分析、代码 质量度量。不实际运行软件,主要通过人工进 行。
计算机二级【公共基础知识】软件工程基础课件
包括自顶向下设计和逐步细化设计两 个步骤,通过逐步分解系统,将复杂 问题分解为简单问题,便于开发人员 理解和实现。
面向对象设计方法
面向对象设计方法的概念
面向对象设计方法是一种基于对象的设计技术,将数据和操 作封装在对象中,通过对象之间的交互实现系统的功能。
面向对象设计方法的步骤
需求分析
需求分类
对获取的需求进行分类,明确哪些是功能性需求,哪些是非功能性 需求。
需求优先级排序
根据项目目标和利益相关者的关注点,对需求进行优先级排序,确 定哪些需求是必须满足的,哪些是可协商的。
建立需求模型
通过建立数据流图、实体关系图等模型,对需求进行详细分析和描 述。
需求规格说明书
编写需求规格说明书
测试执行是按照测试计划和测试用例执行测试的过程,而测试报告是记录测试结果和提供决策依据的重要文档。
在测试执行过程中,应按照测试计划和测试用例的要求,对软件系统进行逐项测试,并记录测试结果和发现的问题。测试报 告应详细记录测试过程、方法、结果和结论,并提供决策依据和建议。同时,测试报告还应包括问题跟踪和管理,以确保所 有发现的问题得到及时解决和验证。
迭代模型
在开发过程中不断迭代,逐步完善软件功能,逐步进行测试 和维护。
螺旋模型
强调风险分析,将瀑布模型和迭代模型相结合,逐步完善软 件功能。
敏捷开发方法
概念
敏捷开发是一种以人为核心、迭代、循序渐进的软件开发方法,强调团队合作和灵活性。
常见方法
Scrum、极限编程等。
特点
快速响应变化,快速交付价值,持续改进和团队成员的高度协作。
软件工程的重要性
提高软件质量
通过采用工程化的方法和技术, 可以减少软件缺陷和漏洞,提高
等级考试二级教程公共基础知识
3.2.3 软件需求规格说明书
软件需求规格说明书(SRS)是需求分析阶段的最后 成果。(见开发文档)
软件需求规格说明书的作用
便于用户、开发人员进行理解和交流 反映出用户问题的结构,可以作为软件开发工作的基础
和依据。 作为确认测试和验收的依据
软件需求规格说明书的特点:
(1)正确性;(2)无岐义性;(3)完整性; (4)可验证性;(5)一致性;(6)可理解性; (7)可追踪性。
1、语句覆盖
2、路径覆盖
3、判定覆盖
每个条件至少执行一次
4、条件附盖
5、判断-条件覆盖
白盒测试之基本路径测试
基本路径测试:测试用
例对每一条独立执行 路径进行测试。
.黑盒测试
2.黑盒测试:主要诊断功能不对或遗漏、界面错 误、数据结构或外部数据库访问错误、性能错误、 初始化和终止条件错,用于软件确认。
3.2 结构化分析方法
考点8 需求分析方法 1、需求分析:用户对目标软件系统功能、行为、
性能、设计约束等方面的期望。 2、需求分析方法: 结构化分析方法(JSD):Jackson方法,面向数据
结构的结构的结构化数据系统开发方法。 面向对象的分析方法(OOA):从需求分析建立
的模型特性来分,静态/动态分析方法。
秀软件应高内聚,低耦合。
3.3.3结构化设计方法
*概要设计任务 软件概要设计的基本任务是:
(1)设计软件系统结构; (2)数据结构及数据库设计; (3)编写概要设计文档; (4)概要设计文档评审。
常用结构设计工具
结构图(SC),也叫程序结构图。
模块用一个矩形表示,箭头表示 模块间的调用关系。在结构图中 还可以用带注释的箭头表示模块 调用过程中来回传递的信息。还 可用带实心圆的箭头表示传递的 是控制信息,空心圆箭心表示传 递的是数据。
全国二级C公共基础知识(软件工程基础)
软件生命周期分为3个时期共8个阶段:软件定义期,包括问题定义、 可行性研究、需求分析;软件开发期,包括概要设计、详细设计、实 现、测试;运行维护期,即运行维护阶段。可行性研究属于软件定义 期任务 软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。 主要活动阶段是:可行性研究与计划阶段,需求分析,软件设计,软 件实现,软件测试,运行和维护
软件生命周期各阶段的主要任务是:问题定义、可行性研究与计划制 定、需求分析、软件设计、软件实现、软件测试、运行维护。
软件设计属于软件开发期任务,通常又分为概要设计和详细设计两个 阶段,给出软件的结构、模块的划分、功能的分配以及处理流程。 需求分析阶段的工作可概括为4个方面:①需求获取。②需求分析。 ③编写需求规格说明书。④需求审评。 开发阶段包括分析、设计和实施两类任务。其中分析、设计包括需求 分析、总体设计和详细设计3个阶段,实施则包括编码和测试两个阶 段
书p238:测试的根本目的是尽可能多地发现并 排除软件中隐藏的错误。
白盒测试的主要技术有逻辑覆盖测试(语句覆盖、路径覆盖、 判断覆盖、条件覆盖)、基本路径测试等 常用的黑盒测试方法和技术有:等价类划分法、边界值分析 法、错误推测法和因果图等
需求分析方法可以分为结构化分析方法和面向对象的分 析方法,结构化分析工具包括:数据流图(DFD)、数 据字典(DD)、结构化英语、判定表和判定树等。
数据流图中带箭头的线段表示的是数据流,即沿箭头方向传送数据的通道, 一般在旁边标注数据流名。 在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有 名字的箭头表示控制流。
国家二级公共基础知识软件工程基础-试卷1_真题(含答案与解析)-交互
国家二级公共基础知识(软件工程基础)-试卷1(总分56, 做题时间90分钟)1. 选择题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.构成计算机软件的是SSS_SINGLE_SELA 源代码B 程序和数据C 程序和文档D 程序、数据及相关文档分值: 2答案:D解析:软件由两部分组成:一是机器可执行的程序和数据;二是机器不可执行的,与软件开发、运行、维护、使用等有关的文档。
2.软件是指SSS_SINGLE_SELA 程序B 程序和文档C 算法加数据鲒构D 程序、数据与相关文档的完整集合分值: 2答案:D解析:计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据与相关文档的完整集合。
软件由两部分组成:一是机器可执行的程序和数据;二是机器不可执行的,与软件开发、运行、维护、使用等有关的文档。
3.下列描述中正确的是SSS_SINGLE_SELA 程序就是软件B 软件开发不受计算机系统的限制C 软件既是逻辑实体,又是物理实体D 软件是程序、数据与相关文档的集合分值: 2答案:D解析:计算机软件与硬件是计算机系统中相互依存的两部分。
计算机软件是包括程序、数据及相关文档的完整集合。
软件由两部分组成:一部分是机器可执行的程序和数据:二是机器不可执行的。
与软件开发、运行、维护、使用等有关的文档。
软件具有以一下六个特点:①软件是一种逻辑实体,而不是物理实体,具有抽象性。
②软件的生产与硬件不同,它没有明显的制作过程。
③软件在运行、使用期间不存在磨损、老化问题。
④软件的开发、运行对计算机系统具有依赖忭,受计算机系统的限制,这导致了软件移值的问题。
⑤软件复杂性高,成木昂贵。
⑥软件的开发涉及诸多社会因素。
4.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是SSS_SINGLE_SELA 学生成绩管理系统B C语言编译程序C UNIX操作系统D 数据库管理系统分值: 2答案:A解析:学生成绩管理系统为应用软件。
全国计算机等级考试二级公共基础知识-软件工程
3.2 软件生命周期
1.软件生命周期概念 软件产品从提出、实现、使用、维护到停 止使用退役的过程称为软件生命周期。软件生 命周期分为3个时期共8个阶段, (1)软件定义期:包括问题定义、可行性 研究和需求分析3个阶段; (2)软件开发期:包括概要设计、详细设 计、实现和测试4个阶段; (3)运行维护期:即运行维护阶段。
1.下列工具中,不属于结构化分析的常用工
具是( )。
A)数据流图
B)数据字典
C)判定树
D)N-S图
2.软件开发中,需求分析阶段产生的主要
文档是( )。
A)数据字典
B)详细设计说明书
C)数据流图说明书 D)需求规格说明书
3.下列叙述中,正确的是( )。
A)软件交付使用后还需要进行维护 B)软件一旦交付使用就不需要再进行维护 C)软件交付使用后其生命周期就结束 D)软件维护是指修复程序中被破坏的指令
2、衡量软件模块独立性使用耦合性和内聚 性两个定性的度量标准
内聚性是度量一个模块功能强度的一个相 对指标。它描述的是模块内的功能联系。
耦合性是模块之间互相连接的紧密程度的 度量。
在程序结构中,各模块的内聚性越强,则 耦合性越弱。一般较优秀的软件设计,应尽量 做到高内聚,低耦合,即减弱模块之间的耦合 性和提高模块内的内聚性,有利于提高模块的 独立性。
软件设计的基本原理
1、软件设计中应该遵循的基本原理和与软件 设计有关的概念
(1)抽象;(2)模块化;(3)信息隐蔽; (4)模块独立性:模块的独立程度是评价设 计好坏的重要度量标准。衡量软件的模块独立性 使用耦合性和内聚性两个定性的度量标准。一个 模块的内聚性越强则该模块的模块独立性越强。 一个模块与其他模块的耦合性越强则该模块的模 块独立性越弱。
2023年计算机二级公共基础知识
二级公共基础知识总结第一章数据构造与算法1.1 算法算法:是指解题方案旳精确而完整旳描述。
算法不等于程序,也不等计算机措施,程序旳编制不也许优于算法旳设计。
算法旳基本特性:是一组严谨地定义运算次序旳规则,每一种规则都是有效旳,是明确旳,此次序将在有限旳次数下终止。
特性包括:(1)可行性;(2)确定性,算法中每一环节都必须有明确定义,不充许有模棱两可旳解释,不容许有多义性;(3)有穷性,算法必须能在有限旳时间内做完,即能在执行有限个环节后终止,包括合理旳执行时间旳含义;(4)拥有足够旳情报。
算法旳基本要素:一是对数据对象旳运算和操作;二是算法旳控制构造。
指令系统:一种计算机系统能执行旳所有指令旳集合。
基本运算包括:算术运算、逻辑运算、关系运算、数据传播。
算法旳控制构造:次序构造、选择构造、循环构造。
算法基本设计措施:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要旳计算工作量。
算法空间复杂度是指执行这个算法所需要旳内存空间。
1.2 数据构造旳基本基本概念数据构造研究旳三个方面:(1)数据集合中各数据元素之间所固有旳逻辑关系,即数据旳逻辑构造;(2)在对数据进行处理时,各数据元素在计算机中旳存储关系,即数据旳存储构造;(3)对多种数据构造进行旳运算。
数据构造是指互相有关联旳数据元素旳集合。
数据旳逻辑构造包括:(1)表达数据元素旳信息;(2)表达各数据元素之间旳前后件关系。
数据旳存储构造有次序、链接、索引等。
线性构造条件:(1)有且只有一种根结点;(2)每一种结点最多有一种前件,也最多有一种后件。
非线性构造:不满足线性构造条件旳数据构造。
1.3 线性表及其次序存储构造线性表是由一组数据元素构成,数据元素旳位置只取决于自己旳序号,元素之间旳相对位置是线性旳。
在复杂线性表中,由若干项数据元素构成旳数据元素称为记录,而由多种记录构成旳线性表又称为文献。
计算机2级公共基础知识课件-软件工程
第25页
软件工程方面的考题:
(1) 下面叙述中错误的是 A A)软件测试的目的是发现错误并改正错误 B)对被调试的程序进行“错误定位”是程序调试的必要步骤 C)程序调试通常也称为Debug D)软件测试应严格执行测试计划,排除测试的随意性 (2) 软件测试可分为白盒测试和黑盒测试。基本路径测试属于【白盒】 测试。 单元 测试之后进行。 (3) 按照软件测试的一般步骤,集成测试应在_____
确定开发目标和总的要求,给出功能、可靠性 等可能方案,制定实施计划. 对软件需求进行分析并给出详细定义,编写软件 规格说明书及初步的用户手册,提交评审。 给出软件的结构、模块和功能的划分等,确定算法。 编写概要设计、详细设计说明书和测试计划初稿。 源程序编码,把软件设计转换成计算机 可以接受的程序代码。编写用户手册、 操作手册和单元测试计划。 设计测试用例,检验软件各 个组成部分。编写测试分析 报告。 将已交付的软件投入运行, 并在运行使用中不断地维护, 根据新提出的需求进行必要 而且可能的扩充和删改。
第5页
软件危机 (Software
Crisis)
落后的软件生产方式无法满足迅速增长的计算机软件 需求,从而导致软件开发与维护过程中出现一系列严 重问题的现象。 软件危机主要表现在: 软件开发费用和进度失控。费用超支、进度拖延的 情况屡屡发生。有时为了赶进度或压成本不得不采 取一些权宜之计,这样又往往严重损害了软件产品 的质量。 软件的可靠性差。尽管耗费了大量的人力物力,而 系统的正确性却越来越难以保证,出错率大大增加 ,由于软件错误而造成的损失十分惊人。 第6页 ……
计算机二级考试公共基础知识(软件工程)资料
计算机基础中心
软件需求分析阶段的工作,可以分为四个方面: • 软件设计:包括软件结构设计、数据设计、接口设 1 )软件定义阶段:包括制定计划和需求分析。 需求获取、需求分析、编写需求规格说明书以及 计和过程设计。其中结构设计是定义软件系统各部 制定计划:确定总目标;可行性研究;探讨解决方案; ______ 。 件之间的关系;数据设计是将分析时创建的模型转 制定开发计划。 B A. 化为数据结构的定义;接口设计是描述软件内部、 阶段性报告 B. 需求评审 需求分析:对待开发软件提出的需求进行分析并给出 软件和操作系统之间及软件与人之间如何通信;过 C. 总结 D. 都不正确 详细的定义。 程设计则是把系统结构部件转换成软件的过程性描 2)软件开发阶段: 述。软件设计分概要设计和详细设计。参加人员有 概要设计和详细设计 软件设计:分为____________________ 两个部分。 系统分析员和高级程序员。产生的文档有设计规格 软件实现:把软件设计转换成计算机可以接受的程序代码。 说明书。 软件测试:在设计测试用例的基础上检验软件的各个组成 • 编码:编程。高级程序员和程序员产生源程序清单 部分。 3• )软件运行维护阶段:软件投入运行,并在使用中不断地 测试:由另一部门的高级程序员或系统分析员产生 维护,进行必要的扩充和删改。 软件测试计划和软件测试报告 软件运行维护阶段 *:软件生命周期中所花费最多的阶段是________________ 。 • 运行维护
–
6个活动阶段
•
可行性研究与计划制定:确定系统的总体目标。参加人员有 用户、项目负责人和系统分析员,产生文档有可行性分析报 告、项目计划书等 需求分析阶段的任务是确定 ______。 • 需求分析:确定系统的逻辑模型。参加人员有用户、项目负 责人和系统分析员。产生文档为需求规格说明书,其作用: A. 软件开发方法 B. 软件开发工具 (1)便于用户、开发人员进行理解交流;(2)反映用户问 C. 软件开发费 D. 软件系统功能 D 题的结构,可以作为软件开发工作的基础和依据;( 3)作为 确认测试和验收的依据。
国家二级公共基础知识软件工程基础-试卷2_真题-无答案
国家二级公共基础知识(软件工程基础)-试卷2(总分56,考试时间90分钟)1. 选择题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1. 构成计算机软件的是A. 源代码B. 程序和数据C. 程序和文档D. 程序、数据及相关文档2. 下列描述中正确的是A. 程序就是软件B. 软件开发不受计算机系统的限制C. 软件既是逻辑实体,又是物理实体D. 软件是程序、数据与相关文档集合3. 软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是A. 编译程序B. 操作系统C. 教务管理系统D. 汇编程序4. 下面描述中,不属于软件危机表现的是A. 软件过程不规范B. 软件开发生产率低C. 歙件质量难以控制D. 软件成本不断提高5. 下面不属于软件工程的3个要素是A. 工具B. 过程C. 方法D. 环境6. 软件生命周期是指A. 软件产品从提出、实现、使用维护到停止使用退役的过程B. 软件从需求分析、设计、实现到测试完成的过程C. 软件的开发过程D. 软件的运行维护过程7. 软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是A. 测试B. 设计C. 可行性研究D. 实现8. 软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于A. 定义阶段B. 开发阶段C. 维护阶段D. 上述三个阶段9. 下面不属于软件设计原则的是A. 抽象B. 模块化C. 自底向上D. 信息隐藏10. 下面不属于需求分析阶段任务的是A. 确定软件系统的功能需求B. 确定软件系统的性能需求C. 需求规格说明书评审D. 制定软件集成测试计划11. 在软件开发中,需求分析阶段可以使用的工具是A. N-S图B. DFD图C. PAD图D. 程序流程图12. 在软件设计中不使用的工具是A. 系统结构图B. PAD图C. 数据流图(DFD图)D. 程序流程图13. 在软件设计中,不属于过程设计工具的是A. PDL(过程设计语言)B. PAD图C. N-S图D. DFD图14. 数据字典(D)所定义的对象都包含于A. 数据流图(DFD图)B. 程序流程图C. 软件结构图D. 方框图15. 在软件开发中,需求分析阶段产生的主要文档是A. 软件集成测试计划B. 软件详细设计说明书C. 用户手册D. 软件需求规格说明书16. 在软件开发中,需求分析阶段产生的主要文档是A. 可行性分析报告B. 软件需求规格说明书C. 概要设计说明书D. 集成测试计划17. 下面不属于软件设计阶段任务的是A. 软件总体设计B. 算法设计C. 制定软件确认测试计划D. 数据库设计18. 耦合性和内聚性是对模块独立性度量的两个标准。
二级公共基础知识第3章
环路复杂度=程序流程图中的判断框个数+1
a
A>2
Tc
F
B=1
T
b
Fd
e
输出A
输出B 输出A与B
f
end
测试用例
通过路径
A=1,B=0,(输出略) abf
A=3,B=1,(输出略) acef
A=3,B=3,(输出略) acdf
▪ 软件测试方法
▪ 黑盒测试:功能测试或数据驱动测试
▪ 1)等价类划分法
▪ 先把程序的所有可能的输入划分成假设干个等价 类,然后根据等价类选取相应的测试用例
户开发软件的工具型软件。
例:Dephi、PowerBuider等
应用软件 应用软件 应用软件 应用软件 应用软件
支撑软件
支撑软件
支撑软件
系统软件
4. 软件危机
指计算机软件的开发和维护过程中所遇到的一系列 严重问题。
5. 软件工程定义
是指应用计算机软件的定义、开发和维护的一整套 方法、工具、文档、实践标准和工序。
(4, 3, 1) (9, 5, 9)
F
i≥j and j<8 T 测试用例7 (3, 9, 0)
(3, 9, 9)
F i>8 T
x=j
x=i
输出i, j, x
end
2)根本路径测试
根据软件过程性描述中控制流程确定程序的环路复杂性
度量,用此度量定义根本路径集合,并由此导出一组测试
用例对每一条独立执行路径进展测试。
通道,一般在旁边标注 数据流名
加工(process)
又称转换,输入数据经 加工、变换产生输出
又称数据源,表示处理
存储文件(file)
计算机等级考试二级公共基础知识第三章
第三章软件工程基础一、教学目标1、了解软件工程的基本概念。
2、理解结构化分析方法。
3、理解结构化设计方法。
4、了解软件测设的目的准则方法等基础知识。
5、了解程序调试的基本概念与方法。
二、教学方法1、重点内容与常考内容重点讲解。
2、以实例如真题来讲解程序设计中的重点与难点。
三、重点内容1、软件定义与特点。
2、软件工程与软件生命周期。
3、软件的需求分析与需求分析方法。
4、结构化分析方法及其常用的工具。
5、软件设计的基本原理。
6、概要设计与详细设计。
7、软件测试目的、原则、方法与实施。
8、程序调试的目的。
四、教学内容3.1 软件工程基本概念3.1.1 软件定义与软件特点1、软件的定义计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及相关文档的完整集合。
2、软件的特点【了解】(1)抽象性;(2)没有明显的制作过程;(3)软件在运行、使用期间不存在磨损、老化问题;(4)软件的开发、运行对计算机系统具有依赖性;(5)软件复杂性高,成本昂贵;(6)软件开发涉及诸多的社会因素。
3.1.2 软件危机与软件工程1、软件危机的主要表现:(了解)(1)软件需求的增长得不到满足;(2)软件开发成本和进度无法控制;(3)软件质量难以保证;(4)软件不可维护或维护程度非常低;(5)软件的成本不断提高;(6)软件开发生产率的提高赶不上硬件的发展和应用需求的增长。
总之,可以将软件危机归结为成本、质量、生产率等问题。
2、软件工程软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。
的各个环节的控制、管理。
软件工程的核心思想是把软件产品看做是一个工程产品来处理。
这些思想都是强调在软件开发过程中需要应用工程化原则。
3.1.3 软件工程过程与软件生命周期1、软件工程过程ISO 9000定义:软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。
及时地进行计算机软件开发的目的。
2、软件生命周期通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。
二级公共基础知识---软件工程、数据库设计
知识点归纳
程序调试(Debug) 诊断和修正程序中的错误。 (软件测试是尽可能多地发现软件中的错误) 调试方法 强行排错法 回溯法 原因排除法 静态调试 通过人的思维来分析源程序代码和排错 动态调试
知识点归纳
软件维护 为纠正使用中出现的错误而进行的改正性维护 为适应环境变化而进行的适应性维护 为改进原有软件而进行的完善性维护 为将来的可维护和可靠而进行的预防性维护 软件维护不仅包括代码的维护还包括文档的维护
知识点归纳
数据流图 基本元素:外部实体、数据流、处理(加工)、数据存储
知识点归纳
知识点归纳
软件需求规格说明书(SRS) 需求分析应交付的主要文档。 主要内容
数据描述(数据流图、数据字典、接口说明等) 功能描述(功能、处理说明等) 性能描述(性能参数、预期的软件响应等)
知识点归纳
数据库(DB) 长期存放在计算机内,有组织的、可共享的数据 集合。数据库中的数据按一定的数据模型组织、描 述和存储,具有较小的冗余度、较高的数据独立性 和易扩展性。
知识点归纳
数据库管理系统(DBMS)
数据库系统的核心组成部分,在操作系统支持下工作。
主要功能
知识点归纳
测试技术与方法 按照功能,分为黑盒测试和白盒测试。 黑盒测试:功能测试。将测试对象看作一个黑盒, 不考虑程序内部的逻辑结构和内部特性,只依据程 序的需求规格说明,检查程序的功能是否符合它的 功能说明。 主要方法:等价类划分法、边界值分析法、错误 推测法、因果图等。 白盒测试:结构测试。把测试对象看作一个透明 的盒子,利用程序内部的逻辑结构及有关信息,对 程序的所有逻辑路径进行测试。 主要方法有:逻辑覆盖、基本路径测试等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二级考试公共基础知识单元:软件工程
A005:构成计算机软件的是()
A、程序和文档
B、程序和数据
C、程序、数据及相关文档
D、源代码
参考答案:C
A006:软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是()A、可行性研究B、测试C、设计D、实现
参考答案:A
A007:下面不能作为结构化方法软件需求分析工具的是()
A、数据字典(DD)
B、判定表
C、数据流程图(DFD图)
D、系统结构图
参考答案:D
A052(图):软件详细设计产生的图如下:
该图是()
A、E-R图
B、PAD图
C、程序流程图
D、N-S图
参考答案:C
A056:软件设计中划分模块的一个准则是()
A、低内聚低耦合
B、高内聚高耦合
C、低内聚高耦合
D、高内聚低耦合
参考答案:D
A057:下列选项中不属于结构化程序设计原则的是()
A、模块化
B、可封装
C、逐步求精
D、自顶向下
参考答案:B
A097:下列不属于软件开发阶段任务的是()
A、实现
B、设计
C、可行性研究
D、测试
参考答案:C
A148:面向对象方法中,继承是指()
A、各对象之间的共同性质
B、类之间共享属性和操作的机制
C、一个对象具有另一个对象的性质
D、一组对象所具有的相似性质
参考答案:B
A149:软件生命周期是指()
A、软件的开发过程
B、软件的运行维护过程
C、软件产品从提出、实现、使用维护到停止使用退役的过程
D、软件从需求分析、设计、实现到测试完成的过程
参考答案:C
A150:软件测试的目的是()
A、评估软件可靠性
B、改正程序中的错误
C、发现程序中的错误
D、发现并改正程序中的错误参考答案:C
A189:下列属于系统软件的是()
A、财务管理系统
B、数据库管理系统
C、杀毒软件
D、编辑软件word
参考答案:B
A190:程序测试的目的是()
A、执行测试用例
B、诊断和改正程序中错误
C、发现并改正程序中错误
D、发现程序中的错误
参考答案:D
A228:下面对软件特点描述正确的是()
A、软件在使用中存在磨损,老化问题
B、软件是一种逻辑实体,具有抽象性
C、软件复制不涉及知识产权
D、软件具有明显的制作过程
参考答案:B
A229:下面属于良好程序设计风格的是()
A、随意使用无条件转移语句
B、程序效率第一
C、程序输入输出的随意性
D、源程序文档化
参考答案:D
A230:下面对软件测试和软件调试叙述错误的是()
A、正确的执行测试用例
B、严格执行测试计划,排除测试的随意性
C、软件测试不需考虑测试成本
D、软件调试的目的是改正软件错误
参考答案:C
A268:下面属于软件设计阶段产生的文档是()
A、详细设计规格说明书
B、数据流程图和数据字典
C、软件需求规格说明书
D、软件确认测试计划
参考答案:A
A269:软件工程包括的要素是()
A、算法和工具
B、技术和管理
C、算法和过程
D、方法、工具和过程
参考答案:D
A308(图):某系统结构图如下图所示,该系统结构图中最大扇出数是()。
A、2
B、1
C、3
D、4
参考答案:C
【扇入指该模块在结构图中的直接上层模块数,扇出是该模块在结构图的直接下层模块数。
】
A310:面向对象方法中,实现对象的数据和操作结合于统一体中的是()
A、结合
B、抽象
C、隐藏
D、封装
参考答案:D
A388:下列叙述中正确的是()
A、内聚度是指模块间互相连接的紧密程度
B、耦合度是指一个模块内部各个元素间彼此结合的紧密程度
C、耦合和内聚是不相关的
D、降低耦合度提高内聚度有利于提高模块的独立性
参考答案:D
A389:单元测试主要涉及的文档是()
A、需求规格说明书
B、确认测试计划
C、总体设计说明书
D、编码和详细设计说明书
参考答案:D
A429::软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是()
A、编译程序
B、操作系统
C、教务管理系统
D、汇编程序
参考答案:C
A430::下面叙述中错误的是_______
A、程序调试通常也称为Debug
B、软件测试应严格执行测试计划,排除测试的随意性
C、对被调试的程序进行“错误定位”是程序调试的必要步骤
D、软件测试的目的是发现错误并改正错误
参考答案:D
A469::在软件设计中_______
A、模块内聚与耦合无关
B、模块独立性仅与内聚度相关
C、应遵循高耦合低内聚的原则
D、应遵循高内聚低耦合的原则
参考答案:D
A471::下面描述正确的是_______
A、软件测试的目的是发现和改正错误
B、软件测试可以随机地选取测试数据
C、软件测试是指动态测试
D、软件测试是保证软件质量的重要手段
参考答案:D
A550::程序调试的任务是_______
A、发现并改正程序中的错误
B、发现程序中的错误
C、设计和运行测试用例
D、诊断和改正程序中的错误
参考答案:D
A551:(图):某系统结构图如下图所示,该系统结构图的宽度是_______
A、3
B、5
C、1
D、2
参考答案:5。