There are two ways that software can be configured - Waterfall or Agile.
After a complete design is signed off by the customer the software company goes away and does the configuration. Once it is completed it is provided to the customer to use.
Detailed design is time consuming and once the customer uses the product they normally find many things they want to change. Normally many things are configured that not used at all.
Small parts of the software are configured and the customer reviews them and suggests changes and additions.
Design time is minimal so the overall project takes less time, the customer reviews frequently and provides ideas, only what is required and useful gets configured.
Another way to look at the differences is this image that uses the well known problem of designing a swing
Agile delivers usable software earlier, ensures only what is useful gets configured and responds to customer feedback during the process. because of this it reduces the risk to the customer and the software company - the customer does not have to get the design 100% correct up front without using the product, the software company does not have to understand everything the customer could use in different situations.
The risk is delayed in waterfall projects because that is when the customer first starts to try and use the product.
Risk reduces over time with Agile as the customer refines what is required to suit their requirements
Because Agile projects deliver small bits of software as they go - the customer will start to use the software earlier (the boxes above)
Hence the chances of a successful project are more than double.
So what we do is build little bits of what you require at a time. Then we review what we have done with you and get some feedback. Then we