SlideShare ist ein Scribd-Unternehmen logo
1 von 26
PRINCIPLES OF
SOFTWARE
ARCHITECTURE
IN RELATION TO TYPO3
TYPO3
CAMP
VENLO
22.4.2016
GERNOT SCHULMEISTER
Lives in Mönchengladbach
Developes websites with TYPO3 since Version 3.7
(2005)
Works for TeamWFP
Has a migration background and comes from
Southeast-Europe (Austria)
Likes operative CMS evaluations, Big Data,
Software Architecture, TYPO3 Events
facebook.com/gernot.schulmeister
twitter.com/mistakanista1
SEITE 2
SCHEDULE
 Definition
 Tasks of an architect
 Process of development
 Design principles
 Architecture styles
 Architecture patterns
The fundamental organization of a
software system embodied in its
components, their relationships to
each other and to the
environment and the principles
guiding its design and evolution
DEFINITION
TASKS: ARCHITECTS
 Construct, design and implement
 Evaluate, decide and consult
 Grant the fulfillment of requirements
 Document
 Communicate and are diplomats and acrobats
 Simplify
 Make assumptions and preconditions explicit
 Need courage
SEITE 5
PROCESS OF
ARCHITECTURE
DEVELOPMENT
SEITE 6
STEPS
 Gather information
 Clarify requirements: core tasks, category of system,
quality targets, relevant stakeholders, business and
technical context
 Investigate influences and side conditions
 Develop solution strategies
 Design and communicate
 Accompany implementation
SEITE 7
ABSTRACTION LEVELS
 Environment: project, product management &
requirements engineering, execution & operation, tools
& development
 Architecture style and technical infrastructure
 Domain & technical architecture layer
 Program design & implementation layer
 Execute the steps iterative, incremental by switching
through the abstraction levels
SEITE 8
ARCHITECTURE
DEVELOPMENT
SEITE 9
DESIGN PRINCIPLES
SEITE 10
HEURISTICS
 Mix top-down, bottom-up & outside in strategies
 hierarchical composition & decomposition
 As simple as possible principle
 Separation of concerns (encapsulation)
 Information hiding & small interfaces
 Regular refactoring & redesign
 Separation of business & technical aspects
 Expect changes & switch the perspective
SEITE 11
TECHNIQUES FOR
A GOOD DESIGN
 Loose coupling (number of relations of a block)
 High cohesion (put together what belongs together)
 Open closed principle (closed to changes, open for
extensions)
 Don´t repeat yourself
 Inversion of control (dependency injection)
 Expect errors and failures (failure first)
 Liskov substitution principle (a subclass always
substitute the base class)
SEITE 12
SEITE 13
RESOLVE CYCLIC
DEPENDENCIES
ARCHITECTURE STYLES
SEITE 14
DOMAIN DRIVEN DESIGN
 Business domain as basis
 Entities: core objects, thing in the system, keep the
identity, switch the state
 Value objects: describe entities, never change
 Services: operations of the domain without a state
 Aggregates: encapsulates, crosslinked domain objects,
has one entity as root object
 Factories: encapsulate construction of complex objects
 Repositories: access to the persistence layer
SEITE 15
DOMAIN DRIVEN DESIGN
SEITE 16
OTHERS
 MDA  Model driven architecture
 QDSA  Quality driven software architecture: aim,
plan build, check
 SOA  Service oriented architecture: Service directory,
provider & consumer is a business topic
 Microservices  Modularisation also concerning
hardware and live operation, orchestration decentral
without middleware
SEITE 17
ARCHITECTURE PATTERNS
INTERACTIVE SYSTEMS
SEITE 18
MVC MODEL VIEW
CONTROLLER
 Model holds the data
 View presents the data
 Controller processes user events,
executes business logic and
updates views
SEITE 19
MVP MODEL VIEW
PRESENTER
 Based on MVC strict separation of
model & view
 Model holds the data and the
business logic
 View: no logic only receives the user input
 Presenter: connects view with model and
controls the logical process
SEITE 20
MVVM – MODEL VIEW
VIEWMODEL
 By angular, based on MVC
 The view-model connects the model with the
view and adds presentation logic
 Loads additional data, updates the GUI
SEITE 21
PRESENTATION
ABSTRACTION CONTROL
 For complex user interfaces
 Used in IDEs like PHP-storm with many windows
 Response behavior of one controller not sufficient
 Decomposition of hierarchically, cooperating agents
 Agents consists of controller, abstraction and view
 Controller interface to other agents
 Abstraction adapts global model to local model
 Enables parallel executions of parts of the global
model
SEITE 22
PRESENTATION
ABSTRACTION CONTROL
SEITE 23
FROM CHAOS
TO STRUCTURE
 Layer architecture
 Pipes & filters: filters process data, pipes transport
intermediate results decoupling in many ways
 Used in compiler, parser, image processing
 Blackboard: specialized knowledge source send
possible solutions of a problem to the blackboard to
find an overall solution
 Used in image and language recognition, system
surveillance
SEITE 24
SEITE 25
DISTRIBUTED SYSTEMS
 Broker: imparts between client & server
 Server sends service interface to broker
 Broker finds service for the client and connects the request and
response
 CQRS  Command Query Responsibility Segregation
 Separates commands (data changes) from Queries (reading access
to data)
 Good for parallel executions without dependencies
 Commands: ACID transactions
 Queries idempotent
CONCLUSION
 Every developer is also a little architects
 Basic architecture knowledge is useful for every
developer
 Architecture knowledge helps to understand TYPO3
better
SEITE 26

Weitere ähnliche Inhalte

Ähnlich wie Architecture principles in relation to TYPO3

[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software ArchitectureIvano Malavolta
 
Sodius cassidian mdday2010
Sodius cassidian mdday2010Sodius cassidian mdday2010
Sodius cassidian mdday2010MD DAY
 
Approaches To System Development
Approaches To System DevelopmentApproaches To System Development
Approaches To System DevelopmentHenhen Lukmana
 
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...Cloud Native Day Tel Aviv
 
Pragmatic Approach to Microservices and Cell-based Architecture
Pragmatic Approach to Microservices and Cell-based Architecture Pragmatic Approach to Microservices and Cell-based Architecture
Pragmatic Approach to Microservices and Cell-based Architecture Andrew Blades
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part iBisrat Girma
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIvano Malavolta
 
Data Enabled Enterprise Modeler (De2 M) Overview V2.12
Data Enabled Enterprise Modeler (De2 M) Overview V2.12Data Enabled Enterprise Modeler (De2 M) Overview V2.12
Data Enabled Enterprise Modeler (De2 M) Overview V2.12Paul W. Johnson
 
e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...
e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...
e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...Sabino Labarile
 
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014Sandro Mancuso
 
Smart Client Software Factory 2010
Smart Client Software Factory  2010Smart Client Software Factory  2010
Smart Client Software Factory 2010Tomy Ismail
 

Ähnlich wie Architecture principles in relation to TYPO3 (20)

[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
 
Chapter1
Chapter1Chapter1
Chapter1
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
rEFUP.pdf
rEFUP.pdfrEFUP.pdf
rEFUP.pdf
 
Sodius cassidian mdday2010
Sodius cassidian mdday2010Sodius cassidian mdday2010
Sodius cassidian mdday2010
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Approaches To System Development
Approaches To System DevelopmentApproaches To System Development
Approaches To System Development
 
Unit 3- Software Design.pptx
Unit 3- Software Design.pptxUnit 3- Software Design.pptx
Unit 3- Software Design.pptx
 
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
 
06 fse design
06 fse design06 fse design
06 fse design
 
Pragmatic Approach to Microservices and Cell-based Architecture
Pragmatic Approach to Microservices and Cell-based Architecture Pragmatic Approach to Microservices and Cell-based Architecture
Pragmatic Approach to Microservices and Cell-based Architecture
 
WebML for OMG
WebML for OMGWebML for OMG
WebML for OMG
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
 
Data Enabled Enterprise Modeler (De2 M) Overview V2.12
Data Enabled Enterprise Modeler (De2 M) Overview V2.12Data Enabled Enterprise Modeler (De2 M) Overview V2.12
Data Enabled Enterprise Modeler (De2 M) Overview V2.12
 
e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...
e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...
e-SUAP - Pubblicazione scientifica per evento Inista 2014 (International Symp...
 
Software design i (2) (1)
Software design   i (2) (1)Software design   i (2) (1)
Software design i (2) (1)
 
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014
 
Smart Client Software Factory 2010
Smart Client Software Factory  2010Smart Client Software Factory  2010
Smart Client Software Factory 2010
 

Mehr von Gernot Schulmeister

Mehr von Gernot Schulmeister (7)

Event Storming & Event Sourcing with Lagom
Event Storming & Event Sourcing with LagomEvent Storming & Event Sourcing with Lagom
Event Storming & Event Sourcing with Lagom
 
Rapidminer
RapidminerRapidminer
Rapidminer
 
Knigge for software architects
Knigge for software architectsKnigge for software architects
Knigge for software architects
 
Marketing automation tools
Marketing automation toolsMarketing automation tools
Marketing automation tools
 
TYPO3 Backend Apps Prototype
TYPO3 Backend Apps PrototypeTYPO3 Backend Apps Prototype
TYPO3 Backend Apps Prototype
 
CMS Evaluation with test implementations
CMS Evaluation with test implementationsCMS Evaluation with test implementations
CMS Evaluation with test implementations
 
Cms evaluation
Cms evaluationCms evaluation
Cms evaluation
 

Kürzlich hochgeladen

Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLimonikaupta
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...Escorts Call Girls
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service OnlineCALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Onlineanilsa9823
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...tanu pandey
 
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...SofiyaSharma5
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.CarlotaBedoya1
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Call Girls in Nagpur High Profile
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.soniya singh
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024APNIC
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.soniya singh
 

Kürzlich hochgeladen (20)

Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
 
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service OnlineCALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
 

Architecture principles in relation to TYPO3

  • 1. PRINCIPLES OF SOFTWARE ARCHITECTURE IN RELATION TO TYPO3 TYPO3 CAMP VENLO 22.4.2016
  • 2. GERNOT SCHULMEISTER Lives in Mönchengladbach Developes websites with TYPO3 since Version 3.7 (2005) Works for TeamWFP Has a migration background and comes from Southeast-Europe (Austria) Likes operative CMS evaluations, Big Data, Software Architecture, TYPO3 Events facebook.com/gernot.schulmeister twitter.com/mistakanista1 SEITE 2
  • 3. SCHEDULE  Definition  Tasks of an architect  Process of development  Design principles  Architecture styles  Architecture patterns
  • 4. The fundamental organization of a software system embodied in its components, their relationships to each other and to the environment and the principles guiding its design and evolution DEFINITION
  • 5. TASKS: ARCHITECTS  Construct, design and implement  Evaluate, decide and consult  Grant the fulfillment of requirements  Document  Communicate and are diplomats and acrobats  Simplify  Make assumptions and preconditions explicit  Need courage SEITE 5
  • 7. STEPS  Gather information  Clarify requirements: core tasks, category of system, quality targets, relevant stakeholders, business and technical context  Investigate influences and side conditions  Develop solution strategies  Design and communicate  Accompany implementation SEITE 7
  • 8. ABSTRACTION LEVELS  Environment: project, product management & requirements engineering, execution & operation, tools & development  Architecture style and technical infrastructure  Domain & technical architecture layer  Program design & implementation layer  Execute the steps iterative, incremental by switching through the abstraction levels SEITE 8
  • 11. HEURISTICS  Mix top-down, bottom-up & outside in strategies  hierarchical composition & decomposition  As simple as possible principle  Separation of concerns (encapsulation)  Information hiding & small interfaces  Regular refactoring & redesign  Separation of business & technical aspects  Expect changes & switch the perspective SEITE 11
  • 12. TECHNIQUES FOR A GOOD DESIGN  Loose coupling (number of relations of a block)  High cohesion (put together what belongs together)  Open closed principle (closed to changes, open for extensions)  Don´t repeat yourself  Inversion of control (dependency injection)  Expect errors and failures (failure first)  Liskov substitution principle (a subclass always substitute the base class) SEITE 12
  • 15. DOMAIN DRIVEN DESIGN  Business domain as basis  Entities: core objects, thing in the system, keep the identity, switch the state  Value objects: describe entities, never change  Services: operations of the domain without a state  Aggregates: encapsulates, crosslinked domain objects, has one entity as root object  Factories: encapsulate construction of complex objects  Repositories: access to the persistence layer SEITE 15
  • 17. OTHERS  MDA  Model driven architecture  QDSA  Quality driven software architecture: aim, plan build, check  SOA  Service oriented architecture: Service directory, provider & consumer is a business topic  Microservices  Modularisation also concerning hardware and live operation, orchestration decentral without middleware SEITE 17
  • 19. MVC MODEL VIEW CONTROLLER  Model holds the data  View presents the data  Controller processes user events, executes business logic and updates views SEITE 19
  • 20. MVP MODEL VIEW PRESENTER  Based on MVC strict separation of model & view  Model holds the data and the business logic  View: no logic only receives the user input  Presenter: connects view with model and controls the logical process SEITE 20
  • 21. MVVM – MODEL VIEW VIEWMODEL  By angular, based on MVC  The view-model connects the model with the view and adds presentation logic  Loads additional data, updates the GUI SEITE 21
  • 22. PRESENTATION ABSTRACTION CONTROL  For complex user interfaces  Used in IDEs like PHP-storm with many windows  Response behavior of one controller not sufficient  Decomposition of hierarchically, cooperating agents  Agents consists of controller, abstraction and view  Controller interface to other agents  Abstraction adapts global model to local model  Enables parallel executions of parts of the global model SEITE 22
  • 24. FROM CHAOS TO STRUCTURE  Layer architecture  Pipes & filters: filters process data, pipes transport intermediate results decoupling in many ways  Used in compiler, parser, image processing  Blackboard: specialized knowledge source send possible solutions of a problem to the blackboard to find an overall solution  Used in image and language recognition, system surveillance SEITE 24
  • 25. SEITE 25 DISTRIBUTED SYSTEMS  Broker: imparts between client & server  Server sends service interface to broker  Broker finds service for the client and connects the request and response  CQRS  Command Query Responsibility Segregation  Separates commands (data changes) from Queries (reading access to data)  Good for parallel executions without dependencies  Commands: ACID transactions  Queries idempotent
  • 26. CONCLUSION  Every developer is also a little architects  Basic architecture knowledge is useful for every developer  Architecture knowledge helps to understand TYPO3 better SEITE 26