

ObjectCreator is a complete UML modeling tool, fully scriptable, specialized for Mac OS X.
Get the speed of a compiled Objective-C application to improve your development time and quality. Generate free source code for any language.
• Scriptable using Python

Speed your development time
Keep your class diagrams, reports, and source code synchronized with your model.
Generate and keep synchronized source code for project with multiple languages.
Type directly your operations code between generates code part.
Create your own scripts to generate code for any language, report, unit test code, apple event definition, xml files, etc…
Script your common task.
Draw UML Class Diagram
Use UML class diagrams to model your object design.
Class diagrams always synchronized with your model.
Generate diagram elements, using existing element relationship.
Use many options to change diagram symbol representation, still in respect with UML’s notation.
Add quality to your project
Use UML semantic to describe your software, database, xml file, business relationship, etc.
Use UML rules to verify your design.
Create your own rules to validate your design during all your development cycle.
Generate up to 90% of your code.
Watch source code dynamically change during your modelling time.
Support any language generation Examples ready to modify:
- Objective-C
- C++
- Java
- Python
- MySQL
Reverse Engineer &
Round-Trip (Objective-C)
Reverse your existing source code to UML semantics, keep operations code, create associations.
Keep your model synchronized when you modify your source code with an external application like XCode or CodeWarrior.
Extend ObjectCreator for your need
Extend UML for your need. (Business Modeling, RUP, etc.)
Create your own language profiles.
Access your model trough python script.
Embedded python interpreter.
Use python script to add your own functionality.
ObjectCreator Lite Features
UML Core
ObjectCreator Lite implement the model management, extension mechanism, and most of the core package of UML 1.5 meta-model.
ObjectCreator serve as repository for all your UML elements. Copy or move easily any elements inside your namespace hierarchy.
Verify your project design using standard UML 1.5 rules. Add your own rules using python scritp.
Import and export your models using the standard XMI format.
Model access permission between element using generalization, «access», «friend» and «import» permission.
Model with the following UML element:
Abstraction, Association, Attribute, Binding, Class, Constraint, DataType, Dependency, Enumeration, Generalization, Interface, Model, Operation, Package, Permission, Primitive, Stereotype, Subsystem, TagDefinition, TaggedValue, TemplateArgument, TemplateParameter, Usage.
UML Model Managment
Use package to group, order element and model namespace hierarchy.
Trace elements between different models.
Model Subsystem with attributes and operations.
Use alias name and different visibility for imported element.
UML Extension Mechanism
Use the UML extension mechanism to extend the UML meta-model for your need.
Use constraints to ensure your project is well formed and respect all your company/personal rules and design. Add powerfull python script to your constraints and let ObjectCreator generate warning when your project not respect your constraints.
Add properties to any UML elements using the TagDefinition.
Extend semantic of any UML elements using Stereopype. Use custom images for stereotyped element. Add specific properties for stereotyped element. Add scriptable constraints tested for each element that apply the stereotype.
Store stereotypes, constraints, tagDefinitions, and primitive dataType into a reusable profile.
ObjectCreator Extension
ObjectCreator is fully scriptable with python, a powerful object oriented scripting language.
ObjectCreator is a Cocoa/Objective-C application with an embedded python interpreter and the PyObjC Python/Objective-C Bridge. You can use any python modules, the complete Cocoa framework and the UML semantics implemented by ObjectCreator within your python script.
Each property of each UML element is accessible.
ObjectCreator include a python terminal to run complex queries on your project, quickly build and test your script.
A Tools menu let’s you run your python script directly from an ObjectCreator menu.
Class Diagram
Draw standard UML 1.5 Class Diagram.
Build your model by drawing class diagrams.
Many options to adjust your drawing to your need, all these options respect the UML standard.
Create diagram element based on dependency, association, generalization of selected elements.
Code Generation & Revert Engineer
Generate multiple language source code within the same project.
Dynamic code generation. Visualize directly on your code any change you made on your UML model.
Easily modify / create new language. Code generation are made using python script,
Group stereotypes, tags definition, constraints and rules specific to the language into a reusable language profile.
User can type source code directly within ObjectCreator, user code can be inserted between code generate by ObjectCreator.
Revert engineer and round-trip are available for Objective-C.
ObjectCreator Lite come with some example of language profile. You can use and modify them for generate code with your own design, style, and algorithm.
Current example profile ready to modify.
Profile | Code generation | Reverse Engineer |
Objective-C | √ | √ |
C++ | √ | |
Java | √ | |
Python | √ | |
MySQL | √ | √ |
Software Development Processes | ||
UML Business Modeling |
Objective-C Profile
Objective-C profile is an example to show you ObjectCreator code generation possibility.
Generate and keep synchronized source code for attributes and associations access operations.
Generate and keep synchronized source code for initialize and dealloc attributes and associations.
Generate and keep synchronized source code for encode and decode attributes (NSCoding).
Generate Apple’s HeaderDoc comments, or doxygen comments.
Extend UML to support Objective-C category.
Add rules specific to Objective-C.
Pro Version
Some features from the Pro version
- Complete UML semantic.
- All UML diagrams.
- Customizable Reverse Engineer & round-trip for: Objective-C, C++, Python, Java, MySQL,
postgreSQL, Oracle, XML schema. - Library of design patterns.
- Modelize UML profile.
- OCL (Object Constraint Language) support.
- Dynamic documentation editor.
- XCode integration.
- and more…