软件工程复习资料.docx

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

软件工程复习资料.docx

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

软件工程复习资料.docx

软件工程复习资料

软件工程复习资料

一、简答题

、软件过程模型有哪些?

简述它们的特点。

过程模型分为五大类:

()管理过程模型。

()瀑布模型(又称为生命周期模型)。

()增量过程模型:

包括增量模型,模型。

()烟花过程模型:

包括原型开发模型,螺旋模型,协同开发模型。

()专用过程模型:

包括机遇构建的开发模型,形式化方法模型,面向方面的软件开发模型。

、什么叫软件危机?

软件危机包含哪两点?

软件危机产生的原因是什么?

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

包括两点:

()如何开发软件,以满足对软件日益增长的需求;()如何维护数量不断膨胀的已有软件。

软件开发和维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。

具体表现如下:

()软件是逻辑部件而不是物理部件。

()软件的规模越来越大,复杂性越来越大。

()轻视需求分析的重要性,轻视软件维护的错误观点和方法。

、软件开发的各阶段的任务是什么?

定义阶段:

问题定义——任务:

关于规模和目标的报告书,可行性研究——任务:

系统的高层逻辑模型:

数据流图,成本

效益分析:

需求分析——任务:

系统的逻辑模型:

数据流图,数据字典,算法描述。

开发阶段:

总体设计——任务:

系统流程图,成本效益分析,推荐的系统结构:

层次图结构图,详细设计任务:

图或图;编码和单元测试——任务:

源程序清单,单元测试方案和结果,综合测试——任务:

综合测试方案,结果集成测试,验收测试,完整一致的软件配置。

维护阶段:

软件维护——任务:

维护记录以及改正性维护,适应性维护,完整性维护和预防性维护

、两种软件工程方法学开发软件时要建立哪些模型?

软件工程方法学包括:

传统方法学和面向对象方法学。

常用的开发模型有:

瀑布模型(需求稳定,而且可以预先指定)原型模型(需求模糊或者随时间变化)

增量模型(分析员先作出需求分析和概要设计,用户参与逐步完善)螺旋模型(将瀑布模型与原型化模型结合起来并加入了风险分析)喷泉模型(使开发过程具有迭代性和无间隙性)

、什么叫软件?

软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合

、中的事物有哪些?

结构事物中的名词,它是模型的静态部分,描述概念或物理元素。

行为事物中的动词,它是模型中的动态部分,是一种跨越时间、空间的行为。

分组事物:

中的容器,用来组织模型,使模型更加的结构化。

注释事务:

中的解释部分,和代码中的注释语句一样,是用来描述模型的

、软件生命周期有哪几个阶段和步骤?

三个阶段:

定义、开发、维护

八个步骤:

问题定义、可行性研究、需求分析;总体设计、详细设计、编码与单元测试、综合测试;运行维护。

8、计算机软件的开发经过哪三个大阶段?

三个阶段:

定义、开发、维护

、什么叫软件工程?

年在第一届会议上的早期定义:

“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。

年的定义:

“①软件工程是:

把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件:

②进而研究①实现的途径”。

我们国家最近定义:

软件工程是指导计算机软件开发和维护的工程学科。

它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

10、软件设计分哪两个阶段?

总体设计的两个阶段分别是什么?

分为总体设计和详细设计两个阶段。

、瀑布模型与原型模型分别适用于开发哪些软件?

瀑布模型与原型模型分别适用于开发哪些软件瀑布模型适合于需求稳定,而且可以预先指定的大型系统工程项目。

原型模型适合于需求模糊或者随时间变化的中小型项目

、软件与硬件的区别是什么?

软件是一种逻辑部件,而不是具体的物理部件。

软件在开发、生产、使用、维护等方面与硬件相比有明显差异。

软件是开发,硬件是制造软件是自定的,硬件是组装的软件不会磨损,硬件存在机械磨损问题

、软件需求分析的任务是什么?

需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。

一般说来,需求分析的任务包括下述几方面:

()确定对系统的综合要求(主要有:

功能需求、性能需求、运行需求、将来可能提出的需求。

()分析系统的数据要求

()导出系统的逻辑模型:

数据流图、实体联系图、状态转换图、数据字典、算法流程等

()修正系统开发计划

、总体设计包括系统设计(划分出组成系统的程序、文件、数据库、人工过程和文档等物理元素)和结构设计(确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系,不涉及模块内部算法流程)

、中活动图、状态图、顺序图都分别描述什么?

活动图强调的是从活动到活动的控制流,是一种表述过程基理、业务过程以及工作流的技术。

活动图它可以用来对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模

状态机图常用来描述业务或软件系统中的对象在外部事件的作用下,对象的状态从一种状态状态机图到另一种状态的控制流。

顺序图描述的是对象之间的消息发送关系,而不是类之间的关系

、什么是软件生命周期?

一个软件从定义,开发,使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长时期称为生命周期

2、填空

、在 中定乂了四神交互圏,其中彊凋対象凋用順序的是程序图。

、在软件测试过程的个步骤中,测试依据是需求规格说明的是验收测试。

、计算机软件的开发经过三个阶段分别为:

定义、设计和运行。

、对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的输入边界,输出边界和变换中心

、软件测试的目的是发现错误,通常把测试方法按功能划分为墨盒测试和白盒测试两大类。

因为通常不可能做到穷尽测试,所以精心设计测试方案是保证达到测试目的所必须的。

、在进行软件测试时,首先应当进行单元测试,然后再进行组装测试,最后再进行有效性测试。

、软件工程的原则包括:

模块化、抽象与逐步求精、信息隐藏与局部化、模块独立。

模块耦合程度低,则说明模块的独立性越强。

、系统设计分为两个阶段分别为,设计方案与选择方案。

、软件维护的活动包括四种,改正性维护、适应性维护、完善性维护和预防性维护。

、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:

深度优先策略和宽度优先策略。

、指出是哪种语言?

过程设计语言。

、在七种内聚中属于最强的是功能内聚,最弱的是偶然内聚

三、选择题

、在用面向对象观点建立起的种模型中,是最基本、最重要、最核心的。

、动态模型、对象模型、功能模型、状态模型

、耦合是对软件结构中各个不同模块之间互相关联程度的度量。

一个模块直接访问另一个模块的内部信息应属于方式。

、控制耦合、内容耦合、数据耦合、外部耦合

、模块定义为受该模块内个判断影响的所有模块集合。

.控制域、作用域、宽度、接口

、现有一个计算类型的程序,它的输入只有一个,其范围是一≤≤。

现从输入的角度考虑设计了一组测试用例:

,,。

设计这组测试用例的方法是

、条件覆盖法、边缘值分析法、错误推测法、等价划分法

、以下哪个不是详细设计中常用的图形描述工具

、数据流图、程序流图、盒图(图)、问题分析图()

、在软件结构图的有关术语中,用于表示软件结构中控制的层数的是。

、扇出、扇入、深度、宽度

、软件设计包括、两个阶段。

、接口设计和结构设计、数据设计和概要设计

、结构设计和过程设计、概要设计和详细设计

、在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是

、概要设计、详细设计需求分析、可行性分析

.与设计测试数据无关的文档是。

.需求说明书数据说明书源程序项目开发设计

、在数据流图中,用圆或者椭圆来表示

、数据流、数据源点或终点、数据存储、加工

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

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

.在完成编码后制定软件的测试计划

.选择发现错误可能性大的数据作为测试数据

、下面不属于软件工程的基本原则的是。

、模块化、抽象、局部化、自顶向上

.需求分析是由分析员了解用户的要求,认真细致地调研。

分析,最终应建立目标系统的逻辑模型并写出。

.模块说明书软件规格说明书项目开发计划合同文档

.概要设计的结果是提供份

.模块说明书框图程序数据结构

.结构化设计是一种应用最广泛的系统设计方法,是以为基础,自顶向下,求精和模块化的过程。

.数据流数据流图数据库数据结构

.变换型和事务型是程序结构的标准形式。

从某处获得数据,再对这些数据作处理,然后将结果送出是属于。

.变换型事务型

.(图是一种工具。

.系统描述详细设计测试编程辅助

.分析员是。

.用户中系统的直接使用者.用户和软件人员的中间人

.软件的编程人员用户和软件人员的领导

.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的。

.总貌.细节.抽象.软件的作者

.数据流图中,当数据流向或流自文件时,。

.数据流要命名,文件不必命名

.数据流不必命名,有文件名就足够了

.数据流和文件均要命名,因为流出和流进数据流是不同的

.数据流和文件均不要命名,通过加工可自然反映出

.排错一般是在测试发现错误后进行,其中找到错误位置占排错总工作量的。

....

.在软件开发中,有利于发挥集体智慧的一种做法是。

设计评事.模块化.主程序员制进度控制

.结构化程序设计主要强调程序的。

.效率.速度.可读性.大小

.软件测试中设计测试实例()主要由输入数据和两部分组成。

.测试规则.测试计划.预期输出结果.以往测试记录分析

.在开发软件时,可用来提高程序员的工作效率。

.程序开发环境.操作系统的作业管理功能

.编译程序的优化功能并行运算的大型计算机

.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作。

软件投机.软件危机.软件工程.软件产生

.成功的测试是指。

.运行测试实例后未发现错误项.发现程序的错误

.证明程序正确.改正程序的错误

.系统开发的需求分析阶段的重要工作之一是。

.数据定义.数据库设计.数据维护.数据结构实现

.模块内聚联系最大的是。

.顺序内聚.功能内聚.通信内聚.时间内聚

.逆向工程在软件工程中主要用于阶段。

.分析.设计.编码.维护

.软件工程中,只根据程序的功能说明而不关心程序内部的逻辑结构的测试方法,称为测试。

.白盒法.灰盒法.黑盒法.综合法

.软件的维护是指。

.对软件的改进、适应和完善.维护正常运行

.配置新软件.软件开发期的一个阶段

.在软件的设计阶段应提供的文档是

.软件需求规格说明书.核要设计规格说明书和详细设计规格说明书

.数据字典及流程图.源程序以及源程序的说明书

.程序流程图、图和图是使用的算法表达工具。

.设计阶段的概要设计.设计阶段的详细设计.编码阶段.测试阶段

.月收入<元者免税,现用输入数元和元测试程序,则采用的是方法

边缘值分析.条件覆盖.错误推测.等价类

.软件的可维护性是指

.软件的可理解程度,程序修政的难易程度.软件文档修改的难易程度

.程序修改的难易程度.使用维护工具进行维护的难易程度

.采用黑盒法测试程序是根据

.程序的逻辑.程序的功能说明.程序中的语句.程序中的数据

.软件的可维护性是指

.软件的可理解程度,程序修政的难易程度.软件文档修改的难易程度

.程序修改的难易程度.使用维护工具进行维护的难易程度

.数据流图的小说明中描述的最基本部分是

.激发条件.加工逻辑.优先级.执行频率

四、多项选择题

.关于模块化程序设计的说法正确的五项:

()

、程序设计比较方便但难于维护。

、便于由多人分工编制大型程序。

、软件功能易于扩充。

、易于理解,也便于排错。

、在主存储器能够容纳的前提下,并使模块尽可能大,以减少模块的个数。

、模块间的接口叫做数据文件。

、只要模块之间的接口关系不变,模块内部实现细节的修政将不会影响别

、模块间的单向调用关系叫做模块的层次结构。

、模块越小,模块化的优点越明显,一般来说模块的大小都在行以下。

.从下列叙述中选出五条符合程序设计风格指导原则的叙述。

、嵌套的重数应加以限制。

、尽量少使用全局交量。

、不滥用语言特色。

、不用可以省略的括号。

、使用有意义的变量名。

、尽可能把程序编的短些。

、把常见的局部优化工作留给编译程序去做。

、注解越少越好。

、程序的格式应有助于读者理解程序。

、应尽可能多用语句。

五、分析题:

、假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。

由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。

你打算采用哪种软件生命周期模型?

为什么?

对这个项目的一个重要要求是,严格按照已对外公布了的日期完成产品开发工作,因此,选择生命周期模型时应该着重考虑哪种模型有助于加快产品开发的进度。

使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。

这个项目是开发该公司已被广泛使用的字处理软件的新版本,从上述事实至少可以得出点结论:

第一,旧版本相当于一个原型,通过收集用户对旧版本的反映,较容易确定对新版本的需求,没必要再专建立个原型系统来分析用户的需求;第二,该公司的软件工程师对字处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版字处理软件所需要的技术水平,第三,该软件受到广大用户的喜爱,今后很可能还要开发更新的版本,因此,应该把该软件的体系结构设计成开放式的,以利于今后的改进和扩充。

综上所述,采用增量模型来完成这个项目比较恰当。

、假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得的的结果应该精确到小数点后位。

一旦实现并测试完之后,改产品将被抛弃。

你打算选用哪种软件生命周期模型?

请说明你做出选择的理由。

答:

对这个软件的需求很明确,实现开方功能的算法也很成熟,因此,既无须通过原型来分析需求也无须用原型来验证设计方案。

此外,一旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。

综上所述,为了开发这个简单的软件,使用大多数人所熟悉的瀑布模型就可以了。

六、画图题:

、录入统计计算某班学生成绩画出数据流图()。

:

学生成绩表数据结构如下:

学号高数物理英语计算机法律常识总分平均分不及格门]数升留补需求功能如下:

()录入全班学生各课的考分,生成成绩表;

()检查各课成绩,修改错误,补充未录入成绩,删除非法成绩;

()计算总分,平均分,

()统计不及格门数,然后再写入升级、补考、留级,

()打印成绩通知单,交家长。

 

、一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。

对于需要再次订货的零件应该列出编号、名称、数量、价格、主要供应商等内容。

零件的出入库称为事务,通过放在库房的终端把事务报告给订货系统。

当某种零件的库存量少于库存临界值时就应该再次订货。

、办公室复印机的工作过程大致如下:

未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;

如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员排除故障,故障排除后回到闲置状态。

、画出银行储蓄系统的数据流图。

(课本作业)

 

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

当前位置:首页 > PPT模板 > 其它模板

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

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