2017年南开大学计算机与控制工程学院计算机技术、软件工程之软件工程复试仿真模拟三套题
● 摘要
一、名词解释
1. 软件项目管理
【答案】软件项目管理是通过计划、组织和控制等一系列活动,合理地配置和使用各种资源,保证软件生命周期中的各项活动的正常的进行。软件项目管理先于任何技术活动之前开始,并且贯穿于软件的整个生命周期之中。
二、简答题
2. 软件工程的净室方法为什么没有得到广泛的使用?
【答案】(1)净室方法学太理论、太数学化,以至难于在真实的软件开发中使用。
(2)不需要进行单元测试,而是进行正确性验证和统计质量控制,与当前大多数软件开发方式背离。
(3)软件开发产业的成熟度。净室过程的使用需要在整个生命周期阶段定义的过程中严格的应用,因为大多数软件企业的运作还处于特定的阶段(级别),因此,还没有准备好应用哪些技术。
3. 试说明主动服务与被动服务的区别。
【答案】(1)主动服务
主动服务是不需要接收消息就能主动执行的服务,它在程序实现中是一个主动的程序成分,例如用于定义进程或线程的程序单位。
(2)被动服务
被动服务是只有接收到消息才执行的服务,它在编程实现中是一个被动的程序成分,例如函数、过程、例程等。
(3)区别
被动对象的服务都是被动服务,主动对象应该有至少一个主动服务。在定义服务的过程中,对于主动对象应指出它的主动服务。
4. 使用快速原型方法构造原型时,对原型有什么样的要求?
【答案】(1)原型不同于最终系统,两者在功能上的区别是最终系统要实现软件需求的全部功能,而原型只实现所选择的部分功能,最终系统对每个软件需求都是要求详细实现,而原型仅仅是为了试验和演示的,部分功能需求可以忽略或者模拟实现。
(2)在构造原型时,必须注意功能性能的取舍,忽略一切暂时不关心的部分以加速原型的实
现,同时又要充分体现原型的作用,满足评价原型的要求。
(3)在构造原型之前,必须明确运用原型的目的,从而解决分析与构造内容的取舍,还要根据构造原型的目的确定考核、评价原型的内容。
5. 在软件测试中,应注意哪些原则?
【答案】(1)测试用例应由输入数据和预期的输出数据两部分组成。这样便于对照检查,做到“有的放矢”。
(2)测试用例不仅用合理的输入数据,还要选择不合理的输入数据。这样能更多地发现错误,提高程序的可靠性。对于不合理的输入数据,程序应拒绝接收,并给出相应提示。
(3)除了检查程序是否做了它应该做的事,还应该检查程序是否做了它不应该做的事。例如程序正确打印出用户并不需要的多余信息。
(4)应定制测试计划并严格执行,排除随意性。
(5)长期保留测试用例。测试用例的设计耗费很大的工作量,必须作为文档保存。因为修改后的程序可能有新的错误,需要进行回归测试。同时,为以后的维护提供方便。
(6)对发现错误较多的程序段,应进行更深入的测试。有统计数字表明,一段程序中已发现的错误越多,其中存在的错误概率也越大。因为发现错误数越多的程序段,其质量较差。同时在修改错误过程中又容易引入新 的错误。
(7)程序员避免测试自己的程序。测试是一种“挑剔性”的行为,心理状态是测试自己程序的障碍。另外,对需求规格说明的理解而引入的错误则更难发现。因此由别的人或另外的机构来测试程序员编写的程序会更客观、更有效。
6. 什么是抽象类?在建模时有时使用抽象类有什么好处?
【答案】(1)抽象类的定义
抽象类是指没有实例的类,定义了一些抽象的操作,即不提供实现方法的操作,只提供操作的特征,并标注。
(2)使用抽象类的好处
在建模时使用抽象类使系统结构更加的清晰,增加了系统的可读性和可理解性。
7. 什么是数据流图?其作用是什么?其中的基本符合各表示什么含义?
【答案】(1)数据流图的定义
数据流图,简称DFD ,是结构化分析方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
(2)数据流图的作用
①数据流
数据流是数据在系统内部传播的路径,因此由一组成分固定的数据项组成。
②加工(又称为数据处理)
对数据流进行某些操作或变换。
③数据存储(又称为文件)
指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。
④数据源点或终点
是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。 (3)基本符号表不的含义
箭头,表示数据流。
圆或椭圆,表示加工。
双杠,表示数据存储。
方框,表示数据的源点或终点。
三、综合应用题
8. 软件的可维护性与哪些因素有关?在软件开发过程中应该采取哪些措施来提高软件产品的可维护性?
【答案】(1)软件的可维护性与软件的可理解性、可测试性、可修改性、可重用性、可移植性有关。
(2)提高软件产品的可维护性的措施有如下几点:
①建立明确的软件直连目标。
②使用先进的软件开发技术和工具。
③建立明确的质量保证。
④选择可维护的程序设计语言。
⑤改进程序文档。
9. 举例对比形式化方法和欠形式化方法的优缺点。
【答案】(1)欠形式化方法的缺点
①矛盾
矛盾是指一组相互冲突的陈述。
②二义性是指读者可以用不同方式理解的陈述。
③含糊性
例如,人们可能经常在文档中看到类似下面这样的需求:“系统界面应该是对用户友好的。”实际上,这样 笼统的陈述并没有给出任何有用的信息。
④不完整性。
如果在规格说明书中对一个命令的功能没有更多的描述,那么,这个命令的细节是严重不完整的。
⑤抽象层次混乱。
相关内容
相关标签