首页> 外文学位 >Supporting Effective Reuse and Safe Evolution in Metadata-Driven Software Development.
【24h】

Supporting Effective Reuse and Safe Evolution in Metadata-Driven Software Development.

机译:支持元数据驱动的软件开发中的有效重用和安全演化。

获取原文
获取原文并翻译 | 示例

摘要

In recent years, metadata-driven software development has gained prominence. In this implementation model, various application concerns are provided as third-party frameworks and libraries that the programmer configures through metadata, such as XML configuration files or Java annotations. Metadata-driven software development is a special case of declarative programming: metadata serves as a domain-specific language that the programmer uses to declare various concerns, whose implementation is provided by an elaborate ecosystem of libraries and frameworks that serve as pre-defined application building blocks. Examples abound: transparent persistence mechanisms facilitate data management; security frameworks provide access control and encryption; unit testing frameworks provide abstractions for implementing and executing unit tests, etc. Metadata-driven software development has been particularly embraced in enterprise computing as a means of providing standardized solutions to common application scenarios.;Despite the conciseness and simplicity benefits of metadata-driven software development, this implementation model introduces a unique set of reuse and evolution challenges. In particular, metadata is not reusable across application modules, and program evolution causes unsafe discrepancies between the main source code and its corresponding metadata. The research described in this dissertation addresses five fundamental problems of metadata-driven software development: (1) bytecode enhancements that transparently introduce concerns hinder program understanding and debugging; (2) mainstream enterprise metadata formats are hard to understand, evolve, and reuse; (3) concerns declared via metadata cannot be reused when source-to-source compiling emerging languages to mainstream ones; (4) metadata correctness cannot be automatically ensured as application source code is being refactored and enhanced; and (5) lacking built-in metadata, JavaScript programs can be enhanced with additional concerns only through manual source code changes.;The research described in this dissertation leverages domain-specific languages and automated code generation to enable effective reuse and safe evolution in metadata-driven software development. The specific innovations that address the problems outlined above are as follows: (1) a domain-specific language (DSL) describing bytecode enhancement that facilitates the understanding and debugging of additional concerns; (2) a novel metadata format expressed as a DSL that is easier to author, understand, reuse, and maintain than existing metadata formats; (3) automated metadata translation that enables effective reuse of target language additional concerns from source-to-source compiled source language programs; (4) metadata invariants---a new abstraction for expressing and verifying metadata coding convention; and (5) a new approach to declaratively enhancing JavaScript programs with additional concerns.
机译:近年来,元数据驱动的软件开发日益受到关注。在此实现模型中,提供了各种应用程序关注点,作为程序员通过元数据(例如XML配置文件或Java批注)配置的第三方框架和库。元数据驱动的软件开发是声明式编程的一种特殊情况:元数据是一种特定于领域的语言,程序员可用来声明各种问题,其实现由精心设计的库和框架生态系统提供,这些库和框架可以用作预定义的应用程序构建块。例子很多:透明的持久性机制有助于数据管理;安全框架提供访问控制和加密;单元测试框架提供了用于实现和执行单元测试等的抽象。元数据驱动的软件开发已在企业计算中特别受到欢迎,它是为常见应用程序场景提供标准化解决方案的一种手段。开发中,此实现模型引入了一组独特的重用和演进挑战。特别是,元数据不可在应用程序模块之间重复使用,并且程序的演变会导致主源代码与其对应的元数据之间出现不安全的差异。本论文描述的研究解决了元数据驱动的软件开发的五个基本问题:(1)字节码的增强透明地引入了关注点,阻碍了程序的理解和调试。 (2)主流企业元数据格式难以理解,发展和重用; (3)当从源到源将新兴语言编译成主流语言时,无法重用通过元数据声明的关注; (4)由于正在重构和增强应用程序源代码,因此无法自动确保元数据的正确性; (5)缺少内置的元数据,只能通过手动更改源代码来增强JavaScript程序的关注点。本论文中的研究利用领域特定的语言和自动代码生成功能来实现元数据的有效重用和安全演化驱动的软件开发。解决上述问题的具体创新如下:(1)描述字节码增强的领域特定语言(DSL),它有助于理解和调试其他问题; (2)一种新颖的元数据格式,表示为DSL,比现有的元数据格式更易于编写,理解,重用和维护; (3)自动的元数据翻译,可以有效地重用目标语言,源到源编译的源语言程序还会产生其他问题; (4)元数据不变式-一种用于表达和验证元数据编码约定的新抽象; (5)一种以其他方式声明性地增强JavaScript程序的新方法。

著录项

  • 作者

    Song, Myoungkyu.;

  • 作者单位

    Virginia Polytechnic Institute and State University.;

  • 授予单位 Virginia Polytechnic Institute and State University.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2013
  • 页码 172 p.
  • 总页数 172
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号