Unified Modeling Language

Towards Executable UML

This content area is UNDER CONSTRUCTION or MIGRATION

A Webel zone dedicated to progress towards a truly Executable UML (xUML) with OMG standards support.

AndroMDA

AndroMDA integrates particularly well with the MagicDrawTM UML tool.

Visit also

UML & PHP

This content is EXPERIMENTAL only

A Webel zone dedicated to attempts to interpret PHP as UMLTM.

From these minutes by Derick Rethans from a PHP Developer meeting from Nov 2005 (with comments related to typing of properties in future versions of PHP underlined):

5.8 Type-hinted properties and return values

Issue: PHP only supports type hinted arguments and not for return values or properties.

Discussion:

We quickly agreed that we don't need type-hinted properties, as it would cause problems when they are assigned to other variables and it's just generally not-PHP style.

For return values it does make some sense, but definitely not as much as type-hinted arguments to functions. One discussion point was how to tell the parser the return type of a functions, we came up with the following suggestions for syntax (where ObjectName is the type-hint):

function ObjectName &funcname();
function &ObjectName funcname();
function &funcname ObjectName();
ObjectName function &funcname();
function &funcname() returns ObjectName;

Conclusions:

We do not allow type-hinted properties as it's not the PHP way.

We will add support for type-hinted return values.

We need to pick a syntax for type-hinted return values.

What a shame this decision to not type-hint PHP properties is for reverse-engineering of PHP classes to UMLTM !

The image below shows an attempt to represent a simple PHP system (some scripts developed by Webel for client UnseenTV for bulk migration and administration of Drupal SimpleNews subscription data) in UMLTM by importing the XMI file generated by the PHP_UML tool into the MagicDrawTM UML tool.

Unfortunately - because PHP does not support typed Properties - it is very difficult to manage the Relationships between Classes ! PHP_UML uses an introduced DataType 'mixed' as a catch-all for any TypeAssociations. Instead Dependencies and Usages have been used.

The process shown requires so much intervention that the benefits of obtaining the UMLTM representation are undermined !

Note also that Visual Paradigm and Enterprise Architect both claim to reverse-engineer PHP to UML, and Enterprise Architect claims to be able to also generate PHP from class diagrams, and supports a degree of synchronised engineering. However if you look closely at the EA examples you'll see that in fact there is a contrived "links to / links from" system used to represent Relationships between Classes, instead of consistent Associations with Property ends !

MagicDraw UML zone

This content area is UNDER CONSTRUCTION or MIGRATION

Dr Darren is a long-term MagicDrawTM UML user, and No Magic Inc. (developers of MagicDraw UML and SysML Plugin) is also a previous Webel client, for whom he acted as Expert Advisor for Science, Engineering, and Education.

For a quick overview of some UMLTM models and diagrams by Dr Darren visit the MagicDraw UML taxonomy category list.

UML tools zone

Video screencast: YouTube: MagicDraw UML: SysML Plugin active validation tutorial

Play video
See video
Scenes

A MagicDrawTM UML eSchool tutorial by Dr Darren Kelly demonstrating the active validation technology of MagicDraw UML15.5 applied to a SysML example. Learn how the active validation mechanism highlights model problems with active indicators of severity levels, and how to apply suggested fixes, to improve the consistency and compliance of your UML and SysML models.

SysML logo (image, unlinked)

Webel promotes Systems Modeling Language (SysML) education and applications of SysML to software engineering, systems engineering, science, and the arts.

UML logo (image, unlinked)

Webel promotes Unified Modeling Language (UML)TM education and applications of UMLTM to software engineering, systems engineering, science, and the arts.

UML zone

This Webel zone is dedicated to the Unified Modeling LanguageTM, to UMLTM education, and to applications of UMLTM beyond software engineering to science, engineering, art, and much more.

Dr Darren, long time UMLTM user and educator, says:

"The more I use the UML the more I believe in it's potential and importance as a lingua franca of information technology. I am a true UML advocate. It is, quite simply, one of the most important technologies in the history of humankind."

This is also the home of Dr Darren's powerful UMLTM Parsing Analysis recipe for translating text documents into UMLTM and SysML analysis models. And you'll find lots of examples of the applications of Systems Modeling Language (SysML) to science and engineering problems.

Syndicate content
Unified Modeling Language
OMG Systems Modeling Language
Java Get Powered
PHP
Powered by MySQL
Powered by Drupal
Lunarpages.com Web Hosting