Three things:
1) When a "retool for" or "construct/refit to" is given to a SY, Aurora checks (and requires) that the design is locked. The reason for the construct/refit check is that a SY can build a ship it's not tooled for.
2) When a design is unlocked, Aurora gives a warning if the class is "in use", where "not in use" is defined as nothing depending on that class, i.e. no ships of that class (including civies), no refits to or builds of that class in progress, and no SY tooled to produce the class.
3) (I think this one is already planned.) When an attempt is made to delete a class design, a check is made to ensure that it's not in use.
The reason for #1 and #2 is that I often get new tech before I have a chance to put a designed class into production. #1 and #2 allow updating an unused design without the risk of unintentionally changing one that's already in use. The reason for "warning only" is to allow players to clean up some oversight in a class for which e.g. retooling has already started.
It would also be nice to have similar safeguards for tech systems (e.g. weapons, sensors, etc), but I suspect that's a lot harder to get right.
John