What is Agile?
Agile is a way of running projects and software development that is places an emphasis on people, communication, working software, and responding to change. Its principles are summarized in its seminal declaration, the Agile Manifesto.
Agile vs. Waterfall
Software projects used to be run using a waterfall model. Strict requirements written into a document, descriptions of what the software was supposed to do were written into a different document called a functional specification, and many dead trees later, someone would start to write code. This way of creating software came from the physical engineering disciplines. If you are building a bridge, it's very important to get the design correct the first time around because the costs of changing later down the road.
With Agile, we now recognize the fundamental differences between building software and building bridges. Especially in the fast-paced web world, it's critical to allow for emergent business requirements to affect the course of development of software:
- Communication with you throughout the project is crucial while heavy-handed documentation is avoided.
- Agile favours smaller iterations of development.
- We have flexible processes and tools in place to guide our projects to successful completion.
The Sum of the Parts
We've been doing it for some time now, and we are 100% confident our way of building your website is the best way to ensure success of the project. Each project may have multiple phases, each of which is based on needs determined at the time, not at the beginning of the engagement. This is important because invariably, needs specified at the outset of a project will change over time.
