Use Case

User stories provide high-level goals of users interacting with a system. These need to be detailed further into use cases, offering in-depth information on the system's response to user interactions.

Use Case: A use case in software requirements specification details a sequence of actions, conditions, and events, outlining how a system should react to user or external system interactions. It effectively captures system behavior from the user's perspective.

Consider the user story: "As an instructor, I want to create courses on the platform to document and share learning outcomes." The corresponding use case is as follows:

Example Use Case: Create Course

  • Actors: Instructor
  • Preconditions: The instructor must have an account on the platform.
  • Flow:
    1. The instructor logs into their account.
    2. They select “Create Course.”
    3. The platform displays a course creation form.
    4. The instructor completes the form, including course details.
    5. The platform saves the course and shows a confirmation.
  • Postconditions: The course is created and viewable by the instructor.
  • Exceptions: Errors for incomplete information or if the instructor lacks an account.

Important: Each user story must have at least one corresponding use case. Creating sequence diagrams and wireframes for these use cases is highly recommended.

Sequence Diagram

Sequence diagrams visually represent the interactions between users, the system, and external systems. They complement use cases by highlighting the interaction sequence and identifying any requirement gaps.

Example:

An example sequence diagram

Wireframe

Creating a user interface begins with building Wireframes or Mockups. Wireframes provide a skeletal framework of the UI, illustrating user-system interaction.

Example:

An example wireframe
Another example wireframe
Another example wireframe

For wireframing, tools like Balsamiq, Sketch, Figma, InVision, and Diagrams.net are useful. In this course, we recommend using simple, free tools like Diagrams.net.