At work, I’m currently part of a project team that is getting ready to develop a new service based website. While I would love to discuss the specifics of my project at work, I’m not going to for fear of coming into conflict of the NDA that I have signed. Previously, when I’ve been tasked with such things, I pick out a few pieces that are standard, such as a user management system, and begin development while the final feature set is being fleshed out. With the complexity of the project we’ve been working on, there has been a great deal of planning undertaken and consideration given before a single line of code has been written.
It all started with a simple idea. From there, we had many brainstorming sessions based around the idea from the point of view of the business objectives. Expanding upon that, we dove into what we would need to provide users and how they would approach and use the site. Then we changed both of these lists into a basic set of features which were expanded upon a few different times. We started determining which features were absolutely needed for the first version of the site, and which ones should and could be added later.
Then the real fun happened. Once we had decided the features, it was time to figure out how much it was potentially going to be used, and how we could integrate it with our other business systems. With e-commerce in play, we needed to determine how and where to store data. More general to that, we needed to determine technical requirements in terms of language, platform, and potential server requirements. Will we be using PHP or ASP.net? Will we be running this on a dedicated server or multiple virtual private servers?
Again, this is all before one line of code was written.
Too many times, I’ve rushed into creating a site, and while it seemed smart to convert my passion and fire into something tangible quickly, many of my projects quickly fizzled out once I tried to balance the planning, development, and implementation at the same time. All of the pre-planning we have done has reduced the number of issues we will come across later. We have a solid understanding of what we are trying to achieve, and how each piece will fall into place.
Once we launch, we will need to track success, but before that point, we had a meeting to determine what were the important metrics, and what success or failure was. Sometimes, success in building a new site can be as simple as having one more visitor than the previous month, and other times, it can be to acquire one thousand e-mail addresses. Knowing what was important from a business perspective helped us select key metrics to track, and it allowed us to fine-tune features to help make the project more successful.
For example, one success metric for us was how much a certain page was shared. We knew that we needed to make the page easy to share, as well as tracking how often it was shared.
Before starting this lengthy process, I thought I had a clear picture in my mind of how to develop this new site, but my mental image was focused on the user experience and the back-end code. After all the planning meetings, I had a full understanding of how this new development will help meet business goals, integrate with our current offerings, be marketed to the public, and its potential path for evolutionary development. Without all of these other puzzle pieces, there is a good chance this project would have struggled to succeed. Now I can’t imagine starting a new project without some proper time to plan effectively.
Even in creating Upranked, I took two weeks to really consider how I wanted to build this site, market it, and what my goals were.
The moral of this story is that planning is key if you want a new site to get off on the right foot and have its best shot for success. Don’t just rush in headstrong or your fiery passion could quickly flame out, leaving you frustrated.