软件工程复习及答案docx.docx

上传人:b****6 文档编号:6292355 上传时间:2023-01-05 格式:DOCX 页数:17 大小:26.79KB
下载 相关 举报
软件工程复习及答案docx.docx_第1页
第1页 / 共17页
软件工程复习及答案docx.docx_第2页
第2页 / 共17页
软件工程复习及答案docx.docx_第3页
第3页 / 共17页
软件工程复习及答案docx.docx_第4页
第4页 / 共17页
软件工程复习及答案docx.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

软件工程复习及答案docx.docx

《软件工程复习及答案docx.docx》由会员分享,可在线阅读,更多相关《软件工程复习及答案docx.docx(17页珍藏版)》请在冰豆网上搜索。

软件工程复习及答案docx.docx

软件工程复习及答案docx

 

试题1

从供选择的答案中,选出应填入下面叙述中_?

_内的最确切的解答,把相应编号写在答题表的对应栏内。

1.在软件开发中以下几个方面的内容应分别在哪个文档中得到说明

_A_软件总体结构⑤

_B_运行环境③

_C_出错处理设计③

2.以下两个文档应分别在哪两个阶段中开发

_D_初步用户手册

_E_确认测试计划

供选择的答案:

A、B、C:

①可行性分析报告②项目开发计划③软件需求规格说明书④数据要求规格说明

书⑤总体设计规格说明书⑥详细设计规格说明书⑦测试计划⑧测试报告⑨用户手册D、E:

①可行性分析与计划②需求分析③总体设计④详细设计⑤测试⑥维护

试题2

从供选择的答案中,选出应填入下面叙述中_?

_内的最确切的解答,把相应编号写在答题表的对应栏内。

软件测试的目的是_A_。

为了提高测试的效率,应该_B_。

使用白盒测试方法时,确定测

试数据应根据_C_和指定的覆盖标准。

一般说来与设计测试数据无关的文档是_D_。

软件的集成测试工作最好由_E_承担,以提高集成测试的效率。

供选择的答案:

 

A:

①评价软件的质量②发现软件的错误

③找出软件中的所有错误④证明软件是正确的

B:

①随机地选取测试数据②取一切可能的输入数据作为测试数据

③完成编码以后制定软件的测试计划④选择发现错误的可能性大的数据作

 

为测试数据

 

C:

①程序的内部逻辑②程序的复杂程度

③使用说明书④程序的功能

D:

①需求规格说明书②设计说明书

③源程序④项目开发计划

E:

①该软件的设计人员②该软件开发组的负责人

③该软件的编程人员④不属于该软件开发组的软件设计人员

 

试题3

从供选择的答案中,选出应填入下面叙述中_?

_内的最确切的解答,把相应编号写在答题表的对应栏内。

 

软件的易维护性是指理解、改正、改进软件的难易度。

通常影响软件易维护性的因素有易理

解性、易修改性和_A易测试性。

在软件的开发过程中往往采取各种措施来提高软件的易

 

维护性。

如采用_B良好的编程风格_有助于提高软件的易理解性;_C信息隐蔽原

 

则_有助于提高软件的易修改性。

在软件质量特性中,_D可靠性_是指在规定的一段时间

 

和条件下,与软件维持其性能水平的能力有关的一组属性;_E安全性_是指防止对程序及

数据的非授权访问能力。

供选择的答案

A:

①易使用性②易恢复性③易替换性

B:

①增强健壮性②信息隐蔽原则

④易测试性

③良好的编程风格④高效的算法

C:

①高效的算法②信息隐蔽原则③增强健壮性④身份认证

D:

①正确性②准确性③可靠性④易使用性

E:

①安全性②适应性③灵活性④容错性

二、填空问题

1.文档功能是记录软件开发_活动__和阶段_成果__,能供人和机器阅读,具有永久保存属性。

2.计算机软件是指与计算机系统有关的程序、__数据__、规程及任何与之有关的文档和_图文资料___

3.工程是以_构建_、运行与集成为_核心__的人类活动,遵循社会_需求__,追求一定条件下的集成与综合_优化__。

4.瀑布模型是_70_年代提出,面向_过程_,饱受争议应用_广泛持久_

5.软件工程是指采用_数学__、科学及数学的_原理__和方法研制与维护计算机__软件_的有关技术和管理方法。

6.软件工程的目标是在给定_进度__和_成本__的前提下,开发出具有规定_属性__,并满足用户_需求__的软件产品。

7.可行性研究是用最小的__代价_在尽可能短的时间内__确定_问题是否能解决或值得去解决,而不是_解决__问题。

*8.需求分析阶段的输出是_需求规格说明书_,__的诸属性中,_功能_需求最重

要。

9.需求规格说明书是软件_设计__、编码和维护的__基础_,也是测试和验收目标系统的_依据__。

尽量采用_标准__、简单的符号,使用户一目了然。

需求规格说明书一旦得到用户和软件开发方一致_确认_,提交后将成为用户和软件开发方之间的_合同__。

10.分析模型主要有_结构化_分析模型和_面向对象_分析模型两类。

11._抽象_和_分解__是结构化分析方法的主要手段。

12.DFD说明的是系统“做什么”,而不是系统“__怎么做_”,所以数据流图中不可夹带控制流。

13.数据流图的主图必须包括_4__种基本图形元素,数据流图的主图上的数据流

必须封闭在__外部_实体之间。

14.数据流图中的每个元素必须有_名字_,以此表明流动的_数据__是什么,数

 

据_文件__是什么数据,_加工__做的是什么事情。

15.DFD只考虑软件必须完成基本逻辑功能,不考虑如何_具体实现__这些功能。

一、简答问题

1.简要解释名词“科学”,“工程”,“系统”,“研究”和“技术”。

工程:

与生产、建设相关,运用自然科学理论和技术原理得以实现的活动。

科学:

反映自然、社会、思维的发展与变化规律的知识体系。

技术:

为了实现特定的目标而采用的手段和方法的总称。

研究:

系统:

相互联系、相互作用的若干元素构成的,具有特定功能的统一整体。

2.什么是软件生存期?

软件生存周期是软件产品从形成概念,经过开发、使用和维护直至最后退

役的全过程。

国标《计算机软件开发规范》(GB8566-88)GB8566-88把软件生命周期划分为8个阶段:

可行性研究与计划,需求分析,概要设计,

详细设计,实现,组装测试,确认测试,使用和维护。

3,简述软件危机的定义、表现、原因和解决途径。

软件危机:

是指在计算机软件的开发和维护过程中遇到的一系列严重问题.

 

软件不满意;软件维护困难;软件通常没有适当的文档等。

原因:

用户对需求描述不清楚;开发人员对需求的理解与用户的本来愿望有差异;存在疏漏和错误;技巧和创造性加剧了软件产品的个性化;缺乏方法学和工具支持等。

 

管理、维护和更新,即软件工程方法。

4什么是可移植性?

软件可移植性指与软件从某一环境转移到另一环境下的难易程度。

为获得

较高的可移植性,在设计过程中常采用通用的程序设计语言和运行支撑环境.

5软件概念定义包括哪三部分,主要解决什么问题?

程序,数据,文档。

P1

6《GB8566-88》把软件生命周期划分为8个阶段:

可行性研究与计划,需求分析,概要设计,详细设计,实现,组装测试,确认测试,使用和维护。

试用瀑布模型

表示这8个阶段,并指出该模型中哪些阶段属于软件开发内容。

基于瀑布模型,你认为软件开发应该包括哪些阶段?

都解决什么问题?

P13

7可行性研究涉及哪些内容?

什么是软件需求?

简述什么是需求分析?

需求分析的任务是什么?

技术可行性分析,经济可行性分析,运行环境可行性分析,其他方面的可行性分析。

软件需求:

是指用户对目标系统在功能、行为、性能、设计约束等方面的期望。

需求分析:

是指对问题及其环境的理解与分析,为问题涉及的信息、功能及系统行为建立模型,将用户需求精确化、完全化,最终形成需求规

格说明的一系列活动或过程。

需求分析的任务:

是明确用户的各种要求,

并对系统要“做什么”给出一个清晰地、简洁地和无二义性的文档说明。

需求

分析阶段的用户一般不直接参与新系统的开发,软件文档和客户培训计划也是

这一阶段的产物。

8.需求规格说明书包括那些关键内容?

评审需求规格说明书的过程中,那个要素

 

受到普遍关注?

功能(作用)需求,性能需求、运行需求(环境)、成本消耗与开发进度需求、安全保障需求、用户界面需求等。

9.结构化方法的主要问题是什么?

 

10.简述什么是结构化分析方法?

为什么说结构化分析方法也称面向数据流的分析方法?

结构化分析:

就是按照软件的内部数据传递、变换关系,从层次的角度出发,自顶向下地逐层分解,直至找到满足功能要求的所有可实现的模块为止,即直

到所有功能模块简单到可以用程序代码实现时,就不再分解了。

结构化分析的描述/分析工具是数据流图,加工说明和数据字典,亦称面向数据流的分析方法(也有面向数据结构的分析方法)。

11.为什么要对数据流图进行分层?

简述数据流图的分层方法,何谓DFD的底

图?

一张数据流图中不可能一次性的引进太多的细节,因此,一张数据流图不足

以描述一个复杂的系统,为了解决这个问题,通常采用数据流图分层的方法。

数据流图的分层方法:

从一个系统的基本模型开始,按层次逐级分解,直至所有加工足够最简单、不必再分解为止。

底图:

是最低一层数据流图,包含了系统全部数据与加工,其中的加工是一些不必再分解的加工,这种不需要再分解的加工称为基本加工或基本处理逻

辑。

12.何谓加工?

何谓基本加工?

编写加工逻辑说明的常用工具有哪些?

加工就是小说明,说明数据流图中每个加工,描述如何把输入数据转换为

输出数据的策略。

编写加工逻辑说明的工具有:

结构化语言/英语,判定表,

判定树,IPO图等。

13.何谓数据字典?

DD包含哪些内容?

数据字典:

是描述数据信息的集合,它对数据流图中的各个元素进行完整的定义与说明。

定义与说明数据流图中的各个元素。

包含数据流、数据项、数据存储、处理逻辑、外部实体等。

数据字典可全人工、全自动化或实用程序帮助人工的混合过程实现。

数据有3种情况:

只有一个数据项;多个数据项组成的数据流;数据文件或数据库。

14.DFD中的数据对应哪些基本图形元素?

分别指出表示静止状态数据和运动状态的数据的基本图形元素。

数据流图有四种基本图形符号:

“→”箭头表示数据流;“○”圆或椭圆表述

 

加工;“=”双杠表示数据存储;“□”方框表示数据的源点或终点。

 

PPT课件内容

基概念

可行性研究是用最小的代价在尽可能短的时间内确定问题是否能解决或值得去解决,而不是解决问题。

在项目(问题)启动之前进行项目的可行性研究是非常必要的。

可行性研究的内容

技术可行性分析

技术可行性分析是指在当前市场的技术、产品条件的限制下,能否利用现在拥有的以及

可能拥有的技术能力、产品功能、人力资源来实现问题(项目)的目标、功能、性能;能否在

规定的时间期限内完成整个项目。

主要考虑:

处理问题的风险;人力资源的有效性;技术能力的可能性;产品的可用性。

经济可行性分析

经济可行性分析主要是对整个项目的投资及所产生的经济效益进行分析,具体包括:

支出

分析;收益分析;投资回报分析;敏感性分析等。

运行环境可行性分析

运行环境是制约软件在用户单位发挥效益的关键。

其他方面的可行性分析

包括诸如法律可行性、社会可行性等方面的可行性分析。

可行性研究的步骤

确定项目规模和目标;研究正在运行的系统;建立新系统的逻辑模型;导出和评价各种方

案;推荐可行性方案;编写和递交可行性研究报告。

初步可行性研究内容

项目投资建设的必要性、建设的周期;需要的人力、财力资源;功能和目标是否可以实现;经济效益、社会效益是否可以保证;项目/问题从经济上、技术上是否合理。

详细可行性研究内容

(1)

提出项目开发背景、必要性和经济意义,研究工作的依据和范围,产品交付的形式、种

类、数量。

调查研究国内外客户的需求情况,对国内外的技术趋势进行分析,确定项目的规模、目标、产品、方案和发展方向。

现有资源、设施情况分析:

调查现有的资源(包括硬件设备、软件系统、数据、规章制度等)种类与数量,以及这些资源的使用情况和可能的更新情况

详细可行性研究内容

(2)

确定总体和详细目标、范围,总体的结构和组成,核心技术和关键问题、产品的功能与

性能。

实施进度计划建议。

编制投资估算和资金筹措计划。

确定组织、人力资源、技术培训计划:

包括现有的人员规模、组织结构、人员层次、个

人技术能力、人员技术培训计划等

合作/协作方式。

效益的预测与评估

软件项目的效益表现为多种形态,对于效益的量化及计算方法,中国最优化协会有人把

其归纳为以下几种:

函数求解法;相关关系法;模糊数学法;专家意见法(德尔菲法);成本

降低法;利润增加法。

 

投入产出比和投资回收期

计算回收期的方法一般有以下几种:

静态投资回收期;动态投资回收期;差额投资回收期。

(项目/问题)可行性研究报告内容(条目)

第1部分概述

第2部分技术背景与发展概况

第3部分现行系统业务、资源、设施情况分析

第4部分技术方案

第5部分实施进度计划

第6部分投资估算与资金筹措计划

第7部分人员及培训计划

第8部分不确定性(风险)分析

第9部分经济和社会效益预测与评价

第10部分可行性研究结论与建议

第3章软件分析

需求分析

基本概念

软件需求是指用户对目标系统在功能、行为、性能、设计约束等方面的期望。

需求分析是指对问题及其环境的理解与分析,为问题涉及的信息、功能及系统行为建立模型,将用户需求精确化、完全化,最终形成需求规格说明的一系列活动或过程。

需求分析的任务

 

需求分析的任务是明确用户的各种要求,并对系统要“做什么”给出一个清晰地、简洁

地和无二义性的文档说明。

需求分析阶段的用户一般不直接参与新系统的开发,软件文档和客户培训计划也是这一

阶段的产物。

建立分析模型

为原始问题和目标系统建立分析模型。

分析模型包含问题及环境的信息流、处理功能、用户界面、行为及设计约束等。

分析模型有面向过程模型和面向对象分析模型两类。

早期的结构化分析模型的基本组成是数据字典,数据流图

 

和加工说明,数据字典是分析

模型的“核心”。

 

需求规格说明书(需求规约)

需求分析规格说明书

需求规格说明书是软件设计、编码和维护的基础,也是测试和验收目标系统的依据。

需求规格说明书中的要素/属性

功能(作用)需求:

定义拟开发的软件能完成的动作或事情,即“做什么”。

 

性能需求、运行需求(环境)、成本消耗与开发进度需求、安全保障需求、用户界面需求等。

需求规格说明书框架

1.引言

1.1

需求需求规格说明书的目的

3.1.3

处理过程描述

1.2

软件产品的作用范围

3.1.4

输出

 

1.3

定、同与宿写

⋯⋯⋯⋯⋯

1.4

参考文献

3.2

外部界面需求

1.5

需求格明概

3.2.1

用界面

2.一般性描述

⋯⋯⋯⋯⋯

2.1

品与境的关系

3.3

性能需求

2.2

品功能

3.4

需求

2.3

用特征

3.5

属性需求

2.4

⋯⋯⋯⋯⋯

2.5

假与前提

3.6

其他需求

3.特殊需求

3.1

功能或行需求

索引

3.1.1

引言

3.1.2

需求分析的步

需求取

常需求取方法

通了解用有的系和期望的新系等方面的想法。

开原形系

根据需求明,开者快速构造出一个足用基本要求的小型件系,然后根据用意原形加以改。

如此,不断价、和修改,得新的原形版本,逐步减少分析和

沟通中的解,适需求。

建立模型

 

需求评审

需求规格说明书还包括数据流图、用IPO图或其他工具简要描述的系统主要算法、用户需求与系统功能之间的关系、设计约束等内容。

需求规格说明书一旦得到用户和软件开发方一致确认,提交后将成为用户和软件开发方之间的合同,必须严格审查!

轮查

走查

小组评审和审查。

数据流图:

 

第3章软件分析

结构化方法

结构化方法采用系统科学的思想方法分析和解决问题,结构化方法包括结构化分析(简称SA)、结构化设计(简称SD)和结构化程序设计(简称SP)三部分内容。

结构化方法的基本原则

抽象:

考虑事物的本质特性而不是其细节。

分解:

把一个大问题逐次划分成为若干个足够简单的小问题。

模块化:

将系统分解成具有指定功能的若干模块。

 

结构化分析方法

结构化分析就是按照软件的内部数据传递、变换关系,从层次的角度出发,自顶向下地逐

层分解,直至找到满足功能要求的所有可实现的模块为止,即直到所有功能模块简单到可以用程序代码实现时,就不再分解了。

结构化分析的描述/分析工具是数据流图,加工说明和数据字典,亦称面向数据流的分析方法(也有面向数据结构的分析方法)

 

数据字典

数据字典是描述数据信息的集合,它对数

据流图中的各个元素进行完整的定义与说明。

定义与说明数据流图中的各个元素。

包含数据流、数据项、数据存储、处理逻辑、外部实体等。

数据字典可全人工、全自动化或实用程序帮助人工的混合过程实现。

数据有3种情况:

只有一个数据项;多个数据项组成的数据流;数据文件或数据库。

加工(逻辑说明)

说明数据流图中每个加工,描述如何把输入数据转换为输出数据的策略。

编写加工逻辑说明的工具有结构化语言/英语,判定表,判定树,IPO图等。

结构化语言

自然语言的词汇与某种结构化程序设计语言的语法结构混合在一起的语言。

判定表和判定树

建立逻辑模型举例(抽象)

学校向学生销售教材的手续

 

学生先提交购书申请,系办张干事开购书证明,学生持证明找教材科的王会计开购书发票,

向李出纳交付书款,然后到书库找赵保管员领书,由此生成当前系统具体模型

 

删掉具体模型中的非本质元素

张、王、李、赵等具体的人是可以变动的,,由此导出当前系统逻辑模型。

 

验证需求

分析当前系统与目标系统时,发现“发书”这项工作由人工完成、这项功能不需要计算

机参与,删除该元素,于是就产生了理想需求表达-初始目标系统的逻辑模型。

 

审查需求

 

复审需求规格说明书

,将这三个文件加入DFD,并给加工补上编号。

从而得到了一个较完整的计算机教材售书系统的数据流图或目标系统的逻辑模型。

 

数据流“发票”字典条目

 

组织是指文件中的记录按照什么规则组成文件

学生用书表={系编号+专业和班编号+年级+{书号}}

年级=[1/2/3/4]*4字符中任选一个*,

书号={字母}+{数字}*例如,MATH11,Eng2*。

教材购销系统的分层数据流图

教材购销系统的顶层DFD

 

教材购销系统的第2层DFD

 

销售子系统的第3层DFD

 

采购子系统的第3层DFD

 

在第2层DFD中,采购是系统内部的一个加工,但在销售子系统的第

销售之外的一个外部项。

整个系统一共分解为3层,4张DFD组成了教材购销系统的分层

 

3层DFD中,采购却是

 

DFD。

愈到下层加工愈细,

第三层共有9个足够简单“基本加工”

 

分层数据流图的审查

一致性

父图与子图平衡

 

教材销书子系统系统数据流图的精化与层间平衡

 

结构化设计方法

无论是何种类型的设计,都要从需求分析获得的分析模型导出软件的设计模型。

 

结构化设计(SD)的基本概念

SD源于1970年代

SD认为程序或系统是由一组功能操作构成的,需要实现的系统是逻辑功能(模块)的抽象集合,

 

强调分析模块之间关系,忽视模块内部的情况,重视“模块度”。

 

软件应该设计为结构简单,功能单一、相互独立的模块组织。

 

SD的特点

采用结构图来描述程序的结构。

根据需求分析阶段对数据流的分析结果来设计软件结构。

把数据流图变换成程序结构。

理论上,结构化设计方法可以用于任何软件系统的开发。

内聚和耦合是评价软件设计质量的标准。

图形工具

结构图是描绘系统结构的图形工具,描述系统由哪些模块组成、程序中模块之间的调用关

 

系、每个模块“做什么”以及每个模块输入和输出。

报表加工程序结构图

 

结构图揭示了模块结构的偶合和内聚关系,这种关系是系统的一种静态结构,表明模块间是否有关系,是否相互发生影响,但没有说明如何发生影响。

结构图的主要质量指标是模块内聚度和偶合度。

通常,根据需求规格说明书建立初始结构图;按高内聚、低藕合的标准修改初始结构图;反复修改调整直至获得满意的最终结构图。

层次图(H图)

层次图中一个矩形框代表一个模块,框间的连线表示调用关系,位于上方的矩形框所代表的模块调用位于下方的矩形框所代表的模块

 

HIPO图

 

事务分析

当数据流具有明显的事务特性时,则应该采用事务分析法处理问题。

事务分析是从事务流型的数据流图导出程序结构,它的步骤与变换分析基本类似,主要差别是从数据流图到程序结构的映射

 

四、变换分析

把数据流图转换为相应的初始软件结构图。

变换结构由传入、传出和变换中心三个部分组成。

变换中心(中心加工)的任务是把系统的逻辑输入加工为系统的逻辑输出。

分析数据流图

 

进行一级分解

主要任务是画出初始结构图的最上面的两层模块,系统的顶层和第一层。

顶层只有一个用于控制的模块,其功能是完成整个系统要做的事情。

第一层(顶层的下一层)一般包括输入、输出和变换中心三个模块,它们分别代表系统的三个相应分支。

具体做法是先把DFD的变换中心对准结构图的顶层模块,然后画出结构图的顶层模块。

然后逐步自顶向下建立或设计结构图的其他下属模块和成分。

 

DFD经第一级分解后导出的结构图

 

二级画法

 

五.数据流图的查改错

根据规定审查一份给定的数据流图,指出问题或错误,并改正错误。

六.基本路径测试技术

根据给定程序绘制相应的流图、计算程序的环路复杂性、指出独立路径,由此判断合理规划设计测试用例的数目。

 

计算环路复杂性方法

设G表示流图,V(G)表示环路复杂性

则V(G)=区域数=E-N+2=P+1

其中,区域数是流图中的区域数,E是流图中边的条数、N是流图中节点数,P是流图中判断节点的数目。

流图B的环路复杂性值V(G)=4。

自顶向下集成

从主控制模块(顶层模块)开始,按照“软件”的控制层次结构,向下逐步测试。

根据移动线路的差异,又分为深度优先或者宽度优先的策略。

 

系统测试的任务

为测试软件系统的输入信息设计出错处理路径;设计测试用例,模拟错误数据和软件界面

可能发生的错误;记录测试结果,为系统测试提供经验和帮助;参与系统测试的规划和设计,确保软件测试的合理性。

几类系统测试

恢复测试:

检查容错能力。

安全测试:

检查防范非法入侵的能力。

强度测试:

检查抵抗异常情况的能力。

性能测试:

检查集成之后的运行性能。

软件维护就是在软件交付使用之后,

为了改正错误或满足新的需求而修改软件的过程。

软件维护

有人把软件维

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1