2008
Authors
Ferreira, HS; Correia, FF; Welicki, L;
Publication
PLoP08 - 15th Conference on Pattern Languages of Programs, Proceedings
Abstract
An Adaptive Object-Model (AOM) is an architectural pattern based upon a dynamic meta-modeling technique where the object model of the system is explicitly defined as data to be interpreted at run-time. The object model encompasses the full specification of domain objects, states, events, conditions, constraints and business rules. Several design patterns, that have before been documented, describe a set of good-practices within this domain. This paper approaches data and metadata evolution issues in the context of AOMs, by describing three additional patterns - History of Operations, System Memento and Migration. They establish ways to track, version, and evolve information, at the several abstraction levels that may exist in an AOM. © 2008 is held by the author(s).
2009
Authors
Correia, FF; Aguiar, A;
Publication
2009 FOURTH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING ADVANCES (ICSEA 2009)
Abstract
Knowledge plays a key role in software development, and the effectiveness of how it is captured into artifacts, and acquired by other team members, is of crucial importance to a project's success. The life-cycle of knowledge in software development is derived from the adopted artifacts, practices and tools. These axes are here reviewed from a knowledge capture and acquisition perspective, and several open research issues are identified. The present work is being carried out in the context of the author's doctoral research. The research objectives are derived from the presented open issues, and a research strategy is outlined. Some preliminary results are also presented.
2009
Authors
Correia, FilipeFigueiredo; Ferreira, HugoSereno; Flores, Nuno; Aguiar, Ademar;
Publication
Proceedings of the 2009 International Symposium on Wikis, 2009, Orlando, Florida, USA, October 25-27, 2009
Abstract
Software development is a knowledge-intensive activity and frequently implies a progressive crystallization of knowledge, towards programming language statements. Although wikis have proved very effective, for both collaborative authoring and knowledge management, it would be useful for knowledge acquisition to better support team awareness and the recognition of knowledge structures, their relations, and their incremental evolution. This paper presents Weaki, a wiki prototype especially designed to support incremental formalization of structured contents that uses weakly-typed pages and type evolution. Weaki was applied in academic settings, by students of Software Engineering Labs. Copyright 2009 ACM.
2011
Authors
Matsumoto, PatriciaMegumi; Correia, FilipeFigueiredo; Yoder, JosephWilliam; Guerra, Eduardo; Ferreira, HugoSereno; Aguiar, Ademar;
Publication
Proceedings of the 18th Conference on Pattern Languages of Programs, PLoP 2011, Portland, Oregon, USA, October 21-23, 2011
Abstract
An Adaptive Object Model (AOM) is a common architectural style for systems in which classes, attributes, relationships and behaviors of applications are represented as metadata, allowing them to be changed at runtime not only by programmers, but also by end users. Frequently, behavior is added to AOM systems by increasingly adding expressiveness to the model. However, this approach can result in a full blown programming language, which is not desirable. This pattern describes a solution for adding behavior to AOM systems by using metadata to identify points in the application where behavior can be dynamically added. This solution may limit the expressive power of the model, but can also simplify it, since points of extension are well defined in the system. © Copyright 2011 Carnegie Mellon University.
2010
Authors
Ferreira, HugoSereno; Correia, FilipeFigueiredo; Yoder, JosephW.; Aguiar, Ademar;
Publication
17th Conference on Pattern Languages of Programs, PLoP '10, Reno/Tahoe, NV, USA, October 17-21, 2010
Abstract
Meta-architectures, also known as reective architectures, are a specific type of software architectures that are able to inspect their own structure and behavior, and dynamically adapt at runtime, thus responding to new user requirements or changes in their environment. In object-oriented programming, these architectures rely on a small set of core concepts that provide them the means to describe themselves, thus becoming"closed". These three core patterns can be found in almost every object-oriented meta-architecture: Everything is a Thing, Closing the Roof, and Bootstrapping. By delving into the inherent problems they try to solve, and the forces that shape those problems, a developer will improve his ability to adequately make architectural and design choices to build and evolve systems with high-adaptability needs.
2011
Authors
Correia, FilipeFigueiredo; Aguiar, Ademar;
Publication
Proceedings of the 18th Conference on Pattern Languages of Programs, PLoP 2011, Portland, Oregon, USA, October 21-23, 2011
Abstract
Providing efficient access to information can be approached in different ways, but ultimately implies the creation of an INDEX, represented with an indexing language, like a TAXONOMY, a THESAURUS, an ONTOLOGY or a FOLKSONOMY. Each of these languages strikes a different balance between the effort to create and maintain the index, the effectiveness of knowledge capture, the guidance that readers can get, and how efficiently they can get it. Furthermore, in a world in which more and more information is available, two issues gain particular importance in the creation of an index: how can it be done collaborative, and how can the index abstract and express information more richly. © Copyright 2011 Carnegie Mellon University.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.