While working John levitates above his chair and types one thousand words per second, he can also sense the earth's magnetic field when he sneezes. He can will his hair to grow faster and has a tail at some times of the year.

GroovyCart is an online shop provider. We put this blog together to give us a place to ramble and put up any solutions to technical problems that may help other web developers. We will also put some guides up to help our shops with practical information on selling online.

Development Methodologies - Rapidly Building Useful Websites.

Wed, 11 Jan 12 - 16:33

“

Warning, this article may include technical content, jargon, waffle and fluff.

We have all heard of horror stories of big software developments which are late, overrun budgets or simply don't delivery functionality. Generally, this is down to a long development cycle where requirements are gathered up front way before the software is built, resulting in the final system being "this isn't what I asked for".

So I thought I would take a bit of time to tell you about how we work at GroovyCart.

To avoid these catastrophes, the GroovyCart team have adopted an Agile approach to software development. Broadly, the team adhere to the following:

Developments are split into fixed iterations of, generally, 2 weeks.

Every iteration has deliverables.

The requirements scope fits an iteration.

Each iteration goes through the full life-cycle of development, test and deploy.

There is a review at the end of the every iteration meaning the client can monitor development.

The scope for the next iteration is decided at the end of the previous iteration.

How GroovyCart builds its software in an idea world.

Ok, so what happens in practice? The very first 2 week iteration is about identifying the key deliverables and roughly allocating these to iterations. For the first release of GroovyCart we planned for 6 iterations. At the start of each iteration we would collectively decide what deliverables will be developed. Generally, these deliverables will form the test plan/specification for that iteration. Where a deliverable is more than 2 weeks work then it is split up into smaller deliverables. At the end of the iteration, the development is tested and "driven to live". So at the end of the 2 week iteration there is a working, demonstrable system, which the client can view. We then decided what is going into the next iteration. Ok, so what happens when things go wrong. If a piece of software is taking longer to develop then work on that individual deliverable it is split across iterations, i.e. the iteration is still deployed on the due date. If the client doesn't like the look of a deliverable then the subsequent iteration will address this.

What does this mean for GroovyCart?

Our Agile approach ensures we are develop features on GroovyCart quickly, and be responsive to our shop-owners requirements for new functionality.