Basically every project uses some sort of CMS websites. Instead of painting a canvas in the old days of HTML, the requirement is to build software applications that need to follow more traditional development approaches.
If the project is coded improperly, then quite often you have to throw it away and start over. The cost to fix all of these problems can be significant. Our experience with one of clients inspire to craft this detailed pitfalls to avoid the next time you embark on a similar project, regardless whether you are the developer, or client.
Here are some of the most common reasons that make so many web projects fail.
Unclear Definition of the Scope & Requirements
Everyone is so anxious to get going, but they don’t think about how it’s all going to work and what happens under different scenarios.
This is especially true when a company puts their business online for the first time. Most clients think they know what they want, but the devil is in the details. I’ll bet that you have met a huge number of clients that when pressed to detail their process, haven’t thought through all of the ramifications.
Make sure you go through a detailed planning exercise before you start building.
Lack of Stakeholders
Management wants a new website to meet corporate objectives and to increase its ROI. Then management doesn’t take the time to get involved when key decisions are being made.
Huge problems can arise when management tests the Beta version and finds it’s not what they initially wanted. Changes can be very expensive in time and money if made at the end of a project instead of the beginning.
Biting Off More Than You Can Chew
Be careful not to bite off more than you can chew. Rome wasn’t built in a day. If you have a really complex project, built it in phases. You don’t have to publish it all on the web at once. There is nothing wrong with replacing existing websites after three or four phases are completed.
Designing Websites Without Purpose or Function
You have probably seen some beautiful designs for new projects that just cannot be built or would be too expensive to build. It’s best to wireframe out all of the functionality taking into account the platform you’re using before the design is done.
Then have the development team work with the designer, so together they come up with something that is both beautiful and functional. Otherwise, you could end up with a Frankenstein site that is neither.
Not Using Version Control
It’s unfathomable today to build new websites without some sort of source code control system. When developers create, support, and update source code files for a large application, the coordination can be complex.
Source-control systems record all file changes, with comments, in a project. You need to have the ability to roll back functionality, merge work together and work offline. Proper source code control is vital for any project.
Lack of Good Project Management
The Project Manager (PM) is the Quarterback (or number 10) of the football team. The PM is responsible for the successful planning, execution, monitoring, control and closure of a project.
The PM needs to understand the client’s needs and provide communication to and from the developers. Without a proficient PM, the project will get off track and become a runaway train that ends in disaster. A good PM will publish weekly progress reports keeping everything on track.
Hacking Core or Source Code
Hacking is changing the source code structure. When an unqualified developer doesn’t know how to do something, they tend to hack the code in the websites to make it work. This causes a number of problems and greatly affects quality. If a developer fixes one problem and another arises, it may be the result of a lot of hacks.
Doing so will make it near impossible for site updates due to security and bug fixes. It also makes it difficult for those that come in later to maintain the site and could possibly leave a site vulnerable to exploits.
A good PM’s main job is to keep things on track. It’s natural as you go through the development, to come up with new ideas and things you want. You need to realize that every time you make a change, it all adds to the time and cost of a project.
If a website is built and tested, you will have to retest after the change. Some changes are beneficial, especially if they make the website better for users. But lots of indecision and changing can derail a project. Scope Creep happens when decision makers aren’t involved early on or the project didn’t go through proper planning.
Lack of Cohesive Quality Assurance
All projects have bugs, so it’s better to find the problems first instead of the users. Set aside 20% to 25% of the development time to perform proper QA. Make sure there is a comprehensive QA Plan, otherwise you could get a website that has a lot of issues.
Developers need to be thinking about quality from day one and be responsible for fixing their problems. Otherwise, things could get very sloppy.