IST359 Assignment 2 – Spring 2011

Assignment At a Glance

As you probably figured out already, our Netflix database from assignment one is a mere fraction of the functionality required by the actual Netflix website. In this next assignment you will add features to yourNetflix database on SQL server. You will decide which features to add, design the appropriate data models for them, and then integratethem in into your SQL server database.

Grading

Your grade will be based on these criteria:

  1. [10%] Depth - The number of features you add to the database – the more you add, the higher your grade. The richer the feature (in terms of entities and relationships) the higher the grade.
  2. [5%] Creativity – adding unique and appropriate features not already found on the Netflix website.
  3. [75%] Accuracy –
  4. Did you gather the correct requirements for the features you’ve chosen?
  5. Did you follow the design process correctly, as learned in class?
  6. Did you use proper notation and techniques as learned in class?
  7. Is your logical model in 3NF? Did you explain what was changed to get it there?
  8. Does the implementation match the requirements of your original features? Does it execute?
  9. [10%] Deliverables – Turning in the required work in the proper formats. Meeting milestone deadlines.

A detailed grading form will be provided soon.

Deliverables & Due Dates

  1. Monday 4/4 Last day for team selections. After this date you cannot form or join a team. Email team requests to me.
  2. Monday 4/11Feature and data requirements review.Need to hand-in via email, your ideas for the features you choose to design and implement for the assignment. Included with your features should be a rough list of entities and business rules. I will promptly give you feedback / advice.
  3. Wednesday 4/27 Last day I’ll give feedback / comments on your diagrams. Up until this point you may give me printed versions of your diagrams and I will give you feedback on them.

[TURN OVER]

  1. Monday 5/2 Assignment 2 due. Submit a website URL with links to the following content (available in both native and HTML formats).
  2. Analysis document, containing:
  3. Brief description of features you’ve added. For each feature explain what it is, how it works, and whether it is a new or existing feature of Netflix.
  4. Entities, attributes, and business rules of those features.
  5. Conceptual ERD diagram, drawn as learned in class
  6. Logical Model diagram, drawn as learned in class with
  7. Appropriate SQL server data types selected for the columns in each table.
  8. Logical Modeldiagram, normalized to 3NF, drawn as learned in class
  9. With a description of the changes made and why.
  10. SQL Script which implements the objects of the 3NF logical model
  11. Creates tables, keys, and constraints to satisfy the 3NF logical model.
  12. Populates the tables with sample data.
  13. Contains SQL SELECT statements to demonstrate the features are implemented correctly. (How this is done will be decided by you).

Effort & Skillsets

Due to the demands of this assignment, you may work alone or in teams of up to 4 people. If working in a group I suggest choosing your team members wisely, as a wide variety of skillsets are required to complete this assignment. Things you’ll need to complete the assignment:

  • A Netflix account.You can sign up for free for the first month. This will help you decided on which features to add and implement. It will also help you invent/ consider new features not already found in Netflix.
  • Data requirements analysis (a skill acquired from IST352). Use this skill figure out the entities, attributes, and business rules associated with your chosen features.
  • Conceptual and logical modeling; normalization. You’ll need to create the proper conceptual and logical models for your feature set, and be able to adjust that model to 3rd normal form (3NF).
  • SQL Chops. You’ll need to write SQL scripts to create your database objects in your existing SQL server Netflix database. You’ll need to add some sample data, and ultimately write some SELECT statements which verify / prove you have implemented the features correctly.
  • Basic Web Skills. You’ll need to know how to publish your content to a website so that all of your deliverables are accessible from a website.