SlideShare a Scribd company logo
© Curiosity Software Ireland Ltd. 2023
Housekeeping
You have all joined the Zoom webinar as an attendee. You can listen but cannot speak live.
Please connect to audio via phone or VOIP or phone, using the “Audio Settings” menu.
If you have questions as we go along, please hit Q&A to enter them using instant messenger.
If you have issues with audio or video, please use “Chat” and message “Hosts and panelists”.
We’ll have a live Q&A at the end.
This session will be recorded and the recording shared publicly.
© Curiosity Software Ireland Ltd. 2023
From coverage guesswork
to targeted test generation
January 18th 2023
James Walker
Chief Technology Officer, Curiosity
James.Walker@Curiosity.Software
@CuriositySoft
Peter Elger
Founder and CEO, fourTheorem
Peter.Elger@fourTheorem.com
@pelger
© Curiosity Software Ireland Ltd. 2023
Requirements
Why fourTheorem, why Curiosity, why
today?
UNDERSTANDING OBSERVABILITY
Test Results
Tests
Code
Coverage
© Curiosity Software Ireland Ltd. 2023
From coverage guesswork to targeted
test generation
1. fourTheorem: Looking “under the hood” of complex systems
2. The under-used applications of deep monitoring to testing
3. Demo: Boost coverage and get the right test results
4. Q&A and next steps
© Curiosity Software Ireland Ltd. 2023
fourTheorem
Looking under the hood of complex systems
© Curiosity Software Ireland Ltd. 2023
About fourTheorem
• Our mission: Enable our clients to realize the full benefits of modern
cloud.
• By providing world class products, services, training and consulting
expertise to reliably and repeatably help our customers transform their
businesses and technology to modern cloud.
• AWS Advanced Consulting Partner
• Expertise in Serverless, cloud migration, application modernization
© Curiosity Software Ireland Ltd. 2023
About fourTheorem
• Open-source creators
• Checkout Middy framework
• Community contributors
• Checkout AWS Bites podcast
• Book Authors
• Regular conference speakers
• AWS Serverless hero program
© Curiosity Software Ireland Ltd. 2023
Example Work
• Reinsurance on premise risk analysis platform. Legacy monolith.
Execution times constraining business growth
• The Goal. Transform the risk analysis platform to run on AWS. Utilize
commodity, serverless infrastructure. Deliver horizontal scale.
• The Outcome
• Execution time cut by 90%
• Code base reduced by 70%
• Multiple parallel risk forecasting now a reality
• High Performance Computing using Serverless at scale!
© Curiosity Software Ireland Ltd. 2023
Fission - by fourTheorem
• Fission is technology that has been developed by fourTheorem in
collaboration with Dublin City University.
• The research was partly funded under the Disruptive Technologies
Innovation Fund (DTIF)
• The original goal was NOT testing related, more oriented towards
the decomposition of software monoliths (as will be described).
• However, there are interesting applications in the testing domain.
© Curiosity Software Ireland Ltd. 2023
Fission by fourTheorem
• Decision support for application
modernization
• Analyzes large applications (circa 500K
LOC and upwards)
• Determines optimal service decomposition
• Drastically shortens time to value for
migrations
© Curiosity Software Ireland Ltd. 2023 11
© FSSA Consortium 2021
CSE
1970 1980 1990 2000 2010
Waterfall
V-Model
RIPP
(Dupont)
RAD
[---- Other Agile Methods ---->
XP
RUP Lean
DevOps
Multiple Years
<1 day
Microservices
Large Increments
Continuous
Many Months
Spiral
Scrum
© Paul Clarke, 2021.
Established/Classical software
architectures constrain our
ability to:
- Ship frequently
- Ship small valuable new
features in isolation
- Take full economic
advantage of serverless
computing
Historical Perspective - Unit of Scale
© Curiosity Software Ireland Ltd. 2023
Industry Background
Physical
On-Prem
Virtual
On-Prem
Virtual
On-Cloud
Containers
On-Cloud
Serverless
Traditional
Slow to Change
Monolithic
High TCO
High
Maintenance
Cloud 2.0
Highly Agile
Distributed
Lower TCO
Lower
Maintenance
Commoditization
The rise of the Serverless computing is a
natural result of commoditization.
Serverless/Cloud 2.0 will become the de-facto
standard for enterprise compute.
© Curiosity Software Ireland Ltd. 2023
Why Fission?
• To realize the benefits of the next wave of cloud technology
organizations need to migrate.
• Direct lift and shift is often sub-optimal, resulting in high TCO.
• Decayed, monolithic, poorly maintained and poorly understood
code is often the cause.
• E.g. circa 1.5M LOC, over 20 years old, current maintenance
programmers understand perhaps 10% of the code
© Curiosity Software Ireland Ltd. 2023
Monolith to (micro) Services
• Fission analyzes an application to establish the Domain Boundaries
as it runs
• Allows architects to play out decomposition scenarios
• To establish the optimal extraction patterns
• Automatically extracts code from the application into services
• Reducing analysis time from months to days
• Reducing the risk associated with modernization
© Curiosity Software Ireland Ltd. 2023
Fission
• Collection agents gather
static and dynamic data
sets.
• Analysis pipeline
determines optimal domain
structure
• Results data used to extract
services
• No code leaves the
building!
© Curiosity Software Ireland Ltd. 2023
Static Data Collection
• Static Collection is concerned with
the application source code.
• Static Collection works by breaking
code into symbols which form an
Abstract Syntax Tree (AST)
© Curiosity Software Ireland Ltd. 2023
Dynamic Data Collection
• Dynamic Collection is concerned with the
running application.
• Dynamic collection works by placing an
agent on a running system. The agent
instruments the code to collect stack
traces as the program runs.
• Dynamic collection records what actually
happens on a running system by tracing
execution paths through the codebase.
© Curiosity Software Ireland Ltd. 2023
Analytical Pipeline
• Applies multiple, composable, statistical machine learning algorithms
to the Dynamic and Static data sets.
• This includes both structural and semantic type analysis of the data sets.
• The pipeline is tuned by a human in the loop to play out different
scenarios and zone in on the optimal decomposition.
• Essentially the system identifies the logical domain structure within
the application and figures out the fracture lines between them.
© Curiosity Software Ireland Ltd. 2023
Console - Recommended Services
• Services categorized
by extraction
coefficient
• Measures coupling
and ‘overlappedness’
of services
© Curiosity Software Ireland Ltd. 2023
Console - Service Coupling
• View of the coupling between
services
• Coupling means the method
calls from one service to
another
© Curiosity Software Ireland Ltd. 2023
Console - Overlap
• View of the
‘overlapped-ness’ of
services
• Overlapping means
methods that are
contained in both
services
© Curiosity Software Ireland Ltd. 2023
Console - Service Details
• URLS, Database
access, methods that
constitute a service
© Curiosity Software Ireland Ltd. 2023
Fission by fourTheorem
• So, how does this help with software testing?
© Curiosity Software Ireland Ltd. 2023
The under-used
applications of this
approach to testing
Boosting coverage, adding traceability and enriching test assertions
© Curiosity Software Ireland Ltd. 2023
Did your tests get the right result, for
the right reason?
Typical UI
testing
What happened
beneath the page?
</>
UI test
Now you’ve
partially tested
the service layer
Request
Response
+ API
testing
And how do you know that bugs haven’t masked bugs?
Is your system a black box or can you see its inner workings?
How are you targeting and maintaining tests?
But did the UI
interactions and API
calls update databases
correctly?
 Error message  Loaded screen
© Curiosity Software Ireland Ltd. 2023
Test Modeller
Synchronise data from across
the SDLC to generate targeted
tests in-sprint
Find / Make / Allocate Test Data
Run Results
Tests
New
Iteration
 Seamless collaboration
 Better RQMTs  Better code
 Rigorous testing in-sprint
 Quality with every release
Test Automation
Test Automation
Test Cases
User stories
BDD/Gherkin
Scans and
Recordings
Requirements
Diagrams
Living Documentation
Cross-functional teams
BAs, POs,
testers, Dev,
SDETs, DBAs.
Find / Make / Allocate Test Data
© Curiosity Software Ireland Ltd. 2023
Test Modeller with fourTheorem
</>
…for your
frameworks
…And systems
Generate tests…
Call
Highly granular run results
Target coverage
Boost traceability  Accelerate testing/dev
Stories
</>
Tests Code
© Curiosity Software Ireland Ltd. 2023
+ DB comparisons during
your UI and API tests
Auto-generate UI & API tests
Database Comparison Engine
Baseline Data Data After Testing
</>
Your Automation
Frameworks
 Test across all
system tiers
 Boost coverage
 Granular run
results
Demo
© Curiosity Software Ireland Ltd. 2023
© Curiosity Software Ireland Ltd. 2023
Test Modeller x fourTheorem
Know what’s going on
under the covers
Focus where it will have
the greatest impact
Continuously generate
targeted tests and stories
Link test cases to code modules
Track tests at the data & code path levels
Domain and class analysis over time
Quality governance
Discovery
Pay off technical debt
Generate stories, tests and scripts
Integrated Test Data Automation
Risk and coverage-based test creation
© Curiosity Software Ireland Ltd. 2023
Questions and Discussion
© Curiosity Software Ireland Ltd. 2023
Carry on the conversation?
• Book a demo and discussion with a Curiosity expert!
• Connect fourTheorem on LinkedIn and connect to speak with Peter.
• Try Test Modeller. Visit Testmodeller.io for a free trial and online tutorials.
• Follow Curiosity Software on LinkedIn and @CuriositySoft on Twitter for
resources and news.
• Follow fourTheorem on LinkedIn and @fourTheorem on Twitter.
© Curiosity Software Ireland Ltd. 2023
Thank you
James.Walker@Curiosity.Software
Peter.Elger@fourTheorem.com
Ad

Recommended

PPTX
Curiosity Software Presents: Isolating blast radiuses for testing - How to no...
Curiosity Software Ireland
 
PPTX
Curiosity and Sauce Labs present - When to stop testing: 3 dimensions of test...
Curiosity Software Ireland
 
PPTX
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Curiosity Software Ireland
 
PPTX
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity Software Ireland
 
PPTX
Curiosity and SelectorsHub present: Generate Rigorous Automated Tests - and L...
Curiosity Software Ireland
 
PPTX
Curiosity and Testery Present: Hitting the right test coverage for CI/CD
Curiosity Software Ireland
 
PPTX
In the beginning there was a model: Using requirements models to drive rigoro...
Curiosity Software Ireland
 
PPTX
Curiosity and Lemontree present - Data Breaks DevOps: Why you need automated ...
Curiosity Software Ireland
 
PPTX
The Broken Promise of Test Automation: Why are we still hand-cranking tests?
Curiosity Software Ireland
 
PPTX
Improving Software quality for the Modern Web
Euan Garden
 
PPTX
Development Has Moved On: Test data needs to catch up with containers
Curiosity Software Ireland
 
PPTX
Unit 2 - Test Case Design
Selvi Vts
 
PDF
Future-of-test-automation-trends-and-predictions-for-2025-and-beyond.pdf
Sun Technologies
 
PDF
Future of Software Testing and What are the Trends to follow in 2023.pdf
AnanthReddy38
 
PPTX
1,2,3 … Testing : Is this thing on(line)? with Mike Martin
NETUserGroupBern
 
PDF
The Next Wave of Software Testing_ Trends Shaping 2025.pdf
Steve Wortham
 
PPTX
Five reasons to model during QA
Curiosity Software Ireland
 
PDF
The Evolution of Software Testing_ Trends and Innovations.pdf
brijeshdeep4798
 
PDF
AI Makes Software Testing Smarter.pdf
George Ukkuru
 
PDF
Advanced Debugging Techniques | Applitools in Action.pdf
Applitools
 
PDF
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
University of Antwerp
 
PDF
Hardening
Diego Pacheco
 
PPTX
Curiosity and Sogeti Present - The state of test data in 2022: New challenges...
Curiosity Software Ireland
 
PDF
Automated testing-whitepaper
imdurgesh
 
PPTX
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity Software Ireland
 
PPTX
ICST2016 Keynote - What got us here won't get us there: Trends and challenges...
Adam Porter
 
PPTX
Test data automation: delivering quality data at speed
Curiosity Software Ireland
 
PPTX
Unit Testing and TDD 2017
Xavi Hidalgo
 
PPTX
Curiosity Software Presents: Modelling for Continuous Testing
Curiosity Software Ireland
 
PPTX
Curiosity and Infuse Consulting Present: Sustainable Test Automation Strategi...
Curiosity Software Ireland
 

More Related Content

Similar to Curiosity and fourTheorem present: From Coverage Guesswork to Targeted Test Generation (20)

PPTX
The Broken Promise of Test Automation: Why are we still hand-cranking tests?
Curiosity Software Ireland
 
PPTX
Improving Software quality for the Modern Web
Euan Garden
 
PPTX
Development Has Moved On: Test data needs to catch up with containers
Curiosity Software Ireland
 
PPTX
Unit 2 - Test Case Design
Selvi Vts
 
PDF
Future-of-test-automation-trends-and-predictions-for-2025-and-beyond.pdf
Sun Technologies
 
PDF
Future of Software Testing and What are the Trends to follow in 2023.pdf
AnanthReddy38
 
PPTX
1,2,3 … Testing : Is this thing on(line)? with Mike Martin
NETUserGroupBern
 
PDF
The Next Wave of Software Testing_ Trends Shaping 2025.pdf
Steve Wortham
 
PPTX
Five reasons to model during QA
Curiosity Software Ireland
 
PDF
The Evolution of Software Testing_ Trends and Innovations.pdf
brijeshdeep4798
 
PDF
AI Makes Software Testing Smarter.pdf
George Ukkuru
 
PDF
Advanced Debugging Techniques | Applitools in Action.pdf
Applitools
 
PDF
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
University of Antwerp
 
PDF
Hardening
Diego Pacheco
 
PPTX
Curiosity and Sogeti Present - The state of test data in 2022: New challenges...
Curiosity Software Ireland
 
PDF
Automated testing-whitepaper
imdurgesh
 
PPTX
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity Software Ireland
 
PPTX
ICST2016 Keynote - What got us here won't get us there: Trends and challenges...
Adam Porter
 
PPTX
Test data automation: delivering quality data at speed
Curiosity Software Ireland
 
PPTX
Unit Testing and TDD 2017
Xavi Hidalgo
 
The Broken Promise of Test Automation: Why are we still hand-cranking tests?
Curiosity Software Ireland
 
Improving Software quality for the Modern Web
Euan Garden
 
Development Has Moved On: Test data needs to catch up with containers
Curiosity Software Ireland
 
Unit 2 - Test Case Design
Selvi Vts
 
Future-of-test-automation-trends-and-predictions-for-2025-and-beyond.pdf
Sun Technologies
 
Future of Software Testing and What are the Trends to follow in 2023.pdf
AnanthReddy38
 
1,2,3 … Testing : Is this thing on(line)? with Mike Martin
NETUserGroupBern
 
The Next Wave of Software Testing_ Trends Shaping 2025.pdf
Steve Wortham
 
Five reasons to model during QA
Curiosity Software Ireland
 
The Evolution of Software Testing_ Trends and Innovations.pdf
brijeshdeep4798
 
AI Makes Software Testing Smarter.pdf
George Ukkuru
 
Advanced Debugging Techniques | Applitools in Action.pdf
Applitools
 
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
University of Antwerp
 
Hardening
Diego Pacheco
 
Curiosity and Sogeti Present - The state of test data in 2022: New challenges...
Curiosity Software Ireland
 
Automated testing-whitepaper
imdurgesh
 
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity Software Ireland
 
ICST2016 Keynote - What got us here won't get us there: Trends and challenges...
Adam Porter
 
Test data automation: delivering quality data at speed
Curiosity Software Ireland
 
Unit Testing and TDD 2017
Xavi Hidalgo
 

More from Curiosity Software Ireland (11)

PPTX
Curiosity Software Presents: Modelling for Continuous Testing
Curiosity Software Ireland
 
PPTX
Curiosity and Infuse Consulting Present: Sustainable Test Automation Strategi...
Curiosity Software Ireland
 
PPTX
Curiosity and Windocks Present - Turn your production systems into test-ready...
Curiosity Software Ireland
 
PPTX
Curiosity and Lemontree present - Test Data Automation: Move from slow and ma...
Curiosity Software Ireland
 
PPTX
Curiosity Software and RCG Global Services Present - Solving Test Data: the g...
Curiosity Software Ireland
 
PPTX
Curiosity and EPI-USE Labs present - Testing across SAP and non-SAP systems: ...
Curiosity Software Ireland
 
PPTX
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software Ireland
 
PPTX
Model-Based Testing for Cypress
Curiosity Software Ireland
 
PPTX
Model-Based Testing for ALM Octane: Better tests, built faster
Curiosity Software Ireland
 
PPTX
To Open Banking and Beyond: Developing APIs that are Resilient to every new I...
Curiosity Software Ireland
 
PPTX
Model-Based Test Automation: Automate more, automate faster, automate accurately
Curiosity Software Ireland
 
Curiosity Software Presents: Modelling for Continuous Testing
Curiosity Software Ireland
 
Curiosity and Infuse Consulting Present: Sustainable Test Automation Strategi...
Curiosity Software Ireland
 
Curiosity and Windocks Present - Turn your production systems into test-ready...
Curiosity Software Ireland
 
Curiosity and Lemontree present - Test Data Automation: Move from slow and ma...
Curiosity Software Ireland
 
Curiosity Software and RCG Global Services Present - Solving Test Data: the g...
Curiosity Software Ireland
 
Curiosity and EPI-USE Labs present - Testing across SAP and non-SAP systems: ...
Curiosity Software Ireland
 
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Curiosity Software Ireland
 
Model-Based Testing for Cypress
Curiosity Software Ireland
 
Model-Based Testing for ALM Octane: Better tests, built faster
Curiosity Software Ireland
 
To Open Banking and Beyond: Developing APIs that are Resilient to every new I...
Curiosity Software Ireland
 
Model-Based Test Automation: Automate more, automate faster, automate accurately
Curiosity Software Ireland
 
Ad

Recently uploaded (20)

PDF
Y - Recursion The Hard Way GopherCon EU 2025
Eleanor McHugh
 
PPTX
Test Case Design Techniques – Practical Examples & Best Practices in Software...
Muhammad Fahad Bashir
 
PDF
How Automation in Claims Handling Streamlined Operations
Insurance Tech Services
 
PPTX
IObit Driver Booster Pro 12 Crack Latest Version Download
pcprocore
 
PPTX
Threat Modeling a Batch Job Framework - Teri Radichel - AWS re:Inforce 2025
2nd Sight Lab
 
PPTX
Simplify Insurance Regulations with Compliance Management Software
Insurance Tech Services
 
PDF
Building Geospatial Data Warehouse for GIS by GIS with FME
Safe Software
 
PDF
Modern Platform Engineering with Choreo - The AI-Native Internal Developer Pl...
WSO2
 
PDF
Digital Transformation: Automating the Placement of Medical Interns
Safe Software
 
PDF
Streamlining CI/CD with FME Flow: A Practical Guide
Safe Software
 
PDF
Best Practice for LLM Serving in the Cloud
Alluxio, Inc.
 
PDF
Which Hiring Management Tools Offer the Best ROI?
HireME
 
PDF
Heat Treatment Process Automation in India
Reckers Mechatronics
 
PDF
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
PDF
Simplify Task, Team, and Project Management with Orangescrum Work
Orangescrum
 
PDF
Automated Testing and Safety Analysis of Deep Neural Networks
Lionel Briand
 
PDF
Canva Pro Crack Free Download 2025-FREE LATEST
grete1122g
 
PPTX
arctitecture application system design os dsa
za241967
 
PPTX
HYBRIDIZATION OF ALKANES AND ALKENES ...
karishmaduhijod1
 
PPTX
Top Time Tracking Solutions for Accountants
oliviareed320
 
Y - Recursion The Hard Way GopherCon EU 2025
Eleanor McHugh
 
Test Case Design Techniques – Practical Examples & Best Practices in Software...
Muhammad Fahad Bashir
 
How Automation in Claims Handling Streamlined Operations
Insurance Tech Services
 
IObit Driver Booster Pro 12 Crack Latest Version Download
pcprocore
 
Threat Modeling a Batch Job Framework - Teri Radichel - AWS re:Inforce 2025
2nd Sight Lab
 
Simplify Insurance Regulations with Compliance Management Software
Insurance Tech Services
 
Building Geospatial Data Warehouse for GIS by GIS with FME
Safe Software
 
Modern Platform Engineering with Choreo - The AI-Native Internal Developer Pl...
WSO2
 
Digital Transformation: Automating the Placement of Medical Interns
Safe Software
 
Streamlining CI/CD with FME Flow: A Practical Guide
Safe Software
 
Best Practice for LLM Serving in the Cloud
Alluxio, Inc.
 
Which Hiring Management Tools Offer the Best ROI?
HireME
 
Heat Treatment Process Automation in India
Reckers Mechatronics
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
Simplify Task, Team, and Project Management with Orangescrum Work
Orangescrum
 
Automated Testing and Safety Analysis of Deep Neural Networks
Lionel Briand
 
Canva Pro Crack Free Download 2025-FREE LATEST
grete1122g
 
arctitecture application system design os dsa
za241967
 
HYBRIDIZATION OF ALKANES AND ALKENES ...
karishmaduhijod1
 
Top Time Tracking Solutions for Accountants
oliviareed320
 
Ad

Curiosity and fourTheorem present: From Coverage Guesswork to Targeted Test Generation

  • 1. © Curiosity Software Ireland Ltd. 2023 Housekeeping You have all joined the Zoom webinar as an attendee. You can listen but cannot speak live. Please connect to audio via phone or VOIP or phone, using the “Audio Settings” menu. If you have questions as we go along, please hit Q&A to enter them using instant messenger. If you have issues with audio or video, please use “Chat” and message “Hosts and panelists”. We’ll have a live Q&A at the end. This session will be recorded and the recording shared publicly.
  • 2. © Curiosity Software Ireland Ltd. 2023 From coverage guesswork to targeted test generation January 18th 2023 James Walker Chief Technology Officer, Curiosity [email protected] @CuriositySoft Peter Elger Founder and CEO, fourTheorem [email protected] @pelger
  • 3. © Curiosity Software Ireland Ltd. 2023 Requirements Why fourTheorem, why Curiosity, why today? UNDERSTANDING OBSERVABILITY Test Results Tests Code Coverage
  • 4. © Curiosity Software Ireland Ltd. 2023 From coverage guesswork to targeted test generation 1. fourTheorem: Looking “under the hood” of complex systems 2. The under-used applications of deep monitoring to testing 3. Demo: Boost coverage and get the right test results 4. Q&A and next steps
  • 5. © Curiosity Software Ireland Ltd. 2023 fourTheorem Looking under the hood of complex systems
  • 6. © Curiosity Software Ireland Ltd. 2023 About fourTheorem • Our mission: Enable our clients to realize the full benefits of modern cloud. • By providing world class products, services, training and consulting expertise to reliably and repeatably help our customers transform their businesses and technology to modern cloud. • AWS Advanced Consulting Partner • Expertise in Serverless, cloud migration, application modernization
  • 7. © Curiosity Software Ireland Ltd. 2023 About fourTheorem • Open-source creators • Checkout Middy framework • Community contributors • Checkout AWS Bites podcast • Book Authors • Regular conference speakers • AWS Serverless hero program
  • 8. © Curiosity Software Ireland Ltd. 2023 Example Work • Reinsurance on premise risk analysis platform. Legacy monolith. Execution times constraining business growth • The Goal. Transform the risk analysis platform to run on AWS. Utilize commodity, serverless infrastructure. Deliver horizontal scale. • The Outcome • Execution time cut by 90% • Code base reduced by 70% • Multiple parallel risk forecasting now a reality • High Performance Computing using Serverless at scale!
  • 9. © Curiosity Software Ireland Ltd. 2023 Fission - by fourTheorem • Fission is technology that has been developed by fourTheorem in collaboration with Dublin City University. • The research was partly funded under the Disruptive Technologies Innovation Fund (DTIF) • The original goal was NOT testing related, more oriented towards the decomposition of software monoliths (as will be described). • However, there are interesting applications in the testing domain.
  • 10. © Curiosity Software Ireland Ltd. 2023 Fission by fourTheorem • Decision support for application modernization • Analyzes large applications (circa 500K LOC and upwards) • Determines optimal service decomposition • Drastically shortens time to value for migrations
  • 11. © Curiosity Software Ireland Ltd. 2023 11 © FSSA Consortium 2021 CSE 1970 1980 1990 2000 2010 Waterfall V-Model RIPP (Dupont) RAD [---- Other Agile Methods ----> XP RUP Lean DevOps Multiple Years <1 day Microservices Large Increments Continuous Many Months Spiral Scrum © Paul Clarke, 2021. Established/Classical software architectures constrain our ability to: - Ship frequently - Ship small valuable new features in isolation - Take full economic advantage of serverless computing Historical Perspective - Unit of Scale
  • 12. © Curiosity Software Ireland Ltd. 2023 Industry Background Physical On-Prem Virtual On-Prem Virtual On-Cloud Containers On-Cloud Serverless Traditional Slow to Change Monolithic High TCO High Maintenance Cloud 2.0 Highly Agile Distributed Lower TCO Lower Maintenance Commoditization The rise of the Serverless computing is a natural result of commoditization. Serverless/Cloud 2.0 will become the de-facto standard for enterprise compute.
  • 13. © Curiosity Software Ireland Ltd. 2023 Why Fission? • To realize the benefits of the next wave of cloud technology organizations need to migrate. • Direct lift and shift is often sub-optimal, resulting in high TCO. • Decayed, monolithic, poorly maintained and poorly understood code is often the cause. • E.g. circa 1.5M LOC, over 20 years old, current maintenance programmers understand perhaps 10% of the code
  • 14. © Curiosity Software Ireland Ltd. 2023 Monolith to (micro) Services • Fission analyzes an application to establish the Domain Boundaries as it runs • Allows architects to play out decomposition scenarios • To establish the optimal extraction patterns • Automatically extracts code from the application into services • Reducing analysis time from months to days • Reducing the risk associated with modernization
  • 15. © Curiosity Software Ireland Ltd. 2023 Fission • Collection agents gather static and dynamic data sets. • Analysis pipeline determines optimal domain structure • Results data used to extract services • No code leaves the building!
  • 16. © Curiosity Software Ireland Ltd. 2023 Static Data Collection • Static Collection is concerned with the application source code. • Static Collection works by breaking code into symbols which form an Abstract Syntax Tree (AST)
  • 17. © Curiosity Software Ireland Ltd. 2023 Dynamic Data Collection • Dynamic Collection is concerned with the running application. • Dynamic collection works by placing an agent on a running system. The agent instruments the code to collect stack traces as the program runs. • Dynamic collection records what actually happens on a running system by tracing execution paths through the codebase.
  • 18. © Curiosity Software Ireland Ltd. 2023 Analytical Pipeline • Applies multiple, composable, statistical machine learning algorithms to the Dynamic and Static data sets. • This includes both structural and semantic type analysis of the data sets. • The pipeline is tuned by a human in the loop to play out different scenarios and zone in on the optimal decomposition. • Essentially the system identifies the logical domain structure within the application and figures out the fracture lines between them.
  • 19. © Curiosity Software Ireland Ltd. 2023 Console - Recommended Services • Services categorized by extraction coefficient • Measures coupling and ‘overlappedness’ of services
  • 20. © Curiosity Software Ireland Ltd. 2023 Console - Service Coupling • View of the coupling between services • Coupling means the method calls from one service to another
  • 21. © Curiosity Software Ireland Ltd. 2023 Console - Overlap • View of the ‘overlapped-ness’ of services • Overlapping means methods that are contained in both services
  • 22. © Curiosity Software Ireland Ltd. 2023 Console - Service Details • URLS, Database access, methods that constitute a service
  • 23. © Curiosity Software Ireland Ltd. 2023 Fission by fourTheorem • So, how does this help with software testing?
  • 24. © Curiosity Software Ireland Ltd. 2023 The under-used applications of this approach to testing Boosting coverage, adding traceability and enriching test assertions
  • 25. © Curiosity Software Ireland Ltd. 2023 Did your tests get the right result, for the right reason? Typical UI testing What happened beneath the page? </> UI test Now you’ve partially tested the service layer Request Response + API testing And how do you know that bugs haven’t masked bugs? Is your system a black box or can you see its inner workings? How are you targeting and maintaining tests? But did the UI interactions and API calls update databases correctly?  Error message  Loaded screen
  • 26. © Curiosity Software Ireland Ltd. 2023 Test Modeller Synchronise data from across the SDLC to generate targeted tests in-sprint Find / Make / Allocate Test Data Run Results Tests New Iteration  Seamless collaboration  Better RQMTs  Better code  Rigorous testing in-sprint  Quality with every release Test Automation Test Automation Test Cases User stories BDD/Gherkin Scans and Recordings Requirements Diagrams Living Documentation Cross-functional teams BAs, POs, testers, Dev, SDETs, DBAs. Find / Make / Allocate Test Data
  • 27. © Curiosity Software Ireland Ltd. 2023 Test Modeller with fourTheorem </> …for your frameworks …And systems Generate tests… Call Highly granular run results Target coverage Boost traceability  Accelerate testing/dev Stories </> Tests Code
  • 28. © Curiosity Software Ireland Ltd. 2023 + DB comparisons during your UI and API tests Auto-generate UI & API tests Database Comparison Engine Baseline Data Data After Testing </> Your Automation Frameworks  Test across all system tiers  Boost coverage  Granular run results
  • 29. Demo © Curiosity Software Ireland Ltd. 2023
  • 30. © Curiosity Software Ireland Ltd. 2023 Test Modeller x fourTheorem Know what’s going on under the covers Focus where it will have the greatest impact Continuously generate targeted tests and stories Link test cases to code modules Track tests at the data & code path levels Domain and class analysis over time Quality governance Discovery Pay off technical debt Generate stories, tests and scripts Integrated Test Data Automation Risk and coverage-based test creation
  • 31. © Curiosity Software Ireland Ltd. 2023 Questions and Discussion
  • 32. © Curiosity Software Ireland Ltd. 2023 Carry on the conversation? • Book a demo and discussion with a Curiosity expert! • Connect fourTheorem on LinkedIn and connect to speak with Peter. • Try Test Modeller. Visit Testmodeller.io for a free trial and online tutorials. • Follow Curiosity Software on LinkedIn and @CuriositySoft on Twitter for resources and news. • Follow fourTheorem on LinkedIn and @fourTheorem on Twitter.