SlideShare a Scribd company logo
Software Engineering
Lesson #04 - Lecture
Lesson #04 - Lecture
Your KBTU 202409 Software Engineering
class information is updating …
Lesson #04 update is in progress
This will take around 2 hours to complete
Please, don’t turn off your head
Software Engineering
Part 1.
Introduction to Software Engineering
Part 1. Introduction to Software Engineering
#include<iostream>
Using namespace std;
int main()
{
cout << “System modeling” << endl;
return 0;
}
System modeling
Agenda: Lesson #04 - Software Engineering - Lecture
1 Introduction & Context models
2 Interaction models & Structural models
3 Behavioral models
4 Model-driven engineering
Agenda: Lesson #04 - Software Engineering - Lecture
1 Introduction & Context models
2 Interaction models & Structural models
3 Behavioral models
4 Model-driven engineering
System modeling is the process of developing abstract models of a
system, with each model presenting a different view or perspective
of that system
System modeling now usually means
representing a system using some kind
of graphical notation based on diagram
types in the Unified Modeling
Language (UML)
Introduction & Context models
Introduction
Models are used during the requirements engineering process to
help derive the detailed requirements for a system, during the design
process to describe the system to engineers implementing the
system, and after implementation to document the system’s
structure and operation
Introduction & Context models
Introduction
You may develop models of both the existing system and the system
to be developed:
■ Models of the existing system are used during
requirements engineering
■ They help clarify what the existing system does, and they
can be used to focus a stakeholder discussion on its
strengths and weaknesses
Introduction & Context models
Introduction
You may develop models of both the existing system and the system
to be developed:
■ Models of the new system are used during requirements
engineering to help explain the proposed requirements to
other system stakeholders
■ Engineers use these models to discuss design proposals
and to document the system for implementation
Introduction & Context models
Introduction
It is important to understand that a system model is not a complete
representation of system
Introduction & Context models
Introduction
The detail and rigor of a model depend on how you intend to use it
There are three ways in which graphical models are commonly used:
- As a way to stimulate and focus discussion about an existing or
proposed system
Introduction & Context models
Introduction
The detail and rigor of a model depend on how you intend to use it
There are three ways in which graphical models are commonly used:
- As a way of documenting an existing system
Introduction & Context models
Introduction
The detail and rigor of a model depend on how you intend to use it
There are three ways in which graphical models are commonly used:
- As a detailed system description that can be used to generate a
system implementation
Introduction & Context models
Introduction
UML (Unified Modelling Language) -> 14 diagram types
Widely used 5 diagram types
● Activity diagrams
● Use case diagrams
● Sequence diagrams
● Class diagrams
● State diagrams
Introduction & Context models
Introduction
Lesson #04 - Software Engineering - Lecture.pdf
Lesson #04 - Software Engineering - Lecture.pdf
At an early stage in the specification of a system, you should decide
on the system boundaries, that is, on what is and is not part of the
system being developed
This involves working with system stakeholders to decide what
functionality should be included in the system and what processing
and operations should be carried out in the system’s operational
environment
Introduction & Context models
Context models
Context models are used to illustrate the operational context of a
system - they show what lies outside the system boundaries
The definition of a system boundary is not a value-free judgment
Social and organizational concerns may mean that the position of a
system boundary may be determined by nontechnical factors
Introduction & Context models
Context models
Once some decisions on the boundaries of the system have been
made, part of the analysis activity is the definition of that context and
the dependencies that a system has on its environment
Normally, producing a simple architectural model is the first step in
this activity
Introduction & Context models
Context models
Agenda: Lesson #04 - Software Engineering - Lecture
1 Introduction & Context models
2 Interaction models & Structural models
3 Behavioral models
4 Model-driven engineering
All systems involve interaction of some kind. This can be user
interaction, which involves user inputs and outputs; interaction
between the software being developed and other systems in its
environment; or interaction between the components of a software
system
User interaction modeling is important as it helps to identify user
requirements
Interaction models & Structural models
Interaction models
This section discusses two related approaches to interaction
modeling:
● Use case modeling, which is mostly used to model interactions
between a system and external agents (human users or other
systems)
● Sequence diagrams, which are used to model interactions
between system components, although external agents may also
be included
Interaction models & Structural models
Interaction models
Use case modeling
- A use case can be taken as a simple description of what a user
expects from a system in that interaction
- Each use case represents a discrete task that involves external
interaction with a system
Interaction models & Structural models
Interaction models
Use case modeling
Interaction models & Structural models
Interaction models
Sequence diagrams
● Sequence diagrams in the UML are primarily used to model the
interactions between the actors and the objects in a system and
the interactions between the objects themselves
● The UML has a rich syntax for sequence diagrams, which allows
many different kinds of interaction to be modeled
Interaction models & Structural models
Interaction models
Sequence diagrams
Interaction models & Structural models
Interaction models
Structural models of software display the organization of a system in
terms of the components that make up that system and their
relationships
Structural models may be
● static models, which show the organization of the system design,
or
● dynamic models, which show the organization of the system
when it is executing
Interaction models & Structural models
Structural models
Class diagrams
● Class diagrams are used when developing an object-oriented
system model to show the classes in a system and the
associations between these classes
● Loosely, an object class can be thought of as a general definition
of one kind of system object
Interaction models & Structural models
Structural models
Class diagrams
● An association is a link between classes indicating that some
relationship exists between these classes
● Consequently, each class may have to have some knowledge of its
associated class
Interaction models & Structural models
Structural models
Class diagrams
Interaction models & Structural models
Structural models
Agenda: Lesson #04 - Software Engineering - Lecture
1 Introduction & Context models
2 Interaction models & Structural models
3 Behavioral models
4 Model-driven engineering
Behavioral models are models of the dynamic behavior of a system as
it is executing
They show what happens or what is supposed to happen when a
system responds to a stimulus from its environment
Behavioral models
Behavioral models
These stimuli may be either data or events:
● Data becomes available that has to be processed by the system.
The availability of the data triggers the processing
● An event happens that triggers system processing. Events may
have associated data, although this is not always the case
Behavioral models
Behavioral models
Data-driven modeling
● Data-driven models show the sequence of actions involved in
processing input data and generating an associated output
● They can be used during the analysis of requirements as they
show end-to-end processing in a system
Behavioral models
Behavioral models
Event-driven modeling
● Event-driven modeling shows how a system responds to external
and internal events
● It is based on the assumption that a system has a finite number of
states and that events (stimuli) may cause a transition from one
state to another
Behavioral models
Behavioral models
Model-driven engineering
● Model-driven engineering (MDE) is an approach to software
development whereby models rather than programs are the
principal outputs of the development process (Brambilla, Cabot,
and Wimmer 2012)
● The programs that execute on a hardware/software platform are
generated automatically from the models
Behavioral models
Behavioral models
Agenda: Lesson #04 - Software Engineering - Lecture
1 Introduction & Context models
2 Interaction models & Structural models
3 Behavioral models
4 Model-driven engineering
Model-driven architecture (Mellor, Scott, and Weise 2004; Stahl and
Voelter 2006) is a model-focused approach to software design and
implementation that uses a subset of UML models to describe a
system
Model-driven engineering
Model-driven engineering
The MDA method recommends that three types of abstract system
model should be produced:
● A computation independent model (CIM) CIMs model the
important domain abstractions used in a system and so are
sometimes called domain models. You may develop several
different CIMs, reflecting different views of the system.
Model-driven engineering
Model-driven engineering
The MDA method recommends that three types of abstract system
model should be produced:
● A platform-independent model (PIM) PIMs model the operation
of the system without reference to its implementation. A PIM is
usually described using UML models that show the static system
structure and how it responds to external and internal events
Model-driven engineering
Model-driven engineering
The MDA method recommends that three types of abstract system
model should be produced:
● Platform-specific models (PSM) PSMs are transformations of the
platform-independent model with a separate PSM for each
application platform. In principle, there may be layers of PSM,
with each layer adding some platform-specific detail
Model-driven engineering
Model-driven engineering
Lesson #04 - Software Engineering - Lecture.pdf
MD engineering
10 to
3 to 1
or
Pixel
Perfect
Prototype
Agenda: Lesson #04 - Software Engineering - Lecture
Q & A
Ad

More Related Content

Similar to Lesson #04 - Software Engineering - Lecture.pdf (20)

Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
BIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptx
BIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptxBIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptx
BIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptx
nansambakuluthum7
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
sabin kafle
 
SE Complete notes mod 4 &5.pdf
SE Complete notes mod 4 &5.pdfSE Complete notes mod 4 &5.pdf
SE Complete notes mod 4 &5.pdf
AnkitaVerma776806
 
System modeling
System modelingSystem modeling
System modeling
Sajan Poudel
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
do_2013
 
Software-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdfSoftware-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdf
do_2013
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
do_2013
 
design concepts in software engineering.pptx
design concepts in software engineering.pptxdesign concepts in software engineering.pptx
design concepts in software engineering.pptx
priyadharshini512852
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
KarthigaiSelviS3
 
3 analysis and design overview
3 analysis and design overview3 analysis and design overview
3 analysis and design overview
Châu Thanh Chương
 
Chap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.pptChap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.ppt
OfficialVishnu
 
Chap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.pptChap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.ppt
omayva
 
Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram
Rahul Pola
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
SJC
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
SJC
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
M azhar
M azharM azhar
M azhar
Mazhar Saleem
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.doc
esrabilgic2
 
Ch8
Ch8Ch8
Ch8
phanleson
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
BIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptx
BIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptxBIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptx
BIS_3100__Modeling_and_Simulation_(lecture_one)B[1].pptx
nansambakuluthum7
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
sabin kafle
 
SE Complete notes mod 4 &5.pdf
SE Complete notes mod 4 &5.pdfSE Complete notes mod 4 &5.pdf
SE Complete notes mod 4 &5.pdf
AnkitaVerma776806
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
do_2013
 
Software-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdfSoftware-Architecture_Course-Notes.pdf
Software-Architecture_Course-Notes.pdf
do_2013
 
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
_773d48108e2dda1c1a731bf69b06c3be_Software-Architecture_Course-Notes.pdf
do_2013
 
design concepts in software engineering.pptx
design concepts in software engineering.pptxdesign concepts in software engineering.pptx
design concepts in software engineering.pptx
priyadharshini512852
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
KarthigaiSelviS3
 
Chap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.pptChap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.ppt
OfficialVishnu
 
Chap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.pptChap 5 - System Modeling Part 1.ppt
Chap 5 - System Modeling Part 1.ppt
omayva
 
Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram
Rahul Pola
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
SJC
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
SJC
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.doc
esrabilgic2
 

Recently uploaded (20)

2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx
2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx
2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx
mjenkins13
 
Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...
Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...
Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...
Ignite Capital
 
Mark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdf
Mark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdfMark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdf
Mark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdf
Mark Bradley
 
The Profitability Paradox: How Dunzo Can Scale AOV While Maintaining Liquidity
The Profitability Paradox: How Dunzo Can Scale AOV While Maintaining LiquidityThe Profitability Paradox: How Dunzo Can Scale AOV While Maintaining Liquidity
The Profitability Paradox: How Dunzo Can Scale AOV While Maintaining Liquidity
xnayankumar
 
Ibrahim Mardam-Bey on Navigating New Global Finance Trends
Ibrahim Mardam-Bey on Navigating New Global Finance TrendsIbrahim Mardam-Bey on Navigating New Global Finance Trends
Ibrahim Mardam-Bey on Navigating New Global Finance Trends
Ibrahim Mardam-bey
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil Mehta
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil MehtaThe Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil Mehta
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil Mehta
Continuity and Resilience
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...
Continuity and Resilience
 
IQVIA Analytics Presentation - Final Reviewed_1.0.pptx
IQVIA Analytics Presentation - Final Reviewed_1.0.pptxIQVIA Analytics Presentation - Final Reviewed_1.0.pptx
IQVIA Analytics Presentation - Final Reviewed_1.0.pptx
kcyclopediakerala
 
Why Startups Should Hire Fractionals - GrowthExpertz
Why Startups Should Hire Fractionals - GrowthExpertzWhy Startups Should Hire Fractionals - GrowthExpertz
Why Startups Should Hire Fractionals - GrowthExpertz
GrowthExpertz
 
Presentation - The Evolution of the Internet.pdf
Presentation - The Evolution of the Internet.pdfPresentation - The Evolution of the Internet.pdf
Presentation - The Evolution of the Internet.pdf
kasierra8090
 
Banking Doesn't Have to Be Boring: Jupiter's Gamification Playbook
Banking Doesn't Have to Be Boring: Jupiter's Gamification PlaybookBanking Doesn't Have to Be Boring: Jupiter's Gamification Playbook
Banking Doesn't Have to Be Boring: Jupiter's Gamification Playbook
xnayankumar
 
Rackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdf
Rackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdfRackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdf
Rackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdf
ericnewman522
 
Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...
Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...
Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...
Kunal Bansal Chandigarh
 
Allan Kinsella: A Life of Accomplishment, Service, Resiliency.
Allan Kinsella: A Life of Accomplishment, Service, Resiliency.Allan Kinsella: A Life of Accomplishment, Service, Resiliency.
Allan Kinsella: A Life of Accomplishment, Service, Resiliency.
Allan Kinsella
 
Solving Disintermediation in Ride-Hailing
Solving Disintermediation in Ride-HailingSolving Disintermediation in Ride-Hailing
Solving Disintermediation in Ride-Hailing
xnayankumar
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...
Continuity and Resilience
 
Luxury Real Estate Dubai: A Comprehensive Guide to Opulent Living
Luxury Real Estate Dubai: A Comprehensive Guide to Opulent LivingLuxury Real Estate Dubai: A Comprehensive Guide to Opulent Living
Luxury Real Estate Dubai: A Comprehensive Guide to Opulent Living
Dimitri Sementes
 
Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...
Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...
Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...
Ignite Capital
 
Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025
Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025
Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025
Joseph Lamar Simmons
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty Ali
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty AliThe Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty Ali
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty Ali
Continuity and Resilience
 
2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx
2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx
2025 May - Prospect & Qualify Leads for B2B in Hubspot - Demand Gen HUG.pptx
mjenkins13
 
Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...
Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...
Bloomberg Asia's Power Players in Healthcare - The Visionaries Transforming a...
Ignite Capital
 
Mark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdf
Mark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdfMark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdf
Mark Bradley_ Understanding the Psychological Appeal of Vinyl Listening.pdf
Mark Bradley
 
The Profitability Paradox: How Dunzo Can Scale AOV While Maintaining Liquidity
The Profitability Paradox: How Dunzo Can Scale AOV While Maintaining LiquidityThe Profitability Paradox: How Dunzo Can Scale AOV While Maintaining Liquidity
The Profitability Paradox: How Dunzo Can Scale AOV While Maintaining Liquidity
xnayankumar
 
Ibrahim Mardam-Bey on Navigating New Global Finance Trends
Ibrahim Mardam-Bey on Navigating New Global Finance TrendsIbrahim Mardam-Bey on Navigating New Global Finance Trends
Ibrahim Mardam-Bey on Navigating New Global Finance Trends
Ibrahim Mardam-bey
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil Mehta
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil MehtaThe Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil Mehta
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Sunil Mehta
Continuity and Resilience
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Zhanar Tuke...
Continuity and Resilience
 
IQVIA Analytics Presentation - Final Reviewed_1.0.pptx
IQVIA Analytics Presentation - Final Reviewed_1.0.pptxIQVIA Analytics Presentation - Final Reviewed_1.0.pptx
IQVIA Analytics Presentation - Final Reviewed_1.0.pptx
kcyclopediakerala
 
Why Startups Should Hire Fractionals - GrowthExpertz
Why Startups Should Hire Fractionals - GrowthExpertzWhy Startups Should Hire Fractionals - GrowthExpertz
Why Startups Should Hire Fractionals - GrowthExpertz
GrowthExpertz
 
Presentation - The Evolution of the Internet.pdf
Presentation - The Evolution of the Internet.pdfPresentation - The Evolution of the Internet.pdf
Presentation - The Evolution of the Internet.pdf
kasierra8090
 
Banking Doesn't Have to Be Boring: Jupiter's Gamification Playbook
Banking Doesn't Have to Be Boring: Jupiter's Gamification PlaybookBanking Doesn't Have to Be Boring: Jupiter's Gamification Playbook
Banking Doesn't Have to Be Boring: Jupiter's Gamification Playbook
xnayankumar
 
Rackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdf
Rackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdfRackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdf
Rackspace-White-Paper-OpenStack-PRI-TSK-11768-5.pdf
ericnewman522
 
Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...
Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...
Kunal Bansal Visits PEC Chandigarh_ Bridging Academia and Infrastructure Inno...
Kunal Bansal Chandigarh
 
Allan Kinsella: A Life of Accomplishment, Service, Resiliency.
Allan Kinsella: A Life of Accomplishment, Service, Resiliency.Allan Kinsella: A Life of Accomplishment, Service, Resiliency.
Allan Kinsella: A Life of Accomplishment, Service, Resiliency.
Allan Kinsella
 
Solving Disintermediation in Ride-Hailing
Solving Disintermediation in Ride-HailingSolving Disintermediation in Ride-Hailing
Solving Disintermediation in Ride-Hailing
xnayankumar
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Murphy -Dat...
Continuity and Resilience
 
Luxury Real Estate Dubai: A Comprehensive Guide to Opulent Living
Luxury Real Estate Dubai: A Comprehensive Guide to Opulent LivingLuxury Real Estate Dubai: A Comprehensive Guide to Opulent Living
Luxury Real Estate Dubai: A Comprehensive Guide to Opulent Living
Dimitri Sementes
 
Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...
Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...
Dr Tran Quoc Bao the first Vietnamese CEO featured by The Prestige List - Asi...
Ignite Capital
 
Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025
Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025
Joseph Lamar Simmons: Guiding Economic Vision for a Better 2025
Joseph Lamar Simmons
 
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty Ali
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty AliThe Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty Ali
The Business Conference and IT Resilience Summit Abu Dhabi, UAE - Abdelmoaty Ali
Continuity and Resilience
 
Ad

Lesson #04 - Software Engineering - Lecture.pdf

  • 2. Lesson #04 - Lecture
  • 3. Your KBTU 202409 Software Engineering class information is updating … Lesson #04 update is in progress This will take around 2 hours to complete Please, don’t turn off your head
  • 5. Part 1. Introduction to Software Engineering #include<iostream> Using namespace std; int main() { cout << “System modeling” << endl; return 0; }
  • 7. Agenda: Lesson #04 - Software Engineering - Lecture 1 Introduction & Context models 2 Interaction models & Structural models 3 Behavioral models 4 Model-driven engineering
  • 8. Agenda: Lesson #04 - Software Engineering - Lecture 1 Introduction & Context models 2 Interaction models & Structural models 3 Behavioral models 4 Model-driven engineering
  • 9. System modeling is the process of developing abstract models of a system, with each model presenting a different view or perspective of that system System modeling now usually means representing a system using some kind of graphical notation based on diagram types in the Unified Modeling Language (UML) Introduction & Context models Introduction
  • 10. Models are used during the requirements engineering process to help derive the detailed requirements for a system, during the design process to describe the system to engineers implementing the system, and after implementation to document the system’s structure and operation Introduction & Context models Introduction
  • 11. You may develop models of both the existing system and the system to be developed: ■ Models of the existing system are used during requirements engineering ■ They help clarify what the existing system does, and they can be used to focus a stakeholder discussion on its strengths and weaknesses Introduction & Context models Introduction
  • 12. You may develop models of both the existing system and the system to be developed: ■ Models of the new system are used during requirements engineering to help explain the proposed requirements to other system stakeholders ■ Engineers use these models to discuss design proposals and to document the system for implementation Introduction & Context models Introduction
  • 13. It is important to understand that a system model is not a complete representation of system Introduction & Context models Introduction
  • 14. The detail and rigor of a model depend on how you intend to use it There are three ways in which graphical models are commonly used: - As a way to stimulate and focus discussion about an existing or proposed system Introduction & Context models Introduction
  • 15. The detail and rigor of a model depend on how you intend to use it There are three ways in which graphical models are commonly used: - As a way of documenting an existing system Introduction & Context models Introduction
  • 16. The detail and rigor of a model depend on how you intend to use it There are three ways in which graphical models are commonly used: - As a detailed system description that can be used to generate a system implementation Introduction & Context models Introduction
  • 17. UML (Unified Modelling Language) -> 14 diagram types Widely used 5 diagram types ● Activity diagrams ● Use case diagrams ● Sequence diagrams ● Class diagrams ● State diagrams Introduction & Context models Introduction
  • 20. At an early stage in the specification of a system, you should decide on the system boundaries, that is, on what is and is not part of the system being developed This involves working with system stakeholders to decide what functionality should be included in the system and what processing and operations should be carried out in the system’s operational environment Introduction & Context models Context models
  • 21. Context models are used to illustrate the operational context of a system - they show what lies outside the system boundaries The definition of a system boundary is not a value-free judgment Social and organizational concerns may mean that the position of a system boundary may be determined by nontechnical factors Introduction & Context models Context models
  • 22. Once some decisions on the boundaries of the system have been made, part of the analysis activity is the definition of that context and the dependencies that a system has on its environment Normally, producing a simple architectural model is the first step in this activity Introduction & Context models Context models
  • 23. Agenda: Lesson #04 - Software Engineering - Lecture 1 Introduction & Context models 2 Interaction models & Structural models 3 Behavioral models 4 Model-driven engineering
  • 24. All systems involve interaction of some kind. This can be user interaction, which involves user inputs and outputs; interaction between the software being developed and other systems in its environment; or interaction between the components of a software system User interaction modeling is important as it helps to identify user requirements Interaction models & Structural models Interaction models
  • 25. This section discusses two related approaches to interaction modeling: ● Use case modeling, which is mostly used to model interactions between a system and external agents (human users or other systems) ● Sequence diagrams, which are used to model interactions between system components, although external agents may also be included Interaction models & Structural models Interaction models
  • 26. Use case modeling - A use case can be taken as a simple description of what a user expects from a system in that interaction - Each use case represents a discrete task that involves external interaction with a system Interaction models & Structural models Interaction models
  • 27. Use case modeling Interaction models & Structural models Interaction models
  • 28. Sequence diagrams ● Sequence diagrams in the UML are primarily used to model the interactions between the actors and the objects in a system and the interactions between the objects themselves ● The UML has a rich syntax for sequence diagrams, which allows many different kinds of interaction to be modeled Interaction models & Structural models Interaction models
  • 29. Sequence diagrams Interaction models & Structural models Interaction models
  • 30. Structural models of software display the organization of a system in terms of the components that make up that system and their relationships Structural models may be ● static models, which show the organization of the system design, or ● dynamic models, which show the organization of the system when it is executing Interaction models & Structural models Structural models
  • 31. Class diagrams ● Class diagrams are used when developing an object-oriented system model to show the classes in a system and the associations between these classes ● Loosely, an object class can be thought of as a general definition of one kind of system object Interaction models & Structural models Structural models
  • 32. Class diagrams ● An association is a link between classes indicating that some relationship exists between these classes ● Consequently, each class may have to have some knowledge of its associated class Interaction models & Structural models Structural models
  • 33. Class diagrams Interaction models & Structural models Structural models
  • 34. Agenda: Lesson #04 - Software Engineering - Lecture 1 Introduction & Context models 2 Interaction models & Structural models 3 Behavioral models 4 Model-driven engineering
  • 35. Behavioral models are models of the dynamic behavior of a system as it is executing They show what happens or what is supposed to happen when a system responds to a stimulus from its environment Behavioral models Behavioral models
  • 36. These stimuli may be either data or events: ● Data becomes available that has to be processed by the system. The availability of the data triggers the processing ● An event happens that triggers system processing. Events may have associated data, although this is not always the case Behavioral models Behavioral models
  • 37. Data-driven modeling ● Data-driven models show the sequence of actions involved in processing input data and generating an associated output ● They can be used during the analysis of requirements as they show end-to-end processing in a system Behavioral models Behavioral models
  • 38. Event-driven modeling ● Event-driven modeling shows how a system responds to external and internal events ● It is based on the assumption that a system has a finite number of states and that events (stimuli) may cause a transition from one state to another Behavioral models Behavioral models
  • 39. Model-driven engineering ● Model-driven engineering (MDE) is an approach to software development whereby models rather than programs are the principal outputs of the development process (Brambilla, Cabot, and Wimmer 2012) ● The programs that execute on a hardware/software platform are generated automatically from the models Behavioral models Behavioral models
  • 40. Agenda: Lesson #04 - Software Engineering - Lecture 1 Introduction & Context models 2 Interaction models & Structural models 3 Behavioral models 4 Model-driven engineering
  • 41. Model-driven architecture (Mellor, Scott, and Weise 2004; Stahl and Voelter 2006) is a model-focused approach to software design and implementation that uses a subset of UML models to describe a system Model-driven engineering Model-driven engineering
  • 42. The MDA method recommends that three types of abstract system model should be produced: ● A computation independent model (CIM) CIMs model the important domain abstractions used in a system and so are sometimes called domain models. You may develop several different CIMs, reflecting different views of the system. Model-driven engineering Model-driven engineering
  • 43. The MDA method recommends that three types of abstract system model should be produced: ● A platform-independent model (PIM) PIMs model the operation of the system without reference to its implementation. A PIM is usually described using UML models that show the static system structure and how it responds to external and internal events Model-driven engineering Model-driven engineering
  • 44. The MDA method recommends that three types of abstract system model should be produced: ● Platform-specific models (PSM) PSMs are transformations of the platform-independent model with a separate PSM for each application platform. In principle, there may be layers of PSM, with each layer adding some platform-specific detail Model-driven engineering Model-driven engineering
  • 47. 10 to 3 to 1 or Pixel Perfect Prototype
  • 48. Agenda: Lesson #04 - Software Engineering - Lecture Q & A
  翻译: