IMAT2404 - UML Diagrams in Object-Oriented Systems Analysis & Design
VerifiedAdded on 2023/06/18
|22
|2366
|209
Report
AI Summary
This assignment provides a comprehensive analysis of object-oriented systems using UML diagrams. It includes a use case diagram for a hotel management system, a state machine diagram analyzing booking class behavior, and a sequence diagram illustrating object interactions in a library management system. Additionally, it presents an activity diagram for a sales order processing system. The document discusses design consequences, state patterns, and collection classes, offering a detailed exploration of system design principles. Find more solved assignments and past papers on Desklib.

Object Oriented Systems Analysis and
Design
1
Design
1
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Contents
Question-1........................................................................................................................................3
Question-2........................................................................................................................................4
Question-3........................................................................................................................................9
Question-4......................................................................................................................................12
2
Question-1........................................................................................................................................3
Question-2........................................................................................................................................4
Question-3........................................................................................................................................9
Question-4......................................................................................................................................12
2

Question-1
Draw UML Case Diagram that models the business interactions
UML use case diagram is basically representing the graphical depiction of possible user’s
interactions within system. Generally, it is the best way to represent the actors, and their actions
with the help of Use Case diagram. In this way, it is clearly represent the point of view and
opinion of user’s, examine the entire system’s behaviour (Davis and Yen, 2019). It responds to
the request and use case has shown the sequence of multiple phases, beginning with user’s goal
and ending when it will be fulfilled.
Use Case-1
Figure 1 Use Case Diagram
In Figure-1, it represents the use case of hotel management and room booking system. On the
basis of description, it has been categorized into different actors such as Customer, staff
members, Hotel manager and Receptionist. These are different actors which may support for
establishing a strong interaction between each other. Various kind of responds are measured at
3
Draw UML Case Diagram that models the business interactions
UML use case diagram is basically representing the graphical depiction of possible user’s
interactions within system. Generally, it is the best way to represent the actors, and their actions
with the help of Use Case diagram. In this way, it is clearly represent the point of view and
opinion of user’s, examine the entire system’s behaviour (Davis and Yen, 2019). It responds to
the request and use case has shown the sequence of multiple phases, beginning with user’s goal
and ending when it will be fulfilled.
Use Case-1
Figure 1 Use Case Diagram
In Figure-1, it represents the use case of hotel management and room booking system. On the
basis of description, it has been categorized into different actors such as Customer, staff
members, Hotel manager and Receptionist. These are different actors which may support for
establishing a strong interaction between each other. Various kind of responds are measured at
3
You're viewing a preview
Unlock full access by subscribing today!

the time of -interactions. This will help to maintain and control a proper coordination between
this Use case diagram.
Use Case-2
Request for a room booking
4
this Use case diagram.
Use Case-2
Request for a room booking
4
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Use Case-3
Registration process
5
Registration process
5

Use Case-4
Guaranteed and Unguaranteed booking
6
Guaranteed and Unguaranteed booking
6
You're viewing a preview
Unlock full access by subscribing today!

Use Case-5
Check-in process
7
Check-in process
7
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Use Case-6
Check-out process
8
Check-out process
8

Use Case-7
Payment processing
9
Payment processing
9
You're viewing a preview
Unlock full access by subscribing today!

Use Case-8
Black-list guest- in appropriate behavior
10
Black-list guest- in appropriate behavior
10
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Use Case-9
Check availability
11
Check availability
11

Use Case-10
Manage guest lists
Question-2
a)
Discuss negative design consequences of such a solution
According to the State Machine Diagram, it has been drawn the model of state-dependent
behavior of booking class. On the basis of analysis, it can be assumed the possible at the time of
booking. Sometimes, it represent as true or false.
In figure-2, it may have shown the class hotel booking class, where applied the different
actions such as add booking, record car details, checking-in, check-out, payment, cancel and
archive booking.
12
Manage guest lists
Question-2
a)
Discuss negative design consequences of such a solution
According to the State Machine Diagram, it has been drawn the model of state-dependent
behavior of booking class. On the basis of analysis, it can be assumed the possible at the time of
booking. Sometimes, it represent as true or false.
In figure-2, it may have shown the class hotel booking class, where applied the different
actions such as add booking, record car details, checking-in, check-out, payment, cancel and
archive booking.
12
You're viewing a preview
Unlock full access by subscribing today!

class Hotel Booking Class
Booking
- bookingDate :date
- arrivalDate :date
- departDate :date
- numberGuests :int
- unguaranteed :boolean
- guaranteed :boolean
- registered :boolean
- completed :boolean
- paid :boolean
- cancelled :boolean
+ addBooking() :void
+ recordCardDetails() :void
+ checkIn() :void
+ checkOut() :void
+ completePayment() :void
+ cancelBooking() :void
+ archiveBooking() :void
Figure: 2
If in case, it may recognize that designed of booking system cannot designed to capture the
dynamic behavior of application system. When it is completed add booking into card but it may
arise a situation of un-guarantee book authorization. Therefore, it is directly affecting the
payment process in booking. Thus, it would be developing situation of negative consequences of
a solution.
b)
Identify the possible state of Order Class
In Figure-3, this is representing the second design attempt and produced the solution. But
when consider the value of attribute- Booking Status. It can be identified the possible state of
order Class.
13
Booking
- bookingDate :date
- arrivalDate :date
- departDate :date
- numberGuests :int
- unguaranteed :boolean
- guaranteed :boolean
- registered :boolean
- completed :boolean
- paid :boolean
- cancelled :boolean
+ addBooking() :void
+ recordCardDetails() :void
+ checkIn() :void
+ checkOut() :void
+ completePayment() :void
+ cancelBooking() :void
+ archiveBooking() :void
Figure: 2
If in case, it may recognize that designed of booking system cannot designed to capture the
dynamic behavior of application system. When it is completed add booking into card but it may
arise a situation of un-guarantee book authorization. Therefore, it is directly affecting the
payment process in booking. Thus, it would be developing situation of negative consequences of
a solution.
b)
Identify the possible state of Order Class
In Figure-3, this is representing the second design attempt and produced the solution. But
when consider the value of attribute- Booking Status. It can be identified the possible state of
order Class.
13
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

class Hotel Booking Class
Booking
- bookingDate :date
- arrivalDate :date
- departDate :date
- numberGuests :int
- bookingStatus :char
+ addBooking() :void
+ recordCardDetails() :void
+ checkIn() :void
+ checkOut() :void
+ completePayment() :void
+ cancelBooking() :void
+ archiveBooking() :void
Figure: 3
Some possible States-
Modify Booking()
Edit Booking()
Delete Booking()
Close booking()
Confirm booking()
On the basis of 2 solution, it can be developing some necessary assumptions and identify the
importance within order class.
Disadvantage faced when adopting design strategy
On the basis of diagram, when adopting design strategy as thinking for a project with
hotel management system. Usually, it should be identified the some limitation in system if it can
be applied the design strategy before execution (Padhy, Satapathy and Singh, 2018).
Design thinking have consider as medium long duration and light version for adopting as
limited purpose.
Design strategy would require a direct involvement of users, who are putting in certain
position and make their own contribution.
An application of methodology of design appropriate with solution but it may clash with
restriction and imposed by integration with system.
14
Booking
- bookingDate :date
- arrivalDate :date
- departDate :date
- numberGuests :int
- bookingStatus :char
+ addBooking() :void
+ recordCardDetails() :void
+ checkIn() :void
+ checkOut() :void
+ completePayment() :void
+ cancelBooking() :void
+ archiveBooking() :void
Figure: 3
Some possible States-
Modify Booking()
Edit Booking()
Delete Booking()
Close booking()
Confirm booking()
On the basis of 2 solution, it can be developing some necessary assumptions and identify the
importance within order class.
Disadvantage faced when adopting design strategy
On the basis of diagram, when adopting design strategy as thinking for a project with
hotel management system. Usually, it should be identified the some limitation in system if it can
be applied the design strategy before execution (Padhy, Satapathy and Singh, 2018).
Design thinking have consider as medium long duration and light version for adopting as
limited purpose.
Design strategy would require a direct involvement of users, who are putting in certain
position and make their own contribution.
An application of methodology of design appropriate with solution but it may clash with
restriction and imposed by integration with system.
14

c).
i) How state pattern may be applied to this problem
Main purpose of state design pattern is to allow objects where they can change their
behaviour on the basis of current state (Maylawati, Darmalaksana and Ramdhani, 2018).
Usually, it can be identified the information at and also changed during run times. Afterwards, it
will be modified the behaviour dynamically, making it seem as an object which has changed
classes.
class Hotel Booking Class
Booking
- bookingDate :date
- arrivalDate :date
- departDate :date
- numberGuests :int
- bookingStatus :char
+ addBooking() :void
+ recordCardDetails() :void
+ checkIn() :void
+ checkOut() :void
+ completePayment() :void
+ cancelBooking() :void
+ archiveBooking() :void
Figure: 4
On the basis of Class Hotel Booking, It can be determined the different state patterns- Add
Booking (), recordcard details(), Checkin(), Checkout(), CompletePayment(), CancelBooking(),
ArchiveBooking().
The problem arises when two different representing same state of pattern. That’s why, it
is important to modify the state behaviour of pattern in Hotel booking class. This can possible
through GoF method which is applied into booking class and then changed the behaviour of state
behaviour (Lindley, Akmal and Coulton, 2020). According to figure-4, it will modify the state of
15
i) How state pattern may be applied to this problem
Main purpose of state design pattern is to allow objects where they can change their
behaviour on the basis of current state (Maylawati, Darmalaksana and Ramdhani, 2018).
Usually, it can be identified the information at and also changed during run times. Afterwards, it
will be modified the behaviour dynamically, making it seem as an object which has changed
classes.
class Hotel Booking Class
Booking
- bookingDate :date
- arrivalDate :date
- departDate :date
- numberGuests :int
- bookingStatus :char
+ addBooking() :void
+ recordCardDetails() :void
+ checkIn() :void
+ checkOut() :void
+ completePayment() :void
+ cancelBooking() :void
+ archiveBooking() :void
Figure: 4
On the basis of Class Hotel Booking, It can be determined the different state patterns- Add
Booking (), recordcard details(), Checkin(), Checkout(), CompletePayment(), CancelBooking(),
ArchiveBooking().
The problem arises when two different representing same state of pattern. That’s why, it
is important to modify the state behaviour of pattern in Hotel booking class. This can possible
through GoF method which is applied into booking class and then changed the behaviour of state
behaviour (Lindley, Akmal and Coulton, 2020). According to figure-4, it will modify the state of
15
You're viewing a preview
Unlock full access by subscribing today!

booking status and including cancel or delete. In this way, state-behaviour can be changed and
resolved specific problem at the time of booking.
ii) Describe how state pattern would operate
In context of Hotel management and Room booking system, it has been described about
the state pattern and also shows their operating process.
Initially, it starts the process while customers can login their account and search
availability of room. State 1- Login(), registered()
If it is available the room so that Customer will select the option of booking and then
sending request to hotel manager. State-2 Get confirm booking()
Afterwards, Hotel manager will accept or reject the request on the basis of room
availability. State-3 Delete(), Modify(), accept(), reject ()
Customer follow all procedure of check-in and keep record detailed. Step-4 handle()
Hotel manager is also record the detailed of consumer or guest. Step-5 record()
Customer makes a payment through credit card. Step-6 Payment record(), confirm()
Receive a bill and get confirmation. State- 6 receive()
On the basis of analysis, identify the state pattern as behavioural design operates. As per consider
GoF, a state allows in the hotel management and booking systems when one state allows an
object and alter its behaviour when it will change internal state. Afterwards, the behaviour of
state will appear to change its booking order class (Mattsson, Andersson and Åström, 2020). It
has drawn from all separated concrete class per possible state of object.
The application Hotel management and Booking system, when it dealing with object and
defined the different states at the time of life cycle. It also proceed the incoming requests on the
basis of present state- use as state pattern. The state pattern solves the problems when object
should be changed its behaviour and understand the internal state changes. Moreover, it also
adding a new state but it does not effect on the existing states.
Question-3
a)
16
resolved specific problem at the time of booking.
ii) Describe how state pattern would operate
In context of Hotel management and Room booking system, it has been described about
the state pattern and also shows their operating process.
Initially, it starts the process while customers can login their account and search
availability of room. State 1- Login(), registered()
If it is available the room so that Customer will select the option of booking and then
sending request to hotel manager. State-2 Get confirm booking()
Afterwards, Hotel manager will accept or reject the request on the basis of room
availability. State-3 Delete(), Modify(), accept(), reject ()
Customer follow all procedure of check-in and keep record detailed. Step-4 handle()
Hotel manager is also record the detailed of consumer or guest. Step-5 record()
Customer makes a payment through credit card. Step-6 Payment record(), confirm()
Receive a bill and get confirmation. State- 6 receive()
On the basis of analysis, identify the state pattern as behavioural design operates. As per consider
GoF, a state allows in the hotel management and booking systems when one state allows an
object and alter its behaviour when it will change internal state. Afterwards, the behaviour of
state will appear to change its booking order class (Mattsson, Andersson and Åström, 2020). It
has drawn from all separated concrete class per possible state of object.
The application Hotel management and Booking system, when it dealing with object and
defined the different states at the time of life cycle. It also proceed the incoming requests on the
basis of present state- use as state pattern. The state pattern solves the problems when object
should be changed its behaviour and understand the internal state changes. Moreover, it also
adding a new state but it does not effect on the existing states.
Question-3
a)
16
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Requirements
The first requirement of class diagram is to represent the Borrower_name and Book_lists
The second requirement of class diagram is to represent Book_title and Borrower_lists,
who have taken that book on loan.
As per consider these two requirements, it is mainly focused on the collection classes that are
always supports to create a strong relationship between Book and Borrower.
In first requirement, Collection classes will support to categorise list of Books and
Borrower who wants to use particular books. It provides the architecture to store and manipulate
list of different books as objects. Sometimes, Collection items are used to copy the elements
from one list of books into another (Miquirice and Wazlawick, 2018). Afterwards, it perform the
operation to identify actual source list. On the basis of basis Borrower name, it can easily
identified the list of books.
In second requirement, it should be represented the Book_title and Borrower_lists, who
have taken that book on loan. At that time, the use of collection classes which typically
categorise the lists of borrower who have selected the specific title of books. It including
necessary operations for collection classes.
17
Library Collection:
Collection items:
Lists of Books,
name of borrower
Read (), sort ()
Collection:
Collection items:
tile of books, list
of borrower who
have taken loan
Read (), Loan (),
The first requirement of class diagram is to represent the Borrower_name and Book_lists
The second requirement of class diagram is to represent Book_title and Borrower_lists,
who have taken that book on loan.
As per consider these two requirements, it is mainly focused on the collection classes that are
always supports to create a strong relationship between Book and Borrower.
In first requirement, Collection classes will support to categorise list of Books and
Borrower who wants to use particular books. It provides the architecture to store and manipulate
list of different books as objects. Sometimes, Collection items are used to copy the elements
from one list of books into another (Miquirice and Wazlawick, 2018). Afterwards, it perform the
operation to identify actual source list. On the basis of basis Borrower name, it can easily
identified the list of books.
In second requirement, it should be represented the Book_title and Borrower_lists, who
have taken that book on loan. At that time, the use of collection classes which typically
categorise the lists of borrower who have selected the specific title of books. It including
necessary operations for collection classes.
17
Library Collection:
Collection items:
Lists of Books,
name of borrower
Read (), sort ()
Collection:
Collection items:
tile of books, list
of borrower who
have taken loan
Read (), Loan (),

18
Library
Library
You're viewing a preview
Unlock full access by subscribing today!

b)
A sequence diagram is basically representing as an object interactions arranged in the time
sequence. It depicts the objects involved in scenario of Library management system (Miquirice
and Wazlawick, 2018). Sequence diagram shows the sequences of messages passed between
different objects. It also show the control structure between objects.
Figure 5 Sequence Diagram
In Figure-5 sequence diagram, it has been representing the model of object interaction for “Print
Borrower-Book Report. It should be identified the collection classes such as Print Book, Borrow
Book. Library member is the object of system because they can borrow the book and print book
in the report format.
The Actor-
Library: member
The Control object-
Ok= borrow (Book) by library: member
19
A sequence diagram is basically representing as an object interactions arranged in the time
sequence. It depicts the objects involved in scenario of Library management system (Miquirice
and Wazlawick, 2018). Sequence diagram shows the sequences of messages passed between
different objects. It also show the control structure between objects.
Figure 5 Sequence Diagram
In Figure-5 sequence diagram, it has been representing the model of object interaction for “Print
Borrower-Book Report. It should be identified the collection classes such as Print Book, Borrow
Book. Library member is the object of system because they can borrow the book and print book
in the report format.
The Actor-
Library: member
The Control object-
Ok= borrow (Book) by library: member
19
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

Object Interaction in Sequence diagram:-
Print: Book Report
Borrow: Book by library member
Question-4
An activity Diagram define as behavioural representation. Usually, it depicts the behaviour
of a system. Sometimes, it may support to portray the control flow from starting point to end
point (Miquirice and Wazlawick, 2018). These are the best way to showing the various decision
paths and exist while activity is being executed or managed in proper manner.
Main purpose is to use an activity diagram as identify the progression of actions.
Different actions are carried out by individual, software components or computers. Activity
diagram also explained the entire business processes, use case and implementation of system.
Figure 6 Sales order processing system
20
Print: Book Report
Borrow: Book by library member
Question-4
An activity Diagram define as behavioural representation. Usually, it depicts the behaviour
of a system. Sometimes, it may support to portray the control flow from starting point to end
point (Miquirice and Wazlawick, 2018). These are the best way to showing the various decision
paths and exist while activity is being executed or managed in proper manner.
Main purpose is to use an activity diagram as identify the progression of actions.
Different actions are carried out by individual, software components or computers. Activity
diagram also explained the entire business processes, use case and implementation of system.
Figure 6 Sales order processing system
20

According to the Figure-6, it has represented the activity diagram of sales order processing
system. Basically, it starts from initial point customer sent invoice request to the sales officer
where they keep maintain a records of different orders. If it will check that items are available or
not. If it is available so that it process to move for shipping, otherwise the order processing hold.
At last, it will be performing a sales invoice and payment process. In this way, it has been
described the entire sales ordering processing system in proper manner.
21
system. Basically, it starts from initial point customer sent invoice request to the sales officer
where they keep maintain a records of different orders. If it will check that items are available or
not. If it is available so that it process to move for shipping, otherwise the order processing hold.
At last, it will be performing a sales invoice and payment process. In this way, it has been
described the entire sales ordering processing system in proper manner.
21
You're viewing a preview
Unlock full access by subscribing today!

REFERENCES
Book and Journals
Davis, W.S. and Yen, D.C. eds., 2019. The information system consultant's handbook: Systems
analysis and design. CRC press.
Lindley, J., Akmal, H.A. and Coulton, P., 2020. Design Research and Object-Oriented
Ontology. Open Philosophy, 3(1), pp.11-41.
Mattsson, S.E., Andersson, M. and Åström, K.J., 2020. Object-oriented modeling and
simulation. In CAD for control systems (pp. 31-69). CRC Press.
Maylawati, D.S., Darmalaksana, W. and Ramdhani, M.A., 2018. Systematic design of expert
system using unified modelling language. In IOP Conference Series: Materials Science
and Engineering (Vol. 288, No. 1, p. 012047). IOP Publishing.
Miquirice, S.A. and Wazlawick, R.S., 2018, October. Relationship between cohesion and
coupling metrics for object-oriented systems. In International Conference on Information
and Software Technologies (pp. 424-436). Springer, Cham.
Padhy, N., Satapathy, S. and Singh, R.P., 2018. State-of-the-art object-oriented metrics and its
reusability: a decade review. Smart Computing and Informatics, pp.431-441.
22
Book and Journals
Davis, W.S. and Yen, D.C. eds., 2019. The information system consultant's handbook: Systems
analysis and design. CRC press.
Lindley, J., Akmal, H.A. and Coulton, P., 2020. Design Research and Object-Oriented
Ontology. Open Philosophy, 3(1), pp.11-41.
Mattsson, S.E., Andersson, M. and Åström, K.J., 2020. Object-oriented modeling and
simulation. In CAD for control systems (pp. 31-69). CRC Press.
Maylawati, D.S., Darmalaksana, W. and Ramdhani, M.A., 2018. Systematic design of expert
system using unified modelling language. In IOP Conference Series: Materials Science
and Engineering (Vol. 288, No. 1, p. 012047). IOP Publishing.
Miquirice, S.A. and Wazlawick, R.S., 2018, October. Relationship between cohesion and
coupling metrics for object-oriented systems. In International Conference on Information
and Software Technologies (pp. 424-436). Springer, Cham.
Padhy, N., Satapathy, S. and Singh, R.P., 2018. State-of-the-art object-oriented metrics and its
reusability: a decade review. Smart Computing and Informatics, pp.431-441.
22
1 out of 22
Related Documents

Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.