SHAWORDS

I assume that a precisely defined, verifiable, executable, and transla — Stephen J. Mellor

"I assume that a precisely defined, verifiable, executable, and translatable UML is a Good Thing and leave it to others to make that case... In the summer of 1999, the UML has definitions for the semantics of its components. These definitions address the static structure of UML, but they do not define an execution semantics. They also address (none too precisely) the meaning of each component, but there are "semantic variation points" which allow a component to have several different meanings. Multiple views are defined, but there is no definition of how the views fit together to form a complete model. When alternate views conflict, there is no definition of how to resolve them. There are no defined semantics for actions... To determine what requires formalization, the UML must distinguish clearly between essential, derived, auxiliary, and deployment views. An essential view models precisely and completely some portion of the behavior of a subject matter, while a derived view shows some projection of an essential view... All we need now is to make the market aware that all this is possible, build tools around the standards defined by the core, executable UML, and make it so..."
S
Stephen J. Mellor
Stephen J. Mellor
author16 quotes

Stephen J. Mellor is an American computer scientist, developer of the Ward–Mellor method for real-time computing, the Shlaer–Mellor method, and Executable UML, and signatory to the Agile Manifesto.

More by Stephen J. Mellor

View all →
Quote
"We build models to increase productivity, under the justified assumption that its cheaper to manipulate the model than the real thing. Models then enable cheaper exploration and reasoning about some universe of discourse . One important application of models is to understand a real, abstract, or hypothetical problem domain that a computer system will reflect. This is done by abstraction, classification, and generalization of subject-matter entities into an appropriate set of classes and their behavior."
S
Stephen J. Mellor
Quote
"While a small domain (consisting of fifty or fewer objects) can generally be analyzed as a unit, large domains must be partitioned to make the analysis a manageable task. To make such a partitioning, we take advantage of the fact that objects on an information model tend to fall into clusters: groups of objects that are interconnected with one another by many relationships. By contrast, relatively few relationships connect objects in different clusters. When partitioning a domain, we divide the information model so that the clusters remain intact... Each section of the information model then becomes a separate subsystem. Note that when the information model is partitioned into subsystems, each object is assigned to exactly one subsystem."
S
Stephen J. Mellor
Quote
"I was astonished to be invited to what became the meeting that originated the Agile Manifesto because my work had always been based around building models... The other signatories were kind enough, back in 2001, to write the manifesto using the word “software” (which can include executable models), not “code” (which is more specific.) As such I felt able, in good conscience, to become a signatory to the Manifesto while continuing to promote executable modeling. Ten years on we have a standard action language for agile modeling."
S
Stephen J. Mellor
Quote
"Creating a modeling language that is also an executable language has long been a goal of the software community. Many years ago, in 1968 to be exact, while working with software components to successfully develop a telecommunications system, we created a modeling language that was the forerunner to UML. To model components we used sequence diagrams, collaboration diagrams, and state transition diagrams (a combination of state charts and activity diagrams). Our modeling language then seamlessly translated the component models into code. Each code component was in its turn compiled into an executable component that was deployed in our computer system. The computer system was a component management system—thus we had "components all the way down."
S
Stephen J. Mellor