Get in touch today: 0800 133 7948 or Email us
Talk to an expert: hello@atlascode.com

How to avoid the deadly pitfalls of software development

Posted on: January 31st, 2011 by Simon Swords

There are very few facets of life left that do not rely on software in some form or another. Buying groceries through a website, using custom built software at work and even talking to loved ones across the UK. Few people however pay any attention to how the software they rely on is made.

People who work with software development on a daily basis know that the smallest error at the design stage or oversight during testing can lead to major problems. By employing a few simple checks and balances you can easily ensure your projects are delivered on time.

Management Leads, Developers Follow

Many times when a project fails or is not on schedule the blame automatically falls on the software development team. While the development team might be the reason for failure sometimes, more often than not the project fails due to poor management. After all the development team has its head down and coding, it is up to management to figure out if the project is heading towards any icebergs. Make sure you have people who know how to manage software development projects, look out for potential problems and can accurately gauge the time required for deliverables.

Good Team = Good Code

It’s a fairly simple concept, but easy enough to ignore. There might be the odd success story of a mediocre team making great code however the rule of thumb suggests that the better your team the better your end product. Work with your team to figure out the strengths and weaknesses of the players, see what they are capable of and how much they can push their limits. Once you know what your team is capable of you are able to plan your projects more effectively.

Look to the Future

With today’s fast paced lifestyles most people cannot look beyond the task they have to complete today, let alone plan and build a system for the next 10 years. Many development teams are also the same way, laboring away at their computers for days on end to meet the next milestone or finish the next deliverable. Whilst this method helps to keep you on track for the short run, it makes you oblivious to the needs of the long run. Hindsight is 20/20 and this applies to software as well. Ask any developer, and they will tell you that looking back they would have built the system a little differently, left in provisions for automatic testing or even used a completely different architecture. The next time you are writing line after line of code, take a step back and look at the bigger picture. Don’t think about what has to be compiled before 9AM, think about how the system will be used 9 years from now.

Problem Solving is not Reviewing

Many people will use the terms problem solving or bug fixing interchangeably with reviewing, yet they are not the same thing. Many times the development team will have a review meeting where potential problems or bugs are discussed. In most meetings while reviewing the bugs in-depth conversations can occur as to how to deal with the bug or problem. While the conversations are a crucial part of the development process, review meetings are not the place for them. They take up most of the meeting time and leave a number of issues un-discussed. Ensure that your review meetings stay on track and all issues are discussed or some might come back to haunt you. Schedule separate time with only the people concerned as to how to fix the bugs or problems.

Reviews Take Time

Many project plans will just state reviews as milestones, which essentially means they require no time. This is not the case in the real world. Make sure you plan enough time to review, and solve all the problems that come up in the review. If you fail to do this chances are that your project is going to get behind schedule.

Simon Swords

Simon Swords

Director

Managing Director

Want to stay up to date with the latest software news, advice and technical tips?

;