第十章 软件工具与开发环境

28
1 第第第 第第第 软软软软软软软软软 软软软软软软软软软 10.1 软软软软 10.2 软软软软软软 10.3 软软软软软软软软软 10.4 CASE 软软

Upload: paley

Post on 13-Jan-2016

174 views

Category:

Documents


0 download

DESCRIPTION

第十章 软件工具与开发环境. 10.1 软件 工具 10.2 软件开发 环境 10.3 集成 化项目支持环境 10.4 CASE 环境 。. 10.1 软件工具 (1). 一 . 软件工具 1. 软件工具 :是指为支持计算机软件及其文档的开发、维护、模拟、 移植或管理而研制的程序系统。 2. 软件工具的 范围 (1) 传统工具 : 文本编辑程序、汇编程序、解释程序和编译程序等; (2) 支持软件生存周期 各阶段的需求分析、设计、编码、测试、维 护等 工具 和 管理工具 。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第十章 软件工具与开发环境

1

第十章第十章      软件工具与开发环境软件工具与开发环境  

10.1 软件工具10.2 软件开发环境10.3 集成化项目支持环境10.4 CASE环境。

Page 2: 第十章 软件工具与开发环境

2

10.110.1       软件工具软件工具 (1)(1)  一 . 软件工具 1. 软件工具:是指为支持计算机软件及其文档的开发、维护、模拟、 移植或管理而研制的程序系统。 2. 软件工具的范围 (1) 传统工具 : 文本编辑程序、汇编程序、解释程序和编译程序等; (2) 支持软件生存周期各阶段的需求分析、设计、编码、测试、维 护等工具和管理工具。 3. 软件工具作用:辅助软件人员进行软件开发或维护过程中某一或几 个环节的工作,有效提高软件的生产率和质量。二 . 软件工具的发展过程 1. 软件工具的发展经历了从简单工具到复杂工具、从手工工具到自动 工具、从支持程序设计阶段的工具到支持软件开发全过程的工具、 从单个工具到工具集成的演变过程。

Page 3: 第十章 软件工具与开发环境

3

10.110.1       软件工具软件工具 (2)(2)2. 软件工具的几个发展阶段

阶段 应 用 代表性工具程序设计程序系统

软件工程

软件产品

手工作业方式 , 在这阶段从框图到编码几乎没有软件工具支持。

机器指令、汇编指令。

各种高级语言的编译程序 , 各种程序语言的调试工具。

排错程序、静态分析和动态跟踪工具等。

重视软件开发各阶段支持工具的研制和应用。随着结构化程序设计、模块化程序设计等技术的广泛应用,出现了一大批软件工具或系统。

需求分析工具、软件设计工具、文档化工具、代码自动生成工具、测试工具、源代码管理工具及项目管理工具等。

软件开始成为一种工业化的产品时 , 开始使用设计规格语言来编写软件设计说明书 , 以自动生成方式来生产软件。目前进一步发展为以需求规格描述语言来书写用户需求规格书,通过自动化工具从软件资源库中选取程序模块和数据模块,自动结合,生成界面,从而得到满足用户需求的软件产品。

Page 4: 第十章 软件工具与开发环境

4

10.110.1       软件工具软件工具 (3)(3)  

阶段 功 能 工 具

三 . 软件工具的分类1. 按软件生命周期的阶段分类

需求分析

定义需求规格。 数据流图绘制与分析工具、状态转换图绘制与分析工具、面向对象的模型和分析工具、快速原型构造工具、数据字典与数据库工具等。

软件设计

描述设计结果形成设计软件规格。

HIPO 图、 PDL( 程序设计语言 ) 或 PAD( 问题分析图 )支持工具等。

编码 提供各种便利的编程作业环境。

集成化的程序员工作平台。主要包括:各种正文编辑器和常规的编译程序、汇编程序、连结程序及符号调试器等。

软件测试

支持整个测试过程

支持整个测试过程包括选择测试用例生成测试程序与测试数据、测试的执行、测试结果的评价及添加测试数据等。

静态分析器、动态覆盖率测试器、测试用例生成器、测试报告生成器及环境模拟器等。

软件维护 软件的各种维护。

反汇编程序、反编译程序、程序结构分析器、源程序格式化工具、文档生成工具、源程序至 PAD( 问题分析图 )或流程图的自动转换工具等。

Page 5: 第十章 软件工具与开发环境

5

10.110.1       软件工具软件工具 (4)(4)  

开发技术支持工具 项目管理工具

2. 按软件功能分类

系统描述 基本软件的编程语言。 辅助系统管理人员完成项目开发人员和成本估算、项目开发计划、项目资源分配与调度、软件质量保证、软件配制管理和版本控制、风险分析、项目状态报告和追踪等工作。

环境模拟 对实际环境进行模拟或借助工具进行故障状态的环境模拟。

调试测试 查明系统故障原因,并进行恢复。

性能评价 测试系统是否达到设计性能指标,及设计的性能指标是否合理,还可得到系统调试所必需的性能参数。 在系统发生故障时,迅速得到分析判断故障原因所需的各种信息,帮助系统维护人员迅速排除故障。

运行维护

一般软件工具

从软件开发到维护的全过程中,支持源程序、数据文件的管理和维护以及文档化的工具。

Page 6: 第十章 软件工具与开发环境

6

10.110.1       软件工具软件工具 (5)(5)  四 . 软件工具的评价原则 1.易用性 :友好的用户界面,用户乐于使用。 2. 对开发方法的支持:能满足预期的任务和功能需求,且能 支持完成该任务所遵循的方法学。 3.稳健性 : 具备自检测机制 ,即使在故障情况下也不会导致严 重后果 . 4. 性能 : 能使资源得到充分有效的利用。 5. 工具结构柔性 : 工具结构是柔软的、可修改的和可扩充的。

Page 7: 第十章 软件工具与开发环境

7

10.210.2       软件开发环境软件开发环境 (1)(1)  一 . 软件开发环境 :将一组相关的软件工具按照一定的软件开发方法、软件生 产和维护模型有机的组合起来,为特定的领域所使用,以支持从需求分 析、设计、编码、测试直到维护的整个软件生命周期的计算机辅辅助开 发程序系统。软件开发环境有人也称为“软件工程环境”、“ CASE 环境”。二 . 软件开发环境的分类

1. 按解决的问题分类面向 功 能 环境工具

程序设计环境

如何将规格说明转换为可运行的程序 ,属于局部编程的范畴。

UNIX设计环境、 Ada程序设计环境 (APSE) 等。

系统合成环境

将多个子系统集成一个大系统,属于全局编程的范畴。

接口控制 : 模块相连和资源共享问题的描述和制约;版本控制 : 对系统的各个版本的描述和生成。

项目管理环境

解决由于软件产品规模大、开发周期长、参加人员多等而造成的管理问题,属于多方编程的范畴。

由记录和维护系统开发的状态信息,文档的集成和分发组成。

Page 8: 第十章 软件工具与开发环境

8

10.210.2       软件开发环境软件开发环境(2)(2)  

2. 按技术发展方向分类技术 特 点

以语言为中心的环境

提供一套适合于一种语言的工具集。通常是高交互式的 , 对系统集成只提供有限支持,适于探索性的软件开发。如 INTERLISP 程序设计环境 ( 开发 LISP 程序 ) 、 Cedar环境 ( 以 Meas/Cedar语言为中心 ) 、 APSE 程序设计环境 ( 以 Ada语言为中心 )

面向结构化的环 境

为用户提供一种以编辑器为核心的支持交互式语法结构、语义分析、程序执行和调试的用户程序设计环境。用户只能在结构化的元素上操作,用户看到的不是通常的源程序文本,而是抽象的语法树。

工具箱环 境

在某种 OS基础上通过一组小的实用工具构成,虽然各工具之间往往相互独立,但系统提供统一的用户命令界面及工具之间统一的数据交换方式。 工具箱中各工具之间是相互独立的,用户可根据需要进行灵活的增加和裁减。 工具箱环境中一般除了包括支持编码阶段的工具 (如编辑程序、编译程序、汇编程序、连结程序调试程序等 )外,还可包括支持大型软件开发方面的工具。 由于工具箱环境具有较强的通用性和灵活性,因而目前商品化的算机系系统上配置的软件环境大多属于这一类。如: UNIX程序设计环境、及 VAX/VNS SET、PCDE 、 APCE 等程序设计环境。

Page 9: 第十章 软件工具与开发环境

9

10.210.2       软件开发环境软件开发环境 (3)(3)  

3. 按集成化程度分类集成 第一代 第二代 第三代

基础

集成方式

调用方式

工具结构

界面

建立在 OS之上,如 UNIX 、VMS 等;

环境数据库建立在 DBS之上,如 DB2 ORACLK 、 SYBASE 、INFOMIX 等; 建立在知识库系统上,向

智能化方向发展; 工具之间通过一个公用框架进行集成;现有工具不需经过大的修改即可加入;

工具集成在更基本的层次上;现有工具不能随意加入,需作适当的修改和定制;

通过 OS 的命令语言接口或程序调用接口使用这些工具;

顺序调用分立工具的方式完全被集成化的工具所代替,用户不需要在任务之间来回切换不同的工具;

工具使用统一的文件结构,并成为环境信息库的一部分

采用形式化方法、面向对象的方法和软件重用等新技术;

人机界面采用单色、低分辨的文字终端,图形能力差,使用菜单技术;

人机界面采用高分辨率图形显示终端,支持鼠标,具有多窗口、图标、对话框等功能。

由多个工具控制的多窗口技术被单个工具控制的多窗口技术所代替。

工具和文档都作为实体统一放在环境数据库中;用户根据任务,从数据库中依次调用所需要的工具;

Page 10: 第十章 软件工具与开发环境

10

10.210.2       软件开发环境软件开发环境 (4)(4)  

命令语言解释程序

命令处理程序集

高级输入程序 显示服务程序

图形设备驱动程序输入设备驱动程序

交互式人机界面

工具1

工具2

……工具n

软件环境数据库(1)屏幕管理 : 包括屏幕布局和 动态控制两方面的功能; (2) 对话管理;(3) 错误信息显示和处理;(4) 用户支持;(5)相关设施服务;(6)智能化交互系统。 见右图。

三 . 软件开发环境的构成和主要特征 1. 软件开发环境的构成 :交互式人机界面、工具集及软件 环境数据库。如右图: 2.交互式人机界面 : 人机界面 (也称用户界面或人机对话 ) 是用户与计算机系统之间相互交流的中间媒介。 它包括以下几个方面 :

Page 11: 第十章 软件工具与开发环境

11

10.210.2       软件开发环境软件开发环境(5)(5)  

3. 工具集 (1) 软件工具是构成软件开发环境的基本成分。 (2) 包含在软件开发环境中的工具不是各自封闭和分离的,而是与某种软件 开发方法或某种软件加工模型相适应,并以一种综合的、一致的和整体 连贯的形态来支持软件开发的全过程。 4. 软件环境数据库 (又称软件工程数据库或项目数据库 ) (1) 软件环境数据库是用于支持软件项目的大型数据库。 (2) 软件环境数据库中主要存储软件开发过程中产生的有关产品或半成品的 数据及各种项目数据,如源程序、测试数据和各种文档等。 (3) 软件环境数据库构成软件开发和维护过程中所有项目数据的集中化的存 储设施 , 是集成化软件开发环境的核心组成部分 ,也是各个软件工具之间 共享数据及相互连结的统一媒介。 (4) 软件环境数据库基本上属于专用的工具型数据库 , 其中需要存储、管理 和维护的软件项目数据与一般信息管理有很大的区别。

Page 12: 第十章 软件工具与开发环境

12

10.210.2       软件开发环境软件开发环境 (6)(6)  

1 对项目数据 ( 产品、资源、计划中的结构化、非结构化或半结构化数据 ) 的存取和维护功能。

2 对项目数据的追踪和查询功能。3 支持多种用户视图。4 可对项目数据提供多种形式的报表输出。5 支持内部元素和功能元素的可重用性。6 提供各种历史信息的收集和归档。7 提供支持配置管理的机制。8 具有较完善的数据完整性和安全性保证措施。9 提供与外部环境的接口。

10 具有合理的响应时间和运行性能。

5. 软件环境数据库除具备一般事务处理数据库的特征外,还具有适应 软件开发环境的一些特征。主要包括以下几个方面:

Page 13: 第十章 软件工具与开发环境

13

10.310.3       集成化项目支持环境集成化项目支持环境 (1)(1)  

一 . 集成化项目支持环境 IPSE(Integrated Project Support Environment) 是上世 纪后期各个发达国家在研制软件工程环境过程中 ,把开发集成化的项目作为重点 , 推出的产品。使软件工程环境逐渐走向成熟,朝着实用化、产品化和标准化的方 向发展。我国在这方面也取得了很大的成绩 ,推出了“青鸟算机辅辅助软件工程” 等产品。二 .IPSE 的基本组成 IPSE 是一种多级的层次结构,包括核心层、基本层、应用层至少三个层次 (下页 ) 。 1.核心层:在最里面,包括: (1)由宿主机和操作系统构成的虚拟机; (2) 环境数据库 ( 或文件数据库 ) 及其支持软件 (如数据库管理系统或文件管理系 统 ) ,环境数据库是核心层的核心 ,它既要存放项目的各种开发文档与管理文 档 ,又要承担各种工具之间的信息交换 ,它是环境研究的重点; (3) 以及从工具到系统 (含数据库 ) 的接口。 2.基本层:包括软件开发所需的最小限度工具,又称最小支持环境。一般包括: (1) 常用的编译、编辑、调试、连结 /装配、配置管理等实用程序; (2) 命令解释程序和支持用户的一些操作工具 ,如 :菜单生成系统、图形系统、多 窗口系统等。

Page 14: 第十章 软件工具与开发环境

14

10.310.3       集成化项目支持环境集成化项目支持环境 (2)(2)  

工具与系统界面

环境数据库与文件数据库

主机硬件与操作系统

核心层

基本层

IPSE 的典型结构图

连接程序

测试程序装入程序

运行程序

命令解释程序

各种语言编译

程序

调试程序

操作支持工具

配置管理

编辑程序

应用层

快速原型开发

工具

需求分析工具

维护管理工具

美化打印工具

测试分析工具

各种方法开发工具

其它工具

用户界面

Page 15: 第十章 软件工具与开发环境

15

10.310.3       集成化项目支持环境集成化项目支持环境 (3)(3)  

3. 应用层 : 包括支持生存周期内各个阶段活动的工具 , 及支持不同系统开发 方法学的工具 ,内容比较灵活 ,可根据开发者的需要增删。三 .IPSE 的特征 1. 集成化和相互兼容的工具集; 2. 支持项目的管理和控制; 3. 支持配置管理; 4. 支持多种语言的软件开发; 5. 支持硬件开发; 6.允许宿主机和目标机使用分布式系统。四 .IPSE 的分代 按照工具的集成化程度及环境内公共数据的不同组织形式, IPSE 分为三代。 第一代的代表是 UNIX环境,以文件库为核心,在文件库的基础上集成工具集; 第二代以数据库为核心,其工具集具有更高的集成度和统一协调的用户界面; 第三代是建立在知识库基础上的集成环境,其工具集能完全实现任务的来回切换,不再需要用户的干预。

Page 16: 第十章 软件工具与开发环境

16

10.310.3       集成化项目支持环境集成化项目支持环境(4)(4)  

特征 第一代 第二代 第三代核心

工具集成

工具切换

生存周期

应用

界面

三代 IPSE 的主要特征和比较

以文件库为核心。 以数据库为核心。 以知识库为核心。

各工具有自己独立的文件结构,共同组成环境文件库。

工具和文件都是环境数据库的实体,不再视为独立的成分。

只有集成化的工具集,不再存在分立的工具。

能部分实现由一个工具到另一个工具的切换。

具有统一与和谐的用户界面。

完全自动任务切换,不需要用户的干预。

支持软件全生存周期的活动。

支持软件全生存周期的活动,并支持一种以上的程序设计方法学。

支持包括软硬件在内的应用系统全生存周期的开发活动,包括大规模集成电路的设计。

不支持分布式应用。 支持分布式应用。 支持分布式应用。

采用菜单技术。 配备高分辨率彩显,有图标和多窗口功能,使用鼠标器。

多窗口技术,大量使用鼠标器,最终用户仅需使用命令语言。

Page 17: 第十章 软件工具与开发环境

17

10.410.4      CASECASE 环境环境 (1)(1)  

看问题角度 含 义 功 能

狭义角度

广义角度

学术研究角 度

软件产业角 度

一 .CASE概述 1.CASE 是计算机辅助软件工程 (Computer-Aided Software Engineering) 的简称。 2. 简单的说 ,可以将 CASE 理解为 : CASE=软件工程 +自动化工具 3.CASE 的概念可以从不同角度给予解释 :

是一组工具和方法的结合。 辅助软件生存周期各个阶段的软件开发。

辅助软件开发的任何计算机技术。在软件开发和维护过程中,①提供计算机辅助支持;②引入工程化方法。

是软件开发方法、软件开发管理和软件工具等方面多年研究和发展的产物。

把软件开发技术、方法和软件工具集成为一个统一而一致的框架。

是种类繁多的软件开发和系统集成的产品和软件工具的集合。

支持软件开发方法,提高软件开发效率,增进软件产品的质量。

Page 18: 第十章 软件工具与开发环境

18

10.410.4      CASECASE 环境环境 (2)(2)  

CASE 工具

环 境工 作 台工 具

以过程为中心的环境

集成环境

分析与设计 编程 测试

单方法工作台

多方法工作台

特定语言工作台

多语言工作台

二 .CASE 工具分类 CASE 工具可以理解为除 OS外的所有软件工具的总称。 1. 按对软件过程的支持范围 CASE 工具分为三类: (1) 工具 : 支持单个任务; (2) 工作台:支持某一软 件过程或一个过程中 的某些活动; (3) 环境:支持某些软件 过程及相关的大部分 活动。 如图:

编辑器 文件比较器

编译器…

Page 19: 第十章 软件工具与开发环境

19

10.410.4      CASECASE 环境环境 (3)(3)  

支持 典型工具 支持 典型工具 支持 典型工具

需求分析 编码

工具

维护与

理解

概要设计

配置管理

测试工具详细

设计

2. 按对软件过程的支持活动 CASE 工具分类如下表所示

数据流图工具实体 -关系模型工具状态转换图工具数据字典工具

面向对象建模工具分析、验证需求定义规约工具

程序结构图设计工具面向对象设计工具

HIPO 图工具PDL( 设计程序语言 ) 工具PAD( 问题分析图 ) 工具

代码转换工具

正文编辑程序

连接程序语法制导编辑程序

变化管理工具版本管理工具

静态分析程序动态覆盖率测试程序测试结果分析程序测试报告生成程序测试用例生成程序测试管理工具

符号调试程序应用生成程序第四代语言

OO 程序设计环境

源程序→流程图转换工具源程序→ PAD 转换工具

程序理解工具文档分析工具程序结构分析程序

Page 20: 第十章 软件工具与开发环境

20

10.410.4      CASECASE 环境环境 (4)(4)  

工作台 支持的软件过程活动 例 子

程序设计

分析设计

测 试

交叉开发

配置管理

文 档

项目管理

三 . 工作台:是一组工具集,支持象设计、实现或测试等特定的软件开发阶段。 它是通过共享文件、共享仓库或共享数据结构来集成。

由支持程序设计的一组工具组成。 支持软件过程的分析和设计阶段。 支持特定的应用和组织结构。具有较好的开放性。 支持在一种机器上开发的软件,而在别的其它系统上运行所开发的软件。支持配置管理。

支持高质量的文档制作。

支持项目管理活动。

将编辑器、编译器和调试器集成在一个宿主机上构成的程序设计工作台。 支持结构化方法的工作台,支持面向对象方法的分析和设计工作台。

交叉编辑器、目标机模拟器、从宿主机到目标机上下载的通信软件包,及远程运行的监控程序。版本管理工具、改变跟踪工具、系统装配工具。

字处理器、单面印刷系统、图表图像编辑器、文档浏览器等。

项目规划和质量、开支评估和预算追踪工具等。

Page 21: 第十章 软件工具与开发环境

21

10.410.4      CASECASE 环境环境(5)(5)  

源程序 结构化编辑器

已编译代码

符号表

语法树语言编译器

连结器

可执行程序

加载器

交互式调试器

可执行程序 执行报告 动态分析器

格式化源文件列表

程序报告

按格式打印

交叉引用

静态分析器

用户

调用

调用

编辑

利用语法树和符号表作为共享数据来进行工具集成。

1. 程序设计工作台:支持程序开发的一组工具,结构如下图所示:

程序库

Page 22: 第十章 软件工具与开发环境

22

10.410.4      CASECASE 环境环境(6)(6)  

名 称 功 能语言编译器

结构化编辑器连 结 器加 载 器交 叉 引用

按格式打印

静态分析器

动态分析器

交互式调试器 市场上通常将程序设计语言工作台作为包括附加工具的语言编辑器来出售。如:Basic,C,C++,Pascal,Lisp,Smalltalk等。

上图中程序设计工作台中的 CASE 工具功能由下表所示

将源代码转换成目标码。创建一个抽象语法树 (AST) 和一个符号表。

结合嵌入的程序设计语言,对 AST中程序的语法表示进行编辑。将已编译的程序的目标代码模块连接起来。

在可执行程序执行之前将其加载到计算机内存。产生一个交叉引用列表,显示所有的程序名是在那里声明和使用的。扫描 AST,根据嵌入的格式规则打印源文件程序。

分析源文件代码,找到未初始化的变量、不能执行到的代码、未调用的函数和过程等异常。 产生带附注的源文件代码列表,附注上标有程序运行时每个语句执行的次数或生成有关程序分支和循环的信息,统计处理器的使用情况。

允许用户来控制程序的执行次序,显示执行期间的程序状态。

Page 23: 第十章 软件工具与开发环境

23

10.410.4      CASECASE 环境环境 (7)(7)  

结构化图表制作工具

设计分析和检查工具

代码生成器 查询语言设施

数据字典 报告生成设施

图表创建工具 移入 /移出设施

中央信息仓库

这些工具通过一个共享仓库 ( 中央信息仓库 ) 集成。

2. 分析和设计工作台:支持软件的分析和设计阶段 ( 在这阶段系统模型已建立,如数 据库模型 ,实体关系模型 ) 。 (1)它支持特定的设计或分析方法,如面向对象的分析; (2)它是更通用的图表编辑系统 , 能处理大多数图表类型; (3)它提供的方法和指南,能进行一些自动图表检查工作。 它可能包括的工具如下图所示:

而该仓库一般是工作台开发者专有的,因而分析和设计工作台通常也是封闭式的环境。

Page 24: 第十章 软件工具与开发环境

24

10.410.4      CASECASE 环境环境(8)(8)  

名 称 功 能图表编辑器设计分析和检查工具仓库查询语言数据字典报告生成设施移入 /移出设施代码生成器

由于其封闭性,分析和设计工作台的缺陷:(1) 移入 /移出受到限制 , 与其它工作台互换数据时会发生问题;(2)不能裁剪和修改一个设计计划,用户通常不可能用自己的规则取代一个原有规则;(3) 工作台自己提供的配置管理系统可能与一个组织机构中使用的系统不兼容。

上图中分析和设计工作台中的 CASE 工具功能由下表所示

创建数据流图、结构图、实体关系图等。

进行分析,并报告错误和异常情况。

允许设计者查询仓库,找到与设计相关的信息。维护系统中所用的实体信息。

从中央存储器中取得信息并自动生成系统文档。允许中央仓库和其它软件开发互换信息。

从中央存储器中取得设计信息,自动生成代码和代码框架。

Page 25: 第十章 软件工具与开发环境

25

10.410.4      CASECASE 环境环境(9)(9)

规 约

测试数据

执行报告 模拟器

测试预估被测试的程序动态分析器

源代码

测试结果

预测器

测试数据生成器

报告生成器 测试结果报告

文件比较器

测试管理器

3. 测试工作台:支持软件的测试阶段。它可能包括的工具如下图所示:

Page 26: 第十章 软件工具与开发环境

26

10.410.4      CASECASE 环境环境 (1(10)0)  

名 称 功 能测试管理器测试数据生成器预测器报告生成器文件比较器动态分析器

模拟器

大型系统的测试依赖于被开发的应用程序。因此,更改测试工作台以适应每个系统的测试计划是不可避免的。

上图中测试工作台中包括的工具功能由下表所示

管理程序测试的运行和测试结果报告。

生成被测数据的测试数据。产生对所期待测试结果的预测。

提供报告定义和测试结果的生成设施。比较程序测试的结果和以前测试的结果,报告它们之间的差别。将代码加到一个程序中以计算每条语句被执行的次数。

提供各种不同的模拟器,如模拟多个同时进行用户交互的目标模拟器, I/O 模拟器等。

Page 27: 第十章 软件工具与开发环境

27

第十章 小 结第十章 小 结   现代的软件开发,一刻也离不开开发环境。支持生存周期各阶段软件开发活动的各种工具,是环境中最活跃的部分。 从早期的零散工具到初具规模的 UNIX工具箱,到完全集成化的IPSE 的工具集,反映了软件开发环境的巨大变化。 良好的软件支持环境,已成为提高软件开发效率和软件质量的重要条件。 改善开发环境从根本上来说是为了简化对计算机的使用,使计 算机向着适应人的方向转化。尽量简化用户的工作,是今后环 境发展的必然趋势。

Page 28: 第十章 软件工具与开发环境

28

第十章 习 题第十章 习 题  

1. 软件工具是什么?按照软件生存周期可将其分为几类?2. 评价软件工具的原则 ?3.什么是软件开发环境?按技术发展方向分为哪几类环境?4. 工具箱类软件工具的基本特点?5. 软件开发环境的组成与各成分的作用?6. 软件开发环境数据库在软件开发中的作用?7. 集成化项目支持环境 IPSE 的主要特征是什么?8.CASE 的含义是什么?9.CASE 工具一般分为几类?有什么区别?10. 工作台实现软件工具集成的方式?