DEV Community

Discussion on: How do you estimate/calculate costs of new features for clients?

Collapse
 
femolacaster profile image
femolacaster

As with agile, customer collaboration is more important than contract negotiation. When calculating your costs, make sure you draw out a plan that gets the customer involved. I prefer payment in increments on every sprint/feature. That puts both you and the client in a safe space. You can easily let go at the end of an increment if you cannot both work together. Implement a CI/CD pipeline on the get-go so customers can test almost immediately as features are released. Many customers would tie some balance of an increment to successful testing that might keep you in the project for longer. So, let the testing be from the get-go.

Usually, the first increment for me would be the UI prototype since it also serves as acceptance criteria, then a stateful UI, infrastructure setup, and automated deployments. Then each sprint/feature that concerns the backend and connection with other components comes next.