Parasoft, a global leader in automated software testing solutions, today announced complete support for MISRA C++ 2023 with the upcoming release of Parasoft C/C++test 2023.2.
The end of 2019 is almost in sight, which makes this the perfect time to review the financial impact that DevOps has had on your business thus far. Formulating your lessons learned will help you make the best adjustments and get the most out of 2020.
For many organizations, it is challenging to quantify the return on investment in adopting DevOps processes. This may be due to a variety of reasons; most notably lack of consistent data, focusing on metrics that aren't aimed at goals or process issues, and not collecting data quickly enough to enable real-time feedback loops. You want to validate the success of your DevOps transformation, but you need to figure out how to put a numeric value on it as a whole.
Among the many benefits of DevOps, two in particular stand out: the ability to deliver value more quickly, and to do so with consistently high-quality and security. These translate into a direct benefit to both your business and to your customers.
A primary enabler of these benefits is automation, especially test automation. With the "shift-right" of testing towards production, together with the "shift-left" to earlier in development, automated testing is a fundamental and pervasive DevOps activity that directly impacts ROI, and provides concrete metrics that allow organizations to monitor and improve it.
How to Quantify ROI
The nature of DevOps means that we can measure the effect of our actions very quickly. With updates delivered into production almost continuously, it's possible to directly measure the impact of a software update on the end-user and show how a change to the software delivery process affects the efficiency of the software delivery pipeline.
Since testing-related metrics can be directly linked to value, they should be tracked by product teams and aggregated to guide strategy. CIOs and other senior executives must connect and map this data across their portfolios to optimize business decisions and align execution with planning. Here are three categories of measurements that will help you understand how testing is impacting your business outcomes.
Delivery Speed
The quicker the team is able to deliver a user story into production, the more productive the team. In many organizations, throughput is hampered by manual testing, which is typically time-consuming and error-prone. While there is still a place for manual exploratory testing, repetitive checking is an ideal candidate for automation. After the initial investment in automating a test, it can be run quickly every time a code change is made and deliver significant productivity benefits.
While automating tests and measuring the time a test takes to run is a good start, teams should also be looking at considerations such as:
■ Is your testing environment and framework sitting idle a lot of the time? Think about ways to maximize your utilization to get the most benefit.
■ How long does it take to provision testing environments? Can you reduce the amount of time it takes, by automating the deployment and configuration of the environment and test data?
■ How long does it take to recover if there's a failure, whether due to an issue with the testing framework, a bug in the software, or a configuration issue? How can you reduce that time?
Quality Level
Testing by itself is not enough. With limited resources, we have to ensure that whatever we do delivers maximum value. In addition to testing-related data that can be captured during development, there are some useful quality-related metrics that can be captured from production and used to optimize testing in development. Two key measurements that should be regularly evaluated are:
■ Does testing correlate to the most critical parts of the application? Your efforts should be weighted towards testing those parts of the application that are frequently used, or key processes that the end-user performs within the application.
■ How many defects are escaping into production, and what is the impact of these defects? Use that information to reduce the number of high-impact defects remaining undetected and unresolved before reaching the end-user and minimize downtime in production.
Value to the End-User
No matter how quickly you deliver a flawless feature to your customers, if they don't want it, don't need it, or don't use it, it has no value. The work that went into developing, testing, delivering and operating the feature becomes waste, which DevOps abhors. Avoid this by keeping your end-user involved throughout your software delivery process. Understand their needs, and continuously reevaluate and adapt to changing requirements to ensure that you deliver the right thing:
■ Once a feature is in production, monitor how it's being used, solicit feedback, and use that information to guide further investment.
■ If end-users are simply unaware of the feature, consider how you can proactively update them about new features and behaviors, to leverage investment to the maximum.
Look Back to Look Forward
While it's true that you can't manage something that you aren't measuring, just capturing measurements for the sake of it will not help you improve. Consider the metrics that will help you deliver more value to your customers, and make sure that you are monitoring them on an ongoing basis. Focus on consistently and reliably obtaining relevant and actionable data and use that information to improve your bottom line in 2020.
Industry News
Solo.io achieved the Amazon Elastic Kubernetes Service (Amazon EKS) Ready designation from Amazon Web Services (AWS).
CircleCI implemented a gen2 GPU resource class, leveraging Amazon Elastic Compute Cloud (Amazon EC2) G5 instances, offering the latest generation of NVIDIA GPUs and new images tailored for artificial intelligence/machine learning (AI/ML) workflows.
XM Cyber announced new capabilities that provide complete and continuous visibility into risks and vulnerabilities in Kubernetes environments.
PerfectScale has achieved the Amazon Elastic Kubernetes Service (Amazon EKS) Ready designation from Amazon Web Services (AWS).
BMC announced two new product innovations, BMC AMI DevX Code Insights and BMC AMI zAdviser Enterprise.
Rafay Systems announced the availability of the Rafay Cloud Automation Platform — the evolution of its Kubernetes Operations Platform — to enable platform teams to deliver automation and self-service capabilities to developers, data scientists and other cloud users.
Bitrise is integrating with Amazon Web Services (AWS) to provide compliance-conscious companies with greater access to CI/CD capabilities for mobile app development.
Armory announced a new unified declarative deployment capability for AWS Lambda.
Amazon Web Services (AWS) and Salesforce announced a significant expansion of their long standing, global strategic partnership, deepening product integrations across data and artificial intelligence (AI), and for the first time offering select Salesforce products on the AWS Marketplace.
Veracode announced product innovations to enhance the developer experience. The new features integrate security into the software development lifecycle (SDLC) and drive adoption of application security techniques in the environments where developers work.
Couchbase announced a new Capella columnar service on Amazon Web Services (AWS), enabling organizations to harness real-time analytics to build adaptive applications.
Redgate announced the launch of Redgate Test Data Manager, which simplifies the challenges that come with Test Data Management (TDM) and modern software development across multiple databases.
mabl announced an integration with GitLab, the AI-powered DevSecOps platform.
FusionAuth announced the availability of new software development kits (SDKs) that support Angular, React and Vue JavaScript front-end frameworks.