I am working on a new asp.net core MVC web application as an out sourced senior software developer/architecture. now i did many requirements gathering sessions with the client, and i came our with a detailed requirement and design document, which have been singed by the client. then i break-down the document into tasks and i calculated the total effort for designing,developing,testing and hosting the web application, something as follow:
- Database creation and Design. 50 hours + cost 4,000 USD.
- Developing user registration and profile creation. 10 hours + cost 8,00 USD.
- Developing transaction workflow. 200 hours + cost 16,000 USD.
- tasks for development and hosting and UAT goes on...
- Final. 500 hours + cost 40,000 USD.
so the above cover the full implementation time and cost for the project. but should this covers by defualt giving the client the application source code? or this is not necessary ? and if our client need/ask the source code then we can separately provide costing for it? Now inside the contract we did not mention anything about transferring the source code, currently we only include that there will be UAT sessions to deliver the system + 1 year warranty to cover bugs + 10% plus or minus variation/changes based on the singed requirement and design document. but we did not include any thing about delivering the source code to the client.. so should we do so? and is it normal to charge the client extra money for delivering the source code (let say 20% of the total price), beyond the implementation time in our case (500 hours/40,000USD)?