Open Source "UML Almighty": Executable UML, Simulation, Prototyping and more

July 5, 2010

UML Almighty new upgrade – The installer includes -Role based prototype-

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 7:27 pm

The new installer of UML Almighty includes -Role Based Prototype-

www.uml-almighty.com

The constant simulation of a system along project’s life is critical for the success of the project. The simulation solves the esential problems of any IT project.  I mean communication between all project actors.

The Simulation promotes same view of the solution in all actor’s minds. This improves communication and understanding in the project.

The following picture depicts this problem in a very funny way…

Advertisements

June 30, 2010

UML Almighty now support “Rol Based Prototype”

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 7:38 pm

UML Almighty can customize a prototype in different ways. But once the prototype is customized, all users has the same view of the system.

Now UML Almighty support “Rol Based Prototype” that allows to define more than one view for the same UML class, depending on the loged user.

With this capability the UML Almighty can simulate any workflow of any UML system. The complexity of the workflow is not a problem, because it is simulated as behavior. To remember the prototype and simulation:

A web page that shows an UML object can:

  • Add/Remove simple aspects (integers, strings, dates, times, etc)
  • Add/Remove link aspects (for 1x relations- web links to other objetcts. The Account class Cuenta has a web link [link aspect] to it’s Bank).
  • Add/Remove collection aspects (for Nx relationsweb tabs with a collection of UML objects. . The Bank class has a web tab [collection aspect] with it’s Accounts)

As the aspects are based on behavior they are very flexible and powerful.

BUTfor the class Session in an ATM system, the GUI (web page) is the same for all users. This has changed with the new functionallity.

NOW UML Almighty can be customized to show different prototypes (for the same class) depending on the loged user.

Example with Session class:


The class Session

Attributes: lastMessage (char), number (char)

1x Relations: Rol, Card, ATM (each Session has a Rol, a Card and an ATM)

Nx Relations: Transaction (each Session has a collection of Transaction)

As you can see there are two different rols: User and Operator.

Now the class Session shows a GUI when the loged user is an Operator and shows another GUI when the loged user is an User.

The picture above shows the two Views for the same class Session. The command buttons also can be customized based on the loged user.

How UML Almighty ahieve this ?

Each GUI component can be associated to an UML show/hide method. When a component is about to be rendered then the UML Almighty executes the show/hide method sending the loged user as an argument.

Class: Session Method: [canDeposit:]

canDeposit: logedUser

“The [logedUser] is sent as an argument to the show/hide method. We ask to the loged user if it can deposit cash “

^logedUser canDeposit

Class: Operator Method: [canDeposit]

canDeposit

“The [Operator] can not Deposit

^false

Class: User Method: [canDeposit]

canDeposit

“The [User]  can Deposit

^true


The logic here is very simple (true or false) but it can be very complicated.

Class: User Method: [canDeposit]

canDeposit

“The [User]  can Deposi  if the [Card] not expired, and the [Bank] does not have the [Account] in the blak list

^session card notExpired and: [(session bank isAccountInBlackList: session card account) not]


June 17, 2010

UML Simulation Example with ATM Model – Prototype and Executable UML

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 6:42 pm

In this example will see how to create a Simulation with UML Almighty using an ATM Model. (Check the Videos)

After installing the XMI file it take  10 minutes to finish the UML Almighty simulation (including the Prototype, the Executable UML and the UML Simulation itself).

The ATM Model is just a possible solution for this problem. The Simulation shows how different UML Diagrams fits with UML Almighty.

We will see two Use Cases in detail: ATM login and Perform a Deposit.

Use CaseATM Login

The User/Customer stars a new Session where the user name and password are entered.

If the entry data match the Card the Panel of Transactions is displayed.

Use Case: New Deposit

Here the Customer start a new Session (insert a card and type user name and password) in the ATM machine and then Deposit an amount of money to his Account.

UML Class Diagram – UML Model

Description

ATM class represent the real ATM machines. Each User (actor) start a Session in an ATM machine. This relation is an association class ATMLogin.

The ATMLogin has the user name and password. After enter the user name a Session is created. With a Session the User can perform different Transactions.

Each Card belongs to an Account of a Bank. The Bank perform the different Transactions. To simulate the Card insertion a list of Cards is displayed to select one.

The ATM machine has Log of operations. The ATM bills are manage by the InnerCash handler.

Activity Diagram

Description

The process starts when the User enter the user name and password. Then select a Card (to simulate Card insertion).

After login succed the User has the Panel of Transactions to perform different tasks.

In this panel the User can perform: a Deposit, a Transfer, a Query or a Withdrawal.

If confirmed the Transaction is performed and then Panel of Transactions is displayed again.

The User can perform another Transaction or logout. The transaction process will be shown in detail with Sequence Diagrams.

The following pictures shows the GUI: User and  Password which is the GUI for the instances of UML association class [ATMLogin].

This is the Web Page generated by UML Almighty for ATMLogin class, we named “GUI: User and Password” to the GUI of ATMLogin class.

From the GUI of ATMLogin the User can login into the ATM account.

Login Simulation Video

This is the Sequence Diagram for the Login process (check the video)

As we can see in the Sequence Diagram the login process returns (or starts) a new Session. From this Session the User can perform different operations.

Check the GUI: Panel of Transaction (picture above) to see the GUI for the instances of Session class.

The following is the Simulation Code for the UML Method [loginWith:] of Class ATMLogin

Method’s comments in green color.

As we can see in the Sequence Diagram the login process returns (or starts) a new Session.

When the user clicks Login button in the UML Almighty prompt a list of Cards (to simulate Card insertion).

When aCard is selected then [loginWith:] method is executed. This UML method belongs to ATMLogin class (check Sequence Diagram).

<aCard> argument is the Card selected by the User.

The method compares the password and user names of Card and ATMLogin (data entry in the web). If succed returns aSession (check simulation code).

This Session is displayed in other WebPage where the User can perform: Deposits, Transfers, and so on.

The following pictures shows the GUI: Panel of Transactions which is the GUI for the instances of UML class [Session].

New Deposit

The following picture shows the GUI for a Deposit. We named deposit GUI as GUI: Deposit Panel.

After data entry the User has to Confirm or Cancel the Deposit.

When the User click Save Object then the following page is displayed:

The following Sequence Diagram shows the Deposit process in the ATM system.

1. The User click NewDeposit in Panel of Transactions (SessionGUI)

2. A new Deposit is created and it is displayed in a Deposit Panel (DepositGUI). The User entry data (Deposit Panel 1).

3. The User Confirm or Cancel the Deposit (Deposit Panel 2)

4. The Bank perform the Transaction with Account (processDeposit:for: method).

5. The Panel of Transaction is displayed again with the result of last transaction. Now the User can perform other Transactions.

Simulation Code for the UML method #confirm in the Class Deposit

Simulation Code for the UML method #processDeposit:for: in the Class Bank

The following picture shows the Transaction result:

Simulation Video of a Deposit


June 3, 2010

UML Simulation, Executable UML, Prototype and Prototyping with UML Almighty

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 10:55 pm

UML Almighty is an application simulator. During the phases of analysisdesign and development allows to create/simulate a concrete application. This gives to project actorsdefined framework to work with the solution.

In a project without this capability each actor has a different mental representation of the solution; this drives the project to a fragmented solution that it will be much more difficult to integrate. To have this capability (to execute/simulate my design) unify the solution through all actors of the project and has a infinite number of benfits.

Download it from: http://www.uml-almighty.com/uml_executable_downloads.html

Direct link to the installer: http://www.uml-almighty.com/UML_Executable/uml_almighty_setup.zip

Buy at: http://www.uml-almighty.com/buy.html

UML Almighty available for purchase – Executable UML, UML Simulation

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 3:12 pm

Link to the image

UML Almighty is an application simulator. During the phases of analysis, design and development allows to create/simulate a concrete application. This gives to projects actors a defined framework to work with the solution.

In a project without this capability each actor has a different mental representation of the solution; this drives the project to a fragmented solution that it will be much more difficult to integrate. To have this capability (to execute/simulate my design) unify the solution through all actors of the project and has a infinite number of benfits.

Initial Process

1. When a Class Diagram is imported into (using XMI file) UML Almighty a meta model for the diagram is automatically built.

2. With this meta model the UML Almighty simulate the WEB and Desktop application.

3. In order to customize the application the user creates methods and then drag&drop these methods into special virtual categories.

UML Almighty can import  XMI file from the following UML tools (to support your favorite UML tool contact us):

EnterpriseArchitect

Visual Paradigm

MagicDraw

UModel

The available licenses are the following: (the number of class diagrams is not limited):

0. UML Almighty x20 – upto 20 classes per each class diagramFree

1. UML Almighty x40 – upto 40 classes per class diagramUSD: 40

2. UML Almighty x80 – upto 80 classes per class diagramUSD: 80

3. UML Almighty Fullnot limit of classes per class diagram.   USD: 140

Download it from: http://www.uml-almighty.com/uml_executable_downloads.html

Direct link to the installer: http://www.uml-almighty.com/UML_Executable/uml_almighty_setup.zip

Buy at: http://www.uml-almighty.com/buy.html

UML Almighty Support

June 2, 2010

UML Simulation – UML Almighty installer updated

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 9:03 pm

UML Amighty 3.5 is availabe to download:

http://www.uml-almighty.com/uml_executable_downloads.html

Supported XMI files from UML tools:

EnterpriseArchitect

Visual Paradigm

MagicDraw

UModel

Features

* Executable UML
* A Web Server is included
* UML Scripts
* Create new objects of your class diagram
* Persistent object cache
* Automatic Web and Desktop Application Simulation
* Customizable Web and Desktop Application Simulation
* XMI 2.1 interface
* Integration tools
* Complete GUI Environment for Design

Support

* Report a bug

* Ask to UML Almighty support to import the XMI files generated by your favorite UML tool.

http://groups.google.com/group/uml-almighty/topics

UML Almighty – Support

May 18, 2010

UML Almighty with Altova UModel 2010

Filed under: Uncategorized — umlalmighty @ 10:45 pm

Now UML Almighty can import XMI files generated with Altova UModel  2010 (http://www.altova.com/umodel.html)

Supported UML tools:

* EnterpriseArchitect

* Visual Paradigm

* MagicDraw

* UModel

This feature will be available in the next build.

Video collection:

http://umlalmightyenglish.blip.tv/

Features

* Executable UML
* A Web Server is included
* UML Scripts
* Create new objects of your class diagram
* Persistent object cache
* Automatic Web and Desktop Application Simulation
* Customizable Web and Desktop Application Simulation
* XMI 2.1 interface
* Integration tools
* Complete GUI Environment for Design

UML ALmighty Support

May 17, 2010

UML Almighty with MagicDraw 16.8

Filed under: Uncategorized — umlalmighty @ 3:17 pm

Now UML Almighty can import XMI files generated with MagicDraw 16.8 (http://www.magicdraw.com/)

This feature will be available in the next build.

Video collection:

http://umlalmightyenglish.blip.tv/

Features

* Executable UML
* A Web Server is included
* UML Scripts
* Create new objects of your class diagram
* Persistent object cache
* Automatic Web and Desktop Application Simulation
* Customizable Web and Desktop Application Simulation
* XMI 2.1 interface
* Integration tools
* Complete GUI Environment for Design

UML ALmighty Support

May 13, 2010

UML Almighty with Visual Paradigm 7.2

Filed under: Executable UML, OOP, UML, UML Simulation — umlalmighty @ 10:26 pm

Now UML Almighty can import XMI files generated with Visual Paradigm 7.2 (www.visual-paradigm.com)

This feature will be available in the next build.

Video introduction here:

http://umlalmightyenglish.blip.tv/

Features

* Executable UML
* A Web Server is included
* UML Scripts
* Create new objects of your class diagram
* Persistent object cache
* Automatic Web and Desktop Application Simulation
* Customizable Web and Desktop Application Simulation
* XMI 2.1 interface
* Integration tools
* Complete GUI Environment for Design

UML ALmighty Support

May 5, 2010

UML Almighty beta – executable UML – reported bugs

Filed under: Uncategorized — umlalmighty @ 1:17 pm

This is the list of reported bugs:

Autocompletation: it does not show the name of the classes. Registered as [DEVENV_122]. Fixed

* Web Prototype: command buttons are not well displayed in Internet Explorer, Opera, Safari. Registered as [WS_120]. Fixed

* Mapping table between UML attributes and UML Almighty classes: the table is NOT persistent –> The mapping table is lost after quit the application.Registered as [DEVENV_124]. Fixed

Web contexte error: in Chrome, Safari and IE a context error arise in command buttons with popup windows. In Mozilla and Operaworls fine. Registered as [WS_121].Active

Any question and other at:

http://groups.google.com/group/uml-almighty/topics

The next installer will solve most of the issues.

UML Almighty Support

Executable UML

« Newer PostsOlder Posts »

Create a free website or blog at WordPress.com.