SlideShare una empresa de Scribd logo
1 de 34
Descargar para leer sin conexión
intro to
software
@mljungblad
             blog: ljungblad.nu
       code: github.com/archie
mail: marcus.ljungblad@mah.se
what’s an
It’s all about quality,
but you can’t have it all!
Why architect?
Yet!




who’s an
Car requirements



               Drive forwards and backwards

               Use gasoline to power the engine

               Steer the vehicle using a wheel

               Control speed using a foot pedal
define a few
car qualities
”For any different system, there are a
number of available architectures, and the
qualities that you want should
rule which architectural
choices you make.”
cost and time
f(
 feature x using design y
     with downside z        )
What views?

         views
styles
and patterns
A complete mess
Client

Client

         Server




                  Client
$ node mapi.js -p 8000 > /tmp/mapi.log 2>&1 &
Presentation



Business logic



 Data model
C

A

        B




    D       D
C/S

C/S

            C/S




      C/S         C/S
A bible!
what is
”The interesting thing about Cloud
Computing is that we’ve redefined Cloud
Computing to include everything that we
 already do. . . . I don’t understand what
      we would do differently in the light
                of Cloud Computing other
                  than change the wording
                       of some of our ads.”
”Cloud Computing refers to both the
applications delivered as services over the
Internet and the hardware and systems
software in the datacenters that provide
those services.”
Cloud computing




              Illusion of infinite HW resources

              Elimination of upfront commitment

              Pay-as-you-go on short term basis
cloud
arch itecture
what’s an
It’s all about quality,
but you can’t have it all!
Resources
GoF Patterns - http://en.wikipedia.org/wiki/Design_Patterns#Patterns_by_Type  
Scalable Web Architecture and DS - http://www.aosabook.org/en/distsys.html
Code Monkey - http://www.youtube.com/watch?v=5W_wd9Qf0IE
Netflix Techblog - http://techblog.netflix.com/
Above the Clouds - http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf

SW Architecture Talks
George Fairbanks’s Introduction to SW architecture - http://www.youtube.com/watch?v=x30DcBfCJRI

Cases
Heroku architecture - http://www.quora.com/Scalability/How-does-Heroku-work, http://www.heroku.com/how
Dropbox scaling - http://www.quora.com/Dropbox/What-is-Dropboxs-architecture
Highscalability Blog - http://highscalability.com/
Google’s MapReduce - http://research.google.com/archive/mapreduce.html

Creative Commons
http://www.flickr.com/photos/swisscan/633644067/sizes/l/in/photostream/
http://www.flickr.com/photos/banovsky/2721248454/sizes/l/in/photostream/
http://www.flickr.com/photos/-lif-/3213233094/sizes/l/in/photostream/
http://www.flickr.com/photos/shakeskc/7967355494/
http://www.flickr.com/photos/skasuga/139744722/sizes/l/in/photostream/
http://www.flickr.com/photos/stickkim/6013651966/sizes/l/in/photostream/
http://www.flickr.com/photos/jensst/5762063659/sizes/l/in/photostream/
http://www.flickr.com/photos/elizabethbw/8373942339/sizes/m/in/photostream/
http://www.flickr.com/photos/esther-/2516424698/sizes/o/in/photostream/

Más contenido relacionado

La actualidad más candente

Voice controlled robot powered by Google Cloud
Voice controlled robot powered by Google CloudVoice controlled robot powered by Google Cloud
Voice controlled robot powered by Google CloudPaul Boonyarungsrit
 
Get your mobile app in production in 3 months: DevOps and Infrastructure
Get your mobile app in production in 3 months: DevOps and InfrastructureGet your mobile app in production in 3 months: DevOps and Infrastructure
Get your mobile app in production in 3 months: DevOps and InfrastructureAckee
 
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo SchapiroWant Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo SchapiroSchlomo Schapiro
 
Get your mobile app in production in 3 months: Native and Reactive Mobile Apps
Get your mobile app in production in 3 months: Native and Reactive Mobile AppsGet your mobile app in production in 3 months: Native and Reactive Mobile Apps
Get your mobile app in production in 3 months: Native and Reactive Mobile AppsAckee
 
Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...
Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...
Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...TeK Charnsilp Chinprasert
 
SharePoint Saturday Zurich 2017 - SharePoint Framework the new development way
SharePoint Saturday Zurich 2017 - SharePoint Framework the new development waySharePoint Saturday Zurich 2017 - SharePoint Framework the new development way
SharePoint Saturday Zurich 2017 - SharePoint Framework the new development wayGiuliano De Luca
 
Building Tools for the Hadoop Developer
Building Tools for the Hadoop DeveloperBuilding Tools for the Hadoop Developer
Building Tools for the Hadoop DeveloperDataWorks Summit
 
Optimizing and Deploying Angular
Optimizing and Deploying AngularOptimizing and Deploying Angular
Optimizing and Deploying AngularJohn Papa
 
Resume_JiaLIU
Resume_JiaLIUResume_JiaLIU
Resume_JiaLIUJia Liu
 
Forge - DevCon 2016: Visual Reporting with Connected Design Data
Forge - DevCon 2016: Visual Reporting with Connected Design DataForge - DevCon 2016: Visual Reporting with Connected Design Data
Forge - DevCon 2016: Visual Reporting with Connected Design DataAutodesk
 
I am-one-with-angular
I am-one-with-angularI am-one-with-angular
I am-one-with-angularJohn Papa
 
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu ShunjieBuilding RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjiejasonong
 
Latest Trends in Open Source Web Technologies
Latest Trends in Open Source Web TechnologiesLatest Trends in Open Source Web Technologies
Latest Trends in Open Source Web Technologiesbryanbibat
 
Dynamic Provisioning of Service Environments with ASPEN
Dynamic Provisioning of Service Environments with ASPENDynamic Provisioning of Service Environments with ASPEN
Dynamic Provisioning of Service Environments with ASPENCameron Kiddle
 
Few Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondFew Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondSreejesh Madonandy
 
Cloud Computing and HTML5, 2010
Cloud Computing and HTML5, 2010Cloud Computing and HTML5, 2010
Cloud Computing and HTML5, 2010Moullet
 

La actualidad más candente (19)

Voice controlled robot powered by Google Cloud
Voice controlled robot powered by Google CloudVoice controlled robot powered by Google Cloud
Voice controlled robot powered by Google Cloud
 
Get your mobile app in production in 3 months: DevOps and Infrastructure
Get your mobile app in production in 3 months: DevOps and InfrastructureGet your mobile app in production in 3 months: DevOps and Infrastructure
Get your mobile app in production in 3 months: DevOps and Infrastructure
 
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo SchapiroWant Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
Want Digitalisation, have Cloud - DevSecOps Days 2021 - Schlomo Schapiro
 
Get your mobile app in production in 3 months: Native and Reactive Mobile Apps
Get your mobile app in production in 3 months: Native and Reactive Mobile AppsGet your mobile app in production in 3 months: Native and Reactive Mobile Apps
Get your mobile app in production in 3 months: Native and Reactive Mobile Apps
 
Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...
Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...
Automate scalable micro services with Kubernetes on Google Cloud by Billme , ...
 
Html5 (games)
Html5 (games)Html5 (games)
Html5 (games)
 
SharePoint Saturday Zurich 2017 - SharePoint Framework the new development way
SharePoint Saturday Zurich 2017 - SharePoint Framework the new development waySharePoint Saturday Zurich 2017 - SharePoint Framework the new development way
SharePoint Saturday Zurich 2017 - SharePoint Framework the new development way
 
Building Tools for the Hadoop Developer
Building Tools for the Hadoop DeveloperBuilding Tools for the Hadoop Developer
Building Tools for the Hadoop Developer
 
Optimizing and Deploying Angular
Optimizing and Deploying AngularOptimizing and Deploying Angular
Optimizing and Deploying Angular
 
Resume_JiaLIU
Resume_JiaLIUResume_JiaLIU
Resume_JiaLIU
 
Forge - DevCon 2016: Visual Reporting with Connected Design Data
Forge - DevCon 2016: Visual Reporting with Connected Design DataForge - DevCon 2016: Visual Reporting with Connected Design Data
Forge - DevCon 2016: Visual Reporting with Connected Design Data
 
I am-one-with-angular
I am-one-with-angularI am-one-with-angular
I am-one-with-angular
 
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu ShunjieBuilding RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
 
Bangkok
BangkokBangkok
Bangkok
 
Latest Trends in Open Source Web Technologies
Latest Trends in Open Source Web TechnologiesLatest Trends in Open Source Web Technologies
Latest Trends in Open Source Web Technologies
 
Node-Red Poster
Node-Red PosterNode-Red Poster
Node-Red Poster
 
Dynamic Provisioning of Service Environments with ASPEN
Dynamic Provisioning of Service Environments with ASPENDynamic Provisioning of Service Environments with ASPEN
Dynamic Provisioning of Service Environments with ASPEN
 
Few Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondFew Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyond
 
Cloud Computing and HTML5, 2010
Cloud Computing and HTML5, 2010Cloud Computing and HTML5, 2010
Cloud Computing and HTML5, 2010
 

Destacado

PAT Program General Overview
PAT Program General OverviewPAT Program General Overview
PAT Program General OverviewLinda Fullhart
 
Introduction to Software Architecture
Introduction to Software ArchitectureIntroduction to Software Architecture
Introduction to Software ArchitecturePraveen Nair
 
MODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSE
MODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSEMODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSE
MODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSEAmit Midha
 
Software architecture First Lecture
Software architecture First LectureSoftware architecture First Lecture
Software architecture First LectureAhmad Zee
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software ArchitectureRahimLotfi
 
MOPCON 2014 - Best software architecture in app development
MOPCON 2014 - Best software architecture in app developmentMOPCON 2014 - Best software architecture in app development
MOPCON 2014 - Best software architecture in app developmentanistar sung
 
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOPINTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOPAmit Midha
 
Introduction to Software Architecture
Introduction to Software ArchitectureIntroduction to Software Architecture
Introduction to Software ArchitectureYuriy Guts
 
TechTalk - Introduction to software design and architecture
TechTalk - Introduction to software design and architectureTechTalk - Introduction to software design and architecture
TechTalk - Introduction to software design and architectureKonstantin Zakharov
 
Modern Agile Software Architecture
Modern Agile Software ArchitectureModern Agile Software Architecture
Modern Agile Software ArchitectureKannan Durairaj
 
An Introduction to Software Architecture - Summary
An Introduction to Software Architecture - SummaryAn Introduction to Software Architecture - Summary
An Introduction to Software Architecture - SummaryJohn Ortiz
 
Software architecture for developers by Simon Brown
Software architecture for developers by Simon BrownSoftware architecture for developers by Simon Brown
Software architecture for developers by Simon BrownCodemotion
 
Software Architecture Design for Begginers
Software Architecture Design for BegginersSoftware Architecture Design for Begginers
Software Architecture Design for BegginersChinh Ngo Nguyen
 
4.2 architecture introduction
4.2 architecture introduction4.2 architecture introduction
4.2 architecture introductioningo
 
[2016/2017] AADL (Architecture Analysis and Design Language)
[2016/2017] AADL (Architecture Analysis and Design Language)[2016/2017] AADL (Architecture Analysis and Design Language)
[2016/2017] AADL (Architecture Analysis and Design Language)Ivano Malavolta
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionHenry Muccini
 
[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
 
Software Architecture Introduction
Software Architecture IntroductionSoftware Architecture Introduction
Software Architecture IntroductionSARCCOM
 
Fundamentals Of Software Architecture
Fundamentals Of Software ArchitectureFundamentals Of Software Architecture
Fundamentals Of Software ArchitectureMarkus Voelter
 

Destacado (20)

PAT Program General Overview
PAT Program General OverviewPAT Program General Overview
PAT Program General Overview
 
Introduction to Software Architecture
Introduction to Software ArchitectureIntroduction to Software Architecture
Introduction to Software Architecture
 
MODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSE
MODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSEMODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSE
MODELING SERVICE ORIENTED ARCHITECTURE- A COMPREHENSIVE COURSE
 
Software architecture First Lecture
Software architecture First LectureSoftware architecture First Lecture
Software architecture First Lecture
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software Architecture
 
MOPCON 2014 - Best software architecture in app development
MOPCON 2014 - Best software architecture in app developmentMOPCON 2014 - Best software architecture in app development
MOPCON 2014 - Best software architecture in app development
 
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOPINTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
INTRODUCTION TO SOFTWARE ARCHITECTURE-TRAINING WORKSHOP
 
Introduction to Software Architecture
Introduction to Software ArchitectureIntroduction to Software Architecture
Introduction to Software Architecture
 
TechTalk - Introduction to software design and architecture
TechTalk - Introduction to software design and architectureTechTalk - Introduction to software design and architecture
TechTalk - Introduction to software design and architecture
 
Modern Agile Software Architecture
Modern Agile Software ArchitectureModern Agile Software Architecture
Modern Agile Software Architecture
 
An Introduction to Software Architecture - Summary
An Introduction to Software Architecture - SummaryAn Introduction to Software Architecture - Summary
An Introduction to Software Architecture - Summary
 
Software architecture for developers by Simon Brown
Software architecture for developers by Simon BrownSoftware architecture for developers by Simon Brown
Software architecture for developers by Simon Brown
 
Software Architecture Design for Begginers
Software Architecture Design for BegginersSoftware Architecture Design for Begginers
Software Architecture Design for Begginers
 
4.2 architecture introduction
4.2 architecture introduction4.2 architecture introduction
4.2 architecture introduction
 
[2016/2017] AADL (Architecture Analysis and Design Language)
[2016/2017] AADL (Architecture Analysis and Design Language)[2016/2017] AADL (Architecture Analysis and Design Language)
[2016/2017] AADL (Architecture Analysis and Design Language)
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstraction
 
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
 
Software Architecture Introduction
Software Architecture IntroductionSoftware Architecture Introduction
Software Architecture Introduction
 
Architec design introduction
Architec design introductionArchitec design introduction
Architec design introduction
 
Fundamentals Of Software Architecture
Fundamentals Of Software ArchitectureFundamentals Of Software Architecture
Fundamentals Of Software Architecture
 

Similar a Introduction to software architecture

How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?Michael Elder
 
Lightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to FunctionsLightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to FunctionsEUBrasilCloudFORUM .
 
Highway to heaven - Microservices Meetup Munich
Highway to heaven - Microservices Meetup MunichHighway to heaven - Microservices Meetup Munich
Highway to heaven - Microservices Meetup MunichChristian Deger
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?Michael Elder
 
DevCamp - What can the cloud do for me
DevCamp - What can the cloud do for meDevCamp - What can the cloud do for me
DevCamp - What can the cloud do for meChris Dufour
 
Real World Azure - Dev
Real World Azure - DevReal World Azure - Dev
Real World Azure - DevClint Edmonson
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITStijn Wijndaele
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPSACA IT-Solutions
 
Architecting Microservices in .Net
Architecting Microservices in .NetArchitecting Microservices in .Net
Architecting Microservices in .NetRichard Banks
 
C# Client to Cloud
C# Client to CloudC# Client to Cloud
C# Client to CloudStuart Lodge
 
Google Cloud - Scale With A Smile (Dec 2014)
Google Cloud - Scale With A Smile (Dec 2014)Google Cloud - Scale With A Smile (Dec 2014)
Google Cloud - Scale With A Smile (Dec 2014)Ido Green
 
Js foo - Sept 8 upload
Js foo - Sept 8 uploadJs foo - Sept 8 upload
Js foo - Sept 8 uploadDebnath Sinha
 
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...José Román Martín Gil
 
Docker - Scripting the PayPal Cloud
Docker - Scripting the PayPal CloudDocker - Scripting the PayPal Cloud
Docker - Scripting the PayPal CloudAbraham Hoffman
 
The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015Jonathan Challener
 

Similar a Introduction to software architecture (20)

Cloud computing: highlights
Cloud computing: highlightsCloud computing: highlights
Cloud computing: highlights
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
 
Lightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to FunctionsLightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to Functions
 
Jumpstart Azure
Jumpstart AzureJumpstart Azure
Jumpstart Azure
 
Highway to heaven - Microservices Meetup Munich
Highway to heaven - Microservices Meetup MunichHighway to heaven - Microservices Meetup Munich
Highway to heaven - Microservices Meetup Munich
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
 
DevCamp - What can the cloud do for me
DevCamp - What can the cloud do for meDevCamp - What can the cloud do for me
DevCamp - What can the cloud do for me
 
Real World Azure - Dev
Real World Azure - DevReal World Azure - Dev
Real World Azure - Dev
 
Oracle Cloud Native
Oracle Cloud NativeOracle Cloud Native
Oracle Cloud Native
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-IT
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPS
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Architecting Microservices in .Net
Architecting Microservices in .NetArchitecting Microservices in .Net
Architecting Microservices in .Net
 
C# Client to Cloud
C# Client to CloudC# Client to Cloud
C# Client to Cloud
 
Google Cloud - Scale With A Smile (Dec 2014)
Google Cloud - Scale With A Smile (Dec 2014)Google Cloud - Scale With A Smile (Dec 2014)
Google Cloud - Scale With A Smile (Dec 2014)
 
Js foo - Sept 8 upload
Js foo - Sept 8 uploadJs foo - Sept 8 upload
Js foo - Sept 8 upload
 
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
 
Docker - Scripting the PayPal Cloud
Docker - Scripting the PayPal CloudDocker - Scripting the PayPal Cloud
Docker - Scripting the PayPal Cloud
 
The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015The building blocks for a reusable front end - #imaodbc2015
The building blocks for a reusable front end - #imaodbc2015
 

Último

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 

Último (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Introduction to software architecture

  • 2. @mljungblad blog: ljungblad.nu code: github.com/archie mail: marcus.ljungblad@mah.se
  • 4. It’s all about quality, but you can’t have it all!
  • 6.
  • 8. Car requirements Drive forwards and backwards Use gasoline to power the engine Steer the vehicle using a wheel Control speed using a foot pedal
  • 9.
  • 10. define a few car qualities
  • 11. ”For any different system, there are a number of available architectures, and the qualities that you want should rule which architectural choices you make.”
  • 13. f( feature x using design y with downside z )
  • 14. What views? views
  • 17. Client Client Server Client
  • 18. $ node mapi.js -p 8000 > /tmp/mapi.log 2>&1 &
  • 20. C A B D D
  • 21. C/S C/S C/S C/S C/S
  • 24. ”The interesting thing about Cloud Computing is that we’ve redefined Cloud Computing to include everything that we already do. . . . I don’t understand what we would do differently in the light of Cloud Computing other than change the wording of some of our ads.”
  • 25. ”Cloud Computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the datacenters that provide those services.”
  • 26. Cloud computing Illusion of infinite HW resources Elimination of upfront commitment Pay-as-you-go on short term basis
  • 27.
  • 28.
  • 29.
  • 32. It’s all about quality, but you can’t have it all!
  • 33.
  • 34. Resources GoF Patterns - http://en.wikipedia.org/wiki/Design_Patterns#Patterns_by_Type   Scalable Web Architecture and DS - http://www.aosabook.org/en/distsys.html Code Monkey - http://www.youtube.com/watch?v=5W_wd9Qf0IE Netflix Techblog - http://techblog.netflix.com/ Above the Clouds - http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf SW Architecture Talks George Fairbanks’s Introduction to SW architecture - http://www.youtube.com/watch?v=x30DcBfCJRI Cases Heroku architecture - http://www.quora.com/Scalability/How-does-Heroku-work, http://www.heroku.com/how Dropbox scaling - http://www.quora.com/Dropbox/What-is-Dropboxs-architecture Highscalability Blog - http://highscalability.com/ Google’s MapReduce - http://research.google.com/archive/mapreduce.html Creative Commons http://www.flickr.com/photos/swisscan/633644067/sizes/l/in/photostream/ http://www.flickr.com/photos/banovsky/2721248454/sizes/l/in/photostream/ http://www.flickr.com/photos/-lif-/3213233094/sizes/l/in/photostream/ http://www.flickr.com/photos/shakeskc/7967355494/ http://www.flickr.com/photos/skasuga/139744722/sizes/l/in/photostream/ http://www.flickr.com/photos/stickkim/6013651966/sizes/l/in/photostream/ http://www.flickr.com/photos/jensst/5762063659/sizes/l/in/photostream/ http://www.flickr.com/photos/elizabethbw/8373942339/sizes/m/in/photostream/ http://www.flickr.com/photos/esther-/2516424698/sizes/o/in/photostream/