Hi!
We have a browser based practice management system.
100+ core tables, 100+ core views, appropriate triggers, procedures and functions - all tables are InnoDB file-per-table with proper constraints in place - all in MySQL.
We are not using an IDE (unless you consider vi an IDE...)
The current structure is [HTML/javascript] <-> [Apache2] <-> [CGI version of dL4 Langauge] <-> [MySQL &/or bash and PHP scripts]
We've written one set of dynamic, re-usable UI and logic code driven by text definitions to maintain and report on 90% of the tables.
The specialized UI's revolve around highly tailored data entry screens for entering charges, payments, adjustments, scheduling appointments, filing insurance claims -- things like that...
Each medical clinic is has a separate schema of its own (with its own set of the above tables/views/etc.) and they all share a common shared schema containing menus, aggregates, etc. (common data)...
One of our sites has 110+ clinics on a single server instance.
"Clinic" users have access to only their clinic, while "System" users have access to any and all clinics.
We have scripted methods to "Add new clinic" (i.e. create a new, empty schema and add references to the common data).
I've installed Drupal 7 core and added features, schema and admin_menu, then enabled those modules and saved the config.