iQgen Documentation

innoQ Deutschland GmbH, Ratingen, Germany

innoQ GmbH, Dietlikon, Switzerland

This documentation is part of innoQ's iQgen product suite and licensed under the terms of the accompanying license agreement.

February 2004

Revision History
Revision 2.0February 2004innoQ
Initial.

Abstract

This is the product documentation for iQgen, innoQ's model driven software generator.


Table of Contents

Preface
Support, Community, and Feedback
Release Notes for Version 2.0
Eclipse Plugin
Enhanced user interface
Hooks for model validation
Properties to control transformation settings
Improved logging when executing from the command line or as an Ant task
Updated and enhanced documentation
1. Installation
System Requirements
Supported Operating Systems
Java Development Kit
CASE Tools
Installing using the Windows Installer
Installing the zip Archive
Installing the tar.gz Archive
Installing iQgen for Ant
Installing iQgen for Eclipse
2. User Guide
Introduction
Tutorial 1 Overview
UML Profile
Model
Tutorial Files
Generating Artifacts with the GUI
Writing iQgen Templates
Using XMI
JSP Syntax
How JSP are used in iQgen
Extending Generated Code
Using your own Tag Libraries
When to use Tag Libraries
Deploying Tag Libraries in iQgen
Using your own Tag Libraries in Templates
The iQgen Sample Tag Library
Transformation Properties
Setting Transformation Properties
Retrieving Transformation Properties
Manipulating Transformation Properties
Transformation Properties in Action
Model Validation
UML Profile
Model
Templates
Dynamic Classloading
UML Profile
Model
Templates
Generation
Activity diagrams
UML Profile
Model
3. Design Considerations
Does generating Code make Sense?
Good and Bad Code Generation
Generic vs. Generative Solutions
UML Profile Design
Forward Engineering & the Development Process
Embedding Code Generation in your Development Cycle
Generating Code in regular automated Builds
4. Reference
User Interface
Main Screen
Generation
Root Path
Menu Overview
Properties
Logging
Command Line Options
Ant Integration
Eclipse Integration
Using the iQgen Plug-In
iQgen Console
Known Bugs
Planned Features
The MetaModel
iQgen TagLib
IfTag
ForEachTag
ImportTag
PropertyTag
UserCodeTag
JSPFilenameTag
Tool Interoperability
Test Procedure
Static UML
Dynamic UML
Helpful external Resources
Glossary

List of Figures

1.1. Installed iQgen Eclipse plug-in
2.1. Tutorial 1 packages
2.2. Tutorial 1 dependencies class diagram
2.3. Main window with step-by-step marks
2.4. Invalid model
2.5. Valid model
2.6. Simple message board model
2.7. Login flow
4.1. Main window with loaded objects
4.2. Invalid entry (directory does not exist)
4.3. Valid entry (existing directory)
4.4. JSP-Engine properties
4.5. iQgen project editor
4.6. iQgen console
4.7. UML 1.3 - Core Package - Backbone
4.8. UML 1.3 - Core Package - Classifiers
4.9. Novosoft's UML Core Package

List of Tables

2.1. Files in Tutorial 1
2.2. Some of the implicit objects available in a JSP template
2.3. Methods for accessing Transformation Properties
2.4. Methods for manipulating Transformation Properties
2.5. Files for the Model Validation example
4.1. File menu
4.2. View menu
4.3. Run menu
4.4. Options menu
4.5. Help menu
4.6. XMI versions exported by different CASE tools
4.7. Tool specific support of associations
4.8. Supported interface and class inheritance
4.9. Supported stereotypes and tagged values
4.10. Supported attributes and operations properties
4.11. Supported package/class/interface dependencies
4.12. Tool specific support of associations