Over the past several years, Auriga has been working on projects that require evolutionary change throughout the entire lifecycle of the project, with increasing frequency. And this makes sense—all efforts of the product developers are aimed at delivering top-quality solutions to the market and releasing them as quickly as possible with the most up-to-date required features or functionality. This means that your requirements are constantly changing as the project goes forward.
How many times have you heard that Agile methodology doesn’t work when you are talking of standardized industry-regulated products or geographically distributed teams? We are here to reassure you—it works, and we know how to manage it. The development methodologies used by Auriga with different clients do not always bear a well-known, formal name (e.g., Extreme Programming, Scrum); however, they do in fact employ all the essential Agile practices from classical methodologies. Part of the reason is that we always tailor the processes to match the specifics of the customer’s operation. Typically, we use the following practices:
- Short iterations with fixed scope
- Continuous involvement of the customer
- Direct communications at all levels
- Frequent light-weight reviews
- Test-driven development
- Peer reviews and peer work, collective code ownership
- Getting commitment from engineers through involvement in effort estimation
- History-based planning & estimations
- Strict, up-to-date KISS principle in design, refactoring
Selected Auriga engineers have undergone training in Agile methodologies. Therefore, Auriga can follow Agile methodologies both strictly as defined and informally, using the general Agile principles.