软件工程复习资料.docx

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

软件工程复习资料.docx

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

软件工程复习资料.docx

软件工程复习资料

即时练习

第1讲

 一、填空题

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

  2.软件危机包含下述两个方面的问题:

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

  3.软件不同于硬件,它是计算机系统中的_逻辑部件_而不是物理部件。

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

5.软件配置主要包括__程序、文档_和_数据_等成分。

  6.软件工程学的一个重要目标就是提高软件的_可维护性、减少_软件维护_的代价。

  7.软件工程是指导计算机软件__软件开发_和__维护_的一门工程学科。

  8.软件工程包括_技术_和__管理__两方面的内容,是技术与管理紧密结合所形成的工程学科。

  9.通常把在软件生命周期全过程中使用的一整套技术方法的集合称为_方法学_,也称为范型。

10.软件工程方法学包含_方法、工具和_过程_三个要素。

  11.目前使用最广泛的软件工程方法学,分别是_传统方法学和面向对象方法学__。

  12.概括地说,软件生命周期由_软件定义_、__软件开发_和__运行维护(软件维护)__3个时期组成,每个时期又进一步划分为若干个阶段。

  13.软件定义时期通常进一步划分为3个阶段,即_问题定义__、__可行性研究__和需求分析。

  14.螺旋模型将_瀑布、_模型和__快速原型_模型结合起来,加入了两种模型均忽略了的风险分析,弥补了这两种模型的不足。

  15.瀑布模型_不能_适应需求可变的软件开发,只有到_开发结束_才能见到整个软件系统。

 二、选择题:

  1.软件是一种( )产品。

  A、有形  B、逻辑  C、物质  D、消耗

  2.与计算机科学的理论研究不同,软件工程是一门(  )学科。

 A、理论性 B、工程性  C、原理性 D、心理性

  3.软件工程学科出现的主要原因是( )。

   A、计算机的发展  B、其他工程学科的影响

   C、软件危机的出现 D、程序设计方法学的影响

  4.由于软件生产的复杂性和高成本性,使大型软件的生存出现危机,软件危机的主要表现包括了下述( )方面。

   ①生产成本过高②需求增长难以满足

   ③进度难以控制④质量难以保证

   A、①②B、②③C、④D、全部

5.有关计算机程序功能、设计、编制、使用的文字或图形资料称为( )。

   A、软件B、文档C、程序D、数据

6.( )是计算机程序及期说明程序的各种文档。

  A、软件B、文档C、程序D、数据

7.问题定义阶段必须回答的关键问题是( )。

A、要解决的问题是什么B、确定目标系统必须具备哪些功能 C、怎样实现目标系统D、如何具体实现系统

三、问答题

1.简述软件危机的典型表现。

答:

(1)对软件开发成本和进度的估计常常很不准确;

  (2)用户对“已完成的”软件系统不满意的现象经常发生;(3)软件产品的质量往往靠不住;

  (4)软件常常是不可维护的;

  (5)软件通常没有适当的文档资料;

  (6)软件成本在计算机系统总成本中所占的比例逐渐上升;

  (7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。

2.什么是软件过程?

它与软件工程方法学有何关系?

  答:

软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。

软件过程定义了运用技术方法的顺序、应该交付的文档资料、为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。

 软件过程是软件工程方法学的3个重要组成部分之一。

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

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

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

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

  答:

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

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

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

  4.瀑布模型有什么优缺点?

答:

瀑布模型的优点:

可强迫开发人员采用规范的方法(例如,结构化技术);严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。

  缺点:

“瀑布模型是由文档驱动的”这个事实也是它的一个主要缺点,由于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要。

5、什么是软件危机?

软件危机包含哪些问题?

答:

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

软件危机包含两方面问题:

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

6、产生软件危机的原因主要有哪些?

答:

一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。

7、简述软件工程的7条基本原理的主要内容

答:

1)用分阶段的生命周期计划严格管理;2)坚持进行阶段评审;3)实行严格的产品控制;4)采用现代程序设计技术;5)结果应能清楚地审查;6)开发小组的人员应该少而精;7)承认不断改进软件工程实践的必要性。

 四、计算题

  1.美国一家公司在1982年计划用FORTRAN语言开发一个在VAX750计算机上运行的应用程序,估计这个程序的长度为10000条FORTRAN指令。

如果平均每人每天可以开发出10条FORTRAN指令,请问:

  (1)开发这个应用程序将用到多少人日?

  (2)假设程序员的平均工资为4000美元,每月按20个工作日计算,这个软件的成本是多少美元?

  (3)1982年VAX750计算机硬件价格约为125000美元,在那一年这个软件的成本在总成本中占多大比例?

答:

(1)10000÷10=1000(人日)

  开发这个应用程序大约需要用1000个人日。

  (2)每月平均工作20天,故开发这个软件需要用

   1000÷20=5(人月)

  每人每月的平均工资为4000美元,因此这个软件的成本大约为

   50×4000=200000(美元)

  (3)软件成本与硬件成本之和为计算机系统的总成本。

这个软件的成本在总成本中所占的比例为:

   200000÷(200000+125000)=61.5%

第2讲

 

一、填空题

  1.可行性研究阶段当从系统逻辑模型出发,探索若干种可供选择的主要解法,对每种解法都应该从__技术可行性、经济可行性_和_操作可行性__这三个方面研究每种解法的可行性。

2._可行性研究_的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。

3.可行性研究的目的不是解决问题,而是确定问题是否_值得去解决_。

4._数据流图_和__数据字典__定义了软件系统的逻辑模型,以后可以从这个逻辑模型出发设计新系统。

5._系统流程图_是概括地描绘物理系统的传统工具。

  6.系统流程图表达的是_数据__在系统各部件之间流动的情况。

  7.数据流图是一种图形化技术,它描绘__信息流_和__数据_从输入移动到输入的过程中所经爱的变换。

  8.数据流图中的圆角矩形或圆形代表着对变换数据的_处理__。

  9.数据流图有4种成分:

源点或终点、__处理_、__数据存储_和__数据流_。

  10.__数据字典_是对数据流图中包含的所有元素的定义的集合。

  11.成本/效益分析的目的正是要从__经济__角度分析开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确地作出是否投资于这项开发工程的决定。

  12.软件开发成本主要表现为__人力消耗_。

二、选择题:

1.关于数据流图下列说法中不正确的是( )。

A、在数据流图中应描绘所有可能的数据流向及数据流的条件

B、数据流图的基本要点是描绘“做什么”而不考虑“怎么做”

C、数据流图是系统的逻辑模型

D、数据流图的一个主要用途是作为分析和设计的工具

2.下列方式中,不是由数据元素组成数据方式的是(  )。

A、顺序  B、层次  C、选择  D、重复

3.在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的功能可行性角度考虑的是( )。

A、经济可性性  B、技术可行性

C、操作可行性  D、法律可行性

4.在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的成本/效益分析的是( )。

A、经济可性性  B、技术可行性

C、操作可行性  D、法律可行性

5.可行性分析中,系统流程图用于描述( )。

A、当前运行系统 B、当前逻辑模型

C、目标系统  D、新系统

6.在程序的描述和分析中,用以指明数据来源、数据流向和数据处理的辅助图形是( )。

A、瀑布模型图B、数据流图C、数据结构图D、业务图

7.数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘图方法中,( )是常采用的。

①自顶向下②自底向上③分层绘制④逐步求精

A、全是B、①③④ C、①③D、①②

 三、问答题

1.简述可行性研究过程的步骤。

答:

(1)复查系统规模和目标;(2)研究目前正在使用的系统;

 (3)导出新系统的高层逻辑模型;(4)进一步定义问题;(5)导出和评价供选择的解法;

  (6)推荐行动方针;(7)草拟开发计划;

  (8)书写文档提交审查。

2.目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。

某医院打算开发一个以计算机为中心患者监护系统,请分层次地画出描述本系统功能的数据流图。

 医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压和心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统输出某个指定病人的病情报告。

答:

从问题陈述可知,本系统的数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。

进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。

  从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。

  系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。

此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。

  为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。

此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。

  本系统的基本系统模型如下图所示,是本系统的功能级数据流图。

  

  3.某高校可用的电话号码有以下几类:

校内电话号码为4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,如果是本地电话再接着拨8位电话号码(第1位不是0),如果是外地电话则先拨3位区码,再拨8位电话号码(第1位不是0)。

请用本章所述的符号,定义上述的电话号码。

答:

电话号码=[校内电话号码|校外电话号码]

  校内电话号码=非零数字+3位数字

  校外电话号码=[本市号码|外地号码]

  本市号码=数字零+8位数字

  外地号码=数字零+3位数字+8位数字

  非零数字=[1|2|3|4|5|6|7|8|9]

  数字零=0

  3位数字=3{数字}3

  8位数字=非零数字+7位数字

  7位数字=7{数字}7

  数字=[0|1|2|3|4|5|6|7|8|9]

第3讲

 

一、填空题

  1.接口需求描述应用系统与它的环境通信的格式。

常见的接口需求有:

__用户接口需求、硬件接口需求、软件接口需求和通信接口需求。

  2._逆向__需求说明软件系统不应该做什么。

  3.访谈是最早开始使用的获取的技术,它有两种基本形式,分别是_用户需求、的_正式、非正式_的访谈。

  4.__情景分析技术__就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析,系统分析员利用这种技术,往往能获知用户的具体需求。

  5.__结构化分析方法__是面向数据流自顶向下逐步求精进行需求分析的方法。

  6.使用传统的访谈或面向数据流自顶向下求精方法定义需求时,用户处于被动地位,为了解决这个问题,人们研究出一种面向团队的需求收集法,称为简易的__应用规格说明技术_。

  7.快速原型就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。

快速原型应具备的第一个特性是__快速___、第二个特性是__容易修改__。

  8.需求分析阶段得出的最主要文档是_软件需求规格说明书__。

9.数据对象彼此之间相互连接的方式称为_联系_,也称为关系。

它分为一对一联系、_一对多_联系和_多对多_联系。

  10.ER图中包含了__实体_、_关系_和_属性_等3种基本成分。

 二、选择题:

1.需求分析( )。

A、要回答“软件必须做什么?

”B、要求编写软件需求说明书 C、系统分析员可以采用访谈、简易的应用规格说明技术获取用户需求   D、以上都对

2.需求分析阶段研究的对象是软件项目的(  )。

 A、用户需求  B、合理要求  C、模糊要求

3.在数据流图中,有名字及方向的成分是( )。

  A、控制流B、信息流C、数据流D、信号流

  4.结构化分析方法使用的描述工具( )定义了数据流图中每一个图形元素。

 A、数据流图B、数据字典C、判定表D、判定树

  5.在结构化分析方法(SA)中,与数据流图配合使用的是( )。

 A、数据流图B、数据字典C、实体联系图D、程序流程图

  6.通过( )可以完成数据流图的细化。

 A、结构分解B、功能分解C、数据分解D、系统分解

  7.需求分析过程中,对算法的简单描述记录在( )。

   A、层次图B、数据字典C、数据流图D、IPO图

8.需求分析最终结果是产生( )。

   A、项目开发计划  B、可行性分析报告

   C、需求规格说明书  D、设计说明书

  9.结构化分析(SA)最为常见的图形工具是( )。

   A、程序流程图  B、实体联系图

   C、数据流图  D、结构图

  10.下面说法错误的是( )。

   A、每个数据流必须用名词或名词短语命名

   B、每个加工必须有名字,通常是动词短语

   C、每个数据存储必须用名词或名词短语

   D、每个数据源点或终点必须有名字 

 三、问答题

1.简述可行性研究过程的步骤。

答:

(1)复查系统规模和目标;(2)研究目前正在使用的系统;(3)导出新系统的高层逻辑模型;(4)进一步定义问题;(5)导出和评价供选择的解法;(6)推荐行动方针;(7)草拟开发计划;(8)书写文档提交审查。

2.应该从哪些方面验证软件需求的正确性。

答:

对软件需求应从下述4个方面进行验证:

  (1)一致性:

所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾;

  (2)完整性:

需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能;

  (3)现实性:

指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的;

  (4)有效性:

必须证明需求是正确有效的,确实能解决用户面对的问题。

3.什么是需求分析?

需求分析阶段的基本任务是什么?

答:

需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求转换到相应的需求规格说明的过程。

  需求分析阶段的基本任务是:

  (1)确定对系统的综合要求;

  (2)分析系统的数据要求;

  (3)导出系统的逻辑模型;

  (4)修正系统开发计划。

4.什么是层次方框图?

答:

层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。

树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数据的实际数据元素(不能再分割的元素)。

5、什么是快速软件原型,它有什么特点

答:

快速软件原型是快速建立起来的旨在演示目标系统的主要功能的可行性的程序。

特点:

1)快速;2)容易修改。

第4讲

 一、填空题

1.按照形式化的程度,可以把软件工程使用的方法划分成_非形式化_ 、_半形式化_ 和__形式化_ 3类。

2.有穷_状态机_ 可以准确地描述一个系统,因此它是表达规格说明的一种形式化方法。

3.Petri网_可以有效地描述并发活动。

它包含4种元素:

一组位置P、一组转换T、输入函数I以及输出函数O。

4.Petri网的标记是在Petri网中_权标__的分配。

5.在Petri网中,当每个输入线上至少有一个权标,而_禁止_线上没有权标的时候,相应的转换才是允许的。

6、Petri网包含4种元素:

一组位置P、一组转换T、输入函数I以及输出函数O

 二、问答题:

1.对比形式化方法和欠形式化方法的优缺点。

答:

形式化与欠形式化方法相比,其优点在于:

形式化的规格说明可以用数学方法研究验证,此外形式化的规格说明消除了二义性,而且它鼓励软件开发者在软件工程过程的早期阶段使用更严格的方法,从而可以减少差错。

 形式化方法的缺点:

大多数形式化规格说明主要关注于系统的功能和数据,而问题的时序、控制和行为等方面却更难于表示。

此外,形式化方法比欠形式化方法更难学习,不仅在培训阶段要花大量的投资,而且对某些软件工程师来说,它代表了一种“文化冲击”。

第5讲

 一、填空题

1.总体设计过程通常由两个主要阶段组成,分别是__系统设计__ 阶段和__结构设计__ 阶段。

2.需求分析阶段得出的数据流图是__总体设计__ 的极好的出发点。

3.对总体设计的结果在通过技术审查后还需由使用部门的负责人从_管理_ 角度进行复审。

4.__模块化_是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能。

5._抽象__ 就是抽出事物的本质特征而暂时不考虑它们的细节。

6._逐步求精__是为了集中精力解决主要问题而尽量推迟对问题细节的考虑。

7.定性度量模块独立程序的标准是_内聚__和_耦合__。

8.耦合是对一个软件结构内不同模块之间_互连程度_ 程度的度量。

  9.__功能内聚__是最高程度的内聚。

  10.__深度___表示软件结构中控制的层数,它往往能粗略地标志一个系统的大小和复杂程度。

  11.__层次___图用于描绘软件的层次结构,图中的每一个矩形框代表一个__模块_,方框间的连线表示调用关系,而不像层次方框图那样表示组成关系。

12.通常所说的结构化设计方法,也是基于_数据流的设计方法。

13.信息流有两种类型,分别是_变换流_和__事务流_。

14.模块间还经常用带注释的短箭头表示调用过程中来回传递的信息。

有时箭头尾部带空心圆表示传递的是_数据_,带实心圆的表示传递的是_控制信息_。

15.模块之间联系越紧密,其耦合性就越_强__、模块的独立性就越_差_。

 二、选择题:

1.软件设计一般分为总体设计和详细设计,它们之间的关系是( )。

   A、全局和局部  B、抽象和具体

   C、总体和层次  D、功能和结构

2.属于软件设计的基本原理的是( )。

   A、数据流分析设计  B、变换流分析设计

   C、事务流分析设计  D、模块化

3.将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是( )。

  A、逻辑性B、瞬时性C、功能性D、通信性

4.模块内的某成分的输出是另一成分的输入,该模块的内聚度是( )的。

   A、功能性B、顺序性C、逻辑性D、瞬时性

5.软件设计阶段一般可分为( )。

 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、偶然性B、功能性C、通信性D、顺序性

12.在面向数据流的软件设计方法中,一般将信息流分为( )。

   A、变换流和事务流B、变换流和控制流

   C、事务流和控制流D、数据流和控制流

13.在多层次的结构图中,其模块的层次数称为结构图的( )。

  A、深度B、跨度C、控制域D、广度

14.( )着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。

A、程序流程图B、数据流图C、E-R图D、结构图

15.模块( ),则说明模块的独立性越强。

   A、耦合越强B、扇入数越高

   C、耦合越强D、扇入数越低

16.在对数据流的分析中,主要是找到中心变换,这是从( )导出结构图的关键。

A、数据结构B、实体关系C、数据流图D、E-R图

17.模块的独立性是由内聚性和耦合性来度量的,其中内聚性是( )。

 A、模块间的联系程度   B、模块的功能强度

 C、信息隐蔽程度  D、接口的复杂程度

18.在软件结构中,如果两个矩形之间有直接相连,表示它们存在( )关系。

   A、链接B、调用C、并列D、顺序执行

19.为了提高模块的独立性,模块内部最好是( )。

A、逻辑内聚B、时间内聚C、功能内聚D、通信内聚

20.概要设计与详细设计衔接的图形工具是( )。

A、数据流图B、结构图C、程序流程图D、PAD图

 三、问答题

1.衡量模块独立的两个标准是什么?

它们各表示什么含义?

答:

模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果。

模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。

 耦合衡量不同模块彼此间互相依赖(连接)的紧密程度;

 内聚衡量一个模块内部各个元素彼此结合的紧密程度。

2.什么是面向数据流的设计方法?

它有哪些策略。

答:

面向数据流的设计方法也称为结构化设计方法(SD),它与结构化分析(SA)相

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

当前位置:首页 > 求职职场 > 简历

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

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