Title: Use Case specification and use case diagram assignment
Course title: Object Oriented Analysis & Design
Course code: CSE-314
3rd Year 1st Semester 2023
Date of Submission: 22 June,2024
Submitted to :-
Sarnali Basak
Associate Professor
Dr. Md. Musfique Anwar
Associate Professor
Nadia Afrin Ritu
Lecturer
Submitted by :-
Name Roll Exam roll
Rifat Jahan Sumaia 356 210876
Question No : 01
✓ Consider the following scenario:
You are required to design and implement a system that will be used to take online exams.
There are two main groups of users, teachers and students. Teachers can schedule exams and
add students by their email address. Teacher should also be able to create student groups.
Student groups can be comprised of other student groups. Teachers, if they so wish, can add
students to an exam by adding individual students, and/or groups. Half an hour before the
scheduled time of the exam, the students should get a notification via email.
Exam assessment is done on a per-question level. For each question, the teacher can set one
out of many assessment methods (e.g. content-matching, MCQ, mathematical correctness,
manual marking etc.), with each method having its own parameters as specified by the teacher.
Certain questions can have nested questions. When an assessment method is set for these, the
teacher should be given the choice to apply the same assessment method(s) to sub-questions.
The actual choice is up to the discretion of the teacher.
Draw use case diagram of the above system.
Answer:
Figure 1: Use case diagram for online exam system.
Question No : 02
✓ Consider the following system:
SomeWeirdCompany Inc. is trying to break into the note taking market by bringing a new
offering specially targeted to students. They will allow users to take class notes on their
application, which has a mobile version, a web version as well as a version where notes can be
added via sending an SMS to a particular number. A user can use their application on multiple
devices, and it is expected that the notes will be synchronized in pseudo real time.
Students can search for particular classes by searching by the name/code along with institution
and teacher name. Once a class is created, other students can join the class. There is no
restriction on who can join the class.
Each student can take his/her individual notes on any of their devices. When taking notes, users
can add text, handwriting, images, sound clips and video clips to the note. They can also undo
their actions, with the last action being undone first.
User notes can be private. However if a user’s notes are private they cannot see the notes of
others in the same class. If a user makes her/his notes shared, then the user immediately gets
access to all other shared notes. Users can rate each note. They can also make an aggregated
note by arranging multiple notes in a hierarchy, which can have multiple nested levels. Users
can add tags to notes. When tag is added to an aggregated note, all descendant notes should
also be tagged.
Draw use case diagram of the above system.
Answer:
Figure 2 : Use case diagram for note taking system.
Question No : 03
✓ Consider the following scenario:
‘User Forum System’.
In this web-based system, any new user can create an account and can join in any public group.
He can join any private group based on group moderator’s invitation. If it is a restricted group, then
joining to that group depends on some criteria like eligibility to join this group, whether able to take
participation actively in all activities of the group.
Every group has its own home page which displays the detail information of that group. It will also
display the most recent messages and activities list of the group. The creator of the group will be the
moderator of the group.
After joining the group, the user can participate to create, view any message of the group. At the time
of creating any message he can attach any file to that message. He can chat to any member of that
group who is in online. He can share photos through photo album. There are also some activities
available like polling/ voting on any query, sharing knowledge on any topics etc. Entering any group,
the user will see all messages of that group as Read and Unread status. At the time of reading any
message, the user can also view the message history by clicking history button.
I. Draw use case diagram and mention in details of any two (2) use cases (For each use
case, you need to mention the use case title, actor, scenario, pre-condition, post-condition
and exception).
II. Find out the major roles and make the CRC cards for the above scenario.
Answer:
Figure 3 : Use case diagram for User forum system.
Details of two use cases :
Use case Create account
Actor User
Scenario/description 1. The user accesses the registration page of the
User Forum System.
2. The user enters the required information, such
as username, password, and email address.
3. The system validates the entered information.
4. Upon successful validation, the system creates a
new account for the user.
5. The user receives a confirmation message or
email indicating that the account has been
successfully created.
Exceptions ▪ If the registration page is not accessible or
encounters a 404 error, the system displays an error
message.
▪ If the entered email is already in use, the system
notifies the user and prompts them to use a different
email.
▪ • If there is a connectivity issue with the database,
the system notifies the user about the problem.
Preconditions • The user has access to the registration page through
a web browser with internet connectivity.
• The user provides a unique email address not
already associated with an existing account.
Postconditions o Successful account creation: The user account is
created, and the user is directed to the login page or
receives a confirmation message.
o Unsuccessful account creation: The user remains
on the registration page with an error message
indicating the issue.
o Exception: If possible, the user remains on the
registration page with an error message if there are
issues.
Use case Join private group
Actor User
Scenario/description 1. The user navigates to the group section of the
User Forum System.
2. The user selects a private group they wish to
join.
3. The system prompts the user to request an
invitation from the group moderator.
4. The user submits a request for an invitation.
5. The group moderator receives the invitation
request and reviews it.
6. Upon approval by the group moderator, the user
receives an invitation to join the private group.
7. • The user accepts the invitation and joins the
private group.
Exceptions • If the group section is not accessible or encounters a
404 error, the system displays an error message.
• If there is a connectivity issue with the database, the
system notifies the user about the problem.
• If the group moderator rejects the request, the user
is notified and cannot join the private group.
Preconditions ▪ The user is logged into the User Forum System.
▪ The user has access to the group section through
a web browser with internet connectivity.
Postconditions o Successful join: The user joins the private
group and can access the group’s home page
and messages.
o Unsuccessful join: The user remains in the
general group section with an error message
indicating the issue.
o Exception: If possible, the user remains in the
general group section with an error message if
there are issues.
The major roles in this system are :
1. User
2. Group moderator
3. User forum system
• Account Manager
• Group Manager
• Message Manager
• Authentication Manager
CRC card for user :
Class : User
Responsibilities Collaborators
• Create an account • Account Manager (for creating an
account)
• Join a group • Authentication Manager (for logging in)
• View group home page Group Manager (for joining and managing
• View group messages and activities groups)
• Share photos
• Participate in polling/voting
• Share knowledge
• Create a message • Message Manager (for viewing, creating,
• Attach files to messages and managing messages)
• View messages and message history
• Chat with group members
• Mark messages as read/unread
CRC card for Group moderator :
Class : Group Moderator
Responsibilities Collaborators
• Create group • Group Manager (for joining and
• manage groups managing groups)
• invite users to private groups • User (for inviting users and approving
• approve join requests requests)
CRC card for Account Manager :
Class : Account manager
Responsibilities Collaborators
• Validate user information • User (for creating an account)
• Create user account • Authentication Manager (for
validating user credentials)
CRC card for Group Manager :
Class : Group manager
Responsibilities Collaborators
• Allow users to join groups • User (for joining groups)
• Validate criteria for restricted groups • Group Moderator (for creating and
• Manage group details and members managing groups)
• Handle moderator invitations • Authentication Manager (for validating
user actions)
CRC card for Authentication Manager :
Class : Authentication manager
Responsibilities Collaborators
• Authenticate user credentials • User (for logging in and accessing the
system)
• Maintain session details for logged-in • Account Manager (for validating
users credentials during account creation)
CRC card for Message Manager :
Class : Message manager
Responsibilities Collaborators
• Allow users to create and view • User (for creating and managing
messages messages)
• Track message history
• Attach files to messages • Group Manager (for validating group
membership))
• •