Article

DevOps Testing as an enabler for Faster App Releases & High-Quality SW

November 10, 2021

– DMM: A Low-Code, OutSystems solution –

In a survey of more than 500 managers and DevOps professionals more than 78% see testing as a benefit rather than a bottleneck. (1)

DevOps aims to shorten the systems development life cycle and provide continuous delivery with high software quality. (2) As such, DevOps has already become a foundation for software development & deployment, across all industries and company sizes. Some businesses are achieving great results applying these best practices, while others struggle to do so.

The capacity to execute good software testing is a mandatory requirement for the delivery of high-quality software. More than 50% of survey respondents refer as the greatest value of testing the enablement of quicker releases and updates with confidence. (1)

Expectations for software quality are at their highest ever — customers have zero tolerance for poorly performing software. 73% of UAE consumers claim brands have one shot to impress them and if their digital service does not perform, they won’t use them again. (3) In an analysis of over 13.000 consumers, people don’t care about the “why” of something not working, 60% blame the brand or app with any problem in the digital service, with 72% believing it’s the brand’s responsibility to guarantee the solution works perfectly. (4)

(5)

The digital experience applies to both web and mobile. A Compuware study mentions that 79% consumers would only retry an app once or twice if it failed to work the first time. (6) Getting it right the first time is critical!

(6)

These expectations on SW quality are for both consumer and business applications – and one of the biggest challenges organizations face is that software testing must keep up! 

A combined 82% of survey respondents experienced either frequent or some slowdown in testing new software releases (1). This means that bugfixes and new features weren’t being offered in as good time-to-market as was possible, due to delays in software testing.

The speed of software development is increasing, namely with Low-Code platforms like OutSystems (7). And as such, the speed and quality of testing the software must also increase!

Being aware of this need, OutSystems offers a visual WYSIWYG development interface (Service Studio) already integrated with a DevOps platform (Service Center) to make it easier to manage dependencies and deployments – guaranteeing an impact analysis and that nothing breaks, even going as far as preventing harmful deployments. (8)

OutSystems also allows you to go several steps further in automating API and Unit testing than many other platforms (9), helping you how to do UI testing with Selenium (10), all features offered with the purpose of increasing your DevOps performance (11) and guaranteeing you are taking the most return possible out of the OutSystems platform.

However, there is one aspect of testing that is not built-in the OutSystems platform, which is the ability to get “production like”, anonymized data, out-of-box, for use in testing – quality assurance (QA) tests, performance tests, pen testing, security tests, business tests, etc..

For data migration, OutSystems refers the clients to either manually build their own scripts (which is a complex, risky and time consuming approach) (12), or to use a partner solution like our Data Migration Manager (DMM) – the only off-the-shelf product available for quick direct use through the OutSystems Forge marketplace (13), and #1 solution for Enterprise level, highly complex and high volume data copy in OutSystems (besides other features like BPT and email migration, users & groups sync, data deletion, data anonymization, smart user migration, etc.). (14)

An IBM study found that an US insurance company was estimating 15% of their testing efforts to be just test data collection. (15)

The analysis showed that over 21% of the investment in the software development and QA, was being spent on data management – quoting the study, “data management tasks included moving data from back-end systems to identifying test data, data masking of sensitive data, skipped production defects due to unavailability of correct test data, manipulation of data for different scenarios, storage of test data”.

How are you doing your software tests and validations in OutSystems, is it an unreal expectation that also 1/5th of your budget is being spent in a similar non-optimized way of getting testing data?

A great solution like our DMM gives you:

  • Increased test coverage – for more business corner cases, volume performance issues, dependencies, etc. since nobody creates as many test cases as customers.
  • Cost reduction by finding bugs earlier (even directly in development), translating in a higher-quality application, increasing customer’s trust (internal or external customers).
  • Being able to easily refresh data in lower environments with changes that happened in production (delta or incremental data copies).
  • Being able to filter and segment what data you need in each lower environment (by any field, tenant, etc.).
  • Easy to configure, visual interface for data compliance and security, guaranteeing data masking and confidentiality.
  • Reusability of data sets, in training environments for example.
  • Migration speed and a 100% visual interface with a most simple ease of use, complementing your fast agile OutSystems teams and does not slow down your development cycles.

You may have some expectations in that you’ll be able to “do it yourself” when creating and managing test data, but how much are you losing with such an approach – losing in time, resources, money, maintainability, and avoidable risk? (16)

References:

  1. “The Role of Testing in a DevOps Environment”, a Techstrong Research white paper
  2. https://en.wikipedia.org/wiki/DevOps
  3. https://www.itp.net/software/99072-uae-consumers-now-have-zero-tolerance-for-poor-app-experiences
  4. https://www.appdynamics.com/blog/news/app-attention-index-2021/
  5. The App Attention Index 2021, By AppDynamics Team | Jul 20, 2021
  6. https://techcrunch.com/2013/03/12/users-have-low-tolerance-for-buggy-apps-only-16-will-try-a-failing-app-more-than-twice/
  7. https://www.outsystems.com/blog/posts/accelerate-software-development/
  8. https://www.outsystems.com/evaluation-guide/how-does-outsystems-support-testing-and-quality-assurance/
  9. https://success.outsystems.com/Documentation/How-to_Guides/DevOps/How_to_Automate_Unit_Testing_and_API_Testing
  10. https://success.outsystems.com/Documentation/How-to_Guides/DevOps/How_to_do_UI_testing_with_Selenium
  11. https://success.outsystems.com/Documentation/How-to_Guides/DevOps
  12. https://www.infosistema.com/data-migration-manager/roi/
  13. https://www.outsystems.com/forge/component-overview/2812/infosistema-dmm
  14. https://www.infosistema.com/data-migration-manager/
  15. https://testsigma.com/blog/why-test-data-management-is-more-important-than-you-think/
  16. https://www.infosistema.com/data-migration-expectation-vs-reality/
infosistema Inet