Our working method is based on the principles of Agile Development:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Collaboration with the customer rather than contract negotiation
- Responding to change over following a plan
The first step for the realization of a project is the analysis of the idea with the customer to determine the features that produce value for the end user and therefore the objectives to be achieved.
For new projects, we offer our clients four free hours of consultation, to learn about our working method before entrust us an assignment.
The second key step is to define the functionalities of the project in terms of "user stories" with their time and priorities estimates.
The user stories allow you to provide realistic information on cost and development time, focusing on the goal of the product and cut out any features that don't create value.
The next step is the beginning of the development that will take place iteratively following the guidelines of the Scrum methodology.
Each iteration lasts three weeks and is divided as follows:
- We start developing with the most important functions: establish together with the customer the "stories" to implement, according to priorities
- close collaboration: we constantly confront with the customer to transform his ideas into code, adapting to changes quickly and efficiently
- every time we release a working application: at the end of each iteration we show the customer a potentially deliverable demo of the software made
Then we repeat this process for all the iterations required to complete the project or until the customer is satisfied with the software product.
Advantages of our method
- complete control: the client has complete control of the project and he can define functionalities to be implemented, based on budget and time availability
- change management: at each iteration, you can request changes to implemented functionalities, add or remove user stories, change priorities
- progressive payment: the client pays every iteration for the delivery of working software
- end of the project: at the end of each iteration, the client can interrupt the development in advance
- sources in customers' hands: at the end of each iteration is delivered to the customer the source code of its application