爱思维尔

网络与计算机应用杂志

第32卷第5期,2009年9月,第1092-1105页
网络与计算机应用杂志

开发电子学习应用程序的语言工程技术

https://doi.org/10.1016/j.jnca.2009.02.005获取权限和内容

摘要

在本文中,我们建议使用语言工程技术来改进电子学习应用程序的开发并使其系统化。电子学习规范通常依赖于描述此类最终电子学习应用程序不同方面的特定领域语言。这一事实使得在构建这些应用程序时采用公认的语言工程原则是很自然的。这些原则促进了特定于域的语言的结构和运行时行为的规范,将其作为开发过程的核心部分。本规范可用于推动不同的活动:快速原型制作、提供创作符号和工具、自动模型检查属性、从标准导入/导出到标准,以及部署正在运行的应用程序。这种语言工程概念还促进了教师(语言的用户)和开发人员(设计者和实现者)在整个开发过程中的积极协作。在本文中,我们描述了这种由语言驱动的构建电子学习应用程序的方法,并以学习流排序语言为例说明了它的所有方面。

介绍

电子学习中的一个常见做法是使用语言描述学习场景的不同方面(例如内容、活动、参与者等)。国际监测系统标准化工作就是这一趋势的良好例子(Friesen,2005年)。事实上,许多这些努力都产生了合适的语言来描述电子学习应用程序的特定方面。其中,可以找到用于打包学习内容的语言(即IMS内容打包规范)(IMS,2004),用于描述评估过程中涉及的不同产品(如IMS问题与测试互操作性规范)(ISM,2006),用于描述特定学习者的概况(即IMS学习者信息包规范)(IMS,2005),用于对学习流中的活动进行排序(即IMS-Simple Sequenting规范)(国际监测系统,2003b),甚至用于描述异构学习环境中出现的不同教学方法(即IMS学习设计规范)(IMS,2003a)。

虽然这些标准化工作强调使用语言来解决互操作性问题(即作为异构平台用来交换信息的工具),在我们的工作中,我们提倡一种互补的理念:使用合适的语言来描述通过自动处理这些描述而生成的应用程序(Sierra等人,2006b)。基于特定领域语言的软件开发方法共享了这一理念(Deursen等人,2000;Mernik等人,2005)。根据这些方法,软件开发被设想为语言工程过程,其中为每个应用程序域指定、实现和维护合适的特定于域的语言,以及使用这些语言而不是通用编程语言描述软件应用程序。这些方法特别适用于那些必须具有有效机制来规范领域专家和开发人员之间交互的领域。电子学习是这些领域的典型例子,因为提供内容和微调最终应用程序的成本比最终部署应用程序的软件基础设施的初始开发成本高出几个数量级。在电子学习中采用语言驱动的方法可以使开发过程中的参与者更加合理地分配责任。教员将负责生成和维护最终应用程序,而开发人员则充当语言工程师,负责规范和维护教员使用的语言。开发人员还负责与这些语言相关的软件基础设施(包括用于生成最终运行的应用程序的生成器)。

我们已经在几个电子学习系统和应用程序的开发中成功地测试了这些语言驱动的原则(Fernández-Manjón和Ferná的ndez-Valmayor,1997;Moreno-Ger等人,2007;Sierra等人,2006c,Sierra等,2007b,Sierra等人,2008c),在这里,我们测试了使用特定于域的语言来协调教师和开发人员之间所需的协作的重要性。在这些经验中,我们还认识到,在采用语言驱动的过程模型时,采用一种补充方法来实现面向互操作性的标准化工作是可行的。我们认为,采取不同的方法,将教师在其特定学习领域中已经使用的语言形式化,而不是寻求通用的解决方案,也很有趣。由于这些语言是特定领域的语言,是讲师经验的一部分,因此与通用语言相比,它们更容易被讲师理解和使用。这并不意味着标准化问题被忽视。事实上,这些问题随后可以通过适当的进口/出口模块加以解决。然而,通过采用语言工程的观点,开发人员根据教师的特殊需求不断提供适当的语言支持,可以促进以教师为中心的开发过程,这使得教师能够更深入地参与电子学习应用程序的制作和维护。在这项工作中,我们将主要说明这一点自下而上方法,类似于Sierra等人(2006a)报告的经验,尽管这些技术在很大程度上也适用于自上而下方式,基于现有语言的使用、专门化和改编,如Moreno-Ger等人(2006年)提出的语言。

本文揭示了网络学习与语言工程的结合。为此,本文描述并说明了在电子学习中由语言驱动的方法促进的不同活动,以及这些活动是如何围绕特定领域语言的声音规范组织的。这些规范从抽象的特征开始信息模型对于这些语言,它们以概念和形式化的方式进行描述。语言的结构形式化允许以适当的形式对其运行时行为进行后续形式化操作语义学。生成的规范用于推动许多其他语言工程活动。事实上,这些规范可以直接用于构建语言的运行原型,可以用于优化这些语言的结构和语义。它们还可以通过指定这些符号与抽象信息模型之间的映射,为讲师提供更方便用户的符号(例如图形符号)。生成的语言有助于自动检查属性,从而为讲师提供更好的创作支持。由于通常的电子学习规范也是基于语言的,因此可以使用适当的语言翻译来连接这些规范。最后,可以使用众所周知的模型-视图控制(MVC)模式(Krasner和Pope,1988)轻松部署最终的高级设计,该模式通常用于组织许多现代基于web的应用程序。

本文的结构如下。第2节通过与传统开发模型进行比较,激发了语言驱动方法。在第3节中,我们介绍了一个案例研究,该案例研究将在整个论文中用于说明目的。在第4节中,我们将重点介绍特定领域语言的结构和行为规范。第5节专门分析这种语言驱动的方法所支持的不同活动。论文最后给出了一些结论和未来工作的思路(第6节)。

节代码段

与传统开发方法相比,电子学习应用程序的语言驱动开发

在传统的开发过程中,模型指导者是需求提供者,而开发人员是应用程序实现者。通过使用传统的需求获取技术,开发人员采访讲师,以确定应用程序中必须包含哪些资源(即内容、支持工具等),以及最终用户(如讲师、学习者等)如何与这些内容交互。例如,作为开发需求获取过程的结果

一个例子

为了说明本文中介绍的不同方面,我们将使用一种简单的学习流排序语言。该语言是马德里Complutense大学开发的系统(Martínez-Ortiz等人,2007a)〈e-LD〉中包含的流驱动教育建模语言的简化版本。〈e-LD〉支持编写和播放上述IMS学习设计(IMS LD)规范中描述的学习单元(IMS,2003a;Koper和Olivier,2004)。

语言设计

语言驱动方法的中心步骤是设计用于描述目标应用程序关键方面的特定于域的语言。此设计过程必须在结构尺寸(即如何使用语言描述所涉及的方面)和行为维度(即所描述的应用程序的行为)。在本节中,我们通过强调所使用的语言工程原则来解决这两个设计维度。

启用的活动

如前所述,一旦语言的设计可用,它就可以用来组织一些活动,这些活动可以通过使用成熟的语言工程技术来实现。特别是,在本节中,我们考虑了快速原型的解决、面向作者的符号的合并、模型选择功能的引入、标准规范的导入/导出以及最终应用程序的部署。

结论和未来工作

在本文中,我们介绍了如何应用语言工程来改进和系统化电子学习应用程序的开发。该方法的核心是用于描述最终学习应用程序关键方面的特定领域语言的结构和操作规范。本规范由成熟的语言工程方法、技术和工具管理,这些方法、技术与工具也适用于其他一些已启用的活动。特别是,我们有

致谢

西班牙科学与创新委员会、工业、旅游和商业委员会(项目TIN2005-08788-C04-01、Flexo-TSI-020301-2008-19和TIN2007-68125-C02-01)以及马德里地区政府/Complutense大学(研究小组921340),桑坦德/UCM项目PR34/07-15865和欧盟阿尔法项目CID(II-0511-A)部分支持了这项工作。

工具书类(66)

  • 交流。阿霍等。

    编译器:原理、技术和工具

    (2007)
  • C.W.公司。艾伦

    ADDIE培训系统的概述和演变

    人力资源开发进展

    (2006)
  • M。巴尔多尼等。

    基于推理的课程排序和验证:在面向服务的体系结构中的集成

  • M。巴尔多尼等。

    课程模型检查:属性的声明性表示和验证

  • M。伯贝克等。

    专业XML

    (2001)
  • G.公司。布奇等。

    统一建模语言用户指南

    (1998)
  • 答:。博克

    教育用个人电脑

    (1985)
  • D。布尔戈斯等。

    使用IMS学习设计和〈e-Adventure〉编写基于游戏的自适应学习单元

    国际学习技术杂志

    (2007)
  • D。布尔戈斯等。

    表示自适应和自适应学习单元。如何在IMS学习设计中建模个性化在线学习

  • 答:。奇马蒂等。

    NUSMV:一种新的符号模型检查器

    国际技术转让软件工具杂志

    (2000)
  • E.M.公司。克拉克等。

    使用时序逻辑规范自动验证有限状态并发系统

    程序设计语言与系统学报

    (1986)
  • E.M.公司。克拉克等。

    模型检查

    (2000)
  • Clément D,Despeyroux J,Despeyoux T,Hascoet L,Kahn G.计算机上的自然语义。In:Fuchi K、Nivat M,。。。
  • Comon H、Dauchet M、Gilleron R、Jacquemanrd F、Lugiez D、Löding C等。树自动机技术与应用。。。
  • 答:。德乌森等。

    领域特定语言:注释书目

    ACM SIGPLAN通知

    (2000)
  • B。费尔南德斯·曼乔恩等。

    改进万维网教育用途,推广超文本和标准通用标记语言

    教育和信息技术

    (1997)
  • D。弗里德曼等。

    编程语言基础

    (2001)
  • N。弗里森

    互操作性和学习对象:e-learning标准化概述[在线]

    跨学科知识与学习对象杂志

    (2005)
  • R。福恩特斯·费尔南德斯等。

    管理多智能体系统中的矛盾

    IEICE信息与系统交易

    (2007)
  • J。亲善等。

    专业jakarta struts

    (2003)
  • 智能弹药系统。IMS学习设计信息模型1.0版最终规范[在线]。2003年1月20日。恢复。。。
  • 智能弹药系统。IMS简单排序信息和行为模型1.0版最终规范[在线]。2003年3月3日。。。。
  • 智能弹药系统。IMS内容打包信息模型1.1.4版最终规范[在线]。2004年10月4日。恢复。。。
  • 引用人(9)

    • 开发分析模型以提高电子学习服务质量的混合方法

      2012年,计算机与教育
      引文摘录:

      由于电子学习是以学习者为中心,由学习者自己发起的,因此如何开发学习平台来满足用户(客户)的要求已成为一个重要问题(Gunasekaran,Ronald,&Shaul,2002;Kruse,2003;Rosenberg,2001;Wang,2003;Wentling等人,2000)。目前对电子学习的一些研究侧重于这种学习模式的教育方面(例如,学习成绩和态度,合作学习评估)(Chang和Chen,2009;Cheng,Chen,Wei,Chen;Liaw,Huang,&Chen,2007),而一些研究则侧重于此类学习的技术方面(例如,接口、标准、系统)(George&Labas,2008;Gonzalez-Barbone&Anido-Rifon,2010;Ismail,2002;Martinez-Ortiz,Sierra,Fernández-Manjón,&Fernandez-Valmayor,2009;Rey-López,Díaz-Redondo,Ferníndez-Vilas,Pazos-Arias,García-Duque,Gil-Solla等人,2011)。此外,大多数相关研究都是为了测量学习者对电子学习的满意度和/或根据特定标准评估电子学习产品/系统(Alptekin&Karsak,2011;Ardito,Costable,De Marsico,Lanzilotti,Levialdi,Roselli et al.,2006;Levy,2007;Wang,2003)。

    • MOOC中基于模型的差异化教学软件产品线

      2017年,欧洲在线学习会议记录,ECEL
    • 开发电子学习解决方案:不同的方法,共同的使命

      2014年,阿普伦迪扎耶技术研究院(Revista Iberoamericana de Tecnologias del Aprendizaje)
    • 构建电子学习平台的软件产品系列:案例研究

      2014年,阿普伦迪扎耶技术研究院(Revista Iberoamericana de Tecnologias del Aprendizaje)
    查看Scopus上的所有引用文章
    查看全文