(完整版)名词解释(软件工程)
软件工程名词解释汇总
软件危机 .指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
纯收入. 在整个生命周期内系统的累计经济效益(折合成现在值)与投资之差。
模块.是数据说明、可执行语句等程序对象的集合。
原型.是使用样机,使用户通过实践获得对未来系统的的概念,可以更准确提出要求。
BROOKS定律向一个已经延晚的项目追加开发人员,可能使它完成的更晚数据字典。
是关于数据信息的集合。
描述数据流图的数据存储、数据加工(最底层加工)和数据流。
PDL。
是使用样机,使用户通过实践获得对未来系统的的概念,可以更准确提出要求模块独立性:指每个模块只完成系统要求的独立的子功能(即:功能单一),并且与其他模块的联系最少且接口简单(比如:只有一个接口)。
软件复用:将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费。
内聚:一个模块内部各成分之间相关联程度的度量测试用例:为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求软件生存周期模型:描述软件开发过程中各种活动如何执行的模型信息隐蔽:将每个程序的成分隐蔽或封装在一个单一的设计模块中,定义每一个模块时尽可能少地显露其内部的处理McCabe度量法:由Thomas McCabe提出的一种基于程序控制流的复杂性度量方法动态模型:用于描述系统的过程和行为软件维护:在软件运行或维护阶段对软件产品所进行的修改.CMM:软件过程能力成熟度模型软件调试:软件测试成功后,根据错误迹象确定错误的原因和准确位置,并加以改正。
耦合:块间联系,软件系统结构中各模块间相互联系紧密程度的一种度量配置管理:一种标识、组织和控制修改的技术,应用于整个软件工程过程软件项目计划:一个软件项目进入系统实施的启动阶段JSP方法面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入,输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。
软件工程名词解释
1.抽象:现实世界中一定事物、状态或过程之间总存在着某些相似的方面,把这些相似的方面几种概括起来,暂时忽略它们之间的差异。
2.对象:描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。
3.结构化程序设计:如果一个程序的代码块仅仅通过顺序、选择和循环这三种控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个这个程序是结构化的。
4.模块:模块是由边界元素限定的相邻的程序元素的序列,而且有一个总体标识符来代表它。
5.模块化:把程序划分成独立运行且可以独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。
6.软件:是程序、数据及相关文档的完整集合。
程序是能够完成预定功能和性能的可执行的指令序列;数据是使程序能够适当地处理信息的数据结构;文档是开发、使用和维护程序所需要的图文资料。
7.软件工程:是指导计算机软件开发和维护的工程科学。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护8.软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重的问题。
9.软件生命周期:是指从软件定义、开发、使用、维护到淘汰的全过程。
10.数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
11.条件覆盖:条件覆盖的含义是,不仅每条语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果。
12.判定覆盖:不仅每个语句必须至少执行一次,而且每个判定的每种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至少执行一次。
13.语句覆盖:选择足够多的测试数据,使被测程序中每个语句至少执行一次。
14.黑盒测试:黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息(如,数据库或文件)的完整性。
软件工程-名词解释
第1章软件:计算机程序及说明程序的各种文档。
“程序”是计算任务的处理对象和处理规则的描述;“文档”是有关计算机程序功能、设计、编制、使用的文字或图形资料。
软件生产的发展:程序设计时代,程序系统时代,软件工程时代。
软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。
软件工程性质:它涉及计算机科学、工程科学、管理科学、数学等领域,计算机科学着重于原理和理论,而软件工程着重于如何建造一个软件系统。
软件工程要用工程科学中的观点来进行费用估算、制定进度、制定计划和方案。
软件工程要用管理科学中的方法和原理进行软件生产的管理。
软件工程要用数学的方法建立软件开发中的各种模型和各种算法,如可靠性模型,说明用户需求的形式化模型等。
软件工程研究的主要内容是软件开发技术和软件开发管理两个方面。
在软件开发技术中,主要研究软件开发方法、软件开发过程、软件开发工具和环境。
在软件开发管理中,主要是研究软件管理学、软件经济学、软件心理学等。
软件工程面临的问题:软件费用;软件可靠性;软件维护;软件生产率;软件重用。
软件工程过程:获取过程;供应过程;开发过程;操作过程;维护过程;管理过程;支持过程。
软件生存周期:可行性分析和项目开发计划;需求分析;概要设计;详细设计;编码;测试;维护。
软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。
瀑布模型是将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。
增量模型是一种非整体开发的模型。
瀑布模型是一种整体开发的模型螺旋模型将瀑布模型与增量模型结合起来,加入了风险分析,用于复杂的大型软件开发;分为几个螺旋周期:第一,制定计划;第二,风险分析;第三,开发实施;第四,用户评估。
喷泉模型是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。
喷泉模型使开发过程具有迭代性和无间隙性。
基本知识的模型又称智能模型,它把瀑布模型和专家系统结合在一起。
变换模型是一种适合于形式化开发方法的模型。
软件工程名词解释
软件工程名词解释软件工程名词解释1. 软件工程软件工程是指通过系统化、规范化和可量化的方法来开发、运行和维护软件系统的学科。
它涉及软件需求分析、系统设计、编码、集成、测试、部署和维护等一系列活动。
2. 需求分析需求分析是软件工程中的一个重要环节,通过与用户的交流和理解,确定软件系统需要满足的功能、性能和约束条件。
它包括需求收集、分析、规格说明和验证等过程,目的是确保软件系统开发过程中对需求的准确理解和衡量。
3. 系统设计系统设计是软件工程中的一个关键过程,其目标是根据需求分析的结果,设计出满足系统需求的软件架构和组件。
系统设计包括结构设计、接口设计、数据设计等,通过定义系统的结构和组织方式,为后续的编码和集成提供指导和依据。
4. 编码编码是将系统设计的结果转化为计算机可执行的程序代码的过程。
在编码阶段,程序员根据系统设计的规范和要求,使用特定的编程语言将算法和逻辑实现为计算机程序。
编码需要具备良好的编程能力和规范,保证代码的质量和可维护性。
5. 集成与测试集成与测试是将各个模块或组件组合在一起,验证系统的功能和性能是否符合预期。
在集成和测试过程中,需要进行单元测试、集成测试和系统测试等不同层次和类型的测试,发现和修复系统中的问题,确保系统的正确性和稳定性。
6. 部署与交付部署与交付是将开发完成的软件系统部署到预定的环境中,并交付给用户或客户使用。
在部署过程中,需要进行系统安装、配置和调试等操作,确保系统能够正常运行。
交付后,还需要提供必要的技术支持和维护,确保软件系统的正常运行和持续改进。
7. 维护软件维护是指对已交付的软件系统进行问题修复、功能增强和性能优化等一系列活动。
随着时间的推移,软件系统可能会遇到各种问题,需要及时响应和处理。
维护阶段是软件工程生命周期中最长久的阶段,需要投入相应的资源和精力。
8. 敏捷开发敏捷开发是一种迭代、交付和变化适应的软件开发方法。
在敏捷开发中,团队通过频繁地交付可用的软件版本,并与用户进行持续的沟通和反馈,根据需求的变化进行调整和优化。
软件工程_名词解释
名词术语:1. 软件工程:软件工程是指导计算机软件开发和维护的一门工程学科---P52. 软件危机:软件危机是指在计算机软件的开发和维护的过程中所遇到的一系列严重问题。
---P13.软件:完成特定功能的程序+数据结构+文档3. 文档:文档是影响软件可维护性的决定因素。
可分为用户文档和系统文档。
---P1954. 系统文档:系统文档描述系统设计、实现和测试等各方面的内容。
---P1955. 软件生命周期:软件生命周期由软件定义、软件开发和运行维护3个时期组成。
---P116. 瀑布模型:在20世纪80年代之前,瀑布模型一直是唯一被广泛采用的生命周期模型,现在它仍然是软件工程中应用的最广泛的模型。
---P157. 快速模型:所谓快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。
快速原型是不带反馈环的。
---P16 8. 软件结构:软件结构(即由模块组成的层次系统)可以用层次图或结构图来描绘。
---P939. 模块:模块是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它。
模块化就是把程序划分成独立命名且可独立访问的模块。
---P9410. 信息隐蔽(5.2.4):信息隐蔽使得一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说,是不能访问的。
---P9611. 内聚耦合:模块的独立性可以由两个定性标准度量,这两个标准分别称为内聚和耦合。
耦合衡量不同模块彼此间相互依赖的紧密程度;内聚衡量一个模块内部各个元素彼此结合的紧密程度。
---P9712. 三种基本控制结构:任何程序均可以由顺序、选择和循环三种基本控制结构构造。
13.主程序员组:P32113. 结构程序设计:结构程序设计是尽可能少用GOTO语句的程序设计方法。
最好仅在检测出错误时才使用GOTO语句,而且应该总是使用前向GOTO语句。
---P11914. 系统设计:P9115. 编码:程序员在相同的时间内可以写出的高级语言语句数和汇编语言指令数大体相同,因此用高级语言写程序比用汇编语言写程序生产率可以提高好几倍。
软件工程名词解释
软件工程名词解释软件工程名词解释1·软件工程(Software Engineering):软件工程是研究和应用计算机科学原理和方法,以系统化、规范化、可量化的方式开发、运行和维护软件的一门学科。
2·需求分析(Requirement Analysis):需求分析是软件工程中的第一步,指的是分析和理解用户对软件系统的需求,确定系统的功能和性能要求。
3·设计(Design):设计阶段是根据需求分析阶段的需求,制定软件的整体架构和详细设计方案,包括软件结构、模块划分、接口定义等。
4·编码(Coding):编码阶段是将设计阶段的详细设计方案转化为计算机可执行的代码,实现软件功能。
5·测试(Testing):测试阶段是对编码完成的软件进行全面的测试,发现和修复软件中的错误和缺陷,确保软件的质量和稳定性。
6·部署(Deployment):部署阶段是将测试通过的软件安装到目标环境中,并进行相关配置和调试,使软件能够正常运行。
7·维护(Mntenance):维护阶段是在软件发布后,对软件进行日常的维护和更新,包括错误修复、功能添加等。
8·软件开发生命周期(Software Development Life Cycle):软件开发生命周期是指从需求分析到软件维护的整个过程,包括需求分析、设计、编码、测试、部署和维护等阶段。
9·迭代开发(Iterative Development):迭代开发是一种软件开发方法,将整个开发过程分成多个迭代周期,每个迭代周期内完成一部分功能,逐步完善软件。
10·敏捷开发(Agile Development):敏捷开发是一种快速响应需求变化的软件开发方法,强调灵活性和与用户的紧密合作。
11·UML(Unified Modeling Language):统一建模语言是一种标准的面向对象建模语言,用于描述软件的需求、设计和结构等,是软件工程中常用的建模工具。
软件工程名词解释
●软件:是计算机程序、规程以及运行计算机系统可能需要的相关文档和数据。
●软件危机:是指在计算机软件的开发和维护过程中遇到的一系列严重问题。
●软件工程:①将系统性的、规范化的、可定量的方法应用于软件的开发、运行和维护,即工程化应用到软件上;②对①中所述方法的研究。
●软件过程:是软件工程人员为了获得软件产品而在软件工具的支持下实施的一系列软件工程活动。
●软件项目管理:是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。
●软件项目计划:是一个用来协调所有其他计划、以指导项目实施和控制的文件,它应该随着项目的进展和信息的补充进行定期完善。
●风险识别:是试图采用系统化的方法,识别特定项目已知的和可预测的风险。
●风险分析:是对已识别的风险进行估计和评价,确定风险发生的概率与后果。
●风险监控:是跟踪和监视项目的执行状态,洞察由于人员、技术、环境等方面的变化而给项目目标实现产生的影响。
●软件需求:①用户解决问题或达到目标所需的条件或能力。
②系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力。
③一种反映上面①或②所描述的条件或能力的文档说明。
●业务需求:是组织或客户对于系统的高层次目标要求,定义了项目的远景和范围,即确定软件产品的发展方向、功能范围、目标客户和价值来源。
●用户需求:是从用户角度描述的系统功能需求和非功能需求,通常只涉及系统的外部行为,而不涉及系统的内部特性。
●系统需求:是更加详细地描述系统应该做什么,通常包括许多不同的分析模型,诸如对象模型、数据模型、状态模型等。
●需求工程:是应用已证实有效的原理和方法,并通过合适的工具和符号,系统地描述出待开发系统及其行为特征和相关约束。
●设计:是研究系统的软件实现问题,即在分析模型的基础上形成实现环境下的设计模型;●面向对象设计:是根据已建立的系统分析模型,运用面向对象技术,进行系统的软件设计。
软件工程名词解释
软件工程名词解释软件工程名词解释:1.软件工程:软件工程是一种系统工程,涉及软件开发和维护的全过程,包括需求分析、设计、编码、测试和部署等各个阶段。
2.需求分析:需求分析是软件开发过程中的第一步,通过对用户需求进行调研和分析,确定系统需要满足的功能和性能要求。
3.设计:设计阶段是根据需求分析的结果,确定软件系统的总体结构和各个组件之间的关系,包括架构设计和详细设计两个层次。
4.架构设计:架构设计是软件系统的总体设计,确定系统的模块组成、组件间的协作方式以及系统的分层结构。
5.详细设计:详细设计是在架构设计的基础上,对各个模块进行具体的设计,包括数据结构、算法、接口定义等。
6.编码:编码阶段是根据设计阶段的结果,将设计的模块和功能转化为具体的程序代码。
7.测试:测试是在编码完成后的一个重要阶段,通过对软件系统进行各种测试,检验系统的功能是否符合需求,以及软件的稳定性和性能。
8.部署:部署阶段是将软件系统部署到目标环境中,包括安装、配置和上线等操作。
9.维护:维护阶段是软件系统发布后的阶段,主要是针对已发布的软件进行修改、修复和更新。
10.瀑布模型:瀑布模型是一种线性的软件开发过程模型,包括需求分析、设计、编码、测试和部署等阶段,每个阶段都是依序进行的。
11.敏捷开发:敏捷开发是一种迭代和增量的软件开发方法,强调开发团队的合作和快速响应用户需求的能力。
12.原型模型:原型模型是一种用于快速展示和验证软件系统功能的模型,可以帮助需求收集和设计。
13.UML:UML(Unified Modeling Language)是一种用于建模软件系统的标准化方法,包括用例图、类图、时序图等。
附件:本文档所涉及的附件包括需求分析文档、设计文档、测试报告等。
法律名词及注释:</br>1.版权:版权是指对著作权人对其所创作的作品享有的权利,包括复制、发行、展示、表演、传播和改编等权利。
2.许可证:许可证是指知识产权所有者授予他人使用其知识产权的一种许可证书,规定了被许可方可以使用的范围和条件。
软件工程(名词解释)
1、软件:能完成预定功能、性能,并对相应数据进行加工的程序和描述数据及其操作的文档。
2、软件工程:是采用工程的概念、原理、技术和方法,并结合正确的管理技术和当前能够得到的最先进的技术方法,经济高效地开发和维护软件的一门工程学科。
3、软件过程:软件过程是指软件开发人员为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
4、软件生命周期:一个软件从定义、开发、使用和维护直至最后被废弃要经历的漫长时期。
5、软件危机:是指计算机软件的开发和维护过程中所遇到的一系列严重的问题。
页脚6、结构化分析:是面向数据流自顶向下逐步求精获取的方法,适用于数据处理系统的需求分析。
7、实体—联系图:描述系统所有数据对象的组成和属性及数据对象关系的图形语言。
8、数据字典:由数据条目组成,数据字典描述、组织和管理数据流图中的数据流、加工、数据存储等数据元素。
9、结构化设计:基于数据流的设计方法,将数据流图转换为软件结构。
10、模块化:是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
页脚11、逐步求精:是一种自顶向下的设计策略,是人类解决复杂问题时常用的一种技术。
是为了能集中精力解决主要问题而尽量推迟考虑问题的细节。
12、信息隐蔽:在设计中确定模块时使得一个模块的所包含的信息,对于不需要这些信息的模块来说,是不能访问的。
13、耦合:也称模块之间的联系。
指在软件系统结构中,各模块间相互联系紧密程度的度量。
模块之间的联系越紧密,其耦合程度就越强,模块的独立性就越差。
14、内聚:也称块内联系,指模块的功能强度的度量,是一个模块内部各元素之间彼此结合紧密程度的度量。
15、作用域:是指受该模块内的一个判断影响的所有模块的集合。
页脚16、控制域:指模块本身以及其所有直接或间接从属于它的模块集合。
17、扇出:指一个模块直接调用模块的数目。
18、扇入:指有多少个上级模块直接调用它。
19、模块独立性:每个模块独立完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单。
(完整版)名词解释(软件工程)
三、名词解释1、软件:在计算机系统中,与硬件相互依存的逻辑部件,它由程序、数据及相关文档组成。
2、软件工程:是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
3、数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
4、模块化:是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块集总起来组成一个整体,可能完成指定的功能满足问题的需求。
5、类:对具有相同数据和相同操作的一组相似对象的定义。
6、软件危机: 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
7、软件维护:在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程.8、继承:子类自动地共享基类中定义的数据和方法的机制.9、投资回收期: 就是使累计的经济效果等于最初投资的需要的时间。
10、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。
11、软件的生命周期:一个软件从定义、开发、使用和维护,直到最终被废弃所经历的一系列时期。
12、投资回收期:就是使累计的经济效果等于最初投资的需要的时间。
13、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。
14、模块:数据说明、可执行语句等程序对象的集合,它是单独命名的而且可通过名字来访问。
15、宽度:是软件结构内同一个层次上的模块总数的最大值。
16、事务流:数据沿输入通路到达一个处理,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行。
这类数据流应该划分为一类特殊的数据流,称为事务流。
17、耦合:衡量不同模块彼此间互相依赖的紧密程度。
18、事件:是某个特定时刻所发生的事情,它是对引起对象从一种状态转换到另一种状态的现实世界中的事件的抽象。
19、函数重载:指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。
软件工程名词解释[整理]
1、软件:是计算机程序及其说明程序的各种文档。
4、软件危机:是计算机软件的开发和维护过程所遇到的一系列严重的问题。
5、软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。
(它是一门综合性的交叉学科,它涉及计算机科学、工程科学、管理科学、数学等。
)6、软件工程过程:规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。
其目的:是为各种人员提供一个公共的框架,以便用相同的语言进行交流。
包括七个过程:获取过程、供应过程、开发过程、操作过程、维护过程、管理过程、支持过程。
7、软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
包括:可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护(是软件生存周期中最长的阶段)等。
8、软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。
(模型:是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。
)主要有:瀑布模型(整体开发模型)、增量模型(非整体开发模型)、螺旋模型(是瀑布和增量相结合的模型;一种风险驱动的模型)、喷泉模型(是以用户需求为动力,以对象作为驱动的模型)、基于知识的模型(又称智能模型,是把瀑布模型和专家系统结合在一起的模型)和变换模型(合适于形式化开发的模型)等。
9、软件开发方法:用早就定义好的技术集合及符号表示习惯来组织软件生产的过程。
主要:结构化方法(面向数据流的开发方法,指导思想:自顶向下、逐步求精。
基本原则:功能的分解与抽象)、Jackson方法(面向数据结构的开发方法)、维也纳开发方法(VDM)(是一种形式化的开发方法)、面向对象的开发方法(它有:Booh 方法、Coad方法、和OMT等UML语言是面向对象的标准建模语言)。
10、软件开发的目标:是在规定的投资和时间内,开发出符合用户需求的高质量的软件。
11、软件工具:一般是指为了支持软件人员开发和维护活动而使用的软件。
名词解释软件工程
软件工程名词解释
一、软件工程
软件工程是计算机科学的一个分支,它涉及软件开发、软件维护、软件测试、软件质量保证等方面的内容。
软件工程旨在通过使用各种工具和技术,开发出高质量、可靠、易于维护、可扩展的软件系统。
二、软件开发生命周期
软件开发生命周期是指软件开发的各个阶段,从需求分析、设计、编码、测试、部署、维护等过程。
软件开发生命周期中每个阶段都有明确的目标和任务,同时需要进行评审和检查,以确保软件质量。
三、软件需求分析
软件需求分析是软件开发生命周期中的第一个阶段,它的任务是确定软件系统的需求,包括功能需求、性能需求、安全需求等。
软件需求分析需要对用户需求进行深入了解和分析,以确保软件系统能够满足用户的需求。
四、软件设计
软件设计是软件开发生命周期中的第二个阶段,它的任务是基于需求分析结果,设计出符合用户需求的软件系统。
软件设计需要考虑软件系统的架构、模块划分、数据结构、算法等方面,以确保软件系统的可靠性和可维护性。
五、软件测试
软件测试是软件开发生命周期中的第三个阶段,它的任务是验证软件系统的正确性和可靠性。
软件测试包括单元测试、集成测试、系
统测试、验收测试等,测试方法包括黑盒测试、白盒测试等。
六、软件维护
软件维护是软件开发生命周期中的第四个阶段,它的任务是维护软件系统的正常运行和改进软件系统的性能和功能。
软件工程(名词解释)
1、软件:能完成预定功能、性能,并对相应数据进行加工的程序和描述数据及其操作的文档。
2、软件工程:是采用工程的概念、原理、技术和方法,并结合正确的管理技术和当前能够得到的最先进的技术方法,经济高效地开发和维护软件的一门工程学科。
3、软件过程:软件过程是指软件开发人员为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
4、软件生命周期:一个软件从定义、开发、使用和维护直至最后被废弃要经历的漫长时期。
5、软件危机:是指计算机软件的开发和维护过程中所遇到的一系列严重的问题。
6、结构化分析:是面向数据流自顶向下逐步求精获取的方法,适用于数据处理系统的需求分析。
7、实体—联系图:描述系统所有数据对象的组成和属性及数据对象关系的图形语言。
8、数据字典:由数据条目组成,数据字典描述、组织和管理数据流图中的数据流、加工、数据存储等数据元素。
9、结构化设计:基于数据流的设计方法,将数据流图转换为软件结构。
10、模块化:是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
11、逐步求精:是一种自顶向下的设计策略,是人类解决复杂问题时常用的一种技术。
是为了能集中精力解决主要问题而尽量推迟考虑问题的细节。
12、信息隐蔽:在设计中确定模块时使得一个模块的所包含的信息,对于不需要这些信息的模块来说,是不能访问的。
13、耦合:也称模块之间的联系。
指在软件系统结构中,各模块间相互联系紧密程度的度量。
模块之间的联系越紧密,其耦合程度就越强,模块的独立性就越差。
14、内聚:也称块内联系,指模块的功能强度的度量,是一个模块内部各元素之间彼此结合紧密程度的度量。
15、作用域:是指受该模块内的一个判断影响的所有模块的集合。
16、控制域:指模块本身以及其所有直接或间接从属于它的模块集合。
17、扇出:指一个模块直接调用模块的数目。
18、扇入:指有多少个上级模块直接调用它。
19、模块独立性:每个模块独立完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单。
软件工程名词解释
软件工程名词解释1. 软件概要设计2. 模块3. 模块化4. 抽象5. 信息隐蔽6. 模块独立性7. 耦合性8. 无直接耦合9. 数据耦合10. 标记耦合11. 控制耦合12. 公共耦合13. 内容耦合14. 内聚性15. 偶然内聚16. 逻辑内聚17. 时间内聚18. 通信内聚19. 顺序内聚20. 功能内聚21. 软件结构图22. 结构化设计23. 变换流24. 事务流1.软件概要设计又称结构设计,这是一个把软件需求转换为软件表示的过程。
2.模块在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,在软件的体系结构中,模块是可组合、分解和更换的单元。
3.模块化指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
每个模块完成一个特定的子功能,所有模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。
4.抽象是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同特性而暂不考虑它的细节,不考虑其他因素。
5. 信息隐蔽指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说,是不能访问的。
6.模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。
7. 耦合性也称块间关系,指软件系统结构中各模块间相互联系紧密程度的一种度量。
8.无直接耦合指两个模块之间没有直接关系,它们分别从属于不同模块的控制和调用,它们之间不传递任何信息。
9.数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中值传递。
10.标记耦合指两个模块之间传递的是数据结构。
11.控制耦合指一个模块调用另一个模块时,传递的是控制变量(如开关、标志等),被调用模块通过该控制变量的值有选择地执行块内某一功能。
12.公共耦合指通过一个公共数据环境相互作用的那些模块间的耦合。
公共数据环境可以是全程变量或数据结构、共享的通信区、内存的公共覆盖区及任何存储介质上的文件、物理设备等。
名词解释_软件工程
名词解释_软件工程软件工程名词解释1:软件工程的定义软件工程是一门研究和应用如何以系统化、规范化、可定量方式来开发和维护软件的学科。
2:软件开发生命周期软件开发生命周期(SDLC)是指软件从概念阶段到废弃阶段的整个过程,包括需求分析、设计、编码、测试、发布和维护等阶段。
2.1 需求分析阶段在需求分析阶段,软件工程师与客户合作确定系统的需求和期望功能。
这个阶段包括需求收集、分析和规范等活动。
2.2 设计阶段在设计阶段,软件工程师使用需求分析的结果来定义软件的体系结构,确定模块划分、数据结构和算法等。
2.3 编码阶段在编码阶段,开发人员根据设计文档编写源代码,并进行代码的单元测试和集成测试。
2.4 测试阶段在测试阶段,软件工程师进行各种测试活动,如单元测试、集成测试、系统测试和验收测试,以确保软件的质量和功能正常。
2.5 发布与维护阶段在软件开发完成后,将软件部署到目标环境,并进行维护和升级。
3:软件开发方法3.1 瀑布模型瀑布模型是一种线性的软件开发过程模型,按照需求分析、设计、编码、测试和维护的顺序进行。
3.2 敏捷开发敏捷开发是一种迭代的软件开发方法,通过迅速响应变化、定期交付可用软件来满足客户需求。
3.3 增量开发增量开发是一种将软件划分为多个增量进行开发的方法,每个增量都是一个完整的软件系统。
4:软件质量保证软件质量保证是指通过制定标准和规范、进行测试和评审等活动,确保软件开发过程和最终产品的质量。
4.1 质量计划质量计划是通过确定质量目标、制定质量标准和规范、安排质量活动等方式,规划软件开发过程中的质量保证活动。
4.2 质量控制质量控制是通过监控和评估软件开发过程中的活动和结果,确保其符合质量要求。
4.3 缺陷管理缺陷管理是指对软件开发过程中发现的缺陷进行跟踪、记录和修复的过程,以确保软件质量的持续改进。
5:附件本文档附带的附件包括需求规格说明书、设计文档、测试计划、用户手册等。
6:法律名词及注释6.1 版权版权是指著作权人对其创作作品所享有的权利,包括复制、发行、展示和演绎等权利。
软件工程名词解释汇总
软件工程名词解释汇总软件工程名词解释汇总1:软件工程(Software Engineering):软件工程是指应用科学和数学原理、经验法则和艺术方法,以系统化生产、运行和维护高质量软件的工程化过程。
2:软件工程师(Software Engineer):软件工程师是指具备软件开发和维护技能的专业人员,负责软件生命周期中的不同阶段。
2.1 软件开发人员(Software Developer):负责开发和编码软件系统的专业人员。
2.2 软件测试工程师(Software Test Engineer):负责进行软件测试和质量保证的专业人员。
2.3 软件项目经理(Software Project Manager):负责规划、组织和管理软件项目的专业人员。
3:软件生命周期(Software Life Cycle):软件生命周期指软件从定义需求到和维护的整个过程。
3.1 需求分析(Requirements Analysis):在软件开发过程中,通过研究用户的需求并将其转化为明确的规格说明。
3.2 设计(Design):根据需求分析的结果,制定软件系统的整体结构和模块划分,并确定软件的详细设计方案。
3.3 编码(Coding):根据设计方案,将软件系统的功能代码实现出来。
3.4 测试(Testing):对编码完成的软件进行测试,以验证软件的正确性和可靠性。
3.5 验收(Acceptance):经过测试合格后,由用户进行验收,确认软件符合需求并满足用户的期望。
3.6 维护(Mntenance):在软件生命周期的后期,对软件进行修复、改进和升级,以保持其持续可用和稳定。
4:面向对象(Object-Oriented):面向对象是一种软件设计方法,强调将问题分解为多个相互关联的对象,并通过对象之间的通信和相互协作来解决问题。
4.1 类(Class):面向对象中的基本概念,用于描述具有相同属性和行为的对象的集合。
4.2 对象(Object):类的一个实例,具有独立的状态和行为。
名词解释(软件工程)
三、名词解释1、软件:在计算机系统中,与硬件相互依存的逻辑部件,它由程序、数据及相关文档组成。
2、软件工程:是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
3、数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
4、模块化:是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块集总起来组成一个整体,可能完成指定的功能满足问题的需求。
5、类:对具有相同数据和相同操作的一组相似对象的定义。
6、软件危机: 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
7、软件维护:在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程.8、继承:子类自动地共享基类中定义的数据和方法的机制.9、投资回收期: 就是使累计的经济效果等于最初投资的需要的时间。
10、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。
11、软件的生命周期:一个软件从定义、开发、使用和维护,直到最终被废弃所经历的一系列时期。
12、投资回收期:就是使累计的经济效果等于最初投资的需要的时间。
13、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。
14、模块:数据说明、可执行语句等程序对象的集合,它是单独命名的而且可通过名字来访问。
15、宽度:是软件结构内同一个层次上的模块总数的最大值。
16、事务流:数据沿输入通路到达一个处理,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行。
这类数据流应该划分为一类特殊的数据流,称为事务流。
17、耦合:衡量不同模块彼此间互相依赖的紧密程度。
18、事件:是某个特定时刻所发生的事情,它是对引起对象从一种状态转换到另一种状态的现实世界中的事件的抽象。
19、函数重载:指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、名词解释
1、软件:在计算机系统中,与硬件相互依存的逻辑部件,它由程序、数据及相关文档组成。
2、软件工程:是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
3、数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
4、模块化:是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块集总起来组成一个整体,可能完成指定的功能满足问题的需求。
5、类:对具有相同数据和相同操作的一组相似对象的定义。
6、软件危机: 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
7、软件维护:在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程.
8、继承:子类自动地共享基类中定义的数据和方法的机制.
9、投资回收期: 就是使累计的经济效果等于最初投资的需要的时间。
10、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。
11、软件的生命周期:一个软件从定义、开发、使用和维护,直到最终被废弃所经历的一系列时期。
12、投资回收期:就是使累计的经济效果等于最初投资的需要的时间。
13、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。
14、模块:数据说明、可执行语句等程序对象的集合,它是单独命名的而且可通过名字来访问。
15、宽度:是软件结构内同一个层次上的模块总数的最大值。
16、事务流:数据沿输入通路到达一个处理,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行。
这类数据流应该划分为一类特殊的数据流,称为事务流。
17、耦合:衡量不同模块彼此间互相依赖的紧密程度。
18、事件:是某个特定时刻所发生的事情,它是对引起对象从一种状态转换到另一种状态的现实世界中的事件的抽象。
19、函数重载:指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。
20、存根模块:用以模拟被测模块运行过程中所调用模块或是被测模块下层模块的替代程序。
21、变换流:信息沿输入通呼进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统,当数据流图具有这些特征时,这种信息流就叫变换流。
22、内聚:衡量一个模块内部各个元素彼此结合的紧密程度
23、扇出:是一个模块直接控制的模块数目。
24、多态性:子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。
25、驱动模块:用以模拟被测模块的上级调用模埠,或向被测模块输以数据输出一些必要信息,调用被测模块。
四、简答题1、软件生命周期分为哪三个时期?每一时期所完成的基本任务是什么?
2、简述需求分析阶段的具体任务有哪些?
3、什么是结构化程序设计?结构化程序设计采用几种控制结构?
4、程序设计语言的特点?
5、软件测试的基本任务是什么?测试与调试的区别是什么?
6、管理复审与技术审查的任务是什么?
7、可行性研究的步骤?
8、从哪些方面验证软件需求的正确性?
9、对象的特点?
10、用面向对象方法开发软件时,通常需要建立哪三种形式的模型?
11、什么是模块的作用域?什么是模块的控制域?
12、简述两种不同集成测试策略的比较?
13、什么是类?类与对象间是什么关系?
14、面向对象方法特征有哪些?
15、可行性研究的目的?应该从哪些方面研究目标系统的可行性?
16、什么是软件工程?构成软件工程的要素是什么?
17、简述软件测试的步骤?
18、对象有哪几种定义?
19、类—&—对象间的关系可以概括为哪三种?
20、简述渐增模型的特点?
21、总体设计的过程如何?
22、有几种效益的分析方法?
23、面向对象方法的主要优点有哪些?
1、答:软件定义时期,开发时期,维护时期。
定义时期的任务:问题定义;可行性研究;需求分析。
开发时期的任务:总体设计;详细设计;编码与单元测试;综合测试。
维护时期的任务:使软件持久地满足用户的需要。
2、答:软件定义时期,开发时期,维护时期。
定义时期的任务:问题定义;可行性研究;需求分析。
开发时期的任务:总体设计;详细设计;编码与单元测试;综合测试。
维护时期的任务:使软件持久地满足用户的需要。
3、答:结构程序设计:是一种设计程序的技术,它采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。
顺序,选择,循环。
4、答:1、名字说明2、类型说明3、初始化4、程序对象的局部性
5、程序模块
6、循环控制结构
7、分支控制结构
8、异常处理
9、独立编译
5、答:任务是在软件投入生产性运行之前,尽可能多地发现软件中的错误。
与测试的区别:测试是为了发现软件中的错误,而调试是诊断并改正错误。
6、管理复审:复查各个阶段的经费、开销、成本以及进度,投资回收期前景的展望。
技术审查:对每个阶段进行严格的审查,从而保证了各个阶段技术的正确性,防上错误的积累和复审。
7、答:(1)复查系统规模和目标。
(2)研究目前正在使用的系统。
(3)导出新系统的高层逻辑模型。
(4)重新定义问题。
(5)导出和评价供选择的解法。
(6)推荐行动方针。
(7)草拟开发计划。
(8)书写文档提交审查
8、答:(1)一致性,即所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。
(2)完整性,需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。
(3)现实性,指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。
(4)有效性,必须证明需求是正确有效的,确实能解决用户面对的问题。
9、对象的特点?
答:(1)以数据为中心。
(2)对象是主动的。
(3)实现了数据封装。
(4)本质上具有并行性。
(5)模块独立性好。
10、答:(1)描述系统数据结构的对象模型。
(2)描述系统控制结构的动态模型。
(3)描述系统功能的功能模型。
11、答:模块的作用域定义为受该模块内一个判定影响的所有模块的集合。
模块的控制域是这个模块本身以及所有直接或间接从属于它的模块的集合。
12、答:自顶向下测试方法主要优点是不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要
功能,而且能在早期发现上层模块的接口错误。
自顶向下测试方法的主要缺点是需要存根程序,可能遇到与此相联系的测试困难,低层关键模块中的错误发现较晚,而且用这种方法在早期不能充分展开人力。
自底向上测试言法的优缺点与自顶向下测试方法的优缺点刚好相反。
13、答:类是对具有相同数据和相同操作的一组相似对象的定义。
类是对具有相同属性和行为的一个或多个对象的描述,而对象是某个特定类所描述的一个具体对象。
14、答:(1)客观世界是由各种对象组成的。
(2)所有对象都划分成各种对象类,每个对象类都定义了一组数据和一组方法。
(3)按照子类与父类的关系,把若干个对象类组成一个层次结构的系统。
(4)对象彼此之间仅能通过传递消息互相联系。
15、答:用最小的代价在尽可能短的时间内确定问题是否能够解决。
(1)技术可行性(2)经济可行性(3)操作可行性(4)法律可行性
16、答:软件工程:是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
要素是:方法、工具、过程。
17、答:(1)模块测试(2)子系统测试(3)系统测试(4)验收测试(5)平行运行
18、答:(1)对象是具有相同状态的一组操作的集合。
(2)对象是对属性值和操作的封装。
(3)对象::=<ID,MS,DS,MI> ID:是对象的标识或名字MS是对象中的操作集合
DS:是对象的数据结构MI :是对象受理的消息名集合
19、答:1、归纳关系:它反映了一个类与若干个互不相容的子类之间的分类关系。
2、组合关系:它反映了对象之间的构成关系。
3、关联关系:反映对象之间相互依赖、相互作用的关系。
20、答:(1)在整个开发过程中需求都可能有变化。
(2)对应用领域不熟悉。
(3)高风险项目(4)用户完全参与到整个开发过程中。
(5)使用面向对象语言或第四代语言。
21、答:(1)设想供选择的方案。
(2)选取合理的方案。
(3)推荐最佳方案。
(4)功能分解。
(5)设计软件结构。
(6)数据库设计。
(7)制定测试计划(8)书写文档(9)审查和复审
22、答:(1)货币的时间价值(2)投资回收期(3)纯收入(4)投资回收率
23、答:(1)与人类习惯的思维方法一致。
(2)稳定性好。
(3)可重用性好。
(4)可维护性好。