– 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