软件工程(02333)简答题总结

Posted maohai-kdg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件工程(02333)简答题总结相关的知识,希望对你有一定的参考价值。

近年来(2020)简答题总结(重复率过高,不分前后)

ps:网上基本上都是图片格式的,整理不易,能帮助到您的请点个推荐,谢谢!

1.简述软件开发的本质及其涉及到的问题

1) 软件开发的本质概括为:不同抽象层术语之间的映射,以及不同抽象层处理逻辑之间的映射。它涉及两方面的问题:

2) 一是如何实现这样的映射,这是技术层面上的问题

3) 二是如何管理这样的映射,以保障映射的有效性和正确性。这是管理层面上的问题。

2.简述因果图方法生成测试用例的基本步骤

1) 通过对软件规格说明书的分析,找出一个模块的原因和结果,并给出每个原因和结果赋予一个标识符

2) 分析原因与结果之间以及原因与原因之间对应的关系,并画出因果图

3) 在因果图上标识出一些特定的约束或限制条件

4) 把因果图转换成判定表

5) 为判定表的每一列设计测试用例

3.简述结构化方法详细设计的任务及目标

1) 详细设计的任务是具体描述模块结构图中的每一个模块,即给出实现模块功能的实施机制,包括一组例程和数据结构,从而精确地定义了满足需求所规约的结构

2) 详细设计的目标是将总体设计阶段所产生的系统高层结构映射为以这些术语所表达的低层结构,也是系统的最终结构

4.简述需求规约的概念及其本质问题

需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。需求规约一般满足一下4个基本性质:

1) 重要性和稳定性成都:按需求的重要性和稳定性,对需求进行分级

2) 可修改的:在不过多的影响其他需求的前提下,可以修改一个单一需求

3) 完整的:没有被遗漏的需求

4) 一致的:不存在互斥的需求

5.简述软件生存周期过程、软件生存周期模型、软件项目过程管理之间的关系。

1)       软件生存周期过程回答软件开发需要做哪些工作

2)       软件生存周期模型回答软件开发活动或任务如何组织

3)       软件项目过程管理回答软件过程如何管理

4)       软件生存周期过程是软件生存周期模型和软件项目过程管理的基础

5)       软件生存周期模型为软件项目过程管理提供支持

6.简述验证和确认以及它们的区别

1) 验证就是证实一个过程或i项目的每一软件工作产品/服务是否正确地反映了所规约的需求

2) 确认就是证实所期望使用的软件工作产品是否满足其需求

3) 区别:验证是通过提供的客观证据,证实规约的需求是否得以满足;确认是通过提供的客观证据,证实有特定期望的使用或应用的需求是否得以满足

7.简述RUP和UML之间的关系。

1)RUP和UML构成了一种特定的软件开发方法学

2)UML作为一种可视化建模语言,给出了表达十五和事务之间关系额基本术语,给出了多种模型的表达工具

3)RUP利用遮羞术语定义了需求获取层、系统分析层、设计层、实现层、并给出了实现个模型之间映射的基本活动以及相关的指导

8.简述关联、泛化、细化和依赖的概念以及前三者与依赖的关系

1)关联是类目之间的一种结构关系,是对一组具有相同结构、相同链的描述

2)泛化是一般性类目(父类)和它的较为特殊性类目(子类)之间的一种关系,有时称为“is-a-kind-of”关系

3)细化是类目之间的语义关系,其中一个类目规约了保证另一个类目执行的契约

4)依赖是一种使用关系,用于描述一个类目使用另一类目的信息和服务

5)关联、泛化和细化都是一类特定的依赖

9.简述泛化的概念及其约束

泛化是一般性类目(父类)和它的较为特殊性类目(子类)之间的一种关系,有时称为“is-a-kind-of”关系,UML给出了一下4个约束:完整、不完整、互斥、重叠

10.为了表达各类事物之间的关系,UML给出了哪些表达关系的基本术语?请简述其含义。

1) 为了表达各类事物之间的关系,UML给出了表达关系的基本术语:关联、泛化、细化、依赖

2) 关联是类目之间的一种结构关系,是对一组具有相同结构,相同链的描述

3) 泛化是一般性类目和它的较为特殊性类目之间的一种关系

4) 细化是类目之间的语义关系,其中一个类目规约了保证另一个类目执行的契约

5) 依赖是一种使用关系,用于买哦书一个类目使用另一类目的信息和服务

11.简述变换设计与事务设计的区别及联系

1) 变换设计的目的是将变换型数据流图映射为模块结构图,他由3部分组成:获取数据、变换数据和输出数据,其中变换数据是核心。为了协调这些模块的有序工作,还应设计一个主控模块来协调和控制其他模块。变换设计比较机械

2) 事务设计的目的是将事务型数据流图映射为模块结构图,事务设计都有一个明显的事务处理中心,事务中心必需完成3个任务:结构输入数据,分析并确定对应的事务和选取与该事务对应的一条活动路径

12.针对具有变换型流图和事务型的DFD,简述总体设计的步骤。

1)   在软件总体设计中,通常以变换设计为主,事务设计为辅及逆行结构设计

2)   首先利用变换设计,把软件系统分为输入,中心变换和输出3个部分,设计上层模块

3)   然后根据各个部分数据流图的结构特点,适当地利用变换设计和事务设计进行细化,得到初始的模块结构图

4)   再按照“高内聚低耦合”的原则,对初始的模块结构图进行精华,得到最终的模块结构图

13.简述事务设计的基本步骤

1) 设计准备,复审并精化系统模型

2) 确定事务处理中心

3) 设计系统模块结构图的顶层和第一层

4) 自顶向下,逐步求精

14.简述需求规约在项目开发中的基本作用。

1)   需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现

2)   对于项目的其余大多数工作,需求规约是一个管理控制点

3)   对于产品/系统的设计,需求规约是一个正式的、受控的起始点

4)   是创建产品验收测试设计和用户指南的基础,即基于需求规约一般还会产生另外两个文档:初始测试计划和用户系统操作描述

15.简述软件工程与软件危机的概念以及提出软件工程概念的目的

1) 软件工程是应用计算机科学理论以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此未研究对象的学科

2) 软件生产率、软件质量远远满足不了社会发展的需求,成为社会,经济发展的制约因素,把这一现象称为软件危机

3) 软件工程概念的提出是倡导以工程的原理、原则和方法进行软件开发,以期解决出现的软件危机

16.简述软件以及软件危机。

1)   计算机软件一般是指计算机系统中的程序及文档

2)   其中,程序是计算机任务的处理对象和处理规则的描述

3)   文档是为了理解程序所需要的阐述性资料

4)   软件生产率、软件质量远远满足不了社会发展的需求,成为社会,经济发展的制约因素,把这一现象称为软件危机

17.简述模块的控制域和作用域的盖面以及它们的启发式原则

1)       模块的控制域是指这个模块本身以及所有直接或间接从属于它的模块的集合

2)       模块的作用域是指受该模块内一个判定所影响的所有模块的集合

3)       尽力使该模块的作用域在其控制域之内

18.简述选择软件生存周期模型(SLCM)的步骤

1)       标识开发项目可用的SLCM

2)       标识那些会影响SLCM选择的属性

3)       标识为选择SLCM所需要的任何约束

4)       评估所选择的SLCM

5)       选择最能满足项目属性和约束的SLCM

19.简述瀑布模型各阶段

1)       系统需求

2)       软件需求

3)       需求分析

4)       设计

5)       编码

6)       测试

7)       运行

20.简述边界值分析在设计测试用例时可以遵循的原则

1)       如果某个输入条件规定了输入值的范围,则应选择正好等于边界值的数据,以及刚刚超过边界值的数据作为测试数据

2)       如果某个输入条件规定了值的个数,则可用最大个数、最小个数、比最大个数多1、比最小个数少1的数作为测试数据

3)       如果程序的规格说明中输入域或输出域是有序集合,则选取集合的第一个元素、最后一个元素以及典型元素作为测试用例

4)       如果程序中使用了内部数据结构,则应当选择这个内容数据结构的边界上的值作为测试用例

5)       分析规格说明,找出其他可能的边界条件

21.简述用况图及其通包含的模型元素

1) 用况图是一种表达系统功能模型的图形化工具

2) 一个用况图通常包含6个模型元素:主题、用况、参与者、关联、泛化和依赖

22.简述RUP中用况模型和分析模型的区别

1)       前者使用客户语言来描述,后者使用开发语言来描述

2)       前者给出的是系统对外的视图,后者给出的是系统对内的视图

3)       前者使用用况予以结构化,后者使用衍型类予以结构化

4)       前者可以作为客户和开发者之间的契约,后者可以作为开发者理解系统的基础

5)       前者在需求之间可能存在一些冗余,不一致和冲突等问题,后者不存在这些问题

6)       前者捕获的是系统功能,后者给出的是细化的系统功能

7)       前者定义了一些进一步需要在分析模型中予以分析的用况,后者定义了用况模型中每一个用况的细化

23.简述RUP设计模型以及包含的元素

RUP的设计模型是RUP设计的主要结构,它尽量保持该系统具有分析模型的结构,并作为系统实现的输入。它包括以下元素:

1) 设计子系统和服务子系统,以及它们的依赖、接口、和内容

2) 设计类,以及它们具有的操作、属性、关系及其实现需求

3) 用况细化

4) 体系结构描述

24.简述程序流程图的优缺点

优点:对控制流程的描述很直观,便于初学者掌握

缺点:不是一种逐步求精的工具,所表达的控制流,往往不受任何约束可随意转移,从而会影响甚至破坏好的系统结构

25.常见的初始需求发现技术:

自悟,需求人员把自己作为系统的最终用户,审视该系统并提出问题

交谈,为了确定系统应该提供的功能,需求人员通过提出问题/用户回答问题的方式,直接询问用户需要的是一个什么样的系统

观察,通过观察用户执行其现行的任务和过程,了解系统运行环境

小组会,举行客户和开发人员的联系会议,与客户组织的一些代表共同开发需求

提炼,复审技术文档,并提取相关的信息

26.简述结构化分析建模的基本步骤

1) 建立系统环境图,确定系统语境

2) 自顶向下,逐步求精,建立系统的层次数据流图

3) 定义数据字典

4) 描述加工

以上是关于软件工程(02333)简答题总结的主要内容,如果未能解决你的问题,请参考以下文章

软工期中测试简答题

《软件需求分析(第二版)》期末考试试题总结/复习资料

软件三级测试技术简答题

软件评测师——下午简答题类型

2022 软件测试简答题太原理工大学

——软件质量基础 重点部分总结