We follow an amalgam of software development methodologies that are based on similar principles. According to the Wikipedia, agile methodologies generally promote:
- a project management process that encourages frequent inspection and adaptation
- a leadership philosophy that encourages team work, self-organization and accountability
- a set of engineering best practices that allow for rapid delivery of high-quality software
- a business approach that aligns development with customer needs and company goals.
Among the available agile methods, we find Scrum and Extreme Programming as the two methods best suited to provide maximum benefits to our clients. Since using one of these methods alone has inherent drawbacks, we have developed a methodology by blending the benefits of both. And for the different agile practices, we have adopted Test Driven Development and Continuous Integration and in some cases, a blend of both depending on the needs of the project.