Most integration projects nowadays are leveraging DevOps and reaping huge benefits from this approach. Testing, however, is still one of the most overlooked yet critical factors for the success of this implementations. In this presentation, we will take a look at some techniques and alternatives to improve the QA process by automating key tasks
2. sysco.no
Arturo Viveros
• Principal Middleware Architect at Sysco
• Oracle ACE
• Twitter: @gugalnikov
• Blogs:
‣http://blog.sysco.no/
‣https://soamythbusters.wordpress.com
‣http://oracletechnocore.blogspot.no
About Me
3. sysco.no
Intro
• This session’s focus is on
Testing & QA for
Integration Projects
• Big problem: Integration
flows are usually critical
but mostly invisible to the
“End User”
• Thus, there are multiple
benefits from an
automated approach (and
plenty of alternatives)
4. sysco.no
Common Benefits of DevOps
• Increased Agility
✓ Better Time to Market
✓ Business & Technology Alignment
• Increased Quality
✓ Consistent Environments
✓ Increased Reliability
✓ Improved Resiliency
✓ Continuity of Business
• Reduced Overhead
✓ More time to focus on:
✓ solutions,
✓ testing
✓ and innovation
✓ Projects become more feasible
5. sysco.no
Integration Bugs = Silent Killers
• Especially within DevOps
• You’ll probably won’t notice until all hell
breaks loose
• …or at the worst possible time (under
peak load, crisis, contingency, etc.)
6. sysco.no
So, what to do?
Traditional testing cycle helps,
but not nearly enough,
especially because:
• Integrations are increasingly
multidimensional / multi-
channel (as opposed to point-to-
point)
• Service inventories / Middleware
platforms tend to become
bloated
• …or highly granular (depending
on implementation style)
9. Meterpoint Data Collection
IoT Devices
Customer
Management
Work Order
Management
Delivery Experience
Web
Data Warehouse
System
AQ
AQ
REST / FTP
SOAP
MQ
Event
Streams
REST
CQRS
Meterpoint Operator
Centralized Data Hub
Power Supplier
REST
AQ
Mobile
Sample Integration Architecture Open Modern Software Architecture (OMESA) | omesa.io
10. sysco.no
Problem is clear, but also… things move fast & without
Automation TCO can grow exponentially
Many factors can have an influence on this:
• Digital Transformation
• Hybrid Architectures
• Licensing
• Increase in the Technological Footprint
• Diversification
• Investment, Mergers, Alliances, Buyouts
• New technology adoption
• Etc.
Integration Solutions are not meant to remain static, so entropy & technical debt are
usually higher than with traditional applications
11. sysco.no
What to do: Automation Tools
– Abstraction
– Reusability
– Templating
– Collaboration
– Extensibility
– Simplicity
Most of the tooling out there supports and encourages automation
13. sysco.no
Automated Testing Success Story: The Netflix Strategy
Automate as much as possible, find sweet-spots for production deployment, provide
continuous (and precise) feedback to the development team
14. sysco.no
Automated Testing Success Story: IDT ATRT
Reduce costs and minimize human interaction by providing a distributed / open-source
testing platform
16. sysco.no
Lessons to be Learned
Embracing automation means putting dev & testing teams in position to
succeed and generate value to the organization
17. sysco.no
“Success is neither magical nor mysterious. Success is the natural
consequence of consistently applying basic fundamentals.”
Lessons to be Learned
18. sysco.no
Some Best Practices to Keep in Mind
• On-board developers & testers into the testing cycle by leveraging tools such
as Jira, Confluence, Trello, Slack, GitHub, Splunk, etc.
• Manage your infrastructure as code as much as possible (convention over
configuration)
• Measure continuously and keep baselines
• Use appropriate dashboards to engage stakeholders and establish thresholds /
confidence indicators
• Enforce standard QA policies at build time (using Jenkins, Maven, Ant, etc.)
• Test with “real” data sets as much as possible
• Testing should be a non-linear, never-ending cycle
• Document your story
• Never go into the mine without a canary
19. sysco.no
Thanks for attending!
• Feel free to contact me!
• Follow on Twitter: @gugalnikov
• Visit our blog:
• http://blog.sysco.no