当前位置:首页 > 申请书大全 > [模型驱动开发的今天] 模型驱动软件开发
 

[模型驱动开发的今天] 模型驱动软件开发

发布时间:2019-03-19 04:16:06 影响了:

  模型驱动开发(Model DrivenDevelopment,MDD)体会一下这几个词。它们说出了这个不断变化的工业中一个新的改变。这里不是说一种革命,而是一种缓慢的变化,但是肯定会渗透到我们开发系统的方式中。这种推动将降低代码的重要性,并且专注于一些开发中的真正事情:最终的应用程序被期望怎样工作,并确保你能够根据客户的需求可靠地建立起来。
  模型驱动开发是更伟大视景模型驱动架构(Model DrivenArchitecture,MDA)中的一部分。MDA是一种在开发软件过程中使用模型的方法,允许将系统的功能/行为与实施细节相分离。通过创建一个或多个平台无关模型(PIM),这样可以轻松地将应用程序从一个环境移植到另一个环境。
  MDA一直在发展,以便包含各种概念,从而将之应用于所有类型的软件开发项目,包括电子商务、金融服务、保健、航空航天和运输。嵌入式开发工程师及其解决方案在满足下列特殊需求的同时必须专注于特定的需求,以便最大限度地发挥MDA的优势:实时性的性能、紧凑代码、安全、可靠和专业化的硬件控制。Rhapsody关键的使能技术专注于嵌入式开发工程师的需求,并始终遵循下列概念:将功能和行为从实施细节中分离出来,从而使嵌入式开发工程师可以发挥MDA流程的最大功效。
  
  没有魔法
  
  如果模型驱动开发这么好的话,为什么不是每个人立刻加入到这个潮流中来呢?
  首先,模型驱动开发不是银弹,能神奇地解决你所有的问题。总有某人需要去实现系统的功能,并且还找不到任何工具来完成这一点。所有你能发现的工具只是使这项工作更容易和直接一些。
  第二,采用模型驱动开发,并不只是在开发项目的过程中更换一种工具。它还必须和已根深蒂固的开发过程结合起来,但实际上更重要的是,你还会担心它对现有应用程序的影响。决定改用基于模型的方法前确实需要有一些仔细的考虑,并且,一般说来,为了不影响当前的工作,你只会在新项目中改变开发方法。
  第三,你还需要获得那些使用工具的人们的支持(你需要一些工具来应用模型驱动开发)。开发人员常会认为“模型驱动开发不是编程”而回避它,并且当心他们的工作难于被接受。他们还可能担心模型驱动开发将会使他们以前辛苦学来的一些技巧过时。他们的担心也不是完全没有理由。采用模型驱动开发后,市场确实很有可能会减少对那些精通好几种编程语言的开发人员的需求。但是另一方面,所有好的开发人员,首先和最主要的是,他们是问题的解决者。他们感兴趣的是尽可能地为手边的主要问题找到新的更好的解决方案。模型驱动开发激动人心的一点就是它允许开发人员集中精力于解决主要的设计问题,增加新的、酷的功能,而不是花费他们的主要时间于改正语法错误,防止内存泄露,或无休止的低级bug上。
  还有第四点,它是第三点的一个结果,工具必须足够好。不幸的是,有时用户对工具期待太多,或工具提供厂商承诺过多,实际上却不能交付。这两种情况都很容易使用户放弃模型驱动开发的想法。你确实需要保证工具能够满足你的需求。
  
  可视化软件工程
  
  模型驱动开发的基础是模型和表达模型的语言。模型提供了这样一种能力,能够一致性地显示这个系统的不同视图。一个常见的错误是认为模型驱动开发是模型和代码之间的一种关系,通过代码实现了模型。
  模型的一个主要用途消除开发过程中各参与方之间的隔阂,需求工程师,系统分析员,软件开发人员和测试者都可以使用同一种语言。你可以注意到,他们可能专注于语言的不同部分,以满足他们的需要,但他们都会共用一些基本的结构,并对他们正工作的系统有一个统一的认识。
  更重要的是,用户也需要知道什么将会被交付,需要加入到整个开发过程中,与创建系统的不同人员进行交流。模型驱动开发正逐渐获得公司高级管理者注意,其中的一个主要原因就是这种能够逐渐增加用户、管理层和大的组织机构参与的能力。
  
  兼顾系统工程师和开发人员
  
  在了解了模型驱动开发之后,读者此时对模型驱动开发工具的需求也就应运而生了。
  在设计工具时,应该同时兼顾系统工程师和开发人员,例如,为满足系统工程师的需求,Telelogic在System Designer工具包中提供了Rhapsody,这是工具产品系列中一套完整的系统解决方案,系统设计人员借助这些解决方案便能使用自然、直观而有效的丰富功能。
  与此同时Rhapsody引入了这样的设计方法:在宿主环境中持续执行和验证软件,然后将该软件直接放人嵌入式目标中,以进行基于目标的测试。通过全面整合系统工程师和软件开发人员的特定需求,Rhapsody可为用户提供功能强大而丰富的工具,借助这些一流的工具,遍布世界各地的团队就可以进行完全无障碍的协作。
  借助Rhapsody工具套件中齐备的系统工程功能,系统工程师便可确保他们能够正确指定系统,并能够在开发流程中与所有利益相关者就系统方面的问题进行更为有效的交流。此外,Rhapsody的模拟功能还可帮助系统工程师消除开发流程早期模型中出现的错误,与在最终测试环节或部署系统时发现同样的错误相比,这时所发生的维护成本要低得多。
  通过使用行业标准UML和SysML,系统工程师可获得清晰的(不会出现模棱两可的情况)系统需求和设计构想。Rhapsody提供的Check Model功能可使工程师确信模型及其界面是完整而正确的。Rhapsody内置的模拟环境能够确保设计环节中不会出现行为错误。Rhapsody Gateway提供了一个功能强大的可跟踪性解决方案,该解决方案可使用模型与领先的需求管理及开发工具之间的双向接口。
  借助Gateway,工程师便可确保设计思路能够满足原始需求。只需按一下按钮,ReporterPlus功能便会自动生成自定义的系统工程规范文档。通过整合强大的建模工具、能力和功能,系统工程师就可从单条工具链中受益,此工具链提供了真正意义上的解决方案,可应对在设计、协作和测试阶段中所面临的挑战。包括新型“图形用户界面”在内的改进之处,可帮助用户轻松完成特定域的建模工作,进而使系统工程师能够创建特定域的项目,以便更加明确地表达其设计思路。
  借助诸如白板、剖析、自定义位图和高级排版之类的功能,系统工程师就能以最为轻松便捷的方式设计出一个完整的系统。与传统文档驱动方法相比,最新版Rhap-sody可帮助用户以图形的方式指定系统设计和系统架构、模拟并自动验证正处于构建之中的系统,从而使用户轻松实现前所未有的工作效率。这样,工程师和开发人员便能最终创建出正确、清晰且完全满足原始需求的质量体系规范。
  开发人员可选择在模型或代码中进行修改,而模型和代码则会据此进行动态更新。该动态模型/代码关联(DMCA)功能可提供在任何粒度层面上进行设计的灵活性,并可确保模型和文档始终与代码保持一致。对于软件开发人员,Telelogic为他们提供了RhapsodyDeveloper工具包,其中功能丰富的工具系列可供开发人员进行设计、开发、测试、协作,并支持在具有多种特定域语言能力的环境中执行可靠且高质量的代码。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3