Course Description

The ubiquity of networked computers has hastened the need for distributed applications. Modern environments tend to be open, dynamic, and cross organizational boundaries. We examine three technology areas, comparing and contrasting their approaches to (for example) service description, discovery, communication, security, composition, and coordination.


Seminar. I'll teach the first few overview classes, and then we'll read papers and take turns leading discussions.  Students should prepare 3 discussion (or, if needed, clarification questions) questions to be handed in after every class.  Good discussion questions should compare and contrast approaches, consider evaluation of the works, and relate them to your own particular research interests.


50% class participation (presentations, discussions)
10% question hand-ins
40% projects


From my point of view as an agent researcher, the Web services and grid computing people have, in the past few years, started to latch onto concepts quite similar to those well-known in the agent world. While we will certainly try to look at the unique focus of each technology, I think we should spend most of our time exploring the overlapping parts. My initial thought is that these areas of high overlap include the following:

  • Service Description
  • Service Communication
  • Service Discovery
  • Resource scheduling
  • Coordination
  • Middleware, architecture, software support


Possibly, we will divide into three groups to implement the same service: one that creates and maintains a database of contigs that are created by a program called PHRAP that takes as inputs a monthly growing number of ESTs. This is a problem for which an efficient solution will be useful and one that is easily done concurrently.