Freedom The Open Source Way Contribute Articles or News to OSForgeOSForge HomeLogout from Forums
Contacting OSForgeOSForge HomeAbout OSForge
  

Root
Contribute News
Learning Corner
Linux Distributions
Linux Common FAQ's
Discussion Forums
Community Gallery
Links Directory
Search OSForge
Networking
Industry Updates
Linux & Open Source
Opinions
Press Release
Programming
Security
Web Development

White Paper
Plat'Home Launches First Linux-based Eco-Friendly Servers In United States
World’s Largest Python Conference Sees 70 Percent Jump in Attendance
Leading SaaS Infrastructure Provider Deploys Zenoss to Improve Uptime and Reduce Cost
JasperSoft is Most Widely-Deployed Business Intelligence Software in the World
Cluster Resources to Showcase Adaptive Windows/Linux Cluster at BrainShare
Funambol Helps New AGPLv3 Open Source License Gain Formal OSI Approval
Zenoss Sponsors PyCon 2008 and Leads Application Monitoring Discussion
The Linux Foundation Reveals Speaker Line-up for 2nd Annual Collaboration Summit
Zenoss Core Named 2008 CODiE Awards Finalist for Best Open Source Solution

View More »

UML StateWizard: A Dynamic Model Tool
By : Jerome Find more article by Jerome on Programming
Monday the 1st, May 2006 at 02:39 PM (CDT)
Send this Story to a Friend Readers TalkBack (0) - 869 Reads

Printer Friendly Page Printable format
Send this Story to a Friend Foward to Email

UML StateWizard acts as a Visual C++ Add-in, which provides a UML (Unified Modeling Language) state machine programming mechanism in portable standard C/C++ for either embedded systems development and simulation, or Windows/WinCE application development. After embedded systems' simulation and debugging in Visual C++ developer studio, developer can move program to a destination working environment with little or no extra investment of effort.

Effective Mapping for Modeling State Machines in Round-trip Engineering


Many concurrent, distibuted and real-time applications are natural candidates for being organized as state machines. An inter-object's behaviours that must sequence a series of actions, or handle inputs differently depending on what state it's in, is often best implemented as a state machine.

Please get the full article at http://www.intelliwizard.com/paper/Effective_Mapping_for_Modeling_State_Machines.pdf

State machine modeling technology generally used in these software development provides users a visual, dynamic perspective in design and implementation steps, greatly improving development efficiency and curtailing development cycles. Through modeling, we can mainly benefit in two aspects: Readability, which enables a clear system description by capturing the internal structure and external behaviors of a system; Reusability, which makes to distinguish a system’s similarities and redundancies with others in terms of its functionality, feature or structure.

You may ask why this article, while there are already many good UML tools such as Rational Rose, VisualState and others. Our answer is Round-trip Engineering support. An important rule in software design is that no design remains unchanged. This is as true for small systems as it is for large systems. During development, the design structure defined in the UML model does undergo changes to incorporate physical differences in implementation that may not have been envisaged during design. It becomes very difficult to keep the design of the system updated with the changes in the source code.

The most of the preceding work has been focused on UML diagram drawing and code generation, in other word, one-way mapping. We consider two-way approach over state chart and executable source code. Our solution tends to enforce the UML tool’s capability of real-time synchronizing its model according to modification in code part. For example, developers can visually do a drag-and-drop operation in state chart diagram and subsequently the source code would change as well; to the contrary, developers may directly rectify the code part while modification will be automatically shown in state chart diagram. As seen from it, our solution serves as a bridge between state chart diagram and source code.

Our study is mainly based on our open source project, UML StateWizard[2][3], which brings out an alternative view in rapid development based on round-trip engineering theory.


· StateWizard aims at not only being a model or code generation tool, but also being a full-featured UML dynamic model tool with reverse engineering and round-trip engineering features. It models program with the State Charts or the State Tree, on the other hand, it synchronizes the model with the changes in the application code in the stages of software design and coding;
· Just like Visual C++ ClassWizard, StateWizard runs inside the popular IDE (integrated development environment). No need to switch between tools for design/development, while many other UML model tools run stand alone;
· Rapidly builds applications with state machine based frameworks. Efficiently codes state charts directly in platform-independent standard C/C++;
· Provides state tracking, simulation and debugging for embedded system development.

In this paper we study the state modeling problems related with mapping. More concretely, we study the problem of efficient code generation, given a mapping between the state chart and the source code, and of rebuilding a state chart through this mapping.

While the techniques we describe are, at a high-level, intuitive, the main contributions of the paper are the techniques we developed to apply mapping between state chart and source code to rapid development, and the experimental study of their practical impact. All put together, our mapping techniques speed up application development, thereby enabling efficient development on significantly sized projects.

The paper is organized as follows: Section 2 presents in more detail concepts of Hierarchical state machine and an overview of traditional approaches. Section 3 provides an explanation of our mapping solution used in StateWizard project. Section 4 presents an experiment through our solution and Section 5 concludes.


Please get the full article at
http://www.intelliwizard.com/paper/Effective_Mapping_for_Modeling_State_Machines.pdf

  
Reader Rating from 1-5

 

Poor very 

1

2

3

4

5
 very Excellent

Talkback

Post Your Talkback | View All Talkback (0 Posted)


 Currently there are no Talkback posted on "UML StateWizard: A Dynamic Model Tool", Click here to be the first to post a talkback.


 
Scroll Up

   About | Term of Use | Privacy | Contact us | Tell a Friend | Advertise  

OSForge News RSS Feed