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.

- UI works with and without javascript enabled.

- 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

Are you stuck with a legacy PHP application? You should buy my book because it gives you a step-by-step guide to improving your codebase, all while keeping it running the whole time.