WIA2002 Software Modeling: Assoc. Prof. Dr. Siti Hafizah Ab Hamid B-3-12, FCSIT Sitihafizah@um - Edu.my
WIA2002 Software Modeling: Assoc. Prof. Dr. Siti Hafizah Ab Hamid B-3-12, FCSIT Sitihafizah@um - Edu.my
SOFTWARE MODELING
Assoc. Prof. Dr. Siti Hafizah Ab Hamid
B-3-12, FCSIT
[email protected]
www.um.edu.my
The world we live in..
The economies of ALL developed nations are
dependent on software.
What is Model?
• An abstract representation of something real.
• A useful model has the right level of detail and represents only what is
important for the task in hand.
Map is an
example of a Do you see any
model that street lights in
represents
roads / area
https://www.google.com/maps/search/map/@3.1
233803,101.6409638,14z/data=!3m1!4b1
google map?
of land / city. Why?
https://www.researchgate.net/figure/The-suspension-bridge-model-a-side-view-
of-the-bridge-half-bridge-and-b-front-view_fig9_264148336
https://www.permagrit.com/model-building/
• Systems of systems
• systems that are composed of a number of other software systems.
Example of Model (continues…)
Software Development Methodology Software Model
It is about activities to produce a system It is about representing a system using some
kind of graphical notation
Waterfall
Project Initialization 1. UML Behavioral Modelling
Business Modelling
(Week 2, 3, 6, 7, 8, 9, 10, 11)
shows how the system responds to events in the
Requirements gathering outside world and the passage of time.
Test
Who performs the
Deployment
software modelling and
Maintenance who implements it to
make a real software?
https://sparxsystems.com/enterprise_architect_user_guide/14.0/model_domains/structuraldiagrams.ht
ml 15
https://www.dreamstime.com/stock-illustration-d-man-holding-magnifying-glass-over-
white-background-image42959312
Why do we want to use Model
for Software Modelling?
Models can describe Different models
requirements present the
accurately, software from
System Analysis completely and Different Perspective different
and Design
unambiguously. Illustration perspective
During the life cycle of a project using an iterative life cycle, models
change along the dimensions of:
abstraction—they become more concrete.
formality—they become more formally specified.
Evolvable level of detail—additional detail is added as understanding
improves.
What is UML Model?
Overview
System analysis using UML diagrams able to eliminate ambiguity in requirements and
automate design verification (Khan, A. M., Mallet, F., & Rashid, M., 2019). Moreover,
UML diagrams are helpful to understand problems, communicate with application
experts and prepare documentation (Joshi, S. D., & Deshpande, D., 2012).
What is UML Model?
Unified Modeling Language is a standardized modeling language consisting of an
integrated set of diagrams. UML uses mostly graphical notations to express the
design of software projects.
organization, software engineer involves in developing UML diagrams and programming. http://www.appsgare.com/computer-application-software-types-and-functioning-of-utility-software/
Please discuss why can’t developers just sit
down and start writing code when they develop
a system.
B: Understand the distinction between a model and a diagram
What is Diagram?
• Abstract symbols/signs/notations are used to represent things or actions
from the real world.
Washing Symbols Road Signs Software Modelling Notations
Modelling
Oriented
Modelling
Oriented
* You can download Free Visual Paradigm Community Edition for FREE at:
https://www.visual-paradigm.com/download/community.jsp
What is the different between model and
diagram?
• A diagram illustrates some aspect of a
system while a model provides a
complete view of a system at a
particular stage and from a particular
perspective.
Package Diagrams
Model
• A model is an abstraction of a system or subsystem from a particular perspective.
• A model is complete and consistent at the chosen level of abstraction.
• Requirements Model is complete view of requirements.
🡪 may include textual description, other models, package, diagrams, etc.
System / Sub-system
• A system is the overall thing that is being modelled.
• A subsystem is a part of a system consisting of related elements.
References