Monografias em Ciência da Computação



Departmento de Informática 
Pontifícia Universidade Católica do Rio de Janeiro - PUC-Rio
Rio de Janeiro - Brazil

This file contains a list of the technical reports of the Departmento de Informática, Pontifícia Universidade Católica do Janeiro - PUC-Rio, Brazil, which are published in our series Monografias em Ciência da Computação (ISSN 0103-9741), edited by Prof. Carlos Lucena. Please note that the reports not available for download are available in their print format and can be obtained via the e-mail below.

For any questions, requests or suggestions, please contact:
Rosane Castilho

Last update: 18/DECEMBER/2003


VELOSO, P.A.S. On some general logical properties related to interpolation and modularity. 27 p. Eng. E-mail:

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.

MAIA, A.C.P.; GARCIA, A.C.B.; LUCENA, C.J.P. Representing team design activity. 19 p. Eng. E-mail:

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.

BUMBULIS, P.; ALENCAR, P.S.C.; COWAN, D.D; LUCENA, C.J.P. Combining formal technique and prototyping in user interface construction and verification. 15 p. Eng. E-mail:

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.

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:

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.

LANZELOTTE, R.S.G.; RIBEIRO, C.C.; RIBEIRO, C.D. Query optimization in distributed relational databases. 19 p. Eng. E-mail:

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.

PORTO, S.C.S.; RIBEIRO, C.C. Parallel strategies for task scheduling algorithms using PVM. 16 p. Eng. E-mail:

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.

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:

Abstract: This paper presents an object-oriented approach to specifying the user interface of a hypermedia application using the Abstract 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.

IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES FILHO, W. Reference manual of the programming language Lua 2.1. 24 p. Eng. E-mail:

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.

LIFSCHITZ, S.; MELO, R.N.; PACITTI, E. Practical behavior of parallelization strategies of datalog. 19 p. Eng. E-mail:

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.

OLIVEIRA, D.A.S.; de SOUZA, C.S.; HAEUSLER, E.H. Converting large proof structures into natural language hypertext-like explanations. 13 p. Eng. E-mail:

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.

BARBOSA, E., MAFFEO, B. Modelo da implementação (design) de um sistema de controle para uma área de linha de engarrafamento. 92 p. Port. E-mail:

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.

IERUSALIMSCHY, R.; FIGUEIREDO, L.H.; CELES FILHO, W. Lua - an extension language. 15 p. Eng. E-mail:

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.

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 autônomos. 65 p. Port. E-mail:

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.

BRAGA, C.O.; STAA, A.v. Ferramentas para a geração automática de documentação. 15 p. Port. E-mail:

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.

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:

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.

VELOSO, P.A.S.; FURTADO, A.L. Encapsulamento em bancos de dados e em engenharia de software: análise e projeto de refinamento. 18 p. Port. E-mail:

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.

VELOSO, P.A.S. From extensions to interpretations: pushout consistency, modularity and interpolation. 19 p. Eng. E-mail:

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.

SEIXAS, R.B.; GATTASS, M.; FIGUEIREDO, L.H.; MARTHA, L.F. Visualização volumétrica com otimizações do ray casting e detecção de bordas. 12 p. Port. E-mail:

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.

STAA, A.v. Considerações sobre educação em engenharia de software. 15 p. Port. E-mail:

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.

COSTA, M.; FEIJÓ, B.; SCHWABE, D. Reactive agents in behavioral animation. 9 p. Eng. E-mail:

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. 

CORRÊA, M.C.; HAEUSLER, E.H.; PAIVA, V.C.V. A dialectica model of state. 28 p. Eng. E-mail:

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.

ARAÚJO, R.M.; FUKS, H. QUORUM W - a group decision support tool for the Internet environment. 14 p. Eng. E-mail:

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.

MUCHALUAT,D.C.; SOARES, L.F.G.; CASANOVA, M.A. Browsing in a hypermedia system with nested composite nodes. 13 p. Eng. E-mail:

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.

CORREA, M.S.C.; HAEUSLER, E.H. A concrete categorical model for the Lambek calculus. 29 p. Eng. E-mail:

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.

COELHO, L.C.G.; de SOUZA, C.S. Aspectos semióticos de uma interface 3D. 18 p. Port. E-mail:

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.

PRATES, R.O.; de SOUZA, C.S.; VAREJAO, F.M. Sobre o ônus da representação de modelos em interfaces mutimodais para sistemas de configuração especial. 17 p. Port. E-mail:

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.

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:

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.

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:

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.

SANCHEZ, M.L.A.; MAFFEO, B. Modelagem da essência de um sistema de controle e monitoramento de litografia por feixe de elétrons - COMONLIFE - volume 1-2. 213 p. Port. E-mail:

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.

SCHWABE, D.; ROSSI, G.; BARBOSA, S.D.J. Systematic hypermedia application design with OOHDM. 15 p. Eng. E-mail:

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.

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:

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.

CASANOVA, M.A.; SOUZA FILHO, G.L.; SOARES, L.F.G. Anchors and links for composite nodes. 12 p. Eng. E-mail:

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 to maintain automatic reference to the last version of a node.

VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 4.A - interpretations of unsorted specifications. 36 p. Eng. E-mail:

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.

VELOSO, P.A.S.; MAIBAUM, T.S.E. Logical specifications: 4.B - interpretations of many-sorted specifications. 44 p. Eng. E-mail:

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.

STAA,A.v.; COWAN, D.D. An overview of the Totem software engineering meta-environment. 41 p. Eng. E-mail:

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.

SERRANO, M.A.B.; STAA, A.v. Ambiente de requisitos. 50 p. Port. E-mail:

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.

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:

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.

LEITE, J.C.S.P.; FIORINI, S.T. Reusing business process information. 11 p. Eng. E-mail:

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.

LEITE, J.C.S.P.; SANT'ANNA, M.; PRADO, A.F. Porting Cobol programs using a transformational approach. 17 p. Eng. E-mail:

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.

STAA, A.v. Cenários de utilização de Totem. 13 p. Port. E-mail:

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-environment 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.

MAIA, A.C.; FUKS, H.; LUCENA, C.J.P. A model of the communicative behavior of designers involved in cooperative software design. 30 p. Eng. E-mail:

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.

SANCHEZ, M.L.A.; MAFFEO, B. Design baseado em troca de mensagens entre subsistemas autônomos de um sistema para controle e monitoramento de um processo de litografia por feixe de elétrons - COMONLIFE. 114 p. Port. E-mail:

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.