SlideShare a Scribd company logo
1 of 38
Download to read offline
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
1
Documenting
Serverless
Architectures
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI
Asher Sterkin, VP Engineering, BST
London, October 2018
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
2
● (Strategic) Domain-Driven Design
● Serverless Architecture
● Cynefin
● Wardley Maps
● Promise Theory
Software Technologist/Architect
Who I am
VP Engineering at Black Swan Technologies
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
3
Big Data, Cognitive Computing &
Artificial Intelligence Software Company
BlackSwan Technologies
London, United Kingdom
Tel-Aviv, Israel
Who we are
100% current client engagements FS
65 employees
Delaware, United States
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
4
Strategic
Partnerships
ABOUT BLACKSWAN
Major brands that have committed resources and are now building their engineering teams
around BlackSwan solution to later release it to the market
4 Major Partnerships
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
5
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
6
● Nano probability event
● Huge, long lasting impact
● “Big surprise” for everybody
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
7
● detect weak signals
● assess risk exposure
● discover “connected dots” in data
● Nano probability
● Huge, long lasting impact
● “Big surprise” for everybody
for enterprise
You cannot predict it,
but could be better prepared
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
8
What is Serverless Architecture?
● Pure highly available on-demand computing
● Two flavors:
○ AWS Lambda - no pay for idle
○ AWS Fargate - log running containers
● Large and constantly growing number of fully managed services
● Tectonic shift in the software industry - has to be taken seriously
○ S. Wardley “Why the fuss about serverless?”
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
9
What’s the Problem?
AWS
Lambda
Lambda
Function
When to use this?
Lambda
Function
And when this?
And when that?
Without clear guidelines the
choice will most likely be arbitral,
informal and inconsistent
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
10
What Does this Mean?
AWS Service?
SAM Template?
AWS Lambda Deployment?
Running Instance?
AWS Service?
SAM Template?
DynamoDB Schema?
DynamoDB Table Deployment?
DynamoDB Table Instance?
SDK Function Call?
Data Flow?
Address Reference?
Access Rights?
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
11
Why Bother?
Yan Cui, “Yubl’s Road to Serverless Architecture”
● Is it correct?
● Is it efficient?
● Is it reliable?
● Is it secure?
● What it does?
All what I could atest, is that its
author is extremely smart
intellectual
Contrarily to the popular belief, the main responsibility of
software architect is not to show the world how smart (s)he
is, but to make the overall system structure abundantly clear
to the whole organization. Of course, there are other
responsibilities, but this one is utterly important and widely
ignored.
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
13
System Modeling Basics
(always good to repeat)
● “Reality”, its model, and the model’s representation are not the same
● Each model reflects only some limited aspect of “reality”
● Semantic consistency is hard to achieve and maintain
● The more coherent the model, the narrower its context
● For any non-trivial system, more than one model is needed
● To get the whole picture, multiple models are mapped onto each other
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
14
4+1 View of Software Architecture
...
...
P. Krutchen, “Architectural Blueprints - The “4+1” View Model of Software Architecture
Conceptual Physical
Process View Deployment View
Logical View
Use-Case View
Implementation View
End-user
Functionality
Programmers
Software management
Performance
Scalability
Throughput
System integrators
System topology
Delivery, installation
communication
System engineering
Analysts/Designers
Structure
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
15
View Definitions
View Reflects Documentation
Use Case HOW external actors interact with the system User’s Manual
Logical WHAT the system does Business Rules
Process HOW the system runs internally Operations Manual
Implementation HOW the system is built Developer’s Guide
Deployment HOW the system is deployed Operations Manual
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
16
4+1 View of Serverless Architecture
Conceptual Physical
Process View Deployment View
Logical View
Use-Case View
Implementation View
End-user
Functionality
Programmers
Software management
Performance
Scalability
Throughput
System integrators
System topology
Delivery, installation
communication
System engineering
Analysts/Designers
Structure
...
Lambda
Function
Spec
...
Lambda
Instance
Pool
AWS
Managed
Services
Lambda Function Deployment
Ideally, there should be a different icon set for each view, but it’s probably too much to ask for now
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
17
Views Interaction
Use Case View
Logical View
(use case realizations)
Process
View
Implementation
View
functional
Deployment
View
non-functional
Performance
Scalability
Throughput
Resilience
Security
Functionality
Business Agility
Development Agility
Quality
Security
System Topology
Cost
Security
feedback
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
18
Use Case View
● Here, we focus on architecturally essential use cases:
○ What justifies developing the system in eyes of external actors
○ Most important external integration points
● Normally traditional UML notation is enough
● All further analysis is conducted within the scope of particular use case(s)
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
19
Use Case View Examples
Sign Up
User
Upload
Pictures
Manage
Albums
Manage
Watchlists
User
Manage
Scoring
Perform
Screening
scaffolding
main service
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
20
Logical View
● How the core business logic is realized
● Interaction with managed services where appropriate
● Custom automation also fits there
○ Need to be kept separate, unless this is your core domain
● UML Sequence diagrams are usually enough
● Sometimes UML Collaboration diagrams might be more convenient
● For modelling complex workflows UML Activity Diagrams are suitable option
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
21
Example: Classify New Image (sequence)
classifyPhoto
Amazon Rekognitions3://mysite.com/photo MySitePhotoLabels
putObjectEvent
upload
detectLabels
getObject
put
labels
Good for analyzing multiple
interactions between limited
number of elements,
reflecting operation
sequencing, and reasoning
about latency
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
22
Example: Classify New Image (collaboration)
classifyPhoto
Amazon
Rekognition
s3://mysite.com/photo
MySitePhoto
Labels
2. putObjectEvent →1. upload →
3. detectLabels →
4. ← getObject
5. put →
Good for analyzing major
interactions between large
number number of elements,
reflecting whole interaction
graph, and reasoning about
dependencies
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
23
Process View
● Suitable for reflecting:
○ What deployment and concurrency units (Lambda Functions, Fargate Services) exist
○ How much RAM/CPU is allocated to each computation service
○ How many instances will run in parallel
○ What system resources, e.g. DynamoDB tables, are involved
○ Cost estimations
○ Access permissions
○ How internal concurrency is arranged (advanced topic)
● Could be treated as a basic skeleton of SAM template without extra details
● By structure is similar to Collaboration Diagram, but semantics is different
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
24
Process View
Browser
getAlbums
invoke
Albums
query
addAlbumDetails
invoke
get/put
/
GET
albums/{id}
PUT
DELETE
deleteAlbum
invoke
get/put
purgeDeletedAlbums
query/delete
invoke
api
api resource
http method
Good for getting a bird view of the
whole picture, accurate yet
comprehensible
api.pictures.com
...
256 MB, 30 secs, 100
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
25
Process View
Browser
getAlbums
invoke
Albums
query
addAlbumDetails
invoke
get/put
/
GET
albums/{id}
PUT
DELETE
deleteAlbum
invoke
get/put
purgeDeletedAlbums
query/delete
invoke
Reference and
access rights
Lambda
instance pool
Good for getting a bird view of the
whole picture, accurate yet
comprehensible
api.pictures.com
...
256 MB, 30 secs, 100
Resource
Constraints
Within this context, an arrow means
visibility and access rights and NOT
data or command flow.
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
26
Process View
Browser
getAlbums
invoke
Albums
query
addAlbumDetails
invoke
get/put
/
GET
albums/{id}
PUT
DELETE
deleteAlbum
invoke
get/put
purgeDeletedAlbums
query/delete
invoke
DynamoDB
table
Cloud Watch
event
Locking
mechanism
Good for getting a bird view of the
whole picture, accurate yet
comprehensible
api.pictures.com
...
256 MB, 30 secs, 100
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
27
Process View
Browser
getAlbums
invoke
Albums
query
addAlbumDetails
invoke
get/put
/
GET
albums/{id}
PUT
DELETE
deleteAlbum
invoke
get/put
purgeDeletedAlbums
query/delete
invoke
api
api resource
http method
Reference and
access rights
Lambda
instance pool
DynamoDB
table
Cloud Watch
event
Locking
mechanism
Good for getting a bird view of the
whole picture, accurate yet
comprehensible
api.pictures.com
...
256 MB, 30 secs, 100
Resource
Constraints
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
28
Public Watchlist
Sources
PUT
/watchlists/{id}
/screenings/
teal.zara.ai
index.html
TEAL client
custom_sanctions_index
custom_peps_index
upload_watchlist
delete_watchlist
matching_engine
scoring_engine
POST
W
BEcustom
BEbackbone
match_properties
scoring_rules
api.teal.zara.ai
watchlist_engine
perform_screening
DELETE
BEscreening
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
29
Process View: Ingest New Image Workflow
pictures.com
ingestNewImage imageIngestion
Workflow
queryResolutions
Client Devices
Amazon Rekognition
extractMetadata
Images
transformImage
uploads
pictures
get
put
In Process View, we deal with
concurrency, visibility and access
rights since all three aspects are
closely related.
…
Step Function
Fork
Join
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
30
Scaling Process View Diagrams
bvd-source-proxy
be-identity
be-elasticsearch-
service
be-adverse-news
be-custom
be-cdc
be-storm-cluster
be-kycbe-entity
Microservice wrapped in
a Cloud Formation Stack
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
31
Implementation View
● Here, we reflect
○ How deployable units are built
○ Source code sharing, if any
○ Run-time environments and versions
○ 3rd party packages
○ CI/CD pipeline organization
● Could be considered as further clarifications on SAM template plus
○ AWS Build script
○ AWS Pipeline script
○ AWS CodeStar template
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
32
Example: Image Transformation Stack
ImageIngestoringestNewImage
transformImage
extractMetadata
queryResolutions
pictures.com
Images
ClientDevices resolution resolution-gsi
IimageIngestWorkflow
Avoid putting excessive details where it’s not
necessary, e.g. do not depict embedded roles
and policies as in this case.
uploads
pictures
dynamoDbBackoffClient
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
33
Deployment View
● Here, we reflect:
○ How the system is deployed across multiple accounts/regions
○ Cross-region replication
○ CDN
○ Network routing
○ Network security
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
34
Example: Cross-Region Replication Deployment
eu-west-1 eu-west-2
mysite.com
api.mysite.com
siteData
mysite.com
api.mysite.com
siteData
mysite.com
api.mysite.com
mysite.com
api.mysite.com
rewriteHeader
mysite.com
api.mysite.com
default
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
35
Concluding Remarks
● All views in full detail would seldom be required
● Process View is often the most actively used
● Custom resources help with improving clarity
● Concentrate on the most important architectural decisions
○ Pickup relevant views to reflect these decision in high fidelity
● Might constitute a form of Lightweight Architecture Decision Records
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
36
What Could We Do About It?
● Developers and solution architects do not like to be told how to work
● Greedy platform and tool vendors could ruin any good initiative
● Too often great achievements of industry leaders are forgotten or ignored
● Grassroot community project with true organic growth might work better:
○ Open source catalog of modeling elements collected so far
○ Case studies of real-life projects
○ Collaborative research of implications on important operational aspects such as security,
monitoring and disaster recovery
○ Meetup presentations and blog posts
○ Consulting and mentoring services where appropriate
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
37
More Information
● P. Krutchen, “Architectural Blueprints - The “4+1” View Model of Software Architecture”
● S. Wardley “Why the fuss about serverless?”
● E. Evans, “Domain-Driven Design Reference”
● A. Sterkin, “Serverless Architecture Language”
● A. Sterkin, “Consistent Modeling of Serverless Long-Running Background Tasks”
● A. Sterkin, “Serverless Steps”
BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS
WWW.BLACKSWANTECHNOLOGIES.AI
38
Contact/Follow
asher@blackswan-technologies.comhttps://www.slideshare.net/AsherSterkinhttps://medium.com/@asher.sterkin
asher.sterkin@gmail.com

More Related Content

What's hot

INTERFACE, by apidays - C* made easy with Stargate APIs by Kirsten Hunter, D...
INTERFACE, by apidays  - C* made easy with Stargate APIs by Kirsten Hunter, D...INTERFACE, by apidays  - C* made easy with Stargate APIs by Kirsten Hunter, D...
INTERFACE, by apidays - C* made easy with Stargate APIs by Kirsten Hunter, D...apidays
 
Building the Autodesk Design Graph-(Yotto Koga, Autodesk)
Building the Autodesk Design Graph-(Yotto Koga, Autodesk)Building the Autodesk Design Graph-(Yotto Koga, Autodesk)
Building the Autodesk Design Graph-(Yotto Koga, Autodesk)Spark Summit
 
Next18 Extended Targu Mures - Bringing the Cloud to you
Next18 Extended Targu Mures - Bringing the Cloud to youNext18 Extended Targu Mures - Bringing the Cloud to you
Next18 Extended Targu Mures - Bringing the Cloud to youMárton Kodok
 
Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021
Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021
Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021InfluxData
 
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...TigerGraph
 
Event Driven Programming & Architecture
Event Driven Programming & ArchitectureEvent Driven Programming & Architecture
Event Driven Programming & Architecturemarcoemrich
 
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...confluent
 
GraphQL Advanced
GraphQL AdvancedGraphQL Advanced
GraphQL AdvancedLeanIX GmbH
 
Version Control in AI/Machine Learning by Datmo
Version Control in AI/Machine Learning by DatmoVersion Control in AI/Machine Learning by Datmo
Version Control in AI/Machine Learning by DatmoNicholas Walsh
 
Enterprise graph applications
Enterprise graph applicationsEnterprise graph applications
Enterprise graph applicationsDavid Colebatch
 
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...Codemotion
 
Melb nov17 Virtual Entity and auto number
Melb nov17 Virtual Entity and auto numberMelb nov17 Virtual Entity and auto number
Melb nov17 Virtual Entity and auto numberAndre Margono
 
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...HostedbyConfluent
 
Building Fullstack Graph Applications With Neo4j
Building Fullstack Graph Applications With Neo4j Building Fullstack Graph Applications With Neo4j
Building Fullstack Graph Applications With Neo4j Neo4j
 
Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...TigerGraph
 
GraphQL Misconfiguration
GraphQL MisconfigurationGraphQL Misconfiguration
GraphQL MisconfigurationHarshit Sengar
 
Demystifying the 3d web - Codemotion 2016
Demystifying the 3d web - Codemotion 2016Demystifying the 3d web - Codemotion 2016
Demystifying the 3d web - Codemotion 2016Pietro Grandi
 
05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...
05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...
05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...Revolution Analytics
 

What's hot (20)

INTERFACE, by apidays - C* made easy with Stargate APIs by Kirsten Hunter, D...
INTERFACE, by apidays  - C* made easy with Stargate APIs by Kirsten Hunter, D...INTERFACE, by apidays  - C* made easy with Stargate APIs by Kirsten Hunter, D...
INTERFACE, by apidays - C* made easy with Stargate APIs by Kirsten Hunter, D...
 
Building the Autodesk Design Graph-(Yotto Koga, Autodesk)
Building the Autodesk Design Graph-(Yotto Koga, Autodesk)Building the Autodesk Design Graph-(Yotto Koga, Autodesk)
Building the Autodesk Design Graph-(Yotto Koga, Autodesk)
 
Next18 Extended Targu Mures - Bringing the Cloud to you
Next18 Extended Targu Mures - Bringing the Cloud to youNext18 Extended Targu Mures - Bringing the Cloud to you
Next18 Extended Targu Mures - Bringing the Cloud to you
 
Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021
Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021
Alex Nauda [Nobl9] | How Not to Build an SLO Platform | InfluxDays NA 2021
 
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
Deploying an End-to-End TigerGraph Enterprise Architecture using Kafka, Maria...
 
Event Driven Programming & Architecture
Event Driven Programming & ArchitectureEvent Driven Programming & Architecture
Event Driven Programming & Architecture
 
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
 
GraphQL Advanced
GraphQL AdvancedGraphQL Advanced
GraphQL Advanced
 
TigerGraph.js
TigerGraph.jsTigerGraph.js
TigerGraph.js
 
Version Control in AI/Machine Learning by Datmo
Version Control in AI/Machine Learning by DatmoVersion Control in AI/Machine Learning by Datmo
Version Control in AI/Machine Learning by Datmo
 
Enterprise graph applications
Enterprise graph applicationsEnterprise graph applications
Enterprise graph applications
 
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
SQL o NoSQL? Progettare applicazioni 'Big Data-ready' attraverso l'utilizzo d...
 
Melb nov17 Virtual Entity and auto number
Melb nov17 Virtual Entity and auto numberMelb nov17 Virtual Entity and auto number
Melb nov17 Virtual Entity and auto number
 
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
 
Building Fullstack Graph Applications With Neo4j
Building Fullstack Graph Applications With Neo4j Building Fullstack Graph Applications With Neo4j
Building Fullstack Graph Applications With Neo4j
 
Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...Better Together: How Graph database enables easy data integration with Spark ...
Better Together: How Graph database enables easy data integration with Spark ...
 
GraphQL Misconfiguration
GraphQL MisconfigurationGraphQL Misconfiguration
GraphQL Misconfiguration
 
Demystifying the 3d web - Codemotion 2016
Demystifying the 3d web - Codemotion 2016Demystifying the 3d web - Codemotion 2016
Demystifying the 3d web - Codemotion 2016
 
Attacking GraphQL
Attacking GraphQLAttacking GraphQL
Attacking GraphQL
 
05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...
05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...
05Nov13 Webinar: Introducing Revolution R Enterprise 7 - The Big Data Big Ana...
 

Similar to Documenting serverless architectures could we do it better - o'reily sa conference 201

Aw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerAw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerVMware Tanzu
 
Serverless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaServerless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaData Science Milan
 
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...marksimpsongw
 
Has serverless adoption hit a roadblock?
Has serverless adoption hit a roadblock?Has serverless adoption hit a roadblock?
Has serverless adoption hit a roadblock?Veselin Pizurica
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to CloudRightScale
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...James Anderson
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computingwebscale
 
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석Amazon Web Services Korea
 
Onion Architecture with S#arp
Onion Architecture with S#arpOnion Architecture with S#arp
Onion Architecture with S#arpGary Pedretti
 
DataLive conference in Geneva 2018 - Bringing AI to the Data
DataLive conference in Geneva 2018 - Bringing AI to the DataDataLive conference in Geneva 2018 - Bringing AI to the Data
DataLive conference in Geneva 2018 - Bringing AI to the DataSasha Lazarevic
 
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
 
ALT-F1 Techtalk 3 - Google AppEngine
ALT-F1 Techtalk 3 - Google AppEngineALT-F1 Techtalk 3 - Google AppEngine
ALT-F1 Techtalk 3 - Google AppEngineAbdelkrim Boujraf
 
WSO2Con EU 2016: Planning Your Cloud Strategy
WSO2Con EU 2016: Planning Your Cloud StrategyWSO2Con EU 2016: Planning Your Cloud Strategy
WSO2Con EU 2016: Planning Your Cloud StrategyWSO2
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Kai Wähner
 
The Reconstitution of Middleware with APIs V2
The Reconstitution of Middleware with APIs V2The Reconstitution of Middleware with APIs V2
The Reconstitution of Middleware with APIs V2Asanka Abeysinghe
 
apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...
apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...
apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...apidays
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021NeerajKumar1965
 
Technology Overview
Technology OverviewTechnology Overview
Technology OverviewLiran Zelkha
 
RedisGraph A Low Latency Graph DB: Pieter Cailliau
RedisGraph A Low Latency Graph DB: Pieter CailliauRedisGraph A Low Latency Graph DB: Pieter Cailliau
RedisGraph A Low Latency Graph DB: Pieter CailliauRedis Labs
 

Similar to Documenting serverless architectures could we do it better - o'reily sa conference 201 (20)

Aw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerAw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymer
 
Serverless machine learning architectures at Helixa
Serverless machine learning architectures at HelixaServerless machine learning architectures at Helixa
Serverless machine learning architectures at Helixa
 
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
Mark Simpson - UKOUG23 - Refactoring Monolithic Oracle Database Applications ...
 
Has serverless adoption hit a roadblock?
Has serverless adoption hit a roadblock?Has serverless adoption hit a roadblock?
Has serverless adoption hit a roadblock?
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
 
agile microservices @scaibo
agile microservices @scaiboagile microservices @scaibo
agile microservices @scaibo
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
 
Onion Architecture with S#arp
Onion Architecture with S#arpOnion Architecture with S#arp
Onion Architecture with S#arp
 
DataLive conference in Geneva 2018 - Bringing AI to the Data
DataLive conference in Geneva 2018 - Bringing AI to the DataDataLive conference in Geneva 2018 - Bringing AI to the Data
DataLive conference in Geneva 2018 - Bringing AI to the Data
 
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
 
ALT-F1 Techtalk 3 - Google AppEngine
ALT-F1 Techtalk 3 - Google AppEngineALT-F1 Techtalk 3 - Google AppEngine
ALT-F1 Techtalk 3 - Google AppEngine
 
WSO2Con EU 2016: Planning Your Cloud Strategy
WSO2Con EU 2016: Planning Your Cloud StrategyWSO2Con EU 2016: Planning Your Cloud Strategy
WSO2Con EU 2016: Planning Your Cloud Strategy
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
 
The Reconstitution of Middleware with APIs V2
The Reconstitution of Middleware with APIs V2The Reconstitution of Middleware with APIs V2
The Reconstitution of Middleware with APIs V2
 
apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...
apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...
apidays LIVE New York 2021 - The reconstitution of middleware with APIs by As...
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021
 
Technology Overview
Technology OverviewTechnology Overview
Technology Overview
 
RedisGraph A Low Latency Graph DB: Pieter Cailliau
RedisGraph A Low Latency Graph DB: Pieter CailliauRedisGraph A Low Latency Graph DB: Pieter Cailliau
RedisGraph A Low Latency Graph DB: Pieter Cailliau
 

More from Asher Sterkin

Essence of Requirements Engineering: Pragmatic Insights for 2024
Essence of Requirements Engineering: Pragmatic Insights for 2024Essence of Requirements Engineering: Pragmatic Insights for 2024
Essence of Requirements Engineering: Pragmatic Insights for 2024Asher Sterkin
 
Cloud Infrastructure from Python Code: PyCon DE-23
Cloud Infrastructure from Python Code: PyCon DE-23Cloud Infrastructure from Python Code: PyCon DE-23
Cloud Infrastructure from Python Code: PyCon DE-23Asher Sterkin
 
pyjamas22_ generic composite in python.pdf
pyjamas22_ generic composite in python.pdfpyjamas22_ generic composite in python.pdf
pyjamas22_ generic composite in python.pdfAsher Sterkin
 
Strategy toolbox for startsups
Strategy toolbox for startsupsStrategy toolbox for startsups
Strategy toolbox for startsupsAsher Sterkin
 
Software strategy for startups
Software strategy for startupsSoftware strategy for startups
Software strategy for startupsAsher Sterkin
 
What is exactly anti fragile in dev ops - v3
What is exactly anti fragile in dev ops - v3What is exactly anti fragile in dev ops - v3
What is exactly anti fragile in dev ops - v3Asher Sterkin
 

More from Asher Sterkin (10)

Essence of Requirements Engineering: Pragmatic Insights for 2024
Essence of Requirements Engineering: Pragmatic Insights for 2024Essence of Requirements Engineering: Pragmatic Insights for 2024
Essence of Requirements Engineering: Pragmatic Insights for 2024
 
Cloud Infrastructure from Python Code: PyCon DE-23
Cloud Infrastructure from Python Code: PyCon DE-23Cloud Infrastructure from Python Code: PyCon DE-23
Cloud Infrastructure from Python Code: PyCon DE-23
 
PyCascades-23.pdf
PyCascades-23.pdfPyCascades-23.pdf
PyCascades-23.pdf
 
PyConFR-23 Talk.pdf
PyConFR-23 Talk.pdfPyConFR-23 Talk.pdf
PyConFR-23 Talk.pdf
 
pyjamas22_ generic composite in python.pdf
pyjamas22_ generic composite in python.pdfpyjamas22_ generic composite in python.pdf
pyjamas22_ generic composite in python.pdf
 
Strategy toolbox for startsups
Strategy toolbox for startsupsStrategy toolbox for startsups
Strategy toolbox for startsups
 
AI as a service
AI as a serviceAI as a service
AI as a service
 
Serverless ddd
Serverless dddServerless ddd
Serverless ddd
 
Software strategy for startups
Software strategy for startupsSoftware strategy for startups
Software strategy for startups
 
What is exactly anti fragile in dev ops - v3
What is exactly anti fragile in dev ops - v3What is exactly anti fragile in dev ops - v3
What is exactly anti fragile in dev ops - v3
 

Recently uploaded

WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 

Recently uploaded (20)

WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 

Documenting serverless architectures could we do it better - o'reily sa conference 201

  • 1. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 1 Documenting Serverless Architectures BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI Asher Sterkin, VP Engineering, BST London, October 2018
  • 2. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 2 ● (Strategic) Domain-Driven Design ● Serverless Architecture ● Cynefin ● Wardley Maps ● Promise Theory Software Technologist/Architect Who I am VP Engineering at Black Swan Technologies
  • 3. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 3 Big Data, Cognitive Computing & Artificial Intelligence Software Company BlackSwan Technologies London, United Kingdom Tel-Aviv, Israel Who we are 100% current client engagements FS 65 employees Delaware, United States
  • 4. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 4 Strategic Partnerships ABOUT BLACKSWAN Major brands that have committed resources and are now building their engineering teams around BlackSwan solution to later release it to the market 4 Major Partnerships
  • 5. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 5
  • 6. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 6 ● Nano probability event ● Huge, long lasting impact ● “Big surprise” for everybody
  • 7. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 7 ● detect weak signals ● assess risk exposure ● discover “connected dots” in data ● Nano probability ● Huge, long lasting impact ● “Big surprise” for everybody for enterprise You cannot predict it, but could be better prepared
  • 8. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 8 What is Serverless Architecture? ● Pure highly available on-demand computing ● Two flavors: ○ AWS Lambda - no pay for idle ○ AWS Fargate - log running containers ● Large and constantly growing number of fully managed services ● Tectonic shift in the software industry - has to be taken seriously ○ S. Wardley “Why the fuss about serverless?”
  • 9. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 9 What’s the Problem? AWS Lambda Lambda Function When to use this? Lambda Function And when this? And when that? Without clear guidelines the choice will most likely be arbitral, informal and inconsistent
  • 10. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 10 What Does this Mean? AWS Service? SAM Template? AWS Lambda Deployment? Running Instance? AWS Service? SAM Template? DynamoDB Schema? DynamoDB Table Deployment? DynamoDB Table Instance? SDK Function Call? Data Flow? Address Reference? Access Rights?
  • 11. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 11 Why Bother? Yan Cui, “Yubl’s Road to Serverless Architecture” ● Is it correct? ● Is it efficient? ● Is it reliable? ● Is it secure? ● What it does? All what I could atest, is that its author is extremely smart intellectual
  • 12. Contrarily to the popular belief, the main responsibility of software architect is not to show the world how smart (s)he is, but to make the overall system structure abundantly clear to the whole organization. Of course, there are other responsibilities, but this one is utterly important and widely ignored.
  • 13. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 13 System Modeling Basics (always good to repeat) ● “Reality”, its model, and the model’s representation are not the same ● Each model reflects only some limited aspect of “reality” ● Semantic consistency is hard to achieve and maintain ● The more coherent the model, the narrower its context ● For any non-trivial system, more than one model is needed ● To get the whole picture, multiple models are mapped onto each other
  • 14. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 14 4+1 View of Software Architecture ... ... P. Krutchen, “Architectural Blueprints - The “4+1” View Model of Software Architecture Conceptual Physical Process View Deployment View Logical View Use-Case View Implementation View End-user Functionality Programmers Software management Performance Scalability Throughput System integrators System topology Delivery, installation communication System engineering Analysts/Designers Structure
  • 15. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 15 View Definitions View Reflects Documentation Use Case HOW external actors interact with the system User’s Manual Logical WHAT the system does Business Rules Process HOW the system runs internally Operations Manual Implementation HOW the system is built Developer’s Guide Deployment HOW the system is deployed Operations Manual
  • 16. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 16 4+1 View of Serverless Architecture Conceptual Physical Process View Deployment View Logical View Use-Case View Implementation View End-user Functionality Programmers Software management Performance Scalability Throughput System integrators System topology Delivery, installation communication System engineering Analysts/Designers Structure ... Lambda Function Spec ... Lambda Instance Pool AWS Managed Services Lambda Function Deployment Ideally, there should be a different icon set for each view, but it’s probably too much to ask for now
  • 17. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 17 Views Interaction Use Case View Logical View (use case realizations) Process View Implementation View functional Deployment View non-functional Performance Scalability Throughput Resilience Security Functionality Business Agility Development Agility Quality Security System Topology Cost Security feedback
  • 18. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 18 Use Case View ● Here, we focus on architecturally essential use cases: ○ What justifies developing the system in eyes of external actors ○ Most important external integration points ● Normally traditional UML notation is enough ● All further analysis is conducted within the scope of particular use case(s)
  • 19. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 19 Use Case View Examples Sign Up User Upload Pictures Manage Albums Manage Watchlists User Manage Scoring Perform Screening scaffolding main service
  • 20. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 20 Logical View ● How the core business logic is realized ● Interaction with managed services where appropriate ● Custom automation also fits there ○ Need to be kept separate, unless this is your core domain ● UML Sequence diagrams are usually enough ● Sometimes UML Collaboration diagrams might be more convenient ● For modelling complex workflows UML Activity Diagrams are suitable option
  • 21. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 21 Example: Classify New Image (sequence) classifyPhoto Amazon Rekognitions3://mysite.com/photo MySitePhotoLabels putObjectEvent upload detectLabels getObject put labels Good for analyzing multiple interactions between limited number of elements, reflecting operation sequencing, and reasoning about latency
  • 22. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 22 Example: Classify New Image (collaboration) classifyPhoto Amazon Rekognition s3://mysite.com/photo MySitePhoto Labels 2. putObjectEvent →1. upload → 3. detectLabels → 4. ← getObject 5. put → Good for analyzing major interactions between large number number of elements, reflecting whole interaction graph, and reasoning about dependencies
  • 23. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 23 Process View ● Suitable for reflecting: ○ What deployment and concurrency units (Lambda Functions, Fargate Services) exist ○ How much RAM/CPU is allocated to each computation service ○ How many instances will run in parallel ○ What system resources, e.g. DynamoDB tables, are involved ○ Cost estimations ○ Access permissions ○ How internal concurrency is arranged (advanced topic) ● Could be treated as a basic skeleton of SAM template without extra details ● By structure is similar to Collaboration Diagram, but semantics is different
  • 24. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 24 Process View Browser getAlbums invoke Albums query addAlbumDetails invoke get/put / GET albums/{id} PUT DELETE deleteAlbum invoke get/put purgeDeletedAlbums query/delete invoke api api resource http method Good for getting a bird view of the whole picture, accurate yet comprehensible api.pictures.com ... 256 MB, 30 secs, 100
  • 25. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 25 Process View Browser getAlbums invoke Albums query addAlbumDetails invoke get/put / GET albums/{id} PUT DELETE deleteAlbum invoke get/put purgeDeletedAlbums query/delete invoke Reference and access rights Lambda instance pool Good for getting a bird view of the whole picture, accurate yet comprehensible api.pictures.com ... 256 MB, 30 secs, 100 Resource Constraints Within this context, an arrow means visibility and access rights and NOT data or command flow.
  • 26. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 26 Process View Browser getAlbums invoke Albums query addAlbumDetails invoke get/put / GET albums/{id} PUT DELETE deleteAlbum invoke get/put purgeDeletedAlbums query/delete invoke DynamoDB table Cloud Watch event Locking mechanism Good for getting a bird view of the whole picture, accurate yet comprehensible api.pictures.com ... 256 MB, 30 secs, 100
  • 27. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 27 Process View Browser getAlbums invoke Albums query addAlbumDetails invoke get/put / GET albums/{id} PUT DELETE deleteAlbum invoke get/put purgeDeletedAlbums query/delete invoke api api resource http method Reference and access rights Lambda instance pool DynamoDB table Cloud Watch event Locking mechanism Good for getting a bird view of the whole picture, accurate yet comprehensible api.pictures.com ... 256 MB, 30 secs, 100 Resource Constraints
  • 28. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 28 Public Watchlist Sources PUT /watchlists/{id} /screenings/ teal.zara.ai index.html TEAL client custom_sanctions_index custom_peps_index upload_watchlist delete_watchlist matching_engine scoring_engine POST W BEcustom BEbackbone match_properties scoring_rules api.teal.zara.ai watchlist_engine perform_screening DELETE BEscreening
  • 29. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 29 Process View: Ingest New Image Workflow pictures.com ingestNewImage imageIngestion Workflow queryResolutions Client Devices Amazon Rekognition extractMetadata Images transformImage uploads pictures get put In Process View, we deal with concurrency, visibility and access rights since all three aspects are closely related. … Step Function Fork Join
  • 30. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 30 Scaling Process View Diagrams bvd-source-proxy be-identity be-elasticsearch- service be-adverse-news be-custom be-cdc be-storm-cluster be-kycbe-entity Microservice wrapped in a Cloud Formation Stack
  • 31. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 31 Implementation View ● Here, we reflect ○ How deployable units are built ○ Source code sharing, if any ○ Run-time environments and versions ○ 3rd party packages ○ CI/CD pipeline organization ● Could be considered as further clarifications on SAM template plus ○ AWS Build script ○ AWS Pipeline script ○ AWS CodeStar template
  • 32. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 32 Example: Image Transformation Stack ImageIngestoringestNewImage transformImage extractMetadata queryResolutions pictures.com Images ClientDevices resolution resolution-gsi IimageIngestWorkflow Avoid putting excessive details where it’s not necessary, e.g. do not depict embedded roles and policies as in this case. uploads pictures dynamoDbBackoffClient
  • 33. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 33 Deployment View ● Here, we reflect: ○ How the system is deployed across multiple accounts/regions ○ Cross-region replication ○ CDN ○ Network routing ○ Network security
  • 34. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 34 Example: Cross-Region Replication Deployment eu-west-1 eu-west-2 mysite.com api.mysite.com siteData mysite.com api.mysite.com siteData mysite.com api.mysite.com mysite.com api.mysite.com rewriteHeader mysite.com api.mysite.com default
  • 35. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 35 Concluding Remarks ● All views in full detail would seldom be required ● Process View is often the most actively used ● Custom resources help with improving clarity ● Concentrate on the most important architectural decisions ○ Pickup relevant views to reflect these decision in high fidelity ● Might constitute a form of Lightweight Architecture Decision Records
  • 36. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 36 What Could We Do About It? ● Developers and solution architects do not like to be told how to work ● Greedy platform and tool vendors could ruin any good initiative ● Too often great achievements of industry leaders are forgotten or ignored ● Grassroot community project with true organic growth might work better: ○ Open source catalog of modeling elements collected so far ○ Case studies of real-life projects ○ Collaborative research of implications on important operational aspects such as security, monitoring and disaster recovery ○ Meetup presentations and blog posts ○ Consulting and mentoring services where appropriate
  • 37. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 37 More Information ● P. Krutchen, “Architectural Blueprints - The “4+1” View Model of Software Architecture” ● S. Wardley “Why the fuss about serverless?” ● E. Evans, “Domain-Driven Design Reference” ● A. Sterkin, “Serverless Architecture Language” ● A. Sterkin, “Consistent Modeling of Serverless Long-Running Background Tasks” ● A. Sterkin, “Serverless Steps”
  • 38. BLACKSWAN TECHNOLOGIES 2018.ALL RIGHTS WWW.BLACKSWANTECHNOLOGIES.AI 38 Contact/Follow asher@blackswan-technologies.comhttps://www.slideshare.net/AsherSterkinhttps://medium.com/@asher.sterkin asher.sterkin@gmail.com