ABSTRACT Informatics Department - PUC-Rio Pontifical Catholic University Rio de Janeiro - Brazil This file contains the technical reports abstract list of the Informatics Department, Pontifical Catholic University of Rio de Janeiro PUC-Rio, Brazil. The presence of => YY_##_author.file format indicates availability of the report in our ftp-site. Please note that all the reports are also available in their print format and can be obtained via the e-mail bellow. If you have any questions, requests or suggestions, please contact: Rosane Castilho bib-di@inf.puc-rio.br Last update: 16/MARCH/2005 ------------------------------------------------------------------- 1993 => 93_01_marques.ps.gz [MCC01/93] MARQUES, M.P.; LANZELOTTE, R.S.G. Banco de dados e hipermidia: construindo um meta-modelo para o projeto Portinari. 105 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Data bases constitutes a natural repository for storing information dealt with by hypermedia applications. Many works have investigated how to design the database model to support an hypermedia application. Another viewpoint consists in starting from an existing database and designing hypermedia front-ends to it. In this paper, we propose an approach to design hypermedia applications using the data stored in an existing database. The approach is based on a meta-model, that integrates the two environments through their respective models, thus enabling the hypermodel evolve with the database. We apply the the proposed approach to the PORTINARI Project, concerning the most famous Brazilian painter. The approach is generic and can be used to build hypermedia interfaces to any existing database. => 93_02_potengy.ps.gz [MCC02/93] POTENGY, A.B.; LUCENA, C.J.; COWAN, D.D. A programming approach for parallel rendering applications. 30 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Solutions to many problems in scientific computing can be expressed as parallel computations that can be implemented on multi- processor systems or networks of powerful workstations. Design and implementation of these parallel programs usually is a complex effort which requires cooperation among the participating tasks in order to ensure correct operation and consistency. This paper introduces the the ADV/ROI design approach that combines Abstract Data Views (ADVs) and Remote Object Invocation (ROI) and applies this approach to the implementation of parallel programs using the principles of object- oriented design. The ADV/ROI approach is applied in two steps. First, a "working" sequential version of a program is implemented and then this program is converted to parallel version using a well-defined procedure involving multiple inheritance. We also demonstrate that consistency of the views of the computation are maintained as the program evolves from its sequential to parallel version. The ADV/ROI aproach is then demonstrated by showing the design and implementation of a parallel volumetric ray tracer. => 93_03_porto.ps.gz [MCC03/93] PORTO, S.C.S.; RIBEIRO, C.C. A tabu-search approach to task scheduling on heterogeneous processors under precedence constraints. 26 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: Parallel programs may be represented as a set of interrelated sequential tasks. When multiprocessors are used to execute such programs, the parallel portion of the application can be speeded up by an appropriate allocation of processors to the task of the application. Given a parallel application defined by a task precedence graph, the goal of task scheduling (or processor assignment) is thus the minimization of the makespan of the application. In a heterogeneous multiprocessor system, task scheduling consists in determining which tasks will be assigned to each processor, as well as the execution order of the task assigned to each processor. In this work, we apply the tabu search metaheuristic to the solution of the task scheduling problem on a heterogeneous multiprocessor environment under precedence constraints. The topology of the Mean Value Analysis solution package for product form queueing networks is used as a framework for performance evaluation. We show that tabu search obtains much better results, i.e. shorter completion times, improving from 20 to 30% the makespan obtained by most appropriate algorithm previously published in the literature. => 93_04_haeberer.ps.gz [MCC04/93] HAEBERER, A.M.; BAUM, G.A.; SCHMIDT, G. Dealing with non-constructive specifications involving quantifiers. 37 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The work presented here has its focus on the formal construction of programs out of non-constructive specifications involving quantifiers. This is accomplished by means of an extended abstract algebra of relations whose expressive power is shown to encompass that of first-order logic. Our extension is the first finitary one that solves the classic issue of lack of expressiveness of abstract relational algebras first stated by Tarski and later formally treated by Maddux, Nemeti, etc. First we compare our extension with classic approaches to expressiveness and our axiomatization with modern approaches to products. Then, we introduce some non-fundamental operations. One of them, the relational implication, is shown to have heavy heuristic significance both in the statement of Galois connections for expressing relational counterparts for universally quantified sentences and for dealing with them. In the last sections we present two smooth program derivations based on the theoretical framework introduced previously. => 93_05_duran.ps.gz [MCC05/93] DURAN, J.E.; BAUM, G.A. Construccion formal de programas a partir de especificaciones en un calculo de relaciones binarias extendido. 94 p. Spa.i E-mail: bib-di@inf.puc-rio.br Abstract: We study the formal program construction from specifications in a calculus that extends Tarski's calculus of binary relations. This paper relies on a threefold base, i.e., the language of Structured Relational Algebras, some properties of these algebras and the Calculus of Binary Relations of Tarski. Some new constructions for specifying problems and program derivations are defined. By extending Tarski's calculus with an aditional set of axioms, here presented, we obtain an abstract representable algebra. After doing a number of derivations, we find new properties valid within the Structured Algebras. The most relevant of them are choosed and proved using the axioms. Finally, we undertake the problem of proving properties for relations. The proof of invariants is analized and a proof strategy is given. => 93_06_carvalho.ps.gz [MCC06/93] CARVALHO, S.E.R. The object and event oriented language TOOL. 18 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: TOOL is a programming system designed to simplify the task of building application programs running on graphical user interface plataforms. The current version runs above Microsoft Windows, version 3.1. This report describes the programming language component of the system. This is an object and event oriented language, designed to be easily understood by conventional language programmers. In this language both synchronous and the asynchronous behavior of objects are declared in classes. => 93_07_carvalho.ps.gz [MCC07/93] CARVALHO, S.E.R. On the reuse of applications as components. 17 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Object orientation seems to provide a welcoming framework for software reuse. This software is typically in the form of individual classes, and the reuse is typically obtained through composition and inheritance. In this paper we address the reuse of stand-alone applications, without modifications, as components in other applications. We do this in the TOOL programming system, taking advantage of its handling of asynchronous messages at the class level. => 93_08_carvalho.ps.gz [MCC08/93] CARVALHO, S.E.R. Sobre o comportamento de objetos. 14 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The procedural behavior, the only one usually available in object oriented languages, is necessary in the construction of programs. However, other well-known behavioral semantics in the conventional programming world have no counterparts in object orientation. In this paper we propose the inclusion, in classes, of operations to handle asynchronous messages, exceptions, and the production of sequences of values for loop control objects, offering examples of their uses. => 93_09_jaumard.ps.gz [MCC09/93] JAUMARD, B.; CARNEIRO, C.C. Implication graph and quadratic 0-1 optimization. 17 p. Eng. E-mail: celso@nf.puc-rio.br Abstract: A new approach for optimization of a quadratic function in 0-1 variables, based on the solution of a sequence of nested set covering problems, is presented. Each constraint of the set covering problems is associated with a circuit in the implication graph derived from the span of the quadratic function. => 93_10_carneiro.ps.gz [MCC10/93] CARNEIRO, L.M.F.; COWAN, D.D.; LUCENA, C.J.P. The semantics of nesting object-oriented design. 20 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: It has been observed that design of complex objects such as software requires both decomposition by form (atomic objects) and decomposition by function (nesting) in order to reduce the design to a set of manageable components. However, the object-oriented design paradigm mostly supports decomposition by form. This paper uses a simple example to motivate the need for nesting (decomposition by function) and illustrates how nesting might be incorporated into a design language. We then demonstrate how the introduction of nesting into software specification and design significantly increases reusability. ADV charts, a new visual formalism, and VDM are used to provide a semantics for nesting. => 93_11_guedes.pdf [MCC11/93] GUEDES, L.C.; STAA, A.v. Um processo de re-engenharia economico e eficaz. 17 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this paper we propose a re-engineering process. Using this process, a source program is reestructured in order to reduce maintenance costs and, simultaneously, increase its quality. Several computer aided activities are performed during this process. Roughly speaking, this process uses syntax directed reverse engineering to transport the original source code to a CASE repository. It is a basic requirement that the CASE tool be capable of generating (linearize) source code from the content of the repository. Once disponible in the repository, the CASE tool is used to re-engineer the program. The process may be adapted to several different source languages, by simply defining the grammar and lexical analysers of these languages. => 93_12_duarte.ps.gz [MCC12/93] DUARTE, C.H.C.; HAEUSLER, E.H. Tecnicas formais e informais: um estudo sobre integracao usando "statecharts". 17 p. Port. E-mail: hermann@inf.puc-rio.br Abstract: Large effort has been done to find techniques which turn software development tractable. Statechart is a visual formalism that has been widely used, intending to eliminate the problems in this activity. This paper propose a different approach to solve part of these problems, by integrating this formal technique to other informal one. Either, formal rationale about the integration is presented, showing that an integration method can be established, adopting the same semantic model to assign meaning to the specification languages used. => 93_13_leite.ps.gz [MCC13/93] LEITE, J.C.S.P. Eliciting requirements using a natural language based approach: the case of the meeting scheduler problem. 15 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: Requirements elicitation is a process in which the software engineer works toward understanding and discovering what is expected from a planned software system. Although it is common belief that it is a hard task, several researchers are attacking the problem using different frameworks. One of these frameworks is based on the use of natural language. One strong reason for natural language based framework is to avoid the introduction of artificial languages at the beggining of the software development process. We believe that, although using this framework, it is possible to achieve more precision. Our group has been investigating one approach, called the Language Extended Lexicon (LEL), that fits in such framework. We have used the LEL mainly for eliciting application vocabulary directly from actors in an application universe of discourse. In this study we report in a variation of our approach. We show how the LEL can help the elicitation of requirements when one is departing from a written document. The approach is supported by a hypertext system specially designed for the LEL. => 93_14_sanchez.ps.gz [MCC14/93] SANCHEZ, M.L.D.; MAFFEO, B. Ferramentas e tecnicas para a modelagem da essencia de sistemas de tempo-real para controle e monitoramento de processos. 25 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work presents a structure for the conceptual modelling of the real-time features in process controling systems. It uses tools and techniques of the Structured Methods area and illustrates the modelling of the essence of a system for controlling and monitoring, including exception handling (faults in the external environment), a litography by electron beam process. => 93_15_garcia.ps.gz [MCC15/93] GARCIA, A.C.B. Aquisicao e recuperacao de intensionalidade atraves de documentos ativos. 12 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: A new approach to design documentation is presented for increasing the quality of documents without increasing the designer s overhead in creating it. The central idea is to create an initial design model able to generate and explain standard design decisions. Instead of recording their decisions, designers adjust the initial design model. The result is no longer a static record of the design, but an active document containing a design model able to generate explanations for a design. We have implemented a software prototype for the active documents approach in the domain of preliminary design of Heating, Ventilation and Air Conditioning Systems (HVAC). The prototype test results indicate that the approach is feasible. The results also indicate that active documents can be used beyound documentation as a tool for studying design process. => 93_16_soares.ps.gz [MCC16/93] SOARES, L.F.G.; CASANOVA, M.A.; RODRIGUEZ, N.L.R. Um modelo conceitual hipermidia com nos de composicao e controle de versoes. 20 p. Port. E-mail: lfgs@inf.puc-rio.br Abstract: This paper describes a model for hypermedia documents which includes facilities for structured organization of nodes and for version control. This model is currently being used as a basis in the implementation of a development tool for local and distributed hypermedia applications. The layered architecture of this tool grants the user access to distinct levels of abstaction; it also allows the system to maintain compatibility with the MHEG proposal for hypermedia object interchange. => 93_17_martins.ps.gz [MCC17/93] MARTINS, I.H. Uma proposta para tratamento de excecoes em uma linguagem orientada a objeto. 29 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This article discusses a proposal and specification for Exception Handling (EH) in object oriented languages. The idea is to adapt conventional mechanisms of EH to the basic principles of object orientation. The proposal has two main goals. One of them is to respect the philosophy of classes and methods so that the EH resource can be easily absorbed by the user. Another goal is to provide flexibility in what refers to the scope of the handler (generic or specific), to the level of coupling between handler and code (instructions or methods), and to the moment of definition of the handler (in modeling time of the object or in programming time). => 93_18_carvalho.ps.gz [MCC18/93] CARVALHO, S.E.R. Asynchronous behavior in the TOOL programming system. 32 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: It is expected that a large portion of software systems to be constructed in this decade will involve object orientation, message passing and graphical user interfaces. In this paper we present an object and event driven programming system, TOOL, which takes full advantage of object orientation, by considering the handling of asynchronous messages as part of object bahavior. In this way low-level and error prone concerns with message queues and centralized handling routines are eliminated. Moreover, we can achieve full decoupling between interface and implementation in a GUI application, and reuse stand-alone applications as components in other applications. => 93_19_leite.ps.gz [MCC19/93] LEITE, J.C.S.P. Working results in re-engineering. 16 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: We view software re-engineering as a new approach to software maintenance. Instead of performing maintenance at the source code of systems, we work on high level abstractions. From these abstractions we proceede in a forward manner reusing the available implementations, when it is the case. As such, we view re-engineering as centered on design recovery. We have been working on methods for re-engineering and applying them to real cases. Our studies are centered on the idea of using JSD as a way of casting the recovered design. We worked with two small systems and a complex one. Our objective here is to highlight our approach, report on what has been done and point out what was learned. => 93_20_garcia.ps.gz [MCC20/93] GARCIA, A.C.B.; STEFIK, M.J.; HOWARD,H.C. Supporting design collaboration through active documents. 19 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Design is a cooperative activity that requires the participants to negotiate over design specification. Negotiation requires understanding of the decisions made by each participant. Static design documents unsuccessfully play the role of communicating rationale among design participants. In this paper, we present a new approach to documentation - active design documents (ADD). Active documents allow designers to communicate their design intent to other design participants, supporting negotiation on design requirements and cooperation during design. We describe the approach and present an implemented architecture for building active documents. We tested the architecture for the realistic domain of preliminary design of Heating, Ventilation and Air Conditioning Systems. => 93_21_hertz.ps.gz [MCC21/93] HERTZ, A.; JAUMARD, B.; RIBEIRO, C.C.; FORMOSINHO FILHO, W.P. A multi- criteria tabu search approach to cell formation problems in group technology with multiple objectives. 23 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: Group technology techniques are now widely used in many manufacturing systems. Several algorithms have been proposed for the optimal design of efficient manufacturing cells. The cell formation problem must take into account several objectives: the number of bottleneck operations, the number of bottleneck machines and/or parts, the intercell flow, the intracell workload balancing, the subcontracting costs, the machine duplication costs, and the workload of the busiest machine or cell, among others. In this paper, we propose a multi-criteria methodology for solving the cell formation problem with multiple objectives. This approach is based on the use of the tabu search heuristic for solving a sequence of single-objective, multi-constrained subproblems, in which each objective is taken and optimized in turn, following their order of relative importance. The subproblems are tackled by a strategic oscillation strategy. Computational results concerning an application to a bi-criteria problem are reported for instances with up to 100 machines and 1000 parts. => 93_22_souza.ps.gz [MCC22/93] SOUZA, C.S.S.; DIAS, M.C.P.; GARCIA, L.S.; BASILIO, M.P. Semantica lexical em linguagens pseudo-naturais de interface. 18 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: This paper proposes an alternative to represent and process lexical semantic information of utterances in pseudo-natural language, occurring in dialogues between users and knowledge-based systems. The proposal is presented within the framework of Project LINX, where the formulation of users utterance may be supported by menu selection, and system reasoning is supported by a Natural Deduction Theorem Prover acting upon a logic knowledge base. The theoretical approach to lexical semantics, applying to both interpretation and generation of pseudo- natural language utterances is that of Jackendoff's Conceptual Structures. It offers important computational advantages, which are discussed in terms of the distribution between linguistic processing and logic proof, of the specificity of the notion of semantics in the LINX environment, and the types of methods that can be derived for the construction of both the knowledge base and the interface vocabulary. => 93_23_souza.ps.gz [MCC23/93] SOUZA, C.S.; CUNHA, M.O. Animacao de imagens fractais e representacao de processos em linguagens visuais. 15 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: The expression Visual Languages has been used in a variety of senses. In this paper we explore the possibilities of visualy representing computer processes at the user interface level by means of animated fractal images. Although the selected images are not iconic (i.e. they do not directly evoke the meaning of processes they represent), important abstractions are shown to be systematically related to perceptual changes in form. We discuss the implications of such abstractions for Visual Languages, both in terms of human-computer interactive codes and of declarative representation languages supporting animation effects. => 93_24_souza.ps.gz [MCC24/93] SOUZA, C.S. General help systems for network resource discovery. 12 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Wide area computer networks offer users a large volume and variety of resources that can help them to solve many kinds of daily problems in their work environment. However, the existence, let alone the contribution, of such resources is generally ignored by networkers. This work discusses usability issues as perceived in the INTERNET, and presents a research project underway, relative to General Help Systems (GHSs) - an intended means to narrow the distance between users needs and network resources. => 93_25_silva.ps.gz [MCC25/93] SILVA, M.T.M.P.; FUKS, H. Um esboco de calculo de influencia de dialogos na escolha entre propostas de acao. 40 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: This work outlines an influence calculus for argumentative dialogs for choosing a course of action in computer supported cooperative work. Each possible action is examined when one of the parts questions it. This triggers an argumentative dialog. Commitments to the issued arguments and their backings together with their relative weights are established as the dialog unfolds. These weights should describe the influence that each locution has in the evaluation of the course of action. The aim of such representation is to help the parts to clarify their points of view and to support the evaluation of the best course of action. => 93_26_staa.pdf [MCC26/93] STAA, A.v. Criterios para a avaliacao da coesao. 17 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: A set of quality control criteria is presented. These criteria evaluate the quality factor cohesion. The criteria may be used whenever representations having several levels of abstraction are built. The criteria may be used with respect to several representation languages, not just with respect to structured design. When working with elements at different levels of abstraction a solution of each abstract element must be provided. This solution is defined at a lower level of abstraction. Furthemore, this solution must also satisty several relations with respect to the abstract element it intends to solve. The solution must also satisfy several structural properties. The objective of the quality control criteria is to provide a means to objectively decide wether a given solution is good or not. => 93_27_staa.pdf [MCC27/93] STAA, A.v. Projeto TOTEM: meta-ambiente de desenvolvimento de software definicao do projeto. 36 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: TOTEM's main objective is to contribute to the enhancement of the current practice of software engineering. In order to achieve this goal, a software engineering meta-environment will be built. With this meta-environment specific computer aided software engineering environment instances can be generated. Each of these instances provides support to a selected set of development, maintenance and/or management activities. The collection of instances supports the cooperative work of development teams. Each instance may be adapted to the specific needs of the object system to be developed and to the needs of the people using the set of instances. In adition to instantiating production environments, the TOTEM meta-environment will also provide support to experimental research in Software Engineering. This document defines the requirements of the TOTEM meta-environment. It defines also the basic architecture of the meta-environment. => 93_28_staa.pdf [MCC28/93] STAA, A.v. Uso de instrumentacao para a construcao de programas confiaveis. 11 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this paper we discuss the implementation of reliable programs using "almost" reliable components. The implementation method contributes alsoto the productivity increase when compared to traditional implementation based on testing and debugging. The implementation method is based on (i) the use of design and programming tools aiming at the construction of "almost" correct programs, (ii) the use of robust and auto-verifiable data structures, (iii) the inclusion of executable assertions into the programs, (iv) the use of co-routines to verify the structural correctness of the data structures during idle cycles. => 93_29_frias.ps.gz [MCC29/93] FRIAS, M.; BAUM, G.; HAEBERER, A.M.; VELOSO, P.A.S. A representation theorem for fork-algebras. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Not available. => 93_30_feijo.ps.gz [MCC30/93] FEIJO, B.; LUCENA, C.J.P.; BENTO, J. A formal approach to design based on cognition. 17 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: Most of the current general design methodologies do not capture the cognitive nature of design. The present paper proposes an approach based on an evolving theory of the design process inspired on a cognitive interpretation of design. This approach provides a pragmatic guideline for developing and evaluating design methodologies used in connection with CAD and CASE systems. Furthermore, it seems that several current design models are interpretations of the proposed theory. => 93_31_souza.ps.gz [MCC31/93] SOUZA, C.S. Testing predictions of semiotic engineering in HCI. 10 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: This paper presents an overview of Semiotic Engineering and, with support of results achieved in a small-scale experiment, proposes a method for testing predictions derived from semiotically-motivated interface design principles. Semiotic Engineering is a theoretic approach we have proposed for the construction of user interface languages, within a perspective about HCI according to which systems are themselves complex messages sent from designers to users. The original semiotic theory from which our approach draws its fundamentals is Umberto Eco's Theory of Sign Production. The long-range goal of Semiotic Engineering is to contribute for a theory of design in HCI. Thus, the fundamental principles we have proposed must be experimentally tested as a means to evaluate the theory. Preliminary test methods and results reported here suggest methodological procedures for experimental studies in Semiotic Engineering. => 93_32_veloso.ps.gz [MCC32/93] VELOSO, P.A.S.; HAEBERER, A M. On fork algebras and program derivation. 35 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Fork algebras provide a useful basis for relational calculi for program derivation; they arise as extensions of relational algebras with a new operator, called fork, which anables the introduction, by definition, of projections. In this paper we examine some fundamental issues concerning fork algebras, presenting the proofs of expressiveness and representability and discuss and illustrate their importance for program derivation. => 93_33_carvalho.ps.gz [MCC33/93] CARVALHO, S.E.R. Specifying object behavior. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The procedural behavior, the only one usually available in object oriented languages, is necessary in the construction of programs. However, other well-known behavioral semantics in the conventional programming world have no counterparts in object orientation. In this paper we propose the inclusion, in classes, of operations to handle asynchronous messages, exceptions, and the production of sequences of values for loop control objects, offering examples of their uses. => 93_34_carvalho.ps.gz [MCC34/93] CARVALHO, S.E.R. Coroutine semantics in the TOOL programming environment. 18 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: In this paper we discuss two situations, in object oriented programming, where the semantics of coroutines is useful in the implementations of loop iterators and of dynamic data structures navigators. In both of these operations the receiving object is a loop control object. Iterators are applied to produce, outside of the loop's environment, the next value for the loop control object; navigators are applied to indicate, outside of the loop environment, the next element in a dynamic data structure. ----------------------------------------------------------------------- ----------------------------------------------------------------------- 1994 => 94_01_veloso.ps.gz [MCC01/94] VELOSO, P.A.S. On fork algebras and reasoning about programs. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Fork algebras provide a useful basis for relational reasoning about programs and specifications. They arise as extensions of relational algebras with a new operator, called fork, which anables the introduction, by definition, of projections. In this paper we examine some fundamental issues concerning fork algebras, presenting the profs of expressiveness and representability and discuss their importance for reasonig about programs. => 94_02_andreatta.ps.gz [MCC02/94] ANDREATTA, A.A.; Ribeiro, C.C. A graph partitioning heuristic for the parallel pseudo-exhaustive logical test of VLSI combinational circuits. 37 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: The logical test of integrated VLSI circuits is one of the main phases of their design and fabrication. The pseudo-exhaustive approach for the logical test of integrated circuits consists in partitioning the original circuit to be tested into non-overlapping subcircuits with a small, bounded number of subcircuits, which are then exhaustively tested in parallel. In this work we present an approximate algorithm for the problem of partitioning integrated combinational circuits, based onthe tabu search metaheuristic. The proposed algorithm presents several original features, such as: the use of a reduced neighborhood, obtained from moves involving only a subset of boundary nodes; complex moves which entail several resulting moves, although the variations in the cost function arevery easily computable; a bi-criteria cost function combining the number of subcircuits and the number of cuts, which simultaneously adds adiversification strategy to the search; and the use of a bin- packing heuristic as a post-optimization step. The behavior of the proposed algorithm was evaluated through its application to a set of benchmark ISCAS combinational circuits. The computational results have been compared withthose obtained by other algorithms in the literature, with significant improvements. The average reduction rates have been of the order of 30% inthe number of subcircuits in the partition, and of the order of 40% in the number of cuts. => 94_03_ierusalimschy.ps.gz [MCC 03/94] IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES Fo., W. Reference manual of the programming language Lua. 21 p. Eng. E-mail: roberto@icad.puc-rio.br Abstract: Lua is an embedded programming language designed to be used as a configuration language for any program that needs one. This document describesthe Lua programming language and the API that allows interaction between Lua program and its host C program. It also presents some examples of using themain features of the system. => 94_04_souza.ps.gz [MCC04/94] SOUZA, C.S.; JAMES, D. Especificacoes formais para linguagens visuais de programacao. 11 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: In this work we present LvPASCAL, a visual programming language based on PASCAL. After a short survey of concepts usually associated to visualprogramming, we propose that the advent of real instances of such type of graphical code claims for syntactical formalization and cognitive motivation. Syntactic formalization is needed for program compilation and,in LvPASCAL, such formalization is done with L-Systems. Cognitive motivation is needed for a programmer to be able to write and understand code in the language. In LvPASCAL, the motivation for imaging is driven towards perception, in an association between geometric forms and control and modularization abstractions. => 94_05_souza.ps.gz [MCC05/94] SOUZA, C.S.; GARCIA, A.C.B. Towards a rethoric of active design documents. 13 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Design documentation is costly, often inconsistent, and generally incomplete. Active Documents offer an active approach to capturingand delivering design rationale. In ADD, an existing implementation of anactive document, what is stored and manipulated by system and user is notjust information, but knowledge. Delivering knowledge at the interface level is a complex task, involving communicative strategies that fully exploredocumentation resources andadequately meet users cognitive needs. The implemented system generates information that can be displayed as an explanation, but it lacks rhetorical organization and structuring. Users,on their own, cannot be expected to (1) explore the full wealth of knowledge resources available in an active document, and (2) diagnose their own misconceptions about the design model and history. This paper discusses the potential for improving the input and output code, as well as for introducing dialogue structure, so that the knowledge usability problem in (1) and the cognitive paradox problem in (2) are made smaller. => 94_06_souza.ps.gz [MCC06/94] SOUZA, C.S. Structure and expresiveness visual computer languages. 18 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: One of the meanings that can be assigned to the expression Visual Programming Language (VPL) is that of a programming language whose tokens are visual, rather than textual. Despiste the linguistic parallel, however, VPL's can hardly challenge their textual counterparts in the construction of even very simple software programs. But Visual Command Languages (VCL's) seem to have nearly overtaken their textual counterparts as a protocol for user-system interaction. Thus, the very nature of software programs and interface commands appear to be differentially suited for visual representation. In this paper, a classification of visual languages is proposed with respect to the dimensions of structural complexity and interactivity. Whereas languages deprived of a cognitively clear conceptual model in the semantic component seem to be necessarily low on the interactive side, languages deprived of formally clear structuring rules in the syntactic component do not. But, the lack of a powerful grammar seems to affect the language's ability to represent adequately the elements involved in even the simplest computer processes. In order to integrate the adequacy of VCL's to a programming environment, an end-user VPL schema is presented, in which visual parametric and syntactic variations of a classical fractal image - the Koch Curve - are assigned perceptually motivated procedural meanings. Although images in this VPL schema are abstract, and not semiotically iconic or indexical as the majority of VCL images, underlying structural regularities seem to accommodate consistenly some semantic notions related to data, control and modular abstractions. A global linguistic and semiotic analysis of the proposed VPL schema suggests that there may be important expressive limits to the quality of genuinely visual programming languages. Nevertheless, the limits of successful visual command languages may apparently be extended to incorporate abstractions that are desirable for end-user programming applications. => 94_07_fuks.ps.gz [MCC07/94] FUKS, H.; MOURA, L.M. A document based approach for cooperation. 21 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This article outlines a document based approach for cooperation. It proposes a cooperation model, wich states the way team members access the documents of a project. It is the underlying model for a cooperative system, where developers concentrate on the application's domain, ignoring the aspects related to the cooperative process. => 94_08_garcia [MCC08/94] GARCIA, A.C.B.; STEFIK, M.J.; HOWARD, H.C. Design rationale for collaboration: the active document approach. 29 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We present a new approach for supporting documentation in routine design tasks using computationally active documents. This approach substantially reduces the costs of collaborative design. The major costs are in the time required to check and maintain consistency between design decisions and requirements, the time to explore a large design space, and the time lost in communication delays between people with different expertise. By reducing these costs, the active design document approach supports the creation, use and revision of design documents. We demonstrate the feasibility of the approach with a detailed case study of its application to the preliminary design of heating ventilation and air conditioning (HVAC) systems. Evaluation of a prototype system confirms that where the approach is applicable, it can significantly improve the quality and reduce the cost of design documentation. => 94_09_garza [MCC09/94] GARZA, J.M.; GARCIA, A.C.B.; HOWARD, H.C. Making the case for design rationale in the A/E/C industry. 12 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstact: Articulation and use of design rationale are critical elements in improving design, construction, and facility management in the architecture/engineering/construction (A/E/C) industry. This paper summarizes some of the research work on design rationale in the fields of construction and software engineering, and shows how design rationale could be captured and employed in the A/E/C industry. The articulation of design rationale should be a standard activity in the entire design process starting with owner's initial conception of the facility, the designer's elaborations on that concept, construction by the contractor, and finally, operation by the facility's managers. Owners of constructed facilities need to recognize the usefulness of this new design output product called "design rationale" as a valuable addition to the typical construction documents already produced, i.e., drawings, specifications, and as-builts. We argue that design rationale, if adopted as a valid concept, can be articulated and used through software tools and that these need to be embedded within the key software packages that designers are already using. => 94_10_garcia.ps.gz [MCC10/94] GARCIA, A.C.B.; HOWARD, H.C.; STEFIK, M.J. Improving design and documentation by using partially automated sysnthesis. 35 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: One of the products of engineering, besides constructed artifacts, is design documentation. To understand how design participants use documentation, we interviewed designers and typical documentation users and also took protocols of them both creating and using design documentation. Our protocols were taken from realistic projects of preliminary design for heating, ventilation and air conditioning systems (HVAC). Our studies of document creation and use revealed three important issues: (1) Design participants not only look up design facts; they frequently acces documents to obtain information about the rationale for design decisions; (2) The design rationale that they seek is often missing from the documents; (3) design requirements change frequently over a project life cycle so that design documents are often inconsistent and out-of-date. Recognizing these documentation issues in design practice, we developed a new approach in which documents are no longer static records, but rather interactive design models supporting a case. We demonstrated the feasibility of the approach by constructing a running system and testing it designers on realistic problems. We also analyze the costs and benefits of creating and using documentation of design rationale and of the active documents approach in praticular for routine, preliminary design in domains where community practice is widely shared and largely standardized. The approach depends on the feasibility of creating a parametric design model for the design domain. => 94_11_bigonha.ps.gz [MCC11/94] BIGONHA, M.A.S.; RANGEL NETTO, J.L.M. Sistema gerador de geradores de codigo para arquiteturas superescalares. 18 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Modern computer architectures have motivated research for more efficient compiler techniques. These new architectures, however, delegate the solution of the most complicated problems in code generation to the compiler. The focus of this paper is the design of a retargetable code generator system for superscalar architectures. We also show the results of the study of several problems related to code generation to these processors. => 94_12_bigonha.ps.gz [MCC12/94] BIGONHA, M.A.S.; RANGEL NETTO, J.L.M. Linguagens para descricao de arquiteturas de computadores. 18 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Modern computer architectures lead to research looking for better techniques for effective implementation of compilers wich must be able to produce high-quality code. In the special case of superscalar architectures we have reduced instructions sets, and instructions must be combined to warrant efficient execution by the compilers, which have more complex back-ends than their CISC counterparts. Objectives of this work are the study of the characteristics of formal languages for the description of architectures, meant for use with code generator generators and the project, and the semantic validation of an architecture description language adequate for use with the generator system. => 94_13_veloso.ps.gz [MCC13/94] MAIBAUM, T.S.E.; VELOSO, P.A.S. Logical specifications: 1. Introduction and overview. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The logical approach to formal specifications regards specifications as axiomatic presentations of theories in standard first-order logic. Its motivations come mainly from two related sources: concepts aikin to program verification and "liberal" specifications (which provide flexibility for specifying what one whishes without forcingover-specification). The rationale for our standpoint is the realisationthat programming has to do with syntactical objects rather with theirsemantical counterparts and, thus, that program and specification development consists of the manipulation of theories. This introductory report is intended to set the stage and provide a general overview. It presents and discusses some general ideas underlying our property-oriented approach. We start by examining the motivations for our approach and then proceed to consider some of its consequences for stepwise development: implementations and their composition as well as parametrisation and instatiation. We alsobriefly comment on our approach to errors via liberal specifications. This report is a draft of the first section of a handbook chapter. Subsequent reports will analyse these and related points in more detail. => 94_14_veloso.ps.gz [MCC14/94] VELOSO, P.A.S.; MERE, M.C. Construtores parametrizados de sortes. 10 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Some sort constructors needed for implementing formal specifications are presented parameterized specifications. Implementation of formal specifications are crucial in formal program development. Specifications are viewed as theory presentations: theories in many-sorted first-order logic presented by a set of axioms. Implementation of formal specifications can also be described in terms of simple logical concepts. The constructors examined akin to those found in programming languages, namely record, discriminated union, subsorting and quotient. It is of interest to describe, in a formal way, how new sorts can be constructed from given sorts. => 94_15_oliveira [MCC15/94] OLIVEIRA, A.P.A.; LEITE, J.C.S.P. SERBAC: uma estrategia para definicao de requisitos. 16 p. Port. E-mail: julio@inf.puc-rio.br Abstract: No English abstract provided. => 94_16_gilvaz.ps.gz [MCC16/94] GILVAZ, A.P.P.; LEITE, J.C.S.P. FAES - uma estrategia para aquisicao de informacoes. 19 p. Port. E-mail: julio@inf.puc-rio.br Abstract:In this article we present FAES, an automated assistant for interviews, and discuss its use and limitations. Interview is the most used technique for fact gathering, but suffers from several problems: tacit knowledge, the say do problem and has to deal with a large quantity of information. FAES is based on an information system conceptual model and is designed to help mitigate some of the cited problems. FAES guides the software engineer in the process of fact gathering by proposing questions to be asked to clients and providing an analysis of the client's answers as provided by the software engineer. The conceptual model was tested in a couple of cases and the assistant was used in a real case study. => 94_17_ierusalimschy.ps.gz [MCC17/94] IERUSALIMSCHY, R.; RODRIGUEZ, N.L. Side effect free functions in object-oriented languages. 20 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: This paper presents a method for statically verifying that functions do not produce side effects, in an object-oriented language. The described model, although not allowing any changes to pre-existing objects during a function call, permits an imperative style of programming, where new objects can be freely created and manipulated. => 94_18_figueiredo.ps.gz [MCC18/94] FIGUEIREDO, L.H.; IERUSALIMSCHY, R.; CELES Fo., W. The design and implementation of a language for extending applications. 11 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: We describe the design and the implementation of Lua, a simple, yet powerful, language for extending applications. Although Lua is a procedural language, it has data description facilities, and has been extensively used in production for several tasks including user configuration, general-purpose data-entry, description of user interfaces, description of application objects, and storage of structured graphical metafiles. => 94_19_borges.ps.gz [MCC19/94] BORGES, R.; CASSINO, C.; CERQUEIRA, R.; IERUSALIMSCHY, R. UAI - um framework para suporte a objetos visuais. 10 p. Port. E-mail: roberto@inf.puc-rio.br Abstract: UAI is a framework of C++ classes for developing interactive applications, with support for visual objects. The main features of UAI are the high integration between the interface and the graphic systems and its portability. This work describes the facilities of UAI for modeling active objects. The software is currenly running on X-Windows, MS-DOS, and MS-Windows. => 94_20_celes.ps.gz [MCC20/94] CELES Fo., W.; FIGUEIREDO, L.H.; GATTASS. M.; IERUSALIMSCHY, R. Estrategias de reuso de software no TeCGraf. 9 p. Port. E-mail: roberto@inf.puc-rio.br Abstract: No English abstract provided. => 94_21_cowan.ps.gz [MCC21/94] COWAN, D.D.; LUCENA, C.J.P. Abstract data views: motivation, current proposal and research trends. 12 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper provides an overview of our current research work on Abstract Data Views (ADVs). ADVs are a new design concept that supports reuse-in-the-large and are a method for specifying and abstracting interfaces between objects. We present the motivation for the problem, express the requirements for an appropriate solution and outline our current proposal. We also provide an overview of the theoretical aspects of ADVs and illustrate how they provide a general solution for the module interconnection problem in object-oriented design. => 94_22_alencar.ps.gz [MCC22/94] ALENCAR, P.S.C.; CARNEIRO-COFFIN, L.M.F.; COWAN, D.D.; LUCENA, C.J.P. The semantics of abstract data views: a design concept to support reuse-in-the-large. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present a preliminary formal semantics of a new design concept to support reuse-in-the-large called Abstract Data Views (ADVs). This approach toward reuse is described informally followed by the presentation of a formal basis for its semantics. The semantics of the relationship of ADVs and ADTs as well as the semantics of a specification constructor for simple composition are presented. Issues on reusability, the main concern of the presented design concept, and the role of instantiation and naming requirements in this contex are discussed. We also indicate how the dynamic features of ADVs and consistency requirements can be represented through a temporal logic formalism. Finally, a proff outline of a modularization theorem for reuse of ADTs interpreted through ADVs is presented. => 94_23_carneiro-coffin.ps.gz [MCC23/94] CARNEIRO-COFFIN, L.M.F.; COWAN, D.D.; LUCENA, C.J.P.; SMITH, D. An experience using JASMINUM - formalization assisting with the design of user interfaces. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper describes experience in using a visual formalism, called JASMINUM, in the design of the user interface of a structured document editor called Waterloo Rita. JASMINUM combines concepts from Abstrac Data Views, with notations from Objectcharts, Statecharts, and Petri-nets. JASMINUM was motivated by the need for a formal notation to express directly some aspects of the design of interactive systems, especially the design of an interactive system through its user interface. In particular, we show in this paper how the use of JASMINUM helped to find some design flaws in the existing Waterloo Rita system, demonstrating that JASMUNUM might be a useful notation for re-engineering systems. => 94_24_nogueira.ps.gz [MCC24/94] NOGUEIRA, J.H.M.; PEREZ ALCAZAR, J.J.; FURTADO, A.L. Analise e implementacao da teoria formal de reconhecimento de planos. 54 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: The central part of intelligent reasoning resides in the agent (human or machine) capacity to realize plans and explain them. Plan recognition process consists in explain observed actions. Plan recognition complexity appears when we try to infer reasonable plan of actions which are not explicitly observed, but actions which are implicit into agent's knowledge. This process is not purely deductive because it uses a powerful knowledge representation model, heuristics, and a typical plans library. The main goal of this work was a implementation of a Plan Recognition System (PRS), based in Kautz's formal theory. Furthermore, we include new concepts, rules, and improvements in this theory, creating a hybrid theory. Our plan recognition system works with this theory treating complete and incomplete information. => 94_25_nogueira.ps.gz [MCC25/94] NOGUEIRA, J.H.M.; FURTADO, A.L. Representacao do conhecimento em banco de dados textuais. 26 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: Attempts to develop a good semantic network that can support language, reasoning, and information retrieval upon Textual Databases - TDB is not easy. This work has got as goal to make an overview of the main models of knowledge representatation in Artificial Intelligence and at the same time to make the link between this models and Textual Databases. In spite of complexity of the models, we find out that some models had little expression and sometimes they were dificult to handle with TDB. So, we create a new model, TDM (Textual Database Model), where it is specifical to treat texts. => 94_26_veloso [MCC26/94] VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 2. specifications as presentations. 24 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The logical approach to formal specifications regards specifications as axiomatic presentations of theories in standard first-order logic. We present this view of specifications as theory presentations, exploring some of its methodological consequences. Particular attention is paid to underdetermined specification and the role of error or exceptions. We start by reviewing some syntactical and semantical concepts pertaining to languages and specifications. We then discuss how a specification generates its theory as well as the roles of equality and induction. Errors and underdetermined specifications are motivated and discussed in view of their role in developing programs and reasoning about them. Finally we introduce liberally constrained specifications as more realistic concept of "good" specification, motivated by what is specified and available knowledge about it. A collection of example specifications is also provided. This report is draft of the second section of a handbook chapter. Other reports cover the remaining sections. => 94_27_cerqueira [MCC27/94] CERQUEIRA, P.M.; LEITE, J.C.S.P. Recuperacao de requisitos a partir de especificacoes estruturadas - um estudo de caso. 17 p. Port. E-mail: julio@inf.puc-rio.br Abstract: No English abstract provided. => 94_28_amaral.ps.gz [MCC28/94] AMARAL, F.C.V.; MILET, J.R.L.; LANZELOTTE, R.S.G. Utilizando a metodologia OMT para uma aplicacao de banco de dados orientado a objetos. 35 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The Object-Oriented Database Management Systems (OODBMS) have become established as alternative to applications that must manipulate non-conventional data. Because of the wealth of concepts, application designs that use OODBMS are far more complex than relational systems. The aim of this project is to investigate the applicatility of the OMT methodology to OODBMS. Therefore, we have used the OMT to design a multimedia application and herein report the result of this experiment. => 94_29_lucena.ps.gz [MCC29/94] LUCENA, C.J.; CASANOVA, M.A.; VELOSO, P.A.S. Visoes sobre as contribuicoes academicas de Antonio Luz Furtado. 20 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This work consists of three parts, independently written by the three authors, all of them long-time colleagues and collaborators of Prof.Antonio L. Furtado. The first part presents an overview of his scientific career. The second and third parts address distinct aspects of his scientific production. Multiple references to a single work were considered unavoidable, and even desirable. The analysis of the academic contributions is intertwined with personal views of the author as colleague and collaborator. This monograph was prepared as part of the celebrations of the sixtieth anniversary of Prof. Antonio L. Furtado, and is complemented by appendices, containing a bibliography with the author's works and a list of his former advisees with respective dissertation topics. => 94_30_schwabe.ps.gz [MCC30/94] SCHWABE, D.; ROSSI, G. From domain models to hypermedia applications: an object oriented approach. 17 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: In this paper we present an object-oriented method for designing hypermedia applications. The approach divides the development process in four steps, namely: domain (or content) design, navigational design, abstract interface design and implementation. We use similar modeling primitives (object and classes) and abstraction mechanisms (aggregation, generalization), during the whole process thus improving traceability; design decisions like the use of complex navigational structures are made explicit through a uniform notation thus allowing a coherent document structure that simplifies the construction of a CAHDE. => 94_31_martins.ps.gz [MCC31/94] MARTINS, I.H. SOUZA, C.S.; GATTASS, M. Orientacao semantica versus orientacao sintatica na captura de dados para aplicacoes computacionais pelo metodo dos elementos finitos. 43 p. Port. E-mail: gattass@inf.puc-rio.br Abstract: Engineering Systems Based on Planar Subdivision, more specifically Finite Element Pre-Processors, are powerful tools for capturing data for analysis and simulation systems. In this class of software applications direct manipulation interfaces play a very important role; they allow for visual data entry based on a geometric representation of the artifact. But conceptual models underlying current interface solutions are not adequate. We have identified some incongruities between the manipulation process of visual representations and the data capture process. The former looks for flexibility in the manipulation of the graphic drawings, whereas the latter looks for rigidity in the manipulation of semantic objects to maintain data consistency. Syntactic-driven and semantic-driven approaches favor one process at the expense of the other. Therefore, an alternative model is called for. This paper presents a proposal of one such alternative approach, including a number of contrastive examples between existing solutions and the proposed ones. => 94_32_laufer.ps.gz [MCC32/94] LAUFER, C.; FUKS, H. ACCORD - cliches de conversacao para cooperacao. 15 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: Cliches - conversation stereotypes - are state transition machines that control the sequencing of dialogue events in a conversation between twoparticipants. Cliches are represented in the language of ACCORD - a framework for dialogue representation systems using commitment and legality. The notion of contract - mapped to Winograd's Conversation for Action diagram - is presented as an example of the framework's ability for representing conversation cliches for cooperative work. => 94_33_veloso [MCC33/94] VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 3. extensions of specifications. 58 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We present basic concepts and results concerning extensions of logical specifications and illustrate their use in constructing specifications. We start by briefly examining the idea of hidden symbols in specifications. Then, we introduce some concepts concerning extensions of languages and of presentations, as well as properties such as conservativeness and eliminability. We then examine separately extensions by the introduction of predicates, operations, constants and sorts, with emphasis on criteria for concervativeness. In addition to classical definitions, we also consider and compare, constraints (inner, outer, Skolemisation, and pre and post conditions), as well as inductive predicates. The methods we consider for introducing new sorts are product, discriminated union, subsort, quotient and enumeration, as found in many programming languages. Finally, we apply these ideas to the treatment of errors and to construction of specifications. This report is a draft of the third section of a handbook chapter. Other reports cover the remaining sections. => 94_34_levy.ps.gz [MCC34/94] LEVY, C.H.; FIGUEIREDO, L.H.; GATTASS, M.; LUCENA, C.J.P.; COWAN, D.D. IUP/LED: a portable user interface development tool. 29 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: No English abstract provided. => 94_35_alencar [MCC35/94] ALENCAR, P.S.C.; CARNEIRO-COFFIN, L.M.F.; COWAN, D.D.; LUCENA, C.J.P. Towards a logical theory of ADVs. 1 8 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we motivate and describe a preliminary logical theory for Abstract Data Views (ADVs) and their associated Abstact Data Objects (ADOs). Abstract Data Views (ADVs) define interfaces between application components (ADOs) or between application components and an "external" environment such as a user or a network. ADVs are ADOs that have been augmented with event-driven input and output operations and a mapping that ensures an ADV interface conforms to the state of its associated ADO. Different ADVs may view or interact with the same ADO since interfaces can support alternative "views" of data or modes of interaction, providing the design satisfies certain consistency obligations. In order to maintain separation of concerns and promote design reuse, ADOs are specified to have no knowledge of their associated ADVs. ADVs can be seen as a way of providing language support for the specification and abstraction of inter-object behavior. The logical approach identifies the individual formal units or objects (ADOs and ADVs) that compose the specification of a system with theories in a temporal logic with a (global) discrete linear time structure. In this logical formalism, objects are characterized by their signatures, thus enabling local reasoning to be performed over components of a system. We also adopt an open semantics so that objects are not taken in isolation but can interact with surrounding objects, a pre-requisite for object composition. Mappings or morphisms are used as a means of connecting ADOs and ADVs thus formalizing the views relationship and other ADO and ADV specification constructors. Finally, we present a proof outline of a modularization theorem of ADOs interpreted through ADVs in the contex of this logical formalism. => 94_36_souza [MCC36/94] SOUZA, C.S.; FERREIRA, D.J. Fundamentos de projeto para uma linguagem visual de programacao estruturada. 35 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: This work proposes to create a Visual Programming Language, where control structures are visually represented by geometric forms suggestive of the data flow control. Such geometric forms are formalized according to L-systems rewrintig rules. L-systems support other kinds of grammars due to generality and simplicity - they allow for rules to be applied in paralel and for easy mapping from syntax on to visual representations. By associating L-systems to the so called "turtle geometry" control structures can be visualized. Moreover L-systems provide for a syntactic formalization necessary to every programming language. The proposed Visual Programming Language is based on Pascal and called Lvpascal. => 94_37_mere.ps.gz [MCC37/94] MERE, M.C.; Veloso, P.A.S. On definition-like extensions by sorts. 19 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The process of implementing a formal specification on another one is very important in formal software development and it can be described in terms of simple basic logical concepts. Formal specifications are presentations of theories in many-sorted logic, and an implementation of a formal specification A on another formal specification C amounts to an interpretation of A into a conservative extension B of C. An extension consists of the addition of new symbols and axioms, a simple, but important, special case being the so-called extensions by definitions. The new symbols to be introduced correspond to sorts, functions or predicates. Extensions by the addition of function and predicate symbols are well studied in the literature. In particular, extensions by definitions of function and predicate symbols are characterized by the properties of conservativeness together with eliminability. Our propose here is to analyse conservative extensions that introduce new sorts. This is of importance because it occurs often in implementing formal specifications, when new sorts are "constructed" from the concrete ones. We specify and analyse some well-known sort introduction constructs akin to those found in programming languages, namely cartesian product, discriminated union, subsorting and quotient. In each case the extension is shown to be conservative and to exhibit a generalised eliminability property, wich corroborates the intuitive feeling that these amount to extension by definition of a new sort. => 94_38_veloso.ps.gz [MCC38/94] VELOSO, P.A.S.; MERE, M.C. Some constructs for sort introduction in logical specifications. 12 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The process of implementing a formal specification on another one is very important in formal software development and it can be described in terms of simple basic logical concepts relating the formal specifications involved. Our propose here is to analyse conservative extensions that introduce new sorts. This is of importance because it occurs often in implementing formal specifications, when new sorts are "constructed" from (or represented in terms of) the concrete ones. We will specify and analyse some well-known sort introduction constructs akin to those found in programming languages, namely cartesian product, discriminated union, subsorting and quotient. This last construct, quotient, even though not prevalent in programming languages, corresponds to the representation of the equality on an abstract sort, wich is necessary for a correct implementation. We will specify each construct by means of a parameterised formal specification, in that it is a presentation of a theory in the new, extended language, which is a conservative extension of its parameter: a presentation of a theory in old language which describes its applicability condition. => 94_39_mere.ps.gz [MCC39/94] MERE, M.C.; VELOSO, P.A.S. The eliminability property in extensions by sorts. 28 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The process of implementing a formal specification on another one is very important in formal software develpoment and can be described in terms of simple logical concepts as an interpretation into a conservative extension. An extension consists of the addition of new symbols and axioms, a simple, but important, special case being the so-called extensions by definitions. The new symbols to be introduced correspond to sorts, functions and predicates. Extensions by the addition of function and predicate symbols are well studied in the literature. Our purpose here is to analyse the eliminability property in conservative extensions that introduce new sorts. This is of importance because it occurs often in implementing formal specifications, when new sorts are "constructed" from the concrete ones. We view some known sort introduction constructs, akin those found in programming languages (namely cartesian product, discriminated union, subsort and quotient), like extensions of a base language with the given sorts and study some common properties to these extensions. => 94_40_veloso.ps.gz [MCC40/94] VELOSO, P.A.S.; MERE, M.C. On definability properties for sort introduction constructs. 42 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The process of implementing a formal specification on another one is very important in formal software development and can be described in terms of simple logical concepts as an interpretation into a conservative extension. An extension consists of the addition of new symbols and axioms, a simple, but important, special case being the so-called extensions by definitions. The new symbols to be introduced correspond to sorts, functions and predicates. Extensions by the addition of function and predicate symbols are well studied in the literature. Our purpose here is to analyse definability properties in conservative extensions that introduce new sorts. We regard some usual sort introduction constructs, akin those found in programming languages (namely cartesian product, discriminated union, subsort and quotient), as extensions of a parameter specification with the given sorts and study some important properties to these extensions. => 94_41_schwabe.ps.gz [MCC41/94] SCHWABE, D; ROSSI, G. Building hypermedia applications as navigational views of information models. 10 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: In this paper we present a novel approach for defining hypermedia applications as navigational views of an object-oriented hypermedia schwma. We briefly describe OOHDM (Object-Oriented Hypermedia Design Model) using an academic information system as a concrete example to illustrate each modeling construct. We further analyze the whole process of hypermedia applications building focusing mainly on navigational design. The approach we propose allows clean separation of content design, navigational design and abstract interface design. Such separation of concerns allows seamless evolution from abstract domain models to concrete implementation of hypermedia applications, especially those in which there is a wide range of information to be handled. => 94_42_barbosa.ps.gz [MCC42/94] BARBOSA, S.; SCHWABE, D. Navigation modelling in hypermedia applications. 21 p. Eng. E-mail. schwabe@inf.puc-rio.br Abstract: A distinguishing feature of hypermedia applications is the possibility of navigational access by the user. Although this type of access can be an advantage, there many problems associated with it, for example user disorientation ("lost in hyperspace"). This paper presents the concept of navigational context, which is used to design the navigation structure of a hypermedia application. Navigational contexts are defined in the framework of the Object Oriented Hypermedia Design Methodology, which strives to systematize the process of hypermedia application design, from the conceptual modeling phase all the way to implementation. Throughout the paper, examples of the use of navigational contexts are shown using Microsoft's Art Gallery CDROM application. ------------------------------------------------------------------------ ------------------------------------------------------------------------ 1995 => 95_01_veloso [MCC01/95] VELOSO, P.A.S. On some general logical properties related to interpolation and modularity. 27 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine connections among some logical properties, such as interpolation and cut, underlying the modularity property for interpretations and conservative extensions, which is crucial in the logical approach to formal program and specification development. In this context, a specification is a theory presentation, implementations and parameter instantiations being defined in terms of interpretations and conservative extensions. To handle these concepts, one must be able to complete (pushout) rectangles, a construction preserving conservativeness by the Modularisation Theorem. A closer analysis of its proof reveals that it relies on some basic logical properties, related to versions of interpolation and the deduction theorem. We examine these properties and some connections among them, aiming at clarifying their roles, and illustrating the use of internalisation techniques. This provides conditions and alternative formulations for modularity and these logical properties of the consequence relation. Interpolation, for can be formulated as conservativeness preservation. We emphasise a connective-independent approach. => 95_02_maia.ps.gz [MCC02/95] MAIA, A.C.P.; GARCIA, A.C.B.; LUCENA, C.J.P. Representing team design activity. 19 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Design is complex activity that has been the focus of substantial research work. Alone or in groups, designers create, develop, refine, analyse and document their conceptualization of a product. In addition to the number of participants, the complexity of the problem domain contributes to the complexity of the design process. Many research projects have proposed methods for observing the design activity. These methods vary from simple documentation analysis to video tape analysis. Although video tape technology has been in use for many years to record design activity, systematic methods have not been developed to analyse video data. This paper presents a method for analysing team design activity recorded in videotapes. The purpose of the method is to reduce the subjectivity of video data analysis. Our study has been developde in the domain of collaborative software design. The design activity of a multi-disciplinary group including from five to eight people was videotaped and has been analysed. The team was involved with the design of an educational software system using the approach of decision making meetings. The analysis focused on the dynamics of the interactions among people involved in the design activity. This study is based on the belief that the ineractions stablished among designers will provide important insights for a better understanding of design practice. => 95_03_bumbulis [MCC03/95] BUMBULIS, P.; ALENCAR, P.S.C.; COWAN, D.D; LUCENA, C.J.P. Combining formal technique and prototyping in user interface construction and verication. 15 p. Eng. E-mail: lucena@inf.puc-rio.br Abstrcat: In this paper we investigate a component-based approach to combining formal techniques and prototyping for user interface construction in which a single specification is used for constructing both implementations (prototypes) for experimentation and models for formal reasoning. Using a component-based approach not only allows us to construct realistic prototypes, but also allows us to generate a variety of formal models. Rapid prototyping allows the designs to be tested with end users and modified based on their comments and performance, while formal modeling permits the designer to verify mechanically specific requirements imposed on the user interface such as those found in safety- or security-critical applications. => 95_04_alencar [MCC04/95] ALENCAR, P.S.C.; COWAN, D.D.; LUCENA, C.J.P.; NOVA, L.C.M. A formal approach for reusable objects. 20 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present a formal approach of a new object-oriented design concept to support reuse-in-the-large called Abstract Data Views (ADVs). The ADV approach was created to specify clearly and formally the separation of interfaces from the application components of a software system. Such approach should lead to a high degree of reuse of designs of both interface and application components. Our specification framework is based on descriptive schemas for both ADVs and ADOs, that should be used as the basic blocks for the system specification, design, and implementation within the ADV approach. These schemas describe the structural, static, and dynamic features of each system object, allowing also the specification of the concurrent aspects of the several system components. Additionally, such schemas can be seen as an underlying structure to support the development of a specification language that describes the interconnection capabilities between interface and application components. => 95_05_lanzelotte [MCC05/95] LANZELOTTE, R.S.G.; RIBEIRO, C.C.; RIBEIRO, C.D. Query optimization in distributed relational databases. 19 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: The query optimizer is the DBMS (data base management system) component whose task is to find an optimal execution plan for given input query. Typically, optimization is performed using dynamic programming. However, in distributed execution environments, this approach becomes intractable, due to the increase in the search space incurred by distribution. We propose the use of the tabu search metaheuristic for distributed query optimization. A hashing-based data structure is used to keep track of the search memory, simplifying significantly the implementation of tabu search. To valide this proposal, we implemented the tabu search strategy in the scope of an existing optimizer, which runs several search strategies. We focus our attention into the more difficult problems in terms of the query execution space, in which bushy execution plans and Cartesian products are accepted, which are not dealt with very often in the literature. Using a real-life application, we show the effectiveness of tabu search when compared to other strategies. => 95_06_porto.ps.gz [MCC06/95] PORTO, S.C.S.; RIBEIRO, C.C. Parallel strategies for task scheduling algorithms using PVM. 16 p. Eng. E-mail: celso@inf.puc-rio.br Abstract:This paper presents parallelization strategies of a tabu search algorithm for the task scheduling problem on heterogeneous processors under task precedente constraints. Parallelization relies exclusively on the decomposition of the solution space exploration. Four different parallel strategies are proposed and implemented on an asynchronous parallel machine under PVM: the master-slave model, with two different schemes for improved load balancing, and the single- program-multiple-data model, with single-token and multiple-token message passing schemes. The comparative analysis of these distinct versions shows that the tabu search approach for this problem is so ideally adapted to the parallelization of the neighborhood search, that efficiency values are almost always close to one for problems over a certain size. => 95_07_rossi.ps.gz [MCC07/95] ROSSI, G.; SCHWABE, D.; LUCENA, C.J.P.; COWAN, D.D. An object-oriented model for designing the human-computer interface of hypermedia applications. 19 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents an object-oriented approach to specifying the user interface of a hypermedia application using the Abstrac Data Views (ADVs) concept. We discuss ADVs in the context of an object-oriented hypermedia design method (OOHDM) showing how to specify the interface aspects of hypermedia objetcs including nodes, links and access structures such as indexes and guided tours using high-level abstraction and composition mechanisms such as aggregation and generalization/specialization. We state that (ADVs) make it possible to describe, in an abstract, implementation- independent way, a number of relationships including the media objects perceived by the user of the hypermedia application, the mode of interaction with these objects, and the interface transformations that occur while navigating through the hypermedia. In addition, we present ADVcharts and Configuration Diagrams as a design tool to specify both the interface and the static relationships between interface objects and navigational objects in the hypermedia application. In the discussion of ADVcharts, a notation that combines concepts from Statecharts, Objectcharts and Petri Nets, we show how to specify the dynamic aspects of a hypermedia application, in particular the interface transformations that occur when certain media objects are "activated" during navigation. Finally we discuss some further issues such as the description of reusable interface objects and patterns of interaction styles, and compare our approach with other formal models used during hypermedia interface design. => 95_08_ierusalimschy.ps.gz [MCC08/95] IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES FILHO, W. Reference manual of the programming language lua 2.1. 24 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: Lua is an extension programming language designed to be used as a configuration language for any program that needs one. This document describes version 2.1 of the Lua programming language and the API that allows interaction between Lua programs and its host C program. It also presents some examples of using the main features of the system. => 95_09_lifschitz [MCC09/95] LIFSCHITZ, S.; MELO, R.N.; PACITTI, E. Practical behavior of parallelization strategies of datalog. 19 p. Eng. E-mail: lifschitz@inf.puc-rio.br Abstact: We present in this paper a behavior study on a very important class of known parallelization strategies for evaluating Datalog, namely, the bottom-up rule instantiations partitioning paradigm. Its basic algorithm specialization is observed and many different variations are also verified in order to obtain a comprehensive set of implementation results. We show that the usually considered analytical models may not explain the actual behavior of the algorithms. We make careful observations on the impact of some of the factors that influence the behavior of the algorithms. Particulary, important issues related to inter-sites data transfers are analyzed and the practical results obtained show that this is clearly a fundamental factor to achieve acceptable performances. => 95_10_oliveira [MCC10/95] OLIVEIRA, D.A.S.; SOUZA, C.S.; HAEUSLER, E.H. Converting large proof structures into natural language hypertext-like explanations. 13 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: Logic-based reasoning systems present considerable challenges to interface designers. The generation of explanations from proofs is one of the most important of these. This task is often carried out by a conversion of the proof structure into a text plan and has a considerable degree of complexity derived from two facts: the intrinsic size and structure of proofs and the intended style of the text to be generated. We believe that proof-based explanations should be as readable as possible, which requires presenting proofs with enough information to allow for an easy reading/understanding. In this article we present a way of meeting this end by subdividing Natural Deduction (N.D.) proof structures into sub-proofs with an adequate level of information regarding their sub proof conclusions and relationship between these, their premises, and the whole proof. The structure obtained from the hierarchical combination of sub proofs is called PLS (Proof-Like Structure). The definition of PLS takes advantage of the fact that proofs are in Normal Form at the time the relevant sub proofs are chosen. We show how to use PLS to build cognitively- motivated text plans and conclude that a considerable improvement has been obtained by comparison with previous frameworks for generating texts from N.D. proofs. => 95_11_barbosa [MCC11/95] BARBOSA, E., MAFFEO, B. Modelo da imlementacao (Design) de um sistema de controle para uma area de linha de engarrafamento. 92 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work constitutes an application of conceptual tools and modelling techniques for the construction of the Implementation Model (Design) for a real-time system which monitors and controls a chemical product bottling lines area. It employs extensions, proposed for the treatment of real-time systems, of tools and techniques used for the modelling of conventional socio-technical systems. Using an activity-oriented approach, it addresses aspects related to the representation of system dynamics and the choice of a viable implementation alternative. => 95_12_ierusalimschy.ps.gz [MCC12/95] IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES FILHO, W. Lua - an extension language. 15 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: This paper describes Lua, a language for extending applications. Lua combines procedural features with powerful data description facilities, by using a simple, yet powerful, mechanism of tables. This mechanism implements the concepts of records, arrays, and recursive data types (pointers), and adds some object-oriented facilities, such as methods with dynamic dispatching. Lua presents a mechanism of fallbacks that allows programmers to extend the semantics of the language in some unconventional ways. As a noteworthy example, fallbacks allow the user to add different kinds of inheritance to the language. Currently, Lua is being extensively used in production for several tasks, including user configuration, general-purpose data-entry, description of user interfaces, and storage of structured graphical metafiles. => 95_13_sanchez [MCC13/95] SANCHEZ, M.L.A.; MAFFEO, B. Sistema de tempo-real para controle de processos - design orientado a encapsulamento de dados e a troca de mensagens entre subsistemas autonomos. 65 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work presents a method of software design for real-time process-control systems, based on "Information Hiding and Exchange of Messages between Independent Subsystems". Employing the information hiding concept, the method partitions the complex system in more manageable subsystems intended for reuse in other systems that have to perform similar functions. The Incremental Development Strategy is facilitaded, allowing a lower response time by the development team. This strategy permits the production of operational intermediate versions which may be employed by end users and consequently generates a better interaction between users/clients and developers. In general, the final version tends to better satisfy the end user. => 95_14_braga.ps.gz [MCC14/95] BRAGA, C.O.; STAA, A.v. Ferramentas para a geracao automatica de documentacao. 15 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: This paper discusses the automatic generation of software system documents. Some of the available tecnologies are examined. Document generating tools are presented. These tools generate hypertexts which may be explored by means of the Windows help system. => 95_15_veloso [MCC15/95] VELOSO, P.A.S.; FURTADO, A.L. Towards a logical analysis of design: formal software engineering and data base concepts. 22 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: We analyze the various objects and arrows involved in conceptual design of data base applications, aiming at clarifying the roles played by the diverse language dichotomies: application vs. data model, static vs. dynamic, etc. This analysis is suggested by the similarity with encapsulation and implementation of data types in Software Engineering, which in turn leads to interpretation of specifications based on translation of their languages. The central ideas come from the logical approach to formal specifications. We emphasize the process of representing an application concept on a data model. => 95_16_veloso [MCC16/95] VELOSO, P.A.S.; FURTADO, A.L. Encapsulamento em bancos de dados e em engenharia de software: analise e projeto de refinamento. 18 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: We analyze some fundamental aspects of protection by encapsulation, aiming at clarifying the roles of the formalisms involved in this discipline and some connections among them. We argue that this process amounts to a faithful translation followed by a refinement. We emphasize encapsulation in the conceptual design of data base applications, stressing the passage from the information level - with declared integrity constraints - to the manipulation level - where these constraints are guaranteed by encapsulation. We examine methods and heuristics for analysis and design, as well as an approach to the "frame problem" in this context. => 95_17_veloso [MCC17/95] VELOSO, P.A.S. From extensions to interpretations: pushout consistency, modularity and interpolation. 19 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We generalise three known results concerning (conservative) extensions to (faithful) interpretations. These results are Extension Modularity (a special case of the Modularisation Theorem for logical specifications) and two familiar logical theorems, namely Robinson's Joint Consistency and Craig-Robinson Interpolation. Their generalisations involve a pushout construction, in lieu of union, and their proofs rely on internalisation techniques, including a novel one, which reduce - to a large extent - interpretations to extensions. => 95_18_seixas [MCC18/95] SEIXAS, R.B.; GATTASS, M.; FIGUEIREDO, L.H.; MARTHA, L.F. Visualizacao volumetrica com otimizacoes do ray casting e deteccao de bordas. 12 p. Port. E-mail: gattass@inf.puc-io.br Abstract: Ray Casting is a useful volume visualization technique that has a high computational cost. We propose some optimizations to the ray casting algorithm for previewing volume data. We also propose a simple classification technique, based on a 3D edge detection algorithm, that produces good images. We compare our results with the latest algorithm presented by Lacroute and Levoy. => 95_19_staa.ps.gz [MCC19/95] STAA, A.v. Consideracoes sobre educacao em engenharia de software. 15 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this article we identify and justify a set of requirements Which should be met by all soft-ware engineering curricula. We are not presenting yet another ideal curriculum, since it is our belief that such a curriculum should reflect the opinion of a large number of professionals. We identify two classes of software developers: the amateurs and the software engineers. Amateurs have little formal knowledge of software engineering. For them we recommend creating training material providing a minimal formal knowledge, specifically with regard to methods and processes. It is our belief that software engineering is inherently experimental. Hence it is not sufficient to provide students with theory and models, also a strong experimental foundation is needed. This knowledge requires a reasonable amount of well equipped laboratories. => 95_20_costa.ps.gz [MCC20/95] COSTA, M.; FEIJO, B.; SCHWABE, D. Reactive agents in behavioral animation. 9 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: This papers presents actors in behavioral animation as being reactive autonomous agents in a virtual environment. The principles underlying the proposed model are cognition, emergence, situatedness, recursion and cooperation. Also the model is based on a cognitive architecture where both controlled and automatic procedures coexist. An animated sequence of a navigation scene is generated by a prototype. => 95_21_correa.ps.gz [MCC21/95] CORREA, M.C.; HAEUSLER, E.H.; PAIVA, V.C.V. A dialectica model of state. 28 p. Eng. E-mail: correa@inf.puc-rio.br Abstract: Reddy introduced an extended intuitionistic linear calculus to model some features of state-manipulation. His calculus LLMS - for Linear Logic Model of State - includes the connective ``before'' and an its associated modality. De Paiva presents a (collection of) dialectica categorical models for Classical Linear Logic, the categories GC. These categories contain an extra tensor product functor and a comonad structure corresponding to a modality related to it. It is surprising that these works arising from completely different motivations can be related in a meaningful way. In this paper we present a dialectica category G which models the sequent calculus LLMSc, the commutative version of Reddy's LLMS. Furthemore, we present a computational characterization of a fragment of LLMSc in the framework of CSP. We draw some preliminary conclusions and point out extensions and future work. => 95_22_araujo.ps.gz [MCC22/95] ARAUJO, R.M.; FUKS, H. QUORUM W - a group decision suppot tool for the Internet environment. 14 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This article talks about the building of QUORUM-W and the strategies outlined to accomplish this work. QUORUM-W is part of a research project called COLMEIA, which focusses on the study of the issues concerned in the construction of an environment for the development of custom-tailored cooperative applications. => 95_23_muchaluat.ps.gz [MCC23/95] MUCHALUAT,D.C.; SOARES, L.F.G.; CASANOVA, M.A. Browsing in a hypermedia system with nested composite nodes. 13 p. Eng. E-mail: lfgs@inf.puc-rio.br Abstract: Navigating through complex hypermedia documents is not an easy task for users, as the number of nodes and the density of links become very large. In order to improve user orientation, it is necessary to provide information about the overall structure of the hyperdocument, showing connections among nodes and mainly details about the navigation possibilities. The implementation of the navigation tools is still a challenge to hypermedia systems designers. The main goal of this report is to present some techniques to build graphical browsers for hypermedia systems that alow composition of nodes. First, we present the basic concepts of hypermedia models with nested composite nodes, showing the importance of navigation tools in order to guide the user within the hyperspace. Then we present our proposal of a navigation browser that extends the fisheye-view strategy to nested compositions. We also outline an implementation of the browser illustrating the ideas proposed. Lastly, we discuss the major characteristics of some existing hypermedia systems in terms of browsers providing spatial information to users, comparing them to our proposal. => 95_24_correa.ps.gz [MCC24/95] CORREA, M.S.C.; HAEUSLER, E.H. A concrete categorical model for the Lambek calculus. 29 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: There are concrete constructions like the universe of functions and function composition, which determine a denotational semantics for the Lambek calculus and can be regarded as realizing the dynamic features of it. On the other hand, non-symmetric monoidal bi-closed categories determine an abstract model for the calculus. We present a categorical / denotational semantics for the Lambek Calculus, indeed for a Lambda-typed version Curry-Howard isomorphic to it. The main novelty of our approach is an abstract noncommutative construction, so-called sequential product, with right and left adjoints which is defined through a hierarchical structure of categories. It is motivated by those concrete constructions and it reflects the implicit permission of sequencing of objects. We show that the Lambek's noncommutative product corresponds to a noncommutative bi-endofunctor into a category enclosing all categories of such hierarquical structure, presenting a soundness property for this semantical framework. => 95_25_coelho.ps.gz [MCC25/95] COELHO, L.C.G.; SOUZA, C.S. Aspectos semioticos de uma interface 3D. 18 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: Testing predictions on the use of graphical interfaces can result on redefinition of systems, and often changes the main assumptions of interface programmers. This work presents experiments done with a graphical geometric modeler. The system's interface is heavily based on direct manipulation of tridimensional entities; many tasks are guided by a moving plane, also controlled by direct manipulation. The events observed during the tests with users are classified. Based on the results and events observed, a methodology is proposed and used to redefine the system's interface. => 95_26_prates.ps.gz [MCC26/95] PRATES, R.O.; SOUZA, C.S.; VAREJAO, F.M. Sobre o onus da representacao de modelos em interfaces mutimodais para sistemas de configuracao especial. 17 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: Layout configuration is the sort of problem that naturally requires direct manipulation interfaces, since spatial reasoning can be made easier by epistemic actions performed on visual model components of the problem in order to simplify mental computations. However, if the layout configuration PROCESS and STATE are to be stored for later recovery or re-design, strict direct manipulation seems to impose unnatural expressive constraints upon the interface. If different tasks involving static or dynamic computations in spatial reasoning are to be done, visual and textual representation seem to suit distinctively the expressive requirements of the former and the latter. Therefore, a MULTIMODAL INTERFACE stands out as the best alternative. Underneath each mode, there is a model representation. In this paper we present an exploratory investigation to find out whether a single model representation is able to meet the needs of both modes, visual and textual, of the MULTIMODAL INTERFACE. => 95_27_alencar [MCC27/95] ALENCAR, P.S.C.; COWAN, D.D.; LUCENA, C.J.P. Integrating design patterns and subject-oriented programming within the ADV framework. 22 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Design patterns and subject-oriented programming are two object-oriented software implementation techniques directed toward reuse. Subject-oriented programming supports reuse at the component level, while design patterns attempt to reuse "good programming practices." In this paper we recast these two approaches to reuse in a formal framework based on Abstract Data Views (ADVs) and process programs, and then demonstrate through an example how they can be integrated. Basing a design approach on a formal model allows us to reason about the properties of a specific design, and also create tools to assist with the generation of code. => 95_28_alencar [MCC28/95] ALENCAR, P.S.C.; COWAN, D.D.; GERMAN, D.M.; LICHTNER, K.J.; NOVA, L.C.M.; LUCENA, C.J.P. A formal approach to design pattern definition and application. 25 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present a formal approach to define and apply design patterns that is both process- and reuse-oriented. Initially we use a process program based on design pattern primitive tasks or constructors to describe how to instantiate a pattern. As we develop the patterns we introduce a formal model for the interconnected objects that constitute the instantiation. The formal model which is based on Abstract Data Views divides designs into both objects and views in order to maintain a separation of concerns. We have chosen a formal model for pattern definition and application since it allows us to specify the steps in pattern instantiation unambiguously and to reason about the completed design. Furthermore, a formal statement of the application of a design pattern can provide the foundation on which to build tools to assist the programmer in code generation. => 95_29_sanchez [MCC29/95] SANCHEZ, M.L.A.; MAFFEO, B. Modelagem da essencia de um sistema de controle e monitoramento de litografia por feixe de eletrons - COMONLIFE - volume 1-2. 213 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work emphasizes the experimental approach to Software Engineering. It follows a model of research inspired on methods of empirical research used by traditional engineering disciplines. Particularly aiming at the conceptual modeling of software systems, we elaborated on tools and techniques proposed for the development of software for process-control real-time systems as extensions of those in use by practitioners for developing conventional information systems. This choise reflects a concern related to reducing the costs associated with the transfer to practice of the proposed technology. These tools and techniques were experimented and refined within the context of a controlled empirical process: the development of a realistic system, COMONLIFE, with size and intrinsic complexity seemingly adequate to the scope of the experiment. Specifically, the work focuses the phase of Requirements Analysis and Specification, restricted to the construction of the Conceptual Model for COMONLIFE. => 95_30_schwabe.ps.gz [MCC30/95] SCHWABE, D.; ROSSI, G.; BARBOSA, S.D.J. Systematic hypermedia application design with OOHDM. 15 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: In this paper we analyze the process of hypermedia applications design and implementation, focusing in particular on two critical aspects of these applications: the navigational and interface structure. We discuss the way in which we build the navigation and abstract interface models using the Object-Oriented Hypermedia Design Method (OOHDM); we show which concerns must be taken into account for each task by giving examples from a real project we are developing, the Portinari Project. We show which implementation concerns must be considered when defining interface behavior, discussing both a Toolbook and a HTML implementation of the example application. => 95_31_souzafilho.ps.gz [MCC31/95] SOUZA FILHO, G.L.; SOARES, L.F.G.; CASANOVA, M.A. Synchronization aspects of a presentation model for hypermedia documents with composite nodes. 14 p. Eng. E-mail: lfgs@inf.puc-rio.br Abstract: This paper outlines the synchronization aspects of a hypermedia presentation model, called Nested Context Presentation Model (NCPM), which has three major features. First, it allows authors to specify temporal synchronization constraints among events of interest within hypermedia documents. Second, it allows asynchronous material, such as user interaction links, or programs, to be combined with synchronous material in a single hypermedia document. Third, it separates the presentation specification from the structural definition of the hypermedia document. The synchronization facilities of NCPM can be applied to any hypermedia model with composite nodes and, with minor simplifications, even to those conceptual models without composites. In particular, the synchronization facilities can be applied to those models that can be translated to MHEG objects. => 95_32_casanova.ps.gz [MCC32/95] CASANOVA, M.A.; SOUZA FILHO, G.L.; SOARES, L.F.G. Anchors and links for composite nodes. 12 p. Eng. E-mail: lfgs@inf.puc-rio.br Abstract: This technical report focus on the definition of anchors and links for nested composite nodes, that is, composite nodes containing other composite nodes. It considers questions such as link inheritance and node reference, which become fairly complex in the presence of nested composite nodes. Then, the paper extends the discussion to include virtual anchors and links, defined by expressions in an appropriate language. Finally, it addresses some issues related to anchors and links in the presence of object versioning, such as how o maintain automatic reference to the last version of a node. => 95_33_veloso [MCC33/95] VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 4.A - interpretations of unsorted specifications. 36 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We present basic concepts and results concerning interpretations of unsorted logical specifications, as well as some connections with extensions. We start with symbol-to-symbol interpretations, examining syntactic translations of terms and formulae, semantical induction of structures, and interpretations of specifications. We then examine some operations on specifications and interpretations: union and intersection of specifications over orthogonal languages, composition and decompositions of interpretations, a simple internalisation technique via kernel, and the unsorted Modularisation Construction. We next consider the Modularisation Theorem for unsorted specifications, first the case of extensions, and then its extension to interpretations. Finally, we consider some variants of interpretations often encountered in the literature: translations of predicates and operations to formulae, translation of variables, and briefly relativisation and translation of equality. This report is the first part of a draft of the fourth section of a handbook chapter. Other reports cover the remaining sections. => 95_34_veloso [MCC34/95] VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 4.B - interpretations of many-sorted specifications. 44 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We present basic concepts and results concerning interpretations of many-sorted logical specifications, as well as some connetions with extensions. We start with simple symbol-to- symbol interpretations, examining syntactic translations of terms and formulae, semantical induction of structures, and interpretations of specifications. We then examine some operations on specifications and interpretations: union and intersection of specifications over orthogonal languages, composition and decompositions of interpretations, an internalisation technique via translation diagram, and the many-sorted Modularisation Construction. We next consider the Modularisation Theorem for many-sorted specifications, first some simple variants, then the case of extensions, and next modularity of many-sorted interpretations. Finally, we consider some variants of interpretations found in the literature: translation with relativisation (and its reduction to subsort), translation of equality (and its reduction to quotient), translation with sort tupling (and its reduction to product), as well as general interpretations incorporating these three features, and the reduction of many-sorted logic to unsorted logic via relativisation. Some examples illustrating these ideas are presented. This report is the second half of a draft of the fourth section of a handbook chapter. Other reports cover the remaining sections. => 95_35_staa.ps.gz [MCC35/95] STAA,A.v.; COWAN, D.D. An overview of the Totem software engineering meta-environment. 41 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: This report presents an overview of Totem's functionality. Totem is a computer aided software engineering meta-environment. It may be used to build software development processes, representation languages and tools, as well as to execute according to these tools and control execution according to these processes. Totem operates on a net of workstations, each containing an environment instance. Each of these environment instances provides tools to support some of the activities of a specific software development and maintenance process. The collection of environment instances supports virtually all activities of a given development process. Totem stores fine grained objects in a distributed repository. The semantics of this repository as well as the definition of user interfaces, representation languages and processes are kept in a definition base. Definition bases are derived from an environment base which contains all facts about supported methods, tools and processes. The environment base is used by the environment builder to create and maintain processes, representation languages and repository definitions. One of the basic aims of Totem is to compose code from high level specifications. For this purpose Totem has its own internal programming language. This language is used to construct specific tools, such as editors, code composers, representation transformers and representation validators. The programming language allows, also, to build the definitions of all representation languages available. => 95_36_serrano.ps.gz [MCC36/95] SERRANO, M.A.B.; STAA, A.v. Ambiente de requisitos. 50 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: This paper describes a requirements environment, composed of a representation language used to record and validate requirements, a requirements specification process and tools to be used in this process. Requirements specifications state why a system should be developed, and precisely define the problem to be solved. They should allow forecasting whether a possible implementation will be acceptable. The requirements specification process organizes the requirements acquisition, recording, maintenance and evaluation, assuming a high level of quality both of the specification itself and of the specified system. The requirements specification and maintenance process is examined from a business analysis perspective. => 95_37_maculan [MCC37/95] MACULAN, N.; PORTO, S.C.S.; RIBEIRO, C.C.; SOUZA, C.C. A new formulation for scheduling unrelated processors under precedence constraints. 6 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: We give a new formulation for the problem of task scheduling into unrelated processors under precedence constraints. This formulation has a polynominal number of variables and does not require that the processing times be integer valued. => 95_38_leite [MCC38/95] LEITE, J.C.S.P.; FIORINI, S.T. Reusing business process information. 11 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: The business reengineering movement brought to light the importance of enterprise modeling. Models of the structure and the processes of an enterprice is now a fundamental requirement for managing the information technology of large organizations. Many languages have been proposed for enterprise modeling, but most of them are based on the entites and concepts akin to computer science and not to the enterprise. Our article describes a business process based conceptual model and a schema for reusing business processes information to derive information systems applications. => 95_39_leite.ps.gz [MCC39/95] LEITE, J.C.S.P.; SANT'ANNA, M.; PRADO, A.F. Porting cobol programs using a transformational approach. 17 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: Transformation systems have been applied in several areas of software engineering. This article describes the use of the transformational machine Draco-PUC in porting Cobol programs. We describe the porting strategy of Cobol programs to C/C++ and give an example of such strategy applied to a radar application. Although targeting an object oriented language, we do not claim to generate code that follows the OO guidelines. Special attention is given to the knowledge structure we have been using to help guide the transformation process as well as to help in the process of design recovery. => 95_40_staa.ps.gz [MCC40/95] STAA, A.v. Cenarios de utilizacao de Totem. 13 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we present several usage scenarios of Totem. We expect that these scenarios make it easier to understand Totem’s goals. Totem is a meta-environmen which allows the instantiation of specific development environments. Each of these specific environments supports some of the development process tasks. This article illustrates the components of an environment generated with Totem. It also shows how to use Totem as a simple CASE tool, a complex program design and composition tool and as a program generator. We conclude with a draft of Totem's architecture. => 95_41_maia.ps.gz [MCC41/95] MAIA, A.C.; FUKS, H.; LUCENA, C.J.P. A model of the communicative behaviori of designers involved in cooperative software design. 30 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present the use of Statecharts for modeling the communicative behavior of a team involved in cooperative software design. Design episodes were previously represented using diagrams called Dynamics of Interaction Diagrams from which we have now drawn up a cooperative design activity model. The modeling activity itself led to the recognition of a number of underlying properties, most of which comprised temporal relations between speech objects (representations of verbal communication actions). We also present an analysis showing the advantages and disadvantages of Statecharts for modeling software designers' communicative behavior. Finally, we propose the use of another concurrent automaton, Colored Petri Nets, for the same purpose. => 95_42_sanchez [MCC42/95] SANCHEZ, M.L.A.; MAFFEO, B. Design baseado em troca de mensagens entre subsistemas autonomos de um sistema para controle e monitoramento de um processo de litografia por feixe de eletrons - COMONLIFE - 114 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work presents the design of COMONLIFE, which is based on the exchange of messages between Autonomous Subsystems. It pursues the emphasis on the experimental approach to Software Engineering initiated with the conceptual modeling of this same system. The main objective is the assessing of a design method which deeply exploits the information hiding concept and the partitioning of a complex system into more manageable subsytems intended for reuse in other systems that have to perform similar functions. ----------------------------------------------------------------------- ----------------------------------------------------------------------- 1996 => 96_01_martins.ps.gz [MCC01/96] MARTINS, S.L.; RIBEIRO, C.C.C.; ROGRIGUEZ, N.D.L. Ferramentas para programacao paralela em ambientes de memoria distribuida. 33 p. Port. E-mail: celso@inf.puc-rio.br Abstract: This article presents a survey of software tools for parallel computing on a distributed memory environment. Some concepts of parallel programming are introduced. Some particular software tools for distributed memory environments (such as PVM, p4, Express, and Linda) are described in more details and compared in terms of performance, support, and ease of use. => 96_02_ciarlini.ps.gz [MCC02/96] CIARLINI, A.E.M.; FURTADO, A.L. Sistema para reconhecimento e geracao de planos. 35 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: Plan recognition is an important feature of database cooperative interfaces, since if a system knows what its user intends to do, it will be in a better position to help him. Planning gains importance when detected plans violate integrity constraints, because it can be used both to adapt a detected plan and to generate another one with the same effects. This paper presents a prototype where plan recognition and generation are integrated within a database context. => 96_03_ribeiro.ps.gz [MCC03/96] RIBEIRO, C.C.; PORTO, S.C.S. A case study on parallel synchronous implementations for tsbu search based on neighborhood decomposition. 34 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: We study in this paper different synchronous strategies for the implementation of tabu search on a parallel machine. The task scheduling problem on heterogeneous processors under precedence constraints is used as the framework for the development, implementation, validation, and performance evaluation of different parallel strategies. Several strategies are proposed, discussed and compared: the master-slave model, with two different schemes for improved load balancing, and the single-program-multiple-data model, with single-token and multiple-token schemes for message passing. The IBM SP1 parallel machine running PVM is used for the implementation and evaluation of these strategies. Computational results are presented and the behavior of the different strategies is discussed, evaluated, and compared. => 96_04_veloso [MCC04/96] VELOSO, P.A.S. On algebraic structure of fork algebras. 12 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: A fork algebra is a relational algebra enriched with a new binary operation. They have been introduced because their equational calculus has applications in program construction. In this paper, we present some simple results concerning the algebraic structure of fork algebras and some of their metamathematical consequences. This paper stems from the crucial, though simple, observation of the interdefinability of fork and projections in fork algebras. We begin with some preliminaries about fork algebras and their reducts: relational and Boolean algebras. We introduce a basic expansion construction and proceed to examine its connections with homomorphisms and direct products. We establish the closure of the class of fork algebras under some of its cases. Then, these results are used to characterize the simple fork algebras as those with simple relational-reducts and to decompose fork algebras into subdirect products of their simple homomorphic images. We use these algebraic results to reduce equational (and Horn-clause) properties of fork algebras to their simple components. These simple results enable one to reduce some properties of fork algebras to corresponding ones about relational algebras. => 96_05_veloso [MCC05/96] VELOSO, P.A.S. On finite and infinite fork algebras. 17 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstact: A fork algebra is a relational enriched with a new binary operation. They have been introduced because their equational calculus has applications in program construction, they also have some interesting connections with algebraic logic. In this paper, which stems from the crucial, albeit simple, observation of the interdefinability of fork and projections in fork algebras, we examine the finite and infinite fork algebras and contrast them with relational algebras. We show that the finite fork algebras are somewhat uninteresting, being essentially Boolean algebras, uniquely characterized by their relational reducts. This contrasts with the case of infinite fork algebras: we introduce a technique for the analysis of fork algebras and use some set-theoretical constructions to exhibit many relational algebras of each infinite cardinality with many expansions to fork algebras. We begin by providing some background about fork algebras and their reducts (relation and Boolean algebras): their abstract versions, some simple results concerning the algebraic structure of fork algebras, and their concrete, set-based, versions (fields of sets and proper relational and fork algebras). We then examine the Boolean fork algebras (where fork is Boolean meet), show that their relational reducts are Boolean relational algebras, and characterize them as subalgebras of direct powers of the two-element fork algebra. These results are then applied to finite fork algebras: they are described as finite direct powers of the two-element fork algebra, the only simple finite fork algebras being those with one or two elements. This shows that a finite fork algebra is completely determined by its relational reduct (which we call rigid), in contrast to the infinite fork algebras. We examine fork-expansions of relational algebras, with the purpose of comparing relational algebras and fork algebras. Then, we introduce a technique for the analysis of fork algebras and use some set-theoretical constructions to exhibit many (simple proper) relational algebras of each infinite cardinality with many expansions to fork algebras. Such (infinite) relational algebras demonstrate quite clearly the diversity of possible fork operations. => 96_06_colcher.ps.gz [MCC06/96] COLCHER, S.; SOARES, L.F.G.; CASANOVA, M.A.; SOUZA FILHO, G.L. Modelo de objetos baseado no CORBA para sistemas hipermidia abertos com garantias de sincronizacao. 19 p. Port. e-mail: lfgs@inf.puc-rio.br Abstract: This paper outlines some extensions to the object model underlying the CORBA specification to addrress the requirements of multimedia and hypermedia systems. These extensions include the adaptationof many concepts brought from other standards, such as ODP, ANSA and PREMO,like the concept of active objects. Based on the synchronization aspectsof hypermedia models, the proposed extensions include support forspecification of objects with continuous media attributes, like audio andvideo. and the " MediaPipes ", which allows for the selection of suitableabstractions to deal with the access and transfer of continuous media information. => 96_07_mediano.ps.gz [MCC07/96] MEDIANO, M.R.; CASANOVA, M.A.; GATTASS, M. Map-tree: um metodo de acesso para mapas longos. 16 p. Port. e-mail: gattass@inf.puc-rio.br Abstract: Access metods for map play a fundamental role on geographic databases performance that typically stores very large maps. It becomes necessary to treat a map as a long object. This paper introduces a new data structure, called " map-tree ", designed to store geometrical and topological information of very large maps. The VR-tree and winged-edge structures are adopted to index the complete geometry description of the map and optimize topological operations, respectively. The paper also defines clustering techniques to optimize the access to secondary storage. => 96_08_souza [MCC08/96] SOUZA, C.S. The semiotic engineering of concreteness and abstractness: from user interface languages to end user progrmming languages. 25 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Most successful User Interface Languages have been designed observing two important guiding principles: task specificity and direct manipulation of graphic objects. Programming Languages, in their turn, have often been pursuing such goals as general purposeness and efficient symbolic manipulation of linguistic objects. When it comes to End User Programming Languages, features that are apparently in conflict with each other must be combined to allow non-programmers to write extensions to existing applications and to design implement completely novel applications and programs. In view of increasingly strong evidence for the need of engaging end users in the programming of software tools, some researchers advocate that the interface language should become a programming language, whereas others remain skeptical about this posibility. We propose that an integrated interface environment should be designed within a unified semiotic framework that accounts for interaction with and specification of computer applications. A brief case study about a successful text editor and its extension language reveals some of the features this unified semiotic framework should have and provides important topics for empirical and theoretical research agendas in the field. Integration of interactive and programming profiles in interface systems design is the object of the Semiotic Engineering of concretenes and abstractness in computer-mediated interpersonal communication through software applications. => 96_09_maia.ps.gz [MCC09/96] MAIA, A.C.; HAEUSLER, E.H.; LUCENA, C.J.P. A model for cooperative software design. 29 p. Eng. E-mail: hermann@inf.puc-rio.br ABSTRACT: In this paper we present a cooperative software design process model. We are particularly concerned with software design as a social interaction activity. Consequently, we focus on cooperative design. By cooperative design we mean a form of design in which all information exchange and decision-making are collectively undertaken during design meetings. This sort of design is very interesting because it is strongly based on cooperation among people with various abilities and from differentareas of expertise. This leads to a great diversity of cooperation (design)episodes to be analyzed. Design episodes have been previously representedusing diagrams called Dynamics of Interaction Diagrams from which we havedrawn up a specification of the cooperative design process. We have nowused Coloured Petri Nets as the design process modeling language toproduce a model based iscuss model validation and analyses resultsperformed by a tool, called ANARCO, which considers three net properties: boundedness, liveness and re-initiation. Finally, we present our conclusions and provide comments on future work. => 96_10_duran.ps.gz [MCC10/96] DURAN, J.E. Some classes containing a fork algebra equivalent variety involving projections and their use to specify abstract data types. 48 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Some varieties that are extensions of relational algebras with two constants that play the role of projections are studied. They are obtained by weakening some laws valid in abstract fork algebra. Applications in the literature and in the specification of abstract data types are exhibited. For the subvarieties formed with the models that have a repressentable relational reduct, a repressentation theorem is proved. For them the finitization problem is studied. Next the varieties presented are compared by means of the inclusion order. The exitence of equivalent classes with a binary operation like fork is studied. Simple models and elementary properties in the classes are studied. => 96_11_oliveira [MCC11/96] OLIVEIRA, A.P.; OLIVEIRA,C.; CARVALHO, R.L. The application of translation grammars to definitional theorem proving. 14 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Since theorem proving is considered a difficult problem it is worthwhile to use alternative methods of knowledge representation and structuring in order to cut down on the number of axioms considered and thus reduce the search space. Given a theory represented in such a structured way we present a method of hybrid reasoning which switches from resolution theorem proving to grammatical translations to program interpretation in orther to bridge the hierarchical levels of definitions. => 96_12_desouza.ps.gz [MCC12/96] de SOUZA, C.S.; PRATES, R.O.; VAREJAO, F.M. On classes and costs of multimodal interfaces. 23 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Multimodal Interfaces have considerably enhanced computer-human interaction by allowing designers and users to communicate via different codes, and often different channels. Nevertheless, multimodality does not involve a homogeneous set of design options. Rather, there are quite different situations for which we propose a taxonomy of alternatives based on each mode's expressive power relative to the application's conceptual model. According to it, optional and mandatory cases of multimodality can be identified and associated to specific cognitive and computational costs. We report the results of a small-scale exploratory experiment carried out to gauge the incremental costs of maintaining high-quality multimodes for layout applications. And, we conclude that there are certain semiotic conditions that maximize the chances of success in multimodal interface design, a point which is further supported by research results achieved in the field of Cognitive Science. => 96_13_rodriguez.ps.gz [MCC13/96] RODRIGUEZ, N.L.R.; URURAHY, C.; IERUSALIMSCHY, R.; CERQUEIRA, R. The use of interpreted languages for implemwnting parallel algorithms on distributed systems. 12 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: This paper proposes the investigation of the role of interpreted languages as a tool for the development of parallel programs in distributed environments. Besides, it argues that an event-driven approach simplifies many aspects of concurrent programming, since processes are never blocked on communication primitives. The ideas have been experimented with through the implementation of several solutions to the classical problem of termination detection. This implementation has used a programming environment based on the extension language Lua. => 96_14_staa.pdf [MCC14/96] STAA, A.v., ed. GG-01 Processos de criacao e manutencao de normas de engenharia de software. 15 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we describe how to create and maintain technical standards internal to software development groups. The resulting technical standards establish and explain sets of rules and recommendations to be observed when creating or maintaining software. The standardization process is similar to processes employed by standardization institutions. This document defines the format of a standard, the creation, assessment, adoption and maintenance processes. => 96_15_milidiu.ps.gz [MCC15/96] MILIDIU, R.L.; LABER, E.S. The WARM-UP algorithm: a lagrangean construction of lenght restricted Huffman codes. 18 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: An O(n.log n + n.log fn) algorithm is introduced for constructingan approximated solution to Variable Length Code Problem with LengthRestriction, where n is the number of symbols in the alphabet and fn is thehighest frequency ocurrence. The relative error of the approximate solutionis no greater than 4/(w^(H-log n) -4), where H is the maximum admissible length, and w is the golden ratio 1.618. From this result, we observe that we can get a very sharp approximate solution. => 96_16_lerner.ps.gz [MCC16/96] LERNER, A.; LIFSCHITZ, S.; PLASTINO, A.Analise de custos, desempenho e balanceamento de carga de algoritmos de juncao em ambientes com memoria distribuida. 36 p. Port. E-mail: lifschitz@inf.puc-rio.br Abstract: We study here the practical and analytical behavior of some parallel join algorithms implemented in a shared-nothing environment. Particularly, we have considered the parallel approaches for the nested-loops algorithm and the hashing algorithm. The implementations are done in a IBM SP2, using the MPI and PVM tools. We first present a cost model for both algorithms and some comments on the potential performances before discussing the practical results achieved. Then we discuss two important issues: the communication cost and workload balancing. With respect to the latter, we suggest and implement a parallel strategy that dynamically balance the workload based on a better use of the computational resources available. We also show some preliminary results and a performance discussion for this strategy. => 96_17_sanchez.ps.gz [MCC17/96] SANCHEZ, M.L.; MAFFEO, B. Software design baseado em encapsulamento de dados e troca de mensagens entre subsistemas autonomos - focalizando reuso. 22 p. Port. E-mail: maffeo@inf.puc-rio.br Abstract: This work presents a method of software design for real-time control systems. The method is based on "Information Hiding and Exchange of Messages between Independent Subsystems". Employing the data encapsulation concept and concepts inherited from development techniques using Configuration Languages, the method partitions a complex system into more manageable subsystems intended for reuse in other systems that have to perform similar functions. => 96_18_sanchez.ps.gz [MCC18/96] SANCHEZ, M.L.; MAFFEO, B. Modelagem conceitual de sistema de tempo-real - um estudo de caso. 15 p. Port. E-mail: maffeo@inf.puc-rio.br Abstract: This paper presents a summary of results concerning a controlled experiment related to employing concepts, tools and techniques for systems modeling to construct the conceptual specification of the real-time controlportion of a realistic process-control system. The control subsystem, COMONEL, is intended for COntroling and MONitoring ELectrons Beam Litography process, in future use by the Department of Materials Science and Metalurgy (DMSM) of the Pontifical Catholic University of Rio de Janeiro (PUC-Rio). This work emphasizes an experimental approach to Software Engineering. It follows a model of research inspired on methods of empirical investigation used by traditional engineering disciplines and by the sciences of nature. Specifically aiming at the conceptual modeling of software systems, we elaborated on tools and techniques proposed for the essential requirements specification of software for process-control real-time systems as extensions of those in use by practitionners for developing conventional information systems. This choice reflects a concern related to reducing the costs associated with the transfer to practice of the proposed method. These tools and techniques were tested and refined within the context of a controlled empirical process: the development of a realistic system, COMONEL, with size and intrinsic complexity seemingly adequate to the scope of the experiment. Specifically,the paper focuses: - the results of Requirements Analysis and Specification restricted to the construction of the Conceptual Model; - an overview of a deduction technique based on the Essential Model for generating an object-like oriented design, emphasizing the reuse possibilities of that model. => 96_19_souza [MCC19/96] SOUZA, C.S.; BARBOSA, S.D.J. End-user programming environments: the semiotic challenges. 13 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Empowering users with programming abilities is an issue of increasing importance in the software industry today. A few challenges to be faced are the different trends between interface design and programming language design, the lack of "semantic" embedding in programming languages, and users' fear and lack of motivation to try to program. End-User Programming Languages (EUPL) and User Interface Languages (UIL) are a peculiar piece of communication between system designer and system user, which form a continuum with each other, and which once broken can seriously impact the whole endeavor of end-user programming. A Semiotic approach to the problem will consider the integration between EUPL and UIL as a dynamic integrative process, like the processes of interpreting, understanding, and learning that users shoul go though when programming. We will illustrate how the notion of an interpretant can organize and clarify the relationships that hold between a single application's UI and its corresponding EUP Environment. Interpretants are crystallized into a predictable set of variations which can be used to adjust meaning to a very precise configuration of semantic parameters pertinent to a certain application's domain. This approach has the potential to explain and predict, in theoretic terms, the points of breakdown from UI to EUP Environment. => 96_20_veloso [MCC20/96] VELOSO, P.A.S. On infinite fork algebras and their relational reducts. 34 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: A fork algebra is a relational algebra eriched with a new binary operation. They have been introduced because their equational calculus has applications in program construction, they also have some interesting connections with algebraic logic. In this paper, we concentrate on the infinite fork algebras, with the purpose of contrasting them with relational algebras and with the finite fork algebras. For this purpose, we introduce some concepts for the analysis of fork algebrasand construct some special infinite relational algebras and fork algebras. We try to correct a some what embarrassing mistake (and simplify some constructions) that occured in a previous report. The finite fork algebras are somewhat uninteresting, being essentially Boolean algebras, uniquely characterized by their relational reducts. This contrasts with the case of infinite fork algebras: we introduce concepts and methods for the analysis of fork algebras and use some set-theoretical constructions to exhibit many relational algebras of each infinite cardinality with many expansions to fork algebras. We begin by providing some background about fork algebras and their reducts (relation and Boolean algebras): their abstract versions, some simple results concerning the algebraic structure of fork algebras, and their concrete, set-based, versions (fields of sets and proper relational and fork algebras). We then recall some results concerning the Boolean fork algebras (where fork is Boolean meet) and the finite fork algebras (they are completely determined by their relational reducts, which we call rigid, in contrast to the infinite fork algebras). We examine fork-expansions of relational algebras, with the purpose of comparing relational algebras and fork algebras. Then, we introduce methods for the analysis and construction of fork algebras and, finally, use some set-theoretical constructions to exhibit many (simple, proper) relational algebras of each infinite cardinality with many expansions to fork algebras. Such (infinite) relational algebras demonstrate quite clearly the diversity of possible fork operations. => 96_21_cafezeiro.ps.gz [MCC21/96] CAFEZEIRO, I.; HAEUSLER, E.H.; LUCENA, C.J.P. Paradigmas de linguagens de programacao: uma abordagem geometrica. 12 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This article proposes a framework for defining programming languages paradigms. The main idea is the existence of various levels ofabstraction over the notion of programs with inputs. Categorical languageand the concept of sheaf are used in order to obtain an approach for a mathematical definition of programming languages paradigms based a geometric definition of computable functions. => 96_22_ferreira.ps.gz [MCC22/96] FERREIRA, D.J.; SOUZA, C.S.; IERUSALIMSCHY, R. An analysis of strictly visual codes in programming environments from a semiotic perpective. 15 p. Eng. E-mail: clarisse@infpuc-rio.br Abstract: A semiotic analysis of the use of visual programming codes supports the exploration of their limits for the specification of programs. Results suggest why strictly visual representation for program control and modularization structures are inadequate. Nevertheless, visual codes can be combined with textual codes to help programmers to understand and create software in a communicatively rich environment. VEPascal is one such environment being used in the study as a reference for pilot tests. In it, images are based on geometric forms, the composition of which evokes similar concepts to those of the control and modularization structures in structured programming languages. Such images are motivated by perceptions related to semantic aspects of the control and modularization structures represented by them and are modeled by means of L-systems designed so as tobe used in processes of understanding, debugging or conversion of software. => 96_23_veloso [MCC23/96] VELOSO, P.A.S. On cartesian codings and the set-theoretical nature of fork algebras of relations. 20 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: A fork algebra is a relational algebra enriched with a new binary operation. This class of algebras was introduced because its equational calculus has applications in program construction. It also has some interesting connections with algebraic logic. In this report we examine the set-theoretical nature of fork algebras, namely to what extent fork algebras of relations are concrete. We investigate whether every fork algebra of relations can be represented as a cartesian one (whose underlying coding is true cartesian-product pair forming). We argue that the answer is affirmative, but with a proviso. The main idea is using the room provided by the neutral element for relational composition to accommodate the cartesian behaviour. We first show that these widened fork algebras of relations are still fork algebras, in that they satisfy the fork equations, and then that can be represented by proper fork algebra (with real identity). We also establish that the fork algebras of relations can be represented as cartesian ones, and exhibit a simple proper cartesian fork algebra of each given infinite cardinality. We finally show that the enlargement of the identity is essential, by exhibiting large collections of (simple) proper fork algebras of relations that cannot be represented as cartesian ones. => 96_24_staa.ps.gz [MCC24/96] STAA, A.v., ed. PG-01 Regras e recomendacoes para a escolha dos nomes de elementos em programas C e C++ - Versao 1.01. 27 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we establish rules and recommendations forchoosing names of program elements. The standard structure of a name is {|}_. T his structure is used for all categories and usage modes of names in C or C++ programs.When adopting this standard it is expected that: a) the creation of namesis as developer independent as possible; b) names in use can be easily and correctly remembered when creating or modifying a program, without needing to search extensive documentation; c) names can easily be shown to be correctly used wherever they occur; d) documentation defining names can easily be located; e) programmers can easily and rapidly understand and make correct changes to existing programs. => 96_25_staa.ps.gz [MCC25/96] STAA, A.v., ed. PG-02 Regras e recomendacoes para o uso de constantes simbolicas em C e C++ - Versao 1.00. 8 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we establish rules and recommendations for usingconstants in C or C++ programs. When adopting this standard it is expectedthat: a) the maintenance of programs is simplified when involving constant values; b) constants can be easily and correctly remembered when creating or modifying a program, without needing to search extensive documentation;c) programmers can easily and rapidly understand and make correct changes to values and use of constants in existing programs. => 96_26_staa.ps.gz [MCC26/96] STAA, A.v., ed. PG-03 Regras e recomendacoes para a programacao em C e C++ - Versão 1.01. 18 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we establish style and formatting rules for programs written in C. These rules apply also to the sub-language of C++ similar to C. => 96_27_staa.ps.gz [MCC27/96] STAA, A.v., ed. PG-04 Regras e recomendacoes especificas para a programacao em C++ - Versao 1.01. 14 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we establish style rules for programs written in C++, where this language differs from C. => 96_28_staa.pdf [MCC28/96] STAA, A.v., ed. PG-05 Regras e recomendacoes para a inclusao de especificacoesno codigo de programas - Versao 1.00. 25 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we establish rules and recommendations for including comments in program source code. Comments are classified according to their meaning. The meaning of every comment can be identified by means of the source text syntax and markup text contained in the comments. This assures the possibility to generate technical documentation directly from source code. => 96_29_staa.ps.gz [MCC29/96] STAA, A.v., ed. PG-06 Regras e recomendacoes para fluxos de controle em algoritmos - Versão 1.01. 17 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document we define criteria for the control flow designof programs. By adopting these criteria we expect that: a) a perceptiblereduction of creation and maintenance cost; b) a perceptible reduction ofcontrol flow errors; c) a standard control flow organization of programs. => 96_30_staa.ps.gz [MCC30/96] STAA, A.v., ed. PG-07 Regras e recomendacoes para estruturas de projeto - Versao 1.01. 21 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document a set of design structure evaluation criteria are presented. These criteria can be applied when-ever design uses techniques based on successive decomposition. The criteria are not directed towards a specific representation language or design method. They apply equally well when designing algorithms, class structures, data structures, data flow diagram structures. When adopting this standard it is expected that: a) well organized design structures will result; b) code fragments will tend to aggregate all text concerning a given aspect of a problem to be solved; c) maintenance will be simpler and less error prone. => 96_31_staa.pdf [MCC31/96] STAA, A.v., ed. PG-08 Regras e recomendacoes para o uso de instrumentacao em programas C e C++ - Versao 1.01. 20 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this document active software instrumentation is described. The instrumentation is geared towards C or C++ programs. Several instruments are proposed: structural assertion verifiers, which assure integrity of the contents of data structures; structure explores, which support exploring and editing of the contents of data structures; and verifying coroutines which perform verification during idle times. When adopting this standard it is expected that: a) the effort required to diagnose errors will be perceptibly reduced; b) the code will be capable to verify the correctness of data structures while executing; c) efficiency and efficacy of tests will be increased; d) there are means to dynamicallycontrol correctness of parallel programs, or programs subjected to non repeatable event sequences. => 96_32_costa.ps.gz [MCC32/96] COSTA, M.; FEIJO, B. An architecture for concurrent reactive agents in real-time animation. 6 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: This paper proposes an architecture for real-time behavioral animation based on parallel interactions between simple recursive reactive agents and allowing for integration with external articulated figure software. An animated sequence of a navigation scene where two actors play different roles is generated by a prototype. =>96_33_veloso [MCC33/96] VELOSO, P.A.S.; VELOSO, S.R.M.; FIADEIRO, J.L. On modularity under internal and external choice in formal software development. 26 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine some interactions between internal and external choices performed by agents in the context of modular software development of (versions of) programs from formal specifications. We emphasise implementations of collections of specifications, which may be viewed as describing versions of programs, and the use of labels to tag them and their development paths. The concept of implementation, as interpretation into a conservative extension, is generalised to labelled collections of specifications and formulated in categorical terms. We then show that the category of such collections has pushouts and that this construction preserves modularity as required for composing implementations. => 96_34_moreth.ps.gz [MCC34/96] MORETH, R.C.; HAEUSLER, E.H. The decidability of MAO. 27 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: MAO - Modal Adjoint Operators - is a Modal Propositional Theory, where the modal operators of necessity and possibility are definable in the context of a Topos as adjointed geometric morphism. The proof of Decidability of MAO follows a proof-theoretic framework. We define a Sequent Calculus for MAO, showing MAO and sequent calculus to MAO areequivalents in the Hilbert Style Presentation, and, the Cut- elimination Property is proved for the sequent calculus. Then observing that any MAO-theorem has a proof-tree finitely built from botton-up, so we have the main result. => 96_35_porto [MCC35/96] PORTO, S.C.S., KITAJIMA, J.P.F.W., RIBEIRO, C.C. Performance evaluation of a parallel tabu search task scheduling algorithm. 22 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: This paper presents the solution quality analysis of a parallel tabu search algorithm for the task scheduling problem on heterogeneous processors under precedence constraints. We evaluate the achieved makespan reduction of different parallel aplications relatively to the results obtained by the best greedy algorithm in the literature, as a function of parameters such as problem size, system heterogeneity and number of processors. Our results show that the tabu search algorithm is superior to the greedy algorithm in many cases where the latter is not capable of profiting from the inherent application parallelism and system heterogeneity. => 96_36_batista.ps.gz [MCC36/96] BATISTA, T.V.; RODRIGUEZ, N.L.R. Um estudo sobre a interoperabilidade em ambientes distribuidos. 41 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: Development of distributed applications requires support for interaction and integration between programs running on different network sites, frequently on different software platforms. Current mechanisms for the provision of interoperability in distributed systems include software components, as proposed by standards such as CORBA and OLE/COM, and software agents. This report studies these two different approaches, presenting basic concepts and interrelationships between them. Some of the specific proposals, which were considered representative of current trends, are also discussed. => 96_37_plastino.ps.gz [MCC37/96] LIFSCHITZ, S.; PLASTNO, A.; RIBERIRO, C.C. Exploring losd balancing in parallel processing of recursive queries. 15 p. Eng. E-mail: lifschit@inf.puc-rio.br Abstract: Recent work on load balancing has confirmed its importance when one wants to achieve good performance during the actual evaluation of parallel database queries. Existing work mostly focuses on the join processing for parallel relational databases. We are interested here in more complex queries, such as recursive ones. The main difference is that, in the latter case, the work due to a task cannot be previously determined and, consequently, no method can define at the outset the tasks to be executed in parallel in order to balance the workload at each processor. We propose a "dose-driven" dynamic strategy that aims at obtaining an improved workload balance and better use of the available resources. We examine the applicability of our strategy with its specialization to the case of the transitive closure query. Preliminary computational results on randomly generated test problems illustrate the efficiency of the proposed method. => 96_38_varejao.ps.gz [MCC38/96] VAREJAO, F.M.; GARCIA, A.C.B.; de SOUZA, C.S. ADD-GHS: a structured annotation based proposal for ADD's extensions. 12 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Many approaches have been proposed to document the design activity. ADD is a system that is based on the idea of transforming documents from a repository of data to a model of the design. This system provides a clearly delimited expressive language where a previous set of domain abstractions and active and communicative intentions is "fixed". However, design activity is "flexible" by nature, in consequence of its own exploratory character. To solve this problem, we propose an ADD's extension that aims to increase its expressiveness as a design rationale tool. This extension allows the designer to include structured annotations to design documentation. These annotations are free text annotiations organized by an index structure captured from the context where the annotation is made. This structure supports retrieval of annotations in different context from that the annotations is made. => 96_39_varejao.ps.gz [MCC39/96] VAREJAO, F.M.; GARCIA, A.C.B.; de SOUZA, C.S. Aquisicao de design rationale atraves de anotacoes semi-formais em documentos ativos de design. 40 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: In this paper we classify the different approaches which have been proposed to document the design activity. Comparing these approaches we identify that argumentative, history and model based approaches arecomplementary. In order to associate the advantages of these approaches,we propose an ADD's extension based on the capture of structured annotations made by the user during the design process. These annotations are free text annotations organized by an index structure captured fromthe context where the annotation is made. This structure supports retrieval of annotations in different contexts from that the annotation is made. => 96_40_almeida.ps.gz [MCC40/96] ALMEIDA, E.S.; HAEUSLER, E.H. A lambda calculus for the Lambek calculus. 17 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: The Lambek Calculus was introduced by Lambek [2] in order to obtain effective rules to allow forming sentences and distinguishing sentences from nonsentences. Two primitives types are defined in this calculus and from these types is allowed to construct compound types to the words of the sentence. We construct a lambda-calculus for the Lambek Calculus, Curry-Howard isomorphic to the sequent calculus. Some proof-theoretical results and a denotational semantic for this calculus, showing its adequacy with regard to the calculus, are shown. A phase semantics, based on Girard's phase semantics for the Linear Logic, searching to implement a verificationistic approach for meaning in construtivism, is also shown for this calculus. => 96_41_veloso [MCC41/96] VELOSO, P.A.S. On fork relations for program development. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We introduce the question of adequacy of a fork relational framework for program development. We first argue that the familiar apparatus of binary relations must be extended to achieve this aim. Then we suggest that an appropriate extension can be obtained by considering relations on structured universes together with new operations. => 96_42_veloso [MCC42/96] VELOSO, P.A.S. Fork relational frameworks on strucred universes. 22 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine a fork relational framework for program development. We introduce some structural operations and constants, consider some interconnections among them, which provide alternative bases for the extension, and examine some properties of this fork relational apparatus. In a previous report, we have argued that the familiar apparatus of binary relations must be extended to be adequate for programming; we have also suggested that an appropriate extension could be obtained by considering relations on structured universes together with new operations. In this report we examine more closely the nature of this fork relational framework. => 96_43_veloso [MCC43/96] VELOSO, P.A.S. On algorithmic fork relations: effectiveness and program constructs. 28 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine the adequacy of an extended relational framework for program development. We argue that we can select, by effectiveness considerations, a certain set of symbols deserving the name "algorithmic" and we outline a programming language correspondence, which indicates that this repertoire of symbols provides adequate power for expressing programs. In previous reports, we introduced the question of adequacy of an extended relational framework for program development: we argued that the familiar apparatus of binary relations should be extended to be appropriate for programming and we examined the nature of such an extension obtained by considering relations os structured universes with new structural operations. The adequacy of such an extended apparatus hinges on having an appropriate expressive power. In this report we address the issue of adequate expressive power for programming. We offer two explanations for the selection of the algorithmic part and its computing-like nature, which jointly justify its adequacy. First, the identification of the proper repertoire is based on effectiveness, which guarantees soundness, in the sense of not leaving the effective realm. The second - more intuitive - explanation relies on the programming language correspondence, which, besides reinforcing the first explication, indicates that these algorithmic symbols provide adequate power for expressing programs. => 96_44_leite [MCC44/96] LEITE, J.C.S.P.; SEQUERRA-BREITMAN, K. Requirements engineering of virtual applications: some initial thoughts. 5 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: In this paper, we argue that Web applications, here referred to as virtual applications, pose different kind of challenges to requirements engineering (RE). Our ongoing experience in building an Internet collaborative site exemplifies those challenges. Our virtual application is devoted to the acquisition and compilation of a general requirements engineering bibliography, database. Most RE methods and tecniques are centrered in the communication between stakeholders, i.e., developers, users, and clients, but in the case of virtual applicatons the usual distinction between stakeholders is not so clear. Another characteristic of virtual applications is the role of technology, which imposes standarts which directly constraints the definition space. As such, the traditional sequence from requirements to design phases becomes blurred. We argue that virtual applications require innovative requirements processes. => 96_45_uchoa.ps.gz [MCC45/96] UCHOA, E.M.A.; MELO, R.N.; LIFSCHITZ, S. Interoperabilidade de objetos em sistemas de bancos de dados heterogeneos. 30 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: Heterogeneous database systems have been considered one of the most feasible solution for the integration of existing systems, autonomous and different, without the need of changing them. Object oriented standards have been used as a strategy for a flexible coordination and integration of information resources connected through networks. In the heterogeneous database architecture, these standards may be used for integration and interaction among the heterogeneous components, increasing the federation flexibility and its expansion capacity in new environments. We present in this work the HEROS project, which has been developed in PUC-Rio, and discuss object interoperability issues considering the CORBA architecture, a object oriented standard. Other related projects - MIND and Jupiter - are also cited and compared to HEROS. ------------------------------------------------------------------------ ------------------------------------------------------------------------ 1997 => 97_01_zukin.ps.gz [MCC01/97] ZUKIN, M.; FUKS,H.; DALCOL, R.R.T. Digital communication technology: connecting design, engineering and manufacturing. 33 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: Companies increasingly need to reduce lead times in product development as a way to get products onto the market faster and more efficiently. Digital communication integrating design, engineering and manufacturing can greatly improve the product development process throughconcurrent engineering and overlapping activities. This paper presents a case study on how digital communication can overcome temporal and geographical barriers in the exchange of information, enhancing a collaborative and cooperative environment. The project studied was a vacuum cleaner developed in Electrolux-Italy, in which the first author of the paper participated as Senior Product Designer. In this paper, the authors describe and analyze the process, and then elaborate a scenario that contemplates networks for digital communication, and a technology infra-structure for the process highlighted. => 97_02_veloso [MCC02/97] VELOSO, P.A.S. On algorithmic fork relations and programs. 29 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We continue examining the adequacy of an extended relational framework for program development. We argue that a set of "algorithmic" symbols, selected on the basis of effectiveness considerations, provides an adequate programming language. This is established by extending a natural programming language correspondence to show that these algorithmic symbols can express only programs and all programs (including nondeterministic ones). In two previous reports, we introduced the question of adequacy of an extended relational framework for program development. We argued that the familiar apparatus of binary relations must be extended to be appropriate for programming and we also examined the nature of such an extension obtained by considering relations on structured universes with new structural operations. In another report we selected, by effectiveness considerations, a set of symbols deserving the name "algorithmic" and we also outlined a programming language correspondence indicating that these algorithmic symbols are adequate for expressing programs. In this report we examine more closely the algorithmic part of this fork relational framework and its ability to express programming behaviours. We argue that the set of algorithmic symbols, selected on the basis of effectiveness considerations, provide an adequate programming language. This envolves the establishment of two inclusions. On the one hand, our algorithmic part expresses only computing-like behaviours. On the other hand, every program, even a nondeterministic one, can be expressed in this algorithmic part. These inclusions are established by extending the natural programming language correspondence. => 97_03_cafezeiro.ps.gz [MCC03/97] CAFEZEIRO, I.; HAEUSLER, E.H.; HAEBERER, A.M. From diagram to code via attribute grammar. 38 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: This report describes within a formal approach how to generate code from a graphical description based on diagrams. The method is general enough not to consider specific methodology nor a specific target programming language. The essence of the method consists of combining Object Oriented ideas to capture the generality of diagrams and Attributed Grammars to solve the context-sensitive feature. A case study is presented. => 97_04_prates [MCC04/97] PRATES, R.O.; de SOUZA, C.S.; GARCIA, A.C.B. Semiotic framework for multi-user interfaces. 24 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Semiotic approaches to user interface designs have shown that system interfaces are messages sent from the designers to the users. It is through the system's interface that the designers tell the users the problems the system is able to solve and how the users should interact with it to solve these problems. In a multi-users environment this message is more complex, since the designers must also tell the users how to interact in the group. To create such message is not an easy task and designers should be provided with a good designing tool. In this article we present a semiotic framework that is the first step in the direction of the construction of a multi-users interface design environment. The framework has three dimensions: action, communication and observation and provides support for the analysis of multi-users system's interface and undestanding of interactions in the group. It can also be a helpful guide to designers of multi-users interfaces. => 97_05_cunha.ps.gz [MCC05/97] CUNHA, C.K.V.; de SOUZA, C.S. The role of explanation systems in multiagent applications. 7 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: This paper discusses the role of Explanation Systems in multiagent applications. Our starting point is an Active Design Documentation (ADD) tool. Its typical explanation facility is adapted in order to explore the resources available in multiagent environments. Following a Semiotic Engineering approach, explanations in MultiADD (Multiagent ADD) are used as a means of communication between system designer and system user, and provide a common linguistic embedding for end-user communication during negotiation and conflict mitigation. => 97_06_furtado.ps.gz [MCC06/97] FURTADO, A.L. Plots of narrativesover temporal databases. 12 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: An operation-based notion of plots of narratives is introduced, to summarize events happening to objects in the temporal database of an information system. The method proposed for modelling and handling plots, invloving the application of a Plan-recognition facility, is shown to be useful for various purposes, including problem-detection and decision support. An interdisciplinary approach is adopted, utilizing results from studies on literary theories. => 97_07_ciarlini.ps.gz [MCC07/97] CIARLINI, A.E.M.; FURTADO, A.L.; LIFSCHITZ, S. Modelando enredos de narrativas como planos. 22 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: The present work describes a method for modelling plots of narratives as plans, which permits to handle automatically the classification, complementation, adaptation and generation of plots. In particular, are presented the results of applying these ideas to modelling plots belonging to the literary gender of fairy tales, through a prototype system integrating plan recognition and generation. The method reflects the influence of literary theories, mainly from the Structuralist school. => 97_08_milidiu [MCC08/97] MILIDIU, R.L.; LABER, E.S. Some bounds on the redundancy of length-restricted prefix. 12 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: No english abstract provided. => 97_09_furtado [MCC09/97] FURTADO, A.L., Combinando programacao funcional com programacao em logica. 21 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: A simple strategy for combining the functional and the logical programming paradigms is proposed , through the addition of a functional component to the Prolog language. The component allows user-defined functions and functional operators, as well as the application of a number of predefined functional forms. Several examples are presented illustrating, among other features, the integrated use of functions and predicates in the same expression. => 97_10_desouza.ps.gz [MCC10/97] de SOUZA, C.S.; LEITE, J.C. A framework for the semiotic engineering of user interface languages. 12 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Semiotic Engineering is a theoretically based approach to user interface design in which the interface is seen as a message sent from designers to users carried by the computer nedium and whose content is the software functionality and the interaction model. In this paper, we describe a framework founded in semiotic theory to this design process. It provides a Model of User Interface Design Language which is a meta-language for the designer to express User Interface Messages and the Interaction Language. Our emphasis here is not in aesthetic aspects of user interfaces, but in the interactive and performing nature of the interface message as it is carried throughout the computational medium. => 97_11_desouza [MCC11/97] de SOUZA, C.S.; LEITE, J.C. Projeto de interfaces de usuario. 62 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: No english abstract provided. => 97_12_desouza [MCC12/97] de SOUZA, C.S., Supporting end-user programming with explanatory discourse. 6 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: The need to empower end users with programming capacities in order adapt and extend software applications brings forth the opportunity to examine and explore semiotic aspects in computing. This paper discusses someof these aspects within a knowledge-based extensible environment where (a) software designer can explain their rationale to users and (b) differential discourse for user-system interaction and designer-user communication fosters a better understanding of the application's model and features. => 97_13_frias.ps.gz [MCC13/97] FRIAS, M.F.; HAEBERER, A.M.; VELOSO, P.A.S. A finite axiomatization for fork algebras. 11 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Proper fork algebras are algebras of binary relations over structured set. The underlying set has changed from a set of pairs to a set closed under an injective function. In this paper we present a representation theorem for their abstract counterpart, that entails that proper fork algebras whose underlying set is closed under an injective function constitute a finitely based variety. => 97_14_fontoura.ps.gz [MCC14/97] FONTOURA, M.F.; LUCENA, C.J.P. Um ambiente para modelagem e execucao de processos. 16 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This work presents the architecture and main features of anenvironment for process mode;ing and analysis. The software and businessprocesses are modeled through a process language based on Petri Nets whichhandles all important objects for process definition such as artifacts,roles, and tools. => 97_15_braga.pdf [MCC15/97] BRAGA, C.O.; STAA, A.v.; LEITE, J.C.S.P. A hybrid architecture for documentation production. 17 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: Good documentation is essential for the production and evolution of quality software. Based on a survey on program documentation, we proposea documentation archtecture that aims to fulfill several requirements of anideal solution. The architecture integrates a powerful transformation system (Draco-PUC) and a versatile CASE tool (Talisman) in order to produce documents using reverse en-gineering strategies. We have implemented such approach in a prototype tool called Documentu, which uses a database to store system wide information and uses a standard hypertext browser to help the access and navigation of the system documentation. The prototype was used in a large scientific system in an oil company, with very positive results. => 97_16_fiorini [MCC16/97] FIORINI, S.T.; LEITE, J.C.P.; LUCENA, C.J.P. Descricao de padroes de processo em um ambiente automatizado para modelagem de processos. 18 p. Port. E-mail: julio@inf.puc-rio.br Abstract: This article investigates problems related to process patterns. Mostof the proposed patterns' descriptions heavily rely on natural language. We have analysed some of these proposals and presented an alternative based onstructured natural language descriptions. Our strategy leads to a betterpresentation of the patterns as well as reduces the problem of ambiguity. Our proposal is integrated with an existing process environment. => 97_17_lifschitz [MCC17/97] LIFSCHITZ, S.; LIMA, I.N. O ambiente de integracao SGBD e Web. (not yet published) E-mail: lifschit@inf.puc-rio.br => 97_18_lifschitz [MCC18/97] LIFSCHITZ, S.; LIMA, I.N. Modelos de conectividade SGBD e Web. (not yet published) E-mail: lifschit@inf.puc-rio.br => 97_19_fuks.ps.gz [MCC19/97] FUKS, H.; TAROUCO, L. Chaining CU-SeeMe Reflectors: the SBRC¹96 experiment. 10 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This paper reports the experiment involving a live transmission­video and audio-of some events of the XIV Brazilian Symposium of Computer Networks. This was the first live transmission of this kind using the Brazilian Internet backbone. We chose to use CU-SeeMe software­client and reflector­which made it possible to build a reflector chain, especially designed to broadcast the transmission throughout Brazil. => 97_20_fuks.ps.gz [MCC20/97] FUKS, H.; LAUFER, C. Cooperative administration of a public CU-SeeMe reflector. 7 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This article proposes a groupware architecture for WWW applications, independent of environment or platform, that can integrate diverse services. We present a WWW site prototype for cooperative administration of a public CU-SeeMe reflector. Internet software componentsare put together to offer a set of services. => 97_21_garcia.ps.gz [MCC24/97] GARCIA, A.V.; HAEUSLER, E.H.; HAEBERER, A.M. A semantic approach to the solution of the legacy code. 19 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: Thsi wor proposes as semantic approach to the legacy code probleman presents preliminary results based on a working prototype. A functional specification of the source code is obtained by means of the semantic specification of the language in which it is written. The specification is then translated into an object oriented language. Both tasks are achieved by means of transformation tools. => 97_22_veloso [MCC22/97] VELOSO, P.A.S. On simpler (equational) presentations for fork algebras and their relational reducts. 22 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: A fork algebra is a relational algebra enriched with a new binary operation. This class of algebra was introduced because its equationalcalculus has applications in program construction. It also has some interestingconnections with algebraic logic. In this report we examine some simplerpresentation for fork algebras and their relational reducts. These alternative characterisations comes from the consideration of special (pairs of) elements in relational algebras. Their adequacy comes from an analysis of the proof of representability where it was implicit, as well as from properties of these special pairs of elements. This approach provides interesting insights and leads to (equational) presentations with convenient structures. => 97_23_silva.ps.gz [MCC23/97] SILVA, S.R.P.; BARBOSA, S.D.J.; de SOUZA, C.S. Communicating different perspectives on extensible software. 17 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Actual End-User Programming is as far away from us as is in an actual End-User Perception of the rationale beneath software design. One of the major obstacles to achieving this goal is the discontinuity among user interface language, end-user programming language, and documentation language. Objects referred in one of them are not easily identifiable as the same referred to by the others. In this paper, we analyze this situation from a semiotic perspective and propose interconnected environment architecture and language design guidelines that we beleieve can narrow the gap there is to bridge. => 97_24_carvalho [MCC24/97] CARVALHO, S.E.R.; CRUZ, S.O.; OLIVEIRA, T.C. State depedent behavior in the arts project. 12 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: In object systems, the behavior of an object, when responding to a stimulus, may depend on the values of its components at the time, or on its state. Several development methods recommend the handling of state dependent behavior, at different stages during system construction. In this paper we describe the solution adopted in ARTS, a second generation development system for real-time OO applications. We use a variation of the State design pattern, in the context of 2GOOD, a CASE tool providing graphical user interfaces, and DDL, a design description language for the textual representation of interface diagrams. => 97_25_feijo [MCC25/97] FEIJO, B. Virtual environments for CAD systems. 18 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: Irrespective to the built-in degree of Artificial Intelligence, any tool for assisting structural and mechanics engineering design is deeply rooted into 3D environments. However, the question of 3D virtual worlds is not clearly presented in the AI-based CAD literature. This paper contributes to the understanding of Virtual Environments in CAD systems, in a way more closely aligned with the design task environment and the perspective needs of CAD users. This paper is also a pratical guide for CAD researchers and engineers who want to explore the possilities of VE technology. => 97_26_almeida.ps.gz [MCC26/97] ALMEIDA, E.S.; MAFFEO, B. Especificacao de estruturas conceituais basicas atraves de redes de Petri compactas. 45 p. Port. E-mail: maffeo@inf.puc-rio.br Abstract: This work presents procedures to formally specify each primitive operational activity contained in activity schemes, that model systems behavior when the Essential Model is used as conceptual framework. This formal specification employs Compact Petri Nets as representation language and,for each procedure presented, the primitive operational activity to be specified belongs to a conceptual pattern typically found in essence modelling. It is suggested that these procedures should be employed in formal specifications of large systems based Compact Petri Nets, since its use in connection with the structures commonly found in the Essential Model allows a gradual control of representational complexity, otherwise excessive. It is also believed that significant gains of quality and productivity in the systems development process should be achieved through reuse of these conceptual pattern specifications. => 97_27_rosseti.ps.gz [MCC27/97] ROSSETI, I.C.M. Balanceamento de carga em ambientes distribuidos. 11 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Many load balancing techniques have been proposed, in order to obtain improvement in the performance of parallel applications. This paper presents some existing load balancing algorithms. These algorithms are presented according to an analytical model called matrix iterative model, that was chosen for the variety of load balancing algorithms which it may represent. => 97_28_ferreira.ps.gz [MCC28/97] FERREIRA, S.B.L.; LEITE. J.C.S.; CARVALHO, S.E.R.; MELO, R.N. Requisitos nao funcionais para interfaces com o usuário - um estudo do aspecto cor. 15 p. Port. E-mail: julio@inf.puc-rio.br Abstract: The present paper presents an contribution to the requirements engineering by researching the non functional requirements, concerned to the design of user interface. The goal of these research is to obtain a friendly interaction so that the user feels comfortable in using an interface. The requirements of any system are closely related to the system objectives and they must be very well defined. The non functional requirements are briefly presented and a especial attention is given to those related to the user interface. To finish, is presented a complete study of several features involved in the use of color and its effects on the project of an interface. => 97_29_carvalho.ps.gz [MCC29/97] CARVALHO, S.E.R. DDL: An object oriented Design Description Language. 21 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Object-oriented designs are usually expressed graphically, via static and dynamic diagrams. When translated into executable code, diagram characteristics are lost in low-level programming language details. To prevent discontinuities, designs should be expressed in languages textually describing the same discourse. This report presents one such language, DDL, being used intermedially in a CASE tool allowing the automatic generation of C++ code. This graphical-textual match furthers project documentation,correctness verification, and traceability, for example. => 97_30_barbosa.ps.gz [MCC30/97] BARBOSA, S.D.J.; de SOUZA, C.S.; LUCENA, C.J.P. Supporting metaphorical mappings to facilitate end-user programming. 9 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: End-user programming still lacks easy-to-use mechanisms that support programming from end-users' point-of-view. We follow the premise that metaphors are in the grounding of our conceptual system, and recognize that the extensions end-users want to make are usually modifications upon an application's existing functionality. We propose an environment that makes use of an application's ontology to recognize and present possible ways to generate new code. We describe mechanisms that suggest modifications upon existing code based on metaphorical mappings between the ontology elements. We believe our approach helps end-users learn how the application actually works and encourages them to make software extensions and therefore get their tasks done more efficiently. => 97_31_leite [MCC31/97] LEITE, J.C.S.P. Workshop de pesquisas do Departamento de Informatica - 1996. 52 p. Port. E-mail: julio@inf.puc-rio.br => 97_32_andrade [MCC32/97] ANDRADE, A.M.S., VELOSO, P.A.S. Uma abordagem logica do PDS. 24 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: We present a logical approach to the software development process, based on the objects that make up this process: application, specifications, program and virtual machine. We propose a diagram for the correctness of the process by taking into account its synthetic aspect and the observable-theoretical dichotomy coming from the distinct nature its objects. We compare this approach to a presentation in the formalism of problems and show that the correctness relationship between the objects of the software development process amount to relaxation relationship between the corresponding problems. => 97_33_milidiu.ps.gz [MCC33/97] MILIDIU, R.L.; LABER, E.S. Improved bounds on the inefficiency of length-restricted prefix codes. 22 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract(in LaTex): Consider an alphabet $\Sigma= \{a_1,\ldots,a_n\}$ with corresponding symbol probabilities $p_1,\ldots,p_n$. The $L-$restricted prefix code is a prefix code where all the code lengths are not greater than $L$. The value $L$ is a given integer such that $L \geq \lceil \log n \rceil$. Define the average code length difference by $ \epsilon=\sum_{i=1}^n p_i.\overline{l}_i-\sum_{i=1}^n p_i.l_i$, where $\overline{l}_1,\ldots, \overline{l}_n$ are the code lengths of the optimal $L$-restricted prefix code for $\Sigma$ and $l_1,\ldots, l_n$ are the code lengths of the optimal prefix code for $\Sigma$. Let $\psi$ be the golden ratio 1,618. In this paper, we show that $ \epsilon < 1/ \psi^{L-\lceil \log (n+ \lceil \log n \rceil -L) \rceil-1} $ when $L > \lceil \log n \rceil$. We also prove the sharp bound $ \epsilon < \lceil \log n \rceil -1$, when $L =\lceil \log n \rceil$. By showing the lower bound ${\frac{1}{\psi^{L- \lceil \log n \rceil +2+ \lceil \log \frac{n}{n-L}\rceil}-1}}$ on the maximum value of $ \epsilon$, we guarantee that our bound is asymptotically tight in the range $ \lceil \log n \rceil < L \leq n/2 $. Furthermore, we present an $O(n)$ time and space $1/ \psi^{L-\lceil \log (n+ \lceil \log n \rceil -L)\rceil-1}$-approximative algorithm to construct $L$-restricted prefix codes, considering that the given probabilities are already sorted. The results presented in this paper indicate that one can efficiently implement prefix codes with length restriction, obtaining also very effective codes. => 97_34_poggi.ps.gz [MCC34/97] ARAGAO, M.V.S.; UCHOA, E. The gamma-connected assignment problem. 17 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: Given a graph and costs of assigning to each vertex one of K different colors, we want to find a minimum cost assignment such that no color induces a subgraph with more than a given number gamma_k of connected components. This problem arises in the context of contiguity-constrained clustering, but also has a number of other possible applications. We show the problem to be NP-hard. Nevertheless, we derive a dynamic programming algorithm that proves the case where the underlying graph is a tree to be solvable in polynomial time. Next, we propose mixed-integer programming formulations for this problem that lead to branch-and-cut and branch-and-price algorithms. Finally, we introduce a new class of valid inequalities to obtain an enhanced branch-and-cut. Extensive computational experiments are reported. => 97_35_gomes.ps.gz [MCC35/97] GOMES, P.C.R.; FEIJO, B.; CERQUEIRA, R.F.G.; IERUSALIMSCHY, R. Reactivity and pro-activeness in virtual prototyping. 11 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: Virtual prototyping becomes much more interesting when 3D solids are dynamic distributed objects on heterogeneous platforms. However, the dynamic nature of the design process requires a deeper investigation on reactive and pro-active 3D objects. This paper proposes the concept of Extended Constraint Graphs with bidirectional reactivity and one-way actionsto represent reactivity and pro-activeness in digital mock-ups. Also, this paper presents an original approach to deal with the dynamic nature of virtual mock-ups through the use of an interpreted language Lua and a CORBA binding called LuaOrb. Moreover, this work presents a CORBA model for virtual prototyping based on the geometry bus ACIS in which objects and attributes are created and modified at run time. => 97_36_moura [MCC36/97] MOURA, L.M.; LUCENA, C.J.P. O ambiente visual spider para o desenvolvimento de aplicacoes na Internet. 1 6 p. E-mail: lucena@inf.puc-rio.br Abstract: Visual composotion is the interative development of applications by the direct manipulation of reusable components. We believe that the visual composition approach directly deals with the complexity of large software systems making the development easier, more flexible, and more understendable. This is accomplished by implementing abstraction, reuse, and visualization concepts. The developer becomes a component builder and no longer creates large applications that are hard to maintain and enhance. The user has the freedom to choose the components from different developers until the desired functionality is achieved. The visual environment Spider allows the creation of different kinds of applications. In this article we give special attention to the creation of Internet applications. => 97_37_mediano.ps.gz [MCC37/97] MEDIANO, M.R. OPS: um subsistema extensivel e configuravel de armazenamento de objetos persistentes para bancos de dados geograficos. 16 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The persistent object storage subsystem OPS proposes an extensible and configurable model through which it is possible to model, implement and combine different database technologies to provide new capabilities or to obtain performance improvements. OPS is based on four abstractions: persistent object, object data area, object manager and media. =>97_38_veloso [MCC38/97] VELOSO, P.A.S. On some connections between logic and computer science. 25 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: This report examines some important connections between Logic and Computer Science. A brief historical overview highlights some contributions of Logic and logicians to the development of the Science of Computing. Then, two more recent connections motivated by stepwise development of reliable programs from specifications, namely Logical Specifications and Fork Algebras, are summarised. Such connections illustrate important bridges between Logic and Computer Science. They also indicate one may expect the emergence of more and stronger links, contributing to the development of both sciences. => 97_39_milidiu.ps.gz [MCC39/97] MILIDIU, R.L.; LABER, E.S.; PESSOA, A.A. Improved analysis of FGK algorithm. 13 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract (in LaTex): Consider a source alphabet $Sigma={a_1,...,a_n\}$ and a message $M_t=a_i_1}a_{i_2}...a_{i_t}$ of size $t$ containg only symbols of $Sigma$. Vitter shows that $D_t \leq 2S_t + t -4k,$ where $S_t$ is the number of bits used by a static Huffman encoding of $M_t$, $D_t$ is the number of bits required by the algorithm FGK and $k$ is the number of distinct symbols in $M_t$. Vitter has also conjectured that $D_t = S_t +O(t)$. Here, we use an amortized analysis to prove this conjecture. Our new bound shows that $D_t \leq S_t + 2t -3k -\lceil \log Min(k+1,n) \rceil$. This result explains the good performance of FGK that many authors have observed through practical experiments. (Vitter, J.S. "Design and Analysis of Dynamic Huffman Coding". J. of the ACM 1987). => 97_40_veloso [MCC40/97] VELOSO, P.A.S. Logic and computer science: logical specifications. 37 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: This report examines in some detail Logical Specifications as a connection between Logic and Computer Science motivated by stepwise development of reliable programs from specifications. We emphasise the so-called 'liberal' specifications, which appeared with the aim of providinga framework with solid foundations that is close to programming practice. A logical specification is an axiomatic theory, which is regarded as presenting properties of the available resources. We first introduce the basic ideas by examining the role of logical specifications in the programming process and the refinement steps involved. Then we examine some modularity properties and their connection with interpolation and finally some constructs for the introduction of new sorts. Such connections illustrate important bridges between Logic and Computer Science. They also indicate that one may expect the emergnce of more and stronger links, contributing to the development of both sciences. => 97_41_veloso [MCC41/97] VELOSO, P.A.S. Computer science and logic: fork algebras. 41 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: This report examines in some detail Fork Algebras as a connection between Computer Science and Logic motivated by the methodical construction of reliable programs from specifications. A fork algebra is a relational algebra enriched with a new binary operation, called fork. Such algebras arose from programming motivations, with the aim of providing a wide-spectrum formalism for program construction and derivation. They also have some interesting connections with algebraic logic. We first review t he idea of using relations for programming, which motivates an extension of the relational apparatus in order to provide an adequate framework for program construction. We then examine the abstract and set-based versions of fork algebras, showing that the former can represented by the latter. Next, we consider the algebraic fork calculus and argue that it provides an equational counterpart for first-order logic. Finally, we examine some other properties of these algebras, namely a category isomorphic to that of fork algebras, suggesting a simpler equational axiomatisation for them, how much a finite or infinite relational algebra constrains it possible fork expansion, and what extent fork algebras of relations can be endowed with a cartesian fork operation, induced by real pair formation. Such connections illustrate important bridges between Computer Science and Logic. They also indicate that one may expect the emergence of more and stronger links, contributing to the development of both sciences. => 97_42_antunes.ps.gz [MCC42/97] UCHOA, E.M.A.; LIFSCHITZ, S.; MELO, R.N. HEROS: um sistema de bancos de dados heterogêneos usando CORBA. 42 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: Object oriented software standards have been considered to coordinate, with the desired flexibility, and integrate, the information processing resources within a given network. With respect to heterogeneous database systems architectures, these standards can be used for the integration and interaction among the heterogeneous components, which may increase the federation adaptability and scalability to new environments. This work gives a complete presentation of HEROS, a heterogeneous object oriented database system, and discusses its implementation using CORBA for components interoperability. => 97_43_cerqueira.ps.gz [MCC43/97] CERQUEIRA, R.; IERUSALIMSCHY, R.; RODRIGUEZ, N.L.R. A Dynamic approach for composing CORBA objects. 13 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: This paper describes LuaOrb, a binding between the extension language Lua and CORBA. Like other CORBA bindings, this binding allows a program to manipulate CORBA objects in the same way it manipulates local objects. Unlike conventional bindings, however, LuaOrb is based on a dynamic approach, mapping the dynamic character of CORBA to the dynamic type system of Lua. This binding brings together CORBA reuse facilities with the flexibility provided by an interpreted language, fulfilling the ``commandcenter'' concept proposed by Siegel. => 97_44_almeida.ps.gz [MCC44/97] ALMEIDA,E.S.; MAFFEO, B. Especificacao de estruturas conceituais basicas atraves da logica de predicados. 19 p. Port. E-mail: maffeo@inf.puc-rio.br Abstract: This work defines a representation language and illustrates procedures to formally specify each primitive operational activity contained in activity schemes that model systems behavior when the Essential Model is used as conceptual framework. The representation language is based on predicate logic and, for each procedure illustrated, the primitive operational activity to be specified belongs to a conceptual pattern typically found in essence modeling. It is suggested t hat these procedures should be employed in formal specifications of large systems based on logic languages, since its use in connection with the structures commonly found in the Essential Model allows a gradual control of representational complexity, otherwise excessive. It is also believed that significant gains of quality and productivity in the systems development process should be achieved through reuse of these conceptual pattern specifications. => 97_45_lucena.ps.gz [MCC45/97] LUCENA, C.J.P.; FUKS, H.; MILIDIU, R.; MACEDO, L.T.; SANTOS, N.; LAUFER, C.; FONTOURA, M.F.; NEVES, P.; CRESPO, S.; CARDIA, E. E.; TORRES, V. AulaNet TM Um ambiente para desenvolvimento e manutencao de cursos na WWW. 16 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: As yet there are no experts in the application of informationtechnology to learning and training. However this area is becoming a major one in the Internet. Researchers in industry and in the academic world aredeveloping models and products for training and education based on the Web. In this work we present AulaNet, an environment for the creation and maintenance of Web-based courses designed for the layman. We also compare AulaNet to other similar Web-based environments. => 97_46_moura.ps.gz [MCC46/97] MOURA, L.M.; LUCENA, C.J.P.; STAA, A.v. A spider environment. 25 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: Visual composition is an interactive development of different applications by the direct manipulation of reusable components. We believe that the visual composition approach deals directly with the complexity of largesoftware systems making their development easier, more flexible, and easier to be understood. This is accomplished by implementing abstraction, reuse, and visualization concepts. The developer becomes a component builder and no longer creates large applications that are hard to maintain and enhance. The user will have the freedom to choose the components he needs to build an application, and to mix and match components from different developers until the desired functionality is achieved. The visual Spider environment allows the creation of different kinds of applications. => 97_47_silva [MCC47/97] SILVA, S.R.P.; de SOUZA, C.S.; IERUSALIMSCHY, R. A communicative approach to end-user programming languages. 25 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Motivated by the goal of empowering people with programming capabiliteis, we propose a framework for the design of applications that more adequately support end-user extension programming. This framework is grounded on a communication architecture that draws on the availability of the aplication's design knowledge base. We propose tha t together with any modality of end-user programming there must be a corresponding modality of explanation for end users. Whereas the former allows end users to extend the application's functionality, the latter is essencial to help end users elaborate on their understanding of the application's rationale. In this paper, we focus on design choices an end-user programming language for our framework. We are looking for design guidelines for a language with good communication resources, in which end users can take advantage of their commonsense knowledge to program and update the application's design knowledge base. We propose a plan-based programming language, guided by the fact that end users are familiar with plan-based procedural descriptions. We analyze end-users'daily plan expressions, like "recipes"and "do-it-yourself books", matching their communication resources against current programming languages and identifying the main issues that should be addressed to create a better semiotic continuum between user-interface languages and end-user programming languages. ------------------------------------------------------------------------ ------------------------------------------------------------------------ 1998 => 98_01_veloso [MCC01/98] VELOSO, P.A.S.; VELOSO, S.R.M.; FIADEIRO, J.L. On families of specifications over a II-Institution: modularity in formal stepwise development. 30 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Families, of components and/or versions (of programs or specifications), appear naturally in software development. We examine some issues in their setpwise development, such as modularity, interactions between selections of members, control of refinements and parallel elaboration. We focus on implementations of families of specifications and the use of labels to tag their members and their development paths. The concept of implementation in modular development of programs from formal specifications, as an interpretation into a conservative extension, is generalised to labelled families and formulated categorically. We show that this category has pushouts and products and these constructions preserve properties used in stepwise development. => 98_02_milidiu.ps.gz [MCC02/98] MILIDIU, R.; PESSOA, A.A.; LABER, E.S. A space-economical algorithm for minimum-redundancy coding. 22 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: No english abstract provided => 98_03_rodriguez [MCC03/98] RODRIGUEZ, N.; IERUSALIMSCHY, R.; CERQUEIRA, R. Dynamic configuration with CORBA components. 15 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: Most existing support for dynamic reconfiguration assumes that component interfaces specify input and ouput channels. The CORBA model, however, supports specifically a client-server architecture, with component interfaces describing only the provided services. Besides, the existing bindings for CORBA, based on static stubs, impose considerable difficulties on dynamic configuration. This paper investigates the use of the interpreted language Lua as a tool for dynamic configuration applications using CORBA components. => 98_04_laufer.ps.gz [MCC04/98] LAUFER, C.; FUKS, H.; LUCENA, C.J.P. Rio internet TV AulaNet: video conferencia em Web-based learning. 14 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This paper presents the results of an experiment using videoconference as a teaching resource in distance courses. CU-SeeMe and Real technology were tested for transmitting lessons live and recording lessons for asynchronous attendance. The results were assessed for later use in AulaNetTM, a tool for web-based learning. => 98_05_choren.ps.gz [MCC05/98] CHOREN, R.; BLOIS, M.; FUKS, H. QUEST-an assessment tool for Web-based learning. 7 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: The internet has great potencial for education purposes. In 1997, the Software Engineering Laboratory at PUC-Rio implemented a first version of AulaNetTM , a web-based educational environment. This year, some of the teaching staff will be using this environment to offer regular term disciplines through the Web. This paper introduces Quest, the quiz generator and assessment tool incorporated into AulaNetTM to provide the means to support educational assessment through the Web. => 98_06_blois.ps.gz [MCC06/98] BLOIS, M.; CHOREN, R.; FUKS, H. CLEW - a cooperative learning environment for the Web. 7 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This work outlines CLEW a collaborative learning environment for the Web. The project combines MUD, workflow and educational concepts like Constructivism in a learning environment, where students actively participate in the learning process. => 98_07_breitman.ps.gz [MCC07/98] BREITMAN, K.; LEITE, J.C.; FINKELSTEIN, A. The world's a stage: a survey on requirements engineering using a real-life case study. 46 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: In this report we present an analysis of a case study drawn from a real life setting, namely the London Ambulance Service System (LAS). We depart from a very detailed description of a real system that had problems and point out to specify research results that could have been applied in order to minimize some of them. This case study provides a unique opportunity to look at the results from research on the Requirements Engineering field through the prism of a real-life case study. In this light, a contribution of this work is showing the applicability of research findings in a real life setting. A natural outcome of our effort is a set of arguments sustaining the cause for Requirements Engineering research. This report is mostly based on the case study information provided by the Report of the Inquiry of the LAS, that provides a detailed account of the development and implementation of a real system and its surroundings. We survey some of the most recent methods and techniques and, at the same time, point out to realsituations where they could have been used and, perhaps minimized some of the perceived problems. The main contribution of this paper is pointing out situations in which results from recent research efforts in Requirements Engineering could, to some degree, be put to practice. As researchers, one of our major concerns is recognizing problems in real world practice and and identifying candidates for further research. => 98_08_schwabe.ps.gz [MCC08/98] SCHWABE, D.; PONTES, R.A. OOHDM-WEB: Rapid prototyping of hypermedia applications in the Web. 15 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: This paper presents OOHDM-WEB, an environment allowing rapid prototyping of hipermedia applications designed using OOHDM in the WWW. This environment allows direct maping of navigation and interface constructs of OOHDM into a library of fucntions in the CGI scripting environment CGI-LUA, extended with the DB-LUA package. This environment allows implementation of hypermedia applications as CGI scripts that produce dynamically generated pages, whose contents are fed from a database and integrated with pre-defined templates. => 98_09_schwabe.ps.gz [MCC09/98] SCHWABE, D.; ROSSI, G.; GARRIDO, A. Designing web information systems. 19 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: This paper characterizes Web Information Systems (WIS), identifying distinguishing features and discussing their design requirements. Next, it presents the notion of Design Patterns, and shows how they can be applied to the design of WIS, drawing examples from sites in the WWW. => 98_10_barroso.ps.gz [MCC10/98] BARROSO, N. G.; SCHWABE, D. Projeto de navegacao em aplicativos hipermidia orientado ao usuario. 19 p. Port. E-mail: schwabe@inf.puc-rio.br Abstract: This paper describes a user centered method for navigation design inhypermedia applications. The proposed approach extendes the Navigational phase of OOHDM with the use of cenarios. This allows the reuse by less experienced designers of design knowledge, gathered by more experienced ones, resulting in a more systematic method. The method's effectiveness has been exercized in designing the navigation of real life hypermedia application in the WWW, which allowed a better characterization of such applications with respect to other hypermedia applications. A second consequence has been the enrichment of OOHDM, making it more suitable for representing solutions for the WWW. => 98_11_schwabe.ps.gz [MCC11/98] SCHWABE, D.; ROSSI, G.; GARRIDO, A. Reutilizacao de projetos em aplicacao hipermidia. 13 p. Port. E-mail: schwabe@inf.puc-rio.br Abstract: No english abstract provided. => 98_12_moura.ps.gz [MCC12/98] MOURA, A.L.; ISHIKAWA, E.; LIMA, M.E.; RODRIGUEZ, N. Aplicacoes de gerencia extensiveis. 19 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: This paper proposes an environment for the development of network management applications. This environment is based on Lua, which is an interpreted language, and on a set of libraries. The paper gives special attention to the LuaMan library, which was developed for the specific needs of network management. Applications written on this platform can be dynamically extended; this allows new functionality to be added without the need of recompilation. The paper also describes a {\em web based} management application which was built using the proposed environment. => 98_13_crespo.ps.gz [MCC13/98] CRESPO, S.; FONTOURA, M.F.M.C.; LUCENA, C.J.P. A framework development method using viewpoints and the views-a relationship in the OO design. 10 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we describe a viewpoint-based design method for framework development. This method uses the concept of viewpoints and the views-a relation in object-oriented design to guide the designer on the identification of hot-spots in the structure of the framework. Case studies have shown that high levels of software reuse can be achieved through the use of object-oriented frameworks. Although, analysis and design methods such as design patterns, meta-object protocol, refactoring, class reorganization, behavior of modification for framework, have been proposed to support frameworks development there are still problems related to this topic associated with ease of reuse. The viewpoint-based development method appears to be a very succesful approach from the point of view of component reuse. => 98_14_crespo.ps.gz [MCC14/98] CRESPO, S.; FONTOURA, M.F.M.C. LUCENA, C.J.L. AulaNetTM: An object-oriented environment for Web-based education. 16 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: As yet there are no specialists in the application of information technology to education and training. However, this is one of the fastest growing areas on the Internet, due to the recent perception of the enormous potential for the use of Web resources for this purpose. This potentiality has attracted the attention of researchers in industryand the academic world, which are currently developing various models and products for Web-based education and training. In this paper we present AulaNet, an environment for the creation and maintenance of Web-based courses designed for the layman, highlighting its architecture and design model. We also compare AulaNet to other Web-based education (WBE) environments. => 98_15_veloso [MCC15/98] VELOSO, P. Some constructions on categories related to fork and projection algebras. 18 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: A relational algebra can be expanded along two axes: by a binary operation or by a pair of constant elements. We examine some natural constructions between such expansions of relational algebras, which provide functors. These functors preserve some categories related to fork algebras and truly projective algebras and establish isomorphisms between some of them, in particular between fork algebras and truly projective algebras. => 98_16_milidiu.ps.gz [MCC16/98] MILIDIU, R.L.; LABER, E.S.; PESSOA, A.A. A work efficient parallel algorithm for constructing huffman codes. 12 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: No english abstract provided. => 98_17_alencar.ps.gz [MCC17/98] ALENCAR, P.; COWAN, D.D.; CRESPO, S.; FONTOURA, M.F.M.C.; LUCENA, C.J.P. Using viewpoints to drive a conceptual model for web-based education environments. 24 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper proposes a conceptual model for Web-Based Education (WBE) environments that is implemented through an object-oriented framework. We also define a domain-specific language (DSL), which is used to instantiate the framework, as part of the model. The process of defining this model is based on viewpoints and on our viewpoint-based development method for object-oriented frameworks. The domain analysis was developed through the study of various WBE environments, which were used as viewpoints of this type of environment. A description of the development method is presented to clarify its application in the elicitation and design processes. The object models of the analyzed environments are also presented. The resulting conceptual model is currently being implemented in a visual programming language and will be used for the generation of different WBE environments. => 98_18_alencar.ps.gz [MCC18/98] ALENCAR, P.; COWAN, D.; CRESPO, S.; FONTOURA, M.F.M.C.; LUCENA, C.J.P. OwlNet: an object-oriented environment for WBE. 11 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The paper presents the design and the architecture of a new Web-Based Education (WBE) environment. This environment is based on the integration of two other WBE's applications: AulaNetTM and LiveBOOKs. Here we present the main features and the architecture of those two environments to justify our motivation for the development of OwlNet. Then we show the architecture and features of this new environment. => 98_19_braga.pdf.gz [MCC19/98] BRAGA, C.O.; STAA, A.v.; LEITE, J.C.S.P. Documentu: a flexible architecture for documentation production based on a reverse engineering strategy. 22 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: Good documentation is essential to the production and evolution of quality software. Based on a survey on program documentation, we propose a documentation architecture that aims to fulfill several requirements of an ideal solution. The architecture integrates a powerful transformation system (Draco-PUC) and a versatile CASE tool (Talisman) in order to produce documents using reverse engineering strategies. We have implemented such approach in a prototype tool called Documentu, which uses a database to store system wide information and uses a standard HTML hypertext browser to help the access and navigation of system documentation. The prototype was used on a large scientific system that belongs to an oil company, with positive results. => 98_20_laber [MCC20/98] LABER, E.S.; MILIDIU, R.L.; LUCENA, C.J.P. Improving the complexity of the WARM-UP algorithm. 17 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: No english abstract provided. => 98_21_carvalho [MCC21/98] CARVALHO, S.E.R. Mediator-based object-oriented frameworks. 11 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The pursuit of software reuse through frameworks shows promise in the object orientation paradigm. This paper presents a recursive architecture for frameworks, based on the Mediator pattern. Domain entities and relationships are represented by mediators having, as components, classes implementing all aspects that entities and relationships must offer to framework instantiors. These mediators can in turn de used as mediator components. Also presented are special design and language features that fully realize the benefits of this architecture, as well as an indication of how to construct mediator-based frameworks. => 98_22_porto [MCC22/98] PORTO, F.A.M.; SILVA, M.J.V.; CARVALHO, S.E.R. Object life-cycles in active relational databases. 11 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: One of the biggest problems that object-oriented developers face today is having to integrate at the enterprise level, object- oriented applications with widely applied and quality active relational databases. This paper focuses on the issues of mapping object dynamic behavior into active relational databases. We present a technique for expanding active relational databases with object-oriented behavior semantics, extrated from state transitions diagrams expressing object life cycles. We consider states as first class objects, and discuss state class and event inheritance. => 98_23_lima [MCC23/98] LIMA, M.J.D.; CARVALHO, S.E.R.; SILVA, M.V. An object-oriented framework for pattern assistants. 20 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Software patterns, at the architecture, design and language levels, are finding their way in object-oriented communities. New patterns are constantly being published, spanning different domains, and although few can be considered essential, to keep of new developments is not easy. To help designers cope with this difficulty, and to speed up and improve the quality of systems, automated development tools should include pattern facilities, for example to assist designers in the selection and detailing of patterns adequate to their development problems. This paper presents a domain and language-independent object-oriented framework for pattern assistants, constructed with the aid of well-known design patterns. => 98_24_andreatta.ps.gz [MCC24/98] ANDREATTA, A.A.; CARVALHO, S.E.R.; RIBEIRO, C.C. An object-oriented framework for local search heuristics. 13 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: In the study of heuristics for combinatorial problems, it is often important to develop and compare, in a systematic way, different algorithms, strategies, and parameters for the same problem. This comparison os often based not only by different implementation languages, but also by different architectures. This paper proposes a framework, described using design patterns, modeling different aspects involved in local search heuristics, such as algorithms for the cosntruction of initial solutions, methods for neighborhood generation, and movement selection criteria. Using this framework we fix a basic architecture and thus increase our ability to construct and compare heuristics. => 98_25_carvalho [MCC25/98] CARVALHO, S.E.R.; LEITE, J.C.S.P. Module Interconnection Features in Object-Oriented Development Tools. 12 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: The black-box reuse of library classes in the construction of an object-oriented (OO) application is difficult: the principle of information hiding may be violated if classes must know thier paterns, and code must be typically rewritten. One of the possible ways to increase class decouping and thus reuse is to employ interconnection languages to describe OO architectures. In this paper we present a decouping paradigm for individual classes or class collections that facilitates reuse, introducing interconnection features at the design and programming levels. We give examples in a new, second generation object-oriented development system, using asynchronous messages sent to generically identified receivers. => 98_26_silva [MCC26/98] SILVA, M.J.V.; CARVALHO, S.E.R.; KAPSON, J. Patterns for layered object-oriented applications. 10 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Three-layered architectures (presentation, business and persistence levels, for example) are sometimes recommended when developing business-related object-oriented applications. Using the increasingly popular fourth generation languages, however, layering is difficult: business rules are usually embedded in user interfaces, which may also directly access databases. In this paper, we present three patterns useful in the construction of object oriented applications accessing relational databases via fourth generation languages. => 98_27_costa.ps.gz [MCC27/98] COSTA, H.A.X.; MAFFEO, B.; SANCHEZ, M.L.A. SAME - Prototipo de um sistema para apoio a modelagem da essencia baseado no reuso em larga escala. 17 p. Port. E-mail: maffeo@inf.puc-rio.br Abstract: This work describes a protype intended to be an instrument for the elicitation of the desired functionality for a Conceptual Modeling Environment to support the creation of the Essence Model for an information system. The protype is user friendly and was developped following a large scale reuse strategy, based on commercially available application software. This strategy was intended to provide an experimental test for this kind of reuse which, suitably adapted, can be the basis for a generic method for rapid prototyping of information systems. => 98_28_braga.ps.gz [MCC28/98] BRAGA, C.O.; FONTOURA, M.F.M.C.; LUCENA, C.J.P.; MOURA, L.M. Using domain specific languages to instantiate OO frameworks. 21 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Prior research has shown that high levels of software reuse can be achieved through the use of object-oriented frameworks. An object-oriented framework captures the common aspects of a family of applications The framework also captures the design experience in producing the application, and thus, allows the designers and implementers to reuse this experience at the design and code levels. Despite of being a powerful design solution,frameworks are not always easy to use. This paper describes a technique thatcaptures domain concepts in domain specific languages (DSL) to help the framework user to create a specific application in an easier way, without worrying about implementation decisions and remaining focused on her problem domain. The specification written in the DSL is then translated to the framework instantiation code using a transformational system. => 98_29_rosseti.ps.gz [MCC29/98] ROSSETI, I.C.M.; RODRIGUEZ, N. Balanceamento de carga em uma implementacaoo distribuida do problema dos N-Corpos. 44 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: Load balancing has become a fundamental factor in the effective use of distributed-memory environments for parallel computation. This paper studies the application of load-balancing algorithms to a parallel simulation of the N-body problem. The Matrix Iterative Model is used as an unifying basis for the implementation of a load-balancing library. Experimental design and analysis techniques are used to examine application performance with the use of this library. => 98_30_veloso [MCC30/98] VELOSO, P.A.S.; HAEUSLER, E.H. Twoards a methodology for extracting programs and solutions from constructive proofs. 21 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: We introduce a general methodology for extracting problem-solving programs from constructive derivations, which is suggested by a problem-theoretic interpretation of intuitionism and by Martin-Lof's (ITT) Intuitionistic Type Theory. This methodology comes from a formal system related to intuitionism which incorporates two key ideas, namely manipulations with derivations and the possibiblity of distinct treatments for sorts and formulas, in contrast with others based directly on ITT. Moreover, this methodology cand be shown to be sound (correct) and complete (non-obtrusive). We use some examples to introduce the main ideas of this methodology and illustrate its usefulness. => 98_31_crespo.ps.gz [MCC31/98] CRESPO, S.; FONTOURA, M.F.M.C.; LUCENA, C.J.P. Ambientes para educacao baseada na Web e o modelo IMS/EDUCOM. 19 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This paper proposes a conceptual model for Web-based education environments (WBE), which was developed through a case study of various existent environments. This conceptual model is used as a basis for the comparison of the concepts and functionaly of the existent environments. The proposed conceptual model is compatible with the EDUCCOM/IMS platform, allowing content interoperability for the generated environments. The model implementation is made through an object-oriented framework and a domain specific language. => 98_32_franca.pdf [MCC32/98] FRANCA, L.P.A.; STAA, A.v.; LUCENA, C.J.P.L. Medicao de software para pequenas empresas: uma solucao baseada na Web. 23 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: The use of metrics is directly related to software process improvement. Measurement programs should be flexible and easily adaptable to the features of each organization. Moreover, in the context of small software business, measurement should be feasible in spite of the lack of resources. In order to produce measurement systems that face the needs of the dynamic reality of small business and support an incremental evolution, we have develped a meta-system that is capable of instatiating suitable measurement systems to each organization. The system generation is based on the generic measurent model strored in software engineering meta-environment. The measurement systems generated are Web-based applications. => 98_33_fontoura.ps.gz [MCC33/98] FONTOURA, M.F.M.L.; HAEUSLER, E.H.; LUCENA, C.J.P. The hot-spot relationship in OO framework design. 10 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The generalization from viewpoints is a key design concept in our framework design method. However, viewpoints are not generally designed to be flexible applications. The hot-spot relationship is a new relationship in object-oriented design that helps in this generalization, providing the flexibility properties in the derivation of the framework kernel. This paper presents our viewpoint-based framework design method, highlighting the role of the hot-spot relationship. Object calculus is used to formalize the relationship and prove that its semantics and prove that its semantics is provided by the design pattern essentials. => 98_34_ crespo.ps.gz [MCC34/98] CRESPO, S.; FONTOURA, M.F.M.C.; LUCENA, C.J.P.; MOURA, L.M. ALADIN: an architecture for learningware applications design and instatiation. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents an abstract software Architecture for Learningware Application Design and Instatiation (ALADIN), which is basedon a conceptual model for Web-based education (WBE) environments. ALADIN is designed through a combination of architectural patterns and implemented through an object-oriented framework and domain-specific languages (DSLs). The DSLs are used for framework instatiation to help the framework user to create a specific application in an easier way, without worring about implementation decisions and remaining focused on the problem domain. The specification written in the DSLs are then translated to the framework instatiation code using a transformational system. Utilization examples showing how WBE environments can be implemented with ALADIN are also shown. => 98_35_fontoura.ps.gz [MCC35/98] FONTOURA, M.F.M.C.; HAEUSLER, E.H.; LUCENA, C.J.P. A framework design and instatiation method. 36 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper describes a viewpoint-based design and instatiation method for object-oriented frameworks. Case studies have shown that high levels of software reuse can be achieved through the use of object-oriented frameworks. Although analysis and design methods, such as design patterns, meta-object protocol, refacturing, class organization, and behavior of modification for framework have been proposed to support framework development, there are still problem related to this approaches. The method proposed in this paper uses the concept of viewpoints and the hot-spot relationship in object oriented design to guide the designer on the identification of hot-spots in the structure of the framework and in the generation of the design patterns that implement each hot-spot. This paper also shows how the use of domain specifc languages (DSLs) can help in the framework instatiation process. The domainspecific language captures domain concepts and helps the framework user to create an application in an easier way, without concerning for implementation decisions while remaining focused on the problem domain. The specification writen in the DSL in then translated to the framework instatiation code through the use of transformational systems. A case study in the Web-based Education domain is presented to illustrate the method utilization. A formal specification of the design method using Z specification language is also presented. Through this formalization it is possible to precisely describe each method's step and to highlight its most important properties. => 98_36_albuquerque.ps.gz [MCC36/98] ALBUQUERQUE, A.L.P. Texturas em computacao grafica. 21 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Texture values can be produced by space-filling functions f(x,y,z) or 2D functions f(x,y). Different ways for applying these functions lead to interesting results. This work intends to discuss the synthesis of texture for representing realistic images. Many concepts and different techniques for texturing are examined and some images - obtained as a result of the implementation of some functions - are shown. => 98_37_paiva.pdf [MCC37/98] PAIVA, A.C.; RODRIGUEZ, N.; GATTASS, M. Tecnicas paralelas de rendering. 79 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: This work surveys the parallel techniques applied to the rendering process. The basic parallel concepts are revised from the point of view of the rendering process, and some software and hardware implementations are discussed. => 98_38_vidal.ps.gz [MCC38/98] VIDAL, M.E.F.; MAFFEO, B. Metodo para mapeamento e avaliacao de processos organizacionais. 23 p. Port. E-mail: maffeo@inf.puc-rio.br Abstract: This paper presents a method to map and to evaluate organizationalprocesses, to be employed in distinct phases of a reengineering initiative.According to this method, the definition of a new design for the process tobe innovated begins with the creation of the model of the essence of thesocio-technical system responsible for the process execution. This modelis a conceptual tool of Software Engineering used to represent what the system is expected to do, regardless to how the system will be implemented by means of a specific technological alternative. Conceptual tools of Software Engineering are also used to represent the current and innovated process design. The later must also be compared both quantitatively and qualitatively to the former order to evaluate its viability and opportunity, as well as the cost-effectiveness of the reengineering initiative. The evaluation proposed is to be supported by a commercial software tool widely used in project management. The method was tested in a case study for the goods' reception process of a department store. It was necessary to marginally extend and adapt the representation languages used to model the essence and to specify the design of the process in order to represent some specific features of organizational processes. => 98_39_crespo.ps.gz [MCC39/98] CRESPO, S.; LUCENA, C.J.P.; STAA, A.v. Um meta-ambiente para suporte a construcao sistematica de frameworks. 13 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we describe an environment that supports a design method for object oriented software in WEB, combining Frameworks and Design Patterns. This environment uses the concept of viewpoints and views-a relation in object-oriented design to guide the designer when identifying hot-spots in the structure of the framework. Case studies have shown that high levels of software reuse can be acheived through the use of object-oriented frameworks. It is possible to capture the common aspects revealed through the design experience acquired while designing a family of application. Although analysis and design methods such as design patterns, meta-object protocol, refactoring, class reorganization, behavior of modification for framework, have been proposed to support frameworks there are still problems related to framework creation. The use of an environment that gives support to the veiw-point concept and the flexibility relationships, hot-spot and of reuse by a view-a, proving a promising approach for this kind of problem, and an extension for the method in its applicability in order to accomplish reuse in large scale. => 98_40_carvalho [MCC40/98] CARVALHO, S.; LERNER, S.; LIFSCHITZ, S. An application framework or the parallel join operation in database systems. 17 p. Eng. E-mail: lifschitz@inf.puc-rio.br Abstract: We propose an object-oriented framework modeling one of the most frequently accessed and costly operations in parallel Database Systems: the parallel join. By incorporating the behavior of known algorithms and allowing the introduction of new ones, the framework can be used to compare algorithms and to determine the execution scenario an algorithm is best suited for. The framework independently captures a great variety of issues, such as different target parallel architectures, different load balancing procedures, and different synchronism disciplines. The proposed framework includes the classification of related algorithms into families, suggesting a taxonomy for join operation algorithms. => 98_41_porto [MCC41/98] PORTO, F.A.M.; SILVA, M.J.V.; CARVALHO, S.R.; MELO, R.N. Persistant object synchronization with active relational databases. 14 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: One of the most common client/server architectures in enterprise systems today is the combination of object-oriented applications with active relational database systems. With this combination, developers have to overcome a difficult problem: the impedance mismatch between the object-oriented and the relational models. To date, there are several incomplete approaches for describing the integration of static and dynamic aspects of objects into active relational databases. For example, in a previous paper, we proposed a technique for mapping the dynamic behavior of objects into active relational databases, using database triggers and stored procedures. However, an important issue missing from all these approaches is the synchronization between server tuples and client-cached objects. This paper extends our previous one, by providing an architecture based on a replication strategy that maintains server tuples and client-cached objects synchronized. This architecture automatically updates client-cached object versions when their corresponding server database tuples are updated. => 98_42_crespo.ps.gz [MCC42/98] CRESPO, S.; LUCENA, C.J.P.; STAA, A.v. FrameConstructor: uma ferramenta para suporte a construcao sistematica de frameworks. 45 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we describe an environment supports a design method for object oriented software in WEB, combining Frameworks and Design Patterns. This environment uses the concept of viewpoints and the views-a relation in object-oriented design to guide the designer when identifying hot-spots in the structure of the framework. Case studies have shown that high levels of software reuse can be acheived through the use of object-oriented frameworks. It is possible to capture the common aspects revealed through the design experience acquired while designing a family of application. Although analysis and design methods such as design patterns, meta-object protocol, refactoring, class reorganization, behavior of modification for framework, have been proposed to support frameworks there are still problems related to framework creation. The use of an environment that gives support to the view-point concept and the flexibility relationships, hot-spot and of reuse by view-a, providing a promising approach for this kind of problem, and an extension for the method in its applicability in order to accomplish reuse in large-scale. => 98_43_lucena.ps.gz [MCC43/98] LUCENA, C.J.P.; FUKS, H.; MILIDIU, R.; LAUFER, C.; BLOIS, M.; CHOREN, R.; TORRES, V.; DAFLON, L. AulaNet: ajudando professores a fazer seu dever de casa. 12 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present AulaNet, an environment for the creation and maintenance of Web-based courses designed for the layman. Why the layman? Because the teacher is the one who needs help in the task of creating a Web-based course. AulaNet separates content from navigation and relieves teachers from the Internet programming burden. It differs from other Web-based instruction environments because it lacks the physical elements of the traditional school which are ever present in most of the other environments. => 98_44_scuri.ps.gz [MCC44/98] SCURI, A.E.; SZENBERG, F.; SOUZA, C.S. Estudo de usabilidade do microsoft visual C++. 12 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: This work tries to identify the major usability problems related with Microsoft Visual C++, regarding to begginers, intermediate and advancedusers. We organize a test that follows a script, common to all user classes.The test was recorded with Microsoft Camcorder in Windows 95, but some important user actions were manual registered. At the end of the test, every user answered a questionnare, to show us the aplications facilities and dificulties. The results are presented in tables and in a descriptive conclusion. => 98_45_carneiro.ps.gz [MCC45/98] CARNEIRO, M.M.; VILAIN, P.; RENTERIA, R.P. Avaliação da usabilidade do programa para Imposto de Renda (IRPF98). 53 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work presents the usability analysis of IRPF98, which is the Brazilian software for the decaration of ncome taxes by individuals. At first, the evaluators tried to identify potential problems mainly related to usability. Then, some of these problems were chosen considering their importance and time constrints of this work. A test was defined fora each problem selected. Before applying the tests to the users, a pilot study was performed, thus resulting in some changes to the original tests. hree evaluators applied the final tests to a group of fifteen users. The results were used to verify the hypothesis defined by the evaluators. => 98_46_blois.pdf [MCC46/98] BLOIS, M.; CHOREN, R. Avaliacao sobre a interface do White Pine CU-SeeMe, v. 3.1. 35 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: This work presents a White Pine CU-See-Me v.3.1 interface evaluation process. It identifies some interface problems concerning its operation and interface elements through the observing and minitoring and user's opinions methods. At the end, we show the software interface quationable poits and make suggestions for its improvement. => 98_47_guellbarroso [MCC47/98] GUELL BARROSO, N.; SOUSA, M.V.V. Teste de usabilidade de software - um estudo de caso. 41 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Quality of use can be defined as the extent to which a product satisfaction when used under stated condition. We can measuere usability as the extent to which specified goals can be echieved with effectiveness, efficency and satisfaction by specified users, with specified tasks, in specified environments. In this work, our object of reesarch was Eudora Light version 3.0 freware by Qualcomm. We elaborated a script to test issues of usability. First, we detected some ordinary tasks from software that works with electronic mail that have problems. Some tasks were grouped to make our script to usability of software. We appreciated the test and comported or not our hypothesis. We used some methods to analyzed software usability. => 98_48_ciarlini [MCC48/98] CIARLINI, A.E.M.; FURTADO, A.L. The plan recognition / plan generation. 13 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: Any computerized application-domain environment equipped with a Log of the execution of predefined operation can be regarded as a repository of narratives concerning the activities observed in the mini-world of interest. The analysis of these narratives leads to the construction of a library of typical plans, which can be used by Plan-recognition / Plan-generation algorithms to help prediction, decision making and the adoption of corrective measures with respect to ongoing activities. The proposed goal-oriented paradigm emerges as a promising research line to help understanding, and hence better modelling and using, so diverse domains as business information systems, literacy genres of narratives, and object-oriented software based on frameworks. => 98_49_plastino.ps.gz [MCC49/98] PLASTINO, A.; RIBEIRO, C.C.; RODRIGUEZ, N.L.R. Uma taxonomia de algoritmos de balanceamento de carga para aplicacoes SPMD. 33 p. Port. E-mail: celso@inf.puc-rio.br Abstract: We propose a taxonomy of load balancing strategies for SPMD (Single Program, Multiple Data) parallel applications. This taxonomy leads to a classification of local balancing algorithms designed for data parallel applications in MIMD architectures. This classification allows more thorough comparison studies of different load balancing techniques, helping application programmers in the task of identifying the most suitable strategy for some given SPMD application under development. => 98_50_cysneiro.ps.gz [MCC50/98] CYSNEIROS, L.M.; MACEDO-SOARES, T.D.L.v.A.; LEITE, J.C.S.P. Using ISO 9000 to elicit business rules. 12 p. Eng. E-mai: julio@nf.puc-rio.br Abstract: Business rules have been largely used in database modeling and more recently in the field of information technology, but rarely in requirements engineering. This article will focus on business rules as prescribed procedures that should be followed to achieve the business's goals. The ISO 9000 documentation includes policies, procedures and instructions to assure the final product's conformance with ISO 9000 requirements. Partly for this reason, it is contended here that ISO 9000 standards and associated documents can be of a great help for business rules elicitaion. The authors' main crotibution is to propose a conceptual model for not only eliciting business rules, but also integrating them into a software requirements baseline model. This proposal uses ISO 9000 characteristics and integrates them with the idea of natural language-based requirements description. => 98_51_lucena.ps.gz [MCC51/98] LUCENA, C.J.P. (coord.); CRESPO, S.; LIMA, F.; Fontoura, M.F.; PORTO, F.; COLCHER, S., (eds.) 1o. Workshop Pronex sobre Frameworks. 70 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: During the last years, Frameworks have been an important research issue in the Software Engineering area. This technology has been increasingly adopted within differen reesarch and development domains. At the PUC-Rio Computer Science Department, several research topics within specific domains have been working in order to use the framework technolgy as a means of increasing quality, reusability, organization and flexibility in both domain specific modeling and software cosntruction. The Mobile Project (PRONEX) aims to approximate the diferrent efforts stimulating cooperation among those groups. For that sake, diring the year 1998, a series of seminars were held providing a forum for discussion of the work in progress. In order to finish the year's activities, the 1st. Pronex Frameworks Workshop was held on December 15o. and 21o. under the coordination of Prof. Carlos Jose Pereira de Lucena. This technical report compiles the submitted position papers. Further information can be accessed at http://www.les.inf.puc-rio.br/~pwpf. => 98_52_aragao.ps.gz [MCC52/98] ARAGAO, M.V.S.P.; PALMEIRA, M.M. Tabu serach and strong cutting planes for the flow shop scheduling problem. 8 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: We present a Tabu Search procedure for the Flow Shop Scheduling problem (FSP) where strong cutting planes are used to implement an intensification mechanism. These cutting planes were proposed by Bellmore and Ratliff for the Set Covering problem and are strong in the sense that they also cut integer feasible solutions, but only solutions that are dominated by a known one. We show how to efficiently construct these cuts for the FSP and propose a penalty scheme to consider their violation in the resulting Tabu Search procedure. Finally, we present computational results, on benchmarks instances proposed by Taillard, which indicate that a significant improvement is obtained. => 98_53_uchoa.ps.gz [MCC53/98] UCHOA, E., ARAGAO, M.V.S.P. Vertex-disjoint packing of two Steiner trees: polyhedra and branch-and-cut. 13 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: Consider the problem of routing the electrical connections among two large terminal sets in circuit layout. A realistic model for this problem is given by the vertex-disjoint packing of two Steiner trees (2VPST), which is known to be NP-Complete. This work presents an investigation on the 2VPST polyhedra. The main idea is to depart from facet-defining inequalities for a vertex-weighted Steiner tree polyhedra. Some of the inequalities are proven to also define facets for the packing polyhedra, while others can be lifted to derive new important families of inequalities, including proven facets. Separation algorithms are also presented. The resulting branch-and-cut code has an excellent performance and is capable of solving problems on grid graphs with up 10000 vertices and 5000 terminals in a few minutes. ----------------------------------------------------------------------------- ----------------------------------------------------------------------------- 1999 => 99_01_lerner [MCC01/99] LERNER, A.; LIFSCHITZ, S.; ARAGAO, M.V.S.P. An online approach for parallel join algorithms analysis. 13 p. Port. E-mail: lifschitz@inf.puc-rio.br Abstract: In this work, we propose a methodology for parallel join algorithms evaluation based on competitive analysis. Such algorithms may be seen as online ones, as load balancing decisions are often made without precise knowledge of important input parameters. We identify three different instances of online problems in the join operation and propose a metric for quality of solution assessment valid for them. The metric is independent of algorithm, parallel architecture and load balancing technique and is the corner of the proposed method. Moreover, we suggest, as part of the competitive analysis work, a taxonomy for adversaries used on worst and average case analysis. => 99_02_cassino.ps.gz [MCC02/99] CASSINO, C.; IERUSALIMSCHY, R.; RODRIGUEZ, N.L.R. LuaJava - A scripting tool for Java. 8 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: Scripting languages are becoming more and more important as a tool for software development, as they provide great flexibility for rapid prototyping and for configuring componentware applications. In this paper we present LuaJava, a scripting tool for Java. LuaJava adopts Lua, an dynamically typed interpreted language, as its script language. Great emphasis is given to the transparency of the integration between the two languages, so that objects from one language can be used inside the other like native objects. The final result of this integration is a tool that allows the construction of configurable Java applications, using off-the-shelf components, in a high abstraction level. => 99_03_paiva.pdf [MCC03/99] PAIVA, A.C.; SEIXAS, R.B., GATTASS, M. Introducao a visualizacao volumetrica. 145 p. Port. E-mail: gattass@inf.puc-rio.br Abstract: A volumetric data set is a collection of data in which each data has an associated location in the three-dimensional space. In this work we discuss the techniques that handle these data sets to generate arbitraries views of the volume. We show the main applications that use these techniques, classify the algorithms, and discuss some implementation issues. => 99_04_paiva.pdf [MCC04/99] PAIVA, A.C.; GOMES, J. Visualizacao volumetrica em multiresolucao. 84 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: A volumetric data set is a collection of data in which each data has an associated location in the three-dimensional space. In this work we review the wavelets theory and discuss tha application of this technique to the visualization of volumetric data. We show the main algorithms, and discuss some implementation issues. => 99_05_schmidt.pdf [MCC05/99] SCHMIDT, A.E.; GATTASS, M.; CARVALHO, P.C.P. Combined 3D visualization of volume data and polygonal surfaces using a Shear-Warp algorithm. 25 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: The present paper presents a study on integration between Shear-Warp and Z-Buffer algorithms, and extends the Shear-Warp algorithm to handle scenes composed of both volume and polygonal data. As volume data usually has a different resolution from that of the final image, in which Z-Buffer renders the polygonal data, several variants for this integration are analysed. Results are shown to support some conclusions on the trade-off quality-versus-time that can be expected. => 99_06_rivera.ps.gz [MCC06/99] RIVERA ESCRIBA, L.A.; CARVALHO, P.C.P.; VELHO, L. Modelagem e manipulacao de objetos de geometria complexa. 38 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: In this paper, we focus the modeling and manipulation of surfaces of complex objects of arbitrary form, with the objetive of simulating the deformation of its surfaces. The object is modeled using cubic B-splines having a large number of control points. For the local deformation of the surface it is used a direct manipulation technique applied at a point that is determined by an adequate binary search, which also gives the segment of surface containing the point. In order to produce a realistic deformation of the surface, we explore the multiresolution representation of the object, applying the local deformation through the multiresolution surfaces level. => 99_07_bragranca.ps.gz [MCC07/99] BRAGRANCA, R.C.M.; HAEUSLER, H.E; PEREIRA, L.C. A new cut-free sequent calculus for S5. 23 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: The definition of a cut-free sequent calculus for S5 is a well-known problem. Traditional cut-elimination strategies do not seem to work for S5 and the main reason for this fact is that sequent calculus systems do not seem to be closed under "permutative" reductions. On the other hand, this problem is already solved for at least one Natural Deduction formalization of S5, where strong structural restrictions on the form of the branches of derivations guarantee a normalization result. The aim of the present work is to define a new sequent calculus, (SC5) for S5 where these strong global structural restrictions are simulated. => 99_08_silva.ps.gz [MCC08/99] SILVA, A.R. Pequi: uma implementacao de PKIX para comunicacoes seguras. 73 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Although the need for public key infrastructure has not been recognised for the widespread use of secure communication, the lack of easily available implementations has severely limited the use of public key cryptography to a small number of specific applications, with specialised solutions. Pequi is such an implementation designed to address a number of realistic wide-scale applications of this technology. The PKI implemented by Pequi is based on the integration of publicly available implementations of different components, to provide a network of certification authorities (CAs), which use LDAP for maintaining a distributed repository of certificates. Such implementation also performs automatic certificate path processing. => 99_09_cafezeiro.ps.gz [MCC09/99] CAFEZEIRO, I.L.; HAEUSLER, E.H. Programming language syntax: expressing sharing. 30 p. Port. E-mail: hermann@inf.puc-rio.br Absytract: This text presents an operator to syntactically express sharing. The operator will be defined very abstractly, not considering a particular application, and will deal with collection of entities instead of single entries. => 99_10_desouza.ps.gz [MCC10/99] de SOUZA, C.S. Semiotic engineering principles for evaluating end-user programming environments. 23 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: End user programming (EUP) environments are difficult to evaluate empirically. Most users don't engage in programming, and those who do are often discouraged by the complexity of programming tasks. Often the difficulties arise from the programming languages in which users are expected to express themselves. But there are other difficulties associated to designing extensions and adjustments to artifacts that have been originally designed by others. This paper characterizes EUP as a semiotic design process, and presents two principles that can be used to illustrate the distinctions between the various kinds of techniques and approaches proposed in this field. They introduce a preliminary theoretical model of EUP and thus facilitate the definition and interpretation of empirical evaluation studies. They also describe some specific semiotic qualifications that more usable and applicable EUP languages could be expected to have. => 99_11_desouza.ps.gz [MCC11/99] de SOUZA, C.S.; PRATES, R.O.; BARBOSA, S.D.J. A method for evaluating software communicability. 10 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Computer tools are rational artifacts determined by the cultural background of designers and users. Communicating design assumptions, choices, and goals is a complex task, subject to constant misunderstandings that lead to a wide spectrum of breakdowns in human-computer interaction. This paper presents a method to help HCI practitioners evaluate the communicability of interactive systems, not only in terms of the effectiveness of their direct messages to users but also of the afforded conversational paths that should allow breakdowns to be circumvented. The whole proposal is tied to a semiotic background within which systems are like "discourse deputies" of their designers. => 99_12_uchoa.ps.gz [MCC12/99] UCHOA, E.; ARAGAO, M.V.S.P. Vertex-disjoint packing of two Steiner trees: polyhedra and branch-and-cut implementation issues. 23 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: Consider the problem of routing the electrical connections among two large terminal sets in circuit layout. A realistic model for this problem is given by the vertex-disjoint packing of two Steiner trees (2VPST), which is known to be NP-complete. This work presents an investigation on the 2VPST polyhedra. The main idea is to start from facet-defining inequalities for a vertex-weighted Steiner tree polyhedra. Some of these inequalities are proven to also define facets for the packing of polyhedra, while others are lifted to derive new important families of inequalities, including proven facets. Separation algorithms are provided. Branch-and-cut implementation issues are also discussed, including some new practical techniques to improve the performance of the algorithm. The resulting code is capable of solving problems on grid graphs with up to 10000 vertices and 5000 terminals in a few minutes. => 99_13_fiorini [MCC13/99] FIORINI, S.T.;LEITE, J.C.S.P.; LUCENA, C.J.P. Describing process patterns. 16 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: This article proposes a new way of describing patterns in the software process domain. We propose an overall organization (community, family and individual) for process patterns. Most of the proposed patterns' descriptions rely heavily on natural language. We have analysed some of these proposals and presented an alternative based on a structured natural language description. Our strategy leads to a better presentation of the patterns as well as a reduction of ambiguity. Our proposal is integrated with an existing process environment. We differentiate among process pattern, standard process and solution process, pointing out that these notions are different and several times are taken for granted. => 99_14_castilho.pdf [MCC14/99] CASTILHO, R.T.L., comp., org. Catalogo de teses e dissertacoes do Departamento de Informatica da PUC-Rio 1992-1998. 33 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Lists the 160 master dissertations and 54 doctoral thesis presented at the Departamento de Informatica of PUC-Rio from 1992 to 1998. => 99_15_batista.ps.gz [MCC15/99] BATISTA, T.V.; RODRIGUEZ, N.L.R. Configuracao de aplicacoes baseadas em CORBA. 23 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: Recently much effort has been devoted to realize the ideal of building applications using plug-and-play software components. The development of this kind of applications separates components programming from the description of the application structure (configuration programming). For interoperability, standarization infra-strucutures offer support for heterogeneous components to work together. In this class, the CORBA standard is playing an important role. Configuration of CORBA applications is not in line with proposals in the configuration paradigm because the component interface does not describe the required services. Also, there is need for dynamic access to new components. This work describes how an interpreted language can deal with these issues, acting as a glue language between components and supporting dynamic reconfiguration of CORBA based applications. => 99_16_lima.pdf [MCC16/99] LIMA, F.; TANAKA, A.; MELO, R.N. Integracao de regras ativas e dedutivas no paradigma de orientacao a objetos. 20 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: The use of rules in Database Systems increases language expressiveness and consequently, increases the processing power of Databases. The main objective of this work is to investigate different possibilities of integrating active and deductive rules in databases. Another approach is also presented where the Object Oriented (OO) paradigm is used initially as data model and language and later is enriched with active and deductive rules. Therefore, this work does not intend to evaluate an isolated aspect of using active rules and deductive rules, or even the utilization of OO paradigm in databases, but mainly to explore the combinations of these approaches and the possible advantages. => 99_17_cunha.ps.gz [MCC17/99] CUNHA, C.K.V.; QUENTAL, V.; SOUZA, C.S.; SCHWABE, D. End user programmingmodel for Workflow Web Based Systems. 18 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: This paper presents the current stage of development of an End User Programming (EUP) model for Workflow Web Based Systems. The model is described and applied to a real system extension scenario. It is possible to see how the usage of this model allows the task of application maintenance to be shared among professional programmers and empowered end users. Our future step will be to relate this work to other EUP proposals and to describe the semiotic aspects that guide the development of this model. => 99_18_lima.pdf [MCC18/99] LIMA, F.; CASANOVA, M.A.; MELO, R.N. Revisitando tecnicas de banco de dados no contexto da Web. 12 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: Database integration has been a research topic for over a decade. Although there are several proposals in the literature, the subject reemerges due to its frequent necessity. Companies have systems (legacy or not) that need to be integrated, and users often need to query disperse data sources. These examples are two common uses of database integration, still up to date. Many of the techniques already researched are still valid, however, nowadays it is necessary to consider a new environment that is becoming widespread in companies and users' realities, the World-Wide-Web (WWW). In this context, it is necessary to reevaluate the existing techniques. This work is a partioal contribution to this challenge, while revisiting database techniques in the Web context. => 99_19_lima.pdf [MCC19/99] LIMA, F.; MELO, R.N. Consultas em sistemas gerenciadores de bases de dados heterogeneos. 12 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: Query Processing is a vital part of any Database Management System (DBMS). The presence of heterogeneity is systems that need to be integrated, insert new query processing issues that need to be addressed. Several research project were conducted in the filed of Heterogeneous Database Management System (HDBMS). More recently, due to the intense use of the Internet, the mediator architecture is being used as alternative, in this environment where the data sources can more unpredictable. This work presents several approaches, as well as their related architectures. Recent research projects using mediators is also described. => 99_20_rivera.ps.gz [MCC20/99] RIVERA ESCRIBA, L.A.; MENEZES, I.F.M.; CARVALHO, P.C.P. Modelagem e dinamica de estruturas articuladas para propositos de animacao em computacao grafica. 29 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Motion generation of articulated rigid bodies for computer graphics animation is a problem analyzed with the purpose of obtaning a real-time and computationally cheap animation. Its complexity lies in the control of holonomic restrictions due to the articulations. In the present work, we seek to emphasize the geometric representation of the articulated objects using hierarchical graphs, the dynamic formulation of its movements based on the Euler and Newton principles, and its recursive resolution, which allows a linear solution involving 3x3 matrices. => 99_21_bergmann [MCC21/99] BERGMANN, U.; SANT'ANNA, M.; LEITE, J.C.S.P. Transformation circuit visual designer: an interface for component-based development. 31 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: Transformation Circuit [1] (TC) is a new idea in the field of transformation systems. The metaphor with electrical circuit is a way of bringing the concept of components to the construction and use of software transformations and was the result of the integration between the areas of software architecture and transformation systems. The main advantage of a component based approach to transformation systems is the possibility of dealing with large numbers of transformations as well as meliorating its user-friendliness. This article gives an overview of transformation circuits and focus its attention on the tool, TCVD - Transformation Circuit Visual Designer, a special software system built to provide a graphical user interface to the use and construction of transformation circuits. => 99_22_barbosa.ps.gz [MCC22/99] BARBOSA, C.A.M.; FEIJO, B.; DREUX, M.; BENTO, J.; MELO, R.; SCHEER, S. Distributed data model for collaborative CAD environments based on design history. 16 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: This paper presents a distributed dynamic data model that aligned with the concepts of design as problem solving and design history. It is proposed a model for distributed CAD data that allows teams to work cooperatively, being able to access and change information in distributed engineering database systems, at run time. The virtual prototype is distributed over different networks with different platforms, operating systems, design teams and non-CAD users. The artifact specification is defined in a dynamic process, and a tree is used to provide user interaction to establish the object model for the sought artifact. The description regarding each object is stored as tuples in tables of conventional and heterogeneous databases. These objects are organized in such a way to allow the description of the design evolutionary aspects. Besides, the artifact properties can be associated with certain subject of interest or operational flow within the organization. Several associated activities within the design productive process (organization hierarchy, planning, process workflow, artifact specification, etc.) are integrated in the architecture of the proposed CAD environment. = > 99_23_szwarcman.ps.gz [MCC23/99] SZWARCMAN, D.; FEIJO, B.; COSTA, M. A framework for networked emotional characters. 12 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: This paper presents a framework for distributed emotional characters on a computer network and proposes innovative concepts for shared emotional state management. Firstly, behavior accuracy is defined in terms of three types of behavior (physical, procedural and emotional). Secondly, visual soundness - a concept inversely proportional to behavior accuracy - is associated with the autonomy of clones. Thirdly, the usual concept of dead reckoning is relaxed by exploring the idea of autonomy, which is the basis for networked emotional characters. The framework built on the top of Bamboo [7] can gracefully cope with reactive environments producing good levels of smooth animation, visual soundness, behavioral accurancy and collision avoidance. => 99_24_plastino.ps.gz [MCC24/99] PLASTINO, A.; RIBEIRO, C.C.; RODRIGUEZ, N. Uma ferramenta para desenvolvimento de aplicacoes SPMD com suporte para balanceamento de carga. 49 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: We present in this work the tool SAMBA for parallel applications development. SAMBA (Single Application, Multiple Load Balancing) supports the development of SPMD applications, offering several load balancing strategies. The tool facilitates the identification and selection of appropriate load balancing algorithms for applications under development. We describe SAMBA's functionality and architecture, as well as its programming model. We also describe the algorithms implemented in the load balancing library. => 99_25_ripper [MCC25/99] RIPPER, P.S.; FONTOURA, M.F.; MAIA NETO, A.; LUCENA, C.J.P. V-Market: A framework for agent mediated e-commerce systems based on virtual marketplaces. 13 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Software agent technology is still an emerging technology, and as such, agent based software design is stillin its infancy. Software agents have just started to be used in the e-commerce domain, and they are already starting to create a series of new possibilities to this arena. Agents can be used to automate as well as to enhance many stages of the traditional consumer-buying behavior process. This paper proposes a software engineering approach to the design of agent mediated e-commerce systems, through the definition of an object-oriented framework. The paper presents the underlying concepts and the architecture of the environment, showing how it allows developers to customize virtual marketplaces and define transaction categories on demand, incorporating many possible products and services that can be traded online. => 99_26_fontoura.ps.gz [MCC26/99] FONTOURA, M.; HAEUSLER, E.H.; LUCENA, C.J.P. A systematic approach for framework development. 35 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents several object-oriented design techniques and discusses their ability to represent frameworks adequately. Based on the analysis of these techniques requirements for a design representation for frameworks are proposed. A design language based on extensions to UML is introduced to satisfy the requirements by representing frameworks variation points and their instantiation process as first-class citizens. These extensions are defined using the UML extensibility mechanisms: stereotypes, tagged values, and constraints. The use of the language to systematize framework implementation is discussed. An analysis of the design language is presented through two large case studies that show how it can be used to assist framework development and instantiations. The semantic of the new constructors is formally described to allow the verification of the development and instantiation activities. => 99_27_baruque.ps.gz [MCC27/99] BARUQUE, C.B.; MELO, R.N. Estendendo um banco de dados relacional extensivel para aplicacoes OLAP. 24 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: Nowadays, executives do not complain any longer about the lack of information. The new problem encountered by them lies on the fact that each department of an enterprise has a limited vision of it. Users are not allowed to have a holistic view of the enterprise since they can only access "their own data". A new technology is being used to integrate corporate data in such a way that users have access not only to their own data but also to other departments' data and external data as well which may influence their decisions. This is the Data Warehousing technology (DW) where all data of an enterprise is integrated in a corporate database, based on which OLAP (On-Line Analytical Processing) applications are run allowing for data analysis and business forecasting. The typical OLAP users are called Knowledge Workers. They use this technology to process Executive Information Systems (DSS). The data depicts the executive vision of the enterprise, in which data are analised from various perspectives. We propose [BARU97] the utilization of an extensible relational database, the POSTGRES, which allows the storage of this sort of data together with its manipulation, through the creation of specific functions. => 99_28_baruque.ps.gz [MCC28/99] BARUQUE, C.B.; LEITE, J.C. Auditoria em Data Warehouse. 28 p. Port. E-mail: julio@inf.puc-rio.br Abstract: DW is a high value asset, not only for its costs, but for the information that it holds. Since it is a corporate data repositary from which strategic decisions are made, it is necessary to emphasize the need for safeguarding this important asset. Thus, in order to give an overview about the state of tha art of DW auditing this article presents a well accepted process for the development of DW with associated control objectives; enumerates control issues with possible solutions in light of common business requirements; presents possible security measures for DW (including the risks associated with the Internet) and suggests an audit program to ensure data quality, emphasizing that DW is a corporate asset whose risks should be kept to a minimum. => 99_29_barbosa [MCC29/99] BARBOSA, A.C.P.; MELO, R.N. Usando SGBDH para acessar e disponibilizar informacoes na WEB. 29 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: The Internet, particularly the Web, has permitted to democratise the information through more practical and efficient ways for its access and divulging. As a consequence, on the Internet there's a set of distributed and heterogeneous information (Web sites) which needs to be integrated for many applications. The HDBMS is being proposed as one of the solutions to the integration of heterogeneous and autonomous sources, without the necessity of changing them. This work presents a study about the usage of HDBMS to permit the access and the availability of information in the Web. => 99_30_barbosa [MCC30/99] BARBOSA, A.C.P.; TANAKA, A.K. SGBDH como integrador de informacoes ambientais heterogeneas. 37 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The environment preservation is becoming an increasing preocupation on all over the world. The pollution and the environment destruction have been causing natural problems and accidents in many poor and rich countries. For a better planning, looking for a sustainable development, many institutions, public or not, started to collect and store environmental data and develop Environmental Information Systems (FIS). So, nowadays there is a set of distributed and heterogeneous information which must be integrated to solve many applications. Heterogeneous Database Management Systems (HDBMS) have been proposed as one of the solutions to the integration of both autonomous and heterogeneous data sources without changing them. This work presents a study about the usage of HDBMS to permit the integration and the access to the environmental heterogeneous and distributed information. =>99_31_silva.ps.gz [MCC31/99] SILVA, V.T.; LUCENA, C.J.P. ContentNet; um framework para interoperabilidade de conteudos educacionais utilizando a plataforma EDUCAUSE - IMS. 13 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The World Wide Web original organization assumed that its stared information was to be read by machines without concern to the possibility of machines interpreting this information. The growth of the amount of information available on the Web made it more complex to search, have access to and to obtain information on the Web. To c ope with this problem the platform IMS has been proposed. A consortium formed by academic institutions, companies and government agencies is developing the platform. The goal of the platform is to promote the viability and growth of online activities in the area of education. One of the most important activities of the consortium in Internet based learning with the possibility of interoperability among different environments for Web-based education. Based on the porposed platform and the need for content exchange among different AuleNet servers we have developed an object oriented framework to enable the description, localization and use of educational content available in servers which are compatible with the IMS platform. => 99_32_uchoa.ps.gz [MCC32/99] UCHOA, E.; ARAGAO, M.P.; RIBEIRO, C.C. Preprocessing steiner problems from VLSI layout. 20 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: VLSI layout applications yield instances of the Steiner tree problem over grid graphs with holes, which are considered hard to be solved by current methods. In particular, preprocessing techniques developed for Steiner problems over general graphs are not likely to reduce significantly such VLSI instances. We propose a new preprocessing procedure, combining earlier ideas from the literature in such a way that they are now effective over VLSI problems. Testing this procedure over the 116 instances available in the SteinLib, we obtained significant reductions within reasonable computational times. These reductions allowed a branch-and-cut to solve 28 out of 32 open instances in the SteinLib, some with more than 20,000 edges. => 99_33_baruque.ps.gz [MCC33/99] BARUQUE, C.B.; FEIJO, B. Um estudo sobre a integracao das areas de mineracao de dados e visualizacao de dados. 38 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: DW is a high value asset, not only for its costs, but for the information that it holds. Since it is a corporate data repository from which strategic decisions are made, it is necessary to emphasize the need for safeguarding this important asset. Thus, in order to give an overview about the state of the art of DW auditing this article presents a well accepted process for the development of DW with associated control objectives; enumerates control issues with possible solutions in light of common business requirements; presents possible security measures for DW (including the risks associated with the Internet) and suggests an audit program to ensure data quality, emphasizing that DW is a corporate asset whose risks should be kept to a minimum. => 99_34_fontoura.ps.gz [MCC34/99] FONTOURA, M.; LUCENA, C.J.P.; ANDREATTA, A.; CARVALHO, S.E., RIBEIRO, C.C. Using UML-FW to enhance framework development: a case study in the Local search heuristics domain. 13 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Currently, frameworks are most commonly represented through design diagrams written in standard object-oriented analysis and design methods (OOADMs). However, these design notations do not provide elements for identifying the frameworks variation points and how the instantiation should be performed. Therefore, users have to rely on extra documentation in order to create framework instances, which is not always available. This work proposes an extension to UML that explicitly represent all the information required for framework development and instantiation. The approach is illustrated through a large real-world framework for local search heuristics. ----------------------------------------------------------------------- ----------------------------------------------------------------------- 2000 => 00_01_assis.ps.gz [MCC01/00] ASSIS, R.L.; FUKS, H. Um framework conceitual de percepcao para ambientes virtuais utilizando a tecnologia groupware. 38 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: We believe that supporting awareness of other person's actions improves the performance of groupware environments. In this article, a theory of awareness is developed. A conceptual framework is presented to address some groupware design issues: what information to track, how to provide it and how to manage the control of it. The proposed framework extends exisitng research. It provides designers with a vocabulary and a set of ground rules for analysing working situations in order to improve coordination. => 00_02_barbosa.ps.gz [MCC02/00] BARBOSA, A.C.P.; LUCENA, C.J.P. Integracao de frameworks de software. 25 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: Heterogeneous Database Management System (HDBMS) has been proposed as one of the solutions to the integration of autonomous, heterogeneous and distributed databases. The HDBMS needs flexibility to adapt itself to different environments and component systems. In the Computer Science Department at PUC-RIO, Brazil, it has been developed the HEROS project, an object oriented HDBMS whose architecture was defined using the frameworks techniques. In order to the advancement of this project, it is necessary a research about a better alternative to the components framework integration of the HEROS Framework. This work presents a study about some patterns to the components integration and also about software frameworks integration. => 00_03_hansen.ps.gz [MCC03/00] HANSEN, P.; CHAUNY, F.; ARAGAO, M.P.; JAUMARD, B.; PERRON, S. Probabilistic satisfiability with imprecise probabilities. 9 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: Treatment of imprecise probabilities within the probabilistic satisfiability approach to uncertainty in knowledge-based systems is surveyedand discussed. Both probability intervals and qualitative probabilities are considered. Analytical and numerical methods to test coherence and bound theprobability of a conclusion are reviewed. They use polyhedral combinatorics and advanced methods of linear programming. => 00_04_cunha.ps.gz [MCC04/00] CUNHA, C.K.V.; QUENTAL, V.S.T.D.B.; SOUZA, C.S.; SCHWABE, D. A Model for extensible Web based information intensive task oriented systems. 33 p. Eng. E-mail: dschwabe@inf.puc-rio.br Abstract: This paper proposes representation dimensions of models of eXtensible Web-based Information-intensive Task-orientated Systems (X-WITS). The proposal is expressed in a unifying language that acts as the base for the construction of extensions and generation of texts, which are descriptions or narratives of interaction flows between end-users and X-WITS. The general architecture of X-WITS is presented, as well as a walkthrough of an extension scenario which enlightens the main characteristics of the proposal. The proposal is then discussed in view of its theoretical underpinnings: Semiotic Engineering and End-User Programming. => 00_05_lemos.pdf [MCC05/00] LEMOS, M.; CASANOVA, M.A. Algoritmos para analises de sequencias. 73 p. Port. E-mail: casanova@inf.puc-rio.br Abstract: Sequence comparison is one of the most important primitive operations in Computational Biology. It is the basis for more elaborated manipulations. The algorithm for comparing two sequences is based on dynamic programming. Both the basic algorithm and its extensions have quadratic time complexity, which makes them unsuitable for database searches. For this reason, families of heuristic algorithms were developed to improve the response time of database searches. The FAST and BLAST are the best known families. This work describes the basic algorithm, its extensions and the FAST and BLAST families. => 00_06_moura.ps.gz [MCC06/00] MOURA, L.M.; LUCENA, C.J.P.; HAEUSLER, E.H. Analysis of parallel programs. 12 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Parallel implementations are of growing interest, as they are more and more supported by modern hardware. However, despite its importance there is little work on classical data flow analysis for parallel languages. Probably, the reason for such dificiency is that a naive adaptation of classical data flow analysis fails and the straightforward correct adaptation needs an unacceptable effort, which is caused by considering all possible execution traces of a parallel program. Therefore, we propose an approach to implement program analyzers for parallel languages based on theories of Abstract Interpretation, Model Checking and Constraint Solving. We also consider features such as dynamic memory allocation (aliases) and dynamic process creation, which are often ignored by other approaches. => 00_07_moura.ps.gz [MCC07/00] MOURA, L.M.; LUCENA, C.J.P.; HAEUSLER, E.H. A Modular implementation of action notation. 15 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper describes the implementation of a modular interpreter for the new modular semantics of action notation, the formal notation used in action semantics. Our interpreter supports nondeterministic features of action semantics, and allows the user to explore different execution traces. The implementation is based on a new logic programming language called PAN. A brief and pragmatic introduction to modular structured operational semantics is also provided. => 00_08_moura.ps.gz [MCC08/00] MOURA, L.M.; LUCENA, C.J.P.; HAEUSLER, E.H. Automating the generation of program analysis and verification tools. 39 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The use of domain-specific languages (DSLs) is an interesting alternative for software development. DSLs increases productivity, reliability, and flexibility. However, implementing them is often difficult and costly. The problem is even worse if simulation, analysis and verification tools are desired. Presently, program analysis and verification is at best acheived by a hand-crafted tool specific to a programming/specification language. Since the manual construction of tools is expensive, they are hard to obtain and not often used, limiting the quality of the implemented software. We have proposed for the automated generation of simulation, analysis and verification tools for programs/specifications based on machine-processable formal definitions of the language's operational semantics. we also use amodular approach for language semantics that allows us to reuse semantic modules and fragments of already defined tools. In this article, the theoretical foundations and algorithms of our framework are described. Although, the main motivation for our framework is to automate the development of program analysis and verification tools for DSLs, it can also be used in the development of such tools for general-purpose languages. => 00_09_silveira.ps.gz [MCC09/00] SILVEIRA, M.S.; BARBOSA, S.D.J.; MONTEIRO, C.C.O.; SOUZA, C.S. The role of designer-generated scenarios in developing Web applications and their help systems. 13 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Due to the increasing changes in the working practices of organizations brought about by web technology, developers now face not only the new technological challenges, but also the communicative challenges involved in a multidisciplinary development team. Complex communication process involve human-computer interaction, human-human interaction mediated by computers, and human-human interaction about computer artifacts. In this paper, we present a communicative approach that makes use of scenarios produced by designers and developers throughout the development of web applications. We describe a case study, focusing on the communicative aspects involved both in the process of software development, and in the users' interactions with the final product. The use we made of the scenarios is best illustrated in the final product by the help system, whose architecture is also described. => 00_10_lima.ps.gz [MCC10/00] LIMA, M.J.; RODRIGUEZ, N.; IERUSALIMSCHY, R. Funcoes remotas como valores de primeira classe em um sistema de objetos distribuidos. 11 p. Port. E-mail: noemi@inf-puc-rio.br Abstract: This paper describes a system for distributed programming based on the interpreted language Lua. Like functional languages, Lua supports functions as first-class values. The system proposed in this work extends this feature to remote functions. Processes communicate using remote procedure calls which accept functions as arguments or returned values. The solution combines expressive power with transparency in the manipulation of distributed resources. The paper also shows how distributed objects can be implemented using remote functions references and properties already provided by Lua, emphasizing the flexibility of the system. => 00_11_fuks.ps.gz [MCC11/00] FUKS, H. Aprendizagem e trabalho cooperativo no ambiente AulaNet. 20 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: This paper presents AulaNet, an environment for the creation, participation and maintenance of Web-based courses. It differs from other Web-based instruction enviroments because it lacks the physical elements of the traditional school which are ever presnt in most of the other environments. AulaNet does not interfere in the developemnt of didactic contents. Those could be developed using regular tools like any word processor. That gives the teacher the opportunity to use the work that is already in its hard disk to create its online course. AulaNet relieves teachers from the Internet programming burden. => 00_12_vilain.pdf [MCC12/00] VILAIN, P.; SCHWABE, D.; de SOUZA, C.L. Use cases and scenarios in the conceptual design of Web applications. 12 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: In this work we describe a method for gathering requirements and synthesizing the conceptual design of web applications. Our method emphasizes the importance of modeling user interaction and involving users in this process. It starts by capturing the requirements expressed in use cases and user are also useful as a requirement validation tool and as input for obtaining the conceptual schema. We show how to derive user interaction diagrams from use cases and how to obtain a conceptual schema from these diagrams. Conceptual design is followed by navigation design, which is a crucial phase for the success of web application developemnt. We finally describe how techniques used in this method can be extended to support specially the navigational design stage. => 00_13_silveira.pdf [MCC13/00] SILVEIRA, M.; LUCENA, C.J.P. Frameworks para as interfaces de busca e catalogacao de conteudo do ContentNet. 26 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The IMS standard for interoperability of educational contents meets the needs for information exchange in this area. Due to the standard's complexity, this study proposes frameworks for user interfaces mostly for people with little or no experience in IMS. These frameworks were built for the user interfaces of search and content cataloguing in ContentNet, as instantiated in the AulaNet environment. => 00_14_carneiro.pdf [MCC14/00] CARNEIRO, M.M.; VELHO, L. Um estudo de algoritmos para visualizacao simultanea de dados volumetricos e superficies poligonais. 54 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Some scientific visualization applications requires rendering not only of volume data but also of polygonal surfaces in the same scene. This work presents some basic direct volume rendering algorithms in addition to some changes in them so as to allow rendering of both representations at the same time. Hybrid Ray Casting and Shear-Warp algorithms are discussed and the main problems related to the integration of volume and surfaces are presented. This study allow us evaluate compuattional cost and image quality in these hybrid algorithms. => 00_15_carneiro.pdf [MCC15/00] CARNEIRO, M.M.; MARTHA, L.F. Visualizacao interativa 3D de dados volumetricos. 47 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Volume rendering is a method of extracting useful information from a data set in the tridimensional space. However, this method requires the use of adequate tools that allows the exploration of the data in a flexible and interactive fashion. This work presents a set of techniques that helps the development of user interfaces for volumetric data manipulation. This study allows us to identify the most important aspects of the architecture of these interfaces. => 00_16_carneiro.pdf [MCC16/00] CARNEIRO, M.M.; GATTASS, M. Metodos de aceleracao de rendering de volumes. 35 p. Port. E-mail: gattass@inf.puc-rio.br Abstract: Volume rendering is a method of creating bidimensional images from a data set in the tridimensional space. However, when the 3D data set is too large, this method has several limitations, especially requiring too much computation time to generate good quality images. This work presents some volume rendering acceleration techniques in order to allow interactive volume visualization. => 00_17_lucena.ps.gz [MCC17/00] LUCENA, C.J.P.; FUKS, H.; BLOIS, M.; CHOREN, R.; ASSIS, R.L.; ROBICHEZ, G. Tecnologia de informacao aplicada a educacao: um (meta) curso no ambiente AulaNet. 9 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This paper present a course developed at the Computer Science Department at the Catholic University of Rio de Janeiro (PUC-Rio). AulaNet is an environment for the creation, participation and maintenance of Web-based courses developed at the software Engineering Laboratory at PUC-Rio. The aim of the course is to show how to apply information technology to the teaching / learning process using distance learning environments like AulaNet. In this work is shown how to use groupware technolgy to give support, facilitate and manage cooperative learning. => 00_18_oliveira [MCC18/00] OLIVEIRA, T.C.; CARVALHO, S.E.R.; LUCENA, C.J.P. DSSFrame - a decision support system framework with agents. 28 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The decision making process is a cyclic process involving choice within a solution space. In the choice process, the data involved, the algorithm chosen and the path (sequence of steps) used to accomplish the solution are all very important. In this work we report the development of a software framework designed to put together the four main aspects of systems that aid the decision making process: the graphical interface, the database system, the mathematical support and an agent support. Composing those areas, we have developed a system that interacts with the end user through a mining and guiding process to improve the quality of the chosen solution. => 00_19_markiewicz.pdf [MCC19/00] MARKIEWICZ, M.E.; LUCENA, C.J.P.; COWAN, D. Taming access control security: extending capabilities using "views" relationship. 24 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The "views" relationship indicates how an object-oriented desing can be clearly separated into objects and their corresponding interface. This paper uses the concept of "views" in order to achieve full separation between the application and security policy in the design and implementation. The result is achieved by providing a model for capabilities using "views" that is richer than the traditional capability model. In addition, a distributed access control model is shown to be effective through the use of Secure Object Communication Channels (SOCCs) to allow for secure connections at the abstract object level. This security is applicable in the e-commerce application domain, bringing security directly to the application abstraction level. => 00_20_blois.ps.gz [MCC20/00] BLOIS, M.; FUKS, H.; LUCENA, C.J.P. The e-society groupware approach. 12 p. Eng. E-mail: fuks@inf.puc-rio.br Abstract: New Economy, Knowledge Management, Knowledge Community, Intellectual Capital and .Com Enterprises are examples of terms currently used to illustrate the transformation of the social, economic, cultural and technological order. With this "new way of doing things" the work processes are completely reformulated and the vision of a single worker performing his own tasks apart from the task being performed by the others in the team is clearly being replaced by a more sinergistic group work approach. To support the demand for new technologies that enable a workgroup to perform tasks and to create a common process understanding, the Software Engineering Laboratory (LES) at the Catholic University of Rio de Janeiro (PUC-Rio) is developing groupware infrastructure for application in different domains like e-education, e-commerce and e-business. In this paper, we will briefly discuss the transformation of work relationships that are taking place in our society and detail two technologies developed at LES to foster the adoption of the Web as an arena for business and education. The first technology discussed is the AulaNet environment for creation, maintenance, administration and participation in web based courses. Then we present the Scriba tool which facilitates the development of Java based Web applications showing its use in the AulaNet usage in PUC-Rio and the results of a initial analysis of the Scriba tool. Finaly, we present some general research directions taken at the laboratory for the development of new e-commerce, e-business and e-education technologies. => 00_21_maia.ps.gz [MCC21/00] MAIA NETO, A.; LUCENA, C.J.P. CommercePipe: a framework for the creation of commerce channels on the Internet. 11 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Based on the study of different electronic commerce software applications and mainly inspired by the research work and software evolution carried out in the Vmarket framework, this article presents the Commercepipe Object Oriented Framework as an alternative for the instatiation of Consumer to Business Virtual Markets on the Internet. Using Software Agents Technology combined with the WAP (Wireless Application Protocol) as a wireless interface to access Internet services, the framework proposes a new approach for C2B markets, bringing a new vision of how sellers and buyers can interact to perform commercial transactions through the Internet. => 00_22_chavez.ps.gz [MCC22/00] CHAVEZ, C.F.G.; CRUZ, S.O.; CARVALHO, S.E.R. An action semantics for the D2L design description language. 18 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: D2L is a language for expressing object-oriented designs. It provides mechanisms for the representation of classes and their relationships, object lifecycles, scenarios, state-dependent behavior and object communication in general, as well as some less conventional features, such as several new semantics for object behavior and some predefined automatic relationships between objects. This work reports our ongoing effort in developing a complete formal specification for D2L using Action Semantics. The first stage of this effort comprises the formal specification of D2L dynamic semantics. With the complete action-semantic specification for D2L, we hope to provide an executable model for designs expressed in D2L that canbe simulated and also automatically translated to source code in some object-oriented languages. => 00_23_werneck [MCC23/00] WERNECK, R.F.; RIBEIRO, C.C. Sorting methods for small arrays. 14 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: We present and compare four efficient quadratic, comparison-based algorithms for small arrays and (for three of them) almost sorted inputs. In addition to the well-known insertion sort and selection sort, we analyze 2-insertion sort (a variation of insertion sort) and stacksort (based on selection sort). We show that the new algorithms perform fewer comparisons on average than their original versions. The theoretical analysis is confirmed by experimental data, which include promising results concerning the use of 2-insertion sort in conjunction with quicksort. => 00_24_franca.pdf [MCC24/00] FRANCA, L.P.A.; STAA, A.v. A construction process for artifact generators using a CASE tool. 9 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: Artifact generators are a way to reduce production costs and time to market, and to increase reliability of artifacts within a given application domain. However, in order to achieve a more widespread usage of artifact generators, the difficulty and the cost of their development and maintenance must be reduced. This report presents a low-cost artifact generator development and maintenance process. The process departs from an example of a simple artifact within the target application domain. Given this example and considering all possible artifacts of the domain, all commonalties and variables are identified, as well as the properties that the specification of each specific target artifact must satisfy. The example is then modified in order to contain specific generator tags at all variable points. These tags establish the transformation rules that must be applied to the specification in oder to generate the application. We have used a CASE tool, which allows the programming of the specification editors and of the generators. By means of another tool, the tagged example artifact is transformed into a component, which is combined with the transformation library, yielding the generator code to be internalized by the CASE tool. The process has been sucessfully used to transform specifications into applications, components and documentation. => 00_25_choren.ps.gz [MCC25/00] CHOREN, R.; FUKS, H.; LUCENA, C.J.P. Using a group supprt system to meet educational objectives. 11 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This work presents a WWW-based Group Support System (GSS) to facilitate the teaching/learning process. This work also describes our experiences over four successive editions of a pilot course offered using the GSS. We show the methodologies used and draw some results, experiences and impressions from this experience. We further describe planned future research, including discussion of the possibility of using this method to support distance education. => 00_26_sauerbronn.pdf [MCC26/00] SAUERBRONN, L.E., FEIJO, B., DREUX, M. Transparent video watermarking. 13 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: This paper describes the watermarking procedure to embed copyright protection into generic signals. A brief explanation concerning the Discrete Cossine Transform (DCT) is presented, showing how can it be obtained from a FFT (Fast Fourier Transform) algorithm. Finally, it applies its use into image and video sequences and presents two embeding methods. One intends to ilustate what has been expalined herein and the other presents the state of the art in video watermarking. => 00_27_veloso [MCC27/00] VELOSO, P.A.S. Qualitative reasoning with "Generally": a logical approach - Part I. 25 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Assertions and arguments involving qualitative notions occur often, not only in ordinary language, but also in some branches of science. The qualitative character may be apparent from "qualifiers" such as 'generally', 'many', 'almost all', etc., or objects termed 'representative', 'typical' or generic'. A precise treatment of such arguments has been a basic motivation for logics for qualitative reasoning. We will examine logical systems, with generalized quantifiers for them, also handling 'generic' objects. We also discuss some fundamental issues involved, such as the need for having, and comparing distinct qualitative notions relative to various universes, as well as some aparent misconcptions. These (monotonic) logics, with simple sound and complete deductive calculi, are proper conservative extensions of classical first-order logic, with which they share several properties. Other possible applications for these and related logics for qualitative reasoning are indicated, as are some connections with certain (philosophical) aspects of Mathematics, (Natural) Science and Artificial Intelligence. => 00_28_peixoto.pdf [MCC28/00] PEIXOTO, A.; GATTASS, M. Reconstrucao de superficies a partir de secoes bidimensionais. 25 p. Port. E-mail: gattass@inf.puc-rio.br Abstract: This work discusses the problem of reconstructing surfaces from cross-sectional contours. The contours are situated on parallel planes and are distributed along the direction of one axis of the coordinate system. The basic idea is to interpolate the contours, using a specific method, to recover the surface. The interpolation process depends on the applied reconstruction method. It will be discussed the main reconstruction techniques, how each approach treats the problems and which solution they've adopted. => 00_29_veloso [MCC29/00] VELOSO, P.A.S. Qualitative reasoning with "Generally": a logical approach - Part II. 33 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Assertions and arguments involving qualitative notions occur often, not only in ordinary language, but also in some branches of science. The qualitative character may be apparent from "qualifiers", such as 'generally', 'many', 'almost all', etc., or objects termed 'representative', 'typical' or 'generic'. A precise treatment of such arguments has been a basic motivation for logics for qualitative reasoning. We will examine logical systems, with generalized quantifiers, for expressing and reasoning about such notions. Here, we focus mainly on assertions involving 'generally', and present logical systems with generalized quantifiers for them, also handling 'generic' objects. We also discuss some fundamental issues involved, such as the need for having, and comparing, distinct qualitative notions relative to various universes, as well as some and complete deductive calculi, are proper conservative extensions of classical first-order logic, with which they share several properties. Other possible applications for these and related logics for qualitative reasoning are indicated, as are some connections with certain (philosophical) aspects of Mathematics, (Natural) Science and Artificial Intelligence. => 00_30_ururahy.ps.gz [MCC30/00] URURAHY, C.; RODRIGUEZ, N.L.R.; IERUSALIMSCHY, R. ALua: a event-driven communication mechanism for parallel and distributed programming. 26 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: This paper presents ALua, an event-driven communication mechanism based on the interpreted language Lua. This mechanism takes advantage of the interpreted nature of Lua to define messages as chunks of code which are executed by the receiver. The event-driven distributed programming model is discussed and demonstrated with a set of examples. To illustrate the flexibility of the mechanism, the paper describes the implementation of an asynchronous agents team and a parallel programming paradigm. The applicability of ALua in real-sized parallel applications is studied by comparing the implementation of two parallel applications written in ALua with their compiled counterparts. => 00_31_garcia.pdf [MCC31/00] GARCIA, A.F.; CUNHA, L.M. Avaliacao em instrucao baseada na web. 31 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The World Wide Web and related technologies propiciate adequate environments for the teaching/learning process, removing time and spatial barriers. Issues such as evaluation of the learning process and performance verification of students in web courses are crucial for the success of on-line courses. The evaluation in distance learning has to be part of the whole process of learning, i.e., it should not be dealt as an isolated issue. Evaluation plays a very important role into the learning process since it helps to know the students and determine whether or not the goals of the courses have been achieved. It also provides feedback for the instructors and students. The main goals of this work are: (i) to review evaluation concepts from the literature; (ii) to identify open problems regarding evaluation in web-based courses; (iii) to show the methods and tools for evaluation in this context; (iv) to present some evaluation aspects of educational environments; and (v) to suggest future works. => 00_32_gerosa.pdf [MCC32/00] GEROSA, M.A.; FUCKS, H.; LUCENA, C.J.P. Categorizacao de mensagens nos servicos de grupo de discussao e grupo de interesse do ambiente AulaNet. 13 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: This paper presents a study about Web based textual asynchronous discussion, where software like gIBIS and AulaNet are analyzed. From this study and from the observation of the discussion that took place during one semester of the Information Technology Applied to Education course, we propose modifications to the course and a new structure for the discussion. The modifications and the structure will be tested in a new edition of the course. AulaNet is a software for the creation, participation and maintenance of Web-based courses. => 00_33_veloso [MCC33/00] VELOSO, P.A.S. Qualitative reasoning with 'generally': a logical approach (Part III). 38 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Assertions and arguments involving qualitative notions occur often, not only in ordinary language, but also in some branches of science. The qualitative character may be apparent from "qualifiers", such as 'generally', 'many', 'almost all', etc., or objects termed 'representative', 'typical' or 'generic'. A precise treatment of such arguments has been a basic motivation for logics for qualitative reasoning. We will examine logical systems, with generalized quantifiers, for expressing and reasoning about such notions. Here, we focus mainly on assertions involving 'generally', and present logical systems with generalized quantifiers for them, also handling 'generic' objects. We also discuss some fundamental issues involved, such as the need for having, and comparing, distinct qualitative notions relative to various universes, as well as some apparent misconceptions. These (monotonic) logics, with simple sound and complete deductive calculi, are proper conservative extensions of classical first-order logic, with which they share several properties. Other possible applications for these and related logics for qualitative reasoning are indicated, as are some connections with certain (philosophical) aspects of Mathematics, (Natural) Science and Artificial Inteligence. => 00_34_peixoto.pdf [MCC34/00] PEIXOTO, A.; CARVALHO, P.C.P. Esqueletos de objetos volumetricos. 26 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Skeltons of graphical objects are powerful tools that represent the object in a simple and efficient way. Volumetric objects are represented by a large quantity of information. Skeltons extraction, among other applications, can be used to calculate a compact representation of volumetric objects. This work presents a general framework of the main techniques used to compute skeltons of volumetric data. We will discuss the main problems and the different solution approaches. => 00_35_peixoto.pdf [MCC35/00] PEIXOTO, A.; VELHO, L. Transformadas de distancia. 30 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The computation of distance transforms has applications in several areas of Computer Graphics. One of the main difficulties in computing a distance function involves the transition between the continuous and discrete universes. When studied in the continuous universe, a method may present completely different properties than those exhibited in the discrete universe. This work presents a general framework about distance transforms, emphasizing mainly raster data (images and volumes). We will also discuss the interface propagation problem as an approach to distance transforms. => 00_36_silveira.pdf [MCC36/00] SILVEIRA, M.S.; BARBOSA, S.D.J.; SOUSA, C.S. Getting users to understand via help systems. 13 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: Help systems are often underutilized, because they fail to clarify user's doubts. One of the reasons for this shortcoming is the fact that help systems are usually developed at the end of an application development process. This paper presents an approach to the development of help systems throughout applications' design and development processes, supported by both a model and an architecture of online help systems. This work is developed in the context of semiotic engineering, in which interactive applications are one-shot messages from designers to users, about how to exchange messages with the applications in order to achieve a range of goals. => 00_37_milidiu.ps.gz [MCC37/00] MILIDIU, R.L.; PESSOA, A.A.; LABER, E.S. Pipeline transportation of petroleum products. 23 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: In this paper, we introduce a new model for pipeline transportation of petroleum products. We use a direct graph with arcs representing pipes and nodes representing locations. Moreover, we define an order as a requirement to transport an amount of a given product. Initially, we assume that all the ordered volumes are unitary. Orders are grouped into packages that are received on-line. A feasible solution is a pumping sequence for each new package such that all residual orders from the previous package are satisfied. The pumping restriction is required because products must be "pushed" by other products to move in pipelines. Our goal is to minimize the total pumping cost. Furthermore, we consider the problem of finding a strategy for the next order package, when the graph is acyclic. For that, we propose the Batch-to-Pipe Assignment (BPA) algorithm. This algorithm finds a minimum cost solution in (formula) time, for m pipelines, n locations and r unitary orders. Moreover, we observe that this solution is also optimal for on-line package sequences. Finally, we show that results can be extended to deal with general graph and with non-unitary orders. => 00_38_markiewicz.pdf [MCC38/00] MARKIEWICZ, M.; LUCENA, C.J.P. Understanding objet-oriented framework engineering. 11 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Framework engineering is an emerging area within the software engineering discipline. The framework development approach must be considered when one must meet requirements that are prone to fast change as it occurs in new areas such as e-commerce and Web-based education applications. The present paper discusses the pros and cons of using the framework development approach as well as pitfalls and open problems associated with the framework technology. => 00_39_braga.ps.gz [MMC39/00] BRAGA, C.de O.; HAEUSLER, E.H.; MESEGUER, J.; MOSSES, P.D. Maude action tool: using reflection to map action semantics to rewriting logic (extended version). 29 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: Action semantics (AS) is a framework for specifying the semantics of programming languages, in a very modular and readable way. Recently, the operational semantics of action notation (action semantic's specification language) has been rewritten using Modular SOS (MSOS), a new modular approach for specifying operational semantics. The new modular specification of action notation facilitates the creation of extensions to action semantics, to deal with new concepts, such as components. The Maude Action Tool uses the reflective capabilities of rewritting logic, implemented on the Maude system, to create an executable environment for action semantics and its potential extensions. This is achieved by a mapping between the MSOS and rewriting logic formalisms which, when applied to the MSOS semantics of each facet of action notation, yields a corresponding rewrite theory. Such rewrite theories are executed on action programs, that is, on the action notation translation of a given program P in a language L, according to L's action semantics. => 00_40_zonenschein.pdf [MCC40/00] ZONENSCHEIN, R.; GOMES, J.; VELHO, L.; RODRIGUEZ, N. Towards interactivity on texturing implicit surfaces: a distributed approach. 6 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: We describe a distributed system for texture mapping implicit surfaces. The method uses a particle system associated with the gradient vector field of an implicit function to acquire texture coordinates at a support surface. As each particle trajectory is independent of each other, this method has a special suitability to run in parallel. Our results show good improvement as more processors are added to the system, with speedups of up to 13 with 32 processors, performance such as required by an interactive system. => 00_41_ciarlini [MCC41/00] CIARLINI, A.E.M.; FURTADO, A.L. Aiding the construction of libraries of typical plans. 32 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: Databases able to represent, not only facts, but also events in the mini-world of the underlying information system can be seen as repositories of narratives about the agents and objects involved. The events treated in our approach are those attributed to executions of predefined application-oriented operations. This work addresses the identification of typical plans adopted by agents, by analysing a Log registering the occurence of events, as represented by executions of such operations. The analysis is done by applying a previously formulated set of goal-inference rules to sequences of interrelated events, called plots, taken from the Log. The obtained Library of Typical Plans, together with the goal-inference rules, constitute the behavioural level of our proposed three-level conceptual schemas for the specification of information systems. A prototype Prolog implementation of the method for extracting typical plans is operational. A simple example is used to illustrate the discussion. => 00_42_veloso [MCC42/00] VELOSO, P.A.S. Ultrafilter logic has interpolation and related properties. 11 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We show that ultrafilter logic has interpolation and some properties, such as joint consistency and modularity. By adapting a strategy used for classical first-order, we establish a joint model existence lemma, from which these properties, as well as Lowenheim- Skolem and completeness, follow. => 00_43_toscani [MCC43/00] TOSCANI, L.V.; VELOSO, P.A.S. On the time complexity of divide-and- conquer algorithms. 15 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The time complexity of algorithms designed by divide and conquer is analyzed from a general formulation of the method. Typical cases are emphasized and illustrated with familiar algorithms. Some methodological aspects are also considered. => 00_44_veloso [MCC44/00] VELOSO, P.A.S. On a logical approach to qualitative reasoning with 'several'. 17 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine logical systems, with generalized quantifiers, for expressing 'several' and reasoning about it. The primary motivation is a qualitative approach to assertions and arguments involving such vague notions, which occur often both in ordinary language and in some branches of science. Some intuitions underlying (a version of) 'several' are rendered precise by means of families of subsets. This gives a monotonic and conservative extension of classical first-order logic, with which it shares interesting metamathematical properties. Its sorted version captures notions with appropriate behavior. Our logic belongs to a family of closely connected systems with generalized quantifiers for reasoning about qualitative notions. => 00_45_veloso [MCC45/00] VELOSO, P.A.S. On a logic for qualitative reasoning with 'most' and 'typical'. 19 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine a logical system, with generalised quantifiers, for expressing 'most' and 'typical' and reasoning about them. The intuition of 'most' as "all but for a 'negligible' set of exceptions" is rendered precise by means of filters. This gives a monotonic and conservative extension of classical first-order logic, with which it shares several properties. For typical reasoning, special individuals. are introduced by means of 'most' and internalised as constants, thus producing conservative extensions where one can reason about them as intended. Our logic, though related to default logics, is quite different, belonging to a family of closely connected systems with generalised quantifiers for qualitative reasoning about vague notions. => 00_46_markiewicz.pdf [MCC46/00] MARKIEWICZ, M.E.; LUCENA, C.J.P.; COWAN, D.D. Abstract design views and design patterns. 28 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Software reuse can be defined as the creation of new software systems using old artifacts. The Abstract Design Views model was created with reuse in mind, allowing the designer to apply separation of concerns from the design to the implementation. Using a reuse taxonomy, this model will be analyzed and categorized. Even further, using design patterns it will be shown how Abstract Design Views can be realized and implemented. => 00_47_rosseti.ps.gz [MCC47/00] ROSSETI, I.; ARAGAO, M.P.; RIBEIRO, C.C., UCHOA, E.; WERNECK, R.F. Instancias para o problema de Steiner em Grafos. 18 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: In this work, 33 Steiner problems in graph's instances are proposed. They are based on otimization problems as set covering, code covering and Steiner triples systems. These instances are interesting because, in most of them, a good gap between linear relaxation and primal solution was obtained. Moreover, for some of these instances, the optimal solution was easily calculated. ------------------------------------------------------------------------ ------------------------------------------------------------------------ 2001 => 01_01_casanova.pdf [MCC01/01] CASANOVA, M.A.; LEMOS, M. Optimized buffer management for sequence comparisom in molecular biology databases. 21 p. Eng. E-mail: casanova@inf.puc-rio.br Abstract: Comparing sequences - nucleotide, aminoacid - is one of the basic operations every Molecular Biology database must support. There are two well known sequence comparison algorithms, FAST and BLAST, the latter being more popular (and many variations thereof). We propose in this paper a buffer management strategy to optimize the simultaneous execution of a set P of BLAST processes. The essence of the strategy is to partition P into subsets P1,...,Pn and to allocate a separate set Bi of buffers to each partition Pi. All sequences in the database will then be cycled through the buffers in Bi so that all BLAST processes in Pi will perform their sequence comparison synchronously. We first show that finding the partition that minimizes overall process delay is NP-complete. We then describe a heuristics that is computationally feasible and yet obtains a near optimal solution. => 01_02_veloso.ps.gz [MCC02/01] VELOSO, P.A.S. On some meanings of 'generally' and 'rarely'. 11 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine some meanings of 'generally' and 'rarely'. The primary motivation is a precise approach to assertions and arguments involving such vague notions, which occur often both in ordinary language and in some branches of science. We focus mainly on the intended meanings of such assertions by analysing some basic intuitions and their underlying presuppositions. This leads to distinguishing various versions according to their behaviour. => 01_03_veloso.ps.gz [MCC03/01] VELOSO, P.A.S. On some postulates for 'generally' and 'rarely'. 16 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine some postulates for 'generally' and 'rarely'. The primary motivation is a precise approach to assertions and arguments involving such vague notions, which accur often both in ordinary language and in some branches of science. Analysis of some basic intuitions and their underlying presuppositions leads to various distinguishing versions according to their behaviour. We then propose some postulates aiming at characterising the families of subsets corresponding to these notions. => 01_04_veloso.ps.gz [MCC04/01] VELOSO, P.A.S. On some logics for qualitative reasoning about 'generally'. 20 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: We examine logical systems, with generalised quantifiers, for expressing vague notions, such as 'generally', and reasoning about them. The primary motivation is a precise approach to assertions and arguments involving such vague notions, which occur often both in ordinary language and in some branches of science. Basic intuitions about 'generally' are rendered precise by means of appropriate families of subsets. This gives monotonic and conservative extensions of classical first-order logic, sharing with it various properties. Our logics, though related to default logics, are quite different, belonging to a family of closely connected systems with generalised quantifiers for qualitative reasoning about vague notions. => 01_05_renteria.ps.gz [MCC05/01] RENTERIA, R.P.; MILIDIU, R.L. APLS: a fast approximate algorithm for partial least-squares. 15 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: APLS, an approximate algorithm for solving the Partial Least-Squares problem is presented. When dealing with more than one dependent variable in the standard PLS modeling, one must compute eigenvectors of the mixed independent and dependent variables matrix, thus introducing a time overhead in the algorithm. APLS provides an aproximate method for this calculation with competitive modeling error and improved running time. In our experiments, APLS shows a 40% faster running time when compared to the standard PLS algorithm. => 01_06_abelem.pdf [MCC06/01] ABELEM, A.J.G.; STANTON, M.A.; RODRIGUEZ, N. QoS fim a fim atraves da combinacao entre servicos integrados e servicos diferenciados. 17 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: Several alternatives for offering end-to-end QoS in IP internetworks have been proposed over the last few years. Recently, researchers of the IETF ("Internet Engineering Task Force") have proposed a model which combines the integrated services/RSVP (intserv) and differentiated services (diffserv) architectures. In this scheme, the border routers between one region and another play fundamental role, as they are responsible for mapping QoS functionality between the different regions. In this article, an agent for NS simulator (Network Simulator) is presented, which was developed to perform tasks in support of this mapping, which include the choice of a suitable Per-Hop Behavior (PHB), appropriate policing at the border of the diffserv region, and admission control in accordance with the resources available in the diffserv regions. => 01_07_rosseti.ps.gz [MCC07/01] ROSSETI, I.; ARAGAO, M.P.; RIBEIRO, C.C.; UCHOA, E.; WERNECK, R.F. New Benchmark instances for the Steiner problem in graphs. 6 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: In this work, 50 Steiner problems in graph's instances are proposed. They are based on otimization problems as set covering and code covering. These instances are interesting because, in most of them, a good gap between linear relaxation and primal solution was obtained. => 01_08_medina.ps.gz [MCC08/01] MEDINA, M.T.; RIBEIRO, C.C.; SOARES, L.F.G. Automatic scheduling of hypermedia documents with elastic times. 17 p. Eng. E-mail: lfgs@inf.puc-rio.br Abstract: The problem of automatic scheduling hypermedia documents consists of finding the optimal starting times and durations of objects to be presented, so as to ensure spatial and temporal consistency of the presentation while respecting limits on shrinking and stretching the ideal duration of each object. The combinatorial nature of the minimization of the number of objects whose duration is modified makes it most difficult objective to be tackled by optimization algorithms. We formulated this scheduling problem as a mixed integer programming problem and we report some preliminary investigations and computational results. We propose an original approach to the minimization of the number of objects which are shrinked or stretched. A simple primal heuristic based on variable fixations along the solution of a sequence of linear relaxations of the mixed integer programming formulation is described. Computational experiments on realistic size problems are reported. The effectiveness of the heuristic in finding good approximate solutions within very small processing times makes of it a quite promising approach to be integrated within existing document formatters to perform compile time scheduling or even run time adjustments. We also discuss results obtained by Lagrangean relaxation and propose a dual heuristic using the dual multipliers and modified costs, which consistently improves the solutions found by the primal heuristic. => 01_09_silva.pdf [MCC09/01] SILVA, O.R.; GARCIA, A.F.; LUCENA, C.J.P. Achieving system-level and agent-level dependability in multi-agent systems. 15 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Development of multi-agent object-oriented systems is complicated by two main factors: the increasing complexity associated with their system-level and agent-level properties and the need to provide their dependability. This paper explores the recent advances of separation-of-concerns techniques to deal with the increasing complexity in developing dependable multi-agent object-oriented software. We propose a software architecture which: (i) uses aspect- oriented design and programming to handle separately each agency property and facilitate the provision of fault tolerance at the agent-level, and (ii) adopts a reflective associative blackboard architecture in oreder to manipulate separately each property and fault tolerance activities at the system-level. We also demonstrate our multi-agent approach through the Portalware system, a web-based environment for the development of e-commerce portals. => 01_10_gerosa.pdf [MCC10/01] GEROSA, M.A.; FUKS, H.; LUCENA, C.J.P. Uso da categorizacao e estruturacao de mensagens para dinamizar a discussao e reduzir a sobrecarga de informacao em cursos via Internet. 17 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This paper shows how the use of categorization and structuring of messages in asynchronous textual communication tools could be useful in courses delivered via Internet in order to organize the argumentation and guide the participants to reflect about their messages. Although the use of categorization causes an increase in the total number of messages, there is a reduction at the information overload. The use of message categorization in a distance course through the AulaNet environment elaborates on how to define and improve the set of categories. => 01_11_fuks.pdf [MCC11/01] FUKS, H.; GEROSA, M.A.; LUCENA, C.J.P. The development and application of distance learning courses on the Internet. 14 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents the methodology, results and difficulties encountered in the development and delivery of a course through the Internet. The course, which is about the application of information technology to education, is being delivered using the AulaNet environment,which is groupware for the creation, participation and maintenance of We-based courses. A model for group work is provided. This paper also shows how this kind of environment can be used to provide support, and to facilitate and manage cooperative learning. => 01_12_gerosa.pdf [MCC12/01] GEROSA, M.A.; FUKS, H.; LUCENA, C.J.P. Desenvolvimento e aplicacao de cursos totalmente a distancia na Internet - um estudo de caso. 17 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents the methodology, the results and the difficulties found in the development and delivery of a course through the Internet. The course is about the application of information technology to education. The course is being delivered using the AulaNet environment, a groupware for the creation, participation and maintenance of Web-based courses. This paper also shows how this kind of environment can be used to give support, facilitate and manage cooperative learning. => 01_13_silveira.pdf [MCC13/01] SILVEIRA, M.S.; BARBOSA, S.D.J. Revelando as Affordances do Designer via sistemas de Help e interjeicoes de comunicabilidade. 41 p. Eng. E-mail: simone@inf.puc-rio.br Abstract: Traditional online help is often function-oriented, unrelated to users' tasks and not situated at users' current context of interaction. This is due mainly to the help development strategy, and to the lack of a help model that takes into account typical users' task flows. In addition to a help model, we also need adequate access structures to the various components of the help system, each providing a different perspective on help content. This paper proposes the integration of a help model with communicability concepts, both based on Semiotic Engineering. Our goal is to provide users with better access and content, which are designed to clarify users' specific doubts, as expressed by users themselves, during interaction. => 01_14_garcia.pdf [MCC14/01] GARCIA, A.F.; SILVA, V.T.; LUCENA, C.J.P.; MILIDIU, R.L. An aspect-oriented design approach for multi-agent systems. 19 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Objects and agents have many similarities, but agents are also driven by beliefs, goals, capabilities, plans, and a number of agency properties such as autonomy, adaptation, interaction, learning and mobility. Moreover, cooperating software agents must incorporate different collaborative capabilities in order to work together in heterogeneous contexts. In practice, a complex application is composed of objects and multiple types of agents, each of them having distinct agency properties and capabilities. An additional difficulty is that these capabilities and a properties typically overlap and interact with each other, and a disciplined scheme to composition is required. This paper dicusses software enginnering approaches for multi-agent systems, and presents a new approach for building multi-agent object-oriented software from early stage of design. This approach (i) describes structured integration of agents into the object model, (ii) incorporates flexible facilities to build different types of software agents, (iii) encourages the separate handling of each property and capability of an agent, (iv) provides explicit support for disciplined and transparent composition of agency properties and capabilities in complex software agents, and (v) allows the production of agent-based software so that it is easy to understand, maintain and reuse. The proposed approach explores the benefits of aspect-based design and programming for the incorporation of agents in object-oriented systems. We also demonstrate our multi-agent approach through the Portalware system, a web-based environment for the development of e-commerce portals. => 01_15_milidiu.pdf [MCC15/01] MILIDIU, R.L.; PESSOA, A.A.; LABER, E.S. On-line pipeline transportation of petroleum products with no due dates. 24 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: In this paper, we introduce a new model for pipeline transportation petroleum products without due dates. We use a directed multigraph G where arcs represent pipes and nodes represent locations. Moreover, we define an order as a requirement to transport an amount of a given product. Orders are grouped into packages that are received on-line. For this model, we give a necessary and sufficient condition for the existence of a feasible pumping sequence for the next order package. Furthermore, we propose the Batch-to-Pipe Assignment (BPA) algorithm for the case we where all ordered volumes are unitary. This algorithm tests the feasibility condition and, if is satisfied, gives a feasible solution for the next order package in O (r3) time, where r is the number of orders. If the multigraph G is acyclic, then BPA leads to an optimal solution for the on-line problem. In addition, we prove that no algorithm is (1.25 - 0.625/n)-competitive against an adaptive adversary, and no randomized algorithm is (1.125 - 0.3125/n)-competitive against an oblivious adversary when n is the number of nodes in G. Finally, we show that our results can be extended to non-unitary orders. => 01_16_cortes.pdf [MCC16/01] CORTES, S.C.; LUCENA, C.J.P. Um framework de regras ativas para sistemas de gerencia de banco de dados distribuido. 25 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: Active database management systems make possible the development of advanced database applications, giving support to a semantics that reflects the application behavior through the definition of rules, which specify actions that are automatically triggered by the occurrence of certain events. The use of active rules in a distributed environment allows obtaining more expressiveness, although with a considerable increase of the system complexity. This work proposes a framework for constructing active distributed database management systems that applies the reuse technique (framework) in order to benefit by the specifications which must exist in all systems of this kind, at the same time that allows being configured/extended to specific operational environments, with different rule semantics. => 01_17_silveira.pdf [MCC17/01] SILVEIRA, M.S.; SOUZA, C.S. Analise comparativa de sistemas de Help Online como fonte para avaliacao heuristica destes sistemas. 42 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: How cam we know precisely who will be accessing a designed computer application, and when? If we don't know this, and thus can't design an application targeted at a specific user group, how can we better help different users to use it in a variety of situations? In order to support users, an application needs to provide them with a help system that not only helps them to do their tasks, but also to understand why the application behaves the way it does. In this work, we have made a comparative analysis of a few office applications' online help systems. Based on this analysis, we propose guidelines that may be used in heuristic help evaluation, in order to better support designers in the creation of more efficient help systems. => 01_18_guell.pdf [MCC18/01] GUELL, N.; SCHWABE, D.; BARBOSA, S.D.J. Metodo de avaliacao de usabilidadena Web baseado em modelo e padroes de comportamento. 20 p. Port. E-mail: simone@inf.puc-rio.br Abstract: This document proposes a usability evaluation method for Web applications. The proposed method helps designers to diagnose and solve design problems. Our approach is to recognize, during user's interaction with the system, behaviors that are conduct patterns for typical design problems. Initially, behavioral patterns were described, classified and mapped onto classes of design problems. Then, the design problem indicated by each behavioral pattern is diagnosed using the OOHDM methodology. Finally, some design solutions are proposed based on Guidelines and Design Patterns. => 01_19_rodrigues.ps.zip [MCC19/01] RODRIGUES, R.F.; BACHELET, B.; MAHEY, P.; SOARES, L.F.G. Elastic time computation for hypermedia documents. 17 p. Eng. E-mail: lfgs@inf.puc-rio.br Abstract: This paper presents a new elastic time algorithm for adjusting hypermedia document presentation in order to avoid temporal inconsistencies. The algorithm explores the flexibility offered by some hypermedia models in the definition of media object duration and uses this flexibility for choosing the objects to be stretched or shrunk in such a way that the best possible quality of presentation is obtained. Our proposal is based on the "out-of-killer" method for minimum-cost flow problems and it seems to offer more flexibility to model real-time applications in comparison with other previous proposals based on the simplex method. => 01_20_seibel.pdf [MCC20/01] SEIBEL, L.F.B.; LIFSCHITZ, S. A genome databases framework. 20 p. Eng. E-mail: lifschitz@info.puc-rio.br Abstract: There exists many molecular biology databases, also known as Genome Databases, that need to be integrated together with all related applications and other data sources. This work proposes the use of an object-oriented framework for genome data access and manipulations. The framework approach may be an interesting solution in this context due to the flexibility, reusability and extensibility requirements of this application domain. We will present and discuss the framework in details using class and sequence diagrams that explore both the structural and dynamic parts of the architecture. => 01_21_mathias.pdf [MCC21/01] MATHIAS FILHO, I.; LUCENA, C.J.P. Uma proposta para a incorporacao do modelo de features a linguagem UML. 17 p. Port. E-mail: lucena@inf.puc-rio.br Abstratc: Feature modeling is one of the most successful techniques in use to promote the reuse of software artifacts as of the initial stages of development. The purpose of this paper is to present a proposal for the incorporation of feature modeling into the UML language, wich has become a standard for the modeling of object-oriented software. The precise and careful specification of this proposal, wich uses formal and informal techniques such as graphic notation, natural language and formal language, will permit the building of tools that provide support to the development of feature models for families of applications, and the instantiation of members of these families based on these models. Moreover, the use of the XMI standard in the representation of the feature models will facilitate their integration with the many CASE tools already existing on the market. => 01_22_oliveira.pdf [MCC22/01] OLIVEIRA, T.C.; MATHIAS FILHO, I.; LUCENA, C.J.P. A framework based approach for workflow software development. 8 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The purpose of Workflow Software is to provide users with an environment in wich they can manipulate and control all the data and tasks involved in achieving a predefined goal (main task). Some features as user-interface, persistency, online guidance and multi-user support, are all-important and should be present in the final software, to obtain a high level of usability. It is also important that the design of the software should take place in an environment that helps the designer to deal with the large amount of definitions obtained during the domain analysis phase and gap between these definitions and the object oriented design model. This paper describes the main features of a tool to support a method that aids the designer to develop workflow software. => 01_23_mathias.pdf [MCC23/01] MATHIAS FILHO, I.; OLIVEIRA, T.C.; LUCENA, C.J.P. Domain oriented framework construction. 16 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Object-oriented Application Framework is a powerful reuse technique that allows the sharing off requirements, design and code among a set of applications systems instantiated from an origial framework. Nevertheless, little attention has been given to the role of an explicit Domain Analysis phase in the framework construction process. This paper describes an approach where the requirements capture for an entire application family takes a central role in the framework development, thus facilitating verification processes and providing reliable documentation that will assist the instantiation step. => 01_24_oliveira.pdf [MCC24/01] OLIVEIRA, T.C.; MATHIAS FILHO, I.; LUCENA, C.J.P. Using XML and frameworks to develop information systems. 11 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: To accomplish the software development time and cost constraints this develpoment should take place in an environment that helps the designer to deal with the large amount of concepts obtained during the domain analysis phase and the semantic gap between those concepts and the object oriented desing model, due to their different levels of abstraction. This paper discribes the main features of an environment designed to support the development of IS software based on framework reuse and XML specifications. => 01_25_muchaluat.pdf [MCC25/01] MUCHALUAT-SAADE, D.C.; COLCHER, S.; SOARES, L.F.G. Relacoes de sincronizacao espaco-temporal hipermidia tambem merecem status de primeira classe. 18 p. Port. E-mail: lfgs@inf.puc-rio.br Abstract: This paper introduces the concept of hypermidia connector, presenting how spatio-temporal relations may be defined as a specialization of architecture description languages (ADL) connectors. Some features found in ADLs were brought to hypermidia authoring languages, giving first-class status to synchronization relations expressed by links. Among the profits, we can highlight the possibility of reusing a spatio-temporal relation specification in different links with the same behavior and the possibility of defining composite spatio-temporal relations expressed by links, which is an original feature in hypermidia authoring languages. => 01_26_silveira.pdf [MCC26/01] SILVEIRA, M.S.; DIAS, M.C.; QUENTAL, V. Estudos preliminares para composicao de conteudo de Help atraves de interjeicoes de comunicabilidade. 46 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: Accessing help systems by What's this? expressions is easily found in commercial WIMP applications. An improvement to this kind of access is to use communicability utterances, such as Where is?, What now?, and Why should I do this?, for instance. But how can the designer answer these questions? What kind of answer is needed for each one? This work describes studies to help the designer build this kind of answer when he is developing the applications' help systems. => 01_27_castilho.pdf [MCC27/01] CASTILHO, R.T.L.; GARCIA, A.H. Theses and dissertations presented to the Departamento de Informatica of PUC-Rio from 1969 to 2000. 206 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Catalogue encompassing more than 30 years of dissertations and theses from the PUC-Rio Information Technology Department, the first post-graduate Conputer Science program in Latin America. It evidences the continued stability of the program in the state-of-the -art of the discipline, is invested of relevant historical value, being a significant example of the evolution of scientific and technological research into the field of Computing in Brazil and is also a record of the many researchers that have populated and continue to do so the academic Computing community in Brazil. => 01_28_costa.ps.gz [MCC28/01] COSTA, R.L.C.; LIFSCHITZ, S. Uma proposta de arquitetura de SGBD baseado em agentes para auto-sintonia de indices. 30 p. Port. E-mail: lifschitz@inf.puc-rio.br Abstract: We present an architecture based on software agents for DBMSs' self-tuning. In particular, we are interested in the features of indexes' self-tuning. Thus, an engine is considered that makes possible the automatic selection, creation and exclusion of indexes. A case study is described and reveals adequacy to the agent based architecture specified. => 01_29_chavez.ps.gz [MCC29/01] CHAVEZ, C.F.G.; GARCIA, A.F.; LUCENA, C.J.P. From AOP to MDSOC: an experience report. 19 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this report, we present some insights gathered through the implementation of the Portalware system using the IBM Hyper/J tool, having as a point an aspect-oriented design model and an aspect-oriented implementation (using the Xerox Parc's AspectJ tool). We present a preliminary mapping between the elements of the two approaches and discuss some alternatives for deriving an hyperslice -based solution from the Portalware aspect-oriented model. We describe the selected set of tranformations we have applied, some potential problems and solutions related to the transformation process, and finally, we present resulting Hyper/J solution. One of the motivations behind this development exercise is a pratical assessment of each approach's similarities and differences, strengths and weaknesses to help in the validation of a generic aspect-based design model that can be mapped to the implementation models supplied by AspectJ and Hyper/J. => 01_30_silva.zip [MCC30/01] SILVA, V.T.; LUCENA, C.J.P. Um modelo orientado a objetos para sistemas multi-agentes. 14 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: In this work, we propose a mapping from agents, and its fundamental properties and mental states, into objects. The proposed objective of the mapping is generate a object-oriented model for multi-agent systems to facilitate the maintainability and reusability of the elements involved in the model. To assure these objectives, a separation of concerns technique namely design patterns was applied to the model. Design patterns provides separation of concerns because they decouple the concerns of interest in classes or in groups of inter-related classes. On the mapping the intra-agents aspects (agent's properties and agent's mental states) have been modeled as well as inter-agents aspects (communication between agents and the environment). The modeling of these aspects and the focus on the utilization of the mental states to model agents makes this approach more appropriate to model cognitive agents (that execute plans based on their goals and beliefs) than reactive agents. => 01_31_pinheiro.pdf [MCC31/01] PINHEIRO, S.; VELHO, L.; GATTASS, M. A virtual memory system for real-time visualization of multi-resolution 2D objects. 8 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: We describe a predictive memory management system that allows the visualization of 2D graphic objects in real time. This system is based on a virtual memory model. We show how the page loading system predicts and fetches data before it is accessed by the application and how the page replacement system decides which data should be removed from memory. We demonstrate the effectiveness of the system for real-time visualization of large panoramas. => 01_32_milidiu.zip [MCC32/01] MILIDIU,R.L.; PESSOA, A.A. Complexidade de problemas de planejamento de distribuicao em oleodutos. 13 p. Port. E-mail: milidiu@inf.puc-rio.br Abstract: Petroleum derivates are typically transported through pipelines in Brazil, and also in other countries. Pipeline networks can be represented by a graph where nodes represent locations and arcs represent oil pipeline segments. A natural approach to solve the distribution problem - PDO - that arises in oil pipeline networks is to develop efficient algorithms for simplified versions of this problem. In this paper, we consider two simplified versions of PDO:PDOS-2, a decision problem with only two distinct products, and PDOP-3, a decision with only three distinct products and a planar graph. We point out that both PDOS-2 and PDOP-3 include several additional simplifying assumptions. Nevertheless, we prove that both problems are NP-hard. We also consider two optimization problems respectively based on PDOS-2 and PDOP-3. In both cases, an optimal solution minimizes the makespan of the pumping operations. For both problems, we prove that there is no(2 - e)-approximate algorithm, for any e>0, unless P=NP. => 01_33_cortes.pdf [MCC33/01] CORTES, M.; FONTOURA, M.; LUCENA, C. Using refactoring and unification rules to assist framework evolution. 9 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Although object-oriented software development has experienced the benefits of using frameworks, a thorough understanding of how to change them to meet evolving requirement needs is still object of research. Therefore framework development is very expensive, not only because of the intrinsic difficulty related to capturing the domain theory, but also because of the lack of appropriate methods and techniques to support the evolution and redesign of the framework architecture. This paper proposes the use of refactoring and unification rules to assist framework evolution. The approach is illustrated through the JUnit testing framework. => 01_34_moura.ps.gz [MCC34/01] MOURA, A.L.; URURAHY, C.; CERQUEIRA, R.; RODRIGUEZ, N. Dynamic support for nonfunctional requirements in distributed applications. 17 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: This work presents an environment that allows distributed applications to adapt dynamically to nonfunctional properties of their components. This environment, based on the programming language Lua and on CORBA, allows applications to select dynamically the components that best suit their requirements, to verify whether the system is satisfying these requirements, and react, when appropriate, to variations in the nonfunctional properties of the services in use. The paper also describes an example application based on the proposed environment. => 01_35_cortes.pdf [MCC35/01] CORTES, S.C.; LUCENA, C.J.P. Um framework para construcao de sistemas de banco de dados movel com regras ativas. 17 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This study presents an overview of the DBS-M-AR framework, with emphasis on its components and hot spots. This is an object-oriented framework for the construction of Mobile Database Management Systems with Active Rules. A detailed discussion of its instantiation is also included. => 01_36_montenegro.pdf [MCC36/01] MONTENEGRO, A.A.; RIBEIRO, C.C;, ARAGAO, M.V.S.P. Um algoritmo randomizado para o problema de determinacao do corte s - t minimo em grafos direcionados. 42 p. Port. E-mail: celso@inf.puc-rio.br Abstract: The minimum cut problem in a direct graph consists basically in finding a partitioning of the set of vertices of the graph in two subsets, in such a way that the number (or the sum of the weights) of the edges that the number (or the sum of the wheights) of the edges that connect the partitions is minimized. An important variation of this problem is the s-t minimum cut problem, in which we impose the restriction that each candidadte cut separate two special vertices s and t of the input set. As far as we are know, no eficient and simple randomized algorithm has been proposed to solve this problem. In this work we investigate the applicability of randomization techniques to the s - t minimum, proposing an algorithm and analising its complexity. => 01_37_montenegro.zip [MCC37/01] MONTENEGRO, A.A.; CARVALHO, P.C.P. Algoritmos de fluxo maximo para o problema de correspondencia em visao estereo. 55 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: The epipolar constraint is one of the most important properties used to solve the stereo correspondence problem. This constraint makes possible the solution of the problem for each pair of epipolar lines separetly. The main drawback with this approach is that it does not exploit the coeherence that exists among the epipolar lines, yielding some artifacts in the final solution. In this work we investigate some recently proposed methods based on network flow algorithms that are capable of taking into consideration the coherence among epipolar lines. => 01_38_montenegro.zip [MCC38/01] MONTENEGRO, A.A.; GATTASS, M. Determinacao de superficies de profundidade atraves de visao estereo. 48 p. Port. E-mail: gattass@inf.puc-rio.br Abstract: In this work we present the basic theoretical and computational aspects of stereo vision. Our main focus is in the geometry involved in the process as well as in the way the problem can be modelled. Some traditional methods, as the correlation based and the minimum path based methods, are presented in detail as exemples of how the problem can be solved computationally. => 01_39_cruz.pdf [MCC39/01] CRUZ, S.O.; LUCENA, C.J.P.; RANGEL, J.L.M. Identificando objetos atraves de pronomes. 26 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The need to know the object identification to request it's sevices is a restriction in the construction of object oriented system. To reduce this restriction we have proposed a form of generic reference to an object named pronoum. Pronoum allows the programmer to specify how to send a message without knowing the destination object by name. With pronouns, the visibility of an object increases without breaking the rule of encapsulation. With this feature decoupled server classes may be constructed and used in different contexts. Some pronouns are defined in this work. Their usefulnes in the development of object oriented systems is illustrated through examples. An implementation approach based on open languages is suggested. => 01_40_garcia.pdf [MCC40/01] GARCIA, A.F.; CHAVEZ, C., SILVA, V.T.; LUCENA, C.J.P. Developing multi-agent software: an;aspect-based approach and a pattern-based approach. 16 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper proposes and compares two software engineering approaches for multi-agent systems.The first proposal explores the benefits of aspect-based design and programming and the second one i s based on design patterns. Both approaches have the following goals: (i) describe structured integration of agents into the object model, (ii) incorporate flexible facilities to build different types of software agents, (iii) encourage the separate handling of each property and capability of anagent, (iv) provide explicit support for disciplined and transparent composition of agency properties and capabilities in complex software agents, and (v) allow the production of agent-based software so that it is easy to understand, maintain and reuse. We also demonstrate our proposals through the Portalware system, a web-based environment for the development of e-commerce portals. => 01_41_cunha.pdf [MCC41/01] CUNHA, L.M.; GARCIA, A.F.; ASSIS, R.L.; FUKS, H.; LUCENA, C.J.P. O "acompanhamento da participacao" e avaliacao no ambiente AulaNet. 8 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: Student evaluation in web-based courses has to be part of the process of learning, i.e., it should not be dealt as an isolated issue. In this context, this paper presents evaluation concepts and their application in the AulaNet environment, presenting a mechanism for assessing the participation of the students. The mechanism goal is to provide information about the student evolution while performing learning activities. This information can be visualized by means of the follow-up report. => 01_42_moura.ps.gz [MCC42/01] MOURA, M.A.M.; ENDLER, M. An infrastructure for management of fault tolerant CORBA applications. 21 p. Eng. E-mail: endler@inf.puc-rio.br Abstract: In the last years CORBA has become a de facto standard for the development of object-oriented distributed applications. In spite of some important features such as support for interoperability and heterogeneity, only very recently CORBA specification, with the adoption of the Fault Tolerant CORBA standard (FT-CORBA) [10], addressed issues concerning object replication and reliable communication between objects, wich are key components to provide faul tolerance for distributed object systems. Since mid-90's several research projects have proposed and explored some approaches to incorporate fault tolerance mechanisms in CORBA but most of the systems developed offer a rather basic support for managing groups of object replicas. Our work builds upon one of these systems, called OGS [4]. We created an extended OGS (called OGS+) and on the top of it we developed Juggler, a distributed services that provides means for flexible and automatic management of CORBA replicated objects through the deploymentof a set of high-level interfaces based on the ones standardized by FT-CORBA. ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2002 => 02_01_porto.zip [MCC01/02] LABER, E.S.; PORTO, F.A.M.; VALDURIEZ, P.; GUARINO, R. Cherry picking: a data-dependency driven strategy for the distributed evaluation of expensive predicates. 24 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: In this paper, we address the problem of optimizing distributed queries involving expensive predicates. We propose a novel approach, called Cherry Picking (CP), based on the modeling of data dependencies between the expensive predicates' input values as weighted bipartite graph. We propose three CP algorithms that select the vertexes in this graph to be evaluated by the expensive predicates that minimize the query execution cost: a Greedy algorithm, a Minimum Balanced Cover(MBC) algorithm and a variant called MBC* which runs in polynomial time. In order to analyze the optimality of these algorithms, we propose a new quality metric. We prove that MBC has quality 2 and that no other deterministic algorithm can yield quality smaller than 2, thus proving its optimality. We implemented these three algorithms as well as existing pipeline and hybrid strategies. Our experiments suggest that CP approach allows a considerable gain in performance compared to the Pipelined approach and that the CP Greedy algorithm, due to its simplicity and nice performance, is a very good candidate to be considered for implementation in query execution engines that deal with expensive predicates. => 02_02_milidiu.pdf [MCC02/02] MILIDIU, R.L.; PESSOA, A.A.; LABER, E.S. Complexity of makespan minimization for pipeline transportation of petroleum products. 13 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: PTP is a new model for the problem of transporting petroleum products through pipelines with no due dates. This model uses a directed graph G, where arcs represent pipes and nodes represent locations, and a set L of transportation orders. Since pipelines must always be full, we define a subset F c L of further orders that do not need to reach the corresponding destination nodes, being used only to move the pipeline contents. The problem of finding a feasible solution to PTP is known to be NP-hard, even if G is acyclic. The Synchronous PTP(SPTP) is a special case of PTP where all orders in F are initially stored at nodes. In this paper, we analyze the complexity of finding a minimum makespan solution to SPTP. This problem is called the SPTMP. We prove that, for any fixed e>0, there is no n1-e- approximate algoritm for SPTMP unless P = NP, where n is the input size. This result also holds if the graph G is both planar and acyclic. => 02_03_carasso.pdf [MCC03/02] CARASSO, F.; STAA, A.v. Utilizando JNI para Adicionar implementacao nativa C ou C++ a programas JAVA. 32 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: The JAVA programming language has been widely adopted for its portability and user friendliness. However it is quite inefficient when dealing with compute bound operations. There are a couple of ways to get around this drawback, one of them deals with the utilization of native code. This report presents a detailed explanation of how to add native code to JAVA programs by using the Java Native Interface, or JNI. Most of the JNI specifications are examined in this report and examples were created and tested to illustrate them. => 02_04_paula.pdf [MCC04/02] PAULA, M.G.; SILVEIRA, M.S.; BARBOSA, S.D.J. Sistema de explicacao para o processo de matricula da pos-graduacao do Departamento de Informatica da PUC-Rio. 28 p. Port. E-mail: simone@inf.puc-rio.br Abstract: In this work we propose an explanation system to the registration process in the Informatics Department at PUC-Rio. The main idea is to provide the students with information about registration in graduate courses, considering each student's academic and administrative status and potential doubts, in order to personalize the given answer(s). This approach may be considered an evolution on FAQ systems because the student may ask further questions about the given answers, according to his/her needs, contextually unfolding the knowledge required to make adequate decisions. => 02_05_silva.pdf [MCC05/02] SILVA, V.T.; LUCENA, C.J.P. Multi-level role modeling in multi-agent systems. 14 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper proposes a method to help discover the agents that will be part of a multi-agent system based on the definition of the system. This method is based upon the decomposition and the system goals together with the decomposition and specialization of the system into entities. The goals are associated with the entities, which play roles by trying to achieve the goals and enter into relationships with other entities. To help and validate the refinement process, the method describes rules that ensure how the goals, entities, roles and relationships defined in a certain stage of refinement will appear in the subsequent stages of the process. => 02_06_milidiu.zip [MCC06/02] MILIDIU, R.L.; LUCENA, C.J.P.; SARDINHA, J.A.R.P.; RIBEIRO, P.C. An object-oriented framework for building software agents. 10 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: Agent technology is a new approach of Distributed Artificial Intelligence to implement autonomous entities driven by beliefs, goals, capabilities and plans, and other agency properties such as adaptation, interaction, and mobility. Software agents are the focus of considerable research in the artificial intelligence community, but not much has been done in the field of software engineering. In this paper, we present an object-oriented framework for building software agents in a distributed environment. The design of the framework also allows an easy mapping of the models developed in the analysis and design phase of the Gaia Methodology to object-oriented code. We belive that object-oriented framework technology can reduce not only the development time but also the complexity of implementing multi-agent systems. We present an instantiated application that uses this framework to illustrate an implementation. => 02_07_lucena.pdf [MCC07/02] LUCENA, C.J.P.; FUKS, H. Tecnologias de Informacao Aplicadas a Educacao (TIAE): manual do aprendiz. 13 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents the methodology used in the Information Technology Applied to Education course, a course delivered through the Internet. The course is about the application of information technology to education. The course is being delivered using the AulaNet environment, a groupware for the creation, participation and maintenance of Web-based courses. => 02_08_garcia.pdf [MCC08/02] GARCIA, A.F.; CASANOVA, M.A. A fault-tolerance in distributed tuplespaces. 20 p. Eng. E-mail: casanova@inf.puc-rio.br Abstract: The tuplespace data model is widely recognized for serving as a foundation for data exchange and/or event coordination in distributed systems. In fact, in the last couple of years, the tuplespace paradigm experienced a renaissance due to its suitability for developing distributed Internet applications. However, this model is originally based on a centralized scheme, being exposed to classical failures of centralized systems, such as single-point failures and bottleneck situations, all of which conflicts with some of the stringent requirements of distributed systems: fault-tolerance and scalability. So, there is a need for providing the tuplespace data model with fault-tolerance and scalability using replication techniques, i.e., distributing replicas of tuplespaces over different tuplespace servers. Enterprise TSpaces (ETS) is a further development of the stand-alone version of TSpaces that provides TSpaces with fault-tolerance in loosely coupled systems. The level of fault-tolerance of a ETS tuplespace can dynamically and independently be adjusted by modifying the numberof replicas. In this contex, the goals of this work are: (i) presenting the tuplespace data model, (ii) identifying the problems in replicating tuplespaces, (iii) surveying the techniques for dealing with such replication problems, and (iv) presenting the model ETS for fault-tolerance distributed tuplespaces. => 02_09_silva.pdf [MCC09/02] SILVA, A.C.; CARVALHO, P.C.P.; GATTASS, M. Visualization of density variation in lung nodules. 13 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: We proposed a method for visualize lung nodule, in order to emphasize their internal structures. This provides an additional tool for diagnosis, wich is traditionally based on the analysis of shape, growth and location. The method is divided into three stages: the first stage is semi-automatic segmentation, using the region-growing algorithm; the second stage, based on the previous segmentation, indentifies the internal structures of the nodule using moment theory to determine several thresholds; finally, in the third stage, to help visualizing these structures, a pseudocolor is associated to each threshold determined in the previous stage. The tool developed is under test, undergoing clinical evaluation, and its initial results are promising. => 02_10_cortes.pdf [MCC10/02] CORTES, S.C.; PORCARO, R.M.; LIFSCHITZ, S. Mineracao de dados - funcionalidades, tecnicas e abordagens. 35 p. Port. E-mail: sergio@inf.puc-rio.br Abstract: The subject of the study is Data Mining, with emphasis on its functionalities (results), techniques and application strategies. We underline the importance of data mining as part of a larger research process called Knowledge Discovery in Database (KDD), for which is presented the methodology for preparation and exploration of data, interpretation of results and assimilation of mined knowledge. Data mining is presented in the context of business intelligence; its forms of presentation and the difficulties in implementation in corporations and some applications suitable for the use of data mining as well as their fields of research are discussed. => 02_11_cortes.pdf [MCC11/02] CORTES, S.C.; LIFSCHITZ, S. Sistemas de gerencia de banco de dados baseados em agentes para um ambiente de computacao movel. 30 p. Port. E-mail: sergio@inf.puc-rio.br Abstract: Agent-based databases enable the development of Database Management Systems (DBMSs) that may be configured and extended to give support to new data storage and retrieval requirements. For database management systems to be used in a mobile computing environment, the properties of reusability, autonomy, interaction and mobility can be obtained by the use of a software agent. This paper presents a proposal for a layered architecture in a mobile computing environment. The focus of the architecture is on the use of software agents in the server layer of the database, using a framework for the construction of the management system that will include the functionalities necessary for the mobile computing environment. A detailed discussion of DBMS architecture is also presented. => 02_12_goni.pdf [MCC12/02] GONI, J.L.; FERNANDES, M.C.P.; LUCENA, C.J.P. e_Learning e a web semantica. 18 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The objective of this work is to propose a tool based in agents, denominated Web Semantic Search (WebSS), using the structure of the Semantic Web, where through ontologies generated by the Protege- 200 tool, it will be possible to recover learning contents in AulaNet servers, according to the granularity proposed by the ContentNet Framework. It is presented an Analisys Model of the MESSAGE Methodology (Methodology for Engineering Systems of Software Agent), wich is an Agent-Oriented Software Engineering Methodology, that extends the current techniques of object-oriented software development to simplify and to formalize the process of developing a multi-agent system. => 02_13_goni.pdf [MCC13/02] GONI, J.L.; MILIDIU, R.L. Agentes de software para auxiliar ao professor na busca de conteudos educacionais no padrao IMS. 19 p. Port. E-mail: milidiu@inf.puc-rio.br Abstract: With the growth of the amount of data available on the Internet, the use of Software Agent for information search and treatment is an option. In Web-Based Education the patterns defined by IMS for interoperability of education contents are a reality. Starting from the experiences and uses demonstrated by the literature, types of agent and their application in the search and treatment of data in the Web are presented. This work also presents a multi-agent system that favor the interoperability of contents in distance education, helping the teacher in the search in IMS-compliant servers. => 02_14_goni.pdf [MCC14/02] GONI, J.L.; FUKS, H. Comparacao de ambientes de ensino na Web baseados em plataforma IMS a partir dos papeis dos atores envolvidos. 24 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: A way to verify the several techniques now used in Distance Education on the Web consists in the analysis of each role a user plays in the participation on a management environment. To evaluate the practical viability of those environments, through a comparative analysis, we appoint the appropriate use of the Internet technology. It was also considered the pedagogic, technological and organizational aspects. The comparisons were made with environments that follow the IMS specifications. Based on these comparisons, some suggestions for the evolution of the AulaNet environment are shown considering each users'roles. => 02_15_ayres.pdf [MCC15/02] AYRES, F.V.M.; PORTO, F.A.M.; BARBOSA, A.C.P.; MELO, R.N. Um framework para construcao de maquina de execucao de consultas. 15 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: The integrated access to web published information allows for offering new services not initially foreseen by the individual web publishers. This type application requires the distributed execution of queries over the web. Although very promising, this strategy suffers from serious performance problems due to the unpredictability of the access time to the data sources.This work identifies and analyses query execution characteristics that should be supported by a flexible execution engine. We propose and implement a software framework that provides for the instantiation of different query execution engines. In particular, the framework instantiates an adaptive query execution engine that supports web integration applications. This framework is also integrated to the CoDIMS environment (Configurable Data Integration Middleware System). => 02_16_renteria.pdf [MCC16/02] RENTERIA, C.J.; HAEUSLER, E.H.; VELOSO, P.A.S. NUL: deducao natural para logica de ultrafiltros. 28 p. Port. E-mail: hermann@inf.puc-rio.br Abstract: Ultrafilter logic is an extension of first order logic that uses a new quantifier to express a meaning of "almost all", that is, to express sentences like: "Almost all elements of our universe have the property P". Such a logic had previously been presented only in an axiomatic version. We give here a natural deduction version, wich is correct, complete and normalizable. => 02_17_fuks.pdf [MCC17/02] FUKS,H.; RAPOSO, A.B.; GEROSA, M.A.; LUCENA, C.J.P. O modelo de colaboracao 3C e a engenharia de groupware. 16 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: This paper introduces an engineering approach based on the 3C model (Communication, Coordination and Cooperation) to the design and implementation of collaborative systems. Initially, the 3C model is studied by means of a detailed analysis of each one of its three elements. Then, a case study presents the application of the theoretical model to the development of a learningware environment and to the methodology of a web-based course. The main goal of the paper is to show the human aspects of the 3C model as a means to model collaborative activities and as an attempt for the formulation of Groupware Engineering. => 02_18_silva.pdf [MCC18/02] SILVA, G.M.H.; HAEUSLER, E.H.; VELOSO, P.A.S. Constructive program synthesis in imperative language using intuitionist logic and natural deduction. 19 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: We present a method to extract programs from constructive derivations, which is known as constructive synthesis or proof-as- program [2]. This method comes from the Curry-Howard isomorphism [11] and is based on the fact that a constructive proof for a theorem, which describes a problem, can be seen as a be description of the solution of a problem, i.e., algorithm [10,15]. In contrast with other constructive program synthesizers, in our work, the program (in an imperative language) is generated from a proof in many-sorted intuitionist logic using, as deductive system, the Natural Deduction. In addition, we provided a proof that the program generated is a representation of the solution for the specified problem by the theorem, in any theory that describes the data types used. => 02_19_garcia.pdf [MCC19/02] GARCIA, A.F.; LUCENA, C.J.P.; OMICINI, A.; CASTRO, J.; ZAMBONELLI, F. Software engineering for large-scale multi-agent systems SELMAS 2002: workshop report. 19 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper report on the First International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS 2002) held in Orlando, Florida, USA, May 19, 2002, as part of the International Conference on Software Engineering (ICSE 2002). The main purpose behind this workshop is to share and pool the collective experience of people, both academics and practitioners, who are actively working on software engineering for large-scale multi-agent systems. The call for papers elicited about 20 submissions of wich 17 papers were accepted for publication in the workshop proceedings and 12 papers were accepted for presentation. A selected set of workshop papers and invited papers aregoing to appear in the book Software Engineering for Large-Scale Multi-Agent Systems (LNCS, Springer, 2002). The workshop consisted of an opening preentation, several paper presentations that were organized into three distinct sessions, and a panel. During the workshop we informally reviewed ongoing and previus work and debated a number of important issues. The SELMAS'02 Web page, including the papers and the electronic version of this report, can be found at . We begin by presenting an overview of our goals and the workshop structure, and then focus on the worshop's technical program. => 02_20_macedo.pdf [MCC20/02] MACEDO, L.M.; FURTADO, A.L. PlotDBase-integracao de narrativas e dados de aplicativos na forma de enredos para descoberta de conhecimento. 23 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: Data information affecting people and companies may be grouped as narratives of real situations and converted into plots, composed by characters or actors, objects or resources, events or conditions, sequence of actions, goal inference rules and constraints. Plots can be described in format of logical predicates in defined clauses, as used by Prolog. In this paper we propose the creation of PlotDBase, a relational database of plots, which contains the models and instances, composed by sets of terms and their relationship, based on criteria and properties defined by expert users. The data used to build plots are picked up from application databases and several narratives. The PlotDBase is useful to integrate specific application systems and non-standard narratives. We propose the development of a tool that has features for data entry, data preparing and data processing as: selection, comparison and grouping of parts of several plots, automation transferring data from databases to plots, search for standards in action sequences, argument values in functions and rules, file data preparation to be used by Prolog programs and KDD programs. => 02_21_felix.pdf [MCC21/02] FELIX, M.F.; HAEUSLER, E.H.; SOARES, L.F.G. Validating hypermidia documents: a timed automata approach. 15 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: This paper presents a formal approach to validating hypermedia documents, a case of real-time and reactive computing application, aiming to extend these ideas to the contex of architectural design. The main aspect of hypermedia validation concerns to the so-called temporal consistency analysis problem: a document is consistent if it is possible present it in a way that all the event synchronization constraints can be fulfilled. The validation technique consists in providing formal semantics to hypermedia documents via network of timed-automata, in a compositional way. Therefore, obtained a behavioral model of the document, we can pass to the model-checking phase. The consistency analysis consists on to formulate an adequate set of temporal logic formulas that will be checked against to the automata model. The specifications of the hypermedia documents that we are written using the modeling concepts of NCM (Nested Context Model [2][7]), a conceptual model to hypermedia documents, and we choose UPPAAL [5][6] as the model-checking tool to implement the our hypermedia validation model. This work as well constitutes a preliminary investigation, via a case study, about how we can integrate formal validation, using model-checking techniques, with software architecture design. => 02_22_amaral.pdf [MCC22/02] AMARAL, F.N.; HAEUSLER, E.H.; ENDLER, M. A real-time specification language. 12 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: A specification language for real-time software systems is presented, along with a model-theoretic semantics. Notions from Category Theory are used to specify how the components of a system should interact. The potential role of the proposed language in the search for interoperability of specification formalisms is briefly discussed. => 02_23_mamani.pdf [MCC23/02] MAMANI MACEDO, N.A.; LEITE, J.C.S.P.; MACEDO-SOARES, T.D.L.v.A. Building a strategic oriented corporate memory. 28 p. Eng. E-mail: julio@inf.puc-rio.br Abstract: This paper shows a porposal for building corporate memory based on a general architecture. It has three layers: sources, middleware and repositories. First, we create an enterprise model, named Basic Framework (BF), with a view to building a Strategic Corporate Memory (SCM). Second, we use ontology and multi agents system as a means to organize our proposal. The BF is the main component, where we store relevant information for the organization extracted from legacy systems, databases, internet sites or beings-human. This coneptual enterprise model is based on management theory and uses constructs from, both positioning and resource-based views of strategic analysis, together with function analysis and total quality management. We also stress the evolutionary aspect of the SCM by relying on the configuration management concept of baseline. => 02_24_silva.pdf [MCC24/02] SILVA, O.; GARCIA, A.; LUCENA, J.C.P. The reflective blackboard pattern. 21 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Software architectures of large multi-agent systems (MASs) are inherently complex and have to cope with an increasing number of system-wide properties and their corresponding control policies. So with the increasing size and complexity of these systems a more sophisticated software architectural approach becomes necessary. In this contex, we propose the Reflective Blackboard architectural pattern, which is the result of the composition of two other well-knowm architectural patterns: the Blackboard pattern and the Reflection pattern. The proposed pattern provides, early in the architectural design stage, the contex in which more detailed decisions related to systemic properties and associated policies can be made in late stages of MAS development. The pattern allows a better separation of concerns, supporting the separate handling of control strategies by means of the computational reflection technique. Moreover these control activities are handled independently from the application data agents, providing a better architecture for real-life multi-agent systems. An electronic marketplace architecture, with the goal of interconnecting providers and consumers of goods and services to find one another and transact business electronically, is assumed as a case study through the paper to clarify all the expressed concepts and to show the applicability of our proposal. => 02_25_carvalho.pdf [MCC25/02] CARVALHO, G.R.; STAA, A.v. Estudo e analise do processo de desenvolvimento e de ferramentas associados a ebXML. 37 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In the electronic commerce era there are lots of initiatives to promote the integration of processes and enterprises, processes and environments for integration of services, applications and enterprises appear as a promising area of study in software engineering. Among the business-oriented processes standards initiatives is ebXML. This paper purpose is to evaluate the ebXML proposal and some modeling tools that propose some functionality for the effective use of ebXML proposal as an e-business development process. => 02_26_coelho.pdf [MCC26/02] COELHO, T.A.S.; ENDLER, M. Ambientes de suporte a colaboracao em redes moveis. 50 p. Port. E-mail: endler@inf.puc-rio.br Abstract: This work discusses some issues related to collaborative systems, and specifically, some questions ralated to Workflow Management Systems for mobile environments. The concept of awareness, the concurrency control method, and the problems deriving from mobility and disconnections are discussed. Besides a comparison among several Worflow Management Systems, such as Exotica, RainMan, CoAct and WorkToDo, this report contains a proposal of an architecture for a Workflow Management System for wireless mobile networks. In this proposal users are physically distributed and only establish connection with the workflow server when they need to send or to receive data. According to the proposed architecture, in addition to one central coordinator, there may be several secondary coordinators, which are able to delegate tasks to other users under their control. In this architecture, the concept of locking tasks is avoided and tasks may be replicated for the execution by many users, aiming to decrease the workflow execution time. The main contribution of the proposed architecture are the ability to replicate workflow tasks and the optimistic concurrency control policy, which provide means for avoiding that workflow users block each other due to pending executions of casually dependent tasks. => 02_27_leite.pdf [MCC27/02] LEITE, M.C.; LUCENA, C.J. Introducing object circuits. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper, we introduce the concept of object circuits, a programming technique which addresses traditional object-oriented programming through the electric circuit's metaphor. We motivate the discussion by studying the usefulness of object circuits on the specific domain of modeling & simulation, and conclude by generalizing its applicability to other research areas. => 02_28_coelho.zip [MCC28/02] COELHO, T.A.S., CASANOVA, M.A. Linguagens para especificacao de workflows. 43 p. Port. E-mail: casanova@inf.puc-rio.br Abstract: This work presents a brief discussion about some languages for workflow specification found in the literature: the WIDE Project's language, that aims at executing distributed workflows; the BPEL4WS language, based on the concept of Web services; and the XRL language, for the management of eletronic commerce transactions. After analysing these languages, this work proposes an extension of the XRL language. The extension proposed meets the requirements of the emergency plan description for the InfoPAE Project, a partnership between TecGraf and Petrobras. The workflow specification language proposed is based on XML and assumes that a workflow can be composed of many other subworkflows, which can be executed in a distributed and, sometimes, independent manner. => 02_29_brandao.pdf [MCC29/02] BRANDAO, A.A.F.; LUCENA, C.J.P. Uma introducao a engenharia de ontologias no contexto da Web Semantica. 16 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The semantic Web is an evolving research area which strongly depends on ontologies. When developing applications in the semantic web, one needs to pay attention to the ontologies they will use. Some ontology description languages are not fitted to some kinds of applications and the interoperability is not a common feature in most of the tools to develop ontologies, which may prevent the importation of existing ontologies. Because of that, several research groups develop their own ones. In this work we survey several definitions of ontology for the semantic web, describe some ontology development methodologies and relate a case study about developing an ontology for a semantic Web-based application, which will generate academic reports using semantic web content from a web site. => 02_30_silva.pdf [MCC30/02] SILVA, V.T.; GARCIA, A.F.; BRANDAO, A.A.F.; CHAVEZ, C.v.F.G.; LUCENA, C.J.P.; ALENCAR, P.S.C. Theoretical foundations for agents and objects in software engineering. 21 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Agent-based software engineering has been proposed in addition to object-oriented software engineering for mastering the complexity associated with the development of large-scale distributed systems. However, there is still a poor understanding of the interplay between the agent and object notions from a software engineering perspective. Moreover, the many facets of agent-based software engineering are rarely used in the various phases of the software development lifecycle because of the lack of a comprehensive framework to support consistent application of its core abstractions. In this contex, this paper presents TAO, as evolving innovative conceptual framework based on the agent and object abstractions, which are the foundations for modeling large-scale software systems. The conceptual framework provides support for decomposing large-scale software systems as organizations of passive components, the objects, and autonomous components, the agents, with each of these elements playing roles to interact with each other and to coordinate their actions in order to fulfill system goals. => 02_31_furtado.pdf [MCC31/02] FURTADO, A.L.; CIARLINI, A.E.M. Cognitive and affective motivation in conceptual modelling. 30 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: A proposal is presented towards the extension of conceptual models of information systems, in order to allow specification and simulation of the behaviour of agents with an adequate degree of realism. Our method is mainly based on rules to infer the goals of agents from situations holding at given states. In this paper, we argue that the rules should take into account both cognitive and affective characteristics, as can be conveyed, for the various agents, by their individual profiles and current internal states. Such characteristics should also influence the choice of strategies to handle goal interferences in multi-goal/multi-agent environments. => 02_32_cunha.pdf [MCC32/02] CUNHA, L.M.; LUCENA, C.J.P., eds. PRONEX MOBILE 2002 - frameworks e tecnologia de software: metodos, ferramentas e solucoes de dominio especifico. 61 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The PRONEX 2002 workshop will take place in the Computer Science department at PUC-Rio in December, 17th. Masters students and PhD candidates will present the progress of their research projects. In this paper you will find some short articles about the work developed by the students in cooperation with their advisors and cooperating researchers. The volume includes work-in-progress and also abstracts of concluded theses. ------------------------------------------------------------------------ ------------------------------------------------------------------------ 2003 => 03_01_pimentel.pdf [MCC01/03] PIMENTEL, M.G.; FUKS, H.; LUCENA, C.J.P. Perdas de co-texto em sistemas de bate papo textual. 12 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: The research presented in this article investigates a problem related to the lack of understanding of messages exchanged during chat sessions. There is confusion in the majority of the textual chat tools when various people converse at the same time. Sometimes a participant does not identify the relationship of a new message with a previous one, and is unable to establish a thread with the conversation-within this research this phenomenon is denominated "co-text loss". The causes, consequences and frequency of this phenomenon are discussed in this article. Two textual chat tools that have been developed to try to reduce the occurrence of co-text loss are presented in this article, together with the results obtained through the use of these tools during synchronous debates among undergraduate and postgraduate students in distance learning courses. => 03_02_ferreira.pdf [MCC02/03] FERREIRA, F.; LUCENA, J.C.P.; SCHWABE, D. Peer-To-Peer architectures using Asynchronous Web services. 14 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper, we describe Everyware, a platform for peer-to-peer aplications based on Web services standars. It is conceived to support personal information sharing among peers using different devices and hardware infrastructure. Using open standards and a completely distributed approach, Everyware allows end users to deploy personal Web services easily without requiring configuration or administration efforts. A comparison with similar initiatives is made, centered on major issues of peer-to-peer architectures and Web services orchestration. A real application based on Everyware is presented and related implementation issues are discussed. => 03_03_coelho.zip [MCC03/03] COELHO, T.A.S.; BARBOSA, S.D.J. Usando um modelo de interacao para analise de aplicacoes WIMP: um estudo de caso. 35 p. Port. E-mail: simone@inf.puc-rio.br Abstract: This work presents a study about a WIMP application, with respect to the user-system interation model. The interaction model proposed in \cite{modeloInteracaoNotasAula, modeloInteracaoArtigo} is evaluated as an alternative to other modeling techniques and is found to be simple and helpful for interface designers. An extension to this model is proposed, aiming to aggregate the dynamic interaction behavior, making it possible to represent in this model the fact that an action within a specific scene can affect other scenes, as occurs in applications in which the user can interact with more than one panel, such as many WIMP applications. => 03_04_lemos.pdf [MCC04/03] LEMOS, M.; SEIBEL, L.F.B.; CASANOVA, M.A. Sistemas de anotacoes em biossequencias. 75 p. Port. E-mail: casanova@inf.puc-rio.br Abstract: The human genome project is a program to map and sequence the entire human genome. A number of model organisms were selected for complete sequencing, partly in order to develop new technology for mapping, sequencing and sequence analysis. In addition, the sequences from these genomes were expected to facilitate the elucidation of the functions of genes and sequences in the human genome. One of the most important tasks of genome projects is the interpretation of the experimental data in order to obtain biological knowledge of this data. The researchers execute this task searching external data sources, executing analysis programs on its sequences and generating manual annotations in accordance with its interpretation of the data. This monograph makes a survey of the existing annotation systems and presents the project and the implementation of 'BioNotes', which is a new system proposal that aims at bringing advantages to the researchers in this area. => 03_05_lemos.pdf [MCC05/03] LEMOS, M.; BASILIO, A.; CASANOVA, M.A. Um estudo dos algoritmos de montagem de fragmentos de DNA. 42 p. Port. E-mail: casanova@inf.puc-rio.br Abstract: The human genome project is a program to map and sequence the entire human genome. A number of model organisms were selected for complete sequencing, partly in order to develop new technology for mapping, sequencing and sequence analysis. In addition, the sequences from these genomes were expected to facilitate the elucidation of the functions of genes and sequences in the human genome. One of the main problems of DNA sequencing on a large scale is that its methods only obtain a small part of the DNA. After breaking a sequence into many fragments, cloning them and sequencing them, there is a set of fragments which needs to be merged for the reconstruction of the original DNA sequence. This monograph presents the biological and computational context of DNA sequence assembly. => 03_06_garcia.pdf [MCC06/03] GARCIA, A.F.; SANT'ANNA, C.N.; CHAVEZ, C.v.F.G.; SILVA, V.T.; LUCENA, C.J.P.; STAA, A.v. Agents and objects: an empirical study on software engineering. 44 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: With multi-agent systems (MASs) growing in size and complexity, the separation of their concerns throughout the different development phases is a main need for MAS engineers. Separation of concerns is a well-known principle in software engineering to achieve improved reusability and maintainability of complex software. Hence it is necessary to investigate systematically whether established and evolving abstractions from Software Engineering are able to support the explicit separation of MAS concerns. This paper presents an empirical study that compares the maintenance and reuse support provided by abstractions associated with two OO techniques for MAS development: aspect-oriented development and pattern-oriented development. The gathered results have shown that the abstractions from the aspect-oriented approach allowed the construction of a MAS with improved separation of MAS concerns. Also, the use of this approach resulted in: (i) less lines of code, (ii) less components, (iii) lower component cohesion, and (iv) lower coupling between the components. An additional importance finding of this empirical study is that the aspect-oriented approach also supported a better alignment with higher-level abstractions from agent-oriented models. => 03_07_milidiu.pdf [MCC07/03] MILIDIU, R.L.; RENTERIA, R.P. MKPLS: a multi-kernel based partial least-squares regression. 14 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: MKPLS, a non-linear version of the Partial Least-Squares regression is presented. The non-linearity is introduced in the classical algorithm through the use of multiple kernel functions, thus providing an straightforward non-linear adaption. MKPLS provides a multi-kernel based version for the PLS algorithm with a competitive modeling error. Experimental results show that the use of different kernels for the regression model enhances the predictive power when compared to a PLS regression based on only one function kernel. => 03_08_silva.pdf [MCC08/03] SILVA, J.C.T.; FEIJO, B. Uma maquina de estados finitos para avaliacao de desempenho em um grupo de discussao on-lile. 15 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: This paper presents a finite state machine model to follow-up and to evaluate the student's performance in a web-based live debate. We use a variation of the Pichon-Rivière's [8] Vinculum Theory to establish the mechanism that monitors each participant automatically and evaluates his/her progress as the debate is going on We choose the finite state machine model because it is fast and has low computational complexity. This model satisfies the step-by-step evolution requirements and uses agent technology to perform the evaluation computing issues and to update the information to be used by the machine. This approach reduces the need for discourse structuring of the participants to a minimum. The state transitions use heuristics on the input data. => 03_09_staa.pdf [MCC09/03] STAA, A.v. Arcabouco para automacao de testes de programas redigidos em C. 29 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: A test automation framework is presented. This framework is specifically geared towards modules written in C. Initially an abridged description of the key testing concepts is presented. Two test automation approaches are described. The first one uses a specific test module containing functions that exercise the module being tested. In this approach, the test suite corresponds to the source code of the test control module. The second approach is based on a framework that can be instantiated to test a specific module. The instantiated test control module implements a test script interpreter. In this approach the test suite is define by a test script specifically geared to sufficiently test the given module. The article also emphasizes incremental development of programs as well as of modules. => 03_10_pereira.pdf [MCC10/03] PEREIRA, L.A.M.; PORTO, F.A.M.; MELO, R.N. Objetos de aprendizado reutilizaveis (RLOs): conceitos, padronizacao, uso e armazenamento. 42 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: In this work we list and discuss the concepts and characteristics of Reusable Learning Objects (or simply Learning Objects - RLO or LO) that are being considered by the literature as an efficient solution to cost-effective instructional content development for e-learning. In order to establish a common structure to describe these learning objects, the IEEE Learning Technology Standards Committee (IEEE-LTSC) is developing the Learning Object Metadata standard (LOM) that is being referenced by other important standards such as IMS and SCORM. In this work we propose a LO data model and discuss aspects related to the storage, search and retrieval of LOs from databases. In order to put into perspective the use of LOs by applications, we also propose a four-level database architecture as a reference model. Finally we discuss the automated and semi-automated construction of learning contents. => 03_11_pereira.pdf [MCC11/03] PEREIRA, L.A.M.; CASANOVA, M.A. Sistemas de gerencia de workflows: caracteristicas, distribuicao e excecoes. 33 p. Port. E-mail: casanova@inf.puc-rio.br Abstract: Workflows can be defined as any set of tasks that have to be executed in a coordinated way, in sequence and/or in parallel, by two or more individuals or teams sharing a common goal. Workflow Management Systems - WfMS - are pieces of software designed to automate, at least, the administrative/coordination tasks associated to workflows execution. In this work we will present the main concepts and characteristics of workflow systems considering, as a first step, centralized environments. Further on in the text, due to the typical necessity of workflows to cross departmental borders within an enterprise and between enterprices, we discuss extensions of WfMS required to allow cooperative work of individuals or teams that are geographically dispersed. In this work we also discuss issues related to possible failures during workflow executions. => 03_12_pereira.pdf [MCC12/03] PEREIRA, L.A.M.; MELO, R.N. Um ambiente de banco de dados para ensino a distancia baseado em workflow e objetos de aprendizado. 47 p. Port. E-mail: rubens@inf.puc-rio.br Abstract: Effective e-learning environments should promote high cooperation. Workflow techniques can certainly contribute to such effectiveness because, in these environments, the creation and delivery of learning contents are typically accomplished by individuals through the execution of specific and predefined sequences of activities. Literature in this area has stressed the importance of workflow techniques in e-learning. However, it is also important to consider new methods that may reduce development costs such as reusability and standardization. In this work we propose the application of learning objects (LOs) and their standards. We define the architecture of a web-based heterogeneous and distributed database environment that permits partners to create and share a pool of learning objects. Such LOs may be primitive or recursively composed by aggregation. This environment is being proposed as a database solution for PGL (Partnership in Global Learning) which is an international e-learning project sharing a network of learning objects repositories. => 03_13_staa.pdf [MCC13/03] STAA, A.v. Acompanhamento de projetos. 17 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this article we examine some of the more relevant features of project tracking tools. It is not our intention to design the best possible tool, if such a thing exists. Rather we aim at providing a set of guidelines that may help a software development manager to choose among available tools. Of course the sketches may also be used as the starting point of a tool development project. Following three tools will be outlined: time sheet; problem recording and tracking; and configuration item registering and tracking. The three tools can be integrated. If integrated, they help to reduce the effort to acquire tracking data. In this way we expect that more reliable project tracking data could be gained. An interesting side effect is the possibility to gather data that helps finding the true causes of quality and productivity problems. => 03_14_ierusalimschy.pdf [MCC14/03] IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES, W. Lua 5.0 reference manual. 65 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: Lua is a powerfull, light-weight programming language designed for extending applications. Lua is also frequently used as a general-purpose, stand-alone language. Lua combines simple procedural syntax (similar to Pascal) with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from opcodes, and has automatic memory management with garbage collection, making it ideal for configuration, scripting, and rapid prototyping. This document describes version 5.0 of the Lua programming language and the Application Program Interface (API) that allows interaction between Lua programs and their host C programs. => 03_15_silva.pdf [MCC15/03] SILVA, V.T.; LUCENA, C.J.P. Extending the UML sequence diagram to model the dynamic aspecs of multi-agent systems. 38 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present the dynamic aspects of multi-agent systems (MASs) based on the definition of their elements and relationships as proposed in the TAO metamodel. TAO is a conceptual framework based on agent and object abstractions that elicits an ontology connecting distinc abstractions such as objects, agents, organizations, roles and environments, and their relationships. The dynamic aspects of a MAS are particularly different from the dynamic aspects of an object-oriented system, since a MAS involves different entities and relationships between those entities. The dynamic aspects characterize interactions between the elements of multi-agent systems that are related. In order to model the dynamic aspects of MAS we propose extending the UML sequence diagram, introducing new features. => 03_16_siqueira.pdf [MCC16/03] SIQUEIRA, S.W.M.; BRAZ, M.H.L.B.; MELO, R.N. Developing learning objects through concepts and context. 11 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: The Internet has promoted several changes in the world, including on education. People have been more interested in learning, which makes developing higher quality content material even more important. In addition, people want to satisfy their learning needs according to their personal characteristics such as knowledge background and learning style. Therefore, nowadays there is a great interest on reusable learning content material and adaptive systems. Learning metadata standards contributive to achieve such reusability through the idea of learning objects. However, there is no guidance on how to develop learning objects, but only on how to describe them. The work presented in this paper proposes a model for structuring knowledge (concepts, demonstrations and interactions) in learning objects according to their context, representation and composition. This approach enables increased reusability and adaptability while providing better structured material. => 03_17_lemos.pdf [MCC17/03] LEMOS, M.; ARAGAO, M.V.S.P.; CASANOVA, M.A. Padroes em biossequencias. 72 p. Port. E-mail: casanova@inf.puc-rio.br Abstract: The goal of this work is to study known algorithms for automatic discovery of patterns in a set of biosequences. Patterns we want to find usually correspond to functionally or structurally important elements in proteins or DNA sequences. There is an assumption that these important regions are better conserved in evolution because they are important to the structure or function of the molecule. The discovery of such patterns can help in the understanding of relationships between biosequence, structure, and function of proteins and in a bigger context, help to interpret the working of living organisms. The pattern discovery is one of the fundamental problems in bioinformatics. It can be used in multiple biosequence alignment, protein structure and function prediction, characterization of protein families, promoter signal detection, and other areas. => 03_18_paula.pdf [MCC18/03] PAULA, M.G.; BARBOSA, S.D.J.; LUCENA, C.J.P. Relating human-computer interaction and software engineering concerns: towards extending UML through an interaction modeling language. 9 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The UML suite of modeling languages fails to properly model the human-computer interaction. On the other hand, newly conceived HCI modeling languages need to foresee their role as members of the family of languages that constitute the UML representations for software design, due to their wide acceptance by both researchers and practitioners. MoLIC, our proposed HCI modeling language, seems to be a natural family member since many consistency checks seem to be possible between MoLIC and other software design notations used in UML. MoLIC is based on Semiotic Engineering and represents interaction as threads of conversation users may have with the system. => 03_19_milidiu.pdf [MCC19/03] MILIDIU, R.L.; LUCENA, C.J.P.; MELLO, C.G. Introducing security into prefix-free encoding schemes. 10 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: Minimum redundancy prefix-free codes are widely used to obtain high performance compression schemes. Given a prefix-free encoding for the symbols of a plain text, we propose a secutity enhancement by adding a multiple substitution algorithm with a key: the HSPC2 - Homophonic Substitution Prefix-free Codes with 2 homophones. Breaking the key when we are given a ciphertex, the dictionary, frequencies and codeword lengths, is a NP-Complete problem. In order to introduce security, some compression loss is generated. The compression loss is analysed and the data expansion per character is asymptotically smaller than 5% under usual parsing and coding assumptions. We also present some analytical results on the security impact of adding simple strategies to protect prefix-free encoded data. => 03_20_gerhardt.pdf [MCC20/03] GERHARDT, A.; MACHADO, M.; SILVA, P.M.C.; GATTASS, M. Two-dimensional opacity functions for improved volume rendering of seismic data. 4 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: Although Volume Rendering has gained reputation as a powerful tool for visualizing complex structural and stratigraphic features embedded in 3-D seismic data, the complexity of the parameters involved still requires a lot of work in order to produce an informative image. One of such parameters assigns opacity levels to data-amplitude values to highlight the features of interest. The design of the opacity function usually follows a non-intuitive trial-an-error approach. The strong dependence of the rendered image on other optical parameters also contributes to make it a time-consumming task. Furthermore, some particularities of seismic data contribute to make such approach more suitable for the visualization of high-amplitude anomalies. This work describes a method for generating two-valued (amplitude and gradient) opacity functions that is able to better discrimininate mid-amplitude events without obscuring them with other seismic features. Preliminary results using synthetic data are presented. Examples using real datasets will be presented at the conference. => 03_21_silva.pdf [MCC21/03] SILVA, P.M.C.; MACHADO, M.; GATTASS, M. 3D seismic volume rendering. 4 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: Volume Visualization has become a very useful tool for moder seismic interpretation. The main purpose of this technique is to obtain an overview of structural and stratigraphic features. Most of the currently available software for 3D seismic visualization employs the same rendering equations used in traditional medical imaging. However, the nature of seismic data demands a specialized implementation of the rendering pipeline. Traditional medical methods are designed to visualize isovalue contours that represent boundary surfaces withing three-dimensional sampled scalar fields. In this contex, the use of local gradient information to estimate surface normal at each voxel, during shading calculations, is a reasonable approach. This technique yields excellent results for mathematical fuctions and medical data. In 3D seismic data, however, the illumination of structural and stratigraphic features cannot be obtained with simple isovalue contour and gradient estimations. In this paper, we discuss the necessary modifications to the shading and classification steps of traditional algorithms. Our method combines 3D seismic data with a derived seismic attribute to better adapt the display of seismic events. The paper also presents results for both synthetic and real seismic data to validate our proposal. => 03_22_haendchenfilho.pdf [MCC22/03] HAENDCHEN FILHO, A.; STAA, A.v.; LUCENA, C.J.P. A framework-based approach for building reliable multi-agent systems. 16 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: In this article we present a framework-based approach for rapid and large-scale development of reliable and reusable multi-agent systems (MAS). The agents are instanced through a specification framework and the reuse is achieved by the structural model propagation for multiples agents. Flexibility and agent adaptation capacity is ensured through the use of design patterns foundations, such as encapsulation, high-cohesion, low-coupling - and extensible structures. Quality control is based on three fundamentals: (i) formal specification; (ii) inspections; and (iii) testing. Formal systems specification leads to codes with less errors, and rigorous processes of verification and validation replace the mathematical proofs. The system reliability is assured by the testing tools and facilities provided to perform semi-automated inspections and test cases generation, applied together with an incremental testing strategy. The purpose is reduce time, effort and costs associated with the design and development of MAS with high requirements of quality and reliability. => 03_23_pessoa.pdf [MCC23/03] PESSOA, A.A.; LABER, E.S.; SOUZA, C.P. On the worst case search in trees with hotlinks. 13 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: Let T be a rooted directed tree where nodes represent web pages of a web site and arcs represent hyperlinks. In this case, when a user searches for an information i, it traverses a directed path in T, from the root node to the node that contains i. In this context, we define hotlinks as additional hyperlinks added to web pages in order to reduce the number of accessed pages per search. In this work, we address the problem of inserting at most one hotlink in each web page, minimizing the number of accesses in a worst case search. For this problem, we present an exact algorithm that runs in O(n(nm)2.882) time and uses O(n(nm)1.441) space, where n and m are the number of nodes (internal and external) and the number of leaves in T, respectively. We also introduce a (14/3)-approximate algorithm for the same problem, that runs in a O(n log m) time and requires a linear space. => 03_24_silva.pdf [MCC24/03] SILVA, V.T.; NOYA, R.C. Using the MAS-ML to model a multi-agent system. 14 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: The current object-oriented development practice system analysis is documented through UML artifacts such as Class and Sequence diagrams. Since UML is a widely accepted modeling language, it also would be desirable to offer a UML support for the representation of agent-based system analysis artifacts. Although some central UML constructs are suitably matched for agent-based modeling, several improvements must be made to the UML metamodel to achieve this new goal. This paper presents MAS-ML, a UML extension for agent-based system modeling. The use of MAS-ML for modeling agent-based systems is presented with simple illustrating application. => 03_25_laber.pdf [MCC25/03] LABER, E.S. A randomized competitive algorithm for evaluating priced. 14 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: Recently, Charikar et. al. investigated the problem of evaluating AND/OR trees, with non uniform costs on its leaves, under the perspective of the competitive analysis. For an AND-OR tree T they presented a max{k(T),l(T)}-competitive deterministic polynomial time algorithm, where k(T) and l(T) are functions of the T's topology. Furthermore, they prove that max{k(T),l(T)} is a lower bound on the deterministic competitiveness, which assures the optimality of their algorithm. The power of randomization in this context has remained as an open question. Here, we give a step towards solving this problem by presenting a 0.792max{k(T(,l(T)}-competitive randomized polynomial time algorithm. => 03_26_santanna.pdf [MCC26/03] SANTANNA, C.N.; GARCIA, A.F.; CHAVEZ, C.V.F.G.; LUCENA, C.J.P.; STAA, A.v. On the reuse and maintenance of aspect-oriented software: an assessment framework. 16 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Aspect-oriented software development (AOSD) is gaining wide attention both in research environments and in industry. Aspect-oriented systems encompass new software engineering abstractions and different complexity dimensions. As a consequence, AOSD posses new problems to empirical software engineering. It requires new assessment frameworks specifically tailored to measure the reusability and maintainability degrees of aspect-oriented systems. This paper presents an assessment framework for AOSD, which is composed of two components; a suite of metrics and a quality model. These components are based on well-known principles and existing metrics in order to avoid the reinvention of well-tested solutions. The proposed framework has been evaluated in the context of two different empirical studies with different characteristics, diverse domains, varying control levels and different complexity degrees. Based on empirical and quantitative analysis, the advantages and drawbacks of the framework components are discussed. => 03_27_clua.pdf [MCC27/03] CLUA, E.W.G.; FEIJO, B.; CELESFILHO, W. Refracao e reflexo para sistemas de visualizacao em tempo real utilizando portais. 14 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: This work presents an efficient method for simulating refraction and reflection phenomena for flat surfaces in real time, using portals and texture mapping. The method is easily extended to encompass more complex objects. This paper also claims that the combination of the proposed method with multi-texturing leads to a complete lighting framework for real-time rendering. => 03_28_clua.pdf [MCC28/03] CLUA, E.W.G.; DREUX, M.; FEIJO, B. Utilizacao de nailboards para otimizacao em visualizacao distribuida entre CPU/GPU utilizando relief texture mapping. 15 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: With the increase power of graphics hardware, and in particular with the growing up techniques of programmable pipeline, a graphic application leaves the CPU with a big amount of idle time. In the sense of utilize this time, this work presents a technique that parallelize the rendering between CPU and GPU, using a thread of the CPU and the algorithm of Relief Texture Mapping in order to forward the results into the hardware pipeline. This propose lets many effects naturally inapropriate or difficult to be reached with hardware resources to be treated by the CPU without any crack in the total real time performance of the application. => 03_29_clua.pdf [MCC29/03] CLUA, E.W.G.; FEIJO, B.; DREUX, M. Um metodo de avaliacao generico para sistemas de visualizacao baseados em imagens. 10 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: Much progress had been obtained in image-based rendering techniques and many others ideas are been developed and implemented in this area. Although, there isn't an ideal system that implements the plenoptic function in its totality in a viable aspect in relation to memory, CPU process and authory. The known and developed systems try to create a sub-set of the domain and image of the function, bringing in each implementation restrictions and limitations. These work is at the same time a survey of the main developed works and a tentative to create a set of criteria that allows a critic and comparative evaluation of these systems. => 03_30_mele.pdf [MCC30/03] MELE, A.; ENDLER, M. Um framework para a simulacao de redes moveis Ad hoc. 11 p. Port. E-mail: endler@inf.puc-rio.br Abstract: In this document we present MobiCS2, a flexible framework for prototyping and simulation of protocols for mobile ad hoc networks. After describing its structure and main hot spots, we present an instantiation of this framework for a simplified version of the DSR routing protocol using IEEE 802.11. => 03_31_garcia.pdf [MCC31/03] GARCIA, A.; SARDINHA, J.; LUCENA, C.; LEITE, J.; MILIDIU, R.; CASTRO, J.; ROMANOVSKY, A.; GRISS, M.; LEMOS, R.; PERINI, A. Software engineering for large-scale multi-agent systems SELMAS 2003: Workshop Report. 24 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper is intended to sum the results of the Second International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS'03) held in Portland, Oregon, USA, May 3-4, 2003, as part of the International Conference on Software Engineering (ICSE'03). The main purpose of this workshop was to share and pool the collective experience of people, both academics and practitioners, who are actively working on software engineering for large-scale multi-agent systems. The call for papers elicited some 26 submissions, of which 19 papers were accepted for presentation. A selected set of the workshop papers and invited papers are to appear in the 2nd. edition of the book Software Engineering for Large-Scale Multi-Agent Systems (LNCS, Springer, 2003). The workshop consisted of an opening presentation, several paper presentations organized into five sessions, and three panels. During the workshop we informally reviewed ongoing and previous work and debated a number of important issues. The SELMAS'03 Web page, including the papers and the electronic version of this report, can be found at . We begin by presenting an overview of our goals and the worshop structure, and then focus on the workshop technical program. => 03_32_cunha.pdf [MCC32/03] CUNHA, L.M.; BRANDAO, A.A.F.; ORLEAN, D.; ALBARELLO, A.B.; SCHROEDER, B.; LUCENA, C.J.P. Following up a case study for the semantic web. 7 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The Semantic Web has been proposed as an infrastructure for handling the complexity associated with the problem of information overload on the Web. The use of semantic markup languages such as DAML to describe web documents enables the application of a variety of agent related technologies. They allow, for instance, intelligent, automated, and more efficient (web) services for searching, mining and maintaining information. These technologies leverage applications from e-commerce to knowledge management. This paper describes a case study based on the design and development of a Semantic Knowledge Portal for research projects to support R&D Knowledge Management for the TecComm Group, based on ontologies, web services and other features of the Semantic Web. => 03_33_leite.pdf [MCC33/03] LEITE, J.C.S.P. ; DOOM, J.H. ; HADAD, G.D.S. ; KAPLAN, G.N. Using scenario inspections on different scenarios representations. 27 p. Eng. www.inf.puc-rio/~julio Abstract: Scenarios have been increasingly used as a strategy to help practitioners to a better understanding of the requirements of a software system as well as its interface with the environment. Despite its widespread use by either object-oriented development teams or by human computer interface designers, most of its use is still done in a very ad-hoc way. Departing from the requirements engineering viewpoint, this article aims to show how an inspection process helps software developers to better manage the production of scenarios, independently of the representation used. We use Fagan inspections as the main paradigm to design the scenario inspection method. => 03_34_kozovits.pdf [MCC34/03] KOZOVITS, L.E.; DREUX, M.; FEIJO, B. Um estudo para visualizacao de objetos com geometria dinamica em jogos multi-jogador. 20 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: In the last years, many techniques have been developed to improve the quality, in terms of graphical effects, of multiplayer games, a specialized field in networked virtual environments (Net-VE). Although new techniques have been developed to provide, also, efficient network use in those games, some challenges in this area still remain. A new technique to distribute objects among game players during a session, based on its geometric representation, is proposed in this work in order to overcome the Internet bandwidth limitations. => 03_35_kozovits.pdf [MCC35/03] KOZOVITS, L.E.; MELO, R.N.; FEIJO, B. Um estudo do uso de SGBDs relacionais em arquiteturas de jogos multi-jogador. 24 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: Massively Multiplayer game technology is both a growing and profitable business and a rich field, nowadays, of research due to its multidisciplinary nature. Although being a specialized field in networked virtual environments (Net-VE), multiplayer games have some unique requisites and demand some technologies not common to all Net-VE applications. Therefore, an analysis of the use of RDBMSs in those game architectures, became interesting in order to investigate the possibilities of new uses or improvements. A new technique to obtain game session balance, a feature often desired in those architectures, is proposed based on the use of RDBMSs. => 03_36_kozovits.pdf [MCC36/03] KOZOVITS, L.E.; FEIJO, B. Arquiteturas para jogos Massive Multiplayer. 17 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: Multiplayer game technology is a specialized field in networked virtual environments (Net-VE). With the increasing popularity of Internet games, an analysis of the related problems and solutions of these environments became interesting in order to adapt them to the specific needs of these games. An hybrid architecture using both client-server and peer-to-peer aproach is proposed and implemented in this work for a certain class of multiplayer games. => 03_37_melo.pdf [MCC37/03] MELO, F.; CHOREN, R.; CERQUEIRA, R.; LUCENA, C.J.P.; BLOIS, M. An agent deployment model based on components. 14 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In the past few years, the Multi-agent systems (MAS) area has presented an accelerated growth. New techniques and tools are constantly being proposed and several methodologies have been published to support the development of MAS. Most of these methodologies concentrate on the system analysis phase, giving almost no support for MAS implementation. Since agents can be seen as sort of specialized distributed components, in this paper we propose an agent deployment model based on the CORBA Component Model. We also describe a case study to show the potential of an agent-based application development using this model. => 03_38_pozzer.pdf [MCC38/03] POZZER, C.T.; FEIJO, B.; CIARLINI, A.E.M. Proposicao de um novo paradigma deconteudo para TV interativa. 38 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: In this work, we initially present a general survey on hardware and software technologies for Interactive TV. We then propose methods for generating and presenting interactive stories, which could be seen as a new paradigm for interactive content. The story generation process is accomplished by a simulating process resulting in a set of operations that define the plot of the story. The generated story should then be graphically represented, using Artificial Intelligence techniques, by the animation of the virtual characters. The user interaction during the generation and presentation processes is also widely discussed. => 03_39_pozzer.pdf [MCC39/03] POZZER, C.T.; FURTADO, A.L.; CIARLINI, A.E.M. Agentes e emocoes em historias interativas. 30 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: This work presents a general survey on agent and multi-agent technologies, with special attention to autonomous characters, frequently used in intelligent electronic games. All characters should encapsulate resources that allow them to represent graphically typical events of stories dynamically created by means of a simulation process. The agents can interact with each other and with the scene to which they belong. They should also reflect users' interactions. The resources are implemented over an architecture that integrates modules for generation, representation and exhibition of interactive stories. => 03_40_pozzer.pdf [MCC40/03] POZZER, C.T.; DREUX, M.; FEIJO, B. Representacao grafica de historias interativas. 28 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: This work presents a general architecture to represent dynamic interactive stories which encapsulates the generation, execution and visualization of those stories, given a special attention to the visualization process, by means of Computer Graphics techniques. It has been used cinematographic techniques to capture the essence of the scene, which are composed by a virtual 3D environment. Characters, implemented as reactive agents, interact among each other and with the scene to accomplish the plot of the narrative. => 03_41_pessoa.pdf [MCC41/03] PESSOA, A.A.; LABER, E.S.; SOUZA, C.P. Efficient implementation of a hotlink assignment algorithm for web sites. 12 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: Let T be a rooted directed tree where nodes represent web pages of a web site and arcs represent hyperlinks. In this case, when a user searches for an information i, it traverses a directed path in T, from the root node to the node that contains i. In this context, we define hotlinks as additional hyperlinks added to web pages in order to reduce the number of accessed pages per search. Given a search probability for web page, we address the problem of inserting at most one hotlink per page, minimizing the expected number of accesses in a search. In a previous work, we proposed a dynamic programming polynomial time algorithm for this problem, assuming that the height of T is logarithmic. In this paper, we present an efficient implementation for the previous algorithm that leads to optimal or quasi-optimal hotlinks assignments. We also describe experiments with 1,914 trees extracted from 21 actual web sites and randomly generated access probabilities. Our implementation has found optimal solutions to all but two generated instances in up to five minutes each, using a standard computer. The largest solved instance has 57,877 nodes. => 03_42_gomes.pdf [MCC42/03] GOMES, A.T.A.; COULSON, G.; BLAIR, G.S.; SOARES, L.F.G. A component-based approach to the creation and deployment of network services in the programmable internet. 23 p. Eng. E-mail: lfgs@inf.puc-rio.br Abstract: Dynamism and simplicity in service creation and service deployment are recurring preoccupations to service designers. Although significant research has been carried out in both areas, we belive there remains a need for a better integration of them. The present work is an effort to apply component-based software concepts 'anywhere', from high-level service specifications to low-level software implementation in programmable network devices. This paper presents LindaX, an architecture description language that aims at guiding designers through the use of these concepts in a principled way. => 03_43_baruque.pdf [MCC43/03] BARUQUE, L.B.; PORTO, F.; MELO, R.N. Towards an instructional design methodology based on learning objects. 7 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: Instructional System Development (ISD) is a set of procedures for systematically designing and developing instruction. The development of contents for e-Learning can well benefit from the ISD approach. However, we need to revisit the traditional ISD in order to incorporate the Learning Object (LO) paradigm. LOs are self-contained chunks of online content, which can be reusable and interoperable. In this work, we propose a methodology to design e-learning contents based on the ISD and LO technologies. We also suggest the use of learning theories principles in the chunking and sequencing of LOs in e-Learning modules. The methodology is currently being tested by K-12 teachers from public schools as well as instructional designers from private companies in Brazil. => 03_44_cortes.pdf [MCC44/03] CORTES, M.I.; FONTOURA, M.F.M.C.; LUCENA, C.J.P. A rule-based approach to framework evolution. 22 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Framework development is very expensive, not only because of the intrinsic difficulty related to capturing the domain knowledge, but also because of the lack of appropriate methods and techniques to support the evolution of the framework architecture. In this paper, we introduce the concept of evolution rules and describe its role in the context of framework development. Evolution rules allow the restructure and the addition of new features into the framework design, making sure that these changes are consistent with the applications previously instantiated. There are two kinds of evolution rules: refactorings and extensions. We describe both of them, showing how they can be combined to provide a useful support to framework evolution. In addition, we propose a methodology to prove the correctness of evolution processes. This methodology is based on CCS formalism and model checking techniques. The evolution approach is illustrated through Avestruz, a framework for web searching. => 03_45_staa.pdf [MCC45/03] STAA, A.v. Extensao do arcabouco para a automacao dos testes de programas redigidos em C. 27 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: A module test automation framework is presented. This framework is specifically geared towards modules written in C. This paper extends chapter Instrumentacao in Staa, A.v.; Programacao Modular; Campus 2000 [Staa 2000]; and also Arcabouco para Automacao de Testes de Programas Redigidos em C [Staa 2003]. The extensions described here comprise a module designed to perform passage counting. This instrument may be used to control the quality of the test suite. Another extension involves the control of data spaces accessed by means of pointers. Using this instrument the programmer is able to verify the type correctness of dynamic data spaces and may also observe the occurrence of buffer overflows and memory leaks. => 03_46_pimentel.pdf [MCC46/03] PIMENTEL, M.G.; FUKS, H.; LUCENA, C.J.P. Embutindo mecanismos de coordenacao em ferramentas de bate-papo. 16 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: This research project investigates the coordination of debates using chat tools. In order to evaluate the Mediated Chat 2.0 tool, which implements coordination mechanisms to facilitate the application of group conversation techniques, debates were held during a distance education course using the AulaNet learningware. The logs were analyzed to evaluate how appropriately the proposed mechanisms helped during the coordination of the chat. => 03_47_sayao.pdf [MCC47/03] SAYAO, M.; STAA, A.v.; LEITE, J.C.S.P. Qualidade em requisitos. 31 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: In this article we tackle different quality measurement and improvement techniques that can applied over requirements documentation generated using a classical software approach. Recent literature points to the fact that over 50% of faults detected during test can be traced down to problems in the requirements documentation. In particular, defective requiremens are pointed as the main cause of faults in software projects. Requirements artefacts quality can be measured using approapriate metrics, indicators and tests. A critical analysis of these artefacts can be obtained by the use of inspections. Software metrics provide substancial information to project managent and can be applied during different development stages. Inspections help the early detection of faults. At the core of the inspection process is identifying the information to be inspected and the techniques that will be used to uncover defects. In this paper we present metrics and techniques that can be used in the inspection of requirement documentation generated using a classical software approach. => 03_48_albuquerque.pdf [MCC48/03] ALBUQUERQUE, A.L.P.; VELHO, L. Togetherness through virtual worlds: how real can be that presence? 14 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Virtual worlds aim to give users a sense of being present in these environments by sharing that space and experiences with others. We analyse physical presence and togetherness for social interactions in virtual worlds, based on the users' report of two different platforms available on the internet and discuss how real this presence can be by adding new technologies to exixting ones. => 03_49_albuquerque.pdf [MCC49/03] ALBUQUERQUE, A.L.P.; MELO, R.; VELHO, L. Connecting the presence's factors for guiding measurements. 10 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: This work presents a model as a first insight to discuss the relationships among parameters that affect presence. It is a step in the direction of delimiting the range of causal relationships for the presence phenomenon, as part of an ongoing research towards a framework for measuring presence. => 03_50_brauner.pdf [MCC50/03] BRAUNER, D.; BRANDAO, A.A.F.; CUNHA, L.M.; LUCENA, C.J.P. Um estudo de caso para avaliacao do Knowledge Unified Process para o desenvolvimento de ontologias. 72 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: Knowledge Unified Process (KUP) is an ontology development process that brings together activities from other ontology development methodologies and some software development best practices. This process has been applied to a case study, the ontology development process of an information security alert ontology, to evaluate its usage. The evaluation was based in an instance of an evaluation framework for methodologies and methods. As a result, we belive that KUP's iterative and controlled approach contributes to the ontology development process although there are still some deficiencies that should be tackled so that the process can become more comprehensive. => 03_51_silva.pdf [MCC51/03] SILVA, V.T.; NOYA, R.C.; LUCENA, C.J.P. An UML based approach for modeling and implementing multi-agent systems. 10 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper we present an agent-oriented modeling language called MAS-ML and an approach for mapping MAS-ML diagrams into Java implementations. MAS-ML extends the UML meta-model describing new meta-classes and stereotypes, extending the class and sequence diagrams and proposing two new diagrams: organization and role diagram. The paper also relates MAS-ML to other modeling languages that also extend the UML for modeling multi-agent systems. => 03_52_cunha.pdf [MCC52/03] CUNHA, L.M.; FUKS, H.; LUCENA, C.J.P. Supporting groups and group formation through software agents in a web based learning environment. 23 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: In this work, it is presented how an environment for distance learning, AulaNet, was prepared to support groups. Besides that, software agents were used to help teachers in setting groups of learners. The complexity of work and the dissemination of the information and communication technologies value and make group work a potential allied for the educational or commercial organizations. The AulaNet supports learning in groups and can also be used to support group work, so it is a groupware system that is based on the research from Computer Supported Cooperative Work. In Software Engineering, multi-agent systems provide a properly level of abstraction for the treatment of complex and distributed problems as those characterized by distributed environments such as AulaNet. => 03_53_cunha.pdf [MCC53/03] CUNHA, L.M.; FUKS, H.; LUCENA, C.J.P. Setting groups of learners using matchmaking agents. 6 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: Nowadays, the complexity of work and the dissemination of the information and communication technologies value and make group work a potential allied for the organizations. The computer support offered under the umbrella of groupware systems is based on the research from Computer Supported Cooperative Work (CSCW). The support for the workers should be given since the group formation until its dissolution, going through the group work itself. In Software Engineering, multi-agent systems provide a property level of abstraction for the treatment of complex and distributed problems. One of these problems is characterized by environments for group work and/or learning in groups. In this paper it is presented the study and how a multi-agent system was implemented in the AulaNet environment, which is a groupware for Web-based teaching and learning, to help group formation. => 03_54_gerosa.pdf [MCC54/03] GEROSA, M.A.; FUKS, H.; LUCENA, C.J.P. Analysis and design of awareness elements in collaborative digital environments: a case study in the AulaNet learning environment. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper an analysis is made about how awareness in digital learning environments relates to communication, coordination and cooperation and, consequently, collaboration. A collaboration model, where awareness occupies a central position, is presented. The awareness elements of the AulaNet environment are also analyzed, seeking to identify what awareness information is relevant, how it is generated, how the awareness elements were defined and how individuals control them. This analysis seeks to provide information regarding a project about awareness elements in collaborative digital learning environments. => 03_55_santanna.pdf [MCC55/03] SANT'ANNA, C.N.; GARCIA, A.F.; LUCENA, C.J.P. Evolucao de um sistema multi-agentes: implementando mobilidade em agentes de informacao. 12 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: Development of software agents involves multiple concerns (properties), such as autonomy, adaptation, interaction, learning, and mobility. As software engineering for multi-agent systems (MASs) evolves, there is a need for better understanding of the relationships between its concerns and abstractions from object-oriented (OO) software engineering. Hence it is necessary to investigates sytematically whether OO techniques and abstractions support explicit modularization of these concerns and consequently the development of software agents that are easier to understand, evolve and reuse. This paper presents a study about the evolution of the design and code of a particular multi-agent system. We used two distinct OO techniques to introduce the mobility property in information agents of this MAS: design patterns and aspects. In this study, we assessed the two techniques in order to verify which approach demands less effort during the realization of this scenario. The assessment was based on a suite of metrics. => 03_56_milidiu.pdf [MCC56/03] MILIDIU, R.L.; LIPORACE, F.S. Planning of pipeline oil transportation with interface restrictions is a difficult problem. 9 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: An important constrain when developing a schedule for the operation of an oil pipeline is the interface between adjacent products. Due to the resulting quality loss, some products are not allowed to be adjacent inside the pipeline. The S-PPI decision problem asks about the existence of a feasible pipeline operations sequence that takes into account this additional restriction. We show that S-PPI is NP-complete. An immediate implication from this finding is that the planning of pipeline transportation with interface restrictions for general topology pipeline networks is also difficult. => 03_57_santos.pdf [MCC57/03] SANTOS, I.H.F.; RAPOSO, A.B.; GATTASS, M. Finding solutions for effective collaboration in a heterogeneous industrial scenario. 9 p. Eng. E-mail: gattass@inf.puc-rio.br Abstract: This work introduces a model that categorizes computer-supported collaboration in different levels, according to its support for communication, coordination, cooperation and interoperability. This model is useful for defining the level of collaboration needed in real industrial scenarios or the level that is possible to achieve with the available technology, resources and working culture. These ideas are illustrated by collaborative tools in the field of Computer Graphics being developed for a large oil & gas company. ---------------------------------------------------------------------------------- ---------------------------------------------------------------------------------- 2004 => 04_01_fuks.pdf [MCC01/04] FUKS, H.; RAPOSO, A.B.; GEROSA, M.A.; LUCENA, C.J.P. Applying the 3C model to groupware engineering. 33 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: This paper introduces an approach based on the 3C collaboration model (communication, coordination and cooperation) to the development of collaborative systems. This approach is denominated Groupware Engineering, which is based on Software Engineering, enhanced by concepts originated from the field of CSCW and related areas. The 3C model is studied by means of a detailed analysis of each one of its three elements, accompanied by a case study of a learningware together with the methodology of a web-based course, both designed based on the model. Moreover, the paper describes a component based system architecture following this 3C approach. => 04_02_pessoa.pdf [MCC02/04] PESSOA, A.A. Planning the transportation of multiple commodities in bidirectional pipeline networks. 20 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: PTP is a combinatorial model for oil pipeline transportation. It uses a directed graph G and a set of product batches, where each batch has a corresponding destination node. The graph G has an associated initial state where each arc contains a non-empty sequence of batches and each node contains a (possibly empty) set of batches. A valid movement is to shift the batches of a given arc a=(i,j) in such a way that one batch from the node i is inserted in the beginning of the arc a and another batch, removed from the end of the arc a, is inserted in j. The goal is to reach a state where all batches from a given subset are stored at their destinations. For the general PTP, deciding whether or not a feasible plan exists is proved to be NP-hard. In this paper, we propose the CBPTP, a new variation of PTP. In this variation, arc contents may be shifted in both directions. Moreover, product batches have no destination nodes assigned. Instead, we assign a commodity to each batch. In this case, the node demands that may be satisfied by any batches of the corresponding commodities. For the general CBPTP, we reduce the instance feasibility to the problem of finding a perfect matching in a bipartite graph. Moreover, we give a polynomial algorithm for constructing feasible plans for the CBPTP, when they exist. => 04_03_lemos.pdf [MCC03/04] LEMOS, M.; SEIBEL, L.F.B.; CASANOVA, M.A. Functional requirements of biosequence annotation systems. 21 p. Eng. E-mail: casanova@inf.puc-rio.br Abstract: One of the most important tasks of genome projects is the interpretation of experimental data in order to derive biological knowledge from the data. To achieve this goal, researchers typically search external data source, execute analysis programs on the biosequences, analyze existing annotations and add new annotations to register their interpretation of the data. This paper first summarizes selected tools and techniques used in Bioinformatics. Then, it lists functional requirements for biosequence annotation systems. It proceeds to describe the functionality and the data model of BioNotes, a tool that meets these requirements. Next, it outlines how the tool will support workflow-like composition of analysis programs. Finally, it compares BioNotes with other annotation systems. BioNotes is under development at the Catholic University of Rio de Janeiro and in use at Oswaldo Cruz Institute and at RioGene. => 04_04_moura.pdf [MCC04/04] MOURA, A.L.; RODRIGUEZ, N.; IERUSALIMSCHY, R. Coroutines in Lua. 13 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: After a period of oblivion, a renewal of interest in coroutines is being observed. However, most current implementations of coroutine mechanisms are restricted, and motivated by particular uses. The convenience of providing true coroutines as a general control abstraction is disregarded. This paper presents and discusses the coroutine facilities provided by the language Lua, a full implementation of the concept of asymmetric coroutines. It also shows that this simple but powerful construct supports easy and succint implementations of useful control behaviors such as generators, backtracking and cooperative multitasking. => 04_05_rossetto.pdf [MCC05/04] ROSSEtTO, S.; RODRIGUEZ, N.; IERUSALIMSCHY, R. Abstracoes para o desenvolvimento de aplicacoes distribuidas em ambientes com mobilidade. 14 p. Port. E-mail: noemi@inf.puc-rio.br Abstract: In this paper, we discuss adequate abstractions and mechanisms for developing distributed applications in mobile environments. We argue that coordination and event orientation are important technologies for these environments. To show that these technologies can be used in conjunction with well-known, conventional programming models, we describe a system with synchronous and asynchronous remote procedure call that we implemented over an event-oriented tuple space. To implement synchronous calls in an asynchronous environment, we used the coroutine provided by the Lua progrmming language. => 04_06_silva.pdf [MCC06/04] SILVA, V.T.; LUCENA, C.J.P. Modeling multi-agent systems. 11 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Different methodologies, languages and platforms for multi-agent systems propose very distinct and varied sets of abstraction. In this context, there is a need for creating a conceptual framework that defines the frequently used multi-agent system abstractions, their relationships and their behavior. As it is the case with any new software engineering paradigm, the successful and widespread deployment of multi-agent systems require modeling languages, among other agent-based software technologies, that explore the use of agent-related abstractions and promote the traceability from the design models to code. This paper contemplates the definition of a multi-agent system conceptual framework called TAO and of a multi-agent system modeling language called MAS-ML. Our goals are to describe the structural and dynamic aspects of the abstractions commonly used in multi-agent systems by defining a conceptual framework, to propose a modeling language that describes structural and dynamic diagrams to model such aspects and to present the traceability from the structural models into code. => 04_07_sardinha.pdf [MCC07/04] SARDINHA, J.A.R.P.; GARCIA, A.F.; LUCENA, C.J.P.; MILIDIU, R.L. On the incorporation of learning in open multi-agent systems: a systematic approach. 17 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: 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 a methodology to introduce learning techniques into software agents. To assist the design phase, we present a design pattern that guides the design of the learning property. The methodology and pattern are used in the construction of an open MAS for the Trading Agent Competition environment in order to illustrate the suitability of our approach. => 04_08_silva.pdf [MCC08/04] SILVA, V.T.; LUCENA, C.J.P. Extending UML to model multi-agent systems. 12 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Multi-agent systems (MASs) and object-oriented systems (OOSs) differ in many respects. Traditionally, OOSs are composed of objects whose properties are attributes and methods and interact through method calling. MASs are composed not only of objects but of different elements (such as agents, organizations and others) that have different properties and interact in different ways. MASs require modeling languages, among other agent-based software technologies, that are able to explore the use of agent-related abstractions. Modeling languages should represent the structural (or static) and dynamic aspects of MASs by expressing the characteristics of all its essential entities. Structural aspects comprise the definition of the entities, their properties and their relationships. The dynamic aspects are characterized by the internal execution of the entities and by the interactions between the entities. In this paper we propose to extend the UML modeling language in order to model the structural and dynamic aspects of MASs. => 04_09_paes.pdf [MCC09/04] PAES, R.B.; ALMEIDA, H.O.; LUCENA, C.J.P.; ALENCAR, P.S.C. Enforcing interaction protocols in multi-agent systems. 16 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Numerous multi-agent approaches have been used to develop large and complex systems in many application areas. Interactions among agents, which are commonly ruled by interaction protocols that ensure the correct system execution, constitute one of the main features of these approaches. However, in open, dynamic, and heterogeneous systems, where there are no guarantees about the trustfulness of the agents, mechanisms should be provided to ensure protocol fulfillment. In this paper we propose a conceptual framework and its implementation to enforce secure interaction protocols in multi-agent systems. We use the organization law abstraction as a generalization of other concepts found in the literature, such as constraints, policies, norms and protocols. Finally, the proposed conceptual framework allows laws to be defined as declarative specifications. => 04_10_longo.pdf [MCC10/04] LONGO, H.; ARAGAO, M.P.; UCHOA, E. Solving capacitated arc routing problems using a transformation to the CVRP. 12 p. Eng. E-mail: poggi@inf.puc-rio.br Abstract: A well known transformation by Pearn, Assad and Golden reduces a Capacitated Arc Routing Problem (CARP) into an equivalent Capacitated Vehicle Routing Problem (CVRP). However, that transformation is regarded as unpractical, since an original instance with r required edges is turned into a CVRP over a complete graph with 3r + 1 vertices. We propose a similar transformation that reduces this graph to 2r + 1 vertices, with the additional restriction that r edges are already fixed to 1. Using a recent branch-and-cut-and-price algorithm for the CVRP, we observed that it yields an effective way of attacking the CARP, being significantly better than the exact methods created specifically for that problem.Computational experiments obtained improved lower bounds for almost all open instances from the literature. Several such instances could be solved to optimality. => 04_11_silva.pdf [MCC11/04] SILVA, R.J.M.; RAPOSO, A.B. ; GATTASS, M. Grafo de cena e realidade virtual. 52 p. Port. E-mail: mgattass@tecgraf.puc-rio.br Abstract: Several applications in the field of Virtual Reality (VR) are using scene graphs to represent the virtual environment, since the optimizations offered by these libraries increase the frame rates of the visualization. The increase in the frame rates enhances the immersion sensation, a fundamental characteristic of a VR environment. This text presents a study about the scene graph concept, higlighting the OpenGL Performer and the OpenSceneGraph. Some of the main concepts and tools of VR are also described, as well as their relations with scene graphs. => 04_12_sardinha.pdf [MCC12/04] SARDINHA, J.A.R.P.; CHOREN, R.; MILIDIU, R.L.; LUCENA, J.C.P. Engineering machine learning techniques into multi-agent systems. 28 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: Agent technology is a Distributed Artificial Intelligence (DAI) approach to implement autonomous entities driven by beliefs, goals, capabilities, plans and agency properties: adaptation, interaction, learning, etc. Software agents are the focus of considerable research by the artificial intelligence community, but there is still much to be done in the field of software engineering in order to systematically create large scale multi-agent systems. In this paper, we present an object-oriented framework for building a distributed multi-agent system. We explore in this framework the intersection of DAI with machine learning techniques, and propose a methodology for introducing intelligence in a multi-agent system. A multi-agent system created for the Trading Agent Competition is presented as a case study. Our engineering approach provides a performance gain of 97,3% due to the introduction of machine learning techniques. => 04_13_santos.pdf [MCC13/04] SANTOS, A.C.; LUCENA, A.; RIBEIRO, C.C. Solving diameter constrained minimum spanning tree problems in dense graphs. 10 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: In this study, a lifting procedure is applied to some existing formulations of the Diameter Constrained Minimum Spanning Tree Problem. This problem typically models network design applications where all vertices must communicate with each other at minimum cost, while meeting or surpassing a given quality requirement. An alternative formulation is also proposed for instances of the problem where the diameter of feasible spanning trees can not exceed given odd numbers. This formulation dominated their counterparts in this study, in terms of the computation time required to obtain proven optimal solutions. First ever computational results are presented here for complete graph instances of the problem. Sparse graph instances as large as those found in the literature were solved to proven optimality for the case where diameters can not exceed given odd numbers. For these applications, the corresponding computation times are competitive with those found in the literature. => 04_14_ribeiro.pdf [MCC14/04] RIBEIRO, C.C.; URRUTIA, S.A. An application of integer programming to playoff elimination in football championships. 11 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: Football is the most followed and practiced sport in Brazil, with a major economic importance. Thousands of jobs depend directly from the activity of the football teams. The Brazilian national football championship is followed by millions of people, who attend the games in the stades, follow radio and TV transmissions, and check newspapers, radio, TV, and, more recently, the Internet in search of information about the performance and chances of their favorite teams. Teams which are not qualified to the playoffs loose a lot of money and are even forced to dismantle their structure. We comment and compare the complexity of playoff elimination in football and baseball championships. We present two integer programming models which are able to detect in advance when a team is already qualified to or eliminated from the playoffs. Results from these models can be used not only to guide teams and fans, but are also very useful to identify and correct wrong statements made by the press and team administrators. The application and the use of both models in the context of the 2002 edition of the Brazilian national football championship are discussed. => 04_15_moura.pdf [MCC15/04] MOURA, A.L.; IERUSALIMSCHY, R. Revisiting coroutines. 31 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: This paper defends the revival of coroutines as a general control abstraction. After proposing a new classification of coroutines, we introduce the concept of full asymmetric coroutines and provide a precise definition for it through an operational semantics. We then demonstrate that full coroutines have an expressive power equivalent to one-shot continuations and one-shot partial continuations. We also show that full asymmetric coroutines and one-shot partial continuations have many similarities, and therefore present comparable benefits. Nevertheless, coroutines are easier implemented and understood, specially in the realm of procedural languages. Finally, we provide a collection of programming examples that illustrate the use of full asymmetric coroutines to support direct and concise implementation of several useful control behaviors, including cooperative multitasking. => 04_16_vieira.pdf [MCC16/04] VIEIRA, C.E.C.; SOUZA, R.C.; RIBEIRO, C.C. Um estudo comparativo entre tres geradores de numeros aleatorios. 33 p. Port. E-mail: celso@inf.puc-rio.br Abstract: The objective of this work is to compare three random number generators used by the research group on Heuristic and Parallelism for Optimizatiom/Bioinformatics Problems of the Informatics' Department of PUC-Rio. The random number generators are used in probabilistic algorithms, such that Simulated Annealing, Genetics Algorithms and GRASP. Therefore, the use of a consistent random number generator method is highded recommended. Firstly, the three random number generators are presented. Secondly, theoretical and statistical tests used to analyze generators are discussed. Practical questions, such as algorithm efficiency, portability, facility of implementation are also used to analyze generators. Based on the tests results and many criteria used in the analysis, the best generator for the research group is pointed out. => 04_17_santanna.pdf [MCC17/04] SANT'ANNA, C.N.; GARCIA, A.F.; KULESZA, U.; LUCENA, C.J.P.; STAA, A.v. Design patterns as aspects: a quantitative assessment. 17 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Design patterns offer flexible solutions to common problems in software development. Recent studies have shown that several design patterns involve crosscutting concerns. Unfortunately, object-oriented (OO) abstractions are often not able to modularize those crosscutting concerns, which in turn decrease the system reusability and maintainability. Hence, it is important verifying whether aspect- oriented approaches support improved modularization of crosscutting concerns relative to design patterns. Ideally, quantitative studies should be performed to compare object-oriented and aspect-oriented implementations of classical patterns with respect to important software engineering attributes, such as coupling and cohesion. This paper presents a quantitative study that compares aspect-based and OO solutions for a representative set of design patterns. We have used stringent software engineering attributes as the assessment criteria. We have found that most aspect-oriented solutions improve separation of pattern-related concerns, although some aspect-oriented implementations of specific patterns resulted in higher coupling and more lines of code. => 04_18_renteria.pdf [MCC18/04] RENTERIA, R.P.; MILIDIU, R.L. PLS based regression algorithms and their use in Multi-Agent. 11 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: We present new algorithms aimed at prediction, based on traditional techniques such as partial least-squares and principal component analysis regression. Along, some experiments are reported showing the possible use of these techniques as an AI engine in a Multi-Agent System. => 04_19_baruque.pdf [MCC19/04] BARUQUE, L.B.; MELO, R.N. Towards a reference model for e-Learning governance. 12 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: It is increasingly recognized that e-Learning is crucial to the success of organizations. In an era where the intellectual capital is considered to be the most valuable asset of a company, surprisingly not too much attention is given to the risks and threatens faced by e-learning endeavours. The ultimate goal of e-learning is to enable the business by delivering the knowledge, skills and attitudes (SKA) that the business needs in a cost-effective way. The critical role that e-learning is playing calls for a specific focus on governing it. To this end, we are launching the term e-Learning Governance (a new concept). e-Learning Governance can be defined as the responsibilities and practices carried out with a view to providing strategic direction to an institution's e-learning initiatives, ensuring that established objectives are achieved and risks managed properly, as well as that resources allocated are used responsibly. We need to go beyond methodologies for developing e-learning modules and extend the governance principles to all stages of e-learning. What we need is a Reference Model, independent of technical platforms, organizational structures and pedagogical frameworks, which is proposed in this paper. Our Reference Model conceptual framework encompasses an e-learning information architecture, processes and sub-processes and governance rules and metrics. We exemplify how the governance rules and metrics can be used to control and secure e-learning systems. Further research is being carried out in the Database Lab at PUC-Rio to specify the Reference Model in detail. => 04_20_baruque.pdf [MCC20/04] BARUQUE, L.B.; MELO, R.N. Applying learning theory in the design of learning objects. 16 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: Instructional System Development (ISD) is a set of procedures for systematically designing and developing instruction. A solid foundation in learning theory is an essential element in the application of ISD. One question that one might ask is if there is one best learning theory for instructional design using learning objects (LOs). Depending on the learners and situation, different learning theories may apply. We do not recommend one particular theory for the design of instruction based on LOs. We, rather, suggest the adoption of an ecletic approach to learning theory in the design of LOs. In this work, we give an overview of the ISDMELO methodology, which incorporates principles from different learning schools and give an example of its application. The proposed methodology is currently being experimented by K-12 teachers from public schools as well as instructional designers from private companies in Brazil. => 04_21_brandao.pdf [MCC21/04] BRANDAO, A.A.F.; ALENCAR, P.; LUCENA, C.J.P. Extending object-Z for multi-agent systems specification. 15 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Agent-orientation has gained increased importance in recent years with the emergence and growth of the World Wide Web, both as an area of study in itself, and as a component of other disciplines such as software engineering. As a result, this has led to an increased amount of research developing new informal and formal software engineering techniques to support agent-oriented system specification, design, validation and development. In this paper, we present a formal notation called AgentZ that combines the model concepts and structure proposed by TAO (Taming Agents Objects), a conceptual framework that provides conceptual foundations for agents and objects, with the well known Z and Object-Z formal representation languages. AgentZ was built to provide a formal notation that allows the verification of design models, a key issue within the emerging agent-oriented software engineering research and, as a result, it can help to improve the quality of MAS. => 04_22_vieira.pdf [MCC22/04] VIEIRA, C.E.C.; RIBEIRO, C.C.; SOUZA, R.C. Geradores de numeros aleatorios. 12 p. Port. E-mail: celso@inf.puc-rio.br Abstract: This works presents a short introduction to random numbers generators which are based upon specific mathematical algorithms, sequential and deterministic. These algorithms are crucial for a whole range of applications. First, we discuss the mathematical definition of random number generators and the common techniques for producing the random sequence. Next, the desirable properties of good generators are discussed. Final remarks are made in the last Section. => 04_23_vieira.pdf VIEIRA, C.E.C.; SEIBEL, L.F.B. Tecnicas de paralelismo aplicadas a execucao de fluxos de programas de bioinformatica. 39 p. Port. E-mail: bib-di@inf.puc-rio.br Abstract: One of the most important task of the genome projects is called process of annotation, which consists in the analysis and interpretation of experimental of data in order to derive biological knowledge from the data. Many systems were created to aid the researchers in the annotation process, such as BioNotes. This tool is currently used to annotate the genome of bacteria Gluconacetobacter diazotrophicus and supports three types of annotation: imported, originating from external data source; automatics, generated by execution of biological analysis programs, and manual, created by the biologists. This paper refers to the automatic annotations, that is essential for the researchers but which spend a lot of time to be available in the BioNotes system. This time can be reduced if parallel computing methods were used in the execution of the workflow which generates automatic annotations. The objective of this papers is to discuss these parallel computing methods and to demonstrate the viability and importance of the parallelism methods in the bioinformatics area. => 04_24_russo.pdf [MCC24/04] RUSSO, E.E.R.; FERNANDO, T.; RAPOSO, A.B.; GATTASS, M. Workspaces'challenges for the oil & gas exploration & production industry. 15 p. Eng. E-mail: mgattass@tecgraf.puc-rio.br Abstract: The objective of this paper is to prospect and analyse the main challenges faced when defining and building virtual reality workspaces for Exploration & Production oil & gas activities. Initially, we classify and describe the different challenges. Then, we present the main activities in the oil & gas industry that use this technology. => 04_25_silva.pdf [MCC25/04] SILVA, L.F.; LEITE, J.C.S.P.; BREITMAN, K.K. C&L: uma ferramenta de apoio a engenharia de requisitos. 24 p. Port. E-mail: julio@inf.puc-rio.br Abstract: This paper presents an experimental tool to support requirements engineering activities. This tool, called C&L, is based on two techniques to model software requirements, Scenarios and the Extend Lexicon of the Language. C&L supports a cooperative process to edit Scenarios and the Lexicon. It aims to maintain the traceability between requirements and code. C&L is one of the Requirements Engineering Group's research projects at PUC-Rio. => 04_26_pontes.pdf [MCC26/04] PONTES, A.M.; LEITAO, C.F.; SOUZA, C.S.; BARBOSA, S.D.J.; QUENTAL, V.S.T.D.B. Estudo do impacto do design e das formas de uso sobre a recuperacao de informacoes em foruns de discussao online. 13 p. Port. E-mail: clarisse@inf.puc-rio.br Abstract: This paper presents the results of a case of study in which we verified that consistent information retrieval on discussion forum systems is strongly influenced by certain design decisions (made by the designer), as well as by the various ways how users use the tools. We verified that design features included specifically in view of information retrieval can be declined by some users, which may certainly influence the desired retrieval consistency in a negative way. The foundation of our study relies on Semiotic Engineering concepts, as well as methods and concepts from Linguistic, like as Conversation Analysis. => 04_27_paoliello.pdf [MCC27/04] PAOLIELLO, C.M.; FURTADO, A.L. Sistemas de informacao para comercio eletronico. 45 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: The purpose of the present work is to survey the main features of information systems oriented to the area of e-commerce. The main business requirements are analyzed, and also how e-commerce technologies can contribute to successful comercial sites. Processes related to product sales are examined from a technological viewpoint. In addition, technologies used for the infra-structure of an e-commerce site are reviewed (servers, network architecture, communication links, databases, security, etc). The final part of the work gives a case study, concerning sites for selling books via Internet (Amazon.com), highlighting the experience gained in various business areas, the main problems encountered and the solutions adopted in practice. => 04_28_baruque.pdf [MCC28/04] BARUQUE, C.B.; MELO, R.N. Developing digital libraries using data warehousing and data mining techniques. 11 p. Eng. E-mail: rubens@inf.puc-rio.br Abstract: We propose a manner to the development of Digital Libraries (DL), using Data Warehousing (DWing) and Data Mining (Dmining) Techniques. This DL will be a component of an E-learning environment and will assist the students in a specified course. This will help them in their studies and researches, once the Web will be already filtered by the Data Mining techniques on the subject they need to study. We propose components of the Data Warehousing architecture on which Data Mining techniques can be applied. The Data Warehouse will be like a Central Library and the Data Marts (portions of the Data Warehouse separated by a certain criteria - the course, for example) like Departament Libraries. The retrieval of the DL documents by students will be made through OLAP (On-Line Analytical Processing) techniques based on the DL catalog, which is modeled multidimensionally and based on the Dublin Core metadata elements. A discussion of the DL automatic refreshing based on information collected on the students' interactions is also presented. => 04_29_choren.pdf [MCC29/04] CHOREN, R.; GARCIA, A.; LUCENA, C.J.P. Software engineering for large-scale multi-agent systems SELMAS 2004: workshop report. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper is intended to sum up the results of the Third International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS 2004) held in Edinburgh, Scotland, May 24-25, 2004, as part of the International Conference on Software Engineering (ICSE 2004). The main purpose of this workshop was to share and pool the collective experience of people, both academics and practitioners, who are actively working on software engineering for large-scale multi-agent systems. The call for papers elicited some 24 submissions, of which 14 papers were accepted for presentation. A set of selected workshop and invited papers are to appear in a Lecture Notes in Computer Science (LNCS, Springer) volume. The workshop consisted of an opening presentation, two keynote talks, four technical sessions of paper presentations, and two panels. During the workshop we informally reviewed ongoing and previous work and debated a number of important issues. The SELMAS 2004 website can be found at . We begin by presenting an overview of our goals and the workshop structure, and then focus on the workshop technical program. => 04_30_leal.pdf [MCC30/04] LEAL, M.A.; IERUSALIMSCHY, R. The weak-reference interface. 15 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: Weak references are a powerful programming language abstraction. Among other uses, they can be employed as a finalization mechanism with the advantage of circumventing several difficulties associated with regular finalizers. Nevertheless, weak references are still modestly known by programmers in general, and have received erratic support by garbage-collected language implementations. In this paper we examine weak references' most common and relevant applications, present a survey on how this abstraction is supported by actual programming languages, and discuss weak-reference semantics and implementation alternatives. => 04_31_albarello.pdf [MCC31/04] ALBARELLO, A.B.; LUCENA, C.J.P. fGrin: um framework baseado em sistemas multi-agentes para formacao de grupos de interesse a partir de uma base semantica. 8 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: The current growing use of technology exercises great influence on the behavior of the society. That is partially due to the application of new organizational strategies which assist people and institutions on the development of their activities. A tendency which can be currently observable is associated with the benefits that occur when people with the same interest are joined together for the accomplishment of a cpmmon task. This article presents fGrin, an application instantiated from a framework based as multi-agents systems whose purpose is forming groups of interest based on a semantic database. => 04_32_silva.pdf [MCC32/04] SILVA, V.T.; CORTES, M.I.; LUCENA, C.J.P An object-oriented framework for implementing agent societies. 37 p. Eng. E-mail: lucena@inf.puc-rio.br Asbtract: The goal of multi-agent system architectures and frameworks is to provide reusable agent-oriented classes that can be extended and customized in order to implement domain specific systems. This paper proposes an object-oriented framework for implementing agent societies. Agent societies are multi-agent systems in which it is required or important to represent agent playing roles in organizations. By using the framework, it is possible to implement several agents; each playing different roles in different organizations. The framework contemplates agents, roles, organizations and environments as first-order entities. For each entity, a detailed lifecycle is prescribed by describing the execution states and the events that cause the (allowed) transition of the entity from one state to another. Based on graphic representations of the lifecycle models, the computational models of each entity could be explored. The computational models define the behavior of the entities associated with each state described in the lifecycle models. As a consequence, both the structural and the dynamic aspects of the ASF (Agents Society Framework) framework are presented in the paper. => 04_33_barbosa.pdf [MCC33/04] BARBOSA, C.M.A.; LEITAO, C.F.; SOUZA, C.S.; PREECE, J. An online community framework-based analysis of an existing online community. 35 p. Eng. E-mail: clarisse@inf.puc-rio.br Abstract: An important requirement for developing successful online communities is to understand the impacts of software design on their evolution. This requirement motivated the development of the Online Community Framework (OCF), a theoretically-based analytic tool for helping designers understand and produce computer technology to support social activity online. This paper reports the first extensive use of OCF to analyse in detail a long-standing and successful Brazilian online health support community, the Multiple Sclerosis Sufferers Society. The paper discusses OCF's performance as an epistemic tool and proposes a number of issues for future research. => 04_34_rubinsztejn.pdf [MCC34/04] RUBINSZTEJN, H.; ENDLER, M.; SACRAMENTO, V.; GONCALVES, K.; NASCIMENTO, F. Support for contex-aware collaboration. 11 p. Eng. E-mail: endler@inf.puc-rio.br Abstract: This paper describes a middleware architecture with its location inference service (LIS), and an application for contex-aware mobile collaboration which is based on this architecture. The architecture, named Mobile Collaboration Architecture - MoCA comprises client server APIs, a set of core services for registering applications, monitoring and inferring the execution context of mobile devices, in particular their location. This architecture is suited for the development of new kinds of collaborative applications in which the context information (connectivity, location) plays a central role in defining both the group of collaborators, and the communication mode. => 04_35_lifschitz.pdf [MCC35/04] LIFSCHITZ, S.; MILANES, A.Y.; SALLES, M.A.V. Estado da arte em auto-sintonia de SGBD relacionais. 52 p. Port. E-mail: sergio@inf.puc-rio.br Abstract: Database tuning is the activity of adjusting parameters, configurations and data structures of a database system to the needs of a given workload. In general, most performance adjustments are done on DBMSs by specialized DBAs. This situation motivates the development of self-tuning database systems, that is, systems that adjust themselves without human intervention in order to obtain more performance to their applications. This report presents a study of database systems self-tuning. We classify the existing proposals in two major research fronts: local self-tuning and global self-tuning. The goal of local self-tuning work is to enhance system performance taking into consideration a specific aspect of the system, such as physical design or memory use. Global self-tuning work, on the other hand, tries to consider the trade-offs involved in tuning different aspects of the system. This report also presents an overview of commercial systems that bring self-tuning features. => 04_36_sardinha.pdf [MCC36/04] SARDINHA, J.A.R.P.; MILIDIU, R.L.; LUCENA, C.J.P.; PARANHOS, P.M. A methodology for building trading agents in electronic markets. 11 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: In this paper we present a methodology that guides the development of a multi-agent system for trading in electronic markets. Our approach uses a strategy of decomposing a complex trading problem into sub-problems, and defines agent roles that tackle these sub-problems. We also present an incremental development process for building asynchronous and distributed agents. which enable effortlessly the combination of intelligent agent strategies. This creates a highly adaptable system for unknown situations that is easy to scale up. We use the Trading Agent Competition (TAC) environment as a case study to illustrate the suitability of our approach. => 04_37_sardinha.pdf [MCC37/04] SARDINHA, J.A.R.P.; MILIDIU, R.L.; LUCENA, C.J.P.; PARANHOS, P.M.; CUNHA, P.M. An agent based architecture for highly competitive electronic markets. 13 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: In this paper we present a multi-agent architecture for trading in electronic markets with asynchronous and related auctions. This architecture enables the development of a multi-agent system for a highly competitive environment, where all participants are competing for a limited number of goods. We define intelligent agent roles that tackle sub problems of trading, and present a solution for combining these results in a distributed environment. The agents' typical tasks are price prediction, bid planning, good allocations, negotiation, among others. We use the Trading Agent Competition (TAC) environment as a case study to illustrate the suitability of our approach. We also present LearnAgents, a multi-agent system based on our architecture that achieved the third place in the 2004 TAC Classic competition. => 04_38_leite.pdf [MCC38/04] LEITE, M.; LUCENA, C.J.P.; RODRIGUES, L.F.; MAGALHAES, J. Applying a circuit-based component model to a distributed OO application. 18 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper, we motivate and propose a novel component- oriented model, called Object Circuits (OCs), by applying it to a typical web application: Webclipper. The former aims to take component-orientation to another level, by incorporating ideas from a field that is component-oriented by excellence: electronic circuits. The latter is an application for clipping news, i.e. the process of gathering, formatting and distributing content matching the interest of a group of users. Webclipper has been originally modeled and developed using traditional OO design. It is a real world, distributed OO application with enough complexity and generality to be useful for evaluating our approach. Furthermore, we have chosen an application that is not intuitively associable to OCs to illustrate its true generality. We have ported the application to our paradigm and the results are presented in the paper. => 04_39_demaria.pdf [MCC39/04] DE MARIA, B.A.; SILVA, V.T.; LUCENA, C.J.P. Usando MDA no desenvolvimento de sistemas multi-agentes. 15 p. Port. E-mail: lucena@inf.puc-rio.br Abstract: A great number of methodologies, frameworks and languages are being proposed to support the development of multi-agents systems (MAS). In this paper, we propose the use of MDA in the development of this kind of systems. MDA specifies a structured software development process in modeling stages. In PIM stage, where platform independent models are specified, we propose the use of MAS-ML modeling language for MAS. In PSM stage, where platform specific models are specified, we propose the use of UML modeling language. The MAS-ML models defined on PIM stage are transformed in UML models at PSM stage, based on a framework to implement MAS using object orientation. In the last development stage, the application code is generated from UML models. In this work, we will detail PIM and PSM stages on the development process of MAS and the transformations to generate source code. => 04_40_macedo.pdf [MCC40/04] MACEDO, J.A.F.; PICOUET, P. A performance analysis framework for database management systems. 21 p. Eng. E-mail: bib-di@inf.puc-rio.br Abstract: Performance evaluation of DBMS is a major issue since it is generally difficult to model experimental and performance analysis results. In this paper, we propose an application framework that provides a model, a methodology and a common platform to implement database evaluation analysis tools. Inspired on a conceptual UML model [14], this application framework provides a much more detailed model that allows capturing the complex structure of DBMS modern software. We use a recent work [1] about the implementation of a new data page layout to illustrate the instantiation of our framework. => 04_41_kulesza.pdf [MCC41/04] KULESZA, U.; GARCIA, A.F.; LUCENA, C.J.P.; STAA, A.v. Integrating generative and aspect-oriented technologies. 15 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Over the last years, two new software engineering approaches have been proposed: generative programming and aspect-oriented software development. Generative programming addresses the study and definition of methods and tools that enable the automatic production of system families from a high-level specification. Aspect-oriented software development has been proposed as a technique for improving separation of concerns in the construction of OO software and suporting improved reusability and ease of evolution. The use of aspect-oriented techniques in a definition of a generative approach can bring benefits to the modeling and generation of crosscutting features since early development stages. This paper presents our experience in the definition of an aspect-oriented generative approach. The proposed approach explores the multi-agent systems domain to enable the code generation of agent architectures. => 04_42_furtado.pdf [MCC42/04] FURTADO, A.L. Uma introducao ao uso de programacao em logica para modelagem conceitual. 15 p. Port. E-mail: furtado@inf.puc-rio.br Abstract: Information systems with a database component should be modelled at three levels, at least, which we denominate static, dymamic and behavioural. The static level refers to the classes of facts to be represented in the database. The dynamic level deals with the repertoire of operations, which are provided in order to achieve state transitions, by adding and/or removing facts. Taken together, these first two levels cover the object-oriented aspects of the information system being specified. The behavioural level indicates how the various agents are expected to use he system, so as to reach their goals, through the execution of authorized operations. This third level extends the especification to cover agent-oriented aspects. This work describes a method, supported by a simple tool written in Prolog, for the three-level specification of information systems. The specifications are executable, which allows the designers to run experiments before implementation. The tool includes a version of the WARPLAN plan-generation algorithm. => 04_43_garcia.pdf [MCC43/04] GARCIA, A.F.; FIGUEIREDO, E.M.; LUCENA, C.J.P.; SANT'ANNA, C.N.; KULESZA, U.; STAA, A.v. Aspectizing design patterns: rewards and pitfalls. 21 p. Eng. E-mail: arndt@inf.puc-rio.br Abstract: Design patterns offer flexible solutions to common problems in software development. Recent studies have shown that several design patterns involve crosscutting concerns. Unfortunately, object- oriented (OO) abstractions are often not able to modularize those crosscutting concerns, which in turn decrease the system reusability and maintainability. Hence, it is important verifying whether aspect-oriented approaches support improved modularization of crosscutting concerns relative to design patterns. Ideally, quantitative studies should be performed to compare object-oriented and aspect-oriented implementations of classical patterns with respect to important software engineering attributes for reusability and maintainability, such as coupling, cohesion. This paper present a quantitative study that compares aspect-based and OO solutions for the 23 Gang-of-Four patterns. We have used stringent software engineering, attributes as the assessment criteria. We have found that most aspect-oriented solutions improve separation of pattern-related concerns, although some aspect-oriented implementations of specific patterns result in higher coupling or lower cohesion. => 04_44_sacramento.pdf [MCC44/04] SACRAMENTO, V.; ENDLER, M.; RUBINSZTEJN, H.K.; LIMA, L.; GONCALVES, K.; NASCIMENTO, F.; BUENO, G.A. MoCA: a middleware for developing collaborative applications for mobile users. 7 p. Eng. E-mail: endler@inf.puc-rio.br Abstract: This article presents a middleware architecture for the development and deployment of context-aware collaborative applications for mobile users. The architecture, named Mobile Collaboration Architecture - MoCA comprises client and server APIs, a set of core services for registering applications, monitoring and inferring the execution context of mobile devices, and an object-oriented framework for instantiating and customizing server proxies according to the specific adaptation and context-processing requirements of the applications. MoCA facilitates the development of distributed programs which require access to individual and group context in order to adapt its behavior. The design focused on simplicity, extensibility, scalability, protocol heterogeneity and application customization. => 04_45_assis.pdf [MCC45/04] ASSIS, P.S.; SCHWABE, D.; BARBOSA, S.D.J. Meta-modelos para aplicacoes de hipermidia adaptativa e meta-adaptacao. 31 p. Port. E-mail: dschwabe@inf.puc-rio.br Abstract: The emergence of meta-adaptative systems seems to be a natural evolution process in adaptive systems. Meta-adaptive systems are able to vary the adaptation technique based on various factors. This work analyzes the main aspects related to adaptivity by proposing a reference meta-model for AH Systems. This model is a first step towards the development of a general meta-model intended to be the basis for a meta-adaptive system. => 04_46_condack.pdf [MCC46/04] CONDACK, J.F.S.; SCHWABE, D. AgileOOHDM. 78 p. Eng. E-mail: schwabe@inf.puc-rio.br Abstract: This technical report describes an initial proposal of AgileOOHDM. It is an adaptation of a traditional software engineering based method, OOHDM, considering the Agile approach, more specifically its reflexes in Extreme Programming. This initial proposal was born from a study involving conceptual models of development process, commented in this work too. It is also intended to contribute with the debate between lightweight versus heavyweight methods as the proposal matures. => 04_47_vasconcelos.pdf [MCC47/04] VASCONCELOS, D.R.; HAEUSLER, E.H.; ARAGAO, M.P.; BENEVIDES, M.F. Reasoning about games via temporal logic: a model checking approach. 13 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: This article shows how to use a subset of first-order CTL, namely Game Analysis Logic (GAL), in order to reason about games. A model checking algorithm for GAL is presented. Standard games and solution concepts of Game Theory are described in this context. Taking into account the strong relationship between games and Multi-Agent systems (MAS), the approach described here seems to be completely suitable for MAS formal analysis. Strategic and Coalition games are modelled and formally analyzed as case studies in order to demonstrate this approach. => 04_48_silva.pdf [MCC48/04] SILVA, V.T.; NOYA, R.C.; LUCENA, C.J.P. Using the UML 2.0 activity diagram to model agent plans and actions. 10 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The behavior of an agent is defined through the specification of plans and actions. Agents have a set of plans that are selected to be executed according to their goals (and other mental state information). In this paper, we propose the use of UML 2.0 activity diagrams to model agent plans and actions. We consider a plan to be an activity. Both plans and activities are composed of actions and define the execution sequence. By using some features available in the UML 2.0 activity diagrams and defining some new ones, we demonstrate how these diagrams can be applied to model agent plans and actions. => 04_49_milidiu.pdf [MCC49/04] MILIDIU, R.L.; MELLO, C.G. Ramdomized Huffman codes. 9 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: Huffman codes have widespread use in information retrieval systems. Besides its compressing power, it also enables the implementation of both indexing and searching schema in the compressed file. In this work, we propose a randomized variant of the Huffman data compression algorithm. The algorithm results in a small loss in coding, decoding and compression performances. It uses homophonic substitution and canonical Huffman codes. => 04_50_milidiu.pdf [MCC50/04] MILIDIU, R.L.; MELLO, C.G. Adding security to prefix codes. 18 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: Data compression and ciphering are essential features when digital data is stored or transmitted over insecure channels. Prefix codes are widely used to obtain high performance data compression algorithms. Given any prefix code for the symbols of a plaintext, we propose to add security using a multiple substitution function and a key. We show that breaking the code when we are given the ciphertext, dictionary, frequencies and code lengths is a NP-Complete problem. => 04_51_costa.pdf COSTA, V.G.; LABER, E.S.; HAEUSLER, E.H. Some remarks on the size of boolean functions. 7 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: This report discusses some aspects regarding the size of boolean functions, their minterm and maxterm concepts and some graph properties associated to boolean functions and circuits. --------------------------------------------------------------------------- --------------------------------------------------------------------------- 2005 => 05_01_filippo.pdf [MCC01/05] FILIPPO, D.; ENDLER, M.; FUKS, H. Colaboracao movel com realidade aumentada. 33 p. Port. E-mail: endler@inf.puc-rio.br Abstract: In close relationship with Virtual Reality, Augmented Reality is a recent but promising research field with application in several human activities as medicine, education and trading. Augmented Reality systems are those who offers a real-time interactive interface, in which real world objects perceived by the user are superimposed with virtual ones. When associated to Mobility and Collaboration, these applications became still more powerful. This works presents a general view of Augmented Reality and show the main features of research prototypes that includes Mobility and Collaboration. => 05_02_medeiros.pdf [MCC02/05] MEDEIROS, A.P.; SCHWABE, D.; FEIJO, B. Design rationale for model-based designs in software engineering. 18 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: In this paper we present the Kuaba Ontology, a vocabulary for Design Rationale described in an ontology definition language that allows attributing semantics to recorded Design Rationale content, and defining rules that enable performing computable operations and inferences on this content. This vocabulary extends the argumentation structure of the Issue Based Information System (IBIS) enriching this argumentation structure by explicating the representation of the decisions made during design and their justifications, and the relations between the argumentation elements and generated artifacts. It consists also of interating this argumentation structure with descriptions of the produced artifact, and with information about the design history. In addition, we propose to support the design process through the use of the semantic descriptions defined by formal models of the artifacts. Representing Design Rationale using an ontology definition language and the artifacts formal models, enables a type of software reuse at the highest abstraction level, where rationales are re-employed in designing a new artifact. This kind of reuse is possible in knowledge domains where there are formal models describing the artifacts, in particular, in the Software Design domain. => 05_03_bornstein.pdf [MCC03/05] BORNSTEIN, C.; LABER, E.S.; MAS, M.A.F. A logarithmic competitive mechanism for unit-demand combinatorial auctions. 3 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: This paper studies the unit-demand combinatorial auction problem in which each of the n consumers can purchase at most one item from a set of k items. We obtain a randomized truthful mechanism that attains an expected competitive ratio of O(log(min{k,n})) with high probability. => 05_04_hazan.pdf [MCC04/05] HAZAN, C.; STAA, A.v. Analise e melhoria de um processo de estimativas de tamanho de projetos de software. 31 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: Documented estimation constitutes the basis for the construction of trustworthy software project plans. The size estimation of software projects is used to derive the cost, effort and schedule estimations. Several models have been used by industry to estimate effort and cost given system or artifact size estimates, for example COCOMO. However, the methods to estimate the size of a project have gotten little attention. This work analyzes, from the perspective of CMMI, methods used to generate software projects size estimations using Function Points. It then proposes a new method for estimating size based on experiments. Finally, we describe a simplified process for generating and documenting estimations regarding size, effort, budget, schedule and required critical computer resources. => 05_05_sardinha.pdf [MCC05/05] SARDINHA, J.A.R.P.; NOYA, R.C.; SILVA, V.T.; MILIDIU, R.L.; LUCENA, J.C.P. A combined specification language and development framework for agent-based application engineering. 20 p. Eng. E-mail: milidiu@inf.puc-rio.br Abstract: Software agents are used to solve several complex problems. To properly build agent systems, it is necessary to create software engineering processes and tools to support all the development phases. Indeed, many modeling languages and implementation frameworks are available for system engineers. However, there are few methods that properly combine agent-oriented design and implementation initiatives. In this paper, we propose a development method that goes from the requirements elicitation to the actual implementation of agent systems using a modeling language and an implementation framework. We also present a case study to illustrate the suitability of our approach. => 05_06_amaral.pdf [MCC06/05] AMARAL, F.N.; HAEUSLER, E.H. A logic-based model for (Meta)Heuristics. 15 p. Eng. E-mail: hermann@inf.puc-rio.br Abstract: We present a structural model for (meta)heuristic search strategies for solving computational problems. The model is defined through the use of topos-theoretical tools and techniques which provide an appropriate internal logic (with the language of Local Set Theory) where objects of interest can be represented. => 05_07_ciarlini.pdf [MCC07/05] CIARLINI, A.E.M.; POZZER, C.T.; FURTADO, A.L.; FEIJO, B. A logic-based tool for interactive generation and dramatization of stories. 18 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: A key issue in interactive storytelling is how to generate stories which are, at the same time, interesting and coherent. On the one hand, it is desirable to provide means for the user to intervene in the story. On the other hand, it is necessary to guarantee that user intervention will not introduce events that violate the rules of the intended genre. This paper describes LOGTELL, a tool we have been developing for interactively generating and dramatizing stories. We focus on the specification of a formal logic model for events and characters' behaviour. Based on the model, the user can interact with the tool at various levels, obtaining a variety of stories agreable to individual tastes, within the imposed coherence requirements. The system alternates stages of goal inference, planning, user intervention and 3D visualization. Our experiments have shown that the system can be used not only for entertainment but also to help in the creation and adaptation of stories in conformity with a specified genre. => 05_08_maia.pdf [MCC08/05] MAIA, R.F.; RODRIGUES, V.J.S.; ENDLER, M. ORB para dispositivos moveis em redes sem fio. 25 p. Port. E-mail: endler@inf.puc-rio.br Abstract: This technical report describes and discusses the recent efforts towards standards and implementations of Object Request Brokers for wireless networks. In particular, it describes the Wireless CORBA standard, an implementation of this standard called MIwCO, as well as other CORBA middlewares to mobile computing. => 05_09_brandao.pdf [MCC09/05] BRANDAO, A.A.F.; SILVA, V.T.; LUCENA, C.J.P. A model driven approach to develop multi-agent systems. 14 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: The Object Management Group's (OMG) Model Diven Architecture (MDA) initiative has been the focus of research in academia and industry because it raises a fast and consistent software development through the use of software models. In this context we propose a model driven approach to the development of multi-agent systems beginning with an ontology for the multi-agent systems (MAS) domain. The approach aims to combine these two emerging research areas in order to overcome the complexity associated with the development of MAS. => 05_10_brandao.pdf [MCC10/05] BRANDAO, A.A.F.; SILVA, V.T.; LUCENA, C.J.P. Multi-agent system design verification using knowledge-based reasoning. 10 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: This paper presents a knowledge-based approach to the verification of the design consistency of multi-agent systems modeled by using MAS-ML, which is a multi-agent system modeling language. We provide a formal description of the MAS-ML diagrams as well as a reasoning engine that are used together to detect intra-model and inter-models inconsistencies. Intra-model inconsistencies are detected based on the specification of each diagram provided by the MAS-ML formal description. Inter-models inconsistencies are identified based on the interdependencies between the diagrams described in the reasoning engine. => 05_11_feijo.pdf [MCC11/05] FEIJO, B.; BADARO, P. Proposta de um sistema brasileiro para producao de conteudo digital. 17 p. Port. E-mail: bruno@inf.puc-rio.br Abstract: This paper presents the concept of visualization and its relation with the strategic sector of digital content development, which involves audiovisual pieces and software. The technical aspects of Digital TV, films, and high definition are treated in an integrated and clear way. Two complementary models, called Model of Integrated Sub-channels and Model of Integrated Regional Axes, are presented as the solution for a number of problems of the audiovisual production chain in Brazil, such as: interactivity; regionalization; boom of demand for digital content; Channel Brazil - Mercosul; training of labor force. Also this article warns about the serious mistake committed by the government in the Digital TV program when it does not identify the needs before searching for solutions. Finally, the paper claims that a medium and long-term industrial policy should be pursued aiming the formation of industrial clusters in visualization. => 05_12_soares.pdf [MCC12/05 Classified] SOARES, L.F.G.; RODRIGUES, R.F. Levantamento do estado da arte em sincronismo de Midias. 110 p. Port. E-mail: lfgs@inf.puc-rio.br Abstract: This report presents a state of the art on temporal and spatial synchronization in multimedia/hypermedia presentations, focusing on the interactive digital television scenario. The main temporal and spatial synchronization paradigms are presented, as well as the conceptual data models for the applications, and the main existent alternatives for synchronization specification. We conclude by presenting a proposal to the Brazilian Digital TV System (SBTVS). => 05_13_bornstein.pdf [MCC13/05] BORNSTEIN, C.; LABER, E.S.; MAS, M.A.F. On behalf the seller and society: a bicriteria mechanism for unit demand combinatorial auctions. 23 p. Eng. E-mail: laber@inf.puc-rio.br Abstract: This work focuses on obtaining truthful mechanisms that aim at maximizing both the revenue and the economic efficiency (social welfare) for the unit-demand combinatorial auction problem (UDCAP), in which a set of k items is auctioned to a set of n consumers. Although each consumer bids on all items, no consumer can purcharse more tham one item in the UDCAP. We present a framework for devising poly-time randomized competitive truthful mechanisms that can be used to either favor economic efficiency or revenue. => 05_14_figueiredo.pdf [MCC14/05] FIGUEIREDO, E.M.L.; STAA, A.v. Avaliacao de um modelo de qualidade para implementacoes orientadas a objetos e orientadas a aspectos. 29 p. Port. E-mail: arndt@inf.puc-rio.br Abstract: This paper aims at assessing, identifying weaknesses and proposing enhancements to the quality model used by Sant'Anna to compare properties of object-oriented and aspect-oriented software systems. The assessment includes an empirical study and a qualitative analysis of the metrics used by Sant'Anna's in his model. We present a revised quality model attempting at reducing the weaknesses of the original one. The new model contains a minimal set of metrics, some of which complement the original model. All metrics are defined by means of a process that could be automated. => 05_15_rodrigues.pdf [MCC15/05] RODRIGUES, P.S.L.; POZZER, C.T.; FEIJO, B.; VELHO, L.; CIARLINI, A.E.M.; FURTADO, A.L. An expressive talking head narrator for an interactive storytelling system. 18 p. Eng. E-mail: bruno@inf.puc-rio.br Abstract: This paper addresses the problem of telling - or, in a broader sense, presenting and exhibiting - stories based on sequences of events previously computed in an interactive fashion. A scheme is proposed which, in addition to the participating 3D virtual actors, makes use of an expressive talking head system, represented by an avatar with facial expressions, who acts as an animated Narrator of the story to the attending spectators. The implemented system integrates modules for managing plot generation, user interaction, visualization and narration. Scene rendering as well as the Narrator's speech and facial expressions are real-time synchronized during plot dramatization. The resulting environment may be used in the development of applications involving chidlike worlds, interactive TV, games, and distance learning. => 05_16_hazan.pdf [MCC16/05] HAZAN, C.; FUKS, H.; LUCENA, C.J.P. Avaliacao do tamanho funcional de ferramentas de E-learning. 28 p. Port. E-mail: hugo@inf.puc-rio.br Abstract: E-learning tools are key factors to the success of Web-based Education. There has been substantial research evaluating such tools on criteria regarding the quality of the finished product. However, little has been said so far about the quality and productivity of the tools' development process. This paper proposes the Function Point Analysis (FPA) method as a means to functional size assessment of e-learning tools. It also presents how the method was used and the results collected in the evaluation of the AulaNet learningware. => 05_17_furtado.pdf [MCC17/05] FURTADO, A.L.; CIARLINI, A.E.M.; FEIJO, B.; POZZER, C.T. Conceptual modelling for storytelling (with a Case Study). 42 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: How to characterize a literary genre is a much debated problem, which can be approached with useful results by combining models drawn from both Literary Theory and Computer Science. Once a genre is specified with some rigour in a constructive way, it becomes possible not only to determine whether a given plot is a legitimate representative of the genre, but also to generate such plots, an ability of obvious relevance to Storytelling theory and practice. A conceptual modelling method with this purpose is presented, based on a plan recognition/plan generation paradigm. The method leads to the formulation of static, dynamic and behavioural schemas, expressed in temporal logic, and to multi-stage interactive plot generation, supported by a prototype tool. The tool is of special help for the composition of plots through the adaptation of plots fully or partially generated in automatic mode. A case study, involving a simples Swords and Dragons genre, illustrates the discussion. => 05_18_soares.pdf [MCC18/05 Classified] SOARES, L.F.G.; RODRIGUES, R.F. Nested contex model 3.0: Part 1 NEM. 00 p. Eng. E-mail: lfgs@inf.puc-rio.br lfgs@inf.puc-rio.br Abstract: This technical report describes the basic entities of Nested Contex Model (NCM) version 3.0. NCM is a conceptual model focused on the representation and handling of hypermedia documents. => 05_19_leal.pdf [MCC19/05] LEAL, M.A.; IERUSALIMSCHY, R. A formal semantics for finalizers. 15 p. Eng. E-mail: roberto@inf.puc-rio.br Abstract: Automatic finalization is a common but inherently complex language facility that makes the garbage collection process semantically visible to client programs. With finalizers, memory management becomes more flexible, and garbage collectors can be used to recycle other resources in addition to memory. Formal language models usually ignore garbage collection, and therefore are unable to properly describe finalization. In this paper we use an operational approach to develop a new abstract model that explicitly represents memory management actions in a garbage-collected programming language based on the alpha-calculus. We formally state and prove several important properties related to memory management, and employ the model to describe and explore a semantics for finalizers. => 05_20_sayao.pdf [MCC20/05] SAYAO, M.; LEITE, J.C.S.P. Rastreabilidade de requisitos. 26 p. Port. E-mail: julio@inf.puc-rio.br Abstract: The Requirements Management, which is associated to the quality of software development process, is based on requirements traceability. In this work we deal with requirements traceability, aiming to present some associated aspected to its use in the software development and evolution process. We also seek to make the reader aware of the implications of traceability to the product quality, associating traceability to both technical and managerial aspects. We present two traceability reference models, and heuristics that can guide the development team in a traceability model definition process to the system to be developed. => 05_21_bastos.pdf [MCC21/05] BASTOS, T.A.; RAPOSO, A.B.; GATTASS, M. Um framework para o desenvolvimento de aplicacoes de realidade virtual baseadoas em componentes graficos. 14 p. Port. E-mail: mgattass@inf.puc-rio.br Abstract: Virtual Reality (VR) applications differ from other applications for the usage of special devices and the concern with the user's sensation of immersion. The use of frameworks is important to such applications due to the high complexity and costs involved in their development. This work presents a graphical component-based VR framework designed to be simple, flexible, and to allow the creation of easy-to-operate applications. => 05_22_rubinsztejn.pdf [mcc22/05] RUBINSZTEJN, H.K.; ENDLER, M.; RODRIGUEZ, N. A framework for building customized adaptation proxies. 15 p. Eng. E-mail: endler@inf.puc-rio.br Abstract: This article presents a framework for the development of adaptive proxies. The framework is in charge of collecting clients current context (device and network), and trigger the appropriate adaptations. MoCA's ProxyFramework offers mechanisms for cache management, as wel as for adaptation management. It is possible to specify priorities and associate selectors to each adaptation. It is also possible to start an action at the moment of a context change. Developers need only to dreate their application-specific adaptations (developing adapters modules) and define trigger conditions, priorities and selectors, in the form of rules in XML format. In addition to the adapters, another extension point is the caching policy to be used. => 05_23_paula.pdf [MCC23/05] PAULA, M.G.; BARBOSA, S.D.J.; LUCENA, C.J.P. Conveying human-computer interaction concerns to software engineers through an interaction model. 15 p. Eng. E-mail: simone@inf.puc-rio.br Abstract: This paper addresses the challenge of efficiently representing and communicating decisions about human-computer interaction to software engineers. It describes and illustrates in a case study how an interaction model may be used to derive a skeleton of certain UML diagrams, namely: use case, class, and sequence diagrams. Our goal is to provide a clear representation of the interactive exchanges that may take place, in order to prevent human-computer interaction decisions to be lost or inadvertently overruled when designing the system architecture and internal functional behavior. => 05_24_endler.pdf [MCC24/05] ENDLER, M.; RUBINSZTEJN, H.; ROCHA, R.C.A.; SACRAMENTO, V. Proxy-based adaptation for mobile computing. 22 p. Eng. E-mail: endler@inf.puc-rio.br Abstract: In mobile computing and wireless communications, proxies are mainly used to overcome the three major problems of these networks: throughput and latency differences between the wired and the wireless links, host mobility, and limited resources of mobile hosts (MH). This report aims to present a general classification of proxy-based approaches, describe the most frequent functions assigned to proxies, discuss some of the underlying techniques used for implementing these functions, and present concrete examples of the most successful and well-known systems. => 05_25_brandao.pdf [MCC25/05] BRANDAO, A.A.F.; SILVA, V.T.; LUCENA, C.J.P. An ontology-based method for structuring multi-agent systems formal specifications. 13 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Agents are becoming a popular technology for the development of distributed, heterogeneous and always available systems. The application of agent technologies requires extensions to the existing object-oriented modeling languages to accommodate agent-related abstractions such as roles, organizations and environments. If it is difficult to analyze and establish the well-formedness of a set of diagrams of a UML-like object-oriented modeling language, it gets far more complex when the language is extended to add a set of agency related abstractions. This paper presents an ontology-based method for structuring MAS specifications. The goal of the method is to facilitate the analysis of such systems. The method proposes the analyses of MAS designs based on three phases that cover different sets of design properties. Focusing the analysis on related properties grouped into three different phases facilitates the design activity, the automatic detection of inconsistencies and the improvement of the design. => 05_26(confidencial) => 05_27_lima.pdf LIMA, L.S.; GOMES, A.T.A.; ZIVIANI, A.; ENDLER, M.; SOARES, L.F.G.; SCHULZE, B. Peer-to-peer resource discovery in mobile grids. 13 p. Eng. E-mail: endler@inf.puc-rio.br Abstract: Grids are likely to be the mainstay of distributed computing. Grid was firstly applied as a concept for sharing computing resources among wired nodes, but there has been a growing interest in extending this concept to mobile environments. Although significant work has been done towards mobile grids, much of it has followed centralized approaches based on infrastructured wireless networks. We belive that a less restrictive, decentralized approach that supports mobile collaboration in ad hoc wireless networks can cater for novel grid applications. To address this issue, we propose a middleware architecture called MoGrid. MoGrid orchestrates the distribution of grid tasks among mobile devices in a peer-to-peer (P2P) fashion. In this paper, we focus on the P2P Discovery Protocol (P2PDP), which is a central element of our architecture. P2PDP aids in distributing tasks among the most resourceful devices, while mitigating the overhead of control messages exchanged among them. We describe a prototype implementation of our architecture and discuss some issues related to the adoption of P2PDP as an ad hoc resource discovery mechanism in mobile grids. => 05_28_condack.pdf CONDACK, J.F.; SCHWABE, D. Swell, SwellOnt and SwellQL - a software engineering environment for searching semantic web services. 15 p. Eng. E-mail: dschwabe@inf.puc-rio.br Abstract: In this report, we describe the Swell environments. It is a software engineering tool for searching semantic web services. In order to accomplish this, we developed a specialçized ontology and a query language, named SwellOnt and SwellQL recpectively. The environment is available as an extension of Eclipse. => 05_29_carvalho.pdf CARVALHO, G.R.; PAES, R.B.; LUCENA, C.J.P.; CHOREN, R. Governing the interactions of an agent-based open supply chain management system. 27 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In open multi-agent systems, in which components are autonomous and heterogeneous, trust is crucial. This paper presents a law-governed mechanism to ensure trust and augment reliability in open systems. The mechanism is based on governing the interactions within the system. This is a non-intrusive method, which allows free development of agents for open systems - they must only follow the protocols specified for the system. This paper gives a complete example of the law government approach, using a real open system environment for supply chain management. In this paper, the XMLaw description language was extended to specify the characteristics of the Trading Agent Competition - Supply Chain Management (TAC SCM) domain and these new features have been mapped to a mechanism that interprets the descriptions and analyzes the compliance of the software agents that inhabit the open software system to its laws. Using this specification, a supply chain management application based on TAC-SCM's description was developed. => 05_30_paes.pdf PAES, R.B.; LUCENA, C.J.P.; ALENCAR, P. Governing agent interaction in open multi-agent systems. 35 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Open multi-agent systems are increasingly gaining importance in both academy and industry. These systems are composed of autonomous distributed agents that can be developed by independent teams. Furthermore, agents can have different architectures, and even conflicting goals. However, in some applications domains such as electronic commerce, the system a whole should inspire confidence in their users and also in the parts involved in the business. Confidence means basically that the system will act according to what is expected, that is, it is behaving according to specifications while maintaining the quality that its services are being provided. However, in an open multi-agent system scenario, the code of agents are frequently inaccessible, or even the agents themselves are unknown beforehand. Achieve higher degrees of confidence claims for mechanism to monitor system execution and verify if the actual behavior is compatible with what is specified. This paper uses a law-enforcement approach and presents an object-oriented framework to monitor and verify conformity of agents' behavior. First it is used a model to specify agent's interaction. This model is extended to increase its expressivity. Then, based on this extended model the object-oriented framework is built. The main goal of this paper is to share ideias about how a law governing approach can be implemented in a way that it could serve as 'how-to-do-it' models for future work in the same field. => 05_31_maria.pdf MARIA, B.A.; SILVA, V.T.; LUCENA, C.J.P. An MDA-based approach for developing multi-agent systems. 16 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: In this paper, we propose an MDA-based approach for developing multi-agent systems (MAS). MDA specifies a structured software development process divided in modeling stages. In the PIM stage, where platform independent models are specified, we propose to use MAS-ML, a MAS modeling language that does not restrict or specify implementation platforms. In the PSM stage, where platform specific models are defined, we propose to transform MAS-ML models into UML models based on an object-oriented framework for implementing MAS. In the last stage, the application code is generated from UML models. The MDA stages and related transformations are detailed in the paper. => 05_32_felicissimo.pdf FELICISSIMO, C.H.; SARDINHA, J.A.P.R.; LUCENA, C.J.P. Sweetening regulated open multi-agent systems with support for agents to reason about laws. 14 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Inspired by the Tim Berners-Lee's vision of a Semantic Web, this work aims to present an approach to regulate open Multi-Agent Systems (MAS) based on ontologies plus layers of logic and rules for data inference. In our approach, a top-down modeling of laws is designed for regulating an open MAS. We propose to regulate agents' actions based on four levels of abstractions: Environment laws, organization laws, role laws and interaction laws. These levels of regulations are represented by a domain independent normative ontology, which has the six related main concepts: Environment, Organization, Role, Action, Norm and Penalty. The layer of logic from our solution is composed of a combination of Description Logic, Deontic Logic and some ideas from Defeasible Logic. The rule layer is composed of user defined rules and a rule-based inference engine. Some advantages of this work are: automatic composition of laws by using rules and inference, facility to regulate agents' actions considering all the designed law levels, consistency check for pre-defined laws, and support for black-boxes agents to reason about laws in open MAS. => 05_33_carvalho.pdf CARVALHO, G.R.; LUCENA, C.J.P. Governing the interactions of an agent-based open supply chain management system. 21 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Governance means that specifications are enforced dynamically at application run-time. Governance framework is a technique to design open systems for extensions. We based this proposal on object-oriented framework concepts and adapted them for distributed agents and interactions. A governance framework reuses general specifications and some infrastructural services provided by open MAS. Governance frameworks structure the extensions of open system instances as variations in components, defined as roles, and variations in interactions among agents, defined as templates. Templates are used to gather a core implementation and extension points. Extension points are "hooks" that will be customized to implement an instance of the governance framework. During framework instantiation, roles are bound to external agents and templates are refined to concrete interaction specification. As a proof of concept experiment, in this paper we propose a framework for instantiating supply chain management applications as open systems. => 05_34_cacho.pdf CACHO, N.A.A.; FIGUEIREDO, E.M.L.; SANT'ANNA, C.N.; GARCIA, A.F.; BATISTA, T.V.; LUCENA, C.J.P. Aspect-oriented composition of design patterns: a quantitative assessment. 25 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Pattern composition has been shown as a challenge to applying design patterns in real software systems. One of the main problems is that the implementations of multiple design patterns in a system are not limited to affect the application classes. They also crosscut each other in multiple heterogeneous ways so that their separation and composition are far from being trivial. In this context, it is of paramount importance to systematically verify whether aspect-oriented programming (AOP) supports improved composability of design patterns. This paper presents a systematic investigation on how AOP scales up to deal with modularization of pattern-specific concerns in the presence of pattern interactions. We have made both qualitative and quantitative assessments of 62 pair-wise compositions taken from 3 medium-sized systems implemented in Java and AspectJ programming languages. Our analysis has also included the evaluation of compositions involving more than two patterns. The assessment was based on four fundamental software attributes, namely separation of concerns, coupling, cohesion, and conciseness. => 05_35_milanes.pdf MILANES, A.; RODRIGUEZ, N.; SCHULZE, B. Managing jobs with an interpreted language for dynamic adaptation. 10 p. Eng. E-mail: noemi@inf.puc-rio.br Abstract: In this paper we explore the advantages of using interpreted languages for building submiting engines for the grid. In particular, we discuss an example engine, developed using the interpreted language Lua, for submitting jobs in a cluster, which can be extended to a grid environment. We claim that the flexibility offered by interpreted languages justifies the problems related to the intrinsic loss of efficiency associated with this kind of languages. The focus of this work is on adaptation and ease of use. => 05_36_sardinha.pdf SARDINHA, J.A.R.P.; MOLINARO, M.S.; PARANHOS, P.M.; CUNHA, P.M.; LUCENA, C.J.P. A multi-agent architecture for a dynamic supply chain management. 13 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Supply chain management (SCM) is a very challenging problem that is leveraging the e-commerce explosion. Today's supply chains are essentially static, because they rely on long-term relationships among key trading partners. Dynamic practices are vital because they offer better matches between suppliers and customers as market conditions change. This paper presents a flexible architecture for dealing with the next generation of SCM problems, based on a distributed multi-agent architecture of a dynamic supply chain. We define intelligent agent roles that tackle sub problems of a dynamic SCM, and present a solution for combining these results in a distributed environment. The agents' typical tasks are bid planning, production scheduling, supplier negotiation, among others. We also present an implementation of this architecture used in the international test bed for SCM solutions, the Trading Agent SCM competition, as well as some experimental results. => 05_37_araujo.pdf ARAUJO, A.P.F.; URRUTIA, S.A.; BOERES, M.C.S.; REBELLO, E.F.V.; RIBEIRO, C.C. Hybrid parallel metaheuristics for computational grids - a case study for the mirrored traveling tournament problem. 19 p. Eng. E-mail: celso@inf.puc-rio.br Abstract: Metaheuristics are general high-level procedures that coordinate simple heuristics and rules to find good approximate solutions to computationally difficult combinatorial optimization problems. Parallel implementations of metaheuristics appear quite naturally as an effective approach to speedup the search for approximate solutions. Besides the accelerations obtained, parallelization also allows solving larger problems or finding better solutions. We present in this work four slightly differing strategies for the parallelization of an extended GRASP with ILS heuristic for the mirroed traveling tournament problem, with the objective of harnessing the benefits of grid computing. Computational experiments on a dedicated cluster illustrate the effectiveness and the scalability of the proposed strategies. In particular, we show that the parallel strategy implementing cooperation through a pool of elite solutions scales better than the others and is able to find solutions that cannot be reached by the others. Computational grids are distributed high latency environments which offer significantly more computing power than traditional clusters. The best parallel strategy was also implemented and tested using a true grid platform. We report original results from pioneer computational experiments on a shared computational grid formed by 82 machines distributed over four clusters in three cities, illustrating the potential of the application of computational grids in the fields of metaheuristics and combinatorial optimization. => 05_38_garcia.pdf GARCIA, A.F.; BATISTA, T.V.; RASHID, A.; SANT'ANNA, C.N. Driving and managing architectural decisions with aspects. 13 p. Eng. E-mail: lucena@inf.puc-rio.br Abstract: Software architects face decisions every day which have a broadly-scoped impact on the software architecture. These decisions are the core of the architecting process as they typically have implications in a multitude of architectural elements and views. Without an explicit representation and management of those crucial choices, architects can not properly communicate and reason about them and their crosscutting effects. The result is a number of architectural breakdowns, such as decreased evolvability, time-consuming trade-off analysis, and unmanageable traceability. Aspects are a natural way to capture widely-scoped architectural decisions and promote software architectures with superior modularity. => 05_39_filippo.pdf FILIPPO, D.; FUKS, H.; LUCENA, C.J.P. AulaNetM: extension of the AulaNet environment to PDAs. 9 p. Eng. E-mail: hugo@inf.puc-rio.br Abstract: The widespread use of mobile equipment and wireless networks offers a huge potential for educational applications, since these technologies enhance traditional applications and bring about new ones. Interactive multimedia portable devices can be regarded as a powerful learning tool, even though there are restrictions such as small screen sizes, limited memory, unstable connectivity and difficulties imposed by mobility. In this paper, we present the AulaNetM, an extension of the AulaNet teaching-learning environment for PDA users, explaining, how context information is important in order to enrich the learning activities carried out and, at the same time, select the content and the activities presented to the learner. => 05_40_furtado.pdf FURTADO, A.L. Lattice operators over entity classes. 29 p. Eng. E-mail: furtado@inf.puc-rio.br Abstract: The static conceptual specification of information systems, adopting the Entity-Relationship (ER) model, has been, for a long time already, extended with is_a and part_of links, whereby specialization/ generalization and decomposition/ aggregation of entity classes can be introduced. Usually these links impose tree-like hierarchies, although more general cases of partial ordering are quite often encountered in practice. Here we shall consider lattice hierarchies, on which two dual operators are defined. Using these operators, we show one way to classify entity instances on the basis of their currently known properties, in turn organized as lists of property:value pairs (frames). A broad overview of the facilities offered by our method is presented, including queries involving structured requirements, also expressed by frames, which look for approximately matching instances. => 05_41_soares.pdf SOARES, L.F.G. Recomendacoes para modelos de referencia do Sistema Brasileiro de TV Digital. 20 p. Port. E-mail: lfgs@inf.puc-rio.br Abstract: This report is related to the Brazilian Digital System - SBTVD - recommendation, regarding to its declarative middleware. In particular, it deals with the problem of media synchronism.