Upload
marcos-vinicius
View
61
Download
1
Embed Size (px)
Citation preview
Q C o n R i o 2 0 1 5
EVOLVING LEGACY: TO MICROSERVICES AND DDD
Marcos Silveira @bymarkone - Twitter e Medium
4
Monolithic: all process in a single application
Desktop application, running inside network
Anemic domain, big service classes
Outdated/poor technology (e.g. dojo.js)
Highly mutable objects, poor concurrency
Business logic embedded in SQL
Poorly tested
Database integration of processes in a single table
8
Quality
Innovation
Evolutionary Architecture
Evolutive Design
Continuous Delivery /
Deployment
Design Thinking
1111
Facility File
Product Identification
Contract Selection
Manual Product Identification
Manual Contract Selection
Scenario Proposal
131313
Facility File
Product Identification
Contract Selection
Manual Product Identification
Contract Selection
Scenario Proposal
18
Service
UserEntity
CompanyEntity
Address VO Contact VO Registry VO
User Aggregate
Company Aggregate
19
Service
UserEntity
CompanyEntity
Address VO Contact VO Registry VO
User Aggregate
Company Aggregate
20
User RepositoryUserEntity
CompanyEntity
Address VO Contact VO Registry VO
User Aggregate
Company Aggregate
User Validation Service
User Authentication Service
User Creation Service
31
Import File
CreateWorkgroup
FindPrices
SummarizeCharts
GenerateReport
ProductMatch
ProductIdentification
33
ProductMatch
ProductIdentification
FacilityWorkgroup
Contract Selection
ContractMatch
Portfolio Modelling
OtherApplications