1. A system for governing software architecture as designed, the system comprising: a memory operable to store code and a plurality of rules, the code programmed to implement at least part of the software architecture as designed; and a processor configured to: apply the rules to the code, the application of the rules testing the code for differences from the software architecture as designed and the software architecture as implemented in the code; identify a difference in architecture between the software architecture as designed and the software architecture as implemented in the code; generate an image representing the difference; and rank the difference relative to other differences and indicate the rank in the image; a display configured to display the image, the image comprising an architectural model with the difference highlighted.