CPE 4001 Distributed Programming using Java

Assignment Two
Semester 2, 2005

Introduction

This assignment is basically the same as assignment one, but with a change of middleware. Instead of using sockets, you should use ONC, RMI, CORBA, SOAP, Jini or JXTA (or a combination). Most of the work you have done for assignment one should be reusable for this assignment - as long as your design and classes for assignment one follow O/O principles.

The Chapstick shopping centre is one of Australia's largest shopping centres and hosts a large number of shops of different kinds. Chapstick already has an extensive Web site, but is contemplating moving towards an online system to support ecommerce activities.

The shopping centre has exactly the same requirements as for the first assignment, but now wishes to experiment with other middleware technologies.

This assignment has graded levels. The simplest version will be given a Pass if done satisfactorily, but to gain higher grades more features will have to be added.

Details

You will need to implement a client and one or more servers, using a protocol at a higher level than sockets. This could be ONC, RMI, CORBA, SOAP, JXTA or some other protocol.

The client will need to be able to make the following requests to the Chapstick central server:

Deliverables

You should hand in the following

You will be asked to demonstrate your system during a tutorial.

Assignment levels

General comments:

Pass level

The following will get a Pass level

Extra level

The specification given above will gain a Pass grade if done satisfactorily. Higher grades will be given on completion of additional functionality. Each additional function will gain an extra grade (to a maximum of HD). The additional functions are

Multiple middleware
Each extra type of middleware used for communication between any client/server pair will gain an extra level. For example, if you have used RMI between a client and ChapStick, then use of CORBA between ChapStick and one shop and SOAP between ChapStick and another shop will count as two extra levels
Mixing middleware
Mixing two middleware technologies on one communication leg, such as: Each mix will gain an extra level
Jini
Using Jini for dynamic service discovery will gain an extra level
JXTA
Using JXTA for peer-to-peer will gain an extra level

Group size

This assignment (and the next one) may be done in a group of two. While you may do this assignment individually, the marking scheme will be the same as for a group of two. You are encouraged to work in a group, with each partner doing one side each of the protocol, in order to discover the value of clear protocol specification.

Due date

The assignment is due by 4pm, Friday 21 October, the end of week 13. You can actually hand it in by 12 noon, Monday 24 October, but if you do that then you accept that this intrusion into the exam period is by your own choice.


Jan Newmarch (http://jan.newmarch.name)
jan@newmarch.name
Last modified: Sun Jul 24 18:22:59 EST 2005
Copyright ©Jan Newmarch
Copyright © Jan Newmarch, Monash University, 2007
Creative Commons License This work is licensed under a Creative Commons License
The moral right of Jan Newmarch to be identified as the author of this page has been asserted.