Distributed course registration system, PHP Web Programming

Assignment Help:

Webservice Implementation of the Distributed Course Registration System

In this assignment, you are going to implement the Distributed Course Registration System (DCRS) from Assignment 1 as a webservice. Specifically, design the service from Assignment 1 (using the same functions and exceptions) by using proper annotations and implement the server. You should build end point files using the wsgen command before publishing the service, and also import wsdl files using the wsimport command.

As in Assignment 1, the server should be initialized with a list of courses and their associated information (such as course id, capacity, pre-requisite courses, and co-requisite courses) in main memory. Furthermore, you should not load information about all the students into memory when the server starts. When a server function is invoked, the server should load the student information (such as student id, name, maximum number of registered courses, list of taken courses, and the list of registered courses) into memory and also write the information back to the file if necessary. An example student file may look like the following:

Student ID: 9700001

Name: Mary

Department: CS

Maximum number of courses that may be registered in this term: 3

Courses that have been taken: COMP6001

Courses that have been registered: COMP6321, COMP6002

Your server design should maximize the concurrency in course registration usage. In other words, use proper synchronization that  allows multiple students register for the same or different courses at the same time. Marking Scheme [40%] Design Documentation: Describe the techniques you use and your architecture, including the data structure and how you separate the client and server code.  Design proper and sufficient testing scenarios and explain what you want to test (Hint: rules, exceptions and synchronization). Describe the most important / difficult part in this assignment. You can use UML and text description, but limit the document to a reasonable  number of pages. Submit the documentation and code by the due date; print the documentation and bring it to your DEMO.

[40%] DEMO in Lab: You have to register for a 5-minutes demo. Please come to the lab session and choose your preferred demo time in advance. There is no instant registration during the demo week; so if you do not register before the demo week, you will lose 40% of the mark. [10%] Demo that service is published in the server side and a client should download and generate necessary files. [30%] Correctness of code: Demo your designed testing scenarios to illustrate the correctness of your design. If your testing scenarios do not  cover all possible issues, you'll lose part of mark up to 30%. [20%] Questions: You need to answer some simple questions (like what we've discussed during lab tutorials) during the demo.


Related Discussions:- Distributed course registration system

Php app in bootstrap with user mgmt, Php app in bootstrap with user mgmt, f...

Php app in bootstrap with user mgmt, form, csv import/export and stats Project Description: Overview: Need an application construct in PHP to allow agents to log in, view

Array object, It is used to store a set of values in single variable name. ...

It is used to store a set of values in single variable name. Each of value is an element of the array and contains related index number. You can refer to a specific element in the

Drupal website changes needed, Drupal website changes Move a current Dru...

Drupal website changes Move a current Drupal website to another server (requires static IP address). Create an addition of a video library to have the capability to add a vid

I desire help for website development, website development 1. You want t...

website development 1. You want to have ideal about different time zone at the world, instance, USA have few different time zone, Los Angeles, New York, and USA change time twic

Authenticate the name and password, Keep a list of allowed reporters and th...

Keep a list of allowed reporters and their passwords in a database table Authentication .  Define and populate the table beforehand manually using the phpMyAdmin interface to MySQ

Develop simple custom video playlist wordpress plugin, Develop Simple Custo...

Develop Simple Custom Video Playlist WordPress Plugin I want help to develop a simple wordpress plugin Desired Skills are MySQL Administration, HTML, PHP, WordPress

Need help to modify phpmelody template, Modify phpmelody template We hav...

Modify phpmelody template We have a video hosting site that uses the phpmelody backend as well as we would like someone with experience in that software to alter the template to

Transport layer of osi model, Transport layer is the first end-to-end layer...

Transport layer is the first end-to-end layer. Header of the transport layer has information which helps send the message to the corresponding layer at the destination node. The me

Need help to make api changes, Need help to make API changes a) All work...

Need help to make API changes a) All work submitted via github b) All time billed using workview Want adjustments to custom scripts for ebay APIs: a) Download part numb

Google apps engine content summary function enhancement, Google apps engine...

Google apps engine Content summary function enhancement Project Scope- a) Develop in Google App Engine (GAE) b) Develop with python c) Comply our system design d) Us

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd