pyswarm Documentation (http://pyswarm.sourceforge.net/)

pyswarm Documentation

Version: 0.7.1

Anastasios Hatzis

The main author of pyswarm is Anastasios Hatzis, though contributions are welcome from others. An author list can be found in the file AUTHORS. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

The licensor of pyswarm is the Free Software Foundation Europe (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich, Switzerland, email:ftf@fsfeurope.org.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License .

All standards, products or company names mentioned are used for identification purposes only, and may be trademarks of their respective owners.

[Warning] Warning

This document provides information on a technology preview release of pyswarm for the solely purpose of study. This version is not appropriate for production use. It is strongly recommended not to use this release in any productive or mission-critical environment.

2007


Table of Contents

Preface
I. Introduction
1. Overview of this pyswarm Documentation
2. Changes
2.1. Changes in Distribution
2.2. Changes in Documentation
3. What is pyswarm?
3.1. Architecture Overview
3.2. Business Objects
3.3. pyswarm SDK
4. A Brief History of pyswarm
5. Conventions
6. Community
6.1. Stay Up-to-date
6.2. Getting Help
6.3. Reporting Bugs
6.4. Feature Requests and General Discussion
6.5. Participate in pyswarm
II. SDK Installation Manual
1. Migration
1.1. General Information on 0.6.1
1.2. Previous Installation of OpenSwarm/pyswarm
2. The Base Products
2.1. Platform Independence
2.2. Installing and Configuring Python
3. Installing pyswarm
3.1. General
3.2. Binary RPM Package
3.3. Source Distribution
3.4. Windows Installer
3.5. Customizing Installation
4. Optional 3rd-Party Software Tools
4.1. UML CASE Tool: MagicDraw 11.0 CE
III. Application Installation Manual
1. Migration
1.1. General Information on 0.6.1
1.2. Previous Installation of OpenSwarm/pyswarm
2. The Base Products
2.1. Platform Independence
2.2. Installing and Configuring Python
2.3. Installing and Configuring PostgreSQL
2.4. Installing egenix-mx-base (mxDateTime)
2.5. Installing pyPgSQL
3. Installing pyswarm Applications
3.1. General
3.2. Automatic Application Setup
3.3. Content of the generated output
3.4. Binary RPM Package
3.5. Source Distribution
3.6. Windows Installer
IV. Tutorials
1. Overview
2. Tutorial for Newbies
2.1. Pre-Requisites
2.2. Modeling Your Application
2.3. Generating Your Application
2.4. Installing Your Application
2.5. Running Your Application
V. Modeling Manual
1. Concepts
1.1. Visibility
1.2. Multiplicity
2. Web User Interface (Experimental)
2.1. Overview
VI. SDK Manual
1. General Information
1.1. Configuration Context
1.2. Working with pyswarm Project Files
1.3. Supported CASE Tools and Versions of UML/XMI
1.4. Phases of the Generation Process
2. Logging of the Generation Process
2.1. Default Logging Configuration
2.2. Meaning of the Log-Levels
3. SDK Commands
3.1. Overview
3.2. Copy Project: pyswarm-copy
3.3. Modify Project: pyswarm-edit
3.4. Copy Project: pyswarm-generate
3.5. Create Project: pyswarm-new
3.6. View Project: pyswarm-view
3.7. Modify SDK Preferences: pyswarm-sdk-edit
3.8. View SDK Preferences: pyswarm-sdk-view
3.9. Initialize Databases: initdb
VII. Reference Manual
1. pyswarm Model Reference
1.1. Overview by Category
1.2. Association
1.3. Association-Role
1.4. Attribute
1.5. Database Component
1.6. Datatype
1.7. Dependency (Import)
1.8. Dependency (Repository)
1.9. Entity
1.10. Enumeration
1.11. Enumeration Literal
1.12. External
1.13. External Class
1.14. External Module
1.15. External Package
1.16. Generalization
1.17. Logic Component
1.18. Model
1.19. Node
1.20. pyswarm Profile
1.21. Operation
1.22. Operation (Auto Logic)
1.23. Operation (Taboo Logic)
1.24. Parameter
1.25. Returntype
1.26. Script Component
1.27. Stereotype
1.28. Sub-Package
1.29. System
1.30. Tag-Definition
1.31. XMI
1.32. Zone
2. UML 2.0 Model Element Types
2.1. uml:Association
2.2. uml:Class
2.3. uml:Component
2.4. uml:DataType
2.5. uml:Dependency
2.6. uml:Enumeration
2.7. uml:EnumerationLiteral
2.8. uml:Generalization
2.9. uml:Model
2.10. uml:Operation
2.11. uml:Package
2.12. uml:Parameter
2.13. uml:Property
2.14. uml:Profile
2.15. uml:Stereotype
3. pyswarm Run-time API
3.1. Logic Component
3.2. Operation
3.3. Entity
3.4. Zone
3.5. Proxy
3.6. Collection
4. pyswarm ORM Reference
4.1. The Architecture Database Design
4.2. Table: EntityRegistry
4.3. Table: EntityVersion
4.4. Table: EntityType
4.5. Table: EntityProtection
4.6. Table: EntityClass
4.7. Table: EntityActivity
4.8. Table: EntityActivityType
4.9. Table: Entity
4.10. Table: Zone
4.11. Custom Business Class Tables
4.12. Custom Association Tables
5. pyswarm SDK Reference
5.1. API
5.2. How the generator works
5.3. Transformation
6. Dependencies
6.1. Python
VIII. Discussion of Future Development
1. Priority Goals for Rocking Herring
2. System Development Kit
3. Back-end Components
4. User Interface Components
A. GNU Free Documentation License
A.1. PREAMBLE
A.2. APPLICABILITY AND DEFINITIONS
A.3. VERBATIM COPYING
A.4. COPYING IN QUANTITY
A.5. MODIFICATIONS
A.6. COMBINING DOCUMENTS
A.7. COLLECTIONS OF DOCUMENTS
A.8. AGGREGATION WITH INDEPENDENT WORKS
A.9. TRANSLATION
A.10. TERMINATION
A.11. FUTURE REVISIONS OF THIS LICENSE
A.12. ADDENDUM: How to use this License for your documents
B. GNU General Public License
B.1. Preamble
B.2. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
B.3. How to Apply These Terms to Your New Programs

List of Tables

2.1. Python Import Patterns Supported by pyswarm
1.1. UML and XMI Support
2.1. Python Log Levels

List of Examples

5.1. Example of a Command Synopsis
5.2. Example of Program Listing With No Call-Outs
5.3. Example of Program Listing With Call-Outs
5.4. Example of Screen
5.5. Example of User Input on Win32
5.6. Example of User Input on Unix as Normal User
5.7. Example of User Input on Unix as Super User
2.1. from X import *
2.2. from X import Y
2.3. import X
2.1. Example extract of log-file during parse phase
3.1. Copy Project File on GNU/Linux
3.2. Modify Project File on GNU/Linux
3.3. Generate pyswarm Application on GNU/Linux
3.4. Create Project File on GNU/Linux
3.5. Show Project Settings on GNU/Linux
3.6. Edit SDK Preferences on GNU/Linux
3.7. Show SDK Preferences on GNU/Linux
3.8. Initialize all PostgreSQL databases on GNU/Linux
3.9. Initialize databases of specific host on GNU/Linux
3.10. Initialize one database on GNU/Linux
3.1. Generated Names for Business Attributes
3.2. Generated Names for Opposite Association-Roles
3.1. Example output of printer dialog
This document was created using the >e-novative> DocBook Environment (eDE)