Main > Free Download Search >

Free uml statechart software for linux

uml statechart

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 78
UML::State 0.02

UML::State 0.02


UML::State is an object oriented module which draws simple state diagrams. more>>
UML::State is an object oriented module which draws simple state diagrams.

SYNOPSIS

use UML::State;

my $diagram = UML::State->new(
$node_array,
$start_list,
$accept_list,
$edges
);

# You may change these defaults (doing so may even work):
$UML::State::ROW_SPACING = 75; # all numbers are in pixels
$UML::State::LEFT_MARGIN = 20;
$UML::State::WIDTH = 800;
$UML::State::HEIGHT = 800;

print $diagram->draw();

ABSTRACT

Are you tired of pointing and clicking to make simple diagrams? Do your wrists hurt thinking about making the pretty UML your boss likes so well? Consider using UML::State and UML::Sequence to make your life easier.

UML::State together with drawstate.pl allows you to easily generate state diagrams. You enter them in something like a cross between ASCII art and school room algebra. They come out looking like something from a drawing program like Visio. See drawstate.pl in the distribution for details about the input format and the samples directory for some examples of input and output.

You will probably use this class by running drawstate.pl or drawstatexml.pl which are included in the distribution. But you can use this package directly to gain control over the appearance of your pictures.

The two methods you need are new and draw (see below). If you want, you may change the dimensions by setting the package global variables as shown in the SYNOPSIS. Obviously, no error checking is done, so be careful to use reasonable values (positive numbers are good). All numbers are in pixels (sorry by Beziers in SVG seem to require pixels). I have not tried changing the numbers, so I dont have any idea if doing so makes reasonable changes to the output.

<<less
Download (0.054MB)
Added: 2007-04-23 License: Perl Artistic License Price:
915 downloads
UMLet 7.1

UMLet 7.1


UMLet is a lightweight tool for rapidly drawing UML diagrams. more>>
UMLet project is an open-source Java tool for rapidly drawing UML diagrams with a pop-up-free, light-weight user interface.
UMLet lets you draw diagram sketches fast; export diagrams to eps, pdf, jpg, svg, and sys.
Add elements to a diagram with a double click. Edit elements using the lower-right text panel. Select multiple elements using Ctrl or lasso. Press C to copy diagram to the system clipboard
Main features:
- fast
- text-based sequence diagram
- call from command line.
<<less
Download (4.9MB)
Added: 2006-11-22 License: GPL (GNU General Public License) Price:
657 downloads
P-UMLaut 1.2

P-UMLaut 1.2


The P-UMLaut tool allows the user to transform UML 2.0 Sequence Diagrams to semantically equivalent Petri Nets. more>>
The P-UMLaut tool allows the user to transform UML 2.0 Sequence Diagrams to semantically equivalent Petri Nets.
These Petri Nets may then be simulated using the supplied PN simulator (of PEP descent) or operated on with any tool that can work with high level Petri Nets.
By plugging different Realms into the simulation by way of an event filter, the modeled world may then be displayed and interacted with in various fashions. A 3D animation module is supplied as well as two examples utilizing the complete toolchain.
Enhancements:
- A new Petrinet Simulator was implemented in Java which features Highlevel-PN to Lowlevel-PN unfolding and Timed-PN simulation.
- Filtering was enhanced. Irrlicht 0.12 is used.
<<less
Download (15.9MB)
Added: 2005-09-27 License: GPL (GNU General Public License) Price:
1488 downloads
UML::Sequence 0.07

UML::Sequence 0.07


UML::Sequence is a Perl module to render UML sequence diagrams, often by running the code. more>>
UML::Sequence is a Perl module to render UML sequence diagrams, often by running the code.

SYNOPSIS

use UML::Sequence;

my $tree = UML::Sequence->new(@methods, @outline, &parse_method);
print $tree->build_xml_sequence(Title);

To use this package, or see how to use it, see genericseq.pl and seq2svg.pl.
This class helps produce UML sequence diagrams. build_xml_sequence returns a string (suitable for printing to a file) which the seq2svg.pl script converts into svg.

To control the appearance of the sequence diagram, pass to the constructor:
1 a reference to an array containing the signatures you want to hear about or a reference to a hash whose keys are the signatures you want 2 a reference to an array containing the lines in the outline of calls 3 a reference to a sub which takes signatures and returns class and method names

To build the array references and supply the code reference consult UML::Sequence::SimpleSeq, UML::Sequence::JavaSeq, or UML::Sequence::PerlSeq. To see one way to call these look in the supplied genericseq script.

<<less
Download (0.12MB)
Added: 2007-04-23 License: Perl Artistic License Price:
916 downloads
UMLSpeed 0.19

UMLSpeed 0.19


UMLSpeed is a compiler for a simple, C-style language that allows declaration of UML entities and diagrams. more>>
UMLSpeed project is a compiler for a simple, C-style language that allows declaration of UML entities and diagrams. Diagrams can be compiled into SVG and the entities to XMI for use with other tools.
Why?
- Graphical UML tools in general suck - why should we, as programmers have to drag and drop stupid graphical things and use a mouse when we could express what we want 10 times faster with a text editor and a simple notation? - More importantly, why should we have to lay everything out when the computer could do it for us?
- Graphical UML tools are bloated, huge, memory and disk-hogging monsters.
- Graphical UML tools use either a binary data format or XML, which is not particularly friendly to source code control systems.
Main features:
- Written in GCJ-portable java and compiled natively. Its extremely fast even when dealing with thousands of entities and diagrams.
- Purely command-line driven and takes miniscule resources.
- Flexible enough with file imports that large UML projects can be broken up into separate files and only individual bits built at a time as required.
- C-style syntax means that the source language integrates well with source code control and diff tools.
- Standards compliant - produces interoperable SVG and XMI, as well as clean source code.
- Can integrate with automated build tools for regular diagram/xmi compilation.
Status
This is still alpha software. Dont hold me responsible if it kills your pets and blows your house up.
Implemented so far:
- Compiler/parser
- Namespaces, Class diagrams and related entities
- Use case diagrams and related entities
- Auto-link pathfinding
- XMI 1.3 output
- VIM syntax highlighting
- Code generation (Java and Python)
Still to do:
- Documentation output
- Code generation (Ruby, PHP, Perl, C++, C#)
- Diagram packages
- Diagram notes
- Alternative diagram layout managers
- Deployment diagrams
- Sequence diagrams
- Activity diagrams
Enhancements:
- Added facilities to store HTML of reports in a buffer for use by plugins and turn off file generation. Maven plugin now uses this when using Doxia for generation.
- Added $PROJECTNAME and $PROJECTVERSION HTML tokens, with CLI parameters to set them. Maven plugin will automatically set them.
- Added $PUBLISHDATE token
- Added $TOC key for generating links to bookmarks on the same page.
<<less
Download (0.47MB)
Added: 2007-07-21 License: GPL (GNU General Public License) Price:
826 downloads
Concurrent Hierarchical State Machine 4.3

Concurrent Hierarchical State Machine 4.3


Concurrent Hierarchical State Machine (CHSM) is a language system for specifying concurrent, hierarchical, finite state machines more>>
Concurrent Hierarchical State Machine (CHSM) is a language system for specifying concurrent, hierarchical, finite state machines (an implementation of "statecharts") to model and control reactive systems.
CHSM uses its own statechart specification langauge annotated with either C++ or Java code fragments in the tradition of yacc grammars with C code fragments. The generated code is fully object oriented allowing multiple state machines to exist concurrently. The CHSM run-time library is small, efficient, and thread-safe.
CHSM has been used successfullly in production environments such as CERN, Philips, and Qualcomm. There is an independent review from users at CERN.
Enhancements:
- The "dominance" rule has been extended from parent/child transitions to sibling transitions.
- This allows "if-else" transitions to be done more efficiently.
<<less
Download (0.24MB)
Added: 2007-08-04 License: GPL (GNU General Public License) Price:
819 downloads
UML::Sequence::JavaSeq 0.07

UML::Sequence::JavaSeq 0.07


UML::Sequence::JavaSeq is a Perl module for use with genericseq.pl script, works on compiled Java programs. more>>
UML::Sequence::JavaSeq is a Perl module for use with genericseq.pl script, works on compiled Java programs.

SYNOPSIS

genericseq.pl UML::Sequence::JavaSeq Hello.methods Hello > Hello.xml
seq2svg.pl Hello.xml > Hello.svg

OR

genericseq.pl UML::Sequence::JavaSeq Hello.methods Hello | seq2svg.pl > Hello.svg

This file depends on UML::Sequence::SimpleSeq and a Java tool called Seq.java. The later produces an outline of the calls to methods named in Hello.methods. The former provides methods UML::Sequence needs to produce an xml sequence. Look in the provided Hello.methods to see what options you have for controlling output.

For this class to work, you must have Seq.class (and its friends) and tools.jar (the one containing the the jpda) in your class path. Your jpda must be happy. (The jpda is the Java Platform Debugger Architecture. It ships with java 1.3.)

grab_outline_text

Call this method through the class name with the method file, the class you want to sequence, and any arguments that classs main method needs. Returns an outline you can pass to UML::Sequence::SimpleSeq->grab_methods and to the UML::Sequence constructor.

<<less
Download (0.12MB)
Added: 2007-06-05 License: Perl Artistic License Price:
872 downloads
UMMF::UML::MetaMetaModel 1.02

UMMF::UML::MetaMetaModel 1.02


UMMF::UML::MetaMetaModel is an implementation of the UML Meta-Meta-Model (M3). more>>
UMMF::UML::MetaMetaModel is an implementation of the UML Meta-Meta-Model (M3).

SYNOPSIS

use UMMF::UML::MetaMetaModel;
my $factory = UMMF::UML::MetaMetaModel->factory;
my $model = $factory->create(Model);
$factory->create(Class, name => Foo, namespace => $model);
...

This package implements a meta-meta-model (M3) for generating the UML metamodel (M2).

UMMF::UML::MetaMetaModel is not an implementation of the MOF; It is actually a subset of the 1.5 Meta-model, as described in UML Spec. 1.5., p.2-13, but with a flattened package namespace.

It is the "Backbone" for generating the meta-model.

The UML 1.5 Meta-model is described in UMMF::UML::MetaModel package, in the ad-hoc language imported by UMMF::UML::Import::MetaMetaModel.

This meta-model is then used to generate the Perl (or Java) code for the classes in UMMF::UML::MetaModel::*.

The same exporters and importers can be used to process M* layers.

Thus, one description of the meta-model can generate multiple implementations.

<<less
Download (0.67MB)
Added: 2007-06-14 License: Perl Artistic License Price:
865 downloads
UMLGraph 4.8

UMLGraph 4.8


UMLGraph facilitates the declarative specification and drawing of UML class and sequence diagrams. more>>
UMLGraph facilitates the declarative specification and drawing of UML class and sequence diagrams.
One can specify a class design using the Java syntax complemented by Javadoc tags.
Running the UmlGraph doclet on the specification generates a Graphviz diagram specification that can be automatically processed to create Postscript, GIF, SVG, JPEG, fig, or Framemaker drawings.
Similarly, sequence diagrams are specified using declarative pic macros and compiled with the GNU plotutils pic2plot program into a PNG, PNM, (pseudo) GIF, SVG, AI, Postscript, CGM, FIG, PCL, HPGL, Regis, or TEK drawing.
Enhancements:
- This version improves its invocation interface so that it can be run directly as a jar file.
- It has support for sending results to the standard output for direct piping into dot.
- The distribution includes an example shell script and batch file for invoking UMLGraph.
<<less
Download (0.057MB)
Added: 2007-05-10 License: BSD License Price:
900 downloads
uml2svg 0.18

uml2svg 0.18


uml2svg is an XSLT-based tool for converting XMI-compliant UML Diagrams into SVG. more>>
uml2svg is an XSLT-based tool for converting XMI-compliant UML Diagrams into SVG.
We started the developing uml2svg with six main goals in mind:
- Standard conformance
- Good Documentation
- Modularity
- Extensibility
- Comprehensible SVG
- Multiple diagrams per XMI-file
SVG is a standard language for describing two-dimensional vector graphics in XML. As the open SVG standard gains in popularity and gradually replaces proprietary formats for vectorial graphics, the support provided by the Web browsers is getting better.
Plugins to display SVG exist for most browsers and it is most likely that the next generation of Web browser will provide built-in support for SVG. When that happens there will be no better way to distribute vector graphics on the web. Furthermore, not only web browsers can process SVG in a meaningful way; in fact that is just the tip of the iceberg. SVG can be easily read in, processed, and then transformed into many other formats, being well suited for both text and graphic tools as well as for web agents and screen readers.
UML diagrams are composed of lines, polygons, ellipses and text labels, so they are inherently vectorial. However, the SVG is not very well suited for direct use by UML tools. While some of them can in fact export UML diagrams directly to SVG, they do that by discarding all the information about structure, and converting everything into a shape. Moreover, some tools use the screen-capture function provided by their environment (such as java2d) and then they apply a filter to generate SVG out of the "screenshot".
What comes out of that is a pile of meaningless information, which by accident happens to draw a gorgeous diagram. How will a screen reader interpret such a file? How will a web crawler be able to index it? How will a web agent process it in a meaningful way? A program needs the semantic information that the humans can extract just by looking at a picture. For a machine, an obfuscated SVG file is not easier to process than a PNG file or any other image.
Although for humans it is better to be able to scale the image, for a program this is irrelevant. Programs need a way to "understand" the semantics of the UML models to be able to process and interchange them in a meaningfull way. This was the main idea behind the XML Metadata Interchange (XMI), an OMG specification for model interchange. And probably the best use that XMI has found so far is the exchange of UML models between different modeling tools. And while the XMI provides a standard way for tools to represent models as XML documents, it is still limited to the model elements only.
With the introduction of the UML 2.0 Diagram Interchange Specification as part of the upcoming UML 2.0 standard, it will become possible for tools to exchange the models together with the layout of the diagrams. We think that, once this specification appears, XMI will be used averywhere. Not only will the tools be able to exchange diagrams, but could even represent them internaly as DOM trees. Have you ever considered drawing your UML diagrams online, using only a web browser? This could be done even now by using a custom SVG syntax for the DOM tree, but a solution based on XMI could do even better and be a standard at the same time.
Therefore, we believe that with the advent of UML 2.0 and the increase in the use of SVG, the need for transformations between XMI and SVG will be great. Nevertheless when the uml2svg project was started, there was hardly any good open-source solution to convert XMI diagams into SVG.
The UML 2.0 Diagram Interchange Adopted Specification in its current incipient form references a set of XSL transformations. Although the standard draft covers them to a large extent, the link is actually broken (you can try for yourself). It has been broken for more than a year and most likely it will stay like that forever.
The personal webpage of Professor Mario Jeckle provides an online transformation service capable of dynamically generating SVG from XMI-compliant XML files. The XSL files accomplishing the transformations are also available on that website. These transformations are monolithic and not well documented (the only documentation is in the code, and it is generally written in German). With the tragic accident that took the life of Professor Jeckle, the transformations have no longer been maintained.
Finally, the STZ-IDA research center in Karlsruhe had to convert UML diagrams to SVG, as part of one of their projects. The XSLT stylesheet they created for this purpose was named xmi2svg and is available under the terms of the MIT license. At the time we started work on uml2svg the only type of diagrams supported was class diagrams.
Recently the package reached version 0.2 and it supports more diagram types, without major changes in the code (the opposite of what we were expecting). Andreas Junghans, the author of xmi2svg, provided us with a lot of insightful hints which helped us eliminate many glitches in uml2svg. It looks that the development of uml2svg and xmi2svg will continue in parallel, at least for a while. The good thing about this is that the two (quite different) implementations prove each others validity and the features tend to propagate freely from one side to the other. However, this comes with the prize of having to maintain two different code-trees and possibly confusing some users.
We did not like the two existing solutions because they were:
incomplete - just prototypes, not well suited for production environment
monolithic - hard to maintain and extend
not documented - hard to understand
At first sight, we thought we could find a way to improve one of the existing solutions and just add the features we needed. However, we slowly came to the conclusion that it would be better if we started anew. There are things one can fix in a project, but that does not include what we thought is was bad design. The fact that the two implementations presented above are open source helped us get quickly on the way with our own project.
Enhancements:
- Two annoying bugs were fixed.
- The site and documentation were updated.
<<less
Download (MB)
Added: 2007-02-18 License: LGPL (GNU Lesser General Public License) Price:
981 downloads
ArgoUML 0.20

ArgoUML 0.20


ArgoUML is a pure Java open source UML CASE tool that provides cognitive support for object-oriented design. more>>
ArgoUML is a pure Java open source UML CASE tool that provides cognitive support for object-oriented design.
ArgoUML provides some of the same editing and code generation features of a commercial CASE tool, but it focuses on features that enhance usability and support the cognitive needs of designers. Uses XML file formats: XMI and PGML.
Main features:
- Click and Go! with Java Web Start
- Platform Independent: Java 1.4+
- Standard UML 1.3 Meta-Model
- 8 out of 9 Diagrams supported
- XMI-Support
- Export Diagrams as GIF, PS, EPS, PGML and SVG
- Internationalization EN, DE, ES, RU, FR, NB
- Advanced diagram editing and Zoom
- OCL Support
- Forward Engineering
- Reverse Engineering / Jar/class file Import
- Cognitive Support
- Reflection-in-action
- Design Critics
- Corrective Automations (partially implemented)
- "To Do" List
- User model (partially implemented)
- Opportunistic Design
- "To Do" List
- Checklists
- Comprehension and Problem Solving
- Explorer Perspectives
- Multiple, Overlapping Views
- Alternative Design Representations: Graphs, Text, or Table
Enhancements:
- This is the first release which easily generates Debian packages and installs the server cleanly.
- The Perl client works correctly when connecting to the server and allows all the basic operations to be carried out.
<<less
Download (9.2MB)
Added: 2006-02-20 License: BSD License Price:
1464 downloads
UMLMON 1.0.3

UMLMON 1.0.3


UMLMON is a complete run time environment for User Mode Linux. more>>
UMLMON is a complete run time environment for User Mode Linux. There is a separate monitor daemon for every VM.
UMLMON project creates the run time environment and starts the VM by executing the UML kernel. The daemon also determines the arguments that are passed to the UML kernel, and includes special support to set up arguments for memory size, virtual disks, virtual network interfaces, and console channels in a convenient way.
UMLMON also includes routines to do certain administration tasks like the creation of disks.
The team UMLMON + UML can be applied in the following areas:
- Server consolidation: Improve the utilization of server hardware, and ease the operation of servers.
- Virtual security zones: Instead of building demilitarized zones (DMZ) with real hardware, it is a cost-effective alternative to set up purely virtual DMZs on a single host.
- Virtual hosting: A cheap version of server hosting is virtual hosting; instead of leasing real computers to customers, virtual machines are used.
- Laboratory nets: By using virtual machines it is possible to build cheap laboratory nets, e.g. to test software in real network environments.
- Training environments: One can use virtual machines for Linux trainings where participants can get true administrators priviledges without any risks.
Enhancements:
- This release no longer call the problematic glibc function getgrouplist, which is often broken (symptom: segmentation fault immediately after starting umlmon).
<<less
Download (3.2MB)
Added: 2006-01-08 License: GPL (GNU General Public License) Price:
1384 downloads
Class::Tangram 1.57

Class::Tangram 1.57


Class::Tangram is a Perl module for tangram-friendly classes, DWIM attributes. more>>
Class::Tangram is a Perl module for tangram-friendly classes, DWIM attributes.

SYNOPSIS

package MyObject;

use base qw(Class::Tangram);

our $fields = { int => [ qw(foo bar) ],
string => [ qw(baz quux) ] };

package main;

my $object = MyObject->new(foo => 2, baz => "hello");

print $object->baz(); # prints "hello"

$object->set_quux("Something");

$object->set_foo("Something"); # dies - not an integer

Class::Tangram is a tool for defining objects attributes. Simply define your objects fields/attributes using the same data structure introduced in _A Guided Tour of Tangram_ (see "SEE ALSO") and detailed in Tangram::Schema, and you get objects that work As Youd Expect(tm).

Class::Tangram has no dependancy upon Tangram, and vice versa. Neither requires anything special of your objects, nor do they insert any special fields into your objects. This is a very important feature with innumerable benefits, and few (if any) other object persistence tools have this feature.

So, fluff aside, lets run through how you use Class::Tangram to make objects.
First, you decide upon the attributes your object is going to have. You might do this using UML, or you might pick an existing database table and declare each column to be an attribute (you can leave out "id"; that one is implicit; also, leave out foreign keys until later).

<<less
Download (0.049MB)
Added: 2006-10-05 License: Perl Artistic License Price:
1114 downloads
Shell for Simulated Agent Systems 1.9.2

Shell for Simulated Agent Systems 1.9.2


SeSAm provides a generic environment for modelling and experimenting with agent-based simulation. more>>
SeSAm (Shell for Simulated Agent Systems) provides a generic environment for modelling and experimenting with agent-based simulation.
We specially focused on providing a tool for the easy construction of complex models, which include dynamic interdependecies or emergent behaviour.
SeSAm agents consist of a body, that contains a set of state variables and a behaviour that is implemented in form of UML-like diagram. Based on an extensive number of primitive components, a user is able to design a simulation graphically without knowing the syntax of a traditional programming language.
The model specification is executable in the same environment and the dynamics of this simulation may be observed. As there are freely configurable instruments for gathering data and scripting options for constructing simulation experiments, SeSAm is a highly valuable tool for MAS simulations especially for complex models with flexible agent behaviour and interactions.
Main features:
- Easy visual agent modelling,
- Flexible environment and situation definition,
- The whole power of a programming language,
- Integrated graphical simulation analysis ,
- Distribution of simulation runs in your LAN ,
- and many further features.....
<<less
Download (34.43MB)
Added: 2005-07-11 License: GPL (GNU General Public License) Price:
1566 downloads
Umbrello UML Modeller 1.5.71

Umbrello UML Modeller 1.5.71


Umbrello UML Modeller is a Unified Modelling Language diagram programme for KDE. more>>
Umbrello UML Modeller is a Unified Modelling Language diagram programme for KDE.
Umbrello UML Modeller allows you to create diagrams of software and other systems in a standard format.
Our handbook gives a good introduction to Umbrello and UML modelling.
Enhancements:
- Bugs/wishes from http://bugs.kde.org:
- Preprocessor keywords ignored which causes endless loop in code import (119125)
- Code generator for D language (124805)
- Unstable saves and loads, class names become dirty (145709)
- Crash on deleting class in list view (145762)
- Class attribute documentation not generated for python (145916)
- Python code generator does not wrap lines properly (145918)
- Attribute documentation not generated for Export to XHTML (145972)
- Crash when moving a class in a Java UML diagram (146058)
- Arrowheads are not shown (146064)
- Crash when creating a class that refers to more than one other classes/datatypes (146367)
<<less
Download (2.3MB)
Added: 2007-06-08 License: GPL (GNU General Public License) Price:
886 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5