pyswarm 0.7.1

pyswarm processes your UML 2.0 model to generate a Python server application.

  Add it to your Download Basket!

 Add it to your Watch List!


Rate it!
send us
an update
GPL (GNU General Public License) 
2.8/5 15
Anastasios Hatzis
ROOT \ Programming \ Code Generators
pyswarm processes your UML 2.0 model to generate a Python server application.

It provides easily customizable business logic based on Python and PostgreSQL. As required by the MDA standard, OpenSwarm uses UML (version 2.0 stored as XMI 2.1).

What's New in This Release:


IMPORTANT: This release is incompatible with all prior releases of pyswarm!
Before installation of this release, please read Installation part
in pyswarm documentation to learn how to remove prior releases.

#1708563: Remove PyXML dependency

#1708563: Remove PyXML dependency

The pyswarm SDK now does'nt use the 3rd-party PyXML library anymore.
Additionally the generation process is now around five times faster with
no debug turned on and maybe around two times faster with --debug option
turned on than in version 0.7.0 and earlier.

Although the SDK itself now needs only a compatible Python interpreter,
testing or running a generated application and its databases will still require
the installation of some 3rd-party libraries that are not distributed with
Python or pyswarm. Details on the requirements are described in the Application
Installation part of the documentation.

Reading and writing of PYSP files now uses the xml.dom.minidom from Python
standard lib. PyXML installation is not needed anymore for this modul

These changes also remove dependency of generator's parse process from
PyXML. So future releases of pyswarm SDK do not require an installation of
3rd-party module PyXML anymore.

As a nice surprise I could also measure that the new generator is
significantly faster in consuming the XMI file. In the case of PetStore.xml needed with --brief ~ 9 seconds for complete process
(including finishing output), while before it needed ~50 seconds. Option
--verbose took 10 sec. (before: 51 sec.), --debug took 30 sec. (before 54
sec), and --silent took 8 sec. (before 49 sec). As you see the generation
now will took only ~20% of the time as in the 0.7.0 release. Only exception
is --debug since I have added plenty of debug messages - for each XML
element all accepted attributes are checked and a debug message is logged
whether such attribute has been found or not.

Parse now uses xml.dom.minidom from Python standard lib. It is a rather
ugly hack of the old code-base, but I don't know if it is worth to clean
that up since most of this code will be re-engineered anyway. However,
ValidatedTagAttributes would be a nice candidate for a XML wrapper class.
But instead of having all possible tag attributes represented as seperate
object attributes they should be better collected into one dictionary.


#1709176: ImportError: mx.DateTime not removed from
In sdklib/ there is still an import mx.DateTime statement. It is
not needed anymore. I just forgot to remove the import statement. So if you
have not mx.DateTime installed this will lead to an ImportError exception
whenever you call a SDK command that needs to read or write a PYSP file.

Last updated on November 14th, 2007

#process UML model #Python server #UML 2.0 model #pyswarm #process #UML #model

Add your review!