BETA
This is a BETA experience. You may opt-out by clicking here

More From Forbes

Edit Story

12 Common Software Development Obstacles And How To Tackle Them

Forbes Technology Council
POST WRITTEN BY
Expert Panel, Forbes Technology Council

Developing and launching new software can be complicated. Within each step of the development and approval process, there are a lot of variables. While things can go right, there’s even more that can go wrong—and with missteps comes the possibility of having to go back to square one.

As frustrating as these obstacles are, there are ways to overcome them without severely hindering your progress. Below, Forbes Technology Council members share some of the most common issues that arise during a software development project and how teams can solve them.

1. Integration Issues

It can be challenging to integrate what you are making with tools your audience may already be using. You need to find ways to make your product compatible using application program interfaces (APIs) or partnering with these other tech brands on ways to work together. - Chalmers Brown, Due

2. Communication Breakdowns

Software development requires a team collaborating to address consumer needs. Every member has to know a project’s coding strategy, objective and goals. Otherwise, the fallout affects the manager’s reputation and the team’s output. A good manager will make sure each team member knows a project’s multiple facets and immediately educate new hires. This will increase synergy and productivity. - Arnie Gordon, Arlyn Scales

Forbes Technology Council is an invitation-only community for world-class CIOs, CTOs and technology executives. Do I qualify?

3. Unrealistic Or Mismanaged Timelines

One of the most common issues in project management is the infamous timeline. Being realistic in setting timelines with projects is critical. One of the best ways to avoid delay in timelines is to brainstorm at the beginning of the project. Ask the team, “What will break during this process?” When a bump in the timeline does occur, gather everyone and find the best way forward and around it. - Maria Mast, Management and Network Services, LLC

4. Feature Overload

The largest obstacle that I’ve observed when it comes to launching a new software package is the desire to put too much into one application. To overcome this, be more specialized rather than more general—look for sub-niches. Remember, less is more when we are trying to solve a problem. - Richard Wang, Coding Dojo

5. Lack Of Alignment Between Sponsor And User Needs

Your executive sponsor’s opinion about what should be built must be secondary to what the end user needs. Let’s face it, the chances that your boss is a Steve Jobs visionary are pretty slim, despite what they might think of themselves. Educate them on the importance of letting the market tell you what features to build. - Kishan Patel, Kunai

6. Underestimating The Task At Hand

Developers know that there can always be bumps on the road to deployment. Save yourself some time and hardship by scheduling in some extra cushion time in case it is needed. In the worst-case scenario, that space is used to conduct tests on the project or take some much-needed time off. Many times developers underestimate the task at hand, and an extra cushion can alleviate pressure and anxiety. - Alexandro Pando, Xyrupt Technologies

7. Not Pinpointing The Real ‘Why’

The most common problem is building the wrong thing. Businesses need to understand not just what a customer is asking for, but “why” they’re asking for this specifically. The driver of a horse and cart may ask for a better whip to go faster; in reality, he needs a vehicle, but he doesn’t know it. Businesses need to determine the “why” to provide the most effective software for their customers. - Bob Davis, Plutora

8. Underestimating The Importance Of Quality Assurance

To guarantee customer satisfaction, the importance of QA should never be underestimated. To obtain high-performing and secure products, code quality has to be reviewed and tested continuously throughout the development stages. Outsourcing companies can certainly alleviate this process, providing expert testers who can lead an integrated approach to maximize the quality of your project. - Nacho De Marco, BairesDev

9. Feature Creep

Feature creep—the excessive expansion of new features—is a common obstacle I’ve seen software developers confront. The most effective way to combat this issue is to consistently and thoroughly conduct customer development interviews to validate each feature and make sure it meaningfully targets the issue you set out to solve. Continue to conduct these interviews even after a successful launch. - Kison Patel, DealRoom

10. Security-Related Release Delays

Developers are often focused on getting good, working code (software) out the door. Often times, security is an afterthought that can really delay your ability to release code. It behooves developers and product managers to have security built into the development lifecycle and built into their go-to-market strategies, including any security certifications and/or other industry requirements. - James Carder, LogRhythm

11. Not Defining A Target Audience

Your new software might be cool, but not everyone will think it is. If you don’t define a target audience for your software, then you’ll waste a lot of time and money marketing it to consumers who have no interest or use for it at all. So it’s important to define your target audience before launching your new software. Do thorough audience and market research to find the best audience. - Thomas Griffin, OptinMonster

12. Underestimating The Demand

One of the unforeseen problems or obstacles to releasing new software or services is being unprepared for a highly successful launch. Often companies underestimate the volume of traffic their infrastructure may experience with the launch of a new product. Building systems that can quickly scale on demand is critical in avoiding this obstacle and ensuring your site does not crash on release. - Chris Kirby, Retired