OOMEGA

OOMEGA covers two aspects of the software industry: transparent persistence and model-driven engineering (MDE). The uniqueness of OOMEGA's approach is the tight integration of both topics into one solution: MDE is used to handle transparent persistence by generating uniform, fast and comfortable persistence layers. On the other hand transparent persistence forms the basis for running MDE on top of various database systems. OOMEGA supports Java software developers by taking care of (generated) persistence layers and software developers in general by offering a MDE tool chain. A dual licensing model opens up OOMEGA for the open source community. Source code and deployment descriptors are generated fully-automated: currently OOMEGA supports db4objects, Hibernate and Versant Object Database.

History

OOMEGA is developed, commercially licensed and supported by OOMEGA GbR, which is a privately-held company based in Munich, Germany. The software was created since 2003; the company was incorporated in 2005. The partners of the company are Stefano Merenda and Christian Merenda.

Licensing

OOMEGA is available under two licenses (dual license): the open source, GPL, which enables easy download, evaluation, and use in GPL compliant projects; and a commercial runtime license for product development companies that wish to embed OOMEGA into their commercial, non-GPL products.

Features

Transparent Persistence

  • Easy and comfortable Java API: A single interface is offered containing basic operations and transaction management support. Moreover getter- and setter-methods are generated automatically.
  • Java-embedded query language: A great deal of syntax checks can be performed during compilation.
  • Extended data modelling concepts: OOMEGA distinguishes entity- and attribute classes, supports bidirectional associations, has defined clear semantics for aggregations and compositions, offers fine granular multiplicities and many more.
  • CASE tool and textual modelling: OOMEGA offers convenient CASE tool modelling in parallel to textual modelling with Java annotations.
  • Fully automated code generation: There are predefined templates for the persistence domain, i.e. you obtain immediately ready-made and deployable software.
  • Fast binary and XML serialisation: OOMEGA's fast binary codec attains maximum performance gains and the generic XML serialisation ensures compatibility.
  • Exchangeability and compatibility of persistence layers: Any persistence layer is controlled with exactly the same model and API. You can deploy applications to different database systems and seamlessly interconnect databases from different vendors. Besides you will profit from stand-alone development with OOMEGA MemoryDB and the ability to switch to a heavy-weight database system in production environments.
  • Support for Versant, Hibernate, db4objects and MemoryDB: OOMEGA supports Versant Object Database suitable for high performance object persistence in central data repositories. We do also support Hibernate to store objects in existing relational databases and db4objects to persist them in an embedded database system. Finally OOMEGA offers an in-memory object database which is called MemoryDB. Apart from ready-made integrations (which are open source) you can create your own interconnections as well.

Model-driven Engineering

  • Metamodel creation with CASE tool: Software engineers can rapidly create metamodels with a convenient CASE tool.
  • Storing metamodels in databases: Metamodels can be managed and concurrently edited in a central data repository.
  • Creating models with XML, Java and textual languages: You can import and export from and to XML respectively and a comfortable Java API is offered to create or update models.
  • JSP template language: Java Server Pages technology is a well-known and technically mature template language. In the context of JSP templates OOMEGA's easy and comfortable Java API is used to explore models.
  • Seamless Ant integration: Thanks to OOMEGA's integration with Apache Ant, software engineers can create fully automated build processes.
  • Best performance due to template pre-compiler: In MDE projects code generation performance is an important issue, because software engineers' manpower shouldn't be wasted by time-consuming build processes. OOMEGA is offering a very fast code generator whose templates might be even pre-compiled.
  • Unified treatment of metamodels, models and application data: You can apply OOMEGA's tool chain to all of your data: in development as well as in production environments.