SugarLoafPLoP 2004 Accepted Papers (Abstracts)
Download the Accepted Papers
|
Writers' Workshop |
||||
| # | Author |
Title |
Language |
Abstract |
| 1 |
Mohamed E. Fayad, Haitham S. Hamza |
The Trust Analysis Pattern | English | In
this paper, we propose the Trust stable analysis pattern. The objective
of this pattern is to provide a conceptual model that embodies the main
aspects of the trust concept. The level of abstraction of the Trust
pattern makes the pattern applicable for wide spectrum of applications. |
| 2 |
Haitham S. Hamza, Mohamed E. Fayad, |
An Architectural Pattern for Developing Renting Systems | English | Despite
the fact that renting is, to some extend, an application dependent activity,
it is still possible to extract many fundamental common aspects that
if captured in an appropriate conceptual level, a stable renting model
can be developed and reused to build a wide range of renting systems.
In this paper we propose an architectural pattern that model the renting
problem. This pattern aims to provide a model that captures the core
aspects of the renting problem independent of any specific application
or domain. We demonstrate, through illustrated examples, the usage of
the proposed pattern under different renting scenarios in different
applications. |
| 3 |
Mohamed E. Fayad, Haitham S. Hamza, Valerie Stanton |
The Searching Analysis Pattern | English | This
paper introduces the Searching analysis pattern. The pattern presents
the core concept of the searching independent of a specific application.
This pattern has been developed based on the concepts of Stable Analysis
Patterns we introduced in [1, 2,3]. Stable analysis patterns are built
based on the concepts of software stability introduced in [5, 6, and
7]. The paper provides detailed documentation of the proposed Searching
pattern. |
| 4 |
Marcos Cordeiro d'Ornellas | A Sequential Pattern | English | This
paper disuss discuss the general class of algorithms that can be implemented
using sequential constructions. Common characteristics of these algorithms
are also described in order to provide a generic representation for
sequential algorithms. In addition it describes the sequential pattern
in terms of pixel scans and its relationship within mathematical morphology.
Such a pattern is essential for the development of morphological operators
and operations. Examples of pattern usage are the distance tranform,
reconstruction, extrema detection, minima imposition and so on. |
| 5 |
Vinko Vrsalovic, Yadran Eterovic | Towards a pattern language on the Geographic Information Systems (GIS) domain | English | We
document three patterns on the GIS domain. We also show the relationships
we have found among these patterns and a collection of already documented
(but isolated) patterns, with the intent to establish a foundation for
a pattern language on this domain. |
| 6 |
Maria Lencastre, Felix C. G. Santos | Computational Phenomenon Pattern | English | This
paper presents a pattern called Computational Phenomena Pattern, whose
objective is to standardize the complex model of coupled computational
physical phenomena and to make intuitive and easier the representation
of data sharing and dependence between different phenomena. |
| 7 |
Eduardo Almeida, Alexandre Alvaro, Daniel Lucrédio, Vinicius Garcia, Eduardo Piveta |
Student’s
PLoP Guide: A Pattern Family to Guide Computer |
English | This
paper presents a pattern family to help inexperienced students in participating
in PLoP conferences. The patterns describe different situations that
may occur during a conference, and how the student must act in these
cases. Finally, the paper present how these patterns relate to each
other, forming a complete PLoP guide. |
| 8 |
Vinicius Garcia, Daniel Lucrédio, Antonio Francisco do Prado, Eduardo Piveta, Luiz Zancanella, Alexandre Alvaro, Eduardo de Almeida | Manipulating Crosscutting Concerns | English | The
proposed patterns presented in this paper describe how to identify,
during a reengineering process, the main crosscutting concerns presented
in the literature in order to isolate them using the Aspect-Oriented
Programming (AOP). |
| 9 |
Alessandro Garcia, Uirá Kulesza, Cláudio Sant’Anna, Carlos Lucena | The Mobility Aspect Pattern | English | Software
engineers of multi-agent systems (MASs) are faced with the design and
implementation of the mobility concern in addition to the agents’ basic
functionalities and other agent-related concerns. As the agents’ complexity
increases, the mobility concern cannot be modularized based only on
object-oriented abstractions. MAS developers however have relied mostly
on object-oriented design techniques and on object-oriented programming
languages, such as Java. As the agent complexity increases, the mobility
concern tends to spread across several system classes at the design
and implementation levels. It often leads to a poor separation of agent
concerns in the software system, and in turn to the production of MASs
that are difficult to maintain and reuse. This paper presents the Mobility
Aspect pattern, which documents an aspect-oriented solution for the
modularization of the mobility concern. The use of this pattern minimizes
code replication as well as increase the reusability and maintainability
of the mobility concern and other agent concerns. |
| 10 |
José A. R. P. Sardinha, Alessandro Garcia, Carlos J. P. Lucena, Ruy L. Milidiú | The Agent Learning Pattern | English | The
development of large scale multi-agent systems (MASs) requires the introduction
and structuring of the learning property throughout the design and implementation
stages. In open systems and complex environments, agents have to reason
and adapt through machine learning techniques in order to perform their
goals. In this paper, we present the Learning design pattern that guides
the organization of the learning property to object oriented design.
The pattern is used in the construction of an open MAS for the Trading
Agent Competition environment in order to illustrate the application
of the presented pattern. |
| 11 |
M. E. Fayad, Rohini Pradeep | A Pattern Language for Performance Evaluation | English | This
paper deals with the pattern language for Performance Evaluation, which
is a cognitive process involved in producing and understanding different
concepts of patterns in this discipline. It explains how this language
can be used to obtain the relationship between certain stable patterns,
which exhibit a rich set of behaviors capable of handling features that
are reusable, adaptable, and maintainable with minimal modifications.
The goal of this paper is to overcome the issues with “forgettable”
systems. The proposed solution is not intended to replace existing systems,
rather, the effort is to define and provide a new methodology for designing
such systems with a rich set of patterns for performance evaluation
that can be used efficiently. |
| 12 |
M. E. Fayad, Huáscar A. Sánchez, and Gaston R. Cangiano | Stable Automation Pattern | English |
One of the biggest challenges in the field of Software Engineering is
that of the automation of complex systems. At the core of this challenge
are the questions of “what”, “where” and “how much” to automate in any
given system. The concept of automation is pervasive across all domains.
Therefore this paper will attempt to produce an analysis pattern that
will be applicable wherever automation is present in a system. To do
so, we will build on the “Software Stability Model” (SSM) [1,9] of analysis
to identify and isolate the core knowledge of the “automation” concept.
A set of scenarios will be presented where our pattern is put into action,
showing real-world applicability and reusability. |
| 13 |
Dario André Louzado | Controle a Complexidade do Código | Portuguese | Software
development teams face challenges involving schedule, demands imposed
by non-functional requirements, architectural styles and constraints
as well as good coding practices. To ensure software delivery on time,
on budget and under quality specifications, a series of initiatives
are taken by the development team. In particular, to control code complexity
means to collect systematic feedback about program structure, internal
organization and source code quality attributes. This feedback process
produces inputs to the refactoring plan in the short and long term,
allowing the atenuation of software ownership cost during its whole
life cycle. There is also a strong interaction among this pattern and
others from James O.Coplien Organization Patterns. |
| 14 |
Anderson Pazin, Rosângela Penteado e Paulo Masiero | SiGCli: Uma Linguagem de Padrões para Gerenciamento de Clínicas de Reabilitação | Portuguese | A
pattern language for the domain of Management Systems of rehabilitation
Clinics (SiGCli, Sistema de Gerenciamento de Clínicas, in portuguese)
is presented. It was elaborated from a reverse engineering process of
legacies systems, with the study of the domain, that can be considered
a sub-domain of business resources management, and the definition of
the patterns for this language. The use of the SiGCli helps the systems
development to follow and refer to the evolution of a person who looks
to one specific type of rehabilitation treatment or to improve its physical
conditions. The pattern language is applied in one of the legacies systems
that had conducted the study of the domain and its classes diagram is
presented. |
| 15 |
Gabriela T. De Souza, Carlo Giovano S. Pires | PATI-MVC: Uma Família de Padrões para Sistemas de Informação baseada no padrão MVC | Portuguese | Information systems are based on registering, searching, and maintaining data. Usually, they have simple functionality, but these functions are repeated several times within an information system. The aim of PATI-MVC patterns is to present design solutions for recurrent problems in searching and data maintainance in information systems. |
| 16 |
Jonivan Lisbôa, Orlando Loques | Um Padrão Arquitetural para Gerenciamento de Qualidade de Serviço em Sistemas Distribuídos | Portuguese | Some kind of component-based systems often have strict quality-of-service (QoS) requirements and are deployed in environments in which resource constraints are dinamic and impredictable. Such systems must adapt themselves to changes in quality of offered service, needing some kind of mechanism to describe required quality levels. Many approaches give a similar treatment to the problem, offering architectural solutions composed by elements with suchlike functions. Such fact did make possible to propose in this work an architectural pattern for quality management in systems with differentiated quality of service requirements. |
|
17 |
Leandro Sales Holanda Pinto, Roberto R. Costa Lima Jr e Rossana Andrade | Back Navigator | Portuguese | WEB
applications needs a way to go back to the last page. Sometimes, that
task isn´t so easy for developers. The main reason is that pages can
be reached from different ways, and the easiest solution (use the back
button provided by the browser, for example) cannot be applied in the
most of cases. This pattern brings a solution for the problem described
above using the idea that instead of trying to discover who calls the
current page, the current page will inform the next page where it will
go back when required. |
| 18 |
Ismênia Ribeiro de Oliveira, Leandro Balby, Rosario Girardi | Padrões baseados em agentes para a Modelagem de Usuários | Portuguese | User
models are of great importance for the development of adaptive systems.
These models capture relevant user features that are used by these systems
to satisfy, in a personalized way, the great diversity of users. The
agent technology has been used with success in the development of adaptive
systems because of the software agent features (autonomy, sociability
and learning ability). To promote reuse during the development of agent-based
adaptive systems is necessary the creation of patterns that capture
common practices about the process of construction of such systems.
This paper introduces an agent-oriented design pattern for user modeling. |
|
Special Session: Software Pattern Applications (SPA) |
||||
| # | Author |
Title |
Language |
Abstract |
|
1 |
Ismênia Ribeiro de Oliveira, Rafael de Sousa Neto, Rosario Girardi | Uma Ontologia para a Especificação de Sistemas de Padrões | Portuguese | With
the growth of the available number of pattern systems and their reuse
on the development of applications, there is a need of formalisms to
represent pattern systems to facilitate the description, reuse and location
of patterns in these systems. An approach to standardize and to facilitate
the writing and reuse of patterns systems is the use of ontologies.
This paper introduces the ONTO-PATTERN, an ontology for the specification
of pattern systems. |
| 2 |
Ricardo Argenton Ramos, Valter Vieira de Camargo, Rosângela Penteado, Paulo Cesar Masiero | Reuso da Implementação Orientada a Aspectos do Padrão de Projeto Camada de Persistência | Portuguese | This
paper relates a reuse experience of the aspect-oriented implementation
of the Persistence Layer pattern in an inventory system that was used
as case study. This implementation was developed in the AspectJ language
in a previous work, aiming to separate the functional code from persistency
code. The case study system is implemented in the object-oriented paradigm,
in Java, and uses the Persistence Layer pattern. To reuse the aspect-oriented
implementation was necessary to identify and to remove the objectoriented
code of the pattern, what was done by means of regular expressions.
It was noticed that the aspect-oriented reuse process is simpler than
the object-oriented and benefits are perceived in the target system. |
| 3 |
Thiago Santos, Rodrigo Ramos e Börje Karlsson | Usando Padrões para Reestruturação de uma Aplicação Legada | Portuguese | This
paper describes the experience of restructuring a real tool for cell
phone testing. New system requirements, have lead us to the problem
of restructuring the application in order to fulfill the required changes.
This effort involved the use of coding, design and architectural patterns.
The focus of this paper is in the application of design patterns to
remodel the legacy application permitting easy software maintainance
and a high degree of reusability, minimizing future tool developers
efforts. |