Framework and Runtime Environment LayersΒΆ

Viewed as an abstraction stack, the Partner Platform looks something like this:

../_images/frameworks.png

The upper layers are the Partner frameworks, identified with their v5 names:

  • Update - software and configuration update, upgrade, and migration facility;
  • Boots - runtime facilities, system services, common data structures and algorithms, filesystem;
  • Kilt - application and user interface frameworks, common formats, database support;
  • MacLeod - cloud services, security, user accounts, user and group administration;
  • Map - map viewing, publishing, geometry and geography; and
  • Haversack - distributed map data editing.

These names were intentionally chosen as internal, development names, and will hopefully not be absconded with and perverted by marketing types. The Scottish soldier metaphor amuses us, since some of us at Partner are of Scotch descent while others are apt to descend into Scotch upon occasion.

The bottom-most layers - Computer Hardware, Operating System, and Java - are not provided by Partner, but instead refer to the environment that the Partner System runs atop.

In general, a layer higher in the stack is both higher-level (in abstraction) and also is able to reference any of the layers beneath it, not just the layer immediately beneath it. Thus, even the highest-level platform (Haversack) may refer to Java- or even Operating System-specific facilities. In practice, our software never directly addresses hardware, and in general only the Boots platform interacts with the Operating System. All of the platforms use various Java facilities.

Relationships between the higher-level platforms (MacLeod, Map, Haversack) are not quite as straightforward as a stack, but it’s a reasonable generalization.

Not indicated are third-party libraries. Partner depends on a wealth of great open-source libraries, and these are generally bundled with the lowest-level platform that depends upon them.

Previous topic

System Partitions

Next topic

Partner Filesystem

This Page