Rhapsody基本介绍+模块介绍_第1页
Rhapsody基本介绍+模块介绍_第2页
Rhapsody基本介绍+模块介绍_第3页
Rhapsody基本介绍+模块介绍_第4页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、IBM Rational Rhapsody一流的MDD 解决方案IBM Rational Rhapsody 是一流的为嵌入式软件、 系统和测试环节提供的MDD解决方案,广泛应用于航空航天、国防、汽车、医药、工业自动化、电信 / 数据通信或消费电子等行业。1嵌入式开发介绍随着嵌入式系统的应用越来越广泛,软件规模越来越大,出现了一系列的问题,开发周期长、开发费用昂贵、开发出来的软件质量难以保证、开发生产率低、软件的复杂程度也愈加复杂。 大型嵌入式应用系统的设计和开发利用早期的手工作坊式的开发方式已经不能完成任务,必须使用工程化的开发方式。嵌入式应用系统的发展经过了下面几个阶段:1、80 年代前,无

2、实时操作系统时代这一阶段一般应用开发人员需要结合硬件系统,做很多硬件底层开发任务,软件应用开发效率比较低。2、80 年代后 90 年代末,实时操作系统时代80 年代欧美一批公司,开发了很多底层平台技术,包括实时操作系统,如VxWorks等。这些实时操作系统把底层一些通用的机制打包给开发人员,使得开发人员无需自己去手写底层的调度、 驱动;而是通过选择架构组件的方式去重用这些底层的机制,比如 BSP、通信协议等。开发人员从繁杂的底层操作中解放出来,去专心写上层的应用和文档。从而软件的质量和效率得到大幅提高。3、 00 年代, UML1.x建模时代90 年代后期,UML技术出现了,各大技术厂商纷纷加

3、入 UML的阵营。由于 UML 当时还处于 1.x 阶段,具有一定的局限性, 绝大部分公司只将 UML用在的系统分析和设计这一“高层”领域。4、 当今, UML2.x时代最近 5 年以来,在 IBM/Telelogic的共同努力下,模型驱动的嵌入式开发以及成为业界的主流趋势。其主要特点和方向是:1.UML2.x的出现极大丰富了UML,从通信界代码生成技术最成功的SDL语言汲取了大量语法语义。使得代码完全自动生成成为可能。2. 底层操作系统逐渐向 Eclipse IDE 融合,使得 UML模型可直接结合到 IDE 上生成代码的工程,即方便调试也保证了模型代码的高度一致性。3. 嵌入式开发的组件化

4、、模块化在 UML平台上得到了保证。一个用 UML高度内聚性的开发的组件,可以被复用在其它任何地方。4. UML模型加入了大量嵌入式软件开发的因素,生成的代码可以直接调用实时操作系统的应用接口。做到了模型和实时操作系统的高度集成。5. UML2.x中丰富了测试插件( Testing Profile ),使得从模型驱动的开发到模型驱动的测试进行平滑过度。2 Rhapsody 介绍Rhapsody是一个模型驱动的嵌入式应用软件可视化开发和测试环境。该环境提供一个符合工业标准的图形化软件开发环境;实现从系统设计到软件设计的无缝连接;支持对软件需求分析、 概要设计、详细设计的图形化描述和分析验证;自动

5、生成高效的嵌入式代码; 自动按照规定的格式和要求生成中文设计文档,从而保证文档与代码的一致性;在软件开发各阶段支持软件测试。Rhapsody提供配套的软件测试套件ATG 和 TestConductor支持软件测试。Rhapsody同时也是一个开放的、可定制的、可扩展的设计平台。Rhapsody提供与市场上提供的优秀的配置管理工具、需求管理跟踪工具和测试分析工具的接口,如 ClearCase 、DOORS等。另外,利用 Rhapsody 的 API 和 XMI 数据接口,Rhapsody可以与开发工具链上的任何工具相连接。加上 Rhapsody 提供的可视化的模型区分与合并功能,真正使团队协作成

6、为可能。同时,Rhapsody提供对标准的 XML格式的支持,方便开发者共享他们的设计成果。总之,开发人员对于合作设计和远程团队开发的选择不会因为Rhapsody 而受到任何限制。Rhapsody 的主要特性Rhapsody将为我们的软件系统带来最优化、可升级、可靠、可维护和可重用的特点。据估计即使是初次使用Rhapsody 来开发产品,也可以提高超过30%的开发效率。 Rhapsody 可以把多数的 UML图形自动转化成高级语言C、C+、ADA或者 Java 代码,在开发过程中更早的利用这些高质量的代码可以对系统特定行为进行验证,从而减少开发过程中的错误。Rhapsody附加有 DoDAF包

7、用于开发符合 DoDAF体系结构的产品。Rhapsody可生成经过 DO-178B/ED-12B确认的代码。Rhapsody具有如下相应的特性:支持 UML2.1/SysML1.0由于 UML 2.1/SysML1.0 语言的可视化特性,这可以为沟通想法带来直接的利益它很容易理解。UML 2.1/SysML1.0 所特有的是表达信息的广度与描述的精确性。Rhapsody支持 UML2.1/SysML1.0 的增强功能,从而更加适合做实时系统建模,增强了对实时建模关注的调度、性能、时间(UMLProfilefor Schedulability,Performance, and Time)上的扩展

8、;支持复杂系统领域内的系统设计,并可以在设计早期进行系统验证。在国防、航天航空、通讯、汽车、医疗领域, Rhapsody 广泛地用于实时系统软件建模。 Rhapsody的建模技术可以很容易支持 C4ISR结构框架。通过 UML2.1 及其扩展功能,使得工程师可以详尽的对系统进行讨论和设计,通过基于模型驱动的 V 型开发方法,使系统工程师、软件工程师和测试工程师,甚至客户有了更多的沟通, 从而使系统工程师更能把握需求, 设计出完善的模型,软件工程师和测试工程师在系统设计的早期就可以对系统有一个把握, 从而设计出最好的代码结构和系统测试方法。支持 DSL(Domain Specific Langu

9、age)Rhapsody支持美国国防部架构框架DoDAF、英国国防部MoDAF,从而可以在Rhapsody 中对符合 DoDAF和 MoDAF架构的系统进行建模、仿真、验证,并且能够生成符合 DoDAF、MoDAF规范的各种设计文档。支持使用标准的 DoDAF/MoDAF 图表和注释来设计、 构建和分析完全遵守 DoDAF/MoDAF标准的架构。此功能通过下列操作验证架构:模拟模型、自动生成派生产品和完整的 DoDAF/MoDAF文档,同时在需求驱动的环境中完成全面的跟踪。 Rhapsody DoDAF/MoDAF通过帮助用户在公用环境中定义和构建遵守 DoDAF/MoDAF标准的架构,将显著

10、地改善DoD/MoD、承包商和供应商之间的沟通。Rhapsody AUTOSAR,是第一个支持汽车领域专用于建模MDD环境,主要用于描述和设计汽车系统和软件应用程序。 支持 AUTOSAR语言,支持汽车领域的系统工程建模设计、 EE设计、ECU设计和软件设计等。 允许汽车工程师以熟悉的方式对车辆的电力和电子系统进行建模设计。 并且在设计过程中, 可以使用 Rhapsody 的其它功能,进行需求分析、跟踪,系统设计、软件开发和测试等整个开发生命周期内的各个阶段, 增强了汽车工程师工作的标准化和工程化水平, 提高了工作效率。捕获与可视化需求通过发现系统所必须响应的事件与所做的响应应该是什么来理解系

11、统必须做什么是试图理解系统需求的最基本的部分。 这是用例或场景分析的基础, 它所面对的是功能需求。 当开始建立功能需求文档时,需要一种方式来捕获场景的细节,但是,随着系统变得越来越复杂,场景的数量也随之而增长。有一种能够通过场景进行浏览的方法就变得很重要。信息容易维护与更新也变得越来越重要。如果一些细节可以在一个地方来定义然后在需要的地方被引用, 则维护描述的工作就会被大大地减少。描述构架与接口在开发过程中,完整的系统不可避免地要被分成更小的部件或子系统。使用子系统有许多优势,系统工程师可以利用 Rhapsody 来使这种优势最大化。例如,把一个大问题分解成小问题的策略只有在独立的团队能够快速

12、完成小项目的情况下才能获得成功。 为了使这一点成为可能, 在描述中就不能有很多的歧义。一旦实施活动开始,就不能浪费时间来讨论子系统的边界问题。Harmony(“和”过程)Rhapsody配合上复杂系统开发方法论Harmony过程,给系统设计和软件开发不同方面提供了使用UML/SysML进行系统开发设计的全面支持; 系统工程师按照HarmonySE过程进行开发,针对不同开发阶段,不同目标,完成工作;软件工程师 HarmonyESW过程,进行迭代性、递进的开发流程。系统设计阶段 HarmonySE过程中,主要分为Requirements AnalysisPhase、System Functinal

13、 Analysis Phase、Architectural Design Phase三个阶段;其中在 Requirements AnalysisPhase 也就是需求分析阶段,首先需求分析人员Requirements Capture 即需求捕获,在需求确定了之后,需要在Rhapsody 中使用 UseCase进行描述需求,即进入下个阶段Definition of System Use Cases。完成 Use Case 图描述完需求后,则需要根据Use Case图来分析确定系统要完成的功能,这里主要也是黑盒设计, 对系统怎么样完成这些功能不涉及论述,只涉及系统 与环境也就是 交互者之间的 互动

14、关 系,这就是 System Functinal Analysis Phase 。完成系统功能性分析后,就进入了系统架构设计阶段也就是 Architectural Design Phase。在这一阶段,首先也是进行的黑盒设计,也就是系统架构设计,即 System Architectural Design ,这里不涉及子系统等具体的运行设计,只是对子系统作为基本模块的系统运行进行了架构设计; 完成黑盒设计后,进入系统进行白盒设计阶段,即 Subsystem Architectural Design ,这一阶段主要是对子系统内部进行详细的运行设计。 完成上面的三个阶段后, 系统设计阶段任务基本上结

15、束, 下一阶段就是具体的软硬件设计阶段, 在具体的软硬件设计阶段,我们遵循的过程也和上述阶段类似,也是需求分析、黑盒设计、白盒设计等阶段。在完成子系统设计后,进行系统集成,系统确认等。模型 / 代码的相关模型 / 代码相关是 Rhapsody特有的技术。 软件代码实现不再是一个单独的依靠手工编写的过程。在 Rhapsody中,软件代码可以由模型动态生成;反过来,代码的修改也可以反映到模型中来。 模型可以产生高质量的代码, 这种代码既可以作为系统模型验证的代码, 也可以是系统最后提交的代码, 并且这些简洁、 可读性好的代码可以在其他商业 IDE 中很容易的被调试。代码生成的机制经过DO-178B

16、/ED-12B确认。可测试性的设计Rhapsody可以在主机环境下直观地调试设计的图形化内容, 极大改善了应用的可见度,不用等待硬件设计好就可以开始绝大部分软件的调试。 一旦硬件设计完毕,就很容易为目标硬件系统生成同样的可执行模型。Rhapsody的模型执行特性允许系统工程师, 软件工程师和测试工程师在开发的任何阶段都可以对系统进行验证,Rhapsody 与传统的设计过程不同,问题一产生就能够很快的发现, 从而避免了错误只有等到研发的最后阶段才被发现所导致的高昂修改成本。 这样,系统中每一个新增加的功能都建立在行为设计得到充分测试和验证基础之上。软件复用一般嵌入式应用中有60-90%的代码用于

17、内务处理, 如状态机的实现、 任务间的通信运用等等。这些代码被反复的编写,耗费了程序员的大量精力。在Rhapsody 中,这些代码可以通过实时框架来实现重用。Rhapsody 甚至可以引入外部的代码作为系统的一部分,或者为已有工程进行图形化的建模。通过软件复用技术, 可以使我们的工程师将研发的重点从框架代码的编写工作转移到系统关键技术的设计,从而保证了产品设计交付时间和产品的准确性。自动化的文档生成在几乎所有的系统工程方面,正式的文档都是采用文本描述的。用户需求、接口描述与系统设计文档就是这方面很好的例子。Rhapsody可以生成高质量的中文文档,可以生成软件应用所需的框架结构、运行库、编译文

18、件、通讯方式、实施策略等。而且模型和代码的一致性更保证了文档和代码的一致性, 为我们准确理解系统需求、 后期经验的累积提供了很好的平台。团队开发的广泛支持当系统变得越来越复杂时, 参与者需要更好的工具来描述复杂的问题与解决方案,不仅适用于小项目也能够扩展到大项目使用 Rhapsody,开发团队将可以无缝和高效的在模型驱动的开发环境合作开发, Rhapsody 的集成开发技术,将系统级和软件级的设计、 代码和文档进行共享、 重用以及集成变得十分容易。 使得开发团队通过网络或者局域网进行很好的协作。OXF(The Object eXecution Framework)Rhapsody支持实时框架技

19、术, 通过实时框架, 应用程序可以方便的从一个实时操作系统( RTOS)移植到其他的系统(不同的 RTOS或者根本没有 RTOS)上。可无缝支持 VxWorks,pSOS, QNX, MSWindows,Linux , Unix , Nuleus,自定义OS,以及无 OS的单片机系统。模型自动测试Rhapsody测试用例自动生成模块 ATG和测试模块 TC协调工作,可以进行模型系统的自动测试。在系统开发的过程中, ATG自动生成高覆盖率的测试用例,这些测试用例可以用 UML顺序图输出,测试模块 TC执行这些测试用例。ATG/TC可以被用来进行单元测试, 集成测试,衰退测试和基于目标机的测试。并

20、可以和第三方软件结合进行代码覆盖率分析和测试。Graphical Panel DiagramRhapsody从 7.3 版本增加了 Graphical Panel Diagram 的功能,使系统可以在设计阶段,轻松的生成设计原型,进行仿真验证。 Graphical Panel Diagram 特性增强了在设计阶段, 设计人员与客户、 项目主管交流设计行为能力, 确保交付的设计满足客户需求。 支持在模型中创建一个包含各种常用控件的视图, 与模型中元素相关联,验证系统设计。与 Rhapsody原有的仿真和设计阶段调试功能相结合,提供了一种好的验证设计的方法, 一种快捷的创建客户调试接口的方法,以便

21、在设计阶段早期发现缺陷。开放的软件Rhapsody可以很容易的和其它软件进行合作,来构架一个完整的协同开发环境。3 Rhapsody 模块介绍3.1 RhapsodyDeveloperfor C+, C and Java Win/Floating(基于 UML2.1/SysML1.0 标准建模语言的建模环境):适合复杂系统工程分析与设计,为系统和软件设计人员服务,RhapsodyDeveloper 提供了一个高效的模型驱动的开发、测试、实施平台,RhapsodyDeveloper 同时提供了在目标硬件上生成、执行具有产品级品质代码的功能。适用于软件的设计和开发,为软件工程师服务。应用 UML2

22、.1 对系统进行分析、设计支持 SysML1.0 语言应用于系统设计生成产品级的目标机代码, 支持 VxWorks 、Linux 等常见 RTOS,开放的模型框架支持通过定制适配到专有的操作系统。支持主机及目标机平台的动态模型的执行、调试、验证、测试生成 100产品级的目标机代码,支持VxWorks 、 Linux 等常见 RTOS,开放的模型框架支持通过定制适配到专有的操作系统。支持主机及目标机平台的动态模型的执行、调试、验证、测试支持主机和目标机之间基于模型的调试和代码级的设计时调试支持主机及目标机平台代码的逆向工程支持主机及目标机平台的模型/代码的动态一致支持面向功能分解的机构化建模方式

23、与面向对象建模方式共存支持 COM 和 CORBA在 Rhapsody中对符合 DoDAF/MoDAF 架构的系统进行建模、仿真、验证生成符合 DoDAF/MoDAF 规范的各种设计文档3.2 Rhapsody Tools & Utilities Add On( 功能增强包 )Rhapsody Tools & Utilities Add On 是 Rhapsody功能增强模块,主要包含如下三个主要功能:需求管理功能:支持从 DOORS、RequisitePro、Word、Excel、PDF 等格式文件中导入需求对不同开发阶段的需求,进行管理管理支持需求变更的同步对需求进行分析,需求变更时分析其影响图形化显示需求实现,需求实现跟踪回溯外部接口功能:支持与需求跟踪管理工具DOORS 的无缝集成支持与 ClearCase、Rational Team Concert、PVCS 等大多数配置管理工具无

温馨提示

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

评论

0/150

提交评论