




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程学 2016 年下半年第一次作业、简答题1、需求分析的任务答:需求分析的任务主要包括以下几项: 确定目标系统的综合要求, 其中包括(目标系统 的功能、性能、运行的环境及扩展性要求) ;分析目标系统的数据要求, 其中包括 (系统平台需要哪些数据?数据间有什么关系?数据数 据及数据结构?对数据的处理逻辑关系等) ;导出目标系统的逻辑模型; 修正系统流 程图;修正系统开发计划、开发原型系统2、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,具体表现在 哪些方面?答: 1、用户对开发出的软件很难满意;2、软件产品的质量往往靠不住;3、一般软件很难维护;4、软件生产效率很低;5
2、、软件开发成本越来越大;6、软件成本与开发进度难以估计;7、软件技术的发展远远满足不了计算机应用的普及与深入的需要。、选择题1 、从下列关于结构化程序设计的叙述中选出 5 条正确的叙述。 程序设计比较方便,但比较难以维护。 便于由多个人分工编制大型程序。 软件的功能便于扩充。 程序易于理解,也便于排错。 在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。 模块之间的接口叫做数据文件。 只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响别的模块。 模块间的单向调用关系叫做模块的层次结构。 模块越小,模块化的优点越明显。一般来说,模块的大小都在 10 行以下。 答:
3、正确的叙述有、。2、供选择的答案中选出正确的答案填入下列叙述中的()内。模块内聚性用于衡量模块内部各成分之间彼此结合的紧密程度。( 1)一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该 模块的内聚性是 ( A)的。(2)将几个逻辑上相似的成分放在同一个模块中,通过模块入口处的一个判断决定执 行哪一个功能,该模块的内聚性是(B) 的。( 3)模块中所有成分引用共同的数据,该模块的内聚性是(C)。(4)模块内的某成分的输出是另一些成分的输入,该模块的内聚性是(D )的。( 5)模块中所有成分结合起来完成一项任务,该模块的内聚性是( E)的。它具有简明的外部界面,由它构成的软件
4、易于理解、测试和维护。供选择的答案:A E: 功能内聚 过程内聚 信息内聚 通信内聚 偶然内聚 时间内聚 逻辑内聚答: A.偶然内聚 ;B. 逻辑内聚 ;C. 通信内聚 ; D.过程内聚 ;E. 功能内聚3、从下列叙述中选出 5 条符合程序设计风格指导原则的叙述。 嵌套的重数应加以限制。 尽量多使用临时变量。 不滥用语言特色。 不用可以省略的括号。 使用有意义的变量名。 应尽可能把程序编得短些。 把常见的局部优化工作留给编译程序去做。 注解越少越好。 程序的格式应有助于读者理解程序。 应尽可能多用 GOTO语句。答:、是正确的4、由 Rumbaugh 等人提出的一种面向对象方法叫做对象模型化技
5、术(OMT ),即三视点技术,它要求把分析时收集的信息建立在下述3 个模型中:第一个模型是( A ) 它的作用是描述系统的静态结构, 包括构成系统的对象和类、它们的属性和操作,以及它们这间的联系。第二个模型是( B) 它描述系统的控制逻辑,主要涉及系统中各个对象和类的时 序及变化状况。 ( B)包括两种图,即( C)和( D)。( C)描 述每一类对象的行为, ( D)描述发生于系统执行过程中的某 一特定场景。第三个模型是( E) 它着重于描述系统内部的数据的传送与处理,它由多个数据 流组成。供你选择的答案如下:A, B,E: 数据模型 功能模型 行为模型 信息模型 原型 动态模型 对象模型
6、逻辑模型 控制模型 仿真模型C,D:对象图概念模型图 状态迁移图数据流程图时序图 事件追踪图控制流程图逻辑模拟图 仿真图 行为图答: A, B. , C., D., E. 。5、从下列叙述中选出 5 条与提高软件的可移植性有关的叙述。 把程序中与计算机硬件特性有关的部分集成在一起。 选择时间效率和空间效率高的算法。 使用结构化的程序设计方法。 尽量用高级语言编写程序中对效率要求不高的部分。 尽可能减少注释。 采用表格控制方式。 文档资料详尽、正确。 在有虚拟存储器的计算机系统上开发软件。 减少程序中对文件的读写次数。 充分利用宿主计算机的硬件特性。 答:正确的叙述有、。为了提高软件的可移植性,
7、 应当尽可能用高级语言编写源程序代码。 对于与硬件或操作 系统有关的部分,或对效率要求很高的部分,应当为它们建立专门的模块, 将用汇编语言写的程序封装在这些模块中, 与程序中其他 部分以事先约定的标准方式接口。 这样, 一旦硬件环境或操作系统环境发生变化, 只需修改 这个别模块即可。采用表格控制方式,将所有的外部设备接口或与其他系统的接口,包括信息传补递、 驱动程序入口等都用表格控制, 即使将来硬件、 相关软件发生的变化, 只需修改表格中的登 记项,原来的程序一律可以不改。为了将来修改方便, 不致于引入新的错误,相关文档一定要齐全、 正确,程序必须有必 要的注释, 并使用如结构化程序设计方法这
8、样的良好程序设计方法来编写程序。 至于算法选 择,与效率有关,与可移植性无关。其他叙述,如、,都不利于可移植性。 三、论述题1. 论述瀑布模型软件开发方法的基本过程。答:瀑布模型软件开发方法将软件开发分成四个时期八个阶段:分析时期:1) 问题定义 - 问题性质、工程目标及规模2) 可行性研究 - 技术上、经济上、社会上是否有可行解?3) 需求分析 - 确定目标系统必须具备的功能? 设计时期:4) 总体设计 - 1). 几种求解方案; 2).设计软件的结构5) 祥细设计 - 设计出程序的祥细规格说明编码与测试时期:6) 编码与单元测试 - 程序编码实现与模块测试7) 综合测试 - 集成测试和验收
9、测试运行与维护时期:8) 维护 - 改正性维护、适应性维护、完善性维护、预防性维护 特点:下导式开发、追溯式确认、适合能事先确切定义需求的软件开发2. 为什么软件需要维护?维护有哪几种类型?简述它们的维护过程。 答:在软件开发成这交付用户使用后, 为了保证软件在一个相当长的是时期有够正常运 行,不需要对软件进行维护。 软件维护的为类型有 4 种:改正性维护、 适应性维护、 完善性维护和预防性维护。 其中,改正性维护是要改正正在特定的使用条件下暴露出来 的一些潜在程序错误或设计缺陷; 适应性维护是要在软件使用过程中数据环境发生变化 或处理环境发生变化时修改软件以适应这种变化; 完善性维护是用户和
10、数据处理人员使 用软件过程中提出改进现有功能、 增加新的功能, 以及改善总体性能的要求后, 修改软 件以把这些要求纳入到软件之中。由这些原因引起折维护活动可以归为以下几类:预防性维护是为了提高软件的可维护 性、可靠性等, 事先采用先进的软件工程方法对面要维护的软件或软件中的某一部分(重新)进行设计、编制和测试,为以后进一步改进软件打下良好的基础。软件维护的过程第一步是先确认维护要求。 这需要维护人员与用户反复协商, 弄清错误 概况及对业务的影响大小, 以及用户希望做什么样的修改, 并把这些情况存入故障数据 库。然后,由维护组织管理员确认维护类型。对于改正维护申请, 从评价错误的严重性开始工作。
11、 如果存在严重的错误, 则必须安排 人员,在系统监督员的指导下,进行问题 分析,寻找错误发生的原因,进行“救火” 性的紧急维护; 对于不严重的错误, 可根据任务、 机时情况, 视轻重缓急, 进行排队, 统一安排时间。对于适应性维护和完善性维护申请,需要先确定每项申请的优先次序。 若某项早请的优先级非常高, 就可立即开始维工作, 否则, 维护申请和其他的开发工作 一样, 进行排队,统一安排时间。并不能所有的完善性维护申请都必须承担,因为进行 完善性维护等于是做二次开发, 工作量大, 所以需要根据商业需要、 可利用资源的情况、 目前和将来软件的发展 向以及其他考虑, 决定是否承担。 尽管维护申请的
12、类型不同, 但都要进行同样的技 术工作。这此工作有修改软件的需求说明,修改软件设计、设计评审、 对源程做必要的 修改、单元测试、集成测试(回归测试) 、确认测试、软件配置评审等。在每次软件维 护任务完成后,最好进行一次情况评审,对以下问题做一总结:( 1) 在目前情况下,设计、编码、测试中的哪一方面可以改进?( 2) 哪些维护资源应该有但没有?( 3)工作中主要的或次要的障碍是什么?( 4)从维护申请的类型来看是否应当有预防性维护? 情况评审对将来的维护工作如何进行会产生重要的影响, 并可为软件机构的效管理提供 重要的反馈信息。3. 软件复杂性有哪几类?软件复杂性度量模型应遵循哪些则?答: K
13、.Magel 从 6个方面描述软件的复杂性:( 1)理解程序的难度。(2)改错及维护程序的难度。(3)向他人解释程序的难度。 (4)按指定方法修改程序的难度。(5)根据设计文档编写程序的工作量。( 6)执行程序时需要资源的程度。 软件复杂性度量模型应遵循的基本原则:( 1)软件复杂性与程序大小的关系不是线性的。( 2)控制结构复杂的程序较复杂。( 3)数据结构复杂的程序较复杂。(4)转向语句使用不当的程序较复杂。( 5)循环结构比选择结构复杂,选择结构又比顺序结构复杂。( 6)语句、数据、子程序和模块在程序中的次序对软件复杂性都有影响。(7)全程变量、非局部变量较多时程序较复杂。(8)参数按地
14、址传递比按值传递更复杂。( 9)函数副作用比显式参数传递更难以琢磨。( 10)具有不同作用的变量共用一个名字时较难理解。 (11)模块间或过程联系密切的程序较复杂。( 12)嵌套深度越深程序越复杂。最典型的两种程序复杂性度量的方法中, McCabe环路复杂性度量就是针对基本原则 ( 2) 制定的度量模型。 Halstead 软件科学则是针对程序中操作符和操作数的出现频度而制 定的度量模型。4. 简述面向对象 OMT 方法的分析模型,描述面向对象分析的大体过程。答: OMT是一种软件工程方法学,支持整个软件生存周期。它覆盖了问题构成、分析、 设计和实现等阶段。 统分析阶段涉及对应用领域的理解及问
15、题域建模。 分析阶段的输入 是问题陈述说明要解决的问题并提供了对假想系统的概念总览 同用户不断对话以及 对客观世界背景知识的了解作为分析的附加输入 分析的结果是一个形式化模型 该 模型概括了系统的 3 个本质因素 : 对象及对象之间的关系、动态的控制流以及带有约束 的功能数据变换。系统设计阶段确定整个系统的体系结构。系统可由多个子系统组成, 把对象组织成聚集并发任务而反映并发性对动态模型中处理的相互通信、 数据存储及实 现要制定全面的策略。 在权衡设计方案时要建立优先顺序。 对象设计阶段要精心考虑和 细化分析模型 然后优化地生成一个实际设计。 对象设计的重点从应用域概念转到计算 机概念上来应选
16、择基本算法来实现系统中各主要功能。OMT方法学是组织开发的一种过程。这种过程是建立在一些协调技术之上的OMT方法的基础是开发系统的 3 个模型 再细化这 3 种模型并优化以构成设计。 对象模型由系统中的对象及其关系组成动态模型描 述系统中对象对事件的响应及对象间的相互作用功能模型则确定对象值上的各种变换 及变换上的约束。5. 软件配置管理的任务是什么?描述作为基线的软件配置项(SCI)的修改过程模型。答:软件配置管理的任务:标识、版本控制、变化控制、配置审计及报告。作为基线的软件配置项( SCI)的修改过程模型:修改认可提取 SCM四、 设被测试的程序段为: begin S1; if (x=0
17、) and ( y2 ) then S2; elseIf ( x 1 ) or ( y=1 ) then S3;S4;end可供选择的测试数据组为:X y01-133221找出实现 ( 1)条件覆盖 (2)路径覆盖要至少采用的数据组。答: 1、条件覆盖:每个语句至少执行一次,并且使判定表达式中的每个条件都取到各 种可能的结果。第一个判定表达式可能的结果: x=0, x0,y2,y=2 第二个判定表达式可能的结果: x=1,y=1,y1;测试数据组:I x=0, y2II x0,y=1,y1III x0,y=2,x1,y1五、图 4.9 是两个程序流程图,试分别用 N S图和 PAD表示,并计算
18、它们的 McCabe复杂性分别表示为 L1( a c e)、L2( a bd)、L3( a b e)和 L4(a cd), 或简写成 ace、 abd、abe、及 acd。由于覆盖测试的目标不同, 逻辑覆盖方法可以分为语句覆盖、 判定覆盖、 条件覆盖、 判定条件覆盖、 条件组合覆盖和路径覆盖。 从备选的答案中选择适当的测试用 例与之匹配:(A) 属于语句覆盖; (B)、(C)属于判定覆盖; ( D)、(E)属于条件覆盖; (F)、(G)属于 判定条件覆盖; (H)属于条件组合覆盖; (I )属于路径覆盖。供选择的答案:A I :【(2,0,4),(2,0,3)】覆盖ace;【(1,1,1),(1,1,1)】覆盖abd;【(1,0,3),(1 ,0,4) 】覆盖abe;【(2,1,1),(2 ,1,2) 】覆盖abe;【(2,0,4),(2 ,0,3)】覆盖ace;【(2,1,1),(2,1,2)】覆盖abe;【(3,0,3),(3,1,1)】覆盖acd;【(2,0,4),(2,0,3)】覆盖ace;【(1,0,1),(1,0,1)】覆盖abd;【(2,1,1),(2,1,2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四年级学习探秘
- 图木舒克职业技术学院《奥尔夫与柯达伊音乐教学法》2023-2024学年第二学期期末试卷
- 湘西市重点中学2025年高三下学期期末模拟英语试题含解析
- 平利县2025年数学四下期末统考模拟试题含解析
- 山东省潍坊市昌邑市2025届小升初模拟数学测试卷含解析
- 山东省宁津县市级名校2024-2025学年初三年级第二学期语文试题周练一(含附加题)含解析
- 上海市浦东新区2024-2025学年高三下学期期末考试(生物试题文)试题含解析
- 江苏省南通市海安市2025届初三下学期尖子生物理试题含解析
- 上海市度嘉定区2024-2025学年高中毕业班第二次模拟(语文试题文)试卷含解析
- 2025年营养师职业资格考试试题及答案
- GB/Z 41921-2022视障者用辅助器具盲道
- GB/T 20501.1-2013公共信息导向系统导向要素的设计原则与要求第1部分:总则
- PEP-3心理教育量表-评估报告
- 断指再植术后护理及血运观察课件
- 人工髋关节置换术后的护理 课件
- 九州通集团简介
- 五年级语文下册第七单元【教材解读】-【单元预习课】课件
- 移液器(枪)容量内部校核记录
- 市场管理及产品规划课件培训课件(PPT-202张)
- 超深水油田开发及水下生产系统概述-37页的简介
- 太湖县赵氏宗谱编纂理事会章程
评论
0/150
提交评论