A.程序设计方法学的影响
B.其它工程科学的影响
C. 软件危机的出现
D.计算机的发展
//ps:以上都是标准答案
三、判断题(每题1分,共20分)
1、软件危机的主要表现是软件需求增加,软件价格上升(×)
2、软件工程学科出现的主要原因是软件危机的出现(√)
3、与计算机学科的理论研究不同,软件工程是一门原理性学科(×)
4、瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰(×)
5、软件过程改进也是软件工程的范畴(√)
6、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据(×)
7、需求规格说明书描述了系统每个功能的实现(√)
8、用例模型的基本组成部件是用例、角色和用例之间的联系(×)
9、顺序图描述对象之间的交互关系,重点描述对象间消息传递的时间顺序(×)
10、UML语言支持面向对象的主要概念,并与具体的开发过程相关(×)
11、需求有效性验证是要检验需求能否反映客户的意愿。(√)
12、需求文档中内容的详细程度,取决于所要开发系统的类型和用户的业务水平。(×)
13、使用图形模型描述需求中的当需要表示状态的变化或需要描述行为序列的时候是非常有效的。(√)
14、需求是变化的,但软件是灵活的,总可以满足需求。(×)
15、UML不是一个开发过程,也不是一个方法,但允许任何一种开发过程和方法都可使用它。(√)
16、交互模型用于描述系统和相关系统之间的联系。(×)
17、事件驱动模型描述一个动作的序列,该动作序列涉及输入数据的处理和相关输出的产生。(×)
18、活动图为数据处理的过程建模。(√)
19、对管道和过滤器体系结构风格来说,特别重要的是过滤器必须是独立的实体。(√)
20、客户-服务器体系结构中,由许多分布式处理器构成的网络系统可提供更有效的使用。(√)
//ps:以上都是标准答案
四、简答论述题(本题20分,任选4题)
1、软件设计的目标是什么?
软件设计的目标是,获取能够满足软件需求的、明确的、可行的、高质量的软件解决方案。“明确”是指,软件设计模型易于理解,软件构造者在设计方案的实现过程中,勿需再面对影响软件功能和质量的技术抉择或权衡。“可行”是指,在可用的技术平台和软件项目的可用资源条件下,采用预定的程序设计语言可以完整地实现该设计模型。“高质量”是指,设计模型不仅要给出功能需求的实现方案,而且要使该方案适应非功能需求的约束;设计模型要尽量优化,以确保依照设计模型构造出来的目标软件产品(在排除软件构造阶段引入的影响因素后)能够表现出良好的软件质量属性,尤其是正确性、有效性、可靠性和可修改性。
//ps:非标准答案,仅供参考
2、瀑布模型是软件工程中应用最广泛的过程模型,试述采用瀑布模型进行软件开发的基本过程,该过程有何特点?