欢迎来到天天文库
浏览记录
ID:49381001
大小:640.00 KB
页数:39页
时间:2020-02-04
《软件工程课件 第十章 软件工具.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第十章软件工具与集成化环境10软件工具是用于辅助软件的开发、运行、维护、管理和支持等活动的软件系统。其目的是为了降低软件开发和维护的成本,提高软件生产效率,改进软件产品的质量。借助于计算机及其软件工具的帮助,开发、维护、管理软件产品的过程,称为计算机辅助软件工程(Computer-AidedSoftwareEngineering,简称CASE)。10.1软件工具另一种是集成化的CASE环境,它将在软件开发过程的不同阶段使用的工具进行集成,使其有着一致的用户界面和可以共享的信息数据库。目前有两种层次的软件开发工具,一种是孤立的单个软件开发
2、工具,用于支持软件开发过程中的某一项特定活动。按软件活动的各阶段,可把软件工具分为:软件开发工具软件维护工具管理与支持工具10.1.1软件开发工具软件开发工具可分为:分析工具、设计工具、编码工具和调试工具。1.分析工具辅助软件开发人员完成软件系统需求分析活动的软件工具。典型的有Rational公司的AnalystStudio,用于应用问题分析和系统定义的一组相对完备的工具集,适合于团队联合开发使用。包括以下内容:⑴RationalRequisitePro;⑵RationalRoseDataModelerEdition;⑶RationalC
3、learQuest;⑷RationalSoDAforWord⑸RationalUnifiedProcess;软件设计工具主要包括三种类型:基于图形描述、语言描述的设计工具;基于形式化描述的设计工具;面向对象的设计工具。典型的有EnterpriseArchitect,是一个基于UML的VisualCASE工具,主要用于设计、编写、构建和管理以目标为为导向的软件系统。2.设计工具3.编码工具编码工具主要包括:编辑程序、汇编程序、编译程序和调试程序等。典型的集成程序开发环境有:MicroSoft公司的VisualC++、VisualBasic和
4、Borland公司的Delphi、C++Builder4.调试工具也称为排错工具,在程序编码过程中,及时发现和排除程序代码中的错误和缺陷。分为:源代码调试程序和调试程序生成程序两类。⑴源代码调试程序帮助程序开发人员了解程序的执行状态,查询相关数据信息,发现和排除程序代码中存在的错误和缺陷。⑵调试程序生成程序是一种通用的调试工具,能够针对给定的程序设计语言,生成一个相应的源代码调试程序。5.软件开发工具的评价与选择根据以下几个标准来评价一个软件开发工具的优劣程度:⑴功能开发工具应具有完备的开发功能。⑵硬件要求硬件要求较低的工具可以节省相应的
5、硬件开销和开发成本。⑶性能软件开发工具的运行速度等性能指标将直接影响工具的使用效果。⑷方便性软件开发工具应该具有十分友好的用户界面。⑸服务和支持软件开发工具需要不断的进行升级和改进。提供有效及时的技术服务和支持。重要的软件维护工具包括:版本控制工具、文档管理工具、开发信息库工具、逆向工程工具、再工程工具。⑴版本控制工具版本控制工具用于帮助软件维护人员实现对软件版本的存储、更新、恢复和管理。典型代表是UNIX操作系统的SCCS(源代码控制系统)。⑵文档管理工具对软件开发过程中产生的文档进行分析、组织、维护和管理。⑶开发信息库工具记录每个对象
6、的开发与修改信息;维护对象和与之相关信息间的关系。10.1.2软件维护工具现在的逆向工程工具能够分析高级程序设计语言的源程序,恢复出程序的控制结构、流程图、PAD图等更高级的抽象信息。⑸再工程工具再工程是在获得软件设计信息的同时,利用这些信息修改或重构软件系统的工作。根据用户的需求,软件开发人员可利用再工程重新实现已有的软件系统,同时增加新的功能和改进性能。⑷逆向工程工具软件的逆向工程是指对已有的程序进行分析,以获得比源代码更高级的表现形式,是一个设计恢复的过程。软件管理与支持工具中,比较重要的包括:项目管理工具、配置管理工具、软件评价工
7、具、风险分析工具。⑴软件评价工具帮助软件产品的管理与支持人员对软件产品的质量加以保证。如ISO软件质量度量模型、McCall软件度量模型等。⑵软件配置管理工具对软件修改进行标示、组织和控制的技术,用来协调和控制软件开发的整个过程。是软件质量保证的重要环节。10.1.3软件管理与支持工具⑶软件项目管理工具主要任务是制定软件开发计划,跟踪、监督和协调软件开发的进度,以保证软件产品能够按时保质完成。⑷风险分析工具标示潜在的风险并设计相应的计划去缓解、监控和管理风险,这对于一个大型项目是极为重要的。风险分析工具可以通过提供对风险标示和分析的详细指
8、南,使得项目管理者能够有效地对在软件项目开发过程出现的风险进行控制和规避。10.2集成化CASE环境分散的软件开发工具都只在软件产品的某个开发阶段起作用,它们有着不同的用户界面、不同的数据存储
此文档下载收益归作者所有