ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:94.60KB ,
资源ID:7533656      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7533656.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程复习资料.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件工程复习资料.docx

1、软件工程复习资料即时练习第1讲一、 填空题 软件危机是指在计算机软件的_开发和维护_过程中所遇到的一系列严重问题。 软件危机包含下述两个方面的问题:一是 _如何开发软件,以满足对软件日益增长的需求;二是 _如何维护数量不断膨胀的已有软件_ 。 软件不同于硬件,它是计算机系统中的 _逻辑部件_ 而不是物理部件。 一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把这个漫长的时期称为 _生命周期_ 。软件配置主要包括 _程序、 文档_和_数据_ 等成分。 软件工程学的一个重要目标就是提高软件的 _可维护性 、减少 _软件维护_ 的代价。 软件工程是指导计算机软件 _软件开

2、发_ 和 _维护_ 的一门工程学科。 软件工程包括 _技术_ 和 _管理_ 两方面的内容,是技术与管理紧密结合所形成的工程学科。 通常把在软件生命周期全过程中使用的一整套技术方法的集合称为 _方法学_ ,也称为范型。 软件工程方法学包含_方法、工具 和_过程_ 三个要素。 目前使用最广泛的软件工程方法学,分别是 _传统方法学 和 面向对象方法学_ 。 概括地说,软件生命周期由 _软件定义_ 、 _软件开发_ 和 _运行维护(软件维护)_ 个时期组成,每个时期又进一步划分为若干个阶段。 软件定义时期通常进一步划分为个阶段,即 _问题定义_ 、 _可行性研究_ 和需求分析。、 螺旋模型将 _瀑布、

3、_ 模型和 _快速原型_ 模型结合起来,加入了两种模型均忽略了的风险分析,弥补了这两种模型的不足。 瀑布模型 _不能_ 适应需求可变的软件开发,只有到 _开发结束_ 才能见到整个软件系统。二、 选择题: 软件是一种()产品。、有形、逻辑、物质、消耗 与计算机科学的理论研究不同,软件工程是一门()学科。、理论性、工程性、原理性、心理性 软件工程学科出现的主要原因是()。、计算机的发展、其他工程学科的影响、软件危机的出现、程序设计方法学的影响 由于软件生产的复杂性和高成本性,使大型软件的生存出现危机,软件危机的主要表现包括了下述()方面。生产成本过高 需求增长难以满足进度难以控制 质量难以保证、

4、B、 C、 D、全部 有关计算机程序功能、设计、编制、使用的文字或图形资料称为()。、软件 B、文档 C、程序 D、数据 ()是计算机程序及期说明程序的各种文档。、软件 B、文档 C、程序 D、数据 问题定义阶段必须回答的关键问题是()。、要解决的问题是什么 B、确定目标系统必须具备哪些功能、怎样实现目标系统 、如何具体实现系统 三、 问答题 简述软件危机的典型表现。答:()对软件开发成本和进度的估计常常很不准确;()用户对“已完成的”软件系统不满意的现象经常发生;()软件产品的质量往往靠不住;()软件常常是不可维护的;()软件通常没有适当的文档资料;()软件成本在计算机系统总成本中所占的比例

5、逐渐上升;()软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。什么是软件过程?它与软件工程方法学有何关系?答:软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件过程定义了运用技术方法的顺序、应该交付的文档资料、为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。软件过程是软件工程方法学的个重要组成部分之一。假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得到的结果应该精确到小数点后位。一旦实现并测试完之后,该产品将被抛弃。你打算选用哪种软件生命周期模型?请说明你作出选择的理由。答:

6、对这个软件的需求很明确,实现开平方功能的算法也很成熟,因此,既无须通过原型来分析需求也无须用原型来验证设计方案。此外,一旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助开提高软件可维护性的增量模型或螺旋模型来开发该软件。 综上所述,为了开发这个简单的软件,使用大多数人所熟悉的瀑布模型就可以了。 瀑布模型有什么优缺点?答:瀑布模型的优点:可强迫开发人员采用规范的方法(例如,结构化技术);严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 缺点:“瀑布模型是由文档驱动的”这个事实也是它的一个主要缺点,由于瀑布模型几乎完全依赖于书面的规格说明,很可

7、能导致最终开发出的软件产品不能真正满足用户的需要。5、什么是软件危机?软件危机包含哪些问题?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。软件危机包含两方面问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。6、产生软件危机的原因主要有哪些?答:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。7、简述软件工程的条基本原理的主要内容答:1)用分阶段的生命周期计划严格管理;2)坚持进行阶段评审;3)实行严格的产品控制;4)采用现代程序设计技术;5)结果应能清楚地审查;6)开发小组的人员应该少而精;7)承认不断改进软件工程实

8、践的必要性。四、 计算题 美国一家公司在1982年计划用FORTRAN语言开发一个在VAX750计算机上运行的应用程序,估计这个程序的长度为10000条FORTRAN指令。如果平均每人每天可以开发出10条FORTRAN指令,请问:()开发这个应用程序将用到多少人日?()假设程序员的平均工资为4000美元,每月按20个工作日计算,这个软件的成本是多少美元?()1982年VAX750计算机硬件价格约为125000美元,在那一年这个软件的成本在总成本中占多大比例?答:()1000010=1000(人日)开发这个应用程序大约需要用1000个人日。()每月平均工作20天,故开发这个软件需要用100020

9、=5(人月)每人每月的平均工资为4000美元,因此这个软件的成本大约为504000200000(美元)()软件成本与硬件成本之和为计算机系统的总成本。这个软件的成本在总成本中所占的比例为:200000(200000+125000)=61.5%第2讲一、 填空题 可行性研究阶段当从系统逻辑模型出发,探索若干种可供选择的主要解法,对每种解法都应该从 _技术可行性、经济可行性_和 _操作可行性_ 这三个方面研究每种解法的可行性。 _可行性研究_ 的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。 可行性研究的目的不是解决问题,而是确定问题是否 _值得去解决_ 。 _数据流图_ 和 _数据

10、字典_ 定义了软件系统的逻辑模型,以后可以从这个逻辑模型出发设计新系统。_系统流程图_是概括地描绘物理系统的传统工具。 系统流程图表达的是 _数据_ 在系统各部件之间流动的情况。 数据流图是一种图形化技术,它描绘 _信息流_ 和 _数据_ 从输入移动到输入的过程中所经爱的变换。 数据流图中的圆角矩形或圆形代表着对变换数据的 _处理_ 。 数据流图有种成分:源点或终点、 _处理_ 、 _数据存储_ 和 _数据流_ 。 _数据字典_ 是对数据流图中包含的所有元素的定义的集合。 成本效益分析的目的正是要从 _经济_ 角度分析开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确地作出是否投资于这

11、项开发工程的决定。 软件开发成本主要表现为 _人力消耗_ 。二、 选择题: 关于数据流图下列说法中不正确的是()。、在数据流图中应描绘所有可能的数据流向及数据流的条件、数据流图的基本要点是描绘“做什么”而不考虑“怎么做”、数据流图是系统的逻辑模型、数据流图的一个主要用途是作为分析和设计的工具 下列方式中,不是由数据元素组成数据方式的是()。、顺序、层次、选择、重复 在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的功能可行性角度考虑的是()。、经济可性性、技术可行性、操作可行性、法律可行性 在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的成本/效益分析的是()

12、。、经济可性性、技术可行性、操作可行性、法律可行性 可行性分析中,系统流程图用于描述()。、当前运行系统B、当前逻辑模型C、目标系统D、新系统 在程序的描述和分析中,用以指明数据来源、数据流向和数据处理的辅助图形是()。、瀑布模型图 B、数据流图 C、数据结构图 D、业务图 数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘图方法中,()是常采用的。自顶向下 自底向上 分层绘制 逐步求精、全是 B、 、三、 问答题 简述可行性研究过程的步骤。答:()复查系统规模和目标;()研究目前正在使用的系统;()导出新系统的高层逻辑模型;()进一步定义问题;()导出和评价供选择的解法;()推荐行动

13、方针;()草拟开发计划;()书写文档提交审查。 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。某医院打算开发一个以计算机为中心患者监护系统,请分层次地画出描述本系统功能的数据流图。医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压和心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统输出某个指定病人的病情报告。答:从问题陈述可知,本系统的数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分

14、析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。 从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。 系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。本系统的基本系统模型如下图所示,是本系统的功能级数据流图。 某高校可用的电话号码有以下几类

15、:校内电话号码为位数字组成,第位数字不是;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨,如果是本地电话再接着拨位电话号码(第位不是),如果是外地电话则先拨位区码,再拨位电话号码(第位不是)。请用本章所述的符号,定义上述的电话号码。答:电话号码校内电话号码校外电话号码校内电话号码非零数字位数字校外电话号码本市号码外地号码本市号码数字零位数字外地号码数字零位数字位数字非零数字数字零位数字数字位数字非零数字位数字位数字数字数字第3讲一、 填空题 接口需求描述应用系统与它的环境通信的格式。常见的接口需求有: _用户接口需求、硬件接口需求、软件接口需求和通信接口需求。 _逆向_ 需求说明软件系

16、统不应该做什么。 访谈是最早开始使用的获取 的技术,它有两种基本形式,分别是 _用户需求、的_正式、非正式_的访谈。 _情景分析技术_ 就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析,系统分析员利用这种技术,往往能获知用户的具体需求。 _结构化分析方法_ 是面向数据流自顶向下逐步求精进行需求分析的方法。 使用传统的访谈或面向数据流自顶向下求精方法定义需求时,用户处于被动地位,为了解决这个问题,人们研究出一种面向团队的需求收集法,称为简易的 _应用规格说明技术_ 。 快速原型就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。快速原型应具备的第一个特性是 _快速_ 、第二个

17、特性是 _容易修改_ 。 需求分析阶段得出的最主要文档是_软件需求规格说明书_ 。 数据对象彼此之间相互连接的方式称为_联系_ ,也称为关系。它分为一对一联系、 _一对多_ 联系和 _多对多_ 联系。 ER图中包含了 _实体_、_关系_ 和 _属性_ 等3种基本成分。二、 选择题: 需求分析()。、要回答“软件必须做什么?”、要求编写软件需求说明书、系统分析员可以采用访谈、简易的应用规格说明技术获取用户需求、以上都对 需求分析阶段研究的对象是软件项目的()。、用户需求、合理要求、模糊要求 在数据流图中,有名字及方向的成分是()。、控制流 、信息流 、数据流 、信号流 结构化分析方法使用的描述工

18、具()定义了数据流图中每一个图形元素。、数据流图 、数据字典 、判定表 、判定树 在结构化分析方法()中,与数据流图配合使用的是()。、数据流图 、数据字典 、实体联系图 、程序流程图 通过()可以完成数据流图的细化。、结构分解 B、功能分解 C、数据分解 D、系统分解 需求分析过程中,对算法的简单描述记录在()。、层次图 B、数据字典 C、数据流图 D、IPO图 需求分析最终结果是产生()。、项目开发计划、可行性分析报告、需求规格说明书、设计说明书 结构化分析()最为常见的图形工具是()。、程序流程图、实体联系图、数据流图、结构图 下面说法错误的是()。、每个数据流必须用名词或名词短语命名、

19、每个加工必须有名字,通常是动词短语、每个数据存储必须用名词或名词短语、每个数据源点或终点必须有名字三、 问答题 简述可行性研究过程的步骤。答:()复查系统规模和目标;()研究目前正在使用的系统;()导出新系统的高层逻辑模型;()进一步定义问题;()导出和评价供选择的解法;()推荐行动方针;()草拟开发计划;()书写文档提交审查。 应该从哪些方面验证软件需求的正确性。答:对软件需求应从下述个方面进行验证:()一致性:所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾;()完整性:需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能;()现实性:指定的需求应该是用现有的硬件技术和软

20、件技术基本上可以实现的;()有效性:必须证明需求是正确有效的,确实能解决用户面对的问题。 什么是需求分析?需求分析阶段的基本任务是什么?答:需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求转换到相应的需求规格说明的过程。 需求分析阶段的基本任务是:()确定对系统的综合要求;()分析系统的数据要求;()导出系统的逻辑模型;()修正系统开发计划。 什么是层次方框图?答:层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各

21、个框代表组成这个数据的实际数据元素(不能再分割的元素)。5、什么是快速软件原型,它有什么特点答:快速软件原型是快速建立起来的旨在演示目标系统的主要功能的可行性的程序。特点:1)快速;2)容易修改。第4讲一、 填空题 按照形式化的程度,可以把软件工程使用的方法划分成 _非形式化_、 _半形式化_和 _形式化_类。 有穷 _状态机_可以准确地描述一个系统,因此它是表达规格说明的一种形式化方法。 Petri网_可以有效地描述并发活动。它包含种元素:一组位置、一组转换、输入函数以及输出函数。 Petri网的标记是在Petri网中_权标_的分配。 在Petri网中,当每个输入线上至少有一个权标,而 _禁

22、止_线上没有权标的时候,相应的转换才是允许的。6、Petri网包含4种元素:一组位置P、一组转换T、输入函数I以及输出函数O二、 问答题: 对比形式化方法和欠形式化方法的优缺点。答:形式化与欠形式化方法相比,其优点在于:形式化的规格说明可以用数学方法研究验证,此外形式化的规格说明消除了二义性,而且它鼓励软件开发者在软件工程过程的早期阶段使用更严格的方法,从而可以减少差错。形式化方法的缺点:大多数形式化规格说明主要关注于系统的功能和数据,而问题的时序、控制和行为等方面却更难于表示。此外,形式化方法比欠形式化方法更难学习,不仅在培训阶段要花大量的投资,而且对某些软件工程师来说,它代表了一种“文化冲

23、击”。第5讲一、 填空题 总体设计过程通常由两个主要阶段组成,分别是 _系统设计_阶段和 _结构设计_阶段。 需求分析阶段得出的数据流图是 _总体设计_的极好的出发点。 对总体设计的结果在通过技术审查后还需由使用部门的负责人从 _管理_角度进行复审。 _模块化_是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能。 _抽象_就是抽出事物的本质特征而暂时不考虑它们的细节。_逐步求精_是为了集中精力解决主要问题而尽量推迟对问题细节的考虑。定性度量模块独立程序的标准是_内聚_和_耦合_。 耦合是对一个软件结构内不同模块之间 _互连程度_程度的度量。 _功能内聚_是最高程度的内聚。 _深度

24、_表示软件结构中控制的层数,它往往能粗略地标志一个系统的大小和复杂程度。 _层次_图用于描绘软件的层次结构,图中的每一个矩形框代表一个 _模块_,方框间的连线表示调用关系,而不像层次方框图那样表示组成关系。 通常所说的结构化设计方法,也是基于_数据流的设计方法。 信息流有两种类型,分别是_变换流_和_事务流_。 模块间还经常用带注释的短箭头表示调用过程中来回传递的信息。有时箭头尾部带空心圆表示传递的是_数据_,带实心圆的表示传递的是_控制信息_。 模块之间联系越紧密,其耦合性就越_强_、模块的独立性就越_差_。二、 选择题: 软件设计一般分为总体设计和详细设计,它们之间的关系是()。、全局和局

25、部、抽象和具体、总体和层次、功能和结构 属于软件设计的基本原理的是()。、数据流分析设计、变换流分析设计、事务流分析设计、模块化 将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是()。、逻辑性 、瞬时性 、功能性 、通信性 模块内的某成分的输出是另一成分的输入,该模块的内聚度是()的。、功能性 、顺序性 、逻辑性 、瞬时性 软件设计阶段一般可分为()。、逻辑设计与功能设计、概要设计与详细设计、概念设计与物理设计、模型设计与程序设计 模块中所有成分引用共同的数据,该模块的内聚度是()的。、逻辑性 、瞬时性 、功能性 、通信性 好的软件结构应该是()。、高耦合,高内聚 、低耦合,高内聚、高耦

26、合,低内聚 、低耦合,低内聚 结构分析方法就是面向()自顶向下逐步求精进行需求分析的方法。、目标 、数据流 、功能 、对象 下列耦合中,()的耦合性最强。、公共耦合 、数据耦合 、控制耦合 、内容耦合 一个模块把开关量作为参数传递给另一模型,这两个模块之间的耦合是()。、外部耦合 、数据耦合 、控制耦合 、内容耦合 块内联系中,()块内联系最强。、偶然性 、功能性 、通信性 、顺序性 在面向数据流的软件设计方法中,一般将信息流分为()。、变换流和事务流 、变换流和控制流、事务流和控制流 、数据流和控制流 在多层次的结构图中,其模块的层次数称为结构图的()。、深度 、跨度 、控制域 、广度 ()

27、着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。、程序流程图 、数据流图 、图 、结构图 模块(),则说明模块的独立性越强。、耦合越强 、扇入数越高、耦合越强 、扇入数越低 在对数据流的分析中,主要是找到中心变换,这是从()导出结构图的关键。、数据结构 、实体关系 、数据流图 、图 模块的独立性是由内聚性和耦合性来度量的,其中内聚性是()。、模块间的联系程度、模块的功能强度、信息隐蔽程度、接口的复杂程度 在软件结构中,如果两个矩形之间有直接相连,表示它们存在()关系。、链接 、调用 、并列 、顺序执行 为了提高模块的独立性,模块内部最好是()。、逻辑内聚 、时间内聚 、功能内聚 、通信内聚 概要设计与详细设计衔接的图形工具是()。、数据流图 、结构图 、程序流程图 、图三、 问答题衡量模块独立的两个标准是什么?它们各表示什么含义?答:模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果。模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。耦合衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚衡量一个模块内部各个元素彼此结合的紧密程度。 什么是面向数据流的设计方法?它有哪些策略。答:面向数据流的设计方法也称为结构化设计方法(SD),它与结构化分析(SA)相

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

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