软件工具与开发环境教学

上传人:xuey****n398 文档编号:246485462 上传时间:2024-10-14 格式:PPT 页数:28 大小:318.51KB
返回 下载 相关 举报
软件工具与开发环境教学_第1页
第1页 / 共28页
软件工具与开发环境教学_第2页
第2页 / 共28页
软件工具与开发环境教学_第3页
第3页 / 共28页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二层,第三层,第四层,第五层,*,*,*,第十章,软件工具与开发环境,10.1 软件,工具,10.2,软件开发,环境,10.3 集成,化项目支持环境,10.4,CASE,环境,。,1,10.1,软件工具(1),一.软件工具,1.,软件工具,:是指为支持计算机软件及其文档的开发、维护、模拟、,移植或管理而研制的程序系统。,2.软件工具的,范围,(1),传统工具,:文本编辑程序、汇编程序、解释程序和编译程序等;,(2),支持软件生存周期,各阶段的需求分析、设计、编码、测试、维,护等,工具,和,管理工具,。,3.软件工具,作用,:辅助软件人员进行软件开发或维护过程中某一或几,个环节的工作,有效提高软件的生产率和质量。,二.软件工具的,发展,过程,1.软件工具的发展经历了从简单工具到复杂工具、从手工工具到自动,工具、从支持程序设计阶段的工具到支持软件开发全过程的工具、,从单个工具到工具集成的演变过程。,2,10.1,软件工具(2),2.软件工具的几个发展阶段,阶段,应 用,代表性工具,程序设计,程序系统,软件工程,软件产品,手工作业方式,在这阶段从框图到编码几乎没有软件工具支持。,机器指令、,汇编指令。,各种高级语言的编译程序,各种程序语言的调试工具。,排错程序、静态分析和动态跟踪工具等。,重视软件开发各阶段支持工具的研制和应用。随着结构化程序设计、模块化程序设计等技术的广泛应用,出现了一大批软件工具或系统。,需求分析工具、软件设计工具、文档化工具、代码自动生成工具、测试工具、源代码管理工具及项目管理工具等。,软件开始成为一种工业化的产品时,开始使用设计规格语言来编写软件设计说明书,以自动生成方式来生产软件。目前进一步发展为以需求规格描述语言来书写用户需求规格书,通过自动化工具从软件资源库中选取程序模块和数据模块,自动结合,生成界面,从而得到满足用户需求的软件产品。,3,10.1,软件工具(3),阶段,功 能,工 具,三.软件工具的分类,1.按软件生命周期的阶段分类,需求分析,定义需求规格。,数据流图绘制与分析工具、状态转换图绘制与分析工具、面向对象的模型和分析工具、快速原型构造工具、数据字典与数据库工具等。,软件设计,描述设计结果形成设计软件规格。,HIPO,图、,PDL(,程序设计语言)或,PAD(,问题分析图)支持工具等。,编码,提供各种便利的编程作业环境。,集成化的程序员工作平台。主要包括:各种正文编辑器和常规的编译程序、汇编程序、连结程序及符号调试器等。,软件测试,支持整个测试过程,支持整个测试过程包括选择测试用例生成测试程序与测试数据、测试的执行、测试结果的评价及添加测试数据等。,静态分析器、动态覆盖率测试器、测试用例生成器、测试报告生成器及环境模拟器等。,软件维护,软件的各种维护。,反汇编程序、反编译程序、程序结构分析器、源程序格式化工具、文档生成工具、源程序至,PAD(,问题分析图)或流程图的自动转换工具等。,4,10.1,软件工具(4),开发技术支持工具,项目管理工具,2.按软件功能分类,系统描述,基本软件的编程语言。,辅助系统管理人员完成项目开发人,员和成本估算、项目开发计划、项目,资源分配与调度、软件质量保证、软,件配制管理和版本控制、风险分析、,项目状态报告和追踪等工作。,环境模拟,对实际环境进行模拟或借助工具进行故障状态的环境模拟。,调试测试,查明系统故障原因,并进行恢复。,性能评价,测试系统是否达到设计性能指标,及设计的性能指标是否合理,还可得到系统调试所必需的性能参数。,在系统发生故障时,迅速得到分析判断故障原因所需的各种信息,帮助系统维护人员迅速排除故障。,运行维护,一般软件工具,从软件开发到维护的全过程中,支持源程序、数据文件的管理和维护以及文档化的工具。,5,10.1,软件工具(5),四.,软件工具的评价原则,1.,易用性,:友好的用户界面,用户乐于使用。,2.,对开发方法的支持,:能满足预期的任务和功能需求,且能,支持完成该任务所遵循的方法学。,3.,稳健性,:具备自检测机制,即使在故障情况下也不会导致严,重后果.,4.,性能,:能使资源得到充分有效的利用。,5.工具,结构柔性,:工具结构是柔软的、可修改的和可扩充的。,6,10.2,软件开发环境(1),一.,软件开发环境,:将一组相关的软件工具按照一定的软件开发方法、软件生,产和维护模型有机的组合起来,为特定的领域所使用,以支持从需求分,析、设计、编码、测试直到维护的整个软件生命周期的计算机辅辅助开,发程序系统。软件开发环境有人也称为“软件工程环境”、“,CASE,环境”。,二.软件开发环境的,分类,1.按,解决的问题,分类,面向,功 能,环境工具,程序设计环境,如何将规格说明转换为可运行的程序,属于局部编程的范畴。,UNIX,设计环境、,Ada,程序设计环境(,APSE),等。,系统合成环境,将多个子系统集成一个大系统,属于全局编程的范畴。,接口控制:模块相连和资源共享问题的描述和制约;版本控制:对系统的各个版本的描述和生成。,项目管理环境,解决由于软件产品规模大、开发周期长、参加人员多等而造成的管理问题,属于多方编程的范畴。,由记录和维护系统开发的状态信息,文档的集成和分发组成。,7,10.2,软件开发环境(2),2.按,技术发展方向,分类,技术,特 点,以语言为中心的环境,提供一套适合于一种语言的工具集。通常是高交互式的,对系统集成只提供有限支持,适于探索性的软件开发。如,INTERLISP,程序设计环境(开发,LISP,程序)、,Cedar,环境(以,M,eas,/Cedar,语言为中心)、,APSE,程序设计环境(以,Ada,语言为中心),面向结构化的环 境,为用户提供一种以编辑器为核心的支持交互式语法结构、语义分析、程序执行和调试的用户程序设计环境。用户只能在结构化的元素上操作,用户看到的不是通常的源程序文本,而是抽象的语法树。,工具箱环 境,在某种,OS,基础上通过一组小的实用工具构成,虽然各工具之间往往相互独立,,但系统提供统一的用户命令界面及工具之间统一的数据交换方式。,工具箱中各工具之间是相互独立的,用户可根据需要进行灵活的增加和裁减。,工具箱环境中一般除了包括支持编码阶段的工具(如编辑程序、编译程序、,汇编程序、连结程序调试程序等)外,还可包括支持大型软件开发方面的工具。,由于工具箱环境具有较强的通用性和灵活性,因而目前商品化的算机系系统,上配置的软件环境大多属于这一类。如:,UNIX,程序设计环境、及,VAX/VNS SET、,PCDE、APCE,等程序设计环境。,8,10.2,软件开发环境(3),3.按,集成化程度,分类,集成,第一代,第二代,第三代,基础,集成,方式,调用,方式,工具,结构,界面,建立在,OS,之上,如,UNIX,、,VMS,等;,环境数据库建立在,DBS,之上,如,DB2 ORACLK、SYBASE,、,INFOMIX,等;,建立在知识库系统上,向智能化方向发展;,工具之间通过一个公用框架进行集成;现有工具不需经过大的修改即可加入;,工具集成在更基本的层次上;现有工具不能随意加入,需作适当的修改和定制;,通过,OS,的命令语言接口或程序调用接口使用这些工具;,顺序调用分立工具的方式完全被集成化的工具所代替,用户不需要在任务之间来回切换不同的工具;,工具使用统一的文件结构,并成为环境信息库的一部分,采用形式化方法、面向对象的方法和软件重用等新技术;,人机界面采用单色、低分辨的文字终端,图形能力差,使用菜单技术;,人机界面采用高分辨率图形显示终端,支持鼠标,具有多窗口、图标、对话框等功能。,由多个工具控制的多窗口技术被单个工具控制的多窗口技术所代替。,工具和文档都作为实体统一放在环境数据库中;用户根据任务,从数据库中依次调用所需要的工具;,9,10.2,软件开发环境(4),命令语言解释程序,命令处理程序集,高级输入程序,显示服务程序,图形设备驱动程序,输入设备驱动程序,交互式人机界面,工,具,1,工,具,2,工,具,n,软件环境数据库,(1)屏幕管理:包括屏幕布局和,动态控制两方面的功能;,(2)对话管理;,(3)错误信息显示和处理;,(4)用户支持;,(5)相关设施服务;,(6)智能化交互系统。,见右图。,三.软件开发环境的构成和主要特征,1.,软件开发环境的构成,:交互式人机界面、工具集及软件,环境数据库。如右图:,2.,交互式人机界面,:人机界面(也称用户界面或人机对话),是用户与计算机系统之间相互交流的中间媒介。,它包括以下几个方面:,10,10.2,软件开发环境(5),3.,工具集,(1)软件工具是构成软件开发环境的,基本成分,。,(2)包含在,软件开发环境中的工具,不是各自封闭和分离的,而是与某种软件,开发方法或某种软件加工模型相适应,并以一种综合的、一致的和整体,连贯的形态来支持软件开发的全过程。,4.,软件环境数据库,(又称软件工程数据库或项目数据库),(1)软件环境数据库是用于,支持软件项目,的大型数据库。,(2)软件环境数据库中主要,存储,软件开发过程中产生的有关产品或半成品的,数据及各种项目数据,如源程序、测试数据和各种文档等。,(3)软件环境数据库构成软件开发和维护过程中所有项目数据的集中化的存,储设施,是集成化,软件开发环境的核心组成部分,也是各个软件工具之间,共享数据,及,相互连结,的统一媒介。,(4)软件环境数据库基本上,属于专用的工具型数据库,其中需要存储、管理,和维护的软件项目数据与一般信息管理有很大的区别。,11,10.2,软件开发环境(6),1,对项目数据(产品、资源、计划中的结构化、非结构化或半结构化数据)的存取和维护功能。,2,对,项目数据的追踪和查询功能。,3,支持多种用户视图。,4,可对,项目数据提供多种形式的报表输出。,5,支持内部元素和功能元素的可重用性。,6,提供各种历史信息的收集和归档。,7,提供支持配置管理的机制。,8,具有较完善的数据完整性和安全性保证措施。,9,提供与外部环境的接口。,10,具有合理的响应时间和运行性能。,5.软件环境数据库除具备一般事务处理数据库的特征外,还具有,适应,软件开发环境的一些特征,。主要包括以下几个方面:,12,10.3,集成化项目支持环境(1),一.,集成化项目支持环境,IPSE,(Integrated Project Support Environment),是上世,纪后期各个发达国家在研制软件工程环境过程中,把开发集成化的项目作为重点,推出的产品。使软件工程环境逐渐走向成熟,朝着实用化、产品化和标准化的方,向发展。我国在这方面也取得了很大的成绩,推出了“青鸟算机辅辅助软件工程”,等产品。,二.,IPSE,的基本组成,IPSE,是一种多级的层次结构,包括核心层、基本层、应用层至少三个层次(下页)。,1.,核心层,:在最里面,包括:,(1)由宿主机和操作系统构成的虚拟机;,(2)环境数据库(或文件数据库)及其支持软件(如数据库管理系统或文件管理系,统),环境数据库是核心层的核心,它既要存放项目的各种开发文档与管理文,档,又要承担各种工具之间的信息交换,它是环境研究的重点;,(3)以及从工具到系统(含数据库)的接口。,2.,基本层,:包括软件开发所需的最小限度工具,又称最小支持环境。一般包括:,(1)常用的编译、编辑、调试、连结/装配、配置管理等实用程序;,(2)命令解释程序和支持用户的一些操作工具,如:菜单生成系统、图形系统、多,窗口系统等。,13,10.3,集成化项目支持环境(2),工具与系统界面,环境数据库与,文件数据库,主机硬件与,操作系统,核心层,基本层,IPSE,的典型结构图,连接程序,测试程序,装入,程序,运行程序,命令解释程序,各种语言编译 程序,调试程序,操作支持工具,配置管理,编辑程序,应用层,快速原型开发 工具,需求分析工具,维护管理工具,美化打印工具,测试分析工具,各种方法开发工具,其它工具,用户界面,14,10.3,集
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!