Obstacles in Software Development with Agile Production
January 30, 2017

Hamesh Chawla
Zephyr

The past few years have seen some very dramatic and eye-opening changes in software development. We have fully redefined what it means to be fast in product development and deployment, as well as the skills and tools required to be successful in the space.

Take agile software development: Agile software development methods were introduced less than a decade ago, but their popularity has seen a steady rise. However, according to Zephyr's annual How the World Tests report, while a large number of the companies are adopting agile testing methodologies, they face a fair number of obstacles in successful adoption. Here, we’ll cover the key findings of that report and what they mean for those looking to adopt an agile testing process.

Automation is What Ails You

As we know, the beauty and pain of agile development is the timeline. Relying on two to three week sprint cycles means little to no room for human error. By the time it comes to testing, developers are facing only three or so business days to configure and write test cases. That often leaves a small one or two day window to fix, retest, and go live. That is a very short time frame to do a lot of work. These timelines often lead to developers looking for ways to automate the testing processes. A lack of automation, or not enough time to run all the testing required, can create a huge barrier to agile adoption for many companies, regardless of size.

In fact, 35 percent of our survey respondents ranked the lack of automation testing as the biggest obstacle to agile adoption. If you can’t automate your testing, then you likely can’t meet the sprint timelines required for agile adoption, or you are forced to reduce the functionality that you implement per sprint. This means having to decrease the number of new features or functions your teams deliver, which is not good news for you or your customers.

The Skill Gap

If an automation testing solution is all that you need to successfully adopt agile processes throughout an organization, that shouldn’t be hard to fix, right? Well, not quite. While many enterprise level organizations are adopting automated testing, there is a distinct gap in the critical skills required for continuous delivery. According to our survey, 45 percent of respondents indicated that was the primary reason they had not yet automated their testing.

There are few different ways to tackle this problem based on the needs and size of the company. The first is to invest in acquiring the skills to write the necessary automated testing scripts quickly and efficiently. That can mean focusing on additional training to upgrade the current team skills, or recruiting new employees who already have them. Keep in mind, once you decide on an automation tool, you have a smaller talent pool to recruit from and you will have to pull people off client work for training. However, if you adopt the tool without the skills training, your team won’t fully understand the tool, and thus will be slow to adopt and apt to manual errors.

Another option, of course, is to keep labor costs lower and not invest in automation testing. This course of action will minimize your automated test repository, potentially extending the delivery timeline. That means you likely won’t meet your sprint deadlines. There is also a chance customers may view your platform or delivery as inflexible due to its lack of customizable features.

Size Matters

Larger, enterprise-level companies have a much higher percentage of automated testing in place when compared to smaller companies. Smaller organizations likely subscribe to the “shipped is better than perfect” methodology. If you’re a startup or a small company, you simply don’t have the time or the money to invest in automation -- you are laser focused on getting the project completed and out the door.

According to our research, while 70 percent of smaller companies follow an agile methodology, only 30 percent use automated testing in deployments frequently. They lack the resources in terms of staffing or money, or they suffer from a lack of a defined development and testing process. Regardless of the why, smaller companies need access to both the training and solutions for real-time, automated test management to improve their products.

Finding the “One”

Depending on the technology your company is looking to develop, there may not be a sufficient automation tool available on the market. Once you have picked your platform, the number of solutions is already limited. For example, if you’re developing a website, you’re already limited to automated testing tools specially designed for websites. Our survey reported 22 percent of respondents identifying missing tool sets or a support deficit within the current process as preventers to automated testing. Among the automated tools available, many may have a support deficit, further narrowing available automation tools.

The Devil You Know

Without a team experienced in automated testing, it can be very hard to determine a threshold of what can be automated versus what can be manually tested. This often creates a decision roadblock. And, as with any decision roadblock, most chose to travel the path they know, rather than take a chance on the path they don’t. In this case, from small to enterprise-level companies, 13 percent of our respondents claim to struggle with what to automate and what to manually test, creating roadblocks to automation deployment. They choose the devil they know (manual testing), rather than the one they don’t (automation), even though manual testing is likely less efficient and actually adding time to deployments.

Companies everywhere are looking for the best ways to speed up delivery and deployment of their products. Even though agile processes are one of the best methods to do so, the adoption of these processes is far from easy. Automated testing solutions can help make that transition a little easier, but there are barriers. The training and resources required to overcome those barriers to automation are worth the investment. Each of these points clearly requires a C-level, top-down understanding of the impact of adopting agile production without a successful automation partner and what it can mean to an organization and its long-term success.

Hamesh Chawla is VP Engineering at Zephyr.

The Latest

November 15, 2018

Serverless infrastructure environments are set to become the dominant paradigm for enterprise technology deployments, according to a new report — Why the Fuss About Serverless? — released by Leading Edge Forum ...

November 14, 2018

What to automate? Which parts of the delivery process are good candidates? Which applications will benefit from automation? At first, those sound like silly questions. Automate all your repetitive processes. If you think that you'll do the same thing manually more than once, automate it. Why would you waste your creative potential and knowledge by doing things that are much better done by scripts? Yet, an average company does not adhere to that logic. Why is that? ...

November 13, 2018

I'd love to see more security automation deeply integrated into the development process. Everybody knows since the 1990s that security as an afterthought just doesn't work, yet we keep doing it. The reason, I think, is because it's very hard to automate security ...

November 09, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 5, the final installment, covers deployment and production ...

November 08, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 4 is all about security ...

November 07, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 3 covers the development environment and the infrastructure ...

November 06, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 2 covers the coding process ...

November 05, 2018

Everyone talks about automating the software development lifecycle (SDLC) but the first question should be: What should you automate? With this question in mind, DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 1 starts with by-far the most popular recommendation: Testing ...

October 31, 2018

Halloween is a time for all things spooky, but not when it comes to your mobile app experience. A poor experience can not only scare off your customers but keep them away for good ...

October 30, 2018

As organizations have embraced open source, they have become polyglot — using multiple programming languages and technology stacks to accomplish software and hardware related tasks. Enterprises are caught between the benefits provided by a polyglot environment and the complexities and challenges these environments bring. Ultimately, if the situation remains unchecked, polyglot will kill your enterprise ...

Share this