Hello all,
I have spoken about the topic "Global versus Global" with Garret Minakawa (Oracle), Frank Vandamme (SWIFT) and Dave Carlson. All three colleagues said to me that for implementation reasons will be the "Venetian Blind" design much more better as the "Garden of Eden" design. Because the "Venetian Blind" design aligns to the OO (UML) model and "Garden of Eden" does not.
That means, every type in "Venetian Blind" represents an object class and this can be used in UML class diagrams as well as in object oriented-programming language in the same manner. In object-oriented programming places a great deal of emphasis on packaging classes according to their services. The types in the venetian blind design represents the package structure and this organizes the code and facilitates modularity and maintenance. Therefore, the components of venetian blind are highly cohesive and have a high coupling. We do see how this is very OO-like, and how an OO (UML) model might map directly to this design. This kind of principle will be used many XML-APIs, like JAXB.
In "Garden of Eden" must be created a pseudo-class for every global declared element. And this means an additional maintenance and redundant modularity of the UML models as well as OO-programming. And this might be not directly the OO modelling effort. Although is some additional work necessary by developing with APIs.
Kind regards,
Gunther