Server and Platform

For training purposes we created a presentation which covers the main parts of the platform architecture which can be downloaded here. PIM_Core_Platform.pptx

Architecture principles

The architecture is driven by four main aspects:

  1. Domain model centric

  2. Base for customer specific solutions which are developed externaly (product line)

  3. It is possible to migrate customer specific solutions to newer versions at low cost

  4. Provides rich client UI as a desktop application as well as a Web UI and Service interfaces

Domain model centric

Most of the functionality is focused on data management: import, creation, classification, validation, presentation, export to external formats etc. PIM core has a declarative domain model. The domain model contains business entities, descriptions and relations between entities as well as meta information for the data management functionality.

A base for customer specific solutions

Customer specific solutions which are developed externally (product line)
Hpm provides "vanila" domain model (PIM model shared by different PIM branches) and corresponding logic. In most cases this domain model must be adjusted and extended to suite needs of a concrete customer. Customization is also performed on the other levels such as presentation - to support user workflows, integration - to connect HPM with other systems and data sources, data management - to validate input data, etc. Application integrator/developer has a possibility to extend any part of the standard applicaiton if it is required.

Migrate customer specific solutions to newer versions at low cost

It is a common situation that customer specific solutions are migrated to newer versions of PIM. For this reason the public API is backward compatible and a migration path is provided. If new programming concepts in the platform replace old ones then a compatibility layer is provided whenever this is feasible (or possible)

Solution provides rich client UI as a desktop application

Clients contain not only presentation but also business logic. In a such distributed environment data modifications are synchronized accross many distributed nodes. Client have different presentation of the data structures and is capable of presenting large datasets.

Architecture main concepts

  • Architecture is domain model centric. Model structure is described declaratively and additionaly contains meta info for different functional areas.

  • The system consists of functional layers which interprets the structure using meta info.

  • No code generation with round trip.

  • Layers of abstraction to support customization

  • Different public APIs (data access, integration, ui, etc.)

images/download/attachments/69404105/BigPictureModels.png

This picture shows the general overall architecture in respect to the most important aspects. The key to the outstanding performance in mass data access is a separated model with it's own data access layer for mass data retrival. Additionally to that we combined a static physical model with a generic business model. This provides us the high performance of a classic, normalized database structure with all the abilities to create customer specific indizes and optimizations as well as the flexibility needed to have additional fields and entities for each customer.

Advatages of the approach

  • Domain model structure can be changed without changing the logic

  • New functional layers can be added without changing the existing ones

images/download/attachments/69404105/HPM_Arch_Principal.png