At agileminds.org we use the principles of Extreme Programming to guide our software development practices.
![]() |
Economics |
| We focus on the customer's business needs to ensure our work delivers business value and satisfies business goals. We do not invest in speculative functionality. Using incremental releases we recognise that software development is more valuable when it earns money sooner and spends money later. | |
![]() |
Mutual Benefit |
| Every activity we perform provides mutual benefit for stakeholders, immediately and in the future. E.g. automated tests help us to develop better software now and assist future software maintainers; refactoring removes complexity and reduces defects while making the code easier to understand for those who encounter it later. | |
![]() |
Quality |
| Our experience shows that pushing quality standards higher often results in faster delivery, while reducing quality often produces less predictable delivery. We do not believe that quality is a control variable. Our projects are planned and steered using scope. | |
![]() |
Embrace Change |
| We recognise that change is inevitable. We embrace change because it provides opportunity to learn and improve. | |
![]() |
Keep it Simple |
| We develop simple solutions by focusing on solving today's problems today. Simple solutions coupled with our emphasis on test-driven development facilitates change tomorrow, when it is required. | |
![]() |
Small Steps |
| In developing software we take many small steps rapidly. The overhead of these small steps is significantly less than that of recoiling from an aborted large-scale change. | |
![]() |
Flow |
| We deliver a steady flow of software at a sustained pace by engaging in all the activities of the project lifecycle simultaneously rather than as discrete phases. Using iterative development and incremental releases we deliver small increments of business value frequently. | |
![]() |
Improvement |
| We achieve excellence through continuous improvement. There is no perfect design, but through improvement we are always perfecting our designs, solutions and processes. We put improvement to work by not waiting for perfection - we find a starting place, begin, and improve from there. | |
![]() |
Accepted Responsibility |
| We believe responsibility can only be accepted and never assigned. By accepting responsibility pride becomes a positive factor that contributes to success. | |
![]() |
Humanity |
| We recognise the importance of life outside work and limit working hours to enhance an individual's contribution to the team. Our sense of 'team' provides validation and accountability to each member who contributes to shared goals while expanding personal knowledge and skills. |