Definition of "Done" in a web project
- Source code meets our coding standards.
- High enough level of unit test coverage for routes, action methods and controllers.
- High enough level of unit test coverage for business logic and repositories.
- High enough level of automated UI and integration test coverage.
- Code has been peer reviewed.
- Code must be completely checked in to the source control system and the build and all the automated tests should be green.
- UI looks nice and works on different resolutions on major browsers and browser editions.
- UI fulfills the accessibility requirements.
- End user help/documentation/tooltips are done.
- Any auditing/tracing code is added and the output is useful and readable.
- Security permission checks have been implemented and validated via automated tests.
- Automated database migration scripts are provided and testedSample data needed to test the feature is scripted, if required.
- Users have tested the feature and are happy with it.
I'll nitpick and note that "MVC" is not an application architecture, but whatever. Source: Definition of Done in an MVC project