Our 10 years of experience in web and app development, having delivered 500+ projects successfully, has been a learning curve. Here we share our learned wisdom, in order to contribute to your project’s success. Below are critical success factors which ensure that projects are delivered on time and within budget:
1) Involvement in the Project: Within the development lifecycle, the first steps are the most important. Establishment of an open communication link between the development team and the client is critical to the success of the project. It is the development team’s responsibility to make clear to the client that his/her involvement and input is of utmost importance if the project is to stay on track and actually meet his/her expectations. Just like a train, once it has built up speed it is extremely difficult, if not impossible, to stop and turn back. Because of this, if modifications are needed within the development of a project, they must happen in the initial stages when the train is still building up speed.
2) Read the Proposal Fully and Completely Understand: The first step and documentation that will define the clients idea in the form of a tangible product is the proposal. It is critical that both client and sales team communicate clearly their understanding of what the project will include i.e. What features? What functionality? It is a going back and forth, carving away at a block of wood to reveal the detailed outlines. It is the combination of what the client envisions and what is actually technically feasible. The final proposal represents this and should be treated as such by both parties.
3) Timely Feedback and Decisions: We all have busy lives these days. Many times we forget that the other people’s lives are every bit as complex and unpredictable as our own. Keeping in mind the absolute necessity for timely and efficient communication, when appointments are set for conference calls concerning the project; Be on time, Show up prepared with your questions and input, Don’t expect that the other party, be it client or developer, already understands. The end result of missed appointments is frustration and, at worst, total communication breakdown forcing delay and extension of the time required to actually reach the objective, meaning a completed and fully functional website.
4) Importance of the Functional Specification Document (FSD): Without a roadmap few people could navigate their way across a country that they have never been in before. In the same way the development of a website is an unknown land needing to be explored and mapped out if both the client and the development team are going to reach the other side. For this reason, after the analysis team and client have thoroughly explored all prominent features and hidden valleys, an FSD is created and put forth by the analysis team to demonstrate how we get from here to there. Both development team and client should read in detail and study this document asking the question, “Will we reach the ultimate destination by following this map?”
5) Come to the Table Prepared: Too often clients put forth the concept for a website with no tangible example or explanation of how it should look and function. They come to the table hoping that the analysis and design teams will be able to clarify a very vague notion into a fully realized dream that matches exactly what he/she couldn’t put in words. To avoid ending up with a product that doesn’t quite make you happy, do your homework and come up with reference websites that look and function in a manner similar to what you want. Define the color scheme that you wish to predominate throughout the website. Find logos that represent the character you wish the website to embody. Bring these to the table before the analysis and design phases start and give the teams time to sketch, draw-in and color the areas you couldn’t clearly see. If this is done, both analysis and design time required for the project will be minimized with much less likelihood that you will be left saying, “The more I look at and use this website the less I like it.”
6) Stay Involved throughout the Process: Once the project goes into full development, it doesn’t go into a black box where it is somehow mysteriously and magically transformed into a functioning website. In order to demystify the entire process and also make sure that the project is not veering off in an unexpected direction, we, at Avion, employ an online communication system for posting daily updates throughout. It is the client’s responsibility and ultimately to his/her benefit to stay involved within the process. Development team leaders require your input and review of work in order to effectively and efficiently direct development. So please, stay involved.
7) As Much Care in the End as the Beginning: It is human nature to want to reach the destination faster, particularly when it is in sight. Too often instead of taking the same care and maintaining the same mindful placement of steps, both developer and client just want to “get it live”. Quality assurance is a joint venture where client and developer are analyzing if everything written within the FSD is actually in place and functioning. It is the passing of the baton requiring focused cooperation and coordination. It is not the time to realize, “Oh, I wanted this also.” It is the time to test the core structure and the integrity of the system. Small tweaks and modifications can happen once the baton is firmly in hand. It is not the time to say, “But wait! I’m not ready. I thought we might do this too.”
8) I’ll accept it when it’s perfect! The greatest frustration for a website development company is after exerting so much time and effort and when the project has reached the point where client approval is needed is that many clients take this as an opportunity to demand extra work or basically hold the developer hostage until their exact expectations are met. Sometimes they are correct if a core functionality for some reason is not working correctly, but many times recognizing that they have the power position, meaning they still have the money in their hands for final payment, clients become unreasonable in their demands. Because of this, we, at Avion, have developed a Project Completion Matrix by which outstanding issues are divided into three categories i.e. Critical, High and Low. Using this matrix, the client and Avion can come to agreement concerning if the project have reached what should be defined as complete leaving cosmetic changes and minor functionality tweaking to be done in the complimentary maintenance period.
9) Are you still there?: After the website has been migrated to the client’s server and it “goes live”, it is important that the client gets back to us in a timely fashion if there are any bugs or minor tweaking of the website that need to be fixed. We at Avion offer a complimentary maintenance period after the completion of our developed projects where these issues can be addressed. It is to your benefit as a client to contact us immediately if there are issues such as these. But please keep in mind; it is a limited period with limited scope. Only those functionalities within the original proposal and FSD are to be covered. Anything falling outside of these boundaries can be dealt with afterwards through one of our affordable paid maintenance plans.
10) Value your developer: Far too often, clients assume that development companies in India are sweatshops and treat their development teams as such. However, to get the best out of your team, please understand that these individuals are highly qualified (many of them are engineers), they too have personal lives (they are taking time out from their personal lives to attend that 12 am call, so please make sure you attend it), their holidays and religious sentiments as well need to be respected (no personal judgments on your developer’s faith or political affiliations!). Most of all please be reasonable about what you are demanding from the developers. If you are vague about the scope, expect continuous re-work to be done for free, remain unreachable via phone or email for a number of days and/or delay the payments till the site is “100% perfect”, you will leave little incentive for the developer to put in his best into the project. On the other hand, if you are reasonable about your requirements, understand that all web projects may have bugs in them which are typically taken care of in the maintenance phase, stay in the loop either via phone or mail and pay the developer promptly at the end of each milestone, the developer will put his heart and soul into your project.
Unlike the manufacturing industry, where production is only about switching on a few machines, web development is about people, human beings on both sides of the table. In my six years of experience in the web development industry, and after overseeing more than 250 projects, I have come to a realization that projects which were most successful were the projects governed by reasonable individuals on both sides of the table.