1. A method for visually modeling architectures or system designs, the method comprising: providing an architectural model having a plurality of elements of one or more types; providing a platform for a user to develop a non-software code query relating to the elements of the model, wherein the developed query includes a custom query not currently available to a second user; developing a non-software code query relating to the elements of the model by the user and storing the developed query in a query registry; determining a second platform for a second user to develop a non-software code query relating to the elements of the model, wherein the second platform does not currently have the developed query by the user available; starting up the second platform for the second user and during the start-up, having the query registry examining an extension point for the developed queries, wherein the developed queries include the query developed by the user, thereby making the developed query by the user available to the second user; creating an instance of each developed query from the extension point, and storing the parameters of the queries as default parameter values; examining, by the registry, a preference storage for user defined queries, and determining if any user defined queries correspond to any developed queries from the extension wherein if the queries correspond, updating current parameter values of the query with the parameters from the preference storage, otherwise create a new query instance with the preference parameter value; executing the developed query to extract one or more of the plurality of elements from the model; populating a diagram with the extracted one or more of the plurality of elements, wherein the diagram includes a diagram palette tool to enable the user and the second user to choose the developed query from among a plurality of previously developed non-software code queries to execute on one of a plurality of diagrams, wherein the diagram palette tool enables overriding of parameter values for the chosen developed query, and wherein modified parameter values are kept separate from the default parameter values and both associated to the chosen developed query; saving the developed query and the populated diagram, wherein the saved developed query is re-executed and automatically updates the saved populated diagram with any new elements extracted, and wherein the saved developed query corresponds to a predefined custom query with associated overriding parameter values, and updates the predefined custom query to include the modified parameter values of the saved developed query; and extracting the populated diagram into a generated report using a template and associated models.