软件开发环境名词解释

合集下载

软件工程名词解释

软件工程名词解释

软件工程名词解释 LELE was finally revised on the morning of December 16, 2020软件工程试题整理_词语解释题1、需求分析:需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化成完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

2、白盒法:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。

白盒法也不可能进行穷举测试。

3、黑盒法:该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。

因此,黑盒测试又称为功能测试或数据驱动测试。

4、渐增式测试:逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试。

每加入一个新模块进行一次集成测试,重复此过程直至程序组装完毕。

5、非渐增式测试:首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起进行测试。

6、可执行的规格说明:这是一种使要求说明过程自动化的技术,通过可执行的规格说明语言来描述预期的行为“做什么”,人们可以从直接观察中用规格说明语言来规定任何系统行为。

7、经济可行性:对组织的经济状况和投资能力进行分析,对系统建设,运行和维护费用进行估算,对系统建成后可能取得的社会及经济效益进行估计。

8、系统设计说明书:是从系统总体的角度出发对系统建设中各主要技术方面的设计进行说明,是系统设计阶段的产物,其着重点在于阐述系统设计的指导思想以及所采用的技术路线和方法,编写系统设计说明书将为后续的系统开发工作从技术和指导思想上提供必要的保证。

9、面向对象设计:是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。

软件开发环境

软件开发环境

第7章 软件开发环境
在建立好一个工程时,默认的target 是DebugRel, 还有另外两个可用的target,分别为Realse 和Debug, 这三个target 的含义分别为: DebugRel :使用该目标,在生成目标的时候,会为 每一个源文件生成调试信息; Debug :使用该目标为每一个源文件生成最完全的 调试信息; Release:使用该目标不会生成任何nutils-2.15.tar.bz2:这个压缩包包含有ld,ar,as等一 些产生或者处理二进制文件的工具。其主要目的是为 GNU系统提供汇编和连接工具等。 gcc-3.4.5.tar.bz2:这个压缩包主要是为GNU系统提供 C 编译器。现在支持多种语言,这其中包括C/C++、 Fortran、Java、Objective-C、Ada等。 glibc-2.2.5.tar.gz:Libc是很多用户层应用都要用到的 库,用于定义系统调用和其它一些基本的函数调用。 glibc-linuxthreads-2.2.5.tar.gz:这是Libc用于支持 Posix线程而单独发布的一个压缩包。 linux-2.6.8.tar.bz2:这个压缩包就是Linux的内核, 在编译glibc时,要用到Linux内核中的include目录的
第7章 软件开发环境
点击Edit 菜单,选择“DebugRel Settings…”, 出现如图7-2 所示的对话框。 主要包括: 1. target 设置选项 nguage Settings 3. Linker 设置
第7章 软件开发环境
点击CodeWarrior IDE 的菜单Project 下的make 菜单, 就可以对工程进行编译和链接了。
第7章 软件开发环境
在这里选择ARM Executable Image,在“Project name:”中输入工程文件名,本例为“ledcircle”,点击 “Location:”文本框的“Set…”按钮,浏览选择想要将 该工程保存的路径,将这些设置好后,点击“确定”, 即可建立一个新的名为ledcircle 的工程。 这个时候会出现ledcircle.mcp 的窗口,如图7-2 所示, 有三个标签页,分别为files,link order,target 默认的是 显示第一个标签页 files。通过在该标签页点击鼠标右键, 选中“Add Files…”可以把要用到的源程序添加到工程 中。

软件开发环境

软件开发环境

第一节 软件开发环境
• 软件开发环境应具有高度的通用性
• • •
能适应最常用的几种语言;
能适应和支持不同的开发方法;
能适应不同的计算机硬件及其系统软件,对这些方面应具有最小的依赖性(尤其 是硬件); 能适应开发不同类型的软件; 能适应并考虑到不同用户的需要(如程序员、系统分析员、项目经理、质量保证 人员、初学者与熟练人员)。
• 第二代。具有真正的数据库,而不是文件库。
• •
多采用E-R模式,在更低层次集成工具,工具和文件都作为实体保存在数据库中, 现有工具需要做适当修改或定制方可加入。 人机界面采用图形、窗口等。
例如Ada程序设计环境(APSE)以数据库为集成核心。
第一节 软件开发环境
• 第三代。建立在知识库系统上,出现集成化工具集。
第二节 软件工具
Westinghouse(西屋电气)公司于1992年公布了13类软件工具的分类标准 和该类的范例工具。
系统模拟和模型工具
• 指结构和数据流模型、算法模型、定时和大小工具及动画工具。
需求追踪工具
• 指编辑程序、数据库管理系统及在DBMS上的应用运行工具
需求分析工具
• 指正文和数据流图工具、数据字典工具、及面向对象的分析工具。
第一节 软件开发环境
• 好的软件开发环境应是容易使用、经济高效的系统
• • • •
易学、易用、响应时间合理和用户喜爱;
能支持自然语言处理; 能支持交互式和分布式写作开发;
降低用户和环境本身的资源花费。
第一节 软件开发环境
• 软件开发环境应有辅助开发向半自动开发和自动开发逐步过渡的系统。
自动化和半自动化的含义是:
软件开发环境的特征
一组相关工具的组合

软件工程环境

软件工程环境

软件工程环境软件工程环境是软件工程学的组成部分,也是实现软件生产工程化的重要基础。

“工欲善其事,必先利其器”,在软件开发中,无论技术活动与管理活动,都离不开环境(包括工具)的支持。

近20多年来,各技术先进国家大力开展软件环境的研究,计算机辅助软件工程( computer-aided software engineering,简称CASE)、集成化项目支持环境(Integrated Project Support Environment,简称IPSE)等课题,始终都受到人们的关注,一大批实用的环境应运而生。

这些环境建立在现代软件开发的基础上,反过来又促进了现代方法的推广与流行,不仅提高了软件的生产率,而且逐渐影响和改变着软件的生产方式。

本章将简要叙述软件工程环境的变迁、现状和发展趋势,使读者进一步了解学习和研究软件工程环境的意义。

13.1什么是软件工程环境“环境”一词,对不同的用户往往具有不同的含义。

对于不从事软件开发的最终用户( end-user)来说,环境就是他运行程序所使用的计算机—由硬件和操作系统所组成的虚拟机。

这类用户对环境的要求,主要是运行可靠、操作容易,便于掌握和使用。

对于开发者来说,环境是他们进行开发活动的重要舞台。

在软件工程时代,开发者要求环境支持他们按照软件工程的方法,全面完成生存周期中的各项任务。

通常把这种开发环境称为软件工程环境,而把前一类环境称为运行环境或工作环境。

具体而言,软件工程环境是指支持软件产品开发、维护和管理的软件系统,它在统一的集成机制下由一系列软件工具组成。

这些工具对与软件开发相关的过程、活动和任务提供全面的支持,从而大大提高软件产品的生产效率和软件产品的质量,降低软件开发、维护和管理的成本。

这类环境通常都有一套包括数据集成、控制集成和界面集成的集成机制,让各个工具使用统一的、规范存取的环境信息仓库,采用统一的用户界面,同时为各个工具或开发活动之间的通信、切换、调度和协同工作提供支持。

软件工程复习题

软件工程复习题

软件工程复习题一、单项选择题1.软件开发环境按解决的问题分类包含(A)A.程序设计环境B.工具箱环境C.基于方法的环境D.以语言为中心的环境2.为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是(A)A.容错技术B.避开错误技术C.检测技术D.排错技术3.软件复杂性的常用度量方法包括(D)A.BOEHM度量法B.可扩充度量法C.线性度量法D.代码行度量法4.面向对象的要素包含(B)A.对象的唯一性B.抽象C.继承性D.分类性5.构造原型时,主要考虑(B)A.全部功能B.原型要体现的特征C.全部细节D.全部要求6.维护中,因修改文件的打开或关闭而引起的错误是(C)A.文档副作用B.数据副作用C.编码副作用D.设计副作用7.诊断和消除程序在使用过程中发生错误的过程称为(A)A.校正性维护B.适应性维护C.完善性维护D.预防性维护8.在白盒技术测试用例的设计中,以下覆盖标准中发现错误能力最强的是(C)A.语句覆盖B.判定/条件覆盖C.条件组合覆盖D.判定覆盖9.软件调试技术包括(A)A.回溯法调试B.循环覆盖调试C.边界值分析调试D.集成测试调试10.在软件测试中,首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起测试,称为(D)A.确认测试B.系统测试C.渐增式测试D.非渐增式测试11.源代码的可维护性表现了程序设计语言的(B)A.心理特性B.工程特性C.技术特性D.传统特性12.至今已有好几百种不同的高级语言,它们有的是用于数值计算,有的是用于商业管理,有的是用于编写系统软件。

以下语言中较适用于数值计算的语言是(D)A.BASIC B.SQLC.LISP D.FORTRAN13.在JSP方法中解决结构冲突的具体办法是(A)A.引入中间数据结构或中间文件B.删除某个输入数据结构C.删除某个输出数据结构D.增加某个输入或输出数据结构14.模块的内聚性可以按照内聚程度的高低进行排序,以下排列中属于从低到高....的正确次序是(C)A.偶然内聚,时间内聚,逻辑内聚B.通信内聚,时间内聚,逻辑内聚C.逻辑内聚,通信内聚,顺序内聚D.功能内聚,通信内聚,时间内聚15.以下软件生存周期的活动中,要进行软件结构设计的是(B)A.测试用例设计B.概要设计C.程序设计D.详细设计16.能够清楚地表示复杂的条件组合与应做的动作之间的对应关系的工具是(C)A.结构化语言B.PAD图C.判定表D.程序流程图17.需求分析方法必须能够表达和理解问题的数据域和(C)A.数据流B.用户类型C.功能域D.应用领域18.以用户需求为动力,以对象作为驱动的模型是(C)A.瀑布模型B.基于知识的模型C.喷泉模型D.增量模型19.把软件生产的全过程人为地划分为若干阶段使得软件人员能根据每一阶段的不同特点更好地组织和管理软件项目的开发,这种概念就是(D)A.软件项目管理B.软件工程C.软件项目计划D.软件生存期20.在软件生存期的各个阶段中跨越时间最长的阶段是(D)A.需求分析阶段B.设计阶段C.测试阶段D.维护阶段二、填空题1.软件设计的主要原则是模块独立性和信息隐藏。

软件工程各章名词解释

软件工程各章名词解释

名词解释一个三分 五个十五分第一章 绪论1. 软件2. 文档3. 软件工程4. 软件工程过程5. 软件生存周期6. 软件生存周期模型第二章 软件可行性研究与项目开发计划1. 投资回收2. 纯收人第三章 软件需求分析1. 需求分析2. 数据流3. 数据字典4. 加工5. 数据流图第四章 软件概要设计1. 模块2. 模块化3. 抽象4. 信息隐蔽5. 模块独立性6. 耦合性7. 无直接耦合8. 数据耦合9. 标记耦合10. 控制耦合11. 公共耦合12. 内容耦合13. 内聚性14. 偶然内聚15. 逻辑内聚16. 时间内聚17. 通信内聚18. 顺序内聚19. 功能内聚第五章 软件详细设计1. PAD2. 过程设计语言(PDL)第六章 软件编码1. 程序设计风格2. 程序可移植性第七章 软件测试1. 语句覆盖2. 判定覆盖3. 条件覆盖4. 判定/条件覆盖5. 条件组合覆盖6. 路径覆盖7. 环路复杂性8. 黑盒测试9. 白盒测试10. 驱动模块11. 桩模块12. 单元测试13. 集成测试14. 确认测试15. 调试第八章 软件维护1. 维护2. 校正性维护3. 适应性维护4. 完善性维护5. 预防性维护6. 软件可维护性第九章 软件开发的增量模型1. 原型第十章 面向对象的方法1. 对象2. 类3. 消息4. 方法5. 继承性6. 单重继承7. 多重继承8. 多态性9. 抽象10. 信息隐藏11. 链12. 关联第十一章 软件质量与质量保证1. 软件可靠性2. 效率3. 可维护性4. 可移植性5. 可互操作性6. 适应性7. 可重用性8. 软件设计质量9. 软件程序质量10. 冗余第十二章 软件工程管理1. 软件配置管理2. 软件配置项3. 基线4. 文档第十三章 软件开发环境1. 软件开发环境2. 软件工具3. CASE4. CASE生存期5. CASE工作台软件工程自考名词解释答案第一章 绪论1. 计算机程序及其说明程序的各种文档.2. 文档是有关计算机程序功能,设计,编制,使用的方案或图形资料.3. 用科学知识和技术原理来定义,开发,维护软件的一门学科.4. 软件工程过程规定了获取,供应,开发,操作和维护软件时,要实施的过程,活动和任务.5. 软件生存周期是指一个软件从得出开发要求开始直到该软件报废为止的整个时期.6. 软件生存周期模型是描述软件开发过程中各种活动如何执行的模型.第二章 软件可行性研究与项目开发计划1. 投资回收期就是使累计的经济效益等于最初的投资费用所需的时间.2. 在整个生存周期之内的累计经济效益(折合成现在值)与投资之差.第三章 软件需求分析1. 需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非不甘落后将用户非不甘落后 需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程.2. 数据流是数据在系统内传播的路径,因此由一组成分固定的数据项组成.3. 数据字典(Data Dic onary, 简称DD)就是用来定义数据流图中的各个成分的具体含义的,它以一种准确的,无二义性的说明方式为系统的分析,设计及维护提供了有关元素的一致的定义和详细的描述.4. 加工又称为数据处理,是对数据流进行某些操作或变换.5. 数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程.第四章 软件概要设计1. 模块在程序中是数据说明,可执行语句等程序对象的集合,或者是单独命名和编址的元素,在软件的体系结构中,模块是可组合,分解和更换的单元.2. 模块化是指解决一个复杂问题自顶向下逐层把软件系统划分成若干模块的过程.每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个要求的功能.3. 抽象是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同的特性而暂不考虑它的细节,不考虑其他因素.4. 信息隐蔽指在设计和确定模块时,使得一个模块内包含信息(过程或数据),对于不需要这些信息的其他模块来说,是不能访问的.5. 模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单.6. 耦合性也称块间联系.指软件系统结构中各模块间相互联系紧密程序的一种度量.7. 无直接耦合指两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,它们之间不传递任何信息.8. 数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言的值传递.9. 标记耦合指两个模块之间传递的是数据结构,如高级语言的数组名,记录名,文件名等这些名字即为标记,其实传递的是这个数据结构的地址.10. 控制耦合指一个模块调用另一个模块时,传递的是控制变量(如开关,标志等),被调模块通过该控制变量的值有选择地执行块内某一功能.11. 公共耦合指通过一个公共数据环境相互作用的那些模块间的耦合.公共数据环境可是是全程变量或数据结构,共享的通信,内存的公共覆盖区及任何存储介质上的文件,物理设备等(也有将共享外部设备分类为外部耦合).12. 当一个模块直接使用另一个模块的内部数据,或通过非正常口转入另一个模块内部,这种模块之间的耦合为内容耦合.13. 内聚块又称块内联系指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量.14. 偶然内聚指一个模块内的各处理元素之间没有任何联系.15. 逻辑内聚指模块内执行个逻辑上相似的功能,通过参数确定该模块完成哪一个功能.16. 把需要同时执行的动作组合在一起形成的模块为时间内聚模块.17. 通信内聚指模块内所有处理元素都在同一个数据结构上操作(有时称之为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据.18. 顺序内聚指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入.19. 功能内聚指模块内所有元素共同完成一个功能,缺一不可.因此模块不能再分割.第五章 软件详细设计1. PAD图指问题分析图(Problem Analysis Diagram),是一咱算法描述工具,它是一种由左往右展开的二维树型结构.PAD图的控制流程为自上而下,从左到右地执行.2. 过程设计语言(Process Design Language,简称PDL),也称程序描述语言(Program Descrip on Language),又称为伪码.它是一种用于描述模块自法设计和处理细节的语言.第六章 软件编码1. 程序设计风格指一个人编制程序时所表现出来的特点,习惯逻辑思路等.2. 指程序从一个计算机环境移值到另一个计算机环境的容易程序.第七章 软件测试1. 语句覆盖是指设计足够的测试用例,使被测程序中每个语句至少执行一次.2. 判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次”真”和”假”值,从而使程序的每一个分支至少都通过一次.3. 条件覆盖指设计足够的测试用例,使得判定表达工中每个条件的各种可能的值出现一次.4. 判定/条件覆盖标准指设计足够的测试用例,使得判定表达式中的每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次.5. 条件组合覆盖是比较强的覆盖标准,它是指设计足够的测试用例,使得每个判定表达式中条件的各种可能的值的组合都至少出现一次.6. 路径覆盖是指设计足够的测试用例,覆盖被测程序中所有可能的路径.7. McCabe定义程序图的环路为程序图中区域的个数.区域个数为边和结点圈定的封闭区域数加上图形外的区域数1.8. 黑盒测试是功能测试又称为功能测试或数据驱动测试.9. 白盒测试是对程序中尽可能多和逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致.10. 驱动模块是用来模拟被测模块的上级调用模块的模块,功能要比真正的上级模块简单得多,它只完成接受测试数据,以上级模块调用被测模块的格式驱动被模块,接收被测模块的测试结果并输出.11. 桩模块用来代替被测试模块所调用的模块它的作用是返回被测模块所需的信息.12. 单元测试指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误.13. 集成测试是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行测试,故也称组装测试或联合测试.14. 确认测试又称有效性测试.是为了检查软件的功能与性能是否与需求规格说明书中确定的指标相符合所进行的测试.15. 调试是为了确定错误的原因和位置,并改正错误所进行的工作,因此调试也称为纠错.第八章 软件维护1. 在软件运行/维护阶段对软件产品所进行的修改就是维护.2. 为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护.3. 随着计算机的飞速发展,计算机硬件,软件及数据环境在不断发生变化,为了使应用软件适应这种变化而修改软件的过程称为适应性维护.4. 在犯罪分子件运行时期中,用户往往会对软件提出新的功能要求与性能要求.这种增加软件功能,增强软件性能,提高软件运行效率而进行的维护活动称为完善性维护.5. 为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护.6. 软件可维护性是指软件能够被理解,校正,适应及增强功能的容易程度.第九章 软件开发的增量模型1. 软件开发中的原型是软件的一个早期可运行的版本,它反映了最终系统的重要特性.第十章 面向对象的方法1. 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则,计划或事件.2. 具有相同或相似性质的对象的抽象就是类具有相同或相似性质的对象的抽象就是类3. 对象之间进行通信的构造叫做消息.4. 类中操作的实现过程叫做方法,一个方法有方法名,参数,方法体.5. 继承性是子类自动共享父类数据结构和方法的机制这是类之间的一种关系.6. 在类层次中,子类只继承一个父类的数据结构和方法,称为单重继承.7. 在类层次中,子类继承了多个父亲的数据结构和方法,称为多重继承.8. 多态性是指相同的操作或函数,过程可作用于多用户种类型的对象上并获得不同结果.不同的对象收到同一消息可以产生不同的结果,这种现象称为多态性.9. 抽象是指强调实体的本质,内在的属性,忽略一些无关紧要的属性.10. 信息隐蔽是指所有软件部件内部都有明确的范围以及清楚的外部边界每个软件部件都有友好的界面接口,软件部件的内部实现与外部可访问性分离.11. 链表示对象间的物理与概念联结.12. 关联表示类之间的一种关系,就是一些可能的链的集合.第十一章 软件质量与质量保证1. 软件按照设计要求,在规定时间和条件下不出故障,持续运行的程度.2. 为了完成预定功能,软件系统所需的计算机资源和程序代码数量的程度.3. 找到并改正程序中的一个错误所需代价的程度.4. 将一个软件系统从一个计算机系统或环境移植到另一个计算机系统或环境中运行时所需的工作量.5. 将一个系统耦合到另一个系统所需的工作量.6. 修改或改进一个已投入运行的软件所需工作量的程度.7. 一个软件能再次用于其他相关应用的程度.8. 设计的规格说明书要符合用户的要求.9. 程序要按照设计规格说明所规定的情况正确执行.10. 冗余是指实现系统规定功能是多余的那部分资源,包括硬件,软件,信息和时间.第十二章 软件工程管理1. 软件配置管理,简称SCM,是一组管理整个软件生存期各阶段中变更的活动是一组管理整个软件生存期各阶段中变更的活动2. 软件配置项是软件工程中产生的信息项,它是配置管理的基本单位.3. 基线是软件生存期中各开发阶段的一个特定点,它的作用是把开发各阶段工作的划分更加明确化,使本来连续的工作在这些点上断开,以便于检查与肯定阶段成果.4. 文档是指某种数据媒体和其中所记录的数据.在软件工程中,文档用来表示对需求,工程或结果进行描述,定义,规定,报告或认证的任何书面或图示的信息.它们描述和规定了软件设计和实现的细节,说明使用软件的操作命令.第十三章 软件开发环境1. 软件开发环境是相关的一组软件工具集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成.2. 软件工具是指为支持计算机软件的开发,维护,模拟,移植或管理而研制的程序系统.3. CASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发.4. 一个组织中的CASE系统从被始需求到完全废弃这一生存期.5. 一个CASE工作台是一组工具集,支持像设计,实现或测试等特定的软件开发阶段.。

07169软件开发工具与环境

07169软件开发工具与环境

07169软件开发工具与环境第一版1、软件开发环境的主要组成成分是什么?什么是软件开发环境?软件开发环境的主要组成成分是软件工具。

软件开发环境是指在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统。

2、软件开发环境可分为哪四层?软件开发环境包括哪些特性?软件开发环境可分为以下四层:(1)宿主层:它包括基本宿主硬件和基本宿主软件。

(2)核心层:一般包括工具组、环境数据库和会话系统。

(3)基本层:一般包括最少限度的一组工具,如编译工具、编辑程序、调试程序、连接程序和装配程序等。

这些工具都是由核心层来支援的。

(4)应用层:以特定的基本层为基础,但可包括一些补充工具,用于更好地支援各种应用软件的研制。

软件开发环境特性包括:(1)可用性。

用户友好性、易学、对项目工作人员的实际支持等;(2)自动化程序;(3)公共性。

公共性是指覆盖各种类型用户、各种软件开发活动;(4)集成化程序。

(5)适应性。

适应性是指符合用户要求的程序。

(6)价值。

得益和成本的比率。

3、软件工具由三部分构成?软件开发工具概念有哪三个要点?软件工具通常由工具、工具接口和工具用户接口三部分构成。

软件开发工具概念的三个要点:(1)它是在高级程序设计语言之后,软件技术进一步发展的产物。

(2)它的目的是在人们开发软件过程中能够给予各种不同方面、不同程度的支持或帮助。

(3)它支持软件开发的全过程,而不是仅限于编码或其他特定的工作阶段。

4、软件开发工具有哪些功能要求?软件开发工具有哪些性能要求?软件开发工具的功能要求:可以将软件开发工具应提供的各类支持工作归纳成以下5个主要方面:(1)认识与描述客观系统。

这主要用于软件工作的需求分析阶段。

由于需求分析在软件开发总的地位越来越重要,人们迫切需要在明确需求、形成软件功能说明书方面得到工具的支持。

与具体的编程相比,这方面工作的不确定程度更高,更需要经验,更难以形成规范化。

(2)存储及管理开发过程中的信息。

软件工程导论复习题及答案详解

软件工程导论复习题及答案详解

第一章一、名称解释1.软件2.文档3.软件工程4.软件生存周期5.软件工程过程6.软件生存周期模型7.软件开发方法8.软件工具二、填空题1.构成一个完整计算机系统的两部分是硬件与________。

2.程序设计时代的生产方式是________。

3.软件工程涉及到几个学科,它是一门_____学科。

4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能________。

5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是________模型。

6.喷泉模型是一种以用户需求为动力,以_______为驱动的模型。

7.结构化方法是一种面向数据流的开发方法。

由结构化分析、_______、结构化程序设计构成。

8.软件工程研究的主要内容是软件开发管理和_______两个方面。

9.软件工具是支持软件开发人员的开发和维护活动而使用的________。

10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种________,使用相应的工具来进行。

三、选择题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.1/2B.1/3C.1/4D.2/37.软件开发中大约要付出( )%的工作量进行测试和排错。

A.20B.30C.40D.508.准确地解决“软件系统必须做什么”是( )阶段的任务。

A.可行性研究B.需求分析C.详细设计D.编码9.软件生存周期中最长的是( )阶段。

A.需求分析B.概要设计C.测试D.维护四、简答题1.软件产品的特性是什么?2.软件生产有几个阶段?各有何特征?3.什么是软件危机?产生的原因是什么?4.软件工程的性质、目标和内容是什么?5.软件工程面临的问题是什么?6.软件工程过程有哪些过程?7.软件生存周期有哪几个阶段?8.软件生存周期模型有哪些主要模型?9.有哪些主要软件开发方法?参考答案二填空题1.软件 2.个体手工劳动3.综合性交叉 4.相同5.瀑布 6.对象7.结构化设计8.软件开发技术9.软件10.开发方法三、选择题1.B 2.D 3.A 4.C5.A 6.B 7.C 8.B 9.D第二章一、名称解释1.可行性研究2.技术可行性3.经济可行性4.社会可行性5.货币时间价值6.投资回收期7.纯收入8.系统流程图二、填空题1.可行性研究的目的是用最小的代价,在尽可能短的时间内,确定________。

软件工程名词解释

软件工程名词解释
5. 预防性维护
为了改进应用软件的可靠性和可维护性,为了适应未来的软硬件环境的变化,应主动增加预防性的新的功能,以使应用系统适应各类变化而不被淘汰。
6. 软件可维护性
软件可维护性的定义:软件能够被理解、校正、适应及增强功能的容易程度。
7.结构化维护
如果维护工作是从评价完整的软件配置开始入手,确定软件的重要结构特点、性能特点以及接口特点;估量要求的改动将带来的影响,并且计划实施途径。然后首先修改设计并且对所做的修改进行仔细审查。接下来编写相应的源程序代码;使用在测试说明书中包含的信息进行回归测试;最后,把修改后的软件再次交付使用。
11. 桩模块
桩模块是指模拟被测试的模块所调用的模块,而不是软件产品的组成的部分。
12. 单元测试
着重测试每个单独的模块,以确保它作为一个单元来说功能是正确的。
13. 集成测试
将模块组合起来成为一个完整的系统对其进行测试。
14. 确认测试
按照需求规格说明书中的确定指标对系统进行功能与性能的测试。
5. 数据流图
简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具.是一种功能模型.作用:它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.
第四章
1. 模块
在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位;或指大型软件系统的一部分。
第六章
1. 程序设计风格
是指一个人编制程序时所表现出来的特点、习惯、逻辑思路等
2. 程序可移植性
机器只识别0和1,不管是用什么语言写的程序最终都是0和1的串,说某种语言的移植性好是说在各种型号的机器上有能够把以这种语言写的源程序编译成机器码的编译器

大学《软件开发工具与环境》试题

大学《软件开发工具与环境》试题

2016年10月高等教育自学考试《软件开发工具与环境》试题课程代码:07169一、单项选择题(本大题共15小题,每小题2分,共30分) 1.CASE的中文含义是A.计算机辅助软件工程 B.计算机辅助设计工程C.计算机辅助系统工程 D.计算机应用系统工程2.软件开发环境中环境数据库属于A.宿主层 B.基本层C.应用层 D.核心层3.在需求分析阶段,软件开发工具提供的支持主要是A.文档的编制 B.软件项目的管理C.代码的编写 D.认识与描述客观系统4.下列属于软件项目管理工具的是A.数据字典生成器 B.反汇编程序C.静态分析器 D.PERT图工具5.下列属于软件设计输出结果的是A.功能描述 B.接口设计C.代码生成 D.行为描述6.用助记符表示的面向机器的计算机语言是A.机器语言 B.4GLC.汇编语言 D.高级语言7.在SA方法中,系统的数据描述借助A.数据结构 B.数据存储C.数据流图 D.数据字典8.下列属于网页设计工具的是A.DreamWeaver B.PowerDesignerC.Photoshop D.CorelDraw9.基于E-R模型的数据库设计方法中,E-R图表示实体的是A.椭圆 B.菱形C.矩形框 D.平形四边形10.使项目的最终用户能够控制内容和信息流,它是属于多媒体开发的A.编辑特性 B.组织特性C.交互式特性 D.提交特性11.用来进行系统设计的,将设计结果描述出来形成设计说明书软件开发工具的是A.需求分析工具 B.测试工具C.设计工具 D.编码工具12.在UML提供的图形化工具中,描述系统实现的功能是A.协作图 B.用例图C.配置图 D.对象图13.软件开发工具最重要的性能是A.存储各种信息的能力 B.版本管理能力C.工具的可靠程度 D.帮助人们编写文档14.在常见的耦合类型中,应尽量避免使用的是A.标记耦合 B.数据耦合C.控制耦合 D.内容耦合15.软件工具酶作用的对象是A.软件 B.软件底物C.软件工具 D.软件开发工具二、多项选择题(本大题共5小题,每小题3分,共15分)16.软件开发工具提供支持的有A.认识与描述客观系统 B.存储及管理开发过程中的信息C.代码的编写或生成 D.文档的编制或生成E.软件项目的管理17.软件配置管理中所使用的模式主要有A.恢复提交模式 B.合成模式 C.面向改变模式D.长事务模式 E.内模式18.信息库存储系统开发过程中属于设计成果信息的有A.数据流程图 B.版本管理 C.数据字典D.模块设计要求 E.系统结构图19.UML主要具有的特点有A.统一的建模语言 B.支持面向对象 C.支持可视化建模D.强大的表达能力 E.代码生成效率高20.软件开发工具与使用者之间交流信息的桥梁包括A.录入更新 B.联机查询 C.人机界面D.文档生成 E.总控部分三、填空题(本大题共10小题,每小题1分,共10分)21.软件开发环境是指在计算机的基本软件的基础上,为了支持软件的开发而提供的一组软件系统。

软件开发环境1:概述

软件开发环境1:概述

软件测试理论
软件测试理论
重视工具与实践 测试驱动的程序设计和开发 介绍自动单元测试。 并展示自动单元测试如何促使完善程序的设计软件 的架构。 Xunit测试模式
软件开发工具
软件开发工具的定义
高级设计语言的基础上,为了提高软件开发 的质量和效率,从规则,分析,设计,测试, 成文和管理等方面对软件开发者提供各种不 同程度的帮助的一类新型软件开发软件,定 义为软件开发工具
软件开发工具的历史
通用软件的缺点
很多功能是通用软件不具有的。例如:语法错 误 只能表现表面形式,而不能反映内部逻辑结构。 例如:ER图。 不能保持一致性。
软件开发工具的性能
软件开发工具表达能力 一致性保证能力 软件开发工具的易用性 软件开发工具的可靠程度 软件开发工具的环境要求不应该超出应用软件的 环境
软件开发环境课程概述
本课程包含以下几方面的内容: 实用的软件开发经验与技巧 面向对象的程序设计及UML建模 敏捷的软件开发理论 软件开发工具的原理及使用 软件测试的实用理论
敏捷软件开发过程
敏捷软件开发过程
优秀的对象设计思想,软件开发实用的建 议。 体现为原则和模式 了解和运用面向对象思想(即使使用非面 向对象的语言)的关键是设计模式,支持 软件架构的架构就是设计模式。 深入了解对象模型,其来龙去脉,又是 深刻理解设计模式的基础。因此,本课程 将围绕对象模型,和设计模式展开。探讨 这个层次上的软件构架和设计。
软件开发工具的历史
软件开发的发生发展的阶段-程序设计语言的四 个阶段
机器语言 汇编语言 高级语言(过程化的语言) 非过程化的语言
高级设计语言出现之后,软件技术发展的产物。 是在软件开发的全过程提供不同程度的帮助。整 个软件生命周期中,都是必不可少的支持

软件开发工具与环境

软件开发工具与环境
软件开发工具与环境
软件开发工具的分类
l 三、基于硬件、软件的关系划分的工具 l 按与硬件和软件的关系,软件开发工具可分两
类: l 1. 依赖于特定计算机或特定软件(如某种数据
库管理系统); l 2. 独立于硬件与其它软件的软件开发工具 ; l 一般来说,设计工具多是依赖于特定软件的。
例如 集成化的软件开发工具常常是依赖于机器 与软件的,因此,在研究与使用软件开发工具 时必须注意 。
软件开发工具与环境
1.3 软件开发工具的特性
l 软件功能是指软件能做什么事,即定性地 说明能不能的问题,告诉我们该软件工具 能在软件开发工程中提供哪些帮助;而性 能则是指事情做到什么样的程度即尽可能 定量地说明该软件开发工具能做到什么样 的程度,说明这些支持或帮助的程度如何。
l 此外,作为一般的软件来说,效率、响应 速度等也需考虑。对于软件开发工具来说, 以下五点应是特别重要的。
些补充工具以更好地支援应用软件的研制 。
软件开发工具与环境
软件开发环境
l 三、软件开发工具与环境的关系 l 软件开发环境的主要组成成分是软件工具。不
仅需要有众多的工具来辅助软件的开发,还需 有一个统一的界面。 l 软件开发环境基本组成有三:交互系统、 l 工具集和环境数据库 。 l 软件开发工具在软件开发环境中以综合、一 致和整体连贯的形态来支持软件的开发。
图形输出和多任务等。 l 2. Windows 编程的四个特点: l 事件驱动、消息循环、图形输出、资源共享。
软件开发工具与环境
常用开发环境
l 3. Windows 的基本用户界面对象: l 包括窗口、标题栏、图标、光标、插入符号、对
话框、控件等 。 l 4. Windows 应用程序的基本组成和生成过程 :要

第十三章 软件开发环境

第十三章 软件开发环境

第十三章软件开发环境软件开发环境主要目标是提高软件生产率,改善软件质量和降低软件成本,而这些目标的实现只能依靠软件工具的广泛应用,所以软件工具是开发环境中最主要的组成部分。

本章内容的要点在于软件开发环境、软件工具及CASE等基本概念的了解。

13.1软件开发环境在软件工程学中,方法和工具是同一个问题的两个不同方面,方法是工具研制的先导,工具是方法的实在体现,软件工程方法的研究成果要最终实现为软件工具和系统,才能充分发挥软件工程方法在软件开发中的作用。

软件开发环境,就是围绕着软件开发的一定目标而组织在一起的相关一组软件工具的有机集合。

13.1.1软件开发环境概论1.什么是软件开发环境软件开发环境是指在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统。

一个由IEEE和ACM支持的国际工作小组提出的关于“软件开发环境”的定义是:“软件开发环境是相关的一组软件工具集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成”。

美国国防部在STARS计划中定义如下;“软件工程环境是一组方法、过程及计算机程序(计算机化的工具)的整体化构件,它支持从需求定义、程序生成直到维护的整个软件生存期”。

软件开发环境的定义可从三方面理解:(1)软件开发环境是一组相关工具的集合。

(2)这些相关工具按一定的开发方法或一定开发处理模型组织起来的。

(3)这些相关工具支持整个软件生存期的各阶段或部分阶段。

2.软件开发环境的发展在70年代,软件开发与设计方法由结构化程序设计技术(SP)向结构化设计(SD)技术发展,而后又发展了结构化分析技术的一整套的相互衔接的SA-SD的方法学。

在80年代中期与后期,主要是实时系统设计方法,以及面向对象的分析和设计方法的发展,它克服了结构化技术的缺点。

在90年代主要是进行系统集成方法和集成系统的研究,所研究的集成CSAE环境可以加快开发复杂信息系统的速度,确保用户软件开发成功,提高软件质量,降低投资成本和开发风险。

软件工程期末考试题(含答案)

软件工程期末考试题(含答案)

软件工程期末考试题(含答案)一、选择题1.瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。

八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和_。

(C),A.详细计划测试与排错2.在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试年勺系统测试阶段的目标(A)A.需求分析阶段行性研究阶段,3.软件工程的出现主要是由于(C),A.程序设计方法学的影响C.软件危机的出现B.其它工程科学的影响D.计算机的发展,B.详细设计阶段C.概要设计阶段D.可B.可行性分析C.运行阶段D.4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实旅的主要保证是(C)A.硬件环境B.软件开发的环境D.开发人员的素质C.软件开发工具和软件开发的环境它们之间的关系表现为(B)A.相互排斥B相互补充C独立使用D.交替使用6.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C)A.基于瀑布模型的结构化方法C.基于对象的面向对象的方法(B)A.结构化方法析对象的(B)A.控制流B.数据流C.程序流D.指令流9.软件开发的结构化生命周期方法将软件生命周期划分成(A)A.计划阶段.开发阶段.运行阶段B.计划阶段.编程阶段.测试阶段D.需求分析.功能定义.系统设计C.总体设计.详细设计.编程调试B原型化方法C面向对象的方法D.控制流方法8.结构化分析方法是一个预先严格定义需求的方法,它在实施时强调的是分B.基于需求动态定义的原型化方法D.基于数据的数据流开发方法5.软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,7.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C)A.分析阶段A.瀑布模型B.设计阶段B.喷泉模型C.编码阶段C.螺旋模型D.测试阶段D.增量模型11.适合于面向对象方法学的软件生存周期模型是(B)12.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大的是(C)A.详细设计阶段B.概要设计阶段C.需求分析阶段D.测试和运行阶段13.从实用角度看,数据规范化在大多数场合选用第____范式。

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

软件开发环境名词解释
软件开发环境软件工程的支撑环境,指开发人员使用的各种工具的集合,或者说是一种集成开发环境。

功能主要有三个方面:对软件进行调试、编译和链接,管理源代码,提供生成可执行文件的环境。

基本概念:这是一种用于对一个系统中的数据结构和数据库进行定义、变更、存取以及访问的过程,它涉及数据的抽象,以及在此基础上实现对数据结构的操作,如建立、查找、修改和删除。

软件开发环境不仅限于支持数据的建模与操作,还需要提供一个机制来表示和实现一些规则。

这种环境应该提供给程序员一个通用性的环境,允许程序员很容易地将它们连接起来,并且拥有描述那些过程所需的元素。

主要包括四类:对编译器的控制(编译器选项),支持编译多种程序
语言,支持一个或多个版本的语言,对大型系统的运行管理。

如果编译器的选项足够灵活,可以使用编译多个程序语言的编译器。

支持程序语言包括C, C++, Smalltalk, Java, Python等。

支持版本包括: High(为跨平台而设计的)、 Mid(低的)和Non-High(为单
机而设计的)。

支持的语言有: C++、 Smalltalk、 Java、 Python、Perl、 Python、 Ruby、 PHP、 Shell等。

编译器支持包括: GCC,GCC, Fortran, VHDL, J2SE, QTel, VC6等等。

编程风格( coding style):程序员为解决特定问题而遵循的算法,也称编程习惯。

从软件工程的角度看,不同风格的算法导致相异的软件开发流程。

常见的软件开发风格主要有结构化风格、面向对象风格、原型化风格等。

结构化风格( structured style):分析阶段
和设计阶段采用规范化的程序设计风格。

对大型软件系统的开发,为便于风格统一和标准化,一般都采用结构化风格。

结构化风格适用于规模较小的软件项目。

面向对象风格( object oriented style):设计阶段采用面向对象程序设计风格。

面向对象风格适用于大型软件系统的开发。

原型化风格( prototype based style):软件设计阶段采用自顶向下逐步求精的方法,一开始就尽量考虑全局的效果。

原型化风格适用于开发初期比较大的软件项目。

按照支持软件开发过程的工具划分,有集成开发环境( IDE)、工具( tools)、语言处理程序( Language Processing Processing, language)、环境
( Environment)等。

从系统软件开发到应用软件开发的开发平台、操作系统和工具的集合,为软件的生存期提供安全保障,是软件生存周期的重要组成部分。

相关文档
最新文档