Today we launch LieberLieber AMUSE 2.0! The next evolution of our leading edge UML/SysML Simulation and Execution extension for Enterprise Architect from Sparx Systems. AMUSE 2.0 is powerful tool for developing and debugging UML based solutions and specifications.

You can get your copy for Evaluation from: here

Featuring a completely rebuilt UI:

image

Key Features:

  • fUML Preview
    • Visual simulation of Activity Behaviors
  • Parallel Start of multiple Behaviors (State Machines, Activities)
    • Adding behaviors to simulation and parallel execution at any time
    • Asynchronous communication between behaviors via signals
  • AMUSE own diagram-viewer
    • High-performance live-monitoring of multiple behaviors
    • Directly interaction with behaviors
  • Trace Viewer
    • Detailed trace-log of simulation
    • Rich filter and sorting capabilities
  • Improved Simulation Control UI
    • Rich UML-Debugging capabilities (e.g. simple access to class-attributes)
    • One-click simulation start
  • Validation and Auto-Correction Rules
    • Over 20 validation rules
    • 10 Auto-correction rules

(weiterlesen…)

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg

Lately I developed more state machines than ever before. In the past I had respect for that type of diagrams but now I think it’s just cool Thumbs up

Why to use state-machines at all?

UML supports state charts for really long time, but only a small part of UML community uses state-machines on a regular basis.
My experience confirms that – it isn’t easy to start using them. The question is – why?

In my opinion, the reason is – the way how the people do thinking – in functions and activities (actually straight forward Smile). Therefore most of us likes sequence and activity charts better.
Everybody begins programming by writing functions – first, you have an idea of desired result in your mind and next, to get that result – you program a… function. Other way around – nobody will start thinking about classes, instances, states, interaction between objects, etc. if you just want e.g. to parse some strings.

But one day you want to (or you have to :) ) develop code in a more structured way. At that point machines can help
- Why? Because they get the object oriented methodology to the heart of the matter – it’s all about objects and their states. But as already mentioned above, at the beginning, state-machines seem to be non-trivial
– So what to do?

How to get the state-machine right?

Wouldn’t be great if an UML tool could interact with you and give you feedback while modeling to show if you are still on the right track?
– It’s exactly what AMUSE does. It extends Enterprise Architect to an interactive UML tool.

My first lesson learned with AMUSE

  1. First, install the tool – very easy
  2. Cause I developed state machines before AMUSE, the next step was also easy going – created a model, a view, a package, added an state diagram and drew a trivial state chart
  3. Next, I wanted of course to know if it’s executable – the first thing I had to learn was to add every state-machine into simulation window manually. Actually it’s annoying, hope we change that in the next version Smile
  4. But already at the fourth step I learned a really important thing – every state machine belongs to a class. First, I thought it is also nonsense, but then I’ve got it

Basically it is easy and exactly the right way to think:

- So, you want a state chart? First question you have to answer – state of what? And the answer is – state of class you have to design.

Answering that question is the first step in the right direction of good design!

Bottom line

To cut a long story short:

  • State machines are cool, because they guide you to a good design
  • AMUSE is cool, because it guides you to a good state machine Smile
    - e.g. it creates automatically a class and a state machine that belongs to a state diagram if you forgot Smile

meanwhile i came to the conclusion:
- Usage of state machines is probably most suitable way to enter into object oriented design, but they are also excellent helpers for experts.

Next time more …

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg

Today we updated our Roadmap – covering the next 6 Month of LieberLieber AMUSE development!

image

What will be in 1.6 is already pretty frozen 2.0 still can be subject to changes!

Feedback welcome!

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg

Currently we are working on the Beta Version of the upcoming 1.6 Version of LieberLieber AMUSE for Sparx Systems Enterprise Architect.

We will have a feature to validate your state machine against a scenario defined in a Sequence Diagram.

 

sdforatm

This sequence Diagram could be used against the ATM Sample from our AMUSEExamples.eap

image

So we will have the ability to validate state machines against given Scenarios.

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg

There will be a free Webinar on LieberLieber AMUSE – hosted by our partner from the UK. Dunstan Thomas will be presenting all you need to know to get started on the subject!

Register your interest here.

Don’t forget to register – so we can communicate the Details!

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg

Today I learned that our Statemachine Simulation AMUSE for Sparxsystems Enterprise Architect has been featured on a Japanese Blog!

image

If you can handle Japanese have a nice read!

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg

This time in German – because we Target a “german speaking” audience!

Praktikum: Simulation von UML Modellen
Integration des Framework qp in die Simulationsumgebung
AMUSE der Fa. LieberLieber

Das Entwicklen komplexer Systeme ist zeitaufwendig und fehleranfällig. Eine gute Planung (Modellierung) kann helfen die Komplexität in den Griff zu bekommen. Durch Simulation der erstellten Modelle kann eine Validierung der Logik des zu entwickelnden Systems sichergestellt werden.

clip_image004clip_image006clip_image008

Die Firma LieberLieber hat für das Modellierungswerkzeug Enterpreis Architect von Sparx Systems ein Plug-in (AMUSE) entwickelt um UML Zustandsautomaten zu simulieren. Jeder UML konforme Zustandsautomat kann ausgeführt werden und das Laufzeitverhalten (aktive Zustände und Zustandsübergänge) werden in Enterprise Architect visualisiert. Zusätzlich können beliebige externe Bibliotheken eingebunden werden. Damit können externe Stimuli (Events) erzeugt werden, auf die der Zustandsautomat reagiert, bzw. Aktionen (Operationen) externer Bibliotheken aufgerufen werden. Damit können externe Systeme gesteuert, bzw. das Verhalten des Zustandsautomaten durch alternative GUI-Mocks visualisiert werden.

Die Simulation basiert auf generiertem C# Code. Dieser Code wird aus dem Zustandsautomaten generiert, ausgeführt und im Enterprise Architect visualisiert. Detailliertere Informationen zu AMUSE finden Sie hier:

clip_image010

Das Framework qp (http://www.state-machine.com/) bietet einen umfassenden Rahmen für die Entwicklung ereignisgetriebener Softwaresysteme in C/C++. Dabei müssen lediglich Zustände und Zustandsübergänge (Zustandsautomaten) codiert werden. Das Framework übernimmt anschließend die Ausführung.

Aufgabe des Praktikums ist es, die Codegenerierung von AMUSE an das Framework qp anzupassen. Zustandsautomaten werden im Enterprise Architect modelliert, bei der Simulation wird qp Code generiert und ausgeführt. Der generierte Code kann anschließend direkt in Embedded Systems verwendet werden.

Voraussetzungen:

· UML Kenntnisse

· C/C++ Kenntnisse

· qp Kenntnisse (erwünscht, nicht vorausgesetzt!)

Lernziel des Praktikums:

· Tiefes Verständnis von ereignisorientiertem Programmieren

· Vertiefende Einblicke in das Thema Simulation von UML

· Praktisches Arbeiten mit dem Framework qp und Enterprise Architect

Bei Interesse melden Sie sich bitte bei: daniel.siegl@lieberlieber.com

Share and Enjoy:
  • Technorati
  • Digg
  • Facebook
  • del.icio.us
  • Live
  • Google Bookmarks
  • DotNetKicks
  • DZone
  • TwitThis
  • Blogosphere News
  • Blogplay
  • LinkedIn
  • MisterWong
  • MisterWong.DE
  • MSN Reporter
  • MyShare
  • RSS
  • StumbleUpon
  • Suggest to Techmeme via Twitter
  • Tumblr
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yigg