Iteration 1 Plan - natekrth/ku-polls GitHub Wiki

Goal

A working web app that displays poll questions, allows a visitor to select a poll question and choose from a list of responses. Application correctly displays the number of "votes" for each choice in the selected poll question. Results persist across restarts of the application.

Features

  1. Display a page showing a list of current poll questions.
  2. Each poll question has a publication date (starting date) and the question is not shown before the starting date.
  3. Each poll question has a link to a page displaying the question and a list of choices. A visitor can select a choice and press a button to submit a vote. His vote is recorded.
  4. After voting, a visitor can see the total votes for each choice on a poll question.
  5. Poll questions and choices are saved to a database.
  6. Poll questions are created using the admin interface (no custom interface yet).

Milestone

  1. Application displays a list of active polls and allows voting on each poll.
  2. Application shows total "votes" for each choice in a poll. Results are persistent across restart.

Tasks

All tasks should be recorded on Project Board for Iteration 1.

  1. Create a task board on Github for this iteration, and enter tasks.
  2. Create a polls application with Question and Choice model classes (Tutorial part 2).
  3. Design the UI and navigation.
    • home page (index) displays a list of poll questions with links to each question

    • question detail page displays poll question and list of choices with a way of selecting a choice

    • results page displays vote totals for a particular question, with navigation links

  4. Implement the view for home page and start of question detail page (Tutorial part 3)
  5. Implement a web form for question detail page, and back-end to handle the form submission and record a vote (Tutorial part 4)
  6. Write Unit Tests (Tutorial part 5)
    • test that question is not displayed before starting date (pub_date)
    • test that question is displayed after the pub_date
    • test that index page displays correctly even if no poll questions available
    • test that "votes" are counted correctly - this is not in the tutorial
  7. Add CSS styling (Tutorial part 6)
  8. Add at least 2 interesting questions to the application, and delete the stupid "What's up?" question.
    • No trivial or boring questions like "What's your favorite color?", "What is today?".

Evaluation Criteria

  1. Application runs, displays list of current poll questions.
  2. User can select a poll question, see a list of choices, select a choice, and submit his choice. His selection is added to the "vote" count for the selected choice.
  3. After user submits his choice, application shows vote totals for each answer to a question.
  4. Application passes all unit tests.
  5. All navigation links work correctly.
  6. Application has some CSS styling and text is easy to read.
  7. Application has at least 2 interesting questions. No dumb questions like "What's up?", "How do you feel?".
  8. All code committed to Github on iteration1 branch and merged into master.

Retrospective

I have problem with the styling with css because some how Django have some problem showing the style after run the server. I just learn about how to use iterative software process for the first time and I just learn how to use Django so, This take a lot of time trying to understand the concepts, ideas, and hands on.