2020.8月软件开发工具真题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

绝密★启用前
2020年8月高等教育自学考试全国统一命题考试
软件开发工具
(课程代码03173)
注意事项:
1.本试卷分为两部分,第一部分为选择题,第二部分为非选择题。

2.应考者必须按试题顺序在答题卡(纸)指定位置上作答,答在试卷上无效。

3.涂写部分、画图部分必须使用2B铅笔,书写部分必须使用黑色字迹签字笔。

第一部分选择题
一、单项选择题:本大题共20小题,每小题1分,共20分。

在每小题列出的备选项中只有一项是最符合题目要求的,请将其选出。

1.区别于一般软件,对软件开发工具而言,下列各项最重要的性能是
A.效率
B.响应速度
C.资源消耗
D.使用方便
2.在软件开发过程的信息需求中,属于跨开发周期的信息是
A.有关系统环境的需求信息
B.有关软件设计的各类信息
C.有关软件成果本身的信息
D.用户对系统变更要求的信息
3.在软件开发工具的概念模式中,决策树属于
A.时序网络
B.计算机模拟模型
C.结构图
D.数学与逻辑模型
4.由于使用了软件开发工具,编码工作可以自动或半自动完成。

这主要是得益于软件开发工具的
A.文档生成功能
B.代码生成功能
C.分析建模功能
D.系统设计功能
5.下述关于软件开发工具作用的说法中,错误的是
A.完全被动地为用户服务
B.在软件开发方法方面发挥积极的作用
C.是一个帮助人们节省时间的工具
D.是一个帮助人们少做重复性工作的工具
6.下列模块中,最不容易由代码生成器生成的是
A.对话屏幕
B.输入屏幕
C.输出报表
D.决策判断
7.文档生成功能不能生成的是
A.文章
B.表格
C.图形
D.代码
8对于一些需要活泼多变的人机界面的游戏软件的开发工作,最可能需要
A.一般的屏幕设计的现成工具
B.一般的报表设计的现成工具
C.多媒体软件开发工具
D.系统分析工作的工具
9.关于自行开发软件工具的说法中,正确的是
A.只要用得顺手就好,不必在乎文档的齐全与资料积累
B.可以直接拿到其他环境当做商品化软件
C.开发之初就当以销售为目的去设计
D.从项目的实际情况和最需要帮助的地方着手
10.谷歌代码搜索( Google Code Search)这款软件工具出现于
A.结构化时代
B.面向对象时代
C.互联网时代
D.智能化时代
11.关于Java语言的技术中,属于网络和Web开发支持技术的是
A. CORBA
B. JDBC
C. JINI
D. Servlet
12.下列各编程语言中,对面向对象思想和技术支持程度最高的是
A. VB
B. PB
C. Delphi
D. Java
13.在Eclipse集成开发环境中,每个程序的组织单位是
A.代码
B.项目
C.文件
D.对象
14.使用Eclipse CDT的默认设置创建一个C/C++项目,编译成功后包含刚被编译的可执行文件的文件夹是C?
A. Binaries
B. Includes
C. Debug
D. Release
15.在Eclipse中,在编写程序之前,首先要新建一个
A.变量
B.函数
C.语句
D.项目
16.在C语言中,引用头文件的符号是
A.小括号
B.花括号
C.中括号
D.尖括号或引号
17.在Eclipse CDT调试器的断点视图中,用于表示方法断点的图标是
A.蓝色圆圈
B.白色圆圈
C.蓝色箭头加圆圈
D.白色透明圆圈
18.利用Eclipse自带的“保存历史记录”功能进行版本比较时,用于标记与显示旧版
本与目前文件的对比差异的颜色是
A.浅黄色
B.浅绿色
C.浅灰色
D.浅红色
19除一些可选文件之外, Eclipse插件的组成文件还包括
A.版本号
B.清单文件
C.文件夹
D.扩展文件
20.结构化方法侧重分析流程,面向对象分析方法侧重
A.编程
B.建模
C.设计
D.维护
第二部分非选择题
二、填空题:本大题共20空,每空1分,共20分。

21.随着互联网的兴起,软件开发工具的发展有两个鲜明的特点,一个是面向网络
另一个是开源软件的兴起与运用。

22.结构化程序设计方法把程序结构分解成三种基本模块:处理单元、循环机制、二分决策机制。

23.即插即用程序设计方法是在面向对象程序设计方法的基础上提出来的
24.卡内基·梅隆大学的软件工程研究所提出能力成熟度模型,作为衡量软件开发项目组的标准。

25.在需要较长时间等待时,用户界面必须使用户能随时掌握任务的进展状况
26.时序网络主要用于描述系统状态及其转换方式
27.数据流程图的基本元素包括:数据源、数据处理和数据存储,用箭头表明信息在它们之间的流动状况。

28.为了达到数据终点管理的基本目标,人们采用了工程计划网络、甘特图、检查点方法、排队论等技术和方法。

29,一个好的开发软件工具不仅能帮助使用者完成具体的开发任务,而且能引导使用者
熟悉和掌握科学的开发方法,即形成正确的开发模式。

30.对开发所依据的开发方法和开发理论的考察,包括对应用软件结构和对模块的划
分与各阶段任务的理解与认识。

31.在大中型项目中,由于项目复杂,开发周期长,交互性高,大多数开发团队倾向使
用的开发工具是集成开发工具
32. Eclipse的体系结构主要包括运行时内核、工作空间、工作台、各类开发环境和其它插件
33.C语言是一种面向过程的计算机程序设计语言。

34.为了在不指明完整路径的情况下,系统就能够认识Mingw的执行命令,需要为其
设置系统path变量
35.在Eclipse中,重命名变量位于菜单栏中的重构菜单项中。

36.编译C程序是指将.c文件编译为可以运行的exe 文件
37.GDB是开源组织GNU发布的一个程序调试工具
38.如果Eclipse工具栏区被竖直的虚线分成若干部分,那么,此时的工具栏处
于解锁状态。

39.PDE透视图清单编辑器中的概述页面由“一般信息”和“执行环境”两个主要部
分组成,可以定义重要的插件属性。

40.在程序设计中,对象向外提供一组数据结构和一组操作,而把内部的细节隐藏
起来,这称为封装
三、简答题:本大题共6小题,每小题5分,共30分。

41.在软件开发过程中,总体设计阶段的任务是什么?
答:总体设计包括软件的结构设计、公用的数据文件或数据库的设计、各部分的连接方式、信息交换的标准等
42.一个好的项目组应具备哪些条件?
答:(1)有严格的、成文的工作规范和文档标准
(2)人员之间有严格的分工,除程序员外,必须有专门的秘书,必须有专门的测试人员,要有专职的项目负责人
(3)每个项目都要事先制定详细的时间计划表,每一项目完成之后都有完整的资料
43.为了真正理解和用好软件开发工具,用到的重要的理论和方法包括哪些?
答:(1)认知科学中关于概念模式的概念与方法。

(2)数据库技术的理论与方法。

(3)编译技术的有关方法。

(4)关于人机界面的理论与方法。

(5)管理科学中关于项目管理与版本管理的理论与方法。

(6)系统科学与系统工程中的有关理论与方法。

44.软件开发工具的基本功能可以归纳为哪几个基本方面?
答:(1)提供描述软件状况及其开发过程的概念模式,以协助软件开发人员认识软件工作的环境与要求、合理地组织与管理软件开发的工作过程。

(2)提供存储和管理有关信息的机制与手段。

(3)帮助使用者编制、生成及修改各种文档。

(4)帮助使用者编写程序代码,即代码生成。

(5)对于历史信息进行跨生命周期的管理,把项目运行与版本更新的有关信息科学地管理起来。

45.为自己所用的软件开发工具与商品化的软件开发工具有什么区别?
答:购买软件开发工具的好处:在某些环节上可代替一些简单的、重复性的工作;对项目较大,周期较长的情况,还可以使工作的组织管理比较规范,信息的管理与检索比较方便,部分地做到信息与知识的重用和共享。

缺点:比较昂贵,特别是项目管理和系统分析工具也不易按实际需要剪裁与扩充。

自行开发的好处:目标明确,符合需要,便于扩充。

缺点:规范化、商品化程度低,问题与故障多。

46.统一建模语言(UML)把系统开发分成哪几个阶段?
1)需求分析2)分析3)设计4)编程5)测试
四、论述题:本大题共1小题,10分。

47.面向对象程序设计的基本思想是什么?
(1)客观世界的任何事物都是对象,它们都有一些静态属性,也都有一些有关的操作。

作为一个整体,这些对象对外不必公开这些属性与操作,称为“封装性”(2)对象之间有抽象与具体、群体与个体、整体与部分等几种关系。

(3)抽象的、较大的对象所具有的性质包括静态属性和动态操作,自然地成为它地子类地性质,不必加以重复说明或规定,这就是“遗传性”(名词解释)(4)对象之间可以护送消息。

五、应用题:本大题共1小题,20分。

48.开发地铁售票信息系统时,开发团队选择使用并发版本系统( Concurrent Versions System,CVS),请回答以下问题:
(1)为了对程序修改进行有效的管理,该开发团队应该制定什么样的修改程序的流
程?
答:
(1)修改过程中,多执行一下cvs update操作,以便尽早发现冲突并解决。

(2)commit的代码必须是可以编译通过的,而且最好不要有会影响其他模块运行的
重大功能倒退,以免影响其他模块的开发。

(3)在满足上述条件的同时,尽可能多commit,有阶段性成果就可以commit一下,
以便其他开发人员尽早进行update,减少冲突。

(4)commit之前使用cvs update和cvs diff来检查一下需要提交的代码,commit
之后使用cvs update来检查提交的结果。

特别要注意检查是否有新增加的文件或者目录忘记使用cvs add添加到CVS中,这是非常容易遗漏的。

(5)commit的时候一定要写log信息。

log信息应该简练,包含有效信息,同一任
务的多个修改可以考虑使用同一个log信息,方便一些工具进行收集和汇总。

(6)CVS只是工具,不能代替团队的交流。

团队开发过程中应该加强前期的讨论交
流,减少后期的代码冲突合并。

2)在开发中,该团队的成员将CVs服务器作为资源库( Repository)来访问他们
的代码。

开发者签出( check out)一个文件,更新( update)它,最后用Cvs
命令进行提交( commit),由CvS源代码库统一管理修改,这样,就好像只有
一个人在修改文件一样,既避免了冲突( conflict),又可以做到跟踪文件变化

根据以上对cvs某些基本作用的描述,请说明资源库( Repository)、
签出( check out)、更新( update)、提交( commit)、冲突( conflict)这五个
术语各自指代哪些事物或操作?
答:
Revision (修订版本)--文件历史记录中的被开发者提交的变化。

一个修订版本就是一个时常变化的项目的snapshot (瞬态图)。

Repository (源代码库)--CVS 存储所有修订版本历史记录的地方。

每个项目都有自己的一个确定的源代码库。

Working copy (工作拷贝)--开发者对文件作出修改时文件所在的拷贝。

Check out (检验)--从源代码库中申请一份工作拷贝。

该工作拷贝反映的是取出时项目的瞬时状态。

当开发者对拷贝作出修改时,必须运用commit (提交)和update (更新) 命令来“发布”变化和查看其他开发者所作的修改。

Commit (提交)--将工作拷贝中的变化输入中央源代码库。

Log message (日志信息)--提交修订版本的时候,附带描述变化的注解。

通过查阅记录信息,
人们可以获得一个当前项目进程的总结。

Update (更新)--从源代码库中取出别人的修改数据,将其输入自己的工作拷贝,并显示自己的工作拷贝是否有未提交的修改。

注意,不要和commit (提交)混淆,更新和提交是一对互补的指令。

记住:Update 将使工作拷贝和源代码库拷贝保持同步更新。

Conflicts (冲突)--两个开发者对同一个区域所做的改动都提交给主版本时出现的情况,在CVS 觉察并指出这个冲突后,开发者必须解决该冲突。

相关文档
最新文档