There's nothing magical about how great software is built. But it's probably the most significant factor in the end product. There's certainly more than one way of doing it. Whether you need a simple informational website, a blog, and e-commerce store, a social networking site, or something completely customized to your needs, we follow a simple pattern of work. We wrote this article to tell you a little about our process.
So where do we begin? The first step is to understand what the project's requirements will be. What are the goals of the project? What features are necessary to achieve those goals? We will sit down with you (or discuss the project over the phone) to ensure that we know what the needs of your business are and come up with a proposal for how to achieve them.
For larger projects this process may involve choosing between features that are needed for the initial version of the site and which will be addressed in a later phase. It is often better to launch a site earlier with less expense, but fewer features out the gate. From our considerable experience with large applications, we know that there will be scenarios that emerge in the development process that mandate unforeseen features, while other features that were expected to be needed are no longer relevant. We are firmly of the belief that, for these larger projects, the initial release should focus on the core requirements of a project, and making sure they are executed to deliver the highest quality product.
Okay, so now we know what direction we need to go with a project, but that's not the end of the planning process. As a small company, we will have a short meeting between the developer(s) assigned to your project, those in charge of the management of the project, and possibly other relevant contributors. This usually involves 2-4 people. In this process we take a more detailed look at the structure of the application and try to spot any potential problems. Once we've reached our final conclusion, we send over a final proposal.
Once you've signed off on our proposal, we move forward with our work. The project will go into the design phase, where the general look and interface of the end product is determined. A graphic designer will create the interface of a site in Photoshop (or some similar software), and we will send the design to you for tweaks and general approval. At this point, the site is nothing more than an image. You can't click links, or update text, or really do much of anything you'd expect to be able to do with a website.
When the design has been approved, we turn those previously static images into HTML/CSS templates. We now have something that can be rendered to your screen by a web browser. We thoroughly test these templates in all major browsers to ensure their compatibility, and if the design is responsive, we ensure the that the design specifications are met for each separate version at their respective resolutions. At this point, the templates can be viewed in a browser, but they are still lacking in any actual functionality. Now your site is ready to be turned into something that actually works.
Our developers then take those templates and turn them into a working blog, e-commerce system, social networking site, or whatever it is that your specific project requires. We install Iris, our proprietary content management system, which gives you complete control over a site's content, blog posts, users, products, or any other custom functionality that needs managed. This is the most important stage of the entire process - it involves our developers writing complex code, setting up a database for your 1's and 0's to reside, and occasionally beating their heads against a desk.
Once the application is working, we migrate your site's content to our brand new version.
Once the initial development phase has been completed and the content has been migrated, we place the site to a staging environment for review. This is your first opportunity to click around and use your future site, and gives us your feedback. What works well? What doesn't? Maybe move that link over to this page, etc. Any bugs that turn up are fixed and requested changes are made, then we send it back for a final review.
Once you're happy with your new site, it's time to go live. We move the site to one of our uber-fast production servers (we host hundreds of sites on an array expertly managed servers), and update your DNS to point to your site's domain to its new location. Between 15 minutes and a few hours, you will see your brand new site, live on the web!
We don't just value you as a one-time client. We look to establish ongoing relationships. We provide support and maintenance for your site, leaving you with the peace of mind that we will be here to update your site as you need.