Top 5 Things to Avoid When Starting a Software Project
13 Apr, 16 | illumisoftadmin
After almost twenty years of writing code, I’ve seen it all. It can be frustrating to see so much time and money invested into a project that winds up producing only mediocre results. I know how to avoid the common pitfalls and I could do so if I’m running the project. But, I also realize that my clients need to learn about the processes I follow in order to get the most out of a software that the project produces. Software development is unlike most disciplines. It requires a unique set of variables and a slightly different approach.
After an analysis of the many mistakes that cause software projects to become subpar, I’ve condensed the issues into five distinct problem areas. If you, or someone you know, is planning to start a software project, this list can save you a lot of time, money and headaches. Here are the top five things to avoid doing when starting a software project:
- Plan Out Entire Project In Advance
The main reason you want to avoid planning out the entire project in advance is because you don’t know what you don’t know. You will have ideas about what you want the software to do, but planning out too many details will actually hinder the process. The best approach to take is to be flexible and to iteratively re-evaluate the product during the development phase. Software development uses an agile methodology, which means that a portion of the software is made and then evaluated by both the team and client. This is re-evaluation cycle allows the client to shape the final product as it is being created. Continuous client input and incremental improvement is crucial to creating a great software product.
- Rush Through The Project
Trying to get the software project done as quickly as possible isn’t a good idea. When a project is rushed, the code will become messy. There will be too many developers with too many styles and no time to synchronize those details between them. Messy code is fragile and lacks the characteristics found in software built with a solid foundation. Allocating a sufficient amount of time and resources for the project will save you time and money in the long run. Also, as with any software project, it’s best to identify one primary set of functions first and build that. This is called the minimum viable product (MVP). It’s best not to add all the so called bells and whistles at the very beginning.
- Hire The Cheapest Programmers
There is a wide gap between the best and worst programmers. If you hire average programmers, who are cheap, they will end up costing you much more money and time. You will most likely have to hire someone else after them, in order to clean up the messy code they created. The best coders and architects will end up costing you much less in the long run. You won’t have to hire someone to clean up after them and whomever you do hire to maintain the project will be able to do so with greater ease.
- Maintain A Distant, Superficial Relationship With Programming Team
The quality of the finished software project is dependent upon how well you work and get along with your programming team. This is assuming you are the person responsible for producing the software, if you build a solid relationship with your programmers, your end product will be that much better. Conversely, if you have a distant relationship with the programming team, your software product will suffer. So, find out what the philosophy of the programming team is and communicate your own business philosophy. If these match up well, a solid relationship can be formed. Building software is dependent on smooth and open communication.
- Cut Corners To Save Money
In the twenty years I’ve been creating software, I have never seen a company who cut corners when having software built wind up saving at all. Typically, cutting corners now is the same as pushing off the expense to a later date. But the reason this doesn’t work is because things cost more in the future. It’s best to have software built the correct way by people who have expert knowledge, even if it takes longer and costs more, up-front, than expected. The long term cost savings will more than make up the difference.
Check out this video that explains these points a little more in-depth.
I hope you’ve learned some useful tips about software development. I’d be happy to answer any questions you may have. My name is Dan Prince and I’m the founder of illumisoft. You can reach me via email at [email protected] or my cell phone at 816.564.9595.