Monografias em Ciência da Computação
1995
ABSTRACTS
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
bib-di@inf.puc-rio.br
Last update: 18/DECEMBER/2003
[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.
[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.
[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 verification. 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.
[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.
[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.
[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.
[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 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.
[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.
[MCC09/95]
LIFSCHITZ, S.; MELO, R.N.; PACITTI, E. Practical behavior of
parallelization strategies of datalog. 19 p. Eng. E-mail: sergio@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.
[MCC10/95]
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: 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.
[MCC11/95]
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: 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.
[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.
[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 autônomos. 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.
[MCC14/95]
BRAGA, C.O.; STAA, A.v. Ferramentas para a geração automática de documentação. 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.
[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.
[MCC16/95]
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: 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.
[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.
[MCC18/95]
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: mgattass@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.
[MCC19/95]
STAA, A.v. Considerações sobre educação 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.
[MCC20/95]
COSTA, M.; FEIJÓ, 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.
[MCC21/95]
CORRÊA, 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.
[MCC22/95]
ARAÚJO, R.M.; FUKS, H. QUORUM W - a group decision support 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.
[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.
[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.
[MCC25/95]
COELHO, L.C.G.; de SOUZA, C.S. Aspectos semióticos 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.
[MCC26/95]
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: 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.
[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.
[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.
[MCC29/95]
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: 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.
[MCC30/95]
SCHWABE, D.; ROSSI, G.; BARBOSA, S.D.J. Systematic hypermedia
application design with OOHDM. 15 p. Eng. E-mail: dschwabe@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.
[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.
[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 to
maintain automatic reference to the last version of a node.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[MCC40/95]
STAA, A.v. Cenários de utilização 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-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.
[MCC41/95]
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: 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.
[MCC42/95]
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: 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.