Agile Website Build
Today's businesses demand rapid project deployment on a low-risk with high value-for-money basis and ‘Agile' project management methods are key to meet these demands. We have since 2012 been using the SCRUM methodology, and apply a tailored version to our projects. We have certified SCRUM Masters and it is a best practice to follow agile development best practices across the board regarding development projects. Our development philosophy is based on the principles of the Agile manifesto (http://agilemanifesto.org/principles.html).
Iterative and incremental development
We break down your project into small incremental subtasks which require minimal planning. These subtasks are done in short time frames that typically last from two to four weeks. The team repeats all the project lifecycle functions in these iterations: planning, requirement analysis, design, coding, unit testing and acceptance testing. At the end of the iteration it will be presented to the stakeholders as a working product increment. This way of development minimizes the risk of the project and it is open to adapt changes quickly. One iteration will not result in market-ready software product but multiple iterations will end up in a product which will meet all the requirements of the stakeholders.
No matter what development disciplines are required, our team will contain a customer representative called Product Owner in Scrum. This person is elected by the stakeholders to act on their behalf and makes a personal commitment to being available for developers to answer their questions. At the end of each iterations stakeholders and the customer representative review the progress and re-evaluate priorities with a view to optimizing the return on investment and ensuring alignment with customer needs and company goals.
Very short feedback loop
A common characteristic of our develop process is daily status meetings called Daily Scrum. In a brief session, all team members report to each other what they did the previous day, what they intend to do today, and what their roadblocks are.
Specific tools and techniques, such as continuous integration, automated unit testing, pair programming, test-driven development, design patterns, domain-driven design, code refactoring and other techniques are often used to improve quality and enhance performance.