ice.NET Architecture Overview

The ice.NET platform architecture integrates the relevant aspects of information systems:

  • Information models (Data models)
  • Software components (Business logic, Functionality)
  • A formal notation that enables precise definition and documentation of the models and its interfaces to the software components.

In order to integrate these aspects, the models, the software and the notation must be based on the same set of abstractions (key concepts) to ensure compatibility and interoperability between them.

A well-known and widely accepted standard that contains most of the relevant concepts is UML. UML provides the basis for the ice.NET meta model and its key concepts that are discussed here.

Software Architecture

The highlevel software architecture follows a three-layer approach.

The basis is the platform with its key concepts and infrastructure components. On top of the platform is a collection of components of various categories. By combining suitable components, applications are assembled and extended on the top layer of the architecture diagram.

More information about the conceptual layers can be found here.

Software and SDK Structure

The software components of the ice.NET platform can be classified into several main blocks:

The declarations and interfaces of the basic platform concepts (Core Platform) can be found in the PDTec.IceNet.Core.dll assembly. The PDTec.IceNet.Sdk.dll assembly makes the implementations of the core concepts available in the form of application base classes and factory classes. A large number of utility classes are contained in this assembly, too.

Special application base classes and utilities for programming Web applications and Web Services are contained in the PDTec.IceNet.Web.dll and PDTec.IceNet.Web.Ajax.dll assemblies. The Web Platform is directly based on the Core Platform.

Further detailed information can be found in the SDK Reference documentation.