《软件工程答案版》由会员分享,可在线阅读,更多相关《软件工程答案版(8页珍藏版)》请在金锄头文库上搜索。
1、2、任何计算机系统均由(硬件)和(软件)两部分组成。3、通常使用软件生命周期模型简洁地描述软件过程。(增量模型)等等。二、填空题:1、软件工程包括技术和管理两方面内容,是(技术)与(管理)紧密结合所形成的工程学科。管理就是通过(组织)和 ( 控制 ) 等一系列活动。软件工程方法学包含3 个要素:(方法)、(工具)和(过程) 。精品文档一、概念题:1、软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题。2、软件工程:是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经
2、济地开发出高质量的软件并有效地维护它,这就是软件工程。3、软件生命周期:由软件定义、软件开发和运行维护(也称为软件维护)3 个时期组成,每个时期又进一步划分成若干个阶段。4、模块的内聚性:标志着一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。5、软件测试:为了发现程序中的错误而执行程序的过程。6、软件的可维护维护人员理解、改正、改动或改进这个软件的难易程度。性:7、数据流图 DFD: 一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。8 、 模 块 的 耦 合对一个软件结构内不同模块之间互连程序的度量。耦合的强弱取决于模块间接口的复杂程序,进(性
3、):入或访问一个模块的点,以及通过接口的数据。9、形式化方法:描述系统性质的基于数学的技术。10、软件重用:指同一事物不作修改或稍加改动就多次重复使用。广义地说,软件重用可分为以下3 个层次:知识重用、方法和标准的重用和软件成分的重用。11、软件维护:就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。12、对象:是由描述该对象属性的数据以及对这些数据施加的所有操作封装在一起构成的统一体。13、软件可靠性:是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。( 计划 ) 、请举出几种典型的软件过程模型如(瀑布模型)、(快速原型模型) 、4、可行性研究其实质上是要
4、进行一次大大压缩简化了的系统分析和设计过程。一般对可供选择的主要系统实现方案的可行性,至少应该从(技术可行性)、(经济可行性)和(操作可行性)等3 个方面研究每种实现方案的可行性。5、需求分析的任务包括(系统综合要求)、(数据要求)、(导出逻辑模型)和(修正系统开发计划)等。其中常见的接口需求有(用户接口) 、(硬件接口) 、(软件接口)和(通信接口需求)等等。6、需求分析过程应该建立3 种模型,它们分别是(数据模型)、(功能模型)和(行为模型)。7、按照形式化的程度,可以把软件工程使用的方法划分成(非形式化)、(半形式化)和(形式化)等3 类。8、软件设计一般包括(总体设计阶段)和(详细设计
5、阶段)等两个阶段,在软件设计过程中应该遵循的基本原理和相关概念有(模块化) 、(抽象)、(逐步求精)、(信息隐藏和局部化)和(模块独立)。9、软件设计的基本任务可以概括地说包括以下四个任务(体系结构设计)、(人机界面设计) 、(数据设计)和(过程设计)。10、在设计人机界面的过程中,必须充分重视并认真处理好(系统响应时间)、(用户帮组设施) 、(出错信息处理)和(命令交互)等四个问题。11、(白盒测试)和(黑盒测试)是软件测试的两类基本方法,通常在测试过程的早期阶段主要使用(白盒测试),而在后期阶段主要使用(黑盒测试)。- 1 - 欢迎下载精品文档12、软件的结构程序设计按照控制结构的应用特点
6、可以分为(经典的结构程序设计)、(扩展的结构程序设计)和(修正的结构程序设计) 。13、用面向对象方法学开发软件过程,是一个主动地多次反复迭代的(演化过程)。传统方法学强调(自顶向下)顺序地完成软件开发的各阶段任务。14、程序复杂程度的定量度量使用较广泛的两种方法是(McCabe)方法和( Halstead )方法。15、一般组成软件系统的物理元素包括(程序)、( 文件 )、( 数据库)、( 人工过程)和(文档)等。16、软件配置管理主要包括有5 项任务:(标识)、(版本控制) 、(变化控制) 、(配置审计)和(报告)。17、大型、复杂系统的对象设计一般由下述5 个层次组成:(主题层)、(类与
7、对象层) 、(结构层)、(属性层)和(服务层)。18、软件重用是提高软件(开发生产率)和目标系统(质量)的重要途径,它基本上始于设计。其中软件成分重用可划分成以下3 个级别即代码重用、设计成果重用和分析结果重用。19、面向数据流的设计方法把信息流映射成软件结构,信息流有(变换)和(事务)等两种类型。20、大型软件系统的测试过程基本上由( 模块测试 ) 、(子系统测试) 、 ( 系统测试 ) 、(验收测试)和( 平行运行 ) 等。21、一般说来,软件调试途径主要有以下3 种即(蛮干法) 、(回溯法)和(原因排除法)。22、需求分析的任务包括系统综合要求、数据要求、导出逻辑模型和修正系统开发计划等
8、。其中设计约束或实现约束常见的有:(精度)、 ( 工具和语言约束) 、(设计约束)、应该使用的标准和应该使用的(硬件平台)等。23、 COCOMO是(构造性成本模型)( constructive cost model)的英文缩写。24、软件定义时期通常划分为3 个阶段,它们分别是(问题定义)、( 可行性研究)和(需求分析)。25、程序的三种基本控制结构是(顺序)、( 选择)和(循环)。26、软件系统响应时间有两个重要属性,分别是(长度)和(易变性)。27、在软件项目的组织方式典型的有(民主制程序员组)、(主程序员组) 、(现代程序员组)等三种。28 软件维护通常包括四类活动即(改正性维护)、(
9、完善性维护) 、(适应性维护)和(预防性维护)。29 传统方法学强调(硬件接口)顺序地完成软件开发的各阶段任务。用(软件接口)开发软件过程,是一个主动地多次反复迭代的演化过程。30、估算软件规模的方法主要有(码行技术)和(功能点技术)等等。31、软件过程中的一个任务集合包括一组(软件工程任务)、(里程碑)和应该交付的产品(软件配置成分)。通常使用软件生命周期模型简洁地描述软件过程。请举出几种典型的软件过程模型如微软过程、(瀑布模型)、(快速原型) 、(增量模型)、(螺旋模型)、(喷泉模型)等。32、解决软件危机,既要有技术措施(方法和工具),又要有必要的(组织管理)措施。33、 CMM是软件过
10、程能力成熟度模型(capability maturity model)的简称。其5 个等级从低到高依次是(初始级)(又称为 1 级)、(可重复级)(又称为2 级)、(已定义级)(又称为3 级)、(已管理级)(又称为4 级)和(优化级)(又称为 5 级)。34、结构化分析方法需求分析过程应该建立3 种模型,它们分别是(行为模型)、(功能模型)和(数据模型)。35、用面向对象方法开发软件,需要建立3 种形式的模型,它们分别是(对象模型)、(动态模型)和(功能模型)。36、验证软件需求应该从以下4 个方面进行验证,即(一致性)、(完整性)、(现实性)和(有效性)。37、大型软件的测试应该分阶段地进行
11、,通常至少分为(单元测试)、(集成测试)和(验收测试)等3 个基本阶段。38、软件成分重用可划分成以下3 个级别即(代码重用)、(设计成果重用) 、和(分析结果重用)重用。- 2 - 欢迎下载精品文档三、判断题:1、传统方法学强调自顶向下顺序地完成软件开发的各阶段任务,用面向对象方法学则是一个主动地多次反复迭代的演化过程。( )2、软件重用或称为复用仍然是降低软件成本和提高软件质量的唯一合理的方法。( )3、在软件设计过程中,对于交互式系统来说,人机界面设计和数据设计、体系结构设计及过程设计一样重要。考虑到现在人机界面在系统中所占比例越来越大的现实,可以将人机界面设计放到软件的编码实现阶段同时
12、考虑,即由程序员基于过程算法完成编码实现的同时,同时按照软件规格说明书和业务逻辑要求实现人机界面,这样就降低了软件的开发代价。( )4、即使采用了形式化方法,软件重用仍然是降低软件成本和提高软件质量的唯一合理的方法。()5、模块独立是良好软件设计的关键,而维护又是决定软件质量的关键环节。( )6、软件测试的目的是“建设性”的,即为了竭力证明已经建造好的软件系统的正确性和适用性。()7、软件质量是软件工程目标之一,保证模块独立是良好软件设计的关键,而维护又是决定软件质量的关键环节。( )8、软件测试一般包括黑盒测试和白盒测试两种方法,测试目的是为了竭力证明已经建造好的软件系统的正确性和适用性。(
13、)9、可以用形式化方法证明软件的需求和设计的正确性和合理性,因此,软件重用并不是降低软件成本和提高软件质量的合理方法之一。如果为了降低软件的测试成本和改正错误代价等,可以不用对软件进行测试,也可以保证软件的质量和降低开发成本等软件工程的目标。( )10、形式化方法有许多优点,因此在实际软件工作中应该依赖形式化方法来保证开发出的软件绝对正确和降低由于设计缺陷产生的维护代价。( )11、开发同一个软件(即LOC固定或功能点)的时候,如果把项目持续时间延长一些,则可降低完成项目所需要的工作量,更加完善了软件的设计工作,提高软件编码的效率。( )12、程序员知识、软件可移植性要求、软件应用领域和工程规
14、模及系统用户的要求等是在软件开发中选择程序设计语言的主要实用标准。 ( )13、详细设计阶段的任务还不是具体地编写程序,而是要设计出程序的“蓝图”,以后程序员根据这个蓝图编写实际的代码。( )14、在可行性研究过程中只需要找出几种技术方案就可以了,等到需求分析的时候再去考虑成本效益问题。( )15、在软件开发中选择程序设计语言的主要实用标准包括程序员知识、软件可移植性要求、软件应用领域和工程规模及系统用户的要求等。 ( )16、采用形式化方法进行软件系统的建模、分析与设计有许多其它方法不可替代的优点,因此在实际软件工作中应该依赖形式化方法来保证开发出的软件绝对正确,并降低由于设计缺陷产生的维护代价。( )17、请根据你所学的软件工程原理和常识,判断下述说法是否正确:开发同一个软件(即LOC固定或功能点)的时候,如果把项目持续时间延长一些,则可降低完成项目所需要的工作量,