A Metadata Handling API for Framework Development: a Comparative Study

被引:3
|
作者
Guerra, Eduardo [1 ]
Lima, Phyllipe [2 ]
Choma, Joelma [3 ]
Nardes, Marco [3 ]
Silva, Tiago [4 ]
Lanza, Michele [5 ]
Meirelles, Paulo [6 ]
机构
[1] Free Univ Bozen Bolzano, Fac Comp Sci, Bolzano, Italy
[2] Natl Inst Telecommun INATEL, Santa Rita Do Sapucai, Brazil
[3] Natl Inst Space Res INPE, Sao Jose Dos Campos, Brazil
[4] Univ Fed Sao Paulo, Dept Comp Sci, Sao Jose Dos Campos, Brazil
[5] Univ Lugano, Fac Informat, Lugano, Switzerland
[6] Univ Fed Sao Paulo, Sao Paulo Sch Med, Sao Paulo, Brazil
来源
34TH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING, SBES 2020 | 2020年
基金
巴西圣保罗研究基金会;
关键词
Framework; Metadata; Meta-Framework; Annotations; Code Metrics; Exploratory Experiment; !text type='Java']Java[!/text; METRICS SUITE;
D O I
10.1145/3422392.3422428
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Frameworks play an essential role in software development, providing not only code reuse, but also design reuse. Several Java frameworks and APIs such as Spring, JPA, and CDI rely on the use of metadata, mainly defined by code annotations. These frameworks usually use the Java Reflection API to consume code annotations, which only returns the annotations in a given code element. This strategy, however, is far from the needs of a real framework. The goal of this paper is to propose a novel API, named Esfinge Metadata, to assist in the development of frameworks based on metadata and applications based on custom annotations. Being based on annotations itself, this new API uses them to map metadata to class members. We carried out an experiment to evaluate our API and its impact on aspects such as code structure, complexity, and coupling, while also performing a comparison with the direct use of the Java Reflection API. The participants implemented a metadata-based framework based on realistic requirements in a sequence of 10 tasks that took an average of nine hours. As a result, participants that used our API maintained a more stable code evolution, regarding complexity and coupling as opposed to participants using the Java Reflection API, where the code metrics evolution and structure vary greatly.
引用
收藏
页码:499 / 508
页数:10
相关论文
共 50 条
  • [31] Common Metadata Framework: Integrated Framework for Trustworthy Artificial Intelligence Pipelines
    Koomthanam, Annmary Justine
    Tripathy, Aalap
    Serebryakov, Sergey
    Nayak, Gyanaranjan
    Foltin, Martin
    Bhattacharya, Suparna
    IEEE INTERNET COMPUTING, 2024, 28 (03) : 37 - 44
  • [32] Requirements Handling in Multidisciplinary Product Development - A Company Study
    Stolt, Roland
    Andre, Samuel
    TRANSDISCIPLINARITY AND THE FUTURE OF ENGINEERING, 2022, 28 : 115 - 124
  • [33] Framework for Scalable File System Metadata Crawling and Differencing
    Edi Shmueli
    Ilya Zaides
    Journal of Grid Computing, 2018, 16 : 445 - 457
  • [34] A Scalable and Efficient Metadata Framework Towards Internet of Things
    Sung, Jongwoo
    Kim, Taehong
    Kim, Young-Joo
    Lopez, Tomas Sanchez
    Kim, Daeyoung
    WIRELESS PERSONAL COMMUNICATIONS, 2018, 100 (03) : 1129 - 1148
  • [35] A Scalable and Efficient Metadata Framework Towards Internet of Things
    Jongwoo Sung
    Taehong Kim
    Young-Joo Kim
    Tomás Sánchez López
    Daeyoung Kim
    Wireless Personal Communications, 2018, 100 : 1129 - 1148
  • [36] A framework of XML-based geospatial metadata system
    Yu, S
    Qiang, HZ
    Jing, SW
    ADVANCED WEB AND NETWORK TECHNOLOGIES, AND APPLICATIONS, PROCEEDINGS, 2006, 3842 : 775 - 778
  • [37] A unified metadata information management framework for digital city
    Li, Q
    Guo, LL
    Huang, F
    Tu, Y
    IGARSS 2004: IEEE INTERNATIONAL GEOSCIENCE AND REMOTE SENSING SYMPOSIUM PROCEEDINGS, VOLS 1-7: SCIENCE FOR SOCIETY: EXPLORING AND MANAGING A CHANGING PLANET, 2004, : 4422 - 4424
  • [38] A Bi-directional Semantic Framework for Bibliographic Metadata
    del Corral, John
    Blumenthal, M. Benno
    2010 IEEE FOURTH INTERNATIONAL CONFERENCE ON SEMANTIC COMPUTING (ICSC 2010), 2010, : 525 - 529
  • [39] Framework for Scalable File System Metadata Crawling and Differencing
    Shmueli, Edi
    Zaides, Ilya
    JOURNAL OF GRID COMPUTING, 2018, 16 (03) : 445 - 457
  • [40] A framework for creating knowledge graphs of scientific software metadata
    Kelley, Aidan
    Garijo, Daniel
    QUANTITATIVE SCIENCE STUDIES, 2022, 2 (04): : 1423 - 1446