Skip to the main content.

Curiosity Modeller

Design Complex Systems, Create Visual Models, Collaborate on Requirements, Eradicate Bugs and Deliver Quality! 

Product Overview Solutions
Success Stories Integrations
Book a Demo Release Notes
Free Trial Brochure
Pricing  

Enterprise Test Data

Stream Complete and Compliant Test Data On-Demand, Removing Bottlenecks and Boosting Coverage!

Explore Curiosity's Solutions

Our innovative solutions help you deliver quality software earlier, and at less cost!

robot-excited copy-1              AI Accelerated Quality              Scalable AI accelerated test creation for improved quality and faster software delivery.

palette copy-1                      Test Case Design                Generate the smallest set of test cases needed to test complex systems.

database-arrow-right copy-3          Data Subsetting & Cloning      Extract the smallest data sets needed for referential integrity and coverage.

cloud-cog copy                  API Test Automation              Make complex API testing simple, using a visual approach to generate rigorous API tests.

plus-box-multiple copy-1         Synthetic Data Generation             Generate complete and compliant synthetic data on-demand for every scenario.

file-find copy-1                                     Data Allocation                  Automatically find and make data for every possible test, testing continuously and in parallel.

sitemap copy-1                Requirements Modelling          Model complex systems and requirements as complete flowcharts in-sprint.

lock copy-1                                 Data Masking                            Identify and mask sensitive information across databases and files.

database-sync copy-2                   Legacy TDM Replacement        Move to a modern test data solution with cutting-edge capabilities.

Explore Curiosity's Resources

See how we empower customer success, watch our latest webinars, read our newest eBooks and more.

video-vintage copy                                      Webinars                                Register for upcoming events, and watch our latest on-demand webinars.

radio copy                                   Podcasts                                  Listen to the latest episode of the Why Didn't You Test That? Podcast and more.

notebook copy                                           eBooks                                Download our latest research papers and solutions briefs.

calendar copy                                       Events                                          Join the Curiosity team in person or virtually at our upcoming events and conferences.

book-open-page-variant copy                                          Blog                                        Discover software quality trends and thought leadership brought to you by the Curiosity team.

face-agent copy                               Help & Support                            Find a solution, request expert support and contact Curiosity. 

bookmark-check copy                            Success Stories                            Learn how our customers found success with Curiosity's Modeller and Enterprise Test Data.

file-document-multiple (1) copy                                 Documentation                            Get started with the Curiosity Platform, discover our learning portal and find solutions. 

connection copy                                  Integrations                              Explore Modeller's wide range of connections and integrations.

Better Software, Faster Delivery!

Curiosity are your partners for designing and building complex systems in short sprints!

account-supervisor copy                            Meet Our Team                          Meet our team of world leading experts in software quality and test data.

calendar-month copy                                         Our History                                Explore Curiosity's long history of creating market-defining solutions and success.

check-decagram copy                                       Our Mission                                Discover how we aim to revolutionize the quality and speed of software delivery.

handshake copy                            Our Partners                            Learn about our partners and how we can help you solve your software delivery challenges.

account-tie-woman copy                                        Careers                                    Join our growing team of industry veterans, experts, innovators and specialists. 

typewriter copy                             Press Releases                          Read the latest Curiosity news and company updates.

bookmark-check copy                            Success Stories                          Learn how our customers found success with Curiosity's Modeller and Enterprise Test Data.

book-open-page-variant copy                                                  Blog                                                Discover software quality trends and thought leadership brought to you by the Curiosity team.

phone-classic copy                                      Contact Us                                           Get in touch with a Curiosity expert or leave us a message.

4 min read

If testing was a race, data would win every time

If testing was a race, data would win every time

Okay, so that title doesn’t make complete sense. However, if you read to the end of this article, all will become clear. I’m first going to discuss some of the persistent barriers to in-sprint testing and development. I will then discuss a viable route to delivering rigorously tested systems in short sprints.

The two kingpins in this approach will be data and automation, working in tandem to convert insights about what needs testing into rigorous automated tests. But first, let’s consider why it remains so challenging to design, develop and test in-sprint.

20 years on, siloes remain THE challenge in software delivery

As the Agile Manifesto approaches 20 years old, the software delivery lifecycle remains riddled with silos. These silos not only create time-consuming miscommunication, they also amplify manual effort. Each time information moves from one silo to the next, it needs to be converted from one format to another:

The Open Testing Platform remedies siloes across the SDLC

These “information hops” delay releases and introduce defects as misinterpretation creeps in at every stage. Let’s now look at each silo in more detail.

Design

From a test and development perspective, gathering requirements in text-based documents and disparate diagrams is simply not fit for purpose. The fragmentary written user stories and documents are far removed from the precise logic that needs developing. Meanwhile, there is typically little or no formal dependency mapping between the text-based formats and static diagrams.

Development

Software designs therefore introduce bugs when translated into source code, in turn creating time-consuming rework. In fact, multiple studies estimate that requirements are responsible for over half of all defects,[i] while further research estimates that developers spend half their time fixing bugs.[ii] Design defects therefore take up a large chunk of the time that should be spent developing new functionality.

Testing

The static nature of requirements further increases manual effort in testing. “Flat” documents and diagrams are not ready built for automation, and often testers are forced to convert designs manually into test cases, data and scripts.

In addition to wasting time, these manual processes undermine quality. A simple system today will likely require thousands of tests before a release. Faced with informal and incomplete requirements, testers cannot systematically or automatically identify and create the tests that need executing before a release.

Manual test design instead focuses almost exclusively on “happy path” scenarios, over-testing these at the expense of scenarios most likely to cause bugs. Meanwhile, out-of-date and invalid tests pile up, creating test failures that push testing further behind releases.

Automation can help – but only if it extends beyond test execution

Automation can, of course, help accelerate many of these manual processes. However, “test automation” to date has focused near-exclusively on one task: executing tests. In so doing, it has introduced a raft of manual processes, while overlooking the key question of quality.

Test automation in many instances has introduced a new silo, along with all the time and effort associated with it. Manual processes introduced by test automation include copious test scripting, as well overwhelming script maintenance. Meanwhile, the speed and volume of test execution multiplies data provisioning bottlenecks, while out-of-date or inconsistent data leads to time-consuming test failures.

Automating test execution further does nothing to improve test quality, nor help with the identification of which tests to run. Test designers and automation engineers still face the challenge of having more system logic than they could ever execute in-sprint.

Prioritising the wrong tests not only wastes addition time in test scripting, it also exposes critical systems to damaging production defects. Test execution automation is therefore a critical component of in-sprint testing, but it is not a solution in itself.

“Data-driven” testing, but not as you know it

Fortunately, a solution is starting to present itself. It lies in data, and the ways that we can apply automation to data widely available today. This opens the door to prioritising tests accurately and automatically in-sprint, generating the tests needed before the next release.

The proliferation of (automated) technologies across DevOps toolchains has led to an associated proliferation of data. What’s more, this data is now being outputted in formats that can be captured and analysed.

If we combine this data with automated analysis and test generation, we can begin populating up-to-date test artefacts into the same tools from which the data was gathered. This then creates a closed feedback loop, collecting and analysing more data to drive rigorous testing in-sprint.

Let’s now look at the components of this “data-driven” approach to in-sprint testing.

Connectivity

The first prerequisite in this approach is connectivity between technologies across the application delivery lifecycle. If disparate tools cannot pass information between one another, silos will persist. There will not be enough data to analyse, and nor will it be possible to populate test suites across tools.

Connectivity between technologies is therefore paramount, and in-sprint technology must be built on open technologies. Fortunately, Robotic Process Automation and DevOps Orchestration tools can help to rapidly integrate disparate technologies.

Baseline data

The data produced by these disparate tools must furthermore be collected, feeding a baseline of data to harvest. Tools can then be applied to harvest insights from this single source of truth, informing testers of what needs testing in-sprint. Tools for analysis include, but are not limited to, AI and ML-based technologies.

In-sprint test and data generation

At this point, data has been gathered and analysed, indicating what needs testing in-sprint. But, how can we build and execute the tests required to act on this information?

The first component lies in automating test generation, linking this generation to the analysis of baseline data. The second lies in automating the generation and allocation of data based on the tests that have been generated. This can be achieved with tools that find and make data as tests run, providing rich and compliant data for every test on-the-fly.

Test Modeller

If you have all of these components, you have what Curiosity call Test Modeller. Test Modeller curates data from across the whole application development ecosystem, identifying exactly what needs testing in-sprint. It furthermore builds the tests and data needed to run those tests, using data-driven insights to achieve in-sprint test automation.

Rather than starting from the system requirements and working through a series of silos, Test Modeller analyses data from across the whole development ecosystem. It thereby informs and updates testing as the requirements or environment change, rather than playing a constant game of catch-up. In a nutshell, Test Modeller enables in-sprint test automation.

Get in touch if you’d like to discuss the project further.

Speak with an expert

Footnotes:

[i] P Mohan, A Udaya Shankar, K JayaSriDevi. “Quality Flaws: Issues and Challenges in Software Development”. Computer Engineering and Intelligent Systems 3, no. 12 (2012): 40-48), 44. www.iiste.org/Journals/index.php/CEIS/article/viewFile/3533/3581 on 30-May-2019. Bender RBT. Requirements Based Testing Process Overview (2009), 2, 16. http://benderrbt.com/Bender-Requirements%20Based%20Testing%20Process%20Overview.pdf. Soren Lausen and Otto Vinter. “Preventing  Requirement  Defects:  An  Experiment  in  ProcessImprovement”. Requirements Engineering 6 (2001): 37-50, 38. http://www.itu.dk/people/slauesen/Papers/PrevDefectsREJ.pdf

[ii] Tom Britton, Lisa Jeng, Graham Carver, Paul Cheak, Tomer Katzenellenbogen. “Reversible Debugging Software“. Report, created for the Judge Business School, University of Cambridge (2013), 5. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.370.9611&rep=rep1&type=pdf

8 Criteria for a Modern Test Data Solution

8 Criteria for a Modern Test Data Solution

In 2023, (test) data availability, quality, and compliance risks remain a major headache for software development.

Read More
Quality Testing Requires Quality Data

Quality Testing Requires Quality Data

My two most recent blogs have made the case for a new TDM paradigm called “Test Data Automation”. The first article considered how a logistical...

Read More
The Test Data You Need, When and Where You Need it.

The Test Data You Need, When and Where You Need it.

Low level, repetitious tasks underpin all business activity. However, these labor-intensive activities are still frequently performed manually, to...

Read More
We Need to Talk About Test Data “Strategy”

We Need to Talk About Test Data “Strategy”

For many organisations, test data “best practices” start and end with compliance. This reflects a tendency to focus on the problem immediately in...

Read More
Removing Quality Bottlenecks in CI/CD and DevOps

Removing Quality Bottlenecks in CI/CD and DevOps

Curiosity often discuss barriers to “in-sprint testing”, focusing on techniques for reliably releasing fast-changing systems. These solutions...

Read More
5 Test Data Challenges That Every CTO Should Know About

5 Test Data Challenges That Every CTO Should Know About

At Curiosity, we talk about test data extensively, because we believe test data is repeatedly neglected in testing and development discussions....

Read More
The Democratisation of (Test) Data

The Democratisation of (Test) Data

A glance at industry research from recent years shows that test data remains one of the major bottlenecks to fix in DevOps and CI/CD:

Read More
Is test data the engineering problem to solve in 2024?

Is test data the engineering problem to solve in 2024?

It’s 2024 and the risks associated with poor test data practices show no signs of abating.

Read More
Test Data is make or break for parallel testing and development

Test Data is make or break for parallel testing and development

Today, there is a greater-than-ever need for parallelisation in testing and development. “Agile” and iterative delivery practices hinge on teams...

Read More