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

I need re-development website, I need Re-development website Project Des...

I need Re-development website Project Description: All the functionality to you use for this website Skills required are .NET, MySQL, SQL, PHP, Website Design

Unordered lists, First one, we will create an unordered list. These lists a...

First one, we will create an unordered list. These lists are also called as bulleted lists. These lists are characterized through list items that do not have numbers. They are used

Open system interconnection, An open system is a model which allows any two...

An open system is a model which allows any two distinct systems to communicate regardless of their underlying architecture. The reason of the OSI model is to open communication amo

Want html5 and js for video capture from camera, Want HTML5 and js for vide...

Want HTML5 and js for video capture from camera as well as upload to server HTML5/js solution to permit users to capture a video clip (with audio), give the clip a name as well

Set table properties, Now you will employ the table Property inspector to r...

Now you will employ the table Property inspector to remove the extra space within the navigation buttons table & to insert a background color in the table. 1. In the Property in

Javascript with html, Events are actions which can be detected through Java...

Events are actions which can be detected through JavaScript.  An example would be the on Mouse Over event that is detected while the user moves the mouse on an object.  Another eve

Web developer and designer required for new site build, Website designer/de...

Website designer/developer needed Web developer/designer required for new site build. Person wants to be confident in design and development, SEO opt, as well as ability to b

Add multiple layout cells, You will insert three layout cells below the log...

You will insert three layout cells below the logo cell you just created. Later on you will insert the page's navigation buttons in these cells. 1. In the Objects panel, click

Need php to help to develop msds project tracking system, Need to help to d...

Need to help to develop MSDS Project Tracking System using PHP Object Oriented PHP, MySQL, jQuery, jQuery UI, Job Description- Your responsibilities 1) Review business req

In search of experienced cake php coder to help in launch, In search of exp...

In search of experienced Cake PHP coder to help in launch of new site We are seeking someone to assist our small team of developers to handle minor code tweaks as well as error

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