Eiffel: the language
Object-oriented modeling and design
Object-oriented modeling and design
Object-oriented development: the fusion method
Object-oriented development: the fusion method
Object-oriented analysis and design with applications (2nd ed.)
Object-oriented analysis and design with applications (2nd ed.)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
UML and C++: a practical guide to object-oriented development
UML and C++: a practical guide to object-oriented development
The Unified Modeling Language user guide
The Unified Modeling Language user guide
The Unified Modeling Language reference manual
The Unified Modeling Language reference manual
Reference Manual for the ADA Programming Language
Reference Manual for the ADA Programming Language
Using patterns for the refinement and translationof UML models: A controlled experiment
Empirical Software Engineering
Proceedings of the 6th international conference on Aspect-oriented software development
Supporting several levels of restriction in the UML
UML'00 Proceedings of the 3rd international conference on The unified modeling language: advancing the standard
Towards an ontology-based retrieval of UML Class Diagrams
Information and Software Technology
Hi-index | 0.00 |
The value of graphical modeling within the analysis and design activities of object-oriented development is predicated on the assumption that the resulting models can be mapped correctly, optimally and efficiently into executable (normally textual) code. In practice, however, because of the large potential mismatch in abstraction levels, the mapping of graphical models into code is often one of the weakest and most error prone links in the chain of development steps. This paper describes a practical approach for addressing this problem based upon the definition of a restricted extension of the UML known as the Normal Object Form (NOF). The basic purpose of the NOF is to provide a set of UML modeling concepts which are "semantically close" to those found in object-oriented programming languages. Highly abstract UML models can then be mapped into corresponding executable code by means of a series of semantically small refinement (intra-UML) and translation (extra-UML) translation steps, rather than in one large (often ad hoc) step. This not only increases the chances of a correct and optimal mapping, but also significantly improves the traceability of UML constructs to and from code constructs, with all the associated advantages for maintenance and reuse.