OMG Homepage MDA Homepage CORBA Homepage MOF Homepage UML Homepage CWM Homepage XMI Homepage DDS Homepage OMG MARTE BPMN Homepage SysML Homepage banner

MDA Success Story

ff-eCommerce - A Proven ERP System

Tools used: Interactive Objects Software's ArcStyler (MDA tool), Rational Rose (UML tool), POET Fast Objects, Tomcat, Borland Jbuilder

The introduction of ff-eCommerce in 1988 as a small business application for Apple computer dealers marked the beginning of a success story. As the story unfolded, the system developed into a platform-independent, comprehensive ERP application for medium-sized retailers and wholesalers as well as service providers. Following the recent migration to Sun's J2EE component platform, a great number of ff-eCommerce installations today control sales and distribution as well as purchasing and warehouse management in addition to serving as the bridging element between Web shops and logistics. For example, the system is used by Cancom IT Systeme AG, Europe's largest Apple distributor. And one of Europe's leading publishing houses runs its Web shop via ff-eCommerce's SOAP/XML interface.

This migration to J2EE was necessary in order secure the solid standing on the market and to keep pace with the rapid developments in terms of distributed systems. For this reason, ff-eCommerce Software AG decided to completely redesign its application.

"Our objective was to have full business continuity - for our customers and for ourselves. After all, one of our most valuable assets is the business and process knowledge. But many of the new features the market required could not be implemented within the framework of our existing development infrastructure and with the technologies we had used so far. At least not at reasonable costs and within a reasonable timeframe," said ff-eCommerce CEO Ekkegard Gentz.

The project objectives were extremely ambitious, and the demands on the new generation of ff-eCommerce systems very high: completely Browser-based and OS-independent, high performance, user-friendly, superior quality, high security standards, update of customer systems within a maximum of three days with complete conversion of up to 30 GB of data. After a careful analysis and evaluation of the market, Gentz and his team opted for the following technologies: Interactive Objects Software's ArcStyler as an architecture-based development platform, Rational Rose as the UML modeling tool, POET Fast Objects as OODB, Tomcat, Borland JBuilder.

The previous versions of the system had been developed under the 4GL RAD tool Omnis. While this allowed for fast application development and sophisticated GUIs, it implied all the drawbacks that go along with a proprietary solution, a lack of open interfaces and a native, non-scalable database. Instead of trying to keep adding functionality to a technology that might be outdated soon, Gentz and his people decided to migrate their business and process know-how to a new technological foundation and IT-architectural framework and pursue the OMG Model Driven Architecture (MDA) path.

ff-eCommerce Software AG decided to use a fully model-driven approach in the redesign of their system. The company chose ArcStyler for a variety of reasons. Gentz explained the decision as follows,"We carefully scanned the emerging MDA market. It's growing rapidly, and quite a few vendors seem to be jumping on the bandwagon at an amazing speed. Interactive Objects is backed by more than a decade of experience on the market of IT-architectural consulting, and they could prove in the pre-sales phase that their product fully supports all stages of a model-driven approach. This is extremely important because the application of the MDA approach and the usage of a fully MDA-compliant tool will not introduce any proprietary black boxes into the process."

This means that the decision for an MDA development platform does not imply a decision for any specific format of the artifacts created within the process - the problem caused by proprietary 4GL systems. The decision for a fully MDA-compliant system is reversible. All UML/XML components would still be available in a non-proprietary format following such a step.

In accordance with the MDA approach, the initial objective of ff-eCommerce AG was to describe and document the business domain dimension of the system in a platform-independent model. This model is a precise, isomorphic UML representation of the business logic in a standardized, easy to understand way, making the business-critical knowledge transparent and available without coupling it to any specific implementation technology at this stage.

ArcStyler is a complete architectural IDE and it supports the entire development cycle from the automatic refinement of the business model into UML models at various levels of detail and the automated generation of components all the way to testing and deployment. "A model-driven approach with intelligent code generation at different levels was the only solution that made sense," explained Gentz. ArcStyler uses so-called MDA Cartridges as its generator engine. These cartridges generate optimized code for IBM WebSphere, BEA WebLogic and other application servers and use a completely open format so that the generator engine can be adapted as needed by the customer. This extensibility is an important feature in terms of vendor-independence. ff-eCommerce AG customized its Cartridge to account for their company-specific requirements.

And the company took full advantage of the ArcStyler's flexible Web Accessor framework. Designing the GUI turned out to be easy, and the generation of the corresponding components was performed automatically by the ArcStyler. Some 1,000 GUIs for more than 50 Use Cases were modeled for the ERP system. The corresponding code was automatically generated by the development platform.

Another great benefit in the project was the fact that the model-driven, generative approach automatically ensured IT-architectural coherence across the entire development process. Whatever was modeled, was generated automatically, i.e. the code is always a direct representation of the model. ArcStyler's patented Verifier Framework controls the consistency of the models at the various levels of detail in model-to-model and model-to-code transformations. This way, the development platform ensures coherent, automatic end-to-end impact analysis from the highest level of abstraction of the initial model all the way down to the code. "There was no need to develop the thing just to find out something in the blueprint did not work properly," Gentz said.

The full potential of the model-driven approach became apparent when ff-eCommerce AG needed to add Web Services to the application. This did not require changes to the model, but only a different technology projection, i.e. something that could be done by the generator. Now, ff-eCommerce features a SOAP/XML interface for powerful Web shops.

"Our system became independent of specific manufacturers or technologies. Our architects and developers really enjoyed the feeling of being able to revise, for example, the decision for the application server without automatically incurring technical or financial disaster. And the best thing is: we still have all the options, we are completely flexible," remarked Gentz.

The short time-to-market could also be attributed to ArcStyler's capabilities within the framework of automated testing. "Automated unit testing is one of the essential foundations of our development process. We use JUnit, the test classes can be generated with ArcStyler, and the call of the test ANT can be included, so that nightly builds are possible," said Gentz.

ArcStyler integrates best-of-breed tools such as Rational Rose or JBuilder into an efficient IT "machine shop", an Architectural IDE. ff-eCommerce used Rational Rose as the UML modeling tool. ArcStyler complements the modeling functions and UML data created with Rose with the generative capabilities described above. In this sense, you do not really integrate ArcStyler in Rose, but vice versa, i.e. the ArcStyler provides the IT-architectural framework around all components of the development process, not just the UML modeling tool. Without turning the UML repositories into proprietary black boxes, ArcStyler provides bi-directional impact analysis, mapping and generation.

ArcStyler's approach adds architectural capabilities to round-trip-engineering (RTE) while removing the significant disadvantages of RTE. ArcStyler manages several levels of UML model-to-model transformation up into the domains of business and process modeling. In general, MDA allows transformations between all models, i.e. it is also possible to generate a platform independent model (PIM) from a platform specific model (PSM). However, this requires a clear and consistent modeling style since this "reverse" step depends on a great variety of factors and a single element of a PIM can affect several elements of a PSM. This transformation can be automated only if the corresponding elements of a PSM fit together in such a way that exactly one element of the PIM can be generated. Usually, when a PSM is transformed into a PIM, ambiguities arise which can only be solved manually by a developer. This, of course, is inherent in the approach and must be handled by all MDA IDEs. For this reason, the ff-eCommerce team always added design information at the appropriate level of abstraction. That way, all of the dependent PSMs at the lower levels could be updated automatically to the greatest possible extent.

In addition to these technical aspects, the MDA approach and the application of the ArcStyler also affected the structure and the workflows in the company. Some developers had initial reservations, primarily caused by the shift in focus from "real code" to the modeling and UML level. However, this skepticism quickly disappeared when the team discovered the new dimension in development speed. Said Gentz, "A long time ago we all hacked Assembler code, then we wrote programs in higher languages which were translated into machine code. And today, we work with the UML model. In this sense, UML is the 'code' in advanced development environments."

The new ff-eCommerce application is independent of specific technologies in several ways. The business logic has been completely separated from the implementation technology to account for the fact that these areas have totally different life cycles. The generative approach of the ArcStyler allows for the mapping of the platform-independent business model to different platform-specific models and the generation of optimized code for different platforms, thanks to the ArcStyler's Cartridge technology.

"This gives our ERP system the competitive edge in the area of technology that it already had in the area of ERP expertise. We can use the ArcStyler to deliver the advantages of MDA into any IT environment required by our customers, including existing systems, CORBA or C++ infrastructures, not just new developments with Java and J2EE - exactly the kind of flexibility we had expected from an architectural IDE," concluded Gentz.

The commitment to the MDA approach and the choice of ArcStyler as an architectural IDE resulted in the following "hard facts" in this redesign project:

  • Decrease in time to market and corresponding cost reductions of approx. 20% as compared to the estimated values attained with the existing environment
  • Encapsulation of the platform-independent business logic and the platform-specific technical details in separate UML models ensures easy maintainability and fast response to future requirements
  • High system quality, architectural consistency, automatic propagation of a cross-project IT architecture due to generation rules and guidelines in the generator

ff-eCommerce, an ERP software developer and application service provider, is a company of Cancom IT Systeme AG, Europe's largest Apple distributor, headquartered in Frankfurt, Germany. Additional information:

Copyright © 1997-2017 Object Management Group, Inc. All Rights Reserved. For questions about the WEBSITE , please contact
For TECHNICAL questions, please contact
Contact BD for info on joining OMG at
Explorer versions 6.0 or later or any browser capable of viewing JavaScript and CSS 2.0. The site is using
DHTML JavaScript Menu By