php代写 | web代写 – AST20401 – Database Systems and Design

该作业涉及php、mysql、CodeIgniter Framework框架等方面的内容
Introduction

Design and implement a sport session (e.g. Muay Thai, Jogging training, biking training, Yoga) online booking platform that let users search and reserve upcoming sport sessions in the cities.

Design the required data model that will support the required functional features.

Use MySQL database, PHP and CodeIgniter Framework for implementation.

System Requirements

Successful programming features are built on the foundation of a well-designed data model and database implementation. Therefore, your project will start with system analysis and database modeling and design, but not jumping right into creating table and PHP programming.

Data Model Requirements
A sport session must be created with session details such as session title, session theme photo (a nice photo that can attract user’s attention), short description (display at session listing and preview page), long description (display at session details page), date, time (e.g. 19:00 – 20:00), city, number of available ticket, price, venue etc. A session will be assigned to one and only one session format such as “Personal Training” or “Group”. A session belongs to one level: “Let me try”, “Beginner”, “Intermediate” & “Advanced”. A session can have zero or multiple trainers. A session must have at least one organizer (e.g. Warrior Muay Thai center). A session can be set related to zero or multiple other sessions so that it can serve to suggest “relevant sessions” to user when they are browsing the website. “Related session” is bidirectional. If A is related B, B is also related to A, meaning B will be shown as related session at the details pages of A, while A will be shown as related session at the details page of B.

You have to create your own set of testing data for all the table. The number of records for each table must be sufficient for demonstration of your program features, such as for searching and listing.

Functional Requirements

Homepage (index.php)
Homepage is one of the most visited page for a website. You want to make good use of this page to show featured session, recommended sessions or sessions that are on-going on the day. It must also provide convenient main navigations menu for visitors to browse various sessions, for example, quick link to browse session by types, session level, cities, featured trainers, featured organizers, price (e.g. free sessions or session within certain price range) etc.

Searching & Listing
When a user inputs a keyword to search sessions, the database will execute search of matching keyword to session title, long description, trainer’s names and organizer’s name. The search result will be presented in the format of a listing in which only the minimal/critical session information such as title, date, time, format, level, trainer, price and short description are displayed. Clicking at a session title or theme photo, user will be brought to session detailed page. Sessions listing must be presented in ascending date and time order. Expired sessions won’t be shown.

Other Listing Page
You also need to work out listing pages that you think enhance user’s browsing experience, e.g. all sessions from the same trainer, all session from the same organizer or all sessions from the same venue (an organizer can have many venues).

Showing session details
When users choose to view a session from the listing, all the session details including session title, long description, date, time, format, level, city, price, venue, trainer(s), organizer(s) will all be shown. If tickets are still available (number of reaming tickets > 0), user can choose “Book” button to reserve a session, otherwise it shows “Full”. When users click at a trainer’s name, profile of the trainer will be shown and other sessions delivered by the same trainer will be listed out and further linked to session details. Similar thing happens when users click at an organizer’s name, or venue. Besides, user can also see related sessions alongside (e.g. on a right column). If users click at the related sessions, they will be brought to the details page of the chosen related session.

Booking a session
Users will be asked to input first name, last name, email and mobile number to complete the booking. Assume user will be paying at arrival at the session and therefore no online payment is needed. Once booking is successful, deduct the remaining number of tickets and create booking record and present a booking number to user (In real life, user will usually receive and confirmation email).

Convenient links/navigations
Well-designed navigation enhances users’ browsing experience and help them to better reach their interested sessions. And most importantly, it will increase average user browsing time and average number of page views. You must at least provide these quick navigations on every page so that users can easily reach session listing by session format, session level, cities, organizers and so on.

Features for bonus marks
If you implement features besides all the above required requirements, you might receive BONUS marks. You should mention your extra features in your design report or at demonstration.

Group

Form a group of 3 – 5 people (more than 5 people a group is NOT allowed). Register your group’s members on Canvas. Grouping must be confirmed before 26th October.

Marking criteria

Criterion*

Excellent

Good

Adequate

Marginal

Failure

Database Design (35%)

Highly capable to apply database design skill, data modelling skill to model real life database application as design document

Significantly capable to apply database design skill, data modelling skill to model real life database application as design document

Moderately capable to apply database design skill, data modelling skill to model real life database application as design document

Basically capable to apply database design skill, data modelling skill to model real life database application as design document

Inadequate to apply database design skill, data modelling skill to model real life database application as design document

Database Implementation (35%)

Highly capable to convert the design document and implement working database system using database management system on the market

Significantly capable to convert the design document and implement working database system using database management system on the market

Moderately capable to convert the design document and implement working database system using database management system on the market

Basically capable to convert the design document and implement working database system using database management system on the market

Inadequate to convert the design document and implement working database system using database management system on the market

Web-based Database Application and Programming Skills (30%)

Highly capable to build fully working web based database application using web programming and frameworks taught in the course

Significantly capable to build fully working web based database application using web programming and frameworks taught in the course

Moderately capable to build fully working web based database application using web programming and frameworks taught in the course

Basically capable to build fully working web based database application using web programming and frameworks taught in the course

Inadequate to build fully working web based database application using web programming and frameworks taught in the course

What to submit?

You will have to submit

A detailed report includes the database design (ER Diagram and Data Dictionary) and webpage screen captures. Designs tool that we’ve introduced at lab 6 will help you on this.

Each member need to make a personal statement (a few paragraphs) describing the parts of jobs that he/she is responsible for. Explain the challenges and difficulties he/she has encountered and how he/she has solved them. Combine all the personal statements into ONE SINGLE word documents. Indicate each member’s full name and student ID in the statement.

PHP source codes and exported SQL must be zipped.

Provide a demonstration of your final implementation/prototype at the last week of the course. (Demonstration time-slot to be announced later).

发表评论

电子邮件地址不会被公开。 必填项已用*标注