BUSINESS ANALYSIS AND
MODELLING
CSIP5101
System Modelling
Balraj
P2846448
MSc Information Systems
Management De Montfort University
Contents
Part 1. Use Case Realisation for the ‘Allocate Truck to Driver’ Use Case ............................... 2
Analysis Class Diagram ......................................................................................................... 2
Communication Diagram ....................................................................................................... 3
Part 2. Sequence Diagram .......................................................................................................... 6
Part 3. Evaluation of Enterprise Architecture as a CASE Tool ................................................. 9
References ................................................................................................................................ 11
1
Part 1. Use Case Realisation for the ‘Allocate Truck to Driver’ Use Case
Analysis Class Diagram
a) Introduction
During the analysis stage, a system’s structural elements are modelled using an analysis class
diagram. It demonstrates how the primary classes in a use case work together to complete a
task (Satzinger, Jackson, & Burd, 2000). Basically, three classes used in this diagram Entity
class, Control class and Boundary class. The Entity classes represent business items. The
control classes supervise the workflow and The Boundary classes communicate with actors
and are essential components. Because it offers a thorough blueprint for realizing system
behaviour, identifying relationships and laying the groundwork for more intricate system
design, this kind of diagram is useful in systems analysis and design.
b) Analysis Class Diagram
1. Boundary class
AvailableTrucksBoundary
2. Control class
AvailableTrucksController
3. Entity classes
• Truck
➔ Attributes: truck_id, truck_make, truck_model, truck_odometer
➔ Operations: getTruckDetail()
• Maintenance:
➔ Attributes: maintenance_id, truck_id, date, details
➔ Operations: getMaintenanceService()
• DriverDetail:
➔ Attributes: driver_id, name, licence_type, age
➔ Operations: getDriverDetail()
• DriverAllocation:
➔ Attributes: allocation_id, driver_id, end_date, start_date, truck_id
➔ Operations: addAllocation(), deleteAllocation(), getAllocation()
2
c) Decision Summary
Based on their functional functions of the “Swift Distribution Ltd. Management System” select
particular classes to represent various components in the Analysis Class Diagram. Used almost
all the concept including Boundary class, Control class and Entity class. To differentiate the
user interactions from core operations, boundary classes such as “AvailableTrucksBoundary”
were used. To ensure a single point of control for managing system activities the
“AvailableTrucksController” as control class was created to encapsulate the primary logic and
process of the truck-to-driver allocation. To model persistent data including crucial properties
to store crucial actualities for tracking allocation, entity classes for Truck, Maintenance,
DriverDetail and DriverAllocation were created. In order to demonstrate how each item
interacts in the use case also created relationships between classes. These design decisions
support future implementation and possible system improvements by ensuring the diagram is
easy, understandable and maintained while following to UML standard practices.
Communication Diagram
a) Introduction
A communication diagram illustrates how items or parts of a system communicate with one
another to accomplish a certain use case or scenario. To illustrate the sequence and identify
which objects communicate and in what order, each message is numbered. Because it offers a
clear visual depiction of the communication channels, exposing relationships, message flows,
and the functions of each component, this kind of diagram is helpful in systems analysis and
design. Furthermore, it supports the designers in comprehending item interactions,
guaranteeing that the design will satisfy functional specifications. In the diagram
communication flow defined by providing messages in sequence (Dennis, Wixom, &
Tegarden, 2015).
3
b) Communication Diagram
Communication Flow:
1. Select “View Available Trucks” ()
2. “View Available Trucks” () selected
3. Get “View Available Trucks” () detail
4. Return “View Available Trucks” () detail
5. Present “View Available Trucks” () details screen
6. Available Trucks details screen displayed
7. Enter new detail for the allocation
8. addAllocation() selected
9. new allocation detail added
10. return allocation id
11. Confirm new allocation added
12. Confirmation displayed
13. Select specific truck for details
14. getTruckDetail() selected
15. get selected truck detail
16. return selected truck detail
17. Present Truck details
18. Truck details screen displayed
19. Select specific driver detail
20. getDriverDetail() selected
21. get selected Driver details
22. return selected Driver details
23. Present get Driver Details screen
24. Driver details screen displayed
4
c) Decision Summary
In creation of communication diagram mainly focused on selecting object that represent
important key functional role. The key roles performed by “Available Trucks Boundary”,
“Available Trucks Controller”, Truck, DriverDetail and DriverAllocation. From them
“Available Trucks Boundary” perform user interaction. “Available Trucks Controller”
processing all the request and control all the logic. Truck, Driver and Allocation all are the
entities store particular data related to name. Truck stores the detail including model, make,
maintenance related data. Driver entity store the information related to driver including name,
contact, address, availability. Allocation stores the information about allocation slots. For
establishing communication channel provide message numbering to the flow based on the
interaction of actor “Manager”. Based on the Fleet Manager's interactions and the logical order
of checks and confirmations, message numbering assigns a priority to the flow. By preserving
distinct responsibilities for every component and confirming viability in accordance with
system requirements, these choices guarantee a seamless and effective allocation procedure.
5
Part 2. Sequence Diagram
a) Explanation
A sequence diagram displays the order in which components or objects interact over time to
accomplish a certain use case or purpose. It demonstrates the development of events from the
start of a scenario to its conclusion by concentrating on the sequential order of messages sent
between objects. The order in systems analysis and design, diagrams are useful because they
show how objects interact, assist find relationships, and make sure the system design complies
with functional requirements (Bell, 2004). This organized perspective on item interactions also
helps to confirm if the design is feasible.
6
b) Sequence Diagram for “Allocate Truck Driver” Use case
7
c) Summary
In creation of sequential diagram accurate flow provided for Swift Distribution Ltd. Management
System. Flow is created from actor interact with the system using Available Trucks Boundary
and request for different information and operations including availability of truck, availability
of driver and creation of new allocation slot. Each step in this graphic is clear and sequential
with the decisions prioritizing a logical sequence that reflects the Fleet Manager’s interactions
with the system. In order to efficiently divide duties and guarantee that data retrieval,
availability checks, and record generation are carried out in discrete stages, boundary, control,
and entity objects were used. In order to mimic real-world process requirements, message
sequencing was thoughtfully set up to satisfy the requirement that the Fleet Manager may only
assign a truck if both the vehicle and the driver are available. Reliability is prioritized, possible
conflicts are decreased, and system usability is improved by this design.
8
Part 3. Evaluation of Enterprise Architecture as a CASE Tool
Introduction
Enterprise Architect is one proper example of a Computer-Aided Software Engineering
(CASE) program that supports software development activities at many phases including
requirements analysis, design, implementation and maintenance. CASE tools save time and
increase accuracy by automating parts of software development and ensuring correct and
accessible documentation. In order to provide a detailed and planned method of defining the
system requirements, Enterprise Architect provides analysts and designers with specialized
tools that allow them to create detailed models, including use case diagrams, class diagrams,
sequence diagrams, and communication diagrams, in the analysis of the World-Wide Tours
scenario (Seyedeh Reyhaneh Mirsalari & Ranjbarfard, 2020).
Ability of Enterprise Architecture as a CASE Tool:
- Gathering and Managing information
The enterprise architect helps with requirement documentation by producing visual
models that make system behaviour more understandable. This suggests that for the
World-Wide Tours scenario, analysts can create use case diagrams to visually represent
the system’s functional requirements, highlighting important players including drivers
and customer support representatives and how they interact with the system such as
scheduling tours, allocating drivers.
- Visual Modelling
The tool’s capacity to generate UML diagrams that illustrate system architecture and
interactions is one of its primary functions. A class diagram can show the relationships
between the primary entities such as Customer, Tour and Booking.
- Simulating Scenario
Designers can model interactions using Enterprise Architect such assigning a tour guide
to a certain business. These processes may be simulated with the use of sequence and
communication diagrams which can highlight any timing problems or dependencies
that can require modification.
- Collaboration
By enabling different team members to get and modify the same models, CASE
technologies promote collaborative work environments and guarantee consistent
documentation.
How Enterprise Architecture supports Analysts and Designers
- Traceability and Consistency
Enterprise Architect and other CASE technologies support analysts in protective model
consistency. To cut down on mistakes Enterprise Architect will apply a class named
Tour that the analyst creates in the class diagram to all models.
- Effective Error Identification
9
CASE tools make it easier to find inconsistencies in design logic by automating
complicated parts of model production. When an analyst notices that a particular
feature such as payment processing is not well represented across models, they can
promptly spot and fix any gaps.
- Document in Detail
A report describing every use case, class and sequence flow is one example of the
documentation that Enterprise Architect creates conservative from models. By sharing
this documentation with stakeholders, we can make sure they comprehend how the
system works and provide their approval before development starts.
Role of UML Modelling in Supporting Analyst and Designers
The UML provide standardized notations that help designers convey complex requirements
and procedures in an intelligible way. Understanding the interactions between various system
components is aided by use case, sequence, class, and communication diagrams.
- Requirements that are precise and clear:
UML diagrams simplify complicated systems into easily understood components. For
instance, the use case diagram for the World-Wide Tours scenario lists all of the main
functions and their interactions with actors, helping to delineate the limits of the system.
- Design Complexity Reduction:
Sequence diagrams represent system behaviour that provide the accurate order of
measures for tasks such as assigning a driver or verifying reservations. This is
particularly helpful for dependent, time-sensitive tasks.
- Object-Oriented Design Support:
A class diagram for World-Wide Tours can have classes for Customer, Tour and
Booking each having simple created attributes and methods to help reduce the gap
between design and development.
Evaluation
Analysts and designers are authorized by CASE tools such as Enterprise Architect which offer
a full platform for designing, validating, and documenting system requirements. They make it
easier for team members to cooperate and make sure they everyone understand the structure
and features of the system. Analysts can verify processes with stakeholders at an initial stage
to make sure the trip booking procedure satisfies business needs. By automating documentation
generation and streamlining model changes CASE systems also save time, allowing analysts
and designers to concentrate more on strategic enhancements and less on administrative duties.
A strong foundation for software development is ensured by analysts and designers using UML
with CASE tools like Enterprise Architect to better explain system functionality to developers,
lower the possibility of misunderstandings and maintain consistency in model modifications.
In summary, these technologies greatly enhance the clearness, traceability and accuracy of
software projects in accumulation to increasing the productivity of the analysis and design
phases, particularly for complex scenarios like the World-Wide Tours management system.
10
References
Bell, D. (2004). UML’s sequence diagram. IBM.[Online] IBM, 16.
Dennis, A., Wixom, B., & Tegarden, D. (2015). Systems analysis and design: An object-
oriented approach with UML. Wiley. Retrieved from
https://books.google.co.in/books?id=rbLrBgAAQBAJ
Satzinger, J. W., Jackson, R. B., & Burd, S. D. (2000). Systems analysis and design in a
changing world (with computing science and information technology CourseMate printed
access card). Retrieved from https://api.semanticscholar.org/CorpusID:109597689
Seyedeh Reyhaneh Mirsalari, & Ranjbarfard, M. (2020). A model for evaluation of enterprise
architecture quality. Evaluation and Program Planning, 83, 101853.
https://doi.org/10.1016/j.evalprogplan.2020.101853
11