Database代写:CS108 Web-Based Application

Introduction

这次代写的这个Web作业,题目很发散,按要求实现题目之一就好。
不过这是一个需要用Python和MySQL实现的Web作业,也算比较冷门的了。

Description

You will develop a web-based application with a database back-end for storage and retrieval of data. Choose your own adventure: select a subject matter related to your major or personal interests.

Examples

Some recent CS108 projects have included:

  • Interactive dictionary for English/Junta language translation
  • Inventory system for chemistry lab / reactive agents
  • Social network for a gardening club
  • High school basketball win/loss records & standings
  • Fisheries information tracking endangered species
  • Geographic information system for archeology dig
  • Compact disc inventory and sales
  • Calorie counting database/user interface
  • Local artists list their works for sale (with pictures)
  • Car rental and return
  • Special of the day listing for restaurant

Detailed Requirements

You should begin by picking a concrete but simple interaction and modeling the data and functionality to implement it. For example, in a car rental application you might show a list of cars and allow a customer to complete a rental for one car. Start small; you can always add more interactions and details after you get the first one working.
Your application will model some kind of useful function, with a web-based interface (HTML) and data storage in a relational database (MySQL). A single interaction might be sufficient for this project, but a single web page certainly is not. You should have multiple web pages with logical transitions between the pages using buttons or links.
Projects must demonstrate reading from, inserting into, and updating database tables from your web interface. Points will be awarded for the general complexity of the project, with more complex projects scoring higher than very simple projects that mimic in-class assignments. After your work is functionally complete, you should enhance the look and feel of the application as the aesthetics (colors, images and fonts) will count for a small portion of your grade.

Topic Proposal

Your proposal should be brief (about 3 sentences) and describe the general subject matter (e.g., car rental), the specific interaction you will model (e.g. car selection and checkout) and the data you will require for this interaction (e.g., table of cars, table of customers, table of rentals which matches cars with customers).

Data Requirements

What kind of data will your application need to interact with? Describe the data in terms of records and fields. What attributes does each record need to have? How will you uniquely identify a record?
Make up some sample data (about 5 records) so that you can use to begin thinking about and testing the program’s interactions. You might want to use a spreadsheet program like Excel to create these records, which will also enable importing them into the database later. We will demonstrate how to create tables and records in MySQL at the scheduled lab session this week.

Planning Your Time

You have 4 weeks to complete this project. Here are some guidelines on what you should be working on at what time:

Week 1

  • Select your topic and email to Aaron
  • Define your project’s main interaction(s) (e.g., select car for rental, collect customer info, create rental) and which database tables you will need (e.g., cars, customers, rentals)
  • Make up some sample data for each table you will need in Excel (a few records will suffice)

Week 2

  • Build your database in MySQL, import your sample data
  • Create a basic web application to view your data in a web page
  • Begin building your interaction via forms, output pages, etc.

Week 3

  • Continue building your interaction via forms, output pages, etc.
  • Debugging, refine data as needed
  • Validation of user inputs (i.e., don’t let your program crash due to missing or wrong inputs)
  • Add additional interactions to increase the scope/complexity of the project

Week 4

  • Debugging, refine data as needed
  • Continue adding additional interactions to increase the scope/complexity of the project
  • Work on the look and feel of the project (clean up HTML, CSS, tables, fonts, colors, images)
  • Documenting your code with comments
  • Prepare your short presentation of the project (plan for a 3-4 minute demo)

Project Demonstration Video

You will present your project by making a short (2-3 minute) video screen capture, with you narrating as you demonstrate the application. Think about this as a demonstration for a potential customer or employer. This will speed the grading, and provide you with a lasting artifact of your work, which you can demonstrate to potential employers. Your demonstration should not show any code or database records, but must demonstrate every major feature of your application.
I recommend that you write a brief outline of what you will show in which order. Then, use a screen capture tool (I suggest QuickTime player for Mac or Tiny Take for Windows or any similar program). Record your video, and post it to YouTube (a private/unlisted URL is fine).