It has been close to 5 years since I started Avion Technology. Started as a part-time moonlighting job, today Avion Technology has completed in excess of 250 web development projects. These include projects in myriad technologies such as PHP, .NET and Java as well as in frameworks such as OSCommerce, Zend, Joomla, Drupal to name a few. Whew! It has been one exciting ride. From the time, Avion Technology took on small web design projects in the ballpark of $300-$500 to today when we develop mission critical applications for an enterprise-wide audience which include CRM applications, building options pricing algorithms, using Google’s web services stack to deliver geographical monitoring of the website usage statistics of a fortune 500 company, the list is endless.
However, the process has been one big learning curve. Similar to the iron triangle of time, quality and cost, I have understood that there is also the human triad of client, developer and end user of the website. The human aspect makes the web development business very interesting, to say the least. A design that is irresistible for one client is nauseating for his partner. A functionality that can deliver a billion operational efficiencies to the client is rejected in favor of a hackneyed application that has been obsolete since a few years back. And yet, as all developers might vouch, we have to navigate through technology , taste and budget constraints to deliver a successful project.
Given that a project has three sides to it viz. the developer, the client and the end user, it is mighty important to have all three on the same page in order to execute a successful project. Far too often, web development projects fail because of a disconnect between these three. For example, Josh (the client) wants to build a web app for which he is really passionate about. Mike, his developer, might use his favorite framework to build out the app, not realizing that building the app in that specific framework might hinder future development efforts. And finally, once the app gets launched, they both might realize that either there was already a better alternative out there, or that there really is no market for what they have created.
In the next few blogs, Avion Technology will try to list out that “secret sauce” of how web projects become successful. We hope that you find our observations helpful in creating your dream website. Below is a list of “dos and don’ts” which I send out to my clients before initiating a project. Since Avion Technology is in the business of web development using its own development center in India, the intricacies of project management become more accentuated due to geographical and cultural distances. However, if the following basic guidelines are followed, clients can reap the rich rewards of developing their dream website at very cost effective price points.
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, widdling 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 Technology , 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 Technology, 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 Technology 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.
Please let me know how you liked this article. My next article will focus on the critical factors a developer needs to ensure in order to execute a successful project.
This is Chet here from Avion Technology wishing you a happy and successful website creation experience.
Avion Technology is a downtown Chicago based web-development company. Avion Technology has its own development and delivery centre in India, managed by fluent English speaking Americans. Combining high design and quality standards with outsourcing best-practices, Avion Technology helps deliver quality web sites to its clients. To know more about Avion Technology, please visit www.aviontechnology.net.