CGL Meeting Agenda

Wednesday, September 27, 1995


Location:
DC 1304
Time:
1:30 PM
Chair:
Andrew Park

1. Adoption of the Agenda - additions or deletions

2. Coffee Hour

Coffee hour this week:
???
Coffee hour next week:
???

3. Next week's meeting

Date:
September 27, 1995
Location:
DC 1304
Time:
1:30 PM
Chair:
Thomas Pflaum
Technical presentation:
Andrew Park

4. Forthcoming

Chairs:
  1. Randall Reid
  2. Navid Sadikali
  3. Greg Veres
  4. Julie Waterhouse
Tech Presenters:
  1. Thomas Pflaum
  2. Randall Reid
  3. Navid Sadikali
  4. Greg Veres

5. Technical Presentation

Presenter:
Michael McCool
Title:
The MetaMedia Project
Abstract:

The term ``metamedia'' refers to a second order media form that can be used to specify, describe, and implement other communications media. Computer software is the prime (and most flexible) example, but as usually implemented is rather inconvenient in this context. The introduction of Java goes a long way towards turning computer software into a usable medium, but the HotJava approach results in isolated monolithic applets. Rather than providing ``applets'', Java objects should be used to describe language semantics, i.e. to create specialized media on the fly.

The MetaMedia project is looking at combining SGML and Java to provide WWW documents with arbitrary structure and arbitrary semantics. Our architecture aims to extend the object-oriented structure of Java to the document definition level, to provide a flexible system for experimenting with different ways to structure "executable content".

6. General Discussion Items

7. Action List

8. Director's Meeting

9. Seminars

Can the Object Paradigm be Liberated From the Fetters of OO Programming Languages? - The Case of Real-Time Systems

Mr. Bran Selic
Date: Wednesday, October 4, 1995
Time: 2:30 pm
Place: William G. Davis Computer Research Centre, Room 1302

Abstract:

In the object model of computing, a software system is described as a network of collaborating logical machines. This approach, which emphasizes the structural aspects of software over the al- gorithmic and which includes strong conceptual support for gener- icity, is particularly well suited for specifying large software systems where architectural concerns are paramount. Yet, when we examine the current set of mainstream object-oriented programming languages, very little of this potential is exploited.

In this talk, we first discuss this untapped potential and then show how it can be used to better advantage for a significant category of large real-time applications. Specifically, we describe a new object-oriented modeling method called ROOM (Real-Time Object-Oriented Modeling). ROOM partitions the domain of software phenomena into several (formally correlated) levels that are differentiated on the basis of scope. Different specifi- cation languages are used for each scope. For specifying implementation-level detail, ROOM relies on conventional object- oriented programming languages, such as Smalltalk or C++, but uses a formal graphical notation for specifying the higher-level aspects of software. These higher level capabilities include the explicit and formal definition of horizontal and vertical (lay- ered) object structures as well as the description of concurrent behaviour using a variant of Harel's statechart notation.

Biographical Sketch:

Bran Selic is the Vice President for Research and Technology and co-founder of ObjecTime Limited, a Kanata-based company special- izing in development tools for distributed real-time software systems. He has over 20 years of design and project management experience in real-time software development covering a wide range of applications including telecommunications, aerospace, and robotics. He is co-author (along with G. Gullekson and P. Ward) of the book "Real-Time Object-Oriented Modeling" (published by John Wiley & Sons, 1994) which describes the ROOM methodology for real-time system development.


Intro to Web Browsing

Paul Prescod


Date: Wednesday, September 27, 1995
Time: 6:30 PM
Place: MC 3006

Abstract:

The talk/demo will introduce attendees to the concept of Web Browsing. The following topics will be covered: This is a non-technical introduction. Web publishing will not be covered. People who have already browsed the WWW will not benefit from this talk/demo.
DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF WATERLOO
SEMINAR ACTIVITIES

MASTER'S THESIS PRESENTATION

                    -Thursday, September 28, 1995

Keith  Pomakis,  graduate  student,  Dept.  Comp. Sci.,
Univ. Waterloo, will speak on "Reachability Analysis of
Feature   Interactions   in  Service-Oriented  Software
Systems".

TIME:                1:30-2:30 p.m.

ROOM:                DC 3301

ABSTRACT

A feature in the context of a service-oriented software
system  is  a  program  module that is added to a basic
service  in  order to add functionality.  An example of
this  type  of  system  is  the telephone system, where
customers  can  subscribe  to add-on telephony features
such  as  Call  Waiting,  Three-Way  Calling,  and Call
Number  Display.   An inherent problem of such a system
is  the  feature  interaction  problem.   A new feature
interacts  with  an existing feature if the behavior of
the  existing feature is changed by the presence of the
new feature.

This  thesis describes an approach to detecting feature
interactions  during  the requirements phase of feature
development.  The approach involves specifying features
in  the  context  of a layered state-transition machine
model that prioritizes features and avoids interactions
due   to   non-determinism.   A  tabular  notation  for
specifying   features   has   been   developed.   These
specifications   are   composed  incrementally,  and  a
reachability   graph   of   the   composite  system  is
generated.   This  thesis demonstrates how reachability
analysis  has  been  used  to  automatically detect six
types  of  feature  interactions,  with  an emphasis on
telephony features.

                          Unix Tutorial Part II
                                    by

 Unix Shell Basics
 Now  that you are accepted  among your peers,  able to send mail  and read
news all around the world, you want to get more from your Unix account.  Let
usshow you how to get Unix to do more work for you!
 This  tutorial is intended  for users with  some experience with  Unix and
will be  held  in an  X-terminal lab  so that  participants can  immediately
experiment with the material being discussed.   Upon your completion of this
tutorial, you  will be able to  use files, directories,  redirection, pipes,
and apply filters.  Also, some  of the advanced command-line features of tcsh
will be revealed.
 Math students  should be sure to have their  accounts activated in MC3011,
and temporary accounts  will be available  to non-math students who  are CSC
members.

       Tuesday, September 26, 1995 and Thursday, September 28, 1995
                               6:30-8:30 pm
                                 MC 3006

                             All are welcome.

                oo$$$$$ooo    o$$$$$oo$$$$$oo
              o$$""  $$$"  o$$""  $$$$$$  ""$$o    C O M P U T E R
             o$$    $$"    $$"   o$"  "$$    $$o
             $$     $$    $$o    $$    $$o    $$   S C I E N C E
             $$o   "$$    $$    o$$    $$     $$
              $$o   "$o  $$"   o$$    o$$   o$$"   C L U B
               "$$ooo$$$$$$ooo$$"   $$$$ooo$$$

                       A Student Chapter of the ACM

DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF WATERLOO
SEMINAR ACTIVITIES

DISTRIBUTED SYSTEMS SEMINAR

                    -Tuesday, October 3, 1995

Celine   Valot,   Departement   d'Informatique   et  de
Recherche Operationnelle,  Universite de Montreal, will
speak   on  "Coding  Partial  Orders:   Application  to
Distributed Executions".

TIME:                10:30 a.m. - 11:30 a.m.

ROOM:                DC 1304

ABSTRACT

The  underlying  structure of distributed executions is
the  partial order induced by event occurrences. Actual
researchs  focus on finding an efficient representation
of  this  partial  order and on properties checking. An
encoding  which  is  correct and optimal is an encoding
which  has  reduced  memory  requirements, reduced data
pre-processing   time  and  a  correct  answer  to  the
question "does event x precede event y ?"

An  encoding, to be correct, should characterize causal
relationships    and    concurrency   between   events;
correctness  is  granted  by  the  knowledge of partial
order   dimension   and  width  but  those  values  are
difficult  to  obtain  in  the context of an on the fly
computation.  Analysis  of  the different methods shows
that   it  is  awkward  to  design  a  general  purpose
encoding;  rather,  the identification of various order
classes   having   determined  properties  allowing  an
efficient  representation  is  a promising direction of
research.

The  optimality  problem  was  addressed  by  means  of
decompositions  of  the  partially  ordered  set. Those
decompositions  aim at minimizing the number of element
pairs,   ordered   within   the   decompositions,   but
uncomparable    within   the   partial   order.   Those
decompositions  lead  to  approximations  of an optimal
encoding,  by getting closer to the order width, in the
general case; optimality is achieved in specific cases.

Independently of the chosen representation, the cost of
properties checking remains very high; a property should
be   checked   on  the  overall  set  of  the  possible
observations. From the chain decompositions, properties
are  checked  on  optimal  linear extensions which is a
significant  observations  subset. In that context, the
cost of properties checking is reduced.

10. Lab Cleanup (until 2:30 or 5 minutes)