pyswarm

pyswarm project (formerly known as OpenSwarm) processes your UML 2.0 model to generate a Python server application.
Download

pyswarm Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • Anastasios Hatzis
  • Publisher web site:

pyswarm Tags


pyswarm Description

pyswarm processes your UML 2.0 model to generate a Python server application. 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:FEATURES:IMPORTANT: This release is incompatible with all prior releases of pyswarm!Before installation of this release, please read Installation partin pyswarm documentation to learn how to remove prior releases. #1708563: Remove PyXML dependency#1708563: Remove PyXML dependencyThe pyswarm SDK now does'nt use the 3rd-party PyXML library anymore.Additionally the generation process is now around five times faster withno debug turned on and maybe around two times faster with --debug optionturned 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 requirethe installation of some 3rd-party libraries that are not distributed withPython or pyswarm. Details on the requirements are described in the ApplicationInstallation part of the documentation.Reading and writing of PYSP files now uses the xml.dom.minidom from Pythonstandard lib. PyXML installation is not needed anymore for this modulThese changes also remove dependency of generator's parse process fromPyXML. So future releases of pyswarm SDK do not require an installation of3rd-party module PyXML anymore.As a nice surprise I could also measure that the new generator issignificantly faster in consuming the XMI file. In the case of PetStore.xmlpyswarm-generate.py 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 54sec), and --silent took 8 sec. (before 49 sec). As you see the generationnow will took only ~20% of the time as in the 0.7.0 release. Only exceptionis --debug since I have added plenty of debug messages - for each XMLelement all accepted attributes are checked and a debug message is loggedwhether such attribute has been found or not.Parse now uses xml.dom.minidom from Python standard lib. It is a ratherugly hack of the old code-base, but I don't know if it is worth to cleanthat 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 seperateobject attributes they should be better collected into one dictionary.FIXES:#1709176: ImportError: mx.DateTime not removed from project.pyIn sdklib/project.py 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.


pyswarm Related Software