Reference no: EM134450
Assignment requires the development of a Java-based client-server Web application that supports the activities of an imaginary on-line college administrative system (i.e., software that simulates the selection and payment of college courses over computer networks). Your on-line college administration system should be able to process the following basic actions.
- Student review and selection of offered courses
- Student course payment (credit card only) and review of financial records
- Student review of academic records (i.e., transcripts that contain courses taken, grades, credits)
- Ability for faculty to enter grades and review or print list of students for specific courses
- Interactive counseling support (i.e., frequently asked questions in a database assigned by counselor)
Implementation Requirements
You must use the following features or structures of HTML, PHP and Java-based tools.
- HTML tables, check boxes (or radio buttons), and drop-down selection lists.
- Client-side JavaScript functions, arrays, and the String Object.
- MVC design pattern for all code.
- JSPs, JavaBeans, and Servlets for academic information (i.e., courses, transcripts, grades).
- PHP for course payment, financial record functions and FAQ usage.
- MySQL Relational database for all permanent storage of data.
Data Definitions
Each major data entity listed below may include the following items. You must decide the best organization and classification of these items to support your application processing. Other data definitions and structures may be added as necessary.
Student: full name, address, phone number, credit card number, student number, current payment due, current course selections, courses taken, grades and credits
Course: title, term, instructor, days, times, credits, room, registration code
Faculty: name, password for access to grades, department
Counselor: name, availability schedule, phone number, e-mail address, automated answer text for pre-defined questions
User Interface and Output
Design separate user screens for course functions, records functions, grading, payment, and counseling sessions. Each web page for the user interface must present selections for direct access to course, records, grading, payment, or counseling screens.
Student review and selection of courses offered.
1. A list of courses available by discipline (MAT, CIS, etc.) for the upcoming term (e.g., Fall). Each course must have the following information:
- course registration code
- course title;
- instructor;
- days and times;
- credits; and
- an option to add or remove from selections (e.g., add to or remove from a shopping cart).
Official copies of student records must contain the following information and format.
2. Student name
3. Itemized list of courses taken by term with:
- course title;
- instructor;
- days and times;
- credits; and
- grade earned
4. Cumulative grade point average
Report of financial records must include the following.
1. Student name
2. Itemized list of courses taken by term with:
- course title;
- credits; and
- cost
3. List of payments made by date
4. Balance owed
Grade sheets must be displayed with the following format.
1. Term and course title
2. List of student names and grades in a two-column spreadsheet (table) format
Test Data and Error Messages
Create your own test data for this assignment. You may pre-load course, user account data (for students and instructors) and frequently asked question data into your database.
If a student selects a class that is already full (i.e., 10 students registered), then print a message with the following format.
"Sorry. Class <class title> is already full. Please make another selection."
Also print an error message if instructors enter an incorrect password for grade sheet access.
Documentation
You must insert numerous comments throughout the source code listings.
Required items to be submitted for parts of project development
Part 1: Non-functional mock-up of Web pages. .
Design diagram (PowerPoint, Visio, UML, etc.) showing each PHP, JSP, Java Servlet, JavaBean, and database object with connecting lines indicating how they communicate with one another and what functions are invoked for specific user actions.
Part 2: Diagram of database tables with column names and data types
In your diagram, also include examples of column values and indicate which Servlet or PHP file will directly access each database table.
Part 3: Final tested version of all Web application software.