home—lects—exams—hws
breeze (snow day)
project
Project Ideas
For this course,
teams of four students
will design a web application.
-
Reservation system:
Enter room-requests,
have them approved,
show all reservations for a given room,
show all reservations for a given client,
udpate a room's details.
Include a calendar view.
-
mp3 shop:
Browse inventory,
search for albums/artists/songs,
release files upon payment,
update inventory.
-
sports-team database:
Look up information about players and about teams;
administrators can to update such info;
users can have a list of favorites teams or players
and log in to see summaries.
Allow users to either make changes to data,
or suggest changes to be reviewed by an administrator.
- [for a real client!]
FoxGuard:
Convert business inventory from a spreadsheet model
to a database with web interface.
The client has their own specs,
which override anything below; see 'Project Client: FoxGuard' on WebCT.
You will also meet/interact with the actual client,
in addition to me.
-
A page for a (campus) club.
Perhaps one with events that people can sign up for;
or perhaps one with a bio sketch for each member;
…
You can also suggest your own projects instead of the above.
However, they must include the following features:
-
Your pages are reachable via
https://php.radford.edu/projn, where n
is your team-number (in {1,…,5}).
-
User authentification,
either as a client or a manager/administrator.
-
A back-end database to store information.
-
Pages for clients to
enter new records,
and view all their own records (possibly modifying/updating parts of them);
-
Pages for administrators to modify any records (with safeguards),
view appropriate
groups of records (e.g. all reservations for next week),
with a page for administrators to enter/modify any record,
a way for a client to enter/modify parts of their own record,
and
ways for administrators to view summary of many records.
-
Data validation performed (as appropriate)
on the client-side, server-side, and database back-end.
-
As appropriate, a unified appearance for all the pages.
Checkpoints include:
[SUBJECT TO REVISION]
-
Submit a proposal: Mar.
21 (Mon)23 (Wed)
in class, and on WebCT.
-
Team name,
-
members, with one name designated as the primary contact
-
a list of pages that site will contain,
along with:
-
what input fields each page has (if any),
and what data/validation will allow a successful SUBMIT;
(perhaps even the exact id/name attributes
for each input field)
-
what page-specific information that page is displaying (if any);
-
what successor page(s) each form can lead to
(with a ~one-sentence description of the criteria)
-
A database schema/ERD:
what tables,
what columns they have,
and one-to-two sample rows for each table.
Show primary and foreign keys.
You aren't locked in by this proposal;
it is intended to make sure you have thought through what you
need to do, and that the entire group understands
exactly what functions will be implemented.
-
Prototype, with a class demonstration: (Apr.04)
-
A stub for each page,
with input forms and links
(validation not fully required).
-
An instantiated database with the indicated tables,
and at least four rows of sample (concocted) data in each
(exercising the range of cardinalities in the ERD),
and
at least two sample SQL queries that might
be eventaully generated by the web form
(but not necessarily connected to the web forms).
- (Apr.25)
Final project, with a class demonstration:
Full data validation and database connectivity.
There may be additional progress reports due.
We will have some class periods to work on the project,
include Mar.16 (Wed).
home—lects—exams—hws
breeze (snow day)