Fill This Form To Receive Instant Help
Homework answers / question archive / Introduction In this coursework, you are expected to use your knowledge of object-oriented (OO) programming in order to construct functional components of a web application
In this coursework, you are expected to use your knowledge of object-oriented (OO) programming in order to construct functional components of a web application. You will be creating a prototype to show how specifications of a given set of requirements of a business, can be implemented using OO PHP and MySQL. Furthermore, you are asked to prepare a report where you will explain and discuss how your code meets the specifications of the given scenario and demonstrate your understanding of the OO programming concepts that you have implemented.
“WebAcademy” is a small web-based business that offers online courses to adults who wish to extend their information technology (IT) skills. More specifically, “WebAcademy” offers the following courses:
All users can browse the site and search for a specific course. Users can register as “students” and / or as “tutors”. In order to register, all users (students and tutors) must provide their names and contact details (e.g., email address) and chose a username. Furthermore, students must provide further details such as the title of the course(s) they want to attend. Tutors must also provide the following information: the title of the course they teach and their academic qualification(s). Finally, there is one more actor: Administrator. The following figure is the use case diagram, limited to the scope of this assessment, that shows what an administrator can do.
Based on the above description, you are asked to complete the following tasks, organized in part A and part B.
Part A asks you to implement a console system to be used by the administrator in order to manage tutors and students.
Part B asks you to explain and discuss further, the specific sections of your implementation for part A.
Note: You must upload all the files containing your code for this section to University’s server.
Using OO PHP and MySql, implement a console system to be used by the administrator in order to manage the details of tutors and students. More specifically, in your implementation, you must address the following:
Type of user |
Name |
|
User name |
Course to attend |
student |
Henry Miller |
henry@henry.com |
henry |
Web Design Principles |
student |
John Lock |
john@john.com |
john |
Introduction to Databases |
student |
Jane Austin |
jane@jane.com |
jane |
HTML, Cyber Security |
student |
Zadie Smith |
zadie@eleanor.com |
zadie |
Cyber Security |
Type of user |
Name |
|
User name |
Course to teach |
Qualification |
tutor |
Philip Brown |
philip@academy.com |
phil |
Web Design Principles |
Diploma in Web Design |
tutor |
Catherine White |
catherine@academy.com |
catherine |
HTML
|
BSc in Computer Science |
tutor |
David Blue |
david@academy.com |
david |
Introduction to Databases |
Diploma in Databases |
tutor |
Abigail Black |
abigail@academy.com |
abigail |
Cyber Security, HTML |
BSc in Computer Science |
Create all the necessary classes for implementing the console management system, according to the above description. For full marks, you are expected to optimize your code and create a “database class”. If no “database class” is created, a penalty of 7 marks will apply.
When the administrator clicks the option “Display Students” in the site, all student names and email addresses should be displayed on the screen. Similarly, when the administrator clicks the option “Display Tutors” in the navigation bar, all tutor names and email addresses should be displayed on the screen.
When the administrator clicks the name of a student, a new page should be generated, where all the details about this specific student (name, email, username, course(s) to attend) are presented. Similarly, when the administrator clicks the name of a tutor, a new page should be generated, where all the details about this specific tutor are presented (name, email, username, course to teach, academic qualifications).
Furthermore, the administrator must be able to perform the following actions:
Inside your code, you must provide meaningful comments to explain it. They must be your own comments. If you just copy the comments from the tutorial files, then you will get no marks for the comments.
Answer the following questions. The recommended word count for each answer is 300 to 350 words. Maximum word count is 350.
B1. According to the “inheritance principle” instead of implementing two classes as “Student” and “Tutor”, you could implement one parent-class (super-class) e.g., “User” and define “Student” and “Tutor” as sub-classes. Discuss the “inheritance principle” and explain what its advantages are, using this example (5 marks); create the code for the parent class and the sub classes and present and explain it (no need to upload it to the server). (10 marks)
B2. Consider the following case of the above use case diagram.
Present and explain the function(s) you created in order to implement the above case. Discuss your implementation in detail and explain what each line of the code does. In your presentation and discussion, you must justify the name of the function(s) you created as well as the name(s) of the variable(s) you used.
B3. Consider the following case of the above use case diagram.
Present and explain the function(s) you created in order to implement the above case. Discuss your implementation in detail and explain what each line of the code does. In your presentation and discussion, you must justify the name of the function(s) you created as well as the name(s) of the variable(s) you used.
You must submit the following:
You must upload to University’s server all the files created for the implementation (part A), e.g., .php files, .html files, .css etc.
On Blackboard, you must submit ONE SINGLE file that consists of the following sections:
Marking Scheme
Criteria Mark per Mark Comments component provided |
|||
PART A – Implementation |
55 marks |
|
|
A1
|
15 |
|
|
A2 Create the necessary classes. Full marks if “database class” is used to optimize the code. 15 marks No “database class” à 7 marks penalty |
15 |
|
|
A3 Display students and tutors on the screen
|
4 |
|
|
A4 Display specific details for a student and for a tutor |
4 |
|
|
A5 add a new student; add a new tutor [2 marks each] delete an existing student; delete an existing tutor [1 mark each] update the details of a student (e.g., modify the list of courses the student attends); update the details of an existing tutor (e.g., modify the qualifications of a tutor) [3 marks each] |
12 |
|
|
A6 Comments * |
5 |
|
|
PART B – Report |
45 marks |
|
|
B1 Discuss the inheritance principle in relation to classes “Student” and “Tutor” 5 marks Create the code for a parent class and the sub classes “Student”, Tutor 10 marks |
15 |
|
|
B2 Use case: “Display Students” |
15 |
|
|
B3 Use case: “Add Tutor” |
15 |
|
|
TOTAL |
100 |
|
|
* About comments: You are expected to provide meaningful comments inside your code, to explain it. All main actions (e.g., functions) are expected to be commented. They must be your own comments. Only correct comments get marks. If you just copy the comments from the tutorial files, you get NO marks.