• 我的网站
当前位置: 主页 > 收录文章 > >详细介绍
资讯信息

高职教育中模型驱动架构式(MDA)软件开发在教学上

时间:2019-02-28 来源:《才智》杂志 作者:admin 点击:

  才智杂志社2019年01期目录文章:高职教育中模型驱动架构式(MDA)软件开发在教学上的应用研究

  摘要:现今我国的教育技术领域研究工作已经获得了很大进展,但就如何贯穿于学习过程开展全面设计、开发、利用、管理跟评价,仍处于探索初步阶段。本文以高职教育为例,对此项研究进行分析,主要论证模型驱动的体系架构式(MDA)在高职教育中的应用,为新改进的教学模式整改提供坚实的基础。

  关键词:模型驱动体系架构式(MDA); UML建模; 学工系统;

  引言

  如何迅速、高效地开发软件系统,适应用户需求的快速变化,确保软件系统的质量,控制软件开发成本是软件工程一直以来面临的一个共通的问题。与传统软件开发方法不同,MDA方法侧重于系统建模和系统架构的设计。在MDA中,模型是软件开发的核心,MDA通过目前被广泛应用的可视化建模语言对系统建模,以实现系统业务逻辑与特定技术平台的分离,从而更大程度的提高系统可重用性,规范软件开发流程,提高软件开发效率。

  1 MDA概述

  模型驱动架构(Model Driven Architecture,MDA)是一种基于模型驱动技术的软件开发框架,由国际对象管理组织(Object Management Group,OMG)于2002年发布,该框架以UML及其它工业标准作为技术支撑,可创建出高抽象度的、可机读的、独立于实现技术的标准化模型,同时可实现软件开发模型在软件开发过程中的可视化、存储以及交换[1],是一种溶入了新思想、新技术、新方法的软件开发方法。

  1.1 MDA体系结构

  MDA体系结构如图1,其核心是OMG的一系统标准:统一建模语言(Unified Modeling Language,UML),元对象设施(Meta Object Facility, MOF),XML 元数据交换(XML Metadata Interchange,XMI),公共仓库元模型(Common Warehouse Meta-Model, CWM)[1]。

  从同心环中心部分的核心标准到外层环的JAVA、.NET、Web Service等平台模型再到更外一层的SECURITY等公共服务,最后到最外层Telecom等领域的应用代码,实际上就是从与平台无关的抽象模型到与特定平台相关的更高层次模型,最后到各个领域应用程序的过程,这体现了MDA模型驱动的开发过程。

  UML:是MDA存在的基础,是一种通用的可视化建模语言,UML被MDA用于描述各种模型,UML模型的应用使得软件开发标准化、规范化。

  MOF:是MDA的的核心部分,它是对UML 更高层次的抽象,可以实现不同格式数据的统一定义,它为MDA各种模型的转换与映射提供了基础支持。

  XMI:是一种工业标准,是基于XML的元数据交换,用于定义统一的数据交换格式,目的在于实现不同模型之间的相互理解。

  CWM:是MDA实现数据格式变换的手段,例如将数据实体从关系数据库变换为XML格式,从而使MDA中通用的数据模型变换引擎得以实现。

  上述标准形成了创建、发布和管理模型的基础,为MDA在模型的建立、模型间的变换,以及模型与特定平台代码的转换提供了理论依据和技术支持。

  1.2 MDA模型

  MDA的关键在于建模,建模的成败决定了MDA软件开发的成败。MDA中有三个重要模型:计算无关模型(Computation-Independent Model,CIM),平台无关模型(Platform Independent Model,PIM),平台相关模型(Platform Specific Model,PSM)[2]

  CIM模型:来自于业务领域,通过对业务领域建模产生。通常是采用图表和自然语言相

  结合的方式对系统相关的业务流程进行描述,因此也被称为业务模型。

  PIM模型:是对CIM模型的映射,也是对领域模型更高层次的抽象。由于其不涉及任何

  与系统支撑环境和实现技术相关的信息,因此称为平台无关模型。

  PSM模型:与PIM模型的差异在于,PMS模型是根据特定平台和实现语言的映射规则由

  PIM转换而来,是与具体实现技术相关的平台相关模型,是最贴近代码级的模型。

  1.3模型转换

  在MDA中,模型转换是系统能否实现的关键技术,它由四部分组成:源模型、目标模型、转换工具以及转换规则库。所谓模型转换就是指利用转换规则,通过转换工具将源模型转换为目标模型,最后将生成的目标模型输出的工作过程[2]。以PIM和PSM之间的转换为例,其转换过程如图2所示,为便于实现模型间的转换,二者均采用同一种元语言——基于MOF扩展的UML建模,其中的变换定义由转换规则库描述,执行则是通过MDA相应的转换工具加以实现。

  2 MDA软件开发

  MDA软件开发思想的出现为软件开发提供了一个全新的思路,它汲取并结合了现有软件开发方法的优点,如:极限编程的快捷开发、RUP的迭代式开发以及快速原型法的原型思想,在此基础上不断创新,致力于提升模型构建的标准化和自动化程度,以提高软件的可移植性、互操作性、重用性及可维护性。MDA软件开发生命周期如图3所示,其各开发阶段功能描述如下:

  1)需求捕获:通过与目标软件用户交流沟通,了解系统的业务工作流程及用户对系统的功能需求,形成对待解决问题完整描述的文档资料及初步用户手册;

  2)需求分析:对需求捕获中获取的信息文档进行提取、抽象,生成相关的业务逻辑文档。该阶段为CIM建模过程,可通过UML用例图对业务流程进行计算无关建模;

  3)系统总体设计:将前面构建的CIM计算无关模型转换成相对应的PIM模型,由于采用UML统一建模,语义明确,便于理解,因此该转换过程通过手工可方便实现。该阶段为PIM平台无关建模过程,可通过基于MOF的领域建模实现;   4)系统详细设计:本阶段是对系统特定平台相关技术的设计过程,如:信息格式化技术、消息处理中间件、分布式组件中间件等技术的设计,当然也包括系统体系结构、界面表示等内容的设计。该过程是将步骤3)中的PIM模型转换成一个或多个特定平台模型PSM的模型转换过程,其模型转换由系统定义的一系统映射规则实现;

  5)系统编码:该阶段为PSM平台相关模型向实现代码的转换过程。由于PSM建模过程中已将大量的特定平台相关信息融入其中,也就是说本阶段的PSM模型已经很大程度上贴近最终的系统代码。因此,只要通过定义相关转换规则、选择相应转换工具,PSM向代码的转换工作可由系统工具直接完成;

  6)系统的测试和发布:对系统代码的测试以及维护是本阶段的主要工作,其目的是确保交付软件系统的正确性、可用性及功能完备性;

  通过上述分析可知,相较传统软件开发方式而言,MDA具有几乎相同的软件开发周期,二者不同之处在于MDA和传统软件开发在不同开发阶段产生的设计工件不相同。传统软件开发中,分析与设计过程中产生的模型、图以及文档是为最终的代码实现而存在的,它们只是软件开发的一种辅助工具[3],代码编写完成后,它们也就失去其存在的意义。而MDA软件开发则不同,MDA在设计阶段分离出抽象级别的模型,如:PIM和PSM模型,它们是正式的精确模型,它们是能够被机器所理解和识别的,是软件开发的产品,而不仅仅是中间过程模型[4]。因此可以说,MDA从根本上改变了软件开发的方式,以建模行为驱动整个软件开发过程,软件工业的最终产品将不再是代码,而是独立于计算平台的模型,这是软件工程方法学的一个质的飞跃。

  3 MDA软件开发前景

  目前,MDA正处在一个演进的过程当中,其优势在于:MDA可以对异构系统之间的互操作提供支持,这使得MDA具备了中立于任何软件商的软件开发优势。此外,MDA是需求和技术之间的杠杆和纽带,PIM是对需求的建模,PSM则是应用具体技术后的模型,两者之间的变更是相互独立的,也正因如此,系统的商业逻辑和实现技术实现了松藕合。所以说,MDA开发方式使我们的系统能够更为灵活地实现、集成、维护和测试[2]。

  然而,MDA在实际应用中还存在着诸多问题,如:MDA为获取业务模型的持久价值,增加了抽象层,但层与层之间的转换并不如期待那样顺畅。比如,PIM模型→PSM模型转换,PSM模型→代码转换,这些转换过程都需要相应的MDA工具实现,而就目前而言MDA相应的开发工具并不完备,这使得模型之间的转换比预想的要困难了许多。而且,UML作为当前最具优势的统一建模语言,在建模技术上的表现也并不尽如人意,UML的局限性体现在不能适应特殊领域的建模。因此,系统要想实现精确模型的建立就需要大量的UML扩展机制提供相应的技术支持,尽管目前也有一些语言,如:OCL(对象约束语言)可支持精确建模,然而这种支持距离真正意义上的可执行模型还具有一定距离[4]。此外,MDA方法与工具的推广也是一个问题,目前多数企业与个人都有一套自已的开发模式与开发工具,放弃自身多年的积累去适应一个全新的的开发模式,不能不说是一个严峻的挑战。

  4 结论

  总之,MDA为软件开发提供了一个战略性的方法学。MDA的发展目标就是要尽可能减少重复工作,尽可能地提升软件复用的层次和范围,实现模型的直接运行或是代码的自动生成。尽管在MDA的发展过程中还存在着诸多内在外在的制约因素,但是MDA作为新一代的软件开发方法,它将是未来软件体系研究的重点,相信MDA会给未来的软件行业带来更大的发展空间以及更多的挑战与惊喜。

  声明:文章来源网络,版权归原作者所有,如有侵权,请告知立即删除.

关于才智 | 建筑期刊 | 收录文章 | 投稿须知 | 联系我们 | 网站地图
主管单位:吉林省行政学院高新技术人才市场    主办单位:《才智》杂志社 国际刊号:ISSN1673-0208   国内刊号:CN22-1357/C   邮发代号:12-344
才智杂志社版权所有@未经本刊授权,不得转载本站资料