计算机辅助软件工程及展望_第1页
计算机辅助软件工程及展望_第2页
计算机辅助软件工程及展望_第3页
计算机辅助软件工程及展望_第4页
计算机辅助软件工程及展望_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机辅助软件工程及展望第一页,共三十五页,编辑于2023年,星期一教学提示:本章主要介绍计算机辅助软件工程CASE方法。CASE是集软件开发技术、方法和工具为一体的计算机辅助软件工程方法,CASE的新发展是集成化软件工程环境。使用CASE工具开发软件已经成为现实和形成趋势。本教材将着重介绍的PlayCASE是CASE的一种。通过对本章的学习,读者对软件开发方法将会有更加全面的了解。教学目标:掌握CASE、CASE工具的定义、分类和它们应具备的功能;了解国际、国内比较重要的CASE工具;了解集成化软件工程环境的概念、优势,并能通过对未来软件工程的展望,更全面地认识软件工程。第3章计算机辅助软件工程及展望第二页,共三十五页,编辑于2023年,星期一第3章计算机辅助软件工程及展望3.1CASE的概念3.2CASE的功能与分类3.3CASE工具与分类3.4集成CASE环境3.5UML及建模工具3.6软件工程的未来3.7习题第三页,共三十五页,编辑于2023年,星期一3.1CASE的概念

计算机辅助软件工程(CASE)

CASE是计算机技术在系统开发活动、技术和方法中的应用,是软件工具与开发方法的结合体。

第四页,共三十五页,编辑于2023年,星期一3.1CASE的概念

CASE的目的 通过一系列集成化的软件工具、技术和方法,实现分析、设计与程序开发、维护的自动化,提高软件开发的效率和软件的质量,最终实现软件系统开发的全面自动化。第五页,共三十五页,编辑于2023年,星期一具体目标提高效率提高质量加速过程降低费用实现系统设计的恢复和逆向软件工程的自动化自动产生程序代码自动进行错误的检查和校验实现项目管理工作的自动化改善软件开发过程的控制集成软件开发的工具提高软件的复用性和可移植性3.1CASE的概念第六页,共三十五页,编辑于2023年,星期一

3.1CASE的概念

CASE构造积木块

第七页,共三十五页,编辑于2023年,星期一

CASE系统应该具备以下功能和能力:(1)支持多种软件开发方法(如结构化方法、快速原型法、面向对象方法等)。(2)支持软件开发生命周期的各个阶段。(3)具有文档出版功能和文字、图形编辑功能。(4)支持软件重用。(5)支持开发信息资源共享。

3.2CASE的功能与分类第八页,共三十五页,编辑于2023年,星期一

CASE一般分为如下三类:

*上游CASE,或称前端CASE。它描述了支持软件开发周期前期几个阶段的CASE工具。*下游CASE,或称后端CASE。描述了支持软件开发周期后期几个阶段的CASE工具。*支持项目管理、并贯穿于整个软件开发周期的CASE。主要支持项目管理和评估等活动。3.2CASE的功能与分类第九页,共三十五页,编辑于2023年,星期一3.2CASE的功能与分类应该注意的问题(1)上游CASE和下游CASE之间有所重叠。(2)这种划分方法人为造成了上CASE与下游CASE之间的缝隙,因为上游CASE工具的输出要作为下游CASE的输入。(3)一个完整的CASE工具应包括上述各种类型中的一种或几种产品。第十页,共三十五页,编辑于2023年,星期一

CASE工具

能够支持或使软件工程周期中一个或多个阶段自动化的计算机程序(软件)。3.3CASE工具与分类第十一页,共三十五页,编辑于2023年,星期一

CASE工具应具备的功能①用户通过CASE工具能创建软件开发各阶段所需要的图表。②收集有关图表上的对象以及对象之间关系的信息,以便建立一个完整的信息集合。③在一个中央资源库中,应将图表所表示的语义而不是图表本身存储起来。④根据准确性、一致性、完整性检查图表。3.3CASE工具与分类第十二页,共三十五页,编辑于2023年,星期一

⑤使用户能够用多种图表类型表示一个分析或设计的不同方面。⑥使用户能以图表来描述条件、循环、CASE结构和其它结构化程序结构。⑦实施结构化的模型和设计,尽可能达到准确、一致。⑧协调多个图表上的信息,检查信息的一致性,并集中检查信息的准确性、一致性和完整性。3.3CASE工具与分类第十三页,共三十五页,编辑于2023年,星期一3.3CASE工具与分类CASE工具的分类

(1)信息工程工具(2)过程建模和管理工具(3)项目计划工具(4)风险分析工具(5)项目管理工具(6)需求跟踪工具(7)度量和管理工具(8)文档工具(9)系统软件工具(10)质量保证工具(11)数据库管理工具

(12)软件配置管理工具(13)分析和设计工具(14)原形和仿真工具(15)界面设计和开发工具(16)原型工具(17)编程工具(18)集成和测试工具(19)静态分析工具(20)动态分析工具(21)测试管理工具(22)客户/服务器测试工具(23)再工程工具

第十四页,共三十五页,编辑于2023年,星期一典型的CASE通常由下列工具的全部或一部分组成:(1)图形工具(2)描述工具(3)原型化工具(4)查询和报表工具(5)质量保证工具3.3CASE工具与分类第十五页,共三十五页,编辑于2023年,星期一(6)决策支持工具(7)文档出版工具(8)变换工具(TransformFacilities)(9)生成器(10)数据共享工具:为同一种CASE工具的不同的局部资源库之间传递资源库信息。(11)安全和版本控制工具3.3CASE工具与分类第十六页,共三十五页,编辑于2023年,星期一3.4集成CASE环境ISEE(IntegratedSoftwareEngineering

Environment)是按照一定的理论/概念模型把支持软件开发的计算机系统软件、工具集、信息库、网络管理、人员与场地设施等全部开发资源进行有效灵活的集成,系统有效的支持基于软件工程理论、技术、方法和规范所进行的软件开发的全部过程和所有活动。目标:按照软件工程的理论、方法和规范建立一个自然和谐、高效可靠乃至完全智能和自动化的软件生产流水线,真正实现软件工程和软件产业的工业化。第十七页,共三十五页,编辑于2023年,星期一3.4集成CASE环境ISEE必须满足的基本需求所有环境工具机制和配置良好,充分共享信息。当创建和转变一个信息项时,能够自动跟踪和维护与之有关的所有其他信息项。必须提供有效的版本控制和配置管理能力。允许直接且非顺序地访问环境中的工具。提供强有力的异常处理和数据恢复能力。须有视觉、感觉和行为能力一致的用户界面。提供自然和谐的通信机制,支持软件开发过程和活动中的一切协作。不断吸收和积累整个过程的新技术、新方法。具有良好的可移植性和开发性。提供可靠、实用的软件质量方法和质量保证系统。第十八页,共三十五页,编辑于2023年,星期一3.4集成CASE环境ISEE的特征(1)集成化软件工程环境(2)通用的软件工程环境(3)可裁剪的开发式环境(4)实用的软件开发环境(5)以信息为基础的环境第十九页,共三十五页,编辑于2023年,星期一3.5UML及建模工具3.5.1UML简介3.5.2UML建模工具3.5.3PlayCASE建模工具 第二十页,共三十五页,编辑于2023年,星期一3.5.1UML简介

UML是在多种面向对象建模方法的基础上发展起来的建模语言,主要用于软件密集型系统的建模。UML用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。它提供了静态、动态、系统环境及组织结构的模型,记录了对必须构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。第二十一页,共三十五页,编辑于2023年,星期一3.5.2UML建模工具由于UML统一了面向对象建模的基本概念、术语和图形符号,建立了便于交流的通用语言,现已成为了一种国际上公认的标准建模语言。因此,世界各大著名的软件公司纷纷以UML为中心,提供用于创建UML图并将这些图组织成为模型的工具软件包。最有名的软件包当数RationalROSE,另一个是SelectEnterprise。VisualUML也是一个很有竞争力的产品。此外GDPro和TogetherSoft公司的建模工具软件也具有一定竞争力。Microsoft公司已经取得Rational公司的许可,使用Rational公司的技术开发出了VisualModeler建模工具软件,它是RationalRose的一个子集,被纳入VisualStudio集成开发环境中,以供VisualStudio的用户使用。第二十二页,共三十五页,编辑于2023年,星期一3.5.3PlayCASE建模工具 PlayCASE建模工具是中文全程一体化的建模工具,易学易用,这对于拥有超过全球人口1/5的中国来说似乎更具有划时代意义,尤其对于高职高专层次学生由浅入深地、自然地领会和掌握现代软件工程理论和方法更为适合。因此,在本教材中,我们选择与UML兼容的PlayCASE建模工具进行讲解,通过PlayCASE来理解和掌握软件工程的新方法、新理论。第二十三页,共三十五页,编辑于2023年,星期一3.6软件工程的未来3.6.1变化的范围3.6.2使用的过程3.6.3信息的性质3.6.4基本的计算技术3.6.5做工作的人第二十四页,共三十五页,编辑于2023年,星期一3.6.1变化的范围一个新技术从发展到产品所需的年限199720022007+技术的成熟51015概念原型产品传统的计算机硬件图15-5-5规则第二十五页,共三十五页,编辑于2023年,星期一3.6.1变化的范围在未来十年中影响软件工程的四个方面(1)做工作的人;(2)使用的过程;(3)信息的性质;(4)基本的计算技术。

第二十六页,共三十五页,编辑于2023年,星期一

3.6.1变化的范围

人及其建立系统的方式图2对软件工程师及其工作的影响技术的成熟51015概念原型产品支持软件工程的领域的特定的AI模式识别语义信息处理连续语音识别可复用构件形式化方法和净室软件工程智能代理多媒体环境虚拟现实超媒体Internet资源群件CASE工具和中心库多任务工作站和PC客户/服务器体系结构第二十七页,共三十五页,编辑于2023年,星期一3.6.2使用的过程

将软件工程实践的前20年说成为“线性思维”的时代是合理的,在传统的生存周期模型的养育下,软件工程被处理为线性的活动,其中应用了一系列顺序的步骤,以解决复杂的问题。然而,软件开发的线性方法违反了大多数系统实际被建造的方式。在现实中,复杂系统迭代的“演化”、甚至增量的“演化”,使软件工程界的绝大部分正移向软件开发的演化模型。第二十八页,共三十五页,编辑于2023年,星期一3.6.3信息的性质数据:无关信息:与一个语境相关联知识:与多个语境相关联智慧:基于不同来源的已有知识来创造的一般性原理图3“信息”谱第二十九页,共三十五页,编辑于2023年,星期一3.6.4基本的计算技术技术的成熟51015概念原型产品光处理器分子计算机光电子设备高级信息获取超宽带通信大规模并行机移动计算高级RISC机精简指令集计算机RISC高密度光/磁存储网络体系结构图4硬件技术的变化第三十页,共三十五页,编辑于2023年,星期一3.6.4基本的计算技术图5软件技术的变化技术的成熟51015概念原型产品神经网络编程神经语言理解并行程序设计分布式/并行系统基于复用/构件的开发基于过程的环境形式化方法传统程序设计语言和4GL代码生成面向对象技术图形程序设计第三十一页,共三十五页,编辑于2023年,星期一3.6.5做工作的人在21世纪里,软件已经变成了世界上最重要的产业和产品,它的重要性已经影响了一代又一代人。然而,新一代的软件开发人员必须接受和前一代人同样的挑战,而且要面临新兴的挑战。在软件工程的未来之路上,也许能够勇往直前地走下去,也许将找不着落脚点。但是,肯于迎接挑战、能够运用智慧去开发改善人类生活条件的系统的软件工程实践者将会给软件工程带来真正的未来。第三十二页,共三十五页,编辑于2023年,星期一3.7习题1.填空题(1) CASE又名计算机___________________________。(2) CASE的总体目标是通过一系列集成化的软件工具、技术和方法,使整个计算机管理系统的开发_________。(3) __________是指能够支持或使软件工程生命周期中一个或多个阶段自动化的计算机程序(软件)。在软件工程中,____________是软件工具的先导,____________是软件开发方法的实际体现。2.选择

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论