IBM Rational Rhapsody
——一流的MDD解决方案
IBM Rational Rhapsody是一流的为嵌入式软件、系统和测试环节提供的MDD 解决方案,广泛应用于航空航天、国防、汽车、医药、工业自动化、电信/数据通信或消费电子等行业。
1.嵌入式开发介绍
随着嵌入式系统的应用越来越广泛,软件规模越来越大,出现了一系列的问题,开发周期长、开发费用昂贵、开发出来的软件质量难以保证、开发生产率低、软件的复杂程度也愈加复杂。大型嵌入式应用系统的设计和开发利用早期的手工作坊式的开发方式已经不能完成任务,必须使用工程化的开发方式。
嵌入式应用系统的发展经过了下面几个阶段:
1、80年代前,无实时操作系统时代
这一阶段一般应用开发人员需要结合硬件系统,做很多硬件底层开发任务,软件应用开发效率比较低。
2、80年代后~90年代末,实时操作系统时代
80年代欧美一批公司,开发了很多底层平台技术,包括实时操作系统,如VxWorks等。这些实时操作系统把底层一些通用的机制打包给开发人员,使得开发人员无需自己去手写底层的调度、驱动;而是通过选择架构组件的方式去重用这些底层的机制,比如BSP、通信协议等。开发人员从繁杂的底层操作中解放出来,去专心写上层的应用和文档。从而软件的质量和效率得到大幅提高。
3、00年代,UML1.x建模时代
90年代后期,UML技术出现了,各大技术厂商纷纷加入UML的阵营。由于UML 当时还处于1.x阶段,具有一定的局限性,绝大部分公司只将UML用在的系统分析和设计这一“高层”领域。
4、当今,UML2.x时代
最近5年以来,在IBM/Telelogic的共同努力下,模型驱动的嵌入式开发以及成为业界的主流趋势。其主要特点和方向是:
1.UML
2.x的出现极大丰富了UML,从通信界代码生成技术最成功的SDL语
言汲取了大量语法语义。使得代码完全自动生成成为可能。
2.底层操作系统逐渐向Eclipse IDE融合,使得UML模型可直接结合到IDE
上生成代码的工程,即方便调试也保证了模型代码的高度一致性。
3.嵌入式开发的组件化、模块化在UML平台上得到了保证。一个用UML高
度内聚性的开发的组件,可以被复用在其它任何地方。
4.UML模型加入了大量嵌入式软件开发的因素,生成的代码可以直接调用
实时操作系统的应用接口。做到了模型和实时操作系统的高度集成。
5.UML2.x中丰富了测试插件(Testing Profile),使得从模型驱动的开发
到模型驱动的测试进行平滑过度。
2.Rhapsody介绍
Rhapsody是一个模型驱动的嵌入式应用软件可视化开发和测试环境。该环境提供一个符合工业标准的图形化软件开发环境;实现从系统设计到软件设计的无缝连接;支持对软件需求分析、概要设计、详细设计的图形化描述和分析验证;自动生成高效的嵌入式代码;自动按照规定的格式和要求生成中文
设计文档,从而保证文档与代码的一致性;在软件开发各阶段支持软件测试。
Rhapsody提供配套的软件测试套件 ATG和 TestConductor支持软件测试。
Rhapsody同时也是一个开放的、可定制的、可扩展的设计平台。Rhapsody 提供与市场上提供的优秀的配置管理工具、需求管理跟踪工具和测试分析工具的接口,如ClearCase、DOORS等。另外,利用Rhapsody的API和XMI数据接口,Rhapsody可以与开发工具链上的任何工具相连接。加上Rhapsody提供的可视化的模型区分与合并功能,真正使团队协作成为可能。同时,Rhapsody提供对标准的XML格式的支持,方便开发者共享他们的设计成果。总之,开发人员对于合作设计和远程团队开发的选择不会因为Rhapsody而受到任何限制。Rhapsody的主要特性
Rhapsody将为我们的软件系统带来最优化、可升级、可靠、可维护和可重用的特点。据估计即使是初次使用Rhapsody来开发产品,也可以提高超过30%的开发效率。Rhapsody可以把多数的UML图形自动转化成高级语言C、C++、ADA
或者Java代码,在开发过程中更早的利用这些高质量的代码可以对系统特定行为进行验证,从而减少开发过程中的错误。Rhapsody附加有DoDAF包用于开发符合DoDAF体系结构的产品。Rhapsody可生成经过DO-178B/ED-12B确认的代码。
Rhapsody具有如下相应的特性:
支持UML2.1/SysML1.0
由于UML 2.1/SysML1.0语言的可视化特性,这可以为沟通想法带来直接的利益――它很容易理解。UML 2.1/SysML1.0所特有的是表达信息的广度与描述的精确性。
Rhapsody支持UML 2.1/SysML1.0的增强功能,从而更加适合做实时系统建模,增强了对实时建模关注的调度、性能、时间(UML Profile for Schedulability, Performance, and Time)上的扩展;支持复杂系统领域内的系统设计,并可以在设计早期进行系统验证。
在国防、航天航空、通讯、汽车、医疗领域,Rhapsody广泛地用于实时系统软件建模。Rhapsody的建模技术可以很容易支持C4ISR结构框架。
通过UML 2.1及其扩展功能,使得工程师可以详尽的对系统进行讨论和设计,通过基于模型驱动的V型开发方法,使系统工程师、软件工程师和测试工程师,甚至客户有了更多的沟通,从而使系统工程师更能把握需求,设计出完善的模型,软件工程师和测试工程师在系统设计的早期就可以对系统有一个把握,从而设计出最好的代码结构和系统测试方法。
支持DSL(Domain Specific Language)
Rhapsody支持美国国防部架构框架DoDAF、英国国防部MoDAF,从而可以在Rhapsody中对符合DoDAF和MoDAF架构的系统进行建模、仿真、验证,并且能够生成符合DoDAF、MoDAF规范的各种设计文档。支持使用标准的DoDAF/MoDAF 图表和注释来设计、构建和分析完全遵守DoDAF/MoDAF标准的架构。此功能通过下列操作验证架构:模拟模型、自动生成派生产品和完整的DoDAF/MoDAF
文档,同时在需求驱动的环境中完成全面的跟踪。Rhapsody DoDAF/MoDAF通过帮助用户在公用环境中定义和构建遵守DoDAF/MoDAF标准的架构,将显著地改善DoD/MoD、承包商和供应商之间的沟通。
Rhapsody AUTOSAR,是第一个支持汽车领域专用于建模MDD环境,主要用于
描述和设计汽车系统和软件应用程序。支持AUTOSAR语言,支持汽车领域的系统工程建模设计、EE设计、ECU设计和软件设计等。允许汽车工程师以熟悉的方式对车辆的电力和电子系统进行建模设计。并且在设计过程中,可以使用Rhapsody 的其它功能,进行需求分析、跟踪,系统设计、软件开发和测试等整个开发生命周期内的各个阶段,增强了汽车工程师工作的标准化和工程化水平,提高了工作效率。嵌入式系统开发是什么
●捕获与可视化需求
通过发现系统所必须响应的事件与所做的响应应该是什么来理解系统必须做什么是试图理解系统需求的最基本的部分。这是用例或场景分析的基础,它所面对的是功能需求。当开始建立功能需求文档时,需要一种方式来捕获场景的细节,但是,随着系统变得越来越复杂,场景的数量也随之而增长。有一种能够通过场景进行浏览的方法就变得很重要。信息容易维护与更新也变得越来越重要。如果一些细节可以在一个地方来定义然后在需要的地方被引用,则维护描述的工作就会被大大地减少。
●描述构架与接口
在开发过程中,完整的系统不可避免地要被分成更小的部件或子系统。
使用子系统有许多优势,系统工程师可以利用Rhapsody来使这种优势最大化。例如,把一个大问题分解成小问题的策略只有在独立的团队能够快速完成小项目的情况下才能获得成功。为了使这一点成为可能,在描述中就不能有很多的歧义。一旦实施活动开始,就不能浪费时间来讨论子系统的边界问题。
●Harmony(“和”过程)
Rhapsody配合上复杂系统开发方法论Harmony过程,给系统设计和软件开发不同方面提供了使用UML/
SysML进行系统开发设计的全面支持;系统工程师按照HarmonySE过程进行开发,针对不同开发阶段,不同目标,完成工作;软件工程师HarmonyESW过程,进行迭代性、递进的开发流程。
系统设计阶段HarmonySE过程中,主要分为Requirements Analysis Phase、System Functinal Analysis Phase、Architectural Design Phase三个阶段;其中在Requirements Analysis Phase也就是需求分析阶段,首先需求分析人员

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。