2017年华北电力大学(保定)软件工程(同等学力加试)复试实战预测五套卷
● 摘要
一、名词解释
1. 多态性
【答案】多态性是指同一消息为不同的对象接受时,可产生完全不同的动作,利用多态性,用户可发送一个通用的消息,而将所有的实现细节都留给接受消息的对象自行决定。另外,多态性也可以指在父类中定义的属性或者 服务被子类集成后,可以具有不用的数据类型或者表现出不同的行为。
二、简答题
2. 什么是软件工程?简述软件工程的基本原理及软件工程的目标。
【答案】(1)软件工程的定义
①软件工程是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门学科。
②软件工程采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术 和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
(2)软件工程的基本原理
①用分阶段的生命周期计划严格管理。
①坚持进行阶段评审。
②实行严格的产品控制。
③采用现代程序设计技术。
④结果应能清楚地审查。
⑤开发小组的人员应该少而精。
⑥承认不断改进软件工程实践的必要性。
(3)软件工程的目标
软件工程的目标是在给定成本和进程的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性、可互操作性并满足用户需要的高质量软件产品。
3. 维护技术有哪些?
【答案】(1)面向维护的技术
面向维护的技术是在软件开发阶段用来减少错误,提高软件可维护性的技术,面向维护的技术涉及软件开发的所有阶段。
①在需求分析阶段,对用户的需求进行严格的分析定义,使之没有矛盾和易于理解,可以减
少软件中的错误。
②在设计阶段,划分模块时充分考虑将来改动或扩充的可能性。使用结构化分析和结构化设计方法,采用容 易变更的、不依赖于特定硬件和特定操作系统的设计。
③在编码阶段,采用灵活的数据结构,是程序相对独立于数据的物理结构,养成良好的程序设计风格。
④在测试阶段,尽可能多地发现错误,保存测试用例和测试数据等。
(2)维护支援技术
维护支援技术是在软件维护阶段用来提高维护作业的效率和质量的技术,维护支援技术包括下列各方面的技术:信息收集、错误原因分析、软件分析与理解、维护方案评价、代码与文档修改、修改后的确认、远距离的维护。
4. 选择面向对象程序设计语言时主要应该考虑哪些因素?
【答案】(1)将来能否占主导地位。
(2)可重用性。
(3)类库和开发环境。
(4)其他因素,包括售后服务、对运行环境的需求、集成已有软件的难易程度等。
5. 简述动态模型的特征,说明事件、事件跟踪图、状态、状态图的含义。
【答案】(1)动态模型的特征
①动态模型是与时间和变化有关的系统性质,该模型描述了系统的控制结构。
②动态模型表示了瞬时的、行为化的系统控制性质。
③动态模型关心的是系统的控制,操作的执行顺序。
④动态模型从对象的事件和状态的角度出发,表现了对象的具体行为。
⑤动态模型描述的系统属性是触发事件、事件序列、状态、事件与状态的组织。使用状态图作为描述工具。
(2)事件的含义
事件是指时刻发生的某件事情。它是某事情发生的信号,它没有持续时间,它是一种相对性的快速事件。
(3)事件跟踪图的含义
①定义
事件跟踪图侧重于表达说明发生域系统执行过程中的一个特定“场景”(即脚本),是完成系统某个功能的事件序列。
②作用
事件跟踪图用来表示事件、事件的接收对象和发送对象。各种有关事件的序列关系及由此表现出来的对象之间的交互作用可通过事件跟踪图来表达。
(4)状态的含义
对象在某个特定阶段所处的情形就是状态,它是对象行为的属性值的一种抽象。对象的属性值按照影响对象显著行为的性质将其归并到一个状态中去。状态指明了对象对输入事件的响应。事件和状态是孪生的,一事件分开两种状态,一个状态分开两个事件。
(5)状态图的含义
状态图反映了状态与事件的关系。当接收一事件时,下一状态就取决于当前状态和所接收的事件,由该事件引起的状态变化称为转换。状态图确定了由事件序列引起的状态序列。状态图描述了类中某个对象的行为,由于类的所有实例有相同的行为,那么这些实例共享同一状态图,正如它们共享相同的类性质一样。但因为各对象有 自己的属性值,因此各对象也有自己的状态,按自己的步调前进。
图 图书馆的软件结构图
6. 调试的目的是什么?调试有哪些技术手段?
【答案】(1)调试的目的
调试是在进行了成功的测试之后才开始的工作。调试的目的是确定错误的原因和位置,并改正错误,因此调试也称为纠错。
(2)调试技术
简单的调试方法
a. 在程序中插入打印语句
该方法的优点是能显示程序的动态过程,较易检查源程序中的有关信息。缺点是低效率,可能输出大量的无关的数据,发现错误带有偶然性,同时因插入打印语句要修改程序,这种修改可能会掩盖错误,改变关键的时间 关系或把新的错误引入程序。
b. 运行部分程序
有时为了测试某些被怀疑有错的程序段,整个程序反复执行多次,使很多时间浪费在执行已经是正确的程序段上。在此情况下,应设法使被测程序只执行需要检查的程序段,以提高效率。可通过注释程序或开发语言所带的调试工具来查找错误。
②归纳法调试
相关内容
相关标签