SlideShare a Scribd company logo
1 of 87
Download to read offline
THE ART OF (SOFTWARE) DESIGN
Jérémie GRODZISKI - Thomas PIERRAIN
DDD Meetup - February 2017
HAS 'AGILE' KILLED
DESIGN IN SOFTWARE?
PROBABLY BUT…
’AGILE' WANTED TO KILL
BIG UPFRONT DESIGN ONLY
BIG UPFRONT DESIGN
DESIGN
≠
LACK OF DESIGN
EMERGENT DESIGN
≠
DON'T THROW
THE BABY WITH
THE BATHWATER
DON’T THROW THE DESIGN « BABY » WITH…
WHAT IS DESIGN
?
DESIGN IS MAKING
DECISIONS
MAKING
DECISIONS TO
BUILD
SOMETHING
EVERYONE
IS MAKING
DECISIONS
EVERYONE IS MAKING
DECISIONS…
BUT WITH DIFFERENT
IMPACTS
BUILDING
SOMETHING
OK, BUT WHY?
WHY?
WHY?
WHY?
WHY?
WHY?
BUILDING
SOMETHING
OK, BUT WHY?
SOLUTION SPACE
PROBLEM SPACE
WHY
WHAT
HOW
SOLUTION SPACE
PROBLEM
SPACE
Problem
Usages
Languages
Domain
Requirements
Constraints
People
PROBLEM
SPACE
Problem
Usages
Languages
Domain
Requirements
Constraints
People
DOMAIN 

( noun, do·main)
Set of concepts
That through
usages
Help to solve
problems
PROBLEM
SPACE
Problem
Usages
Languages
Domain
Requirements
Constraints
People
DOMAIN
Solve
Problems
SOLUTION SPACE
Software
Model
Design
Patterns
Heuristics
Feedback
Driven
PROBLEM
SPACE
Problem
Usages
Languages
Domain
Requirements
Constraints
People
SOLUTION SPACE
Software
Model
Design
Patterns
Heuristics
Feedback
PROBLEM
SPACE
Domain
SOLUTION SPACE
Design- Driven
HEURISTICS?
practical method not guaranteed to be
optimal or perfect, but sufficient for the
immediate goals.
PATTERNS
FAVORITES
ALGORITHMS
…
FAVORITES SOLUTIONS
FAVORITES
APPROACHES
OUR MENTAL MODELS
HOUSTON?
TRAPPED
BY YOUR OWN
HEURISTICS?
SYSTEMATIC LAYERS
ORMFRAMEWORKS
ANEMIC
BEHAVIORS
…IOC
FROM HEURISTICS TO
SOLUTION-FIRST BIAS
MOST
DEVELOPERS
LIKES…
SOLUTIONS
OUR USERS ARE
TIRED OF C.R.U.D.
APPLICATIONS
C.R.U.D.
APPLICATIONS
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Create
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Ctrl-C
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Update
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Ctrl-V
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Create
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Ctrl-V
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Update
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Ctrl-V
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
…
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
I’m doing all 

the job 

actually…
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Damn it!
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
Damn I.T!
THE C.R.U.D.
BURDEN
CRUD app #1
CRUD app #2
CRUD app #3
WHY?!?
MANY REASONS BUT…
DATA MODELS
INSTEAD OF
DOMAIN MODELS
LAZINESS
« Laziness is nothing more
than the habit of resting
before you get tired. »
(Jules Renard)
A DDD
ALTERNATIVE?
THE APP REALLY HELPS
WITH A SPECIFIC & CONSISTANT USER JOURNEY
OTHER BIASES?
BEWARE OF
FADS
micro-services, blockchains, …
THE
ABSTRACTION-
FIRST PITFALL
CONCRETE
THINGS
FIRST!
THE CV-DRIVEN
DEVELOPMENT
PANDEMIC
I.T. AS
SEEN BY
THE
BUSINESS
WE MUST
FOCUS MORE ON
THE BUSINESS
CONCERNS!
DESIGN IS
CONSCIOUS
CHOICES
(Banksy)
ALWAYS
CONNECT YOUR DECISIONS
TO YOUR
BUSINESS OBJECTIVES
DESIGN IS
THE ART OF
TRADE-OFF
design = f(requirements + constraints)trade-off
DESIGN
SOFTWARE?
ALIGNMENT &
EFFICIENCY
solution space
problem space
SOME
CONSTRAINTS
(the mythical man-month)
THERMODYNAMICS
OF SOFTWARE
HEXAGONAL
ARCHITECTURE
DOMAIN
CODE
(domain first)
HEXAGONAL
ARCHITECTURE
DOMAIN
CODE
DO NOT MESS
BUSINESS CODE
INFRA CODE
(infra later)
STANDARD
SOFTWARE DESIGN
(take all your favorite
heuristics with you ;-(
CONSCIOUS
(SOFTWARE) DESIGN
(take only what you need for
the usages/contraints)
CONSCIOUS
(SOFTWARE) DESIGN
USAGES FIRST - INFRA LATER
HEXAGONAL ARCHITECTURE
EXAMPLES & BEHAVIOURS (TESTS) DRIVEN
EXPLICIT (AND BOUNDED) CONTEXTS
SOFTWARE DESIGN
VS.
REAL WORLD DESIGN?
DUPLICATION
OF
CODE AND DATA
AT ALMOST NO
COST
SCALING
EASY
MODULARIZATION
AND INTERFACING
BEWARE OF THE
BUILDING
METAPHOR
WRAP UP
MINDSET
APPROACH
MINDSET
APPROACH
ALWAYS MAKE
CONSCIOUS
DECISIONS
{ Value | Constraint }
(Banksy)
FOSTER
CONSCIOUS
DESIGN!
STAY CONSCIOUS
OF YOUR
BIAS
MINDSET
APPROACH
MINDSET
APPROACH
USAGES FIRST
…INFRA LATER
BE ADAPTABLE
RATHER THAN
PREDICTABLE
THANK YOU!
JOIN US @DDDREBOOT

More Related Content

Similar to The art of Software Design

Designing Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic ContextsDesigning Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic ContextsThoughtworks
 
Designing Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic ContextsDesigning Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic ContextsJonny Schneider
 
Decoding design(ers) tinkerform
Decoding design(ers)   tinkerformDecoding design(ers)   tinkerform
Decoding design(ers) tinkerformJasmeet Sethi
 
Clean(er) Code - Tech'n'Drinks @myposter
Clean(er) Code - Tech'n'Drinks @myposterClean(er) Code - Tech'n'Drinks @myposter
Clean(er) Code - Tech'n'Drinks @mypostermyposter GmbH
 
DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"
DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"
DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"accessibilitydays
 
Android Internals (This is not the droid you’re loking for...)
Android Internals (This is not the droid you’re loking for...)Android Internals (This is not the droid you’re loking for...)
Android Internals (This is not the droid you’re loking for...)Giacomo Bergami
 
Design for Enterprise Delight - Benjamin Humphrey
Design for Enterprise Delight - Benjamin HumphreyDesign for Enterprise Delight - Benjamin Humphrey
Design for Enterprise Delight - Benjamin HumphreyAtlassian
 
Usability Speech (Jens Hoffmann) - T3CON08
Usability Speech (Jens Hoffmann) - T3CON08Usability Speech (Jens Hoffmann) - T3CON08
Usability Speech (Jens Hoffmann) - T3CON08Jens Hoffmann
 
Responsive Design - ISCTE
Responsive Design - ISCTEResponsive Design - ISCTE
Responsive Design - ISCTEfidibiko
 
Voxxed Athens 2018 - UX design and back-ends: When the back-end meets the user
Voxxed Athens 2018 - UX design and back-ends: When the back-end meets the userVoxxed Athens 2018 - UX design and back-ends: When the back-end meets the user
Voxxed Athens 2018 - UX design and back-ends: When the back-end meets the userVoxxed Athens
 
Dawn of the Devices
Dawn of the DevicesDawn of the Devices
Dawn of the Devicesmwbrooks
 
What makes your app grouse - #appfest Sydney
What makes your app grouse - #appfest SydneyWhat makes your app grouse - #appfest Sydney
What makes your app grouse - #appfest SydneyShane Morris
 
6 Rules to Designing Amazing Mobile Apps (@media 2011)
6 Rules to Designing Amazing Mobile Apps (@media 2011)6 Rules to Designing Amazing Mobile Apps (@media 2011)
6 Rules to Designing Amazing Mobile Apps (@media 2011)Brian Fling
 
Sunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft ForeverSunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft ForeverCyrille Martraire
 
Programming for non-programmers
Programming for non-programmersProgramming for non-programmers
Programming for non-programmersPancho Goldaracena
 
The Emergence & Convergence of AR
The Emergence & Convergence of ARThe Emergence & Convergence of AR
The Emergence & Convergence of ARFITC
 
Game Design Patterns Workshop - FDG2012 - Opening Remarks
Game Design Patterns Workshop - FDG2012 - Opening RemarksGame Design Patterns Workshop - FDG2012 - Opening Remarks
Game Design Patterns Workshop - FDG2012 - Opening RemarksJose Zagal
 
D4D Boston 2010: Great Design - Why It's Important and How to Achieve It
D4D Boston 2010: Great Design - Why It's Important and How to Achieve ItD4D Boston 2010: Great Design - Why It's Important and How to Achieve It
D4D Boston 2010: Great Design - Why It's Important and How to Achieve ItJared Ponchot
 

Similar to The art of Software Design (20)

Designing Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic ContextsDesigning Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic Contexts
 
Designing Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic ContextsDesigning Mobile Solutions for Social & Economic Contexts
Designing Mobile Solutions for Social & Economic Contexts
 
Decoding design(ers) tinkerform
Decoding design(ers)   tinkerformDecoding design(ers)   tinkerform
Decoding design(ers) tinkerform
 
Clean(er) Code - Tech'n'Drinks @myposter
Clean(er) Code - Tech'n'Drinks @myposterClean(er) Code - Tech'n'Drinks @myposter
Clean(er) Code - Tech'n'Drinks @myposter
 
DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"
DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"
DotNetLiguria - Introduzione all'accessibilità "in pausa caffè"
 
Android Internals (This is not the droid you’re loking for...)
Android Internals (This is not the droid you’re loking for...)Android Internals (This is not the droid you’re loking for...)
Android Internals (This is not the droid you’re loking for...)
 
Design for Enterprise Delight - Benjamin Humphrey
Design for Enterprise Delight - Benjamin HumphreyDesign for Enterprise Delight - Benjamin Humphrey
Design for Enterprise Delight - Benjamin Humphrey
 
Usability Speech (Jens Hoffmann) - T3CON08
Usability Speech (Jens Hoffmann) - T3CON08Usability Speech (Jens Hoffmann) - T3CON08
Usability Speech (Jens Hoffmann) - T3CON08
 
Responsive Design - ISCTE
Responsive Design - ISCTEResponsive Design - ISCTE
Responsive Design - ISCTE
 
Voxxed Athens 2018 - UX design and back-ends: When the back-end meets the user
Voxxed Athens 2018 - UX design and back-ends: When the back-end meets the userVoxxed Athens 2018 - UX design and back-ends: When the back-end meets the user
Voxxed Athens 2018 - UX design and back-ends: When the back-end meets the user
 
Dawn of the Devices
Dawn of the DevicesDawn of the Devices
Dawn of the Devices
 
What makes your app grouse - #appfest Sydney
What makes your app grouse - #appfest SydneyWhat makes your app grouse - #appfest Sydney
What makes your app grouse - #appfest Sydney
 
6 Rules to Designing Amazing Mobile Apps (@media 2011)
6 Rules to Designing Amazing Mobile Apps (@media 2011)6 Rules to Designing Amazing Mobile Apps (@media 2011)
6 Rules to Designing Amazing Mobile Apps (@media 2011)
 
SXSWi - VPRO / HU
SXSWi - VPRO / HUSXSWi - VPRO / HU
SXSWi - VPRO / HU
 
Sunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft ForeverSunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft Forever
 
Accessibility
AccessibilityAccessibility
Accessibility
 
Programming for non-programmers
Programming for non-programmersProgramming for non-programmers
Programming for non-programmers
 
The Emergence & Convergence of AR
The Emergence & Convergence of ARThe Emergence & Convergence of AR
The Emergence & Convergence of AR
 
Game Design Patterns Workshop - FDG2012 - Opening Remarks
Game Design Patterns Workshop - FDG2012 - Opening RemarksGame Design Patterns Workshop - FDG2012 - Opening Remarks
Game Design Patterns Workshop - FDG2012 - Opening Remarks
 
D4D Boston 2010: Great Design - Why It's Important and How to Achieve It
D4D Boston 2010: Great Design - Why It's Important and How to Achieve ItD4D Boston 2010: Great Design - Why It's Important and How to Achieve It
D4D Boston 2010: Great Design - Why It's Important and How to Achieve It
 

More from Thomas Pierrain

The scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarineThe scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarineThomas Pierrain
 
La scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaireLa scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaireThomas Pierrain
 
De l'autre côté du miroir
De l'autre côté du miroirDe l'autre côté du miroir
De l'autre côté du miroirThomas Pierrain
 
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDDWrite Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDDThomas Pierrain
 
Beyond Hexagonal architecture
Beyond Hexagonal architectureBeyond Hexagonal architecture
Beyond Hexagonal architectureThomas Pierrain
 
The 9 rules of debugging
The 9 rules of debuggingThe 9 rules of debugging
The 9 rules of debuggingThomas Pierrain
 
Hexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shellHexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shellThomas Pierrain
 
Une nuit dans l'hexagone
Une nuit dans l'hexagoneUne nuit dans l'hexagone
Une nuit dans l'hexagoneThomas Pierrain
 
As time goes by (episode 2)
As time goes by (episode 2)As time goes by (episode 2)
As time goes by (episode 2)Thomas Pierrain
 
Et si on parlait Éthique ?
Et si on parlait Éthique ?Et si on parlait Éthique ?
Et si on parlait Éthique ?Thomas Pierrain
 
Sortir de notre zone de confort
Sortir de notre zone de confortSortir de notre zone de confort
Sortir de notre zone de confortThomas Pierrain
 
L'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettreL'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettreThomas Pierrain
 
Legacy club (english version)
Legacy club (english version)Legacy club (english version)
Legacy club (english version)Thomas Pierrain
 
Decouvrir CQRS (sans Event sourcing) par la pratique
Decouvrir CQRS (sans Event sourcing) par la pratiqueDecouvrir CQRS (sans Event sourcing) par la pratique
Decouvrir CQRS (sans Event sourcing) par la pratiqueThomas Pierrain
 
Decouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event stormingDecouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event stormingThomas Pierrain
 
Ddd reboot (english version)
Ddd reboot (english version)Ddd reboot (english version)
Ddd reboot (english version)Thomas Pierrain
 

More from Thomas Pierrain (20)

The scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarineThe scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarine
 
Hexagonal And Beyond
Hexagonal And BeyondHexagonal And Beyond
Hexagonal And Beyond
 
La scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaireLa scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaire
 
De l'autre côté du miroir
De l'autre côté du miroirDe l'autre côté du miroir
De l'autre côté du miroir
 
eXtreme
eXtremeeXtreme
eXtreme
 
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDDWrite Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
 
Beyond Hexagonal architecture
Beyond Hexagonal architectureBeyond Hexagonal architecture
Beyond Hexagonal architecture
 
The 9 rules of debugging
The 9 rules of debuggingThe 9 rules of debugging
The 9 rules of debugging
 
Hexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shellHexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shell
 
Une nuit dans l'hexagone
Une nuit dans l'hexagoneUne nuit dans l'hexagone
Une nuit dans l'hexagone
 
Equiper sa voie
Equiper sa voieEquiper sa voie
Equiper sa voie
 
As time goes by (episode 2)
As time goes by (episode 2)As time goes by (episode 2)
As time goes by (episode 2)
 
Et si on parlait Éthique ?
Et si on parlait Éthique ?Et si on parlait Éthique ?
Et si on parlait Éthique ?
 
Sortir de notre zone de confort
Sortir de notre zone de confortSortir de notre zone de confort
Sortir de notre zone de confort
 
L'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettreL'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettre
 
Legacy club (english version)
Legacy club (english version)Legacy club (english version)
Legacy club (english version)
 
Async await...oh wait!
Async await...oh wait!Async await...oh wait!
Async await...oh wait!
 
Decouvrir CQRS (sans Event sourcing) par la pratique
Decouvrir CQRS (sans Event sourcing) par la pratiqueDecouvrir CQRS (sans Event sourcing) par la pratique
Decouvrir CQRS (sans Event sourcing) par la pratique
 
Decouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event stormingDecouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event storming
 
Ddd reboot (english version)
Ddd reboot (english version)Ddd reboot (english version)
Ddd reboot (english version)
 

Recently uploaded

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineeringssuserb3a23b
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 

Recently uploaded (20)

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineering
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 

The art of Software Design