by Nataraj Narayan, Managing Director, AutonomIQ at STeP-IN SUMMIT 2018 15th International Conference on Software Testing on August 31, 2018 at Taj, MG Road, Bengaluru
DevoxxFR 2024 Reproducible Builds with Apache Maven
Code to Release using Artificial Intelligence and Machine Learning
1. The Future of AI
in Software Development
Confidential - Do Not Distribute 19/19/2018
2. Confidential - Do Not Distribute 29/19/2018
The Application Landscape Has Grown Complex
Monolithic Applications
running on big-iron server
hardware
Monolithic and Distributed
Applications running on
distributed hardware
90’s and 2000’s Mid-2000’s
Today and FutureMonolithic Monolithic
Distributed
~100s of
applications
~10s of
applications
~100s apps, SaaS
and services
3. Confidential - Do Not Distribute 39/19/2018
SAAS, PAAS & IAAS – Today’s world of cloud services
SaaS
PaaS
IaaS
4. Confidential - Do Not Distribute 49/19/2018
Revenue recognition in SAAS – paradigm difference
5. Confidential - Do Not Distribute 59/19/2018
Deployment Velocity Has Grown Exponentially
- Faster time to deliver and higher value
“we have gone from 5 deployments
per week last year to 80 deployments
per week this year”
- DevOps @ large insurance
6. Confidential - Do Not Distribute 69/19/2018
Creating Less Time to Manage Change
Monolithic, Distributed, SaaS
and Micro-service applications
running on cloud
Today and Future
~100s apps, SaaS
and services
LESS TIME TO IDENTIFY FIXES
Testing and quality is overlooked at the expense of velocity
POOR QUALITY RELEASES
Business wants to focus on delivering meaningful outcomes to
stakeholders, not putting out fires in the process
UNABLE TO KEEP UP WITH THE CHANGES
Software economy, and the “uber” moment is disrupting every business
Monolithic
Distributed
SaaS & Micro-services
7. Confidential - Do Not Distribute 79/19/2018
Autonomous Technology Will Be Key in Delivering Value
By 2020, DevOps initiatives will
cause 50% of enterprises to
implement continuous testing
using frameworks and open-
source quality tools. This has
significantly created the need for
new age tools to evolve
Organizations seeking to
improve their delivery
capabilities quickly and that no
one vendor’s tools cover the
entire delivery pipeline
With enterprises aspiring to be
digital, autonomous technology
is not perceived as a fringe
investment but as a key element
of the digital journey
8. Confidential - Do Not Distribute 89/19/2018
So What Does the Software Development Lifecycle Look Like Today?
• Most of the software testing
lifecycle remains manual
• Without Automation, QA is
forced to be reactive
instead of proactive
Status of Quality
Automated
Manual
Requirements
Test Plan
Test
Cases
Test Scripts
Test Data
Test
Environment
Test
Execution
Defects
Results
9. Confidential - Do Not Distribute 99/19/2018
DevOps Definition
DevOps = Development + Operations
Dev Ops
Prerequisites:
Automate everything: test, build, deployment, migration,
rollback, …
Everything is code: infrastructure, config, environment,
schemas, apps, …
Bring development and operations closer together
10. Confidential - Do Not Distribute 109/19/2018
Testing Remains the Biggest Bottleneck
8 Developers per 2 Week Sprint 640 Total Hours
~ 50 Functional Test Cases per Sprint
3-5 Hours to Create and Maintain Each Test Cases
150 – 200 Hours Total Spend Scripting
Time
Spent
Scripting
31%
Other
Development
Activities
69%
Code Commit
Build
Test Case Creation
Test Script Creation
Test Data Generation
Test Execution
Code Promotion
Code Commit to Production Centers Around QA
20%
25%
27%
30%
31%
47%
52%
Test Data
Management
Monitoring
Code Development
Code Reviews
Deploying to
production
Planning
Testing
Testing Creates the Most Delays
in the Development Process1
1. Source: Gitlab Developer Survey 2018
11. 9%
23%
34%
Continuously
Deploy to
Production
Continuously
Deploy to Labs
Continuously
Integrate Software
Changes
Continuous Processes Remain a
Dream
8%
45%
47%
Cost
Reduction
Time to Market
Quality
Quality is the Top Release Priority for
Enterprises
Confidential - Do Not Distribute 119/19/2018
Organizations Have Failed to Keep Up
22%
44%
53%
30%
47%
64%
Security
Testing
Integration
Testing
Functional
Testing
Manual Automated
Companies Rely on Manual Testing
While Automation Falls Short
Source: voke Market SnapshotTM Report: Release Management
12. Confidential - Do Not Distribute 129/19/2018
Autonomous Testing Solves Quality Problem
automate
discovery of
your landscape
detect
changes and
execute
actions
continuously
learn and
improve
any SaaS
application
any Web
application
any API or
micro-service
Autonomously Test, Release and Deploy software
NLP Engine
Symbolic Representation Engine
aIQ Base Model aIQ Learning
(Supervised, Unsupervised, & Active)
aIQ Testing Neural Database
Plan Execute Analyze
Test Case Test Script Test Data
Sensing &
Analyzing
Deciding
Controlling
Testing
13. Confidential - Do Not Distribute 139/19/2018
automate discovery
of application
landscape
detect changes
and execute
actions
continuously
learn and
improve
any SaaS
application
any Web
application
any API or
micro-service
Any User
Existing Environment
CI/CD Tools
Plan
Execute
Analyze
All Testers Developers Business
Analysts
Autonomously Test, Deploy, and Release Applications
Test Case Test Script Test Data
Cross
Platform
Cross
Browser
Continuous
Change Impact Pattern Matching
Dynamically Generate Test Data Using AI
Continuously Execute Cross-Browser & Cross-
Platform
Deploy in the Cloud or On-Premise
Integrate with DevOps & CI/CD Tools
Autonomously Generate Automation From
Existing Test Assets
Create New Automation at the Click of a Button
Self Heal Automation As Application Changes
Seamlessly Maintain Automation as Test Cases
Change
14. Confidential - Do Not Distribute 149/19/2018
Why Autonomous Testing
Eliminate traditional bottlenecks
to empower development
teams with the ability to
dynamically train software to
deliver AI created test cases, AI
created test scripts, AI
generated test data, and AI
defect reports.
Leverage AI to redefine IT
processes, from QA to
cybersecurity, while seamlessly
managing complexity through a
scalable, maintainable platform
Cut across the enterprise to
reduce total cost of quality,
accelerate time to value, and
provide accountability for end to
end business process
15. Confidential - Do Not Distribute 159/19/2018
Customer Transformation
Manually Writing and
Maintaining Test Scripts
Cloning, Masking, and
Subsetting Test Data
Sporadic Test Execution Across
Disparate Tools
Poor QA Reporting, No Metrics
for Improvement
Script-less Testing
Dynamic Data Generation
Continuous Test Execution
Automatic Reporting, Real Time
Defect Resolution
16. Want to Learn More?
nataraj@autonomiq.io
Confidential - Do Not Distribute 169/19/2018
Notes de l'éditeur
Autonomous Testing Solves a Few Key Problems:
Time to create automation: Allows companies to create automation in Minutes, not hours just by recording, also allowing them to turn the recording into editable English steps
Brownfield Cases: All other approaches force companies to redo all their existing automation – we take all the English cases they have and seamless onboard
Maintenance at Scale: AI self-heals all automation until test is suppose to fail
Continuous Execution Cross Browser & Cross Platform
Feature Velocity: Taking maintenance time out of sprint allows cycle to be compressed
Quality Coverage: Takes company from ~30% coverage to being able to create & maintain test automation as fast as they can think it up
Other Benefits:
Auditability, Fungibility of Skills (making it non-technical), Works in existing CI/CD frameworks