wec 2015 micorinteractions and microservices
TRANSCRIPT
Designers and engineers were motivated
to think big, to design massive systems
Getting the picture right is correct butwe need to focus on the little things as well
Image by James Stave on Flickr https://www.flickr.com/photos/56923898@N02/
Microinteraction: atomic element, a sort
of interaction that cannot be broken down
into other interactions
Other examples are:
Like something
Nest Thermostat
Share something
Change a setting
Export something from your app
Give a rating
Do microinteractions mean features?
Features are related to multi use cases, time
consuming and cognitively engaging
Microinteractions are related to single use
case, brief and effortless
Thanks to Dan Saffer who inspired me to study this topic. Some of the content of this presentation is taken
from his book: Microinteractions, designing with details.
How can we incorporate microinteraction
into our process?
Look for them and focus on each individually
Reduce complicated features into microinteractions
Treat every feature as a set of microinteractions set
together
Component as a service
Replace and upgrade independently
It’s not about how we think software is build
but how users use the software
When we have components we can build
libraries
Now we can use services with the same approach
Smart endpoints
Usually enterprise think about Enterprise
Service Bus
In the microservices there is the concept of smart endpoints
Decentralization data management
▪ Monolith approach usually works with a relational db
▪ Single db solution of the whole monolith
▪ Each service gets its own data storage
▪ It does not share that data directly with anybody else
▪ Each service chooses what database to use not just the schema
Design for failure
Design the code to manage failure in order to minimize the impact on the user
People are aware of the fact
that things will break
Monitor and recovery
Big changes for the organization
Conway’s law : the software will follow the
organization to the people chosen to build
Microservices is as much about team organizational
attitude as it is about technological attitude
User Interface
Business logic
DB
Product Catalog
Basket
Payment process
Are microservices just SOA?
It depends on what do you think is SOA
A Microservice definition : loosely coupled service oriented architecture with bounded contexts
Use the right approach
MONOLITH
Simplicity (microservices required
asynchronous calls)
Consistency (vs availability)
Change the shape of the code (in case of refactor using the
same code base)
MICROSERVICES
Partial deployment
Availability
Preserve modularity
Multiple platforms
Component as a service
Deploy applications rapidly
Monitoring in place
Continuous delivery (rollback easily)
Dev-ops culture
Event HubAzure
StorageAzure
Web App APIEnd-User
Device
Sensors Message Ingestion & Data Acquisition
Data Storage
Real time Updates
Dashboard Visualization
weight
temp
Door status
tapping
IoT devices
Domain Driven Design Eric Evans
Continuous Delivery Jez Humble David Farley
Lean Enterprise Jez Humble - Joanne Molesky Barry O’Reilly
Building Microservices Sam Newman
http://www.slideshare.net/mcculloughsean/itier-breaking-up-the-monolith-philly-ete
http://www.infoq.com/presentations/scale-gilt
http://www.infoq.com/presentations/Twitter-Timeline-Scalability http://www.infoq.com/presentations/twitter-soa
https://www.youtube.com/watch?v=CriDUYtfrjs https://www.youtube.com/watch?v=ZfYJHtVL1_w
Resources
State of the Art in Web Scale Microservices Architectures