wlrush@water.waterloo.edu (Wenchantress Wench Wendall) (05/11/89)
DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF WATERLOO
SEMINAR ACTIVITIES
SYSTEMS SEMINAR
-Friday, May 12, 1989
Motoshi Saeki, Tokyo Institute Technology, Faculty of
Engineering, International Institute, Fujitsu Limited,
will speak on "Software Development Process from
Natural Language Specification".
TIME: 1:30 p.m.
ROOM: DC 1304
ABSTRACT
A process to derive incrementally a formal
specification from an informal specification written
in natural language is presented. This process
consists of two major activities, "design" and
"elaborate". Through the design activity, the
structure of software modules based on an object
oriented model is interactively extracted from the
informal English description. Each word such as nouns
and verbs in the natural-language sentences is
associated with a software concept, e.g. class,
attribute, and method. Especially we concentrate on
types of verb patterns occurring in the sentences to
increase applicability to dynamic system. The
elaborate activity is one to refine and rewrite the
informal specification more precisely based on the
derived module design document. We can complete the
formal specification through the elaborate - design
activity cycle. Each document created in our process
is called product. The integration management of the
various kinds of the products are supported by a
hypertext system. Furthermore we discuss the
whole of software development process in which the
design process and the elaborate one are embedded.wlrush@water.waterloo.edu (Wenchantress Wench Wendall) (11/17/89)
DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF WATERLOO
SEMINAR ACTIVITIES
SYSTEMS SEMINAR
-Thursday, November 23, 1989
Dr. Mohammad Malkawi, Dept. of Electrical Engineering
and Computer Science, University of Wisconsin-Milwaukee
will speak on ``Load Balancing in Distributed
Systems.''
TIME: 3:30 p.m.
ROOM: DC 1304
ABSTRACT
In a distributed network, it is very important to
balance the load among the processors in the network
such that the average response time in the system is
imroved. A new load balancing algorithm has been
developed based on graph coloring. Each link connecting
any two nodes is assigned a color such that the links
adjacent to any one node are colored with different
colors. To balance the load of the system, adjacent
processors connected with a link of color C share
i
the loads between them such that their load difference
is reduced to a value <^H_ 1. To balance the load in
the system, all colors have to be considered in a
cyclic order. The process of balancing continues
until the difference between the loads of adjacent
processors is no more than 1.
The described algorithm is distributed, dynamic,
and requires no global knowledge of any type.
Simulation results will be discussed. The algorithm
achieves significant improvements in response time
and throughput. Simulation is performed for both
static and dynamic systems. Different networking
topologies are considered including random graphs and
n-cube structures.
November 15, 1989wlrush@water.waterloo.edu (Wenchantress Wench Wendall) (02/27/90)
DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF WATERLOO
SEMINAR ACTIVITIES
SYSTEMS SEMINAR
-Friday, March 2, 1990
Professor Jay Black, Dept. of Computer Science will
speak on ``Abstraction for Debugging Distributed
Programs.'' (This is a joint work with W.H. Cheung).
TIME: 10:30 a.m.
ROOM: DC 1331
ABSTRACT
Distributed programs are evolving towards greater size
and complexity. A non-trivial distributed program
consists of a large number of cooperating dynamic
processes. Not only do distributed programs tend to
involve more code than their sequential equivalents,
but they also suffer from further increases in
complexity due to the presence of concurrency, non-
determinism, and the possibility of partial failure of
processes, nodes, and communication channels.
Debugging distributed programs is thus a difficult
endeavor, and new techniques are required to manage
this more complex environment.
One of the most powerful tools we know for controlling
complexity is abstraction, and we provide a rigorous
basis for the use of it in distributed debugging, and
hence in distributed systems in general. We will
discuss how abstraction can be applied both to
processes (forming "clusters" or process groups), and
to events occurring in the system.
This talk will serve as a starting point for a
discussion on current and possible future directions
for the Shoshin distributed debugger prototype design.
Any interested people are welcome.