How to Streamline Your Software’s Time-To-Market

By Lindsey Tishgart | December 29, 2015

typing

Typing by Sebastien Wiertz | CC BY 2.0

In today’s professional world, software drives every aspect of nearly every business. A recent Forrester Research brief discussed how application development and delivery professionals (AD&D pros) must focus their energy on the common source of industry inefficiency: wasting their developers’ time.

Developers are now being recognized for the artistry that coding requires; they can’t simply turn peak creativity times on or off or pause and restart on cue. It can take a developer 10-15 minutes before getting “back in the zone” after a five minute interruption, which means that it only takes 4-5 small interruptions for an hour to be lost. Nothing is more destructive to developer productivity than context switching, jumping from task to disparate task. AD&D pros must absorb how developers work best, and use that knowledge to minimize interruptions and speed up the feedback process in order for developers to create software in a timely and efficient manner.

The Forrester report covered the various interruptions developers face along with a step-by-step process for AD&D pros to streamline the software development lifecycle.

Developer Interruption Sources

We all know developer interruptions are extremely detrimental in the timeline of software development, but the good news is that AD&D pros can address each specific interruption by slowly and subtly evolving development and corporate culture.

There are three key types of developer interruptions to watch out for:

Random, pop-up interruptions. Coworkers visiting a developer’s desk unannounced can drive developers to seek out quiet spaces around the office. Even code reviews fall into this category when they come out of nowhere, says Forrester. So what’s the solution to this? Schedule code reviews with team members and create a working environment that minimizes distractions for developers, (i.e., private offices, desk space away from high trafficked areas).

Corporate overhead (i.e., meetings). You can’t avoid meetings, but you can better plan around them by planning the frequency and timing of them. To salvage a developer’s time, make sure regularly scheduled team meetings are set aside and email developers to attend a meeting beforehand instead of just pulling them in.

Self-inflicted interruptions. This is the most common and easiest to become a victim of. Almost every employee uses some type of chat or collaboration tool within their organization, and developers are no exception. If they’re getting bombarded with chat requests, the company timelines will suffer from less-than-optimal efficiency. AD&D pros should keep developers within the same physical space when working at the office and dedicate space for specific work activities (aside from at their desk).

Developer Time Interruptions & Forrester’s Solution

Developer Time Interruptions & Forrester’s Solution

Slow Feedback Slows Time-To-Market

There is one additional cause of inefficiency for developers: loss of production due to slow feedback on code quality. The longer it takes to discover defects in quality, the longer it’ll take before a developer fixes them. Everyone is familiar with the five-second rule; after dropping food on the floor, you have five seconds to safely pick it up and eat it. Think of software defects similarly: the longer they fester before a developer fixes them, the more dangerous they become. A lengthier lag means more time for the developer to re-establish the context for development, which breaks down into two phases: writing the initial code and addressing defects in quality.

Writing the initial code. Developers build a new application by breaking it down into functional pieces and writing or composing each individual component. Building the first component is relatively easy, but every subsequent component adds on difficulty. The code, unfortunately, is not always written perfectly the first time, therefore defects are introduced early into the process.

Address defects in quality. Fixing defects explodes the context prep time. Developers have to halt their current task and go back to recreate the context under which they initially developed the component. Fixing bugs becomes increasingly difficult the further back in time you go, therefore finding defects immediately is crucial. Reduce the time to build software components by reducing the time between committing the code and fixing issues in quality.

 Faster Feedback Means Faster Delivery (Forrester)

Faster Feedback Means Faster Delivery (Forrester)

Five Steps to Reduce Development Time

AD&D pros can control efficiency in the software development life cycle by managing or eliminating developer interruptions. Forrester Research has compiled their five-step process to reduce the time that developers spend changing context from one task to another.

  1. Write simpler code with modern tools.

The more complex the code, the more time-consuming it will be to debug due to the setup time to recreate context. Keep it simple. Also, incorporate type-checking tools like Facebook Flow to catch errors during the initial development time.

  1. Automate, automate, automate.

As Mediafly senior QA engineer Chris Cortellini said in the report, “There’s more focus on test automation today than ever before.” Leverage continuous integration tools, such as Jenkins, to reduce the time to report defects to developers.

  1. Move performance testing to the left.

Change the perception that testing is what you do after code is written. Quality is key to software development, so make performance and security part of day-one testing.

  1. Cluster meetings into coordinated blocks.

Meetings are necessary, but you can coordinate them into continuous blocks at the beginning or end of the day.

  1. Ensure project managers have a technology background.

This allows for early triage of defects along with the ability to see small problems and address them quickly.

Distractions and interruptions are everywhere and almost unavoidable, but not impossible to overcome. By focusing on creating an efficient work environment for developers, and streamlining feedback and defect repairs, AD&D pros can achieve a faster time-to-market.

Evaluating software can sometimes seem as daunting as creating it. Looking for help in evaluating a SaaS vendor for your company? Download our cheat sheet for the right questions to ask (including the one that you MUST ask)!




SaaS vendor Cheat Sheet Download


Comments are closed.