|
知识路径: > 嵌入式系统的项目开发与维护知识 > 系统开发过程及其项目管理 > 系统开发工具与环境 >
|
被考次数:2次
被考频率:低频率
总体答错率:42%  
知识难度系数:
|
由 软考在线 用户真实做题大数据统计生成
|
考试要求:掌握
相关知识点:31个
|
|
|
|
开发环境(Development Environment)是支持产品开发的各种系统。用来辅助产品开发、运行、维护、管理和支持等过程中的活动的软件称为软件工具。系统开发过程中可使用的工具种类繁多,按照开发过程的活动可以分为支持系统开发过程的工具、支持软件维护过程的工具、支持管理过程和支持过程的工具等。
|
|
|
|
对应于开发过程的各种活动,开发工具通常有需求分析工具、设计工具、概要设计工具、编码与排错工具、测试工具等。
|
|
|
|
用于辅助需求分析活动的软件称为需求分析工具,它辅助系统分析师从需求定义出发,生成完整的、清晰的、一致的功能规范(Functional Specification)。功能规范是系统所要完成的功能的准确而完整的陈述,它描述该系统要做什么及只做什么。按照需求定义的方法可将需求分析工具分为基于自然语言或图形描述的工具和基于形式化需求定义语言的工具。
|
|
|
|
用于辅助设计活动的软件称为设计工具,它辅助设计人员从系统功能规范出发,得到相应的设计规范(design specification)。对应于概要设计活动和详细设计活动,设计工具通常可分为概要设计工具和详细设计工具。
|
|
|
|
用于辅助设计人员设计目标系统的体系结构、控制结构和数据结构。详细设计工具用于辅助设计人员设计模块的算法和内部实现细节。除此之外,还有基于形式化描述的设计工具和面向对象分析与设计工具。
|
|
|
|
辅助实现人员进行嵌入式硬件实现的电子设计自动工具、用于目标板调试的硬件仿真器,进行编码活动的工具有编码工具和排错工具。编码工具辅助编程人员用某种程序设计语言编制源程序,并对源程序进行翻译,最终转换成可执行的代码。因此,编码工具通常与编码所使用的程序语言密切相关。排错工具用来辅助程序员寻找源程序中错误的性质和原因,并确定出错的位置。
|
|
|
|
用于支持进行软件测试的工具称为测试工具,分为数据获取工具、静态分析工具、动态分析工具、模拟工具以及测试管理工具。其中,静态分析工具通过对源程序的程序结构、数据流和控制流进行分析,得出程序中函数(过程)的调用与被调用关系、分支和路径、变量定义和引用等情况,发现语义错误。动态分析工具通过执行程序,检查语句、分支和路径覆盖,测试有关变量值的断点,即对程序的执行流进行探测。
|
|
|
|
辅助维护过程中相关活动的软件称为维护工具,它辅助维护人员对系统代码及其文档进行各种维护活动。维护工具主要有版本控制工具、文档分析工具、开发信息库工具、逆向工程工具和再工程工具。
|
|
|
|
在系统开发和维护过程中一个产品往往有多个版本,版本控制工具用来存储、更新、恢复和管理一个系统的多个版本。
|
|
|
|
文档分析工具用来对开发过程中形成的文档进行分析,给出维护活动所需的维护信息。例如,基于数据流图的需求文档分析工具可给出对数据流图的某个成分(如加工)进行维护时的影响范围,以便在修改该成分的同时考虑其影响范围内的其他成分是否也要修改。除此之外,文档分析工具还可以得到被分析的文档的有关信息,如文档各种成分的个数、定义及引用情况等。
|
|
|
|
开发信息库工具用来维护项目的开发信息,包括对象、模块等。它记录每个对象的修改信息(已确定的错误及重要改动)和其他变形(如抽象数据结构的多种实现),还必须维护对象和与之有关信息之间的关系。
|
|
|
|
逆向工程工具辅助软件人员将某种形式表示的软件(源程序)转换成更高抽象形式表示的软件。这种工具力图恢复源程序的设计信息,使软件变得更容易理解。逆向工程工具分为静态的和动态的两种。
|
|
|
|
再工程工具用来支持重构一个功能和性能更为完善的软件系统。目前的再工程工具主要集中在代码重构、程序结构重构和数据结构重构等方面。
|
|
|
|
项目管理和支持工具用来辅助管理人员和系统支持人员的管理活动和支持活动,以确保系统高质量地完成。辅助管理和支持的工具很多,其中常用的工具有项目管理工具、配置管理工具和评价工具。
|
|
|
|
项目管理工具用来辅助软件的项目管理活动。通常项目管理活动包括项目的计划、调度、通信、成本估算、资源分配及质量控制等。一个项目管理工具通常把重点放在某一个或某几个特定的管理环节上,而不提供对管理活动包罗万象的支持。
|
|
|
|
配置管理工具用来辅助完成系统配置项的标识、版本控制、变化控制、审计和状态统计等基本任务,使得各配置项的存取、修改和系统生成易于实现,从而简化了审计过程,改进状态统计,减少错误,提高系统的质量。
|
|
|
|
评价工具用来辅助管理人员进行系统质量保证的有关活动。它通常可以按照某个质量模型(如ISO系统与软件质量度量模型等)对被评价的系统进行度量,然后得到相关的评价报告。评价工具有助于软件的质量控制,对确保软件的质量有重要的作用。
|
|
|
|
嵌入式系统开发环境由相关工具集和环境集成机制构成,包括如开发计算机、用于实现嵌入式软件开发和调试的集成开发环境(IDE)估计、用于实现嵌入式硬件设计的电子设计自动化工具、用户目标板调试的硬件仿真器、信号源、目标硬件调试工具以及目标硬件等,为工具集成和系统开发、维护和管理提供统一的支持。通过环境集成机制,各工具用统一的数据接口规范存储或访问环境信息库,采用统一的界面形式,保证各工具界面的一致性,同时为各工具或开发活动之间的通信、切换、调度和协同工作提供支持。在嵌入式系统开发环境中进行开发,可以使用环境中提供的各种工具,同时在环境信息库的支持下,一个工具所产生的结果信息可以被其他工具利用,使得系统开发的各项活动得到连续的支持,从而大大提高产品的开发效率,提高产品的质量。
|
|
|
|
(1)环境的服务是集成的。开发环境应支持多种集成机制,如平台集成、数据集成、界面集成、控制集成和过程集成等。
|
|
|
(2)环境应支持小组工作方式,并为其提供配置管理。
|
|
|
(3)环境的服务可用于支持各种系统开发活动,包括分析、设计、编程、测试、调试和文档等。
|
|
|
集成型开发环境是一种把支持多种系统开发方法和开发模型的软件工具集成在一起的软件开发环境。这种环境应该具有开放性和可剪裁性。开放性为环境外的工具集成到环境中来提供了方便;可剪裁性可根据不同的应用和不同的用户需求进行剪裁,以形成特定的开发环境。
|
|
|