Clovis Torres Fernandes
Instituto Tecnológico de Aeronáutica
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Clovis Torres Fernandes.
international conference on software engineering advances | 2007
Eduardo Martins Guerra; Clovis Torres Fernandes
Test driven development is a technique in which the refactoring occurs all the time, in the application code and in the test code. But there is not a method to guarantee that the test code behavior after one refactoring remains unchanged. This paper presents a representation based on the JUnit unit test structure, as well as a classification of test code refactorings that may ease the analysis to verify if the test code refactoring was carried out safely, i.e., if the observable behavior of the refactored test code has been kept unchanged. The use of this proposed technique may safely improve and speed up the production of test code refactorings.
Proceedings of the 16th Conference on Pattern Languages of Programs | 2009
Eduardo Martins Guerra; Jerffeson Teixeira de Souza; Clovis Torres Fernandes
Metadata-based frameworks are those that process their logic based on the metadata of the classes whose instances they are working with. Many recent frameworks use this to get a higher reuse level and to be more suitably adapted to the application needs. However, there is not yet a complete best practices documentation or reference architecture for the development of frameworks by using the metadata approach. As a result, this paper presents a pattern language that addresses preliminarily the internal structure of metadata-based frameworks, helping in the understanding and development of such kind of framework.
Proceedings of the 17th Conference on Pattern Languages of Programs | 2010
Eduardo Martins Guerra; Clovis Torres Fernandes
The usage of metadata-based frameworks is becoming popular for some kinds of software, such as Web and enterprise applications. However, it is not clear for which kinds of problems this approach can be applied. This paper presents a study that investigated the metadata usage in existing frameworks and documented recurrent solutions as architectural patterns. As a result, software architects might use such approaches for similar problems, being aware of their benefits and drawbacks in each scenario.
Journal of Systems and Software | 2013
Eduardo Martins Guerra; Felipe Alves; Uirá Kulesza; Clovis Torres Fernandes
Metadata-based frameworks enable behavior adaptation through the configuration of custom metadata in application classes. Most of the current frameworks used in the industry for building enterprise applications adopt this approach. However, there is a lack of proven techniques for building such kind of framework, allowing for a better organization of its internal structure. In this paper we propose a pattern language and a reference architecture for better organizing the internal structure of metadata-based frameworks, which were defined as a result of a pattern mining process applied to a set of existing open source frameworks. To evaluate the resulting structure generated by the reference architecture application, a case study examined three frameworks developed according to the proposed reference architecture, each one referring to a distinct application domain. The assessment was conducted by using a metrics suite, metrics thresholds derived from a large set of open source metadata-based frameworks, a process for automatic detection of design disharmonies and manual source code analysis. As a result of this study, framework developers can understand and use the proposed reference architecture to develop new frameworks and refactor existing ones. The assessment revealed that the organization provided by the reference architecture is suitable for metadata-based frameworks, helping in the division of responsibility and functionality among their classes.
international conference on computational science and its applications | 2013
Eduardo Martins Guerra; Clovis Torres Fernandes
The usage of metadata-based frameworks is becoming popular for some kinds of software, such as web and enterprise applications. They use domain-specific metadata, usually defined as annotations or in XML documents, to adapt its behavior to each application class. Despite of their increasingly usage, there are not a study that evaluated the consequences of their usage to the application. The present work presents the result of an experiment that aimed to compare the development of similar applications created: (a) without frameworks; (b) with a traditional framework; (c) with a metadata-based framework. As a result, it uses metrics and a qualitative evaluation to assess the benefits and drawbacks in the use of this kind of framework.
Transactions on Pattern Languages of Programming | 2013
Eduardo Martins Guerra; Jerffeson Teixeira de Souza; Clovis Torres Fernandes
Metadata-based frameworks are those that process their logic based on the metadata of classes whose instances they are working with. Many recent frameworks use this approach to get a higher reuse level and to be more suitably adapted to the application needs. However, there is not yet a complete best practices documentation or reference architecture for the development of metadata-based frameworks. This paper presents a pattern language that focuses on recurring solutions used in the internal structure of metadata-based frameworks addressing the main problems faced in this kind of development. Based on the pattern language, a reference architecture which identifies a base structure and the main hotspots for metadata-based frameworks is defined.
Proceedings of the 8th Latin American Conference on Pattern Languages of Programs | 2010
Eduardo Martins Guerra; Menanes Cardoso; Jefferson O. Silva; Clovis Torres Fernandes
Code annotations are a new feature introduced in Java 5.0 and ever since have begun to be widely adopted in the development of frameworks and applications. In order to provide better code structure and reduce the number of necessary configurations, the frameworks developed with code annotations used common practices in the annotation definitions. This paper presents a catalog that captures recurrent annotation solutions and documents them as idioms. As a consequence, the idioms can help the design of annotation schemas or be used in the optimization of existing ones.
Proceedings of the Workshop on AOP and Meta-Data for Software Evolution | 2009
José Roberto C. Perillo; Eduardo Martins Guerra; Clovis Torres Fernandes
Software developers currently understand that the real complexity in most applications lies in the problem domain the software is dealing with. The approach known as domain-driven design follows the premises that, for most software projects, the primary focus should be on the domain and domain logic, and that complex domain designs should be based on a model. For this type of project, the concept of domain annotations, which is a way to define annotations specifically for domain objects, can be applied. Currently, most part of metadata-based components still does not use this concept. This paper proposes two techniques for enabling the use of domain annotations in new frameworks and existing ones, and introduces the Daileon framework, which enables such development in Java-based applications.
international conference on computational science and its applications | 2013
Eduardo Martins Guerra; Eduardo Buarque; Clovis Torres Fernandes
Frameworks aims to provide a reusable functionality and structure to be used in distinct applications. Aspect-oriented frameworks address crosscutting concerns and provide ways to attach itself in the application in a transparent way. However, using aspects the variations in the behavior can only be customized by aspect inheritance, which can increase exponentially the number of aspects and difficult the pointcut management. This paper proposes a flexible model which combines techniques for the insertion of crosscutting functionality with the structure of a metadata-based framework. This model allows (a) the maintenance of the class obliviousness, (b) the independence of the crosscutting technology and (c) the framework customization by composition. Additionally, the paper presents SystemGlue, which is a crosscutting framework that implements the proposed concepts. A modularity analysis was performed in an application that uses this framework to evaluate if the objectives were achieved.
international conference on computational science and its applications | 2013
Jefferson O. Silva; Eduardo Martins Guerra; Clovis Torres Fernandes
Existing access control frameworks fall short on offering comprehensive and general solutions in application development, often limited to role-based access control policies. This leads developers to craft solutions when it is necessary to implement complex access control policies, causing tangling of business and authorization concerns. In this context, framework extensibility and technology independence are also important to enable its adaptation to a wide range of applications. In order to widen the scope of authorization solutions, this research proposes an architectural model for frameworks, extensible to various access control models. The Esfinge Guardian framework, an implementation of the architectural model, is presented, with usage scenarios and a brief tutorial. Finally, a comparative analysis is presented between Esfinge Guardian and the main authorization framework providers, showing that the Esfinge Guardian is indeed more extensible and decoupled than the compared solutions.