Groupwork Assignment
SRS Development and Object-Oriented Modeling for Final
Year Project
Objective
Students will work in groups based on your ongoing final year projects to
develop a comprehensive SRS document. They will:
1. Gather and document software requirements (both functional and
non-functional).
2. Develop user stories, use cases, and scenarios.
3. Create UML diagrams (Use Case, Class, and Sequence Diagrams).
Assignment Structure
Part 1: Requirements Gathering and Documentation
Each group should conduct interviews or brainstorming sessions to
extract project requirements.
Deliverable: A requirements document section within the SRS.
Part 2: User Stories, Use Cases, and Scenarios
Task 1: Develop User Stories
Purpose: Capture system functionality from the user's perspective
in the form of short, simple descriptions.
Output: A set of user stories that reflect the key features and
functionalities the users need.
Instructions:
Each group should write 5-10 user stories for their project.
Format: As a [type of user], I want to [perform an action], so that I
can [achieve a goal]. E.g As a registered user, I want to receive a
confirmation email after signing up, so that I know my registration
was successful.
Task 2: Create Use Cases - Provide a more detailed description of how
the system interacts with users to achieve specific goals.
Each group should choose at least 3 core functionalities of their
system and create use cases for them. Include components like actors,
preconditions, triggers, main flow, and alternative flow.Example
Use Case Title: User Registration
o Actor: New User
o Precondition: The user is not registered.
o Main Flow: User submits registration form → System
validates input → System creates user account.
Task 3: Define Scenarios
Purpose: Capture specific instances of user interaction based on
use cases, highlighting different outcomes.
Output: At least 2 scenarios for each use case, covering both
normal and edge cases.
Instructions: Groups should describe what happens during successful
and unsuccessful interactions.
Scenario 1: User submits valid registration data → System
registers the user → User receives a confirmation email.
Scenario 2: User submits invalid registration data → System shows
an error message.
Part 3: UML Diagrams and Object-Oriented Modeling
Task 1: Create UML Use Case Diagram
Purpose: Provide a visual representation of the use cases, showing
the interaction between actors and the system.
Output: A UML Use Case Diagram for the system, based on the
user stories and use cases previously created.
Instructions: Use tools like Lucidchart, StarUML, or Microsoft Visio to
draw the diagram. Example: Include actors such as Admin, User, and
System and show interactions like Login, Register, Submit Data.
Task 2: Develop a UML Class Diagram
Purpose: Model the structure of the system by showing its classes,
attributes, operations, and the relationships between classes.
Output: A UML Class Diagram representing the key objects and
relationships in the system.
Instructions: Groups should identify at least 5-8 main classes for their
system and create a class diagram. Include class names, attributes,
methods, and relationships (e.g., inheritance, composition, aggregation).
Example: A User class may have attributes like userID, email, and
methods like register(), login().
Task 3: Create a UML Sequence Diagram
Purpose: Show how objects interact over time to complete a use
case.
Output: At least one UML Sequence Diagram for one of the key
use cases.
Instructions:
Select a complex use case and depict the sequence of interactions
between objects over time.
Show the flow of messages between objects (e.g., user, server,
database).
Example:
A Login Sequence Diagram might involve messages like "User
enters credentials" → "System validates credentials" → "User
is logged in".
Submission Requirements:
Each group must submit:
1. SRS Document (containing all requirements, user stories, use
cases, and scenarios).
2. UML Diagrams (Use Case, Class, and Sequence Diagrams).
3. Presentation: A short group presentation (5-10 minutes)
explaining their system, the gathered requirements, and how they
modeled their system using UML. Subject to availability of time
Grading Criteria
Criteria Point Details
s
Requirements 20 Clear, complete, and well-organized
Documentation points functional and non-functional
requirements.
User Stories, Use 25 Clear and relevant user stories, well-
Cases, and points documented use cases, and well-
Scenarios described scenarios.
UML Diagrams 30 Accurate, detailed, and well-structured
points UML diagrams (Use Case, Class,
Sequence).
Presentation 10 Clarity, teamwork, and presentation of
points findings and design.
Quality of Work & 15 Evidence of collaboration and the
Collaboration points quality of the final submission.