A Conceptual Model for Metadata-based Frameworks

2425 Words5 Pages

Abstract. Recent frameworks employ the strategy to define a specific metadata schema for applications to use in their classes and programming elements, enabling framework behavior customization. Despite this technique is being widely used, there are not models, design patterns or development guidelines that aim to help in the creation of this kind of framework. This thesis proposes a conceptual model for metadata-based frameworks that has the aim to identify appropriate solutions for its internal structure and scenarios where it is suitable for. As a result, software architects and framework developers with this conceptual model should be able to identify situations where the metadata usage is appropriate and to design suitable solutions that provides flexibility in metadata reading and processing.

Key words: Framework, Metadata, Software Architecture, Software Design

1. Context

A framework is a set of classes that supports reuse at larger granularity. It defines an object-oriented abstract design for a particular kind of application which enables not only source code reuse, but also design reuse [Johnson & Foote, 1988]. The framework abstract structure can be filled with classes from its own library or application-specific ones, providing flexibility for the developer to adapt its behavior to each application. Besides flexibility, a good framework also increases the team productivity and makes application maintenance easier [Fayad et al. 1999].

In the first frameworks, the application classes had to be compatible with the framework protocol usually by extending an abstract class or implementing an interface. The framework structures evolved and recent ones use introspection [Forman and Forman 2005] to access at runtime the ...

... middle of paper ...

...jcp.org/en/jsr/detail?id=299.

Johnson, R. and Foote, B. (1988) “Designing reusable classes”. In: Journal Of Object-Oriented Programming, v.1, n. 2, p. 22-35, Jun./Jul.

Kohls, C. and Panke, S. (2009) “Is that true…? Thoughts on the epistemology of patterns”. In Conference on Pattern Languages of Programs, 16, Chicago.

Nuccitelli, R., Guerra, E. and Fernandes, C. (2010) “Parsing XML Documents in Java using Annotations”. In XML: Aplicações e Tecnologias Associadas, 8, Vila do Conde.

Santana, E., Tanaka, S., Guerra, e., Fernandes, C. and Silveira, F. (2009) “Towards a Practical Approach to Testing Pointcut Descriptors With JQuati”, In Latin American Workshop on Aspect-Oriented Software Development, 3, Fortaleza.

Schwarz, D. (2004) “Peeking inside the box: attribute-oriented programming with Java 1.5”, http://missingmanuals.com/pub/a/onjava/2004/06/30/insidebox1.html.

Open Document