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

Explain the characteristics of a well-formed xml document, Question: (a...

Question: (a) "XML is about the structure of data; this is what makes it so much more powerful than HTML which is about the presentation of data." Show this statement. (b)

We are in need of a junior ruby on rails developer, We are in need of a Jun...

We are in need of a Junior Ruby on Rails Developer In search of a junior Ruby on Rails developer to work on an array of projects. Creativity as well as good communication ski

What is the difference between $message and $$message, What is the differen...

What is the difference between $message and $$message? Main difference between $message and $$message is that former is a simple variable and later is a reference variable. $me

What is post and get methods, Which will execute faster POST or GET method?...

Which will execute faster POST or GET method? GET minaly transfer data to the server using URL while POST transfer data using form collection that is added to the request by th

Expert in backbone.js - jquery and css to update page layout, Expert in bac...

Expert in backbone.js, jQuery and CSS to update page layout and transition effects Project Description: I want an expert in backbone, node, CSS, jQuery and HTML5 to update th

I want wp estore theme experienced developer, WP Estore Theme Experienced D...

WP Estore Theme Experienced Developer Required Keep work on wordpress estore theme website required. Should have previous proven experience with wp estore theme. Probabili

I want help in woocommerce theme customization, Woocommerce Theme Customiza...

Woocommerce Theme Customization Hello you will be working on transforming this woocommerce theme Kindly let me know if you are able. You will require to discern woocommerce d

Drupal flow of information among 5 main layers, Explain drupal flow Mainly...

Explain drupal flow Mainly, there are 5 important layers in Drupal where information flows, a. Data (Node, ETC) b. Modules c. Blocks and Menus d. User Permissions e. Template a.

Work in standard view, For laying out Web pages, Layout view is helpful. Th...

For laying out Web pages, Layout view is helpful. Though you can adjust most of your design elements in Layout view, certain modification should be completed in Standard view. Whil

We need help in couponic customzation, We need help in COUPONIC CUSTOMZATIO...

We need help in COUPONIC CUSTOMZATION Need Customization of cuponic script with added modular functionality. I have purchased the script as well as the modules. The customizatio

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