Here at Kizoom we use Agile or XP software engineering techniques to build our products and services.
Traditional 'waterfall' approaches to software development, with long timescales for requirements gathering and delivery, rigid specifications, and elaborate methodologies (often accompanied by a confrontational approach to managing further change), just don't work in a sector where the technology is subject to rapid evolution, and where the application requirements and affordances are still emerging. (In fact they don't even work very well in many traditional IT sectors!).
There are however still many important disciplines that need to be maintained to deliver 'industrial strength' software and to evolve it over time, notably in the areas of team communication, design & review, testing and deployment.
Agile development aims to combine the rigorous software engineering techniques needed to build working systems with the flexibility needed to meet customer needs - especially in an environment of continuous business and technology change. Thus it emphasizes many proven 'traditional' practices for achieving quality, but advocates a more modern process for requirements capture and business negotiation. Advances in software and hardware have qualitatively affected the nature of development, in particular the availability of powerful tools, high levels of abstraction in OO languages, and extensive component libraries: agile development precepts reflect this, along with the insights from a wide collective experience of real world software development.
Kizoom has been using Agile development since the company started in 1999 and as a result has repeatedly been able to be first to market with robust, scalable applications involving complex technologies and dependencies.


