Iteration 2 Plan - Siripa-Maneein/ku-polls GitHub Wiki
Goal
The goal of this iteration is to add an end date to a question, improve page layout and navigation, allow user to view the result without voting, and externalize the secret data for security.
Features
- A question has an end date that voting is not allowed after that date, and can be null to allow voting forever.
- User can return to polls list screen from any page.
- User can go directly to poll results page from the polls index.
- Display voting results in tabular format.
- If user enters URL of a poll not yet published or not allowed voting, then redirect him to polls list page and show an error message.
- If user enters the base URL, he will be redirected to the index page.
- Externalize sensitive configuration data from code.
- Accept only one vote (Remove vote again link).
Milestone
- Ending date of a poll is enforced.
- User can easily return to polls list from any page. Does not need to use browser "Back" button.
- If a URL of unpublished poll is entered, user is redirected to polls list page.
Acceptance Criteria
- All code is worked in
iteration2
branch and merged intomain
. - Visitor can not vote after the end date has passed.
- There are unit tests for voting in each time period(e.g. before published/published/after end date).
- Visitors can navigate between pages within links in the application.
- Visitors are redirected to the index page from base URL.
- Visitors are redirected to the index page showing error message from the detail page when voting is not allowed.
- Visitors can view results without voting.
- Voting results are shown in tabular format.
- Visitors can vote only one time.
- Any sensitive data is externalized.
- The code passed all test cases.
Retrospective Summary
- Iteration 2
What went right:
I divided the work into small tasks and add them to the project board. When I can think of a new one, I also added them right away, so I didn't forget to do them. In this iteration, I work for a small part at a time, and I found that it is more effective than doing the bigger part at one time.What went wrong:
The time spent for some tasks is longer than what I expected.What can be improved:
Try estimating time more accurately.