Business Objects Framework
Powerful and Consistent Business Logic
The ice.NET UML Models provide an efficient method to describe the
information model of a software solution. However, the information model only represents
the static aspects of an application. The dynamic aspects of an application (aka: behavior) consist of:
- Consistency Constraints that are beyond the scope of a (static) information model
(e.g. checking the max. total weight of a recursive product decomposition structure
- Business Functions that do more than reading attributes or connecting relationships
(e.g. calculating the net manufacturing costs of a configured product variant)
- Functionality that is triggered by Business Objects events
(e.g. send mail notification to subscribers upon project documentation updates)
The ice.NET Business Objects Framework (BOF) provides the programming interface to
implement the dynamic aspects of applications using object-oriented methodology. Further
it provides the management environment for the Business Object implementations.
Business Object programmers can focus on the implementation of the Business Functions.
Once they assign the implementation to a specific Object Type, the inheritance of the Business
Functions through the UML Model hierarchy and the
activation/retrieval of the Business Functions is performed by the BOF.
State-of-the-art Development Environment
Instead of re-inventing the wheel
by providing just another weird "business programming language", the ice.NET
Business Objects Framework seamlessly integrates with the programming environment
of the Microsoft.NET Framework. Business Methods can be programmed in the C# programming
language (or in any other .NET CLR programming language, such as VB.NET or managed C++) using
Microsoft Visual Studio as the IDE.
There are no "precompilers", additional "keywords" or other problematic language constructs.
Just C# (VB.NET, etc.), the .NET Framework compilers and tools.
The BOF programming API provides Business Objects Interfaces and .NET Code Attributes
in order to bind CLR Implementations to ice.NET Object Types. These integration features
make implementing ice.NET Business Logic as simple as programming methods of C# classes
(actually implementing ice.NET Business Logic is done by programming C# methods...).