Assignment Details

 

The case study:

 

You are asked to implement a (distributed) service that gives the topic of the CIS69 lecture in week X if the client sends an X request. Example: 

 

            If the client sends 3, the service returns “XML-RPC”

            If the client sends 5, the service returns “RMI”

If the client sends 8, the service returns “CORBA”

            Etc.

 

(Note that it is up to you to find out, decide on, and justify details regarding topics as error handling, implementation logic, data structures, etc. There are a number of different possibilities for the final design that may be appropriate.)

 

The assignment:

Choose one of the three options below.

 

Option 1 (mostly XML-RPC).

  1. Implement a fully functional XML-RPC client/server solution.  [50%]
  2. Describe shortly (max. 200 words) the structure of a CORBA solution. [20%]
  3. Discussion of CORBA vs. XML-RPC  (max. 1000 words) [30%]

 

Option 2 (mostly CORBA).

  1. Implement a fully functional CORBA client/server solution.  [50%]
  2. Describe shortly (max. 200 words) the structure of an XML-RPC solution. [20%]
  3. Discussion of CORBA vs. XML-RPC  (max. 1000 words) [30%]

 

Option 3 (both CORBA and XML-RPC).

  1. Implement a fully functional CORBA client/server solution.  [45%]
  2. Implement a fully functional XML-RPC client/server solution.  [45%]
  3. Short discussion of CORBA vs. XML-RPC  (max. 350 words) [10%]

 

Further Guidelines:

a)      Hand in a floppy disk or CD with your code.

b)      Please use Java as your implementation language. However, solutions in C/C++, Python, or LISP will be accepted if the code on the disk/CD is self-contained and does not require any particular installation on the marker’s machine. 

c)      Comment your code. Uncommented code gives low marks. If the marker does not understand your code, it is your problem.

d)      The only purpose of your client is to test the server.

e)      350 words are approximately 1 page.

f)       You may add up to five diagrams/screenshots/pictures and one CORBA IDL if you find them useful for explanation. These do not count as “words”. 

g)      In the discussion CORBA vs. XML-RPC you must refer to your code and/or the “short description” where this is appropriate. The purpose of this discussion is that you show an understanding of the differences between CORBA and XML-RPC.

h)      This assignment represents 50% of the total practical assignments. Part a (RMI) and b (this assignment) combined represent 40% of the overall module marks.

i)        See Blackboard for further information and a detailed marking scheme.