agile soa: application development in the new enterprise
DESCRIPTION
In the quest for more flexibility, business alignment and speed, enterprise ITs worldwide are adopting SOA to guide their new generation of enterprise architectures. At the same time the constant realignment demanded on enterprise software to fulfill business changes is putting more pressure on IT to replace long winded projects with short, incremental releases delivered using Agile Methodologies. In this talk we will leverage on the experience of delivering more than 500 agile projects in 16 industries to describe the good and the bad of agile when deployed strategically across the enterprise. We will also present several examples of the way enterprises have converted their enterprise architectures using SOA principles to cope with an agile approach to software delivery. This presentation was delivered during the Finco 2010 conference, organized by the Sonae Group.TRANSCRIPT
www.outsystems.com 1 © 2010 OutSystems – all rights reserved
Agile SOA:Application development in the new enterprise
24 May 2010
Paulo Rosado
www.outsystems.com 2 © 2010 OutSystems – all rights reserved
Traditional
www.outsystems.com 3 © 2010 OutSystems – all rights reserved
Analysis
Design
Development
Testing
3-6 months 6-12 months
10x – 50xmore expensive
$1
www.outsystems.com 4 © 2010 OutSystems – all rights reserved
Agile works better
www.outsystems.com 5 © 2010 OutSystems – all rights reserved
Agile Do things incrementally
Involve the business continuously
Release, asap
www.outsystems.com 6 © 2010 OutSystems – all rights reserved
2 weeks 2 weeks 2 weeks 2 weeks 2 weeks$1 3x – 5x
Agile MethodologiesProjects are delivered incrementally. Software gets
corrected constantly based on Business Users feedback.
www.outsystems.com 7 © 2010 OutSystems – all rights reserved
Less software“45% of features will never be
used. I wish I knew which ones”
Features and Functions Used in a Typical System
Never45%
Rarely19%
Sometimes16%
Always7%
Often13%
www.outsystems.com 8 © 2010 OutSystems – all rights reserved
Functional softwareExactly what is needed.
www.outsystems.com 9 © 2010 OutSystems – all rights reserved
Reprioritize features for next sprint
www.outsystems.com 10 © 2010 OutSystems – all rights reserved
Flexible softwareAligned with Business
Changes
www.outsystems.com 11 © 2010 OutSystems – all rights reserved
Adopted softwareFlexibility is extended into
roll-out phases
www.outsystems.com 12 © 2010 OutSystems – all rights reserved
Tune application
after launch
www.outsystems.com 13 © 2010 OutSystems – all rights reserved
IT becomes a Strategic asset… instead of a cost center
www.outsystems.com 14 © 2010 OutSystems – all rights reserved
Agile is hard
www.outsystems.com 15 © 2010 OutSystems – all rights reserved
“don’t ever mention that again around here […]
agile is a banned word in this organization”
www.outsystems.com 16 © 2010 OutSystems – all rights reserved
People
Processagile
ArchitectureSOA
Tools + infrastructur
e
www.outsystems.com 17 © 2010 OutSystems – all rights reserved
SOA
Break software in state full components
Connect loosely
Use one common protocol
www.outsystems.com 18 © 2010 OutSystems – all rights reserved
ExampleCustomer Portal
www.outsystems.com 19 © 2010 OutSystems – all rights reserved
Existing systems
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
www.outsystems.com 21 © 2010 OutSystems – all rights reserved
SOA architecture
ProductCatalog(custom
build)
OrderManagement
(ERP)
Show Products
ProductService
front-endcomposite
back-endcomposite
orservice
www.outsystems.com 22 © 2010 OutSystems – all rights reserved
Different SLAsCache data in the service, periodically
9 to 5Order
Management(ERP)
Show Products
Product Service
ProductsCache
24 by 7
www.outsystems.com 23 © 2010 OutSystems – all rights reserved
Different SLAsService needs to scale
OrderManagement
(ERP)
Show Products
Product Service
ProductsCache
500 requests/sec
10 trans/sec
www.outsystems.com 24 © 2010 OutSystems – all rights reserved
New data neededNot possible to add it to legacy Master of
Records
OrderManagement
(ERP)
Show Products
Product Service
ProductsCache Too much
change. Not
possible!
PhotosDescriptions
www.outsystems.com 25 © 2010 OutSystems – all rights reserved
New data needs managementBackoffice of the Portal?
Too much change. Not
possible!
OrderManagement
(ERP)
Show Products
Product Service
ProductsCache
Online Product Mngmt
PhotosDescriptions
www.outsystems.com 26 © 2010 OutSystems – all rights reserved
SOA architectureInside the Service?
Too much change. Not
possible!
OrderManagement
(ERP)
Show Products
Product Service
ProductsCache
Online Product Mngmt
PhotosDescriptions
www.outsystems.com 27 © 2010 OutSystems – all rights reserved
SOA frameworkMust-have capabilities
Too much change. Not
possible!
OrderManagement
(ERP)
Show Products
Product Service
ProductsCache
Online Product Mngmt
PhotosDescriptions
• WS protocols• Logic • Scalable• Integration• Database• Scheduling• …and more.
www.outsystems.com 28 © 2010 OutSystems – all rights reserved
Front-End Composites frameworksObvious capabilities - mashups
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
ProductService
• Web 2.0• Logic• WS protocols• Scalable• …and more.
www.outsystems.com 29 © 2010 OutSystems – all rights reserved
New data keeps pilling upNot obvious it should be added to a Service
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
ProductService
Wish List
CustomerTracking
www.outsystems.com 30 © 2010 OutSystems – all rights reserved
Workflows & notifications
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
OrderService
Emails w/ order updates
www.outsystems.com 31 © 2010 OutSystems – all rights reserved
Front-End Composite frameworksExtra capabilities
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
ProductService
• …•Database• Workflows• Notifications
OrderService
www.outsystems.com 32 © 2010 OutSystems – all rights reserved
The impact of Agile
www.outsystems.com 33 © 2010 OutSystems – all rights reserved
Changes ripple through the whole architecture
www.outsystems.com 34 © 2010 OutSystems – all rights reserved
Different teams. Different processes
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
www.outsystems.com 35 © 2010 OutSystems – all rights reserved
Speed is driven by the slowest
ProductCatalog(custom
build)
OrderManagement
(ERP)
Show Products
ProductService
www.outsystems.com 36 © 2010 OutSystems – all rights reserved
Most effective scenario
ProductCatalog(custom
build)
OrderManagement
(ERP)
Show Products
ProductService
www.outsystems.com 37 © 2010 OutSystems – all rights reserved
Continuous integration is a must
www.outsystems.com 38 © 2010 OutSystems – all rights reserved
Automatebuild/test/staging/deploy
www.outsystems.com 39 © 2010 OutSystems – all rights reserved
Performance & ScalabilityWhat happens when a web page takes 5 sec to render?
www.outsystems.com 40 © 2010 OutSystems – all rights reserved
Multiple choke pointsInstrument all dependencies
9 to 5Order
Management(ERP)
Customer Portal
Product Service
Slow service?
Slow legacy
access?
Slow db access?
Infrastructurecollapse?
www.outsystems.com 41 © 2010 OutSystems – all rights reserved
Architecture is driven by project needs
www.outsystems.com 42 © 2010 OutSystems – all rights reserved
Front-ends “attract” functionality
www.outsystems.com 43 © 2010 OutSystems – all rights reserved
Refactor Services out of the Composites
ProductCatalog(custom
build)
OrderManagement
(ERP)
Customer Portal
ProductService
CustomerTracking
CustomerService
CustomerTracking
… and more.
Call Center
www.outsystems.com 44 © 2010 OutSystems – all rights reserved
On-demand SOABottom-up instead of top-down
www.outsystems.com 45 © 2010 OutSystems – all rights reserved
Agile SOA When you reach a
tipping point
www.outsystems.com 46 © 2010 OutSystems – all rights reserved
Agile SOA Services/composites are categorized in
“fast” and “slow” change
www.outsystems.com 47 © 2010 OutSystems – all rights reserved
Agile SOA Projects decrease in Time and Effort
www.outsystems.com 48 © 2010 OutSystems – all rights reserved
Agile SOA 3 classes of teams
SOA Governance toolsProject Management
www.outsystems.com 49 © 2010 OutSystems – all rights reserved
Agile SOA Managing change backlog is organized by
business line
www.outsystems.com 50 © 2010 OutSystems – all rights reserved
Agile SOA Excels are sucked into central databases
www.outsystems.com 51 © 2010 OutSystems – all rights reserved
Agile SOA Hidden legacy data is sucked into services
www.outsystems.com 52 © 2010 OutSystems – all rights reserved
Agile SOA Real-time reporting
Analytics
www.outsystems.com 53 © 2010 OutSystems – all rights reserved
Agile SOA successTechnology vs. People
www.outsystems.com 54 © 2010 OutSystems – all rights reserved
• Web 2.0 • Workflow/Processes• Biz Logic • Integration• Database• WS protocols• Scheduling• Notifications
• Business centric• Stable team• Senior people• Collaborative• Communication
Technology vs. People
• Scalable
• SOA governance
• Refactoring
• Integrated life cycle
• Performance Instrumentation & Management
• Project Management
www.outsystems.com 55 © 2010 OutSystems – all rights reserved
OutSystemsMarketing Pitch
www.outsystems.com 56 © 2010 OutSystems – all rights reserved
www.outsystems.com 57 © 2010 OutSystems – all rights reserved
Where does it fit?
www.outsystems.com 58 © 2010 OutSystems – all rights reserved
agileplatform
The Agile PlatformFront-end Web 2.0 enterprise applications
www.outsystems.com 59 © 2010 OutSystems – all rights reserved
agileplatform
The Agile PlatformComplete Agile SOA platform
www.outsystems.com 60 © 2010 OutSystems – all rights reserved
agileplatform
agileplatform
The Agile PlatformCoexist with ESBs
Enterprise Service Bus
www.outsystems.com 61 © 2010 OutSystems – all rights reserved
agileplatform
agileplatform
The Agile PlatformCoexist with BPMS
Enterprise Service Bus
BPMS
www.outsystems.com 62 © 2010 OutSystems – all rights reserved
Customers135 enterprises in 16 industries (7 countries)
www.outsystems.com 63 © 2010 OutSystems – all rights reserved
www.outsystems.com 64 © 2010 OutSystems – all rights reserved
Over 600 apps delivered
www.outsystems.com 65 © 2010 OutSystems – all rights reserved
Thank you.Get this presentation at
http://bit.ly/agile-soa