Welcome to Logic Lab's Know-It or Blow-It JavaScript Quiz. This engaging and dynamic code quiz presents an excellent way to test and improve your JavaScript knowledge. The quiz begins when you hit the start button, activating a countdown timer and presenting you with your first question.
AS A developer
I WANT to create a multiple-choice question set with correct and incorrect answers,
SO THAT users can engage with a dynamic and challenging quiz.
Acceptance Criteria
GIVEN I have a list of questions and multiple-choice answers
WHEN I enter them into the system
THEN they should be correctly stored and retrievable for quiz display.
AS A developer
I WANT to write JavaScript code that updates the HTML and CSS dynamically,
SO THAT the quiz is engaging, interactive, and reacts to user actions in real time.
Acceptance Criteria
GIVEN a user is taking the quiz
WHEN they perform actions such as answering a question or starting a new session
THEN the HTML content and CSS styling should dynamically update to reflect these actions.
AS A developer
I WANT to add functionality that allows users to restart the quiz and reset scores,
SO THAT users can retake the quiz to improve their scores.
Acceptance Criteria
GIVEN a user has completed the quiz
WHEN they select the option to retake the quiz
THEN the quiz should restart, the timer should reset, and the score should be cleared for a new session.
AS A developer
I WANT to allow users to view and save their final scores and initials once the quiz is finished,
SO THAT users can track their progress and compete with others.
Acceptance Criteria
GIVEN a user has finished the quiz or the timer has reached zero
WHEN the game ends
THEN the user should be able to view their final score and enter their initials.
WHEN the user submits their score and initials
THEN this information should be saved and displayed on a high scores page.
AS A developer
I WANT to add a timer to the quiz that starts when a user begins the quiz,
SO THAT the quiz simulates a real-world timed testing environment.
Acceptance Criteria
GIVEN a user starts a new quiz
WHEN the first question is displayed
THEN the timer should start counting down.
AS A developer
I WANT to implement a scoring system that evaluates user answers and adjusts scores and time accordingly,
SO THAT users can see their scores and have the opportunity to improve their performance.
Acceptance Criteria
GIVEN a user selects an answer to a question
WHEN the answer is correct
THEN their score should increase based on their speed of response, and the next question should be presented.
WHEN the answer is incorrect
THEN time should be deducted from the timer, and the next question should be presented.
AS A developer
I WANT to design a separate high scores page,
SO THAT users can compare their scores against their peers' scores and motivate themselves to improve.
Acceptance Criteria
GIVEN a user wants to view the high scores
WHEN they navigate to the high scores page
THEN they should see a list of initials and corresponding scores sorted in descending order.
AS A developer
I WANT to design a clean, polished, and responsive user interface,
SO THAT the quiz provides a visually pleasing and accessible experience for users.
Acceptance Criteria
GIVEN a user is using the quiz app
WHEN they navigate and interact with different features
THEN the user interface should respond smoothly and display correctly across different screen sizes.
Investigate and Resolve Issue with Incorrect Quiz Answer Validation
User Story
AS a developer
I WANT to investigate and resolve the issue with incorrect quiz answer validation
SO THAT users receive accurate feedback on their quiz responses.
Acceptance Criteria
GIVEN a quiz question with multiple correct answers,
WHEN a user submits an answer,
THEN the system should mark it as correct if the user's answer matches the correct answer