Web development is hard; good web development is even harder. These days, more than ever, it's important to follow a development methodology that allows for complicated systems to be designed and evaluated in an efficient and timely manner. In this blog post we'll talk a little bit about the development process we follow at Praxis Interactive, and why we think it's the best way to create your web solution.
Out with the Old
You may have heard of something called the waterfall model before. The waterfall model is rather famous in the world of software development, and is a veritable veteran of the industry. The first known example of this model dates as far back as 1956, however the first formal description was published in 1970. In computing terms, it's virtually considered to be a dinosaur these days, but not without merits.
The waterfall model is a sequential development process, with a particularly rigid structure. The classic model usually consists of five stages, with each stage completed and flowing into the next, much like a waterfall:
Essentially the problem area is assessed in the requirements phase, following which a model is created to solve the problem in the design phase. After the design is completed and accepted, a solution is created in the implementation phase. After the system has been implemented, it is tested in the verification phase. Finally, the system enters the maintenance phase.
The waterfall model explicitly specifies that each stage should be completed and perfected before moving to the next, because changes are expensive in later stages of the development process. This model certainly has it's place, and has been used successfully for countless projects over decades of software development. Here at Praxis Interactive however, we follow a different methodology that we believe is more cost effective and achieves results much faster.
In With the New
A newer technique for software development is iterative development, which forms a key part of Agile software development, and it's this methodology that we use here at Praxis Interactive. This methodology works on the premise that it's almost impossible to fully anticipate all aspects of a system before it's implemented. A brief overview of the system is prepared and analysed before diving right in to code to start building the system described by the specification.
Functional prototypes of the system are delivered much more quickly and are tested by clients throughout the development process. Through this constant cycle of development, testing, and review, the system is refined to meet client expectations much more quickly than the older, non-Agile methodology.
As you can see from the above diagram, the iterative development model essentially takes the rigid waterfall structure, and turns it into a cycle that continues until deployment. These cycles have much shorter time frames to develop concrete and functional prototypes than the older methodology. We feel iterative development not only helps clients see results quicker, but allows them to identify potential shortcomings that may have been missed if a rigid waterfall development model was used.
Better Models, Happier Clients
We believe by adhering to this iterative model of development, we can improve turnaround times for our clients, and give them the opportunity to start using their web site or application much sooner. By making our clients a critical part of the testing and evaluation process, and allowing them to provide feedback during each phase of development, we ensure that we are hitting the mark every time. Customer satisfaction is very important to us, and by using Agile techniques such as iterative development, we aim to deliver tangible results quicker and more accurately than ever before. Have a look at our portfolio to see a selection of our clients.