Task Solutions- Various Advanced Technologies: COMP9110

Student From:
Author Note:
Table of Contents
Additional Research and A …

Preview text

Student From:
Author Note:
Table of Contents
Additional Research and Assumptions ………………………………………………………………………………………. 2
Class Diagram …………………………………………………………………………………………………………………………. 3
Activity Diagram ……………………………………………………………………………………………………………………… 5
State Machine Diagram …………………………………………………………………………………………………………… 7
Sequence Diagram ………………………………………………………………………………………………………………….. 8
References …………………………………………………………………………………………………………………………… 11
Additional Research and Assumptions
Due to the emergence of various advanced technologies, many businesses have benefited
from it very widely. The adoption of these technologies not only helps the business to automate
their entire process but also boosts their internal operation. Data modeling is the concept that is
now being used for designing an information system so that all the requirements of the business and
the end-user can be fulfilled appropriately. According to the author (Khayyam, Golkarnarenji, and
Jazar 2018), the process of data modeling is used to create asimplified diagram of the proposed
system or application as well as the element of data itcontains. Itisdone by using symbols and texts
to represent the flow of data and the data. Ithelps to provide ablueprint for the design of the new
database or the reengineering of the legacy application.
In this assignment by using the concept of data modeling asystem will going to be designed
for the business of Feed Me Now. Adatabase will be designed including all the possible interactions
of the end-users with the system. The main goal of this system is to provide the customer with the
ability to make an order for an item from the restaurant they want and get itat their doorstep by
making the payment. In the case study, there are several operations and process of the system has
been provided that will be used to complete this assignment. However, analyzing acase study just to
get the idea of the system and to bring itin front in aform of adesign isquite challenging. To make
proper decisions and assumptions regarding the proposed system so that appropriate analysis and
modeling of the system can be done, additional research has also been conducted.
According to the author (Alalwan 2020), various other systems have the similar capability of
taking online orders from the customer and delivering them the item at their doorsteps such as Uber
Eats and DoorDash. These two applications also have the same purpose which is to provide the
restaurants with food orders and take orders from the customers online. By analyzing the business
case scenario of these two applications the analysis and modeling of the proposed system Feed Me
Now become easier. The investigation also helped to identify the general process of the system such
as how itwill interact with the end-users, how activity itwill perform, and so on. There are certain
assumptions that the investigation has helped to make for the proposed system such as there must
be the facility of online registration for the customer before placing the order so that they can be
able to track their delivery status, the restaurants must be verified by the company of Feed Me Now
before they registered themselves with the company, and there must be adelivery fee involved that
will be calculated based on the distance between the restaurant and the customer.
Class Diagram
A class diagram is generally referred to as the static diagram that helps to represent the
static view of the entire system. It is not used for documenting, describing, and visualizing the
various aspects of the proposed system but also helps to construct the executable code of the
proposed system. The class diagram also describes the operations and attributes of the class as well
as the constraints that are imposed on the system (Rosca and Domingues 2021). This type of
diagram iswidely used to model the system which is object-oriented as they are the only ones that
can be easily mapped with the object-oriented languages. With the help of the class diagram, the
viewer can be able to view the classes and their associated attributes, interfaces, collaborations,
constraints, and associations (Dakic et al. 2018). Below aclass diagram has been provided for the
proposed system Fed Me Now that displays all the essential components that are identified from the
provided case study.
Figure 1: Class Diagram for the system Feed Me Now
Source: Created by author
The above diagram is the class diagram for the proposed system Feed Me Now where all
classes and their associated attributes are identified from the case study provided. In the diagram,
different types of components are used to design the diagram such as the interfaces, collaborations,
constraints, and associations. Among all, there is one association that is most important and
interesting that will be described in this section. An association generally represents the relationship
between the two classes. It mainly states that the object of one class has arelationship with the
object of another class (Abdulkareem et al. 2017). In the above diagram, the most important
association is between the class Menu and Order. Between these two classes, the multiplicities
which have been used are one-to-many optional (1..1 –0..*).
The reason for this association isthat the one menu item can be present in one or more than
one order whereas, every order should have zero or more than one menu item present in it. Itisthe
most important association because the overall goal of the proposed system is to deliver the order
to the customer which will not be possible ifthere isno menu item and no order has been placed for
the menu items. This association is interesting because based on the number of items ordered by
the customer the class order will take the number of item(s) from the class menu item.
Activity Diagram
The activity diagram generally helps to represent the software and business processes as the
progression of the actions. These types of actions are mainly carried out by computers, software
companies, or people. The activity diagrams are utilized to describe the processes of the business as
well as the use cases and to document the system processes implementation (Unhelkar 2017). Even
the most complicated progression can be easily visualized with the help of an activity diagram. The
peripheral and the sequential workflows are depicted by the object and control flows. The activity
diagram also helps to represent the activities that are made up of the action flow (Abushark et al.
2017). Below an activity diagram has been provided for one of the most important and complex
activities of the proposed system Feed Me Now.
Figure 2: Activity Diagram for the activity Place Order
Source: Created by author
In the above diagram, the chosen activity called “Place Order ”has been decomposed into
several sub-activities so that the flow of the work can be identified. This activity has been
determined from the provided case study of Feed Me Now. The activities describe the process order
within the actions. The activity can be represented in arounded rectangular box including the nodes
and the edges. The nodes which are present in the activity are mainly the actions. Hence, in the
activity, there are different types of actions present (Talai and Bouras 2017).
In the above diagram, there are three partitions based on the actor ’scustomer, restaurants,
and ordering system showing the accomplishment of the work Place Order. Here, the activities show
how acustomer will place an order to how acustomer makes the payment for the order to complete
the work. The chosen activity isan important and complex one because itisthe general flow of the
task that the system will provide to the customer. The goal of the business is to deliver an order
placed by the customer at their doorstep and take the payment for the order. So, keeping that thing
in mind this chosen activity becomes the most important one. The reason why itis complicated is
that in the workflow there are several decisions involved which will decide whether the flow gets
completed as desired or itwill take adifferent workflow to complete such as the Home Delivery or
Pickup Order action. Choosing one will decide what the system will present to the customer next.
State Machine Diagram
The state machine diagram is the type of diagram that is mainly used to describe the
behavior that isstate-dependent for an object. All objects respond differently to the identical event
based on what type of state it is in (Brambilla, Cabot, and Wimmer 2017). The state machine
diagrams are the diagram that is generally applied to the objects but can only be applied to any
element which has the behavior of the other entities like use cases, actors, subsystems systems,
methods, and so on. They are also used in the conjunction with interaction diagrams (Wolny et al.
2020). Below the state machine diagram has been provided for one of the classes which are
identified in Figure 1. Here, with the aid of a state machine diagram, the lifecycle of the class
Payment has been shown visually.
Figure 3: State Machine Diagram for the class Payment
Source: Created by author
The above diagram is the state machine diagram of the identified class Payment. Here, the
possible state of the class has been shown so that itbecomes easier to understand how the chosen
class start and ends. In the above diagram, there are different state machine notations have been
used such as state, events, transition, actions, and activity. The state is the situation or the
constraints in the lifecycle of an object where the constraints hold and the object mainly executes an
activity or waits for the event. The state has been classified into two types initial state which is
indicated by asolid circle and the final state which isindicated by aconcentric circle. The event isthe
signature which is described as the name of the event. It appears in the transition of the
compartment of astate which occurs internally or on the transition which occurs in between the
states. Whereas, the transition isthe moment from one state to the other. The action isbasically an
executable computational which is atomic that incorporates the operation calls, the sending of the
signal to the object, and the destruction of the creation of the other object (Vaandrager 2017). And
lastly, the activity is the state which is non-atomic or even described as ongoing computation. The
activity can be run to continue or completed indefinitely. It gets terminated immediately by the
event which causes the transition from the state where the activity isfirst defined.
The lifecycle of the class Payment has different states such as to receive payment, show
option, get card details, verify credentials, and receive payment. By following these in after another
the lifecycle of the class Payment will get completed. The reason why this class lifecycle is most
interesting and complex is that itrequires an explanation using the state machine diagram because
there will be adifferent option that will get triggered based on the type of delivery option the
customer will choose.
Sequence Diagram
The sequence diagram generally represents the flow of the messages that are shown in the
system and it is sometimes referred to as the event diagram. It also assists in envisioning various
dynamic scenarios. The sequence diagram also illustrates the communication between the two
lifelines as the time-ordered event ’ssequences like these lifelines will take part in real-time (Dehimi
and Mokhati 2019). In Unified Modelling Language, the lifeline isalso represented by the vertical bar,
on the other hand, the flow of the message isrepresented by the vertical dotted line which has been
extending across the bottom of the page (Yu, Jiang, and Hong 2018). Below the sequence diagram
for the most interesting sequence interaction “Customer Making Payment for Order ”has been
Figure 4: Sequence Diagram of Customer Making Payment for Order
Source: Created by author
The above sequence diagram represents the interesting sequence interaction which is
Customer Making Payment for Order. In this interaction the entire interaction of the customer with
the system for making the payment for the order they will place. In the below diagram there are
various which have been flowing between the lifelines such as the customer, order, item, payment
cash, and payment check. In this, the reader will be able to understand what messages are passing
between the lifelines and what information is being transferred for completing that particular
message. The interaction shows how the customer isplacing the order and the item isgetting added
to their order, and then how the customer ismaking the payment for that order.
Here, for the design, there are different elements of the sequence diagram which has been
used such as objects including the lifelines, messages, focus boxes, and fragments. The object is
referred to as the main elements of the sequence diagram which will interact with different objects.
Here, the message defines the communication between the objects that show what work is
transferred from one object to another. The element focuses in the sequence diagram helps to show
the period in which the object acts (Alalfi, Antony, and Cordy 2018). The fragments are represented
by the frame that is drawn over the part of the diagram. They generally represent the conditional
structures that affect the entire flow of the messages.
The reason why this chosen interaction of sequence diagram is most important is that itis
the key process that will be performed by the system and the users where an order will be placed,
an item will be added, and payment will be done by the customer. Without this interaction, the main
purpose of the business will not be completed. The reason why itiscomplex isthat every interaction
in this sequence diagram will vary depending upon the action the customer will be taking.
Abdulkareem, S.M., Ali, N.M., Admodisastro, N. and Sultan, A.B.M., 2017. Class Diagram Critic: A
Design Critic Tool for UML Class Diagram. Advanced Science Letters ,23 (11), pp.11567-11571.
Abushark, Y., Miller, T., Thangarajah, J., Winikoff, M. and Harland, J., 2017. Requirements
specification via activity diagrams for agent-based systems. Autonomous Agents and Multi-Agent
Systems ,31 (3), pp.423-468.
Alalfi, M.H., Antony, E.P. and Cordy, J.R., 2018. An approach to clone detection in sequence diagrams
and its application to security analysis. Software &Systems Modeling ,17 (4), pp.1287-1309.
Alalwan, A.A., 2020. Mobile food ordering apps: An empirical study of the factors affecting customer
e-satisfaction and continued intention to reuse. International Journal of Information
Management ,50 ,pp.28-44.
Brambilla, M., Cabot, J. and Wimmer, M., 2017. Model-driven software engineering in
practice. Synthesis lectures on software engineering ,3(1), pp.1-207.
Dakic, D., Stefanovic, D., Lolic, T., Sladojevic, S. and Anderla, A., 2018, March. Production planning
business process modelling using UML class diagram. In 2018 17th international symposium infoteh-
jahorina (infoteh) (pp. 1-6). IEEE.
Dehimi, N.E.H. and Mokhati, F., 2019, June. ANovel Test Case Generation Approach based on AUML
sequence diagram. In 2019 International Conference on Networking and Advanced Systems
(ICNAS) (pp. 1-4). IEEE.
Khayyam, H., Golkarnarenji, G. and Jazar, R.N., 2018. Limited data modelling approaches for
engineering applications. In Nonlinear Approaches in Engineering Applications (pp. 345-379).
Springer, Cham.
Rosca, D. and Domingues, L., 2021. A systematic comparison of roundtrip software engineering
approaches applied to UML class diagram. Procedia Computer Science ,181 ,pp.861-868.
Talai, A. and Bouras, Z.E., 2017, May. Software evolution based activity diagrams. In 2017 8th
International Conference on Information Technology (ICIT) (pp. 82-88). IEEE.
Unhelkar, B., 2017. Software engineering with uml .Auerbach Publications.
Vaandrager, F., 2017. Model learning. Communications of the ACM ,60 (2), pp.86-95.
Wolny, S., Mazak, A., Carpella, C., Geist, V. and Wimmer, M., 2020. Thirteen years of SysML: a
systematic mapping study. Software and Systems Modeling ,19 (1), pp.111-169.
Yu, X., Jiang, J.M. and Hong, Z., 2018, August. Decomposition and composition of sequence diagrams.
In 2018 International Symposium on Theoretical Aspects of Software Engineering (TASE) (pp. 76-83).


Leave a Reply

Your email address will not be published.