Arbor™ Platform

Arbor addresses the major challenges of selecting a software architecture by insulating projects from brittle application programming interfaces and rigid data models. Arbor employs the universally supported HyperText Transfer Protocol (HTTP) as the consistent application programming interface and the Resource Description Framework as the core data model. Taken together, these design choices enable architects, designers, and developers to integrate a continuum of legacy, present, and future technologies.

Arbor embodies five high-level objectives for any future proof software architecture and data model:

  • Performs on embedded platforms
  • Capable of remotely provisioning new features and bug fixes
  • Programming language agnostic
  • Vendor independent interfaces
  • Support existing data formats

We have learned a great deal from our past projects building embedded systems. Filtering that experience through the design goals listed above has lead us to develop a set of concrete principles:

  • Utilize only open data formats
  • Invent when necessary, and no sooner
  • Answer complexity with simplicity, not with more complexity
  • Avoid programming language to programming language interfaces
  • Employ pull notification, because it scales whereas push notification does not
  • Do not build a walled garden, a closed or exclusive set of services that create a monopoly

Over the past two decades, Band XI engineers have confronted many design and architecture challenges as the speed of software development, the scale of demanded complexity, and the scope of desired functionality has increased at breakneck speeds. In the World Wide Web, one can see the world’s most complex, dynamic, continuously changing system in action. Adopting the same approach for application platforms, even on embedded systems, readily solves both the multi-vendor, multi programming language integration problem as well as the distributed communications problem for sharing data between peers and remote servers.

Band XI has successfully deployed the Arbor architecture within embedded industrial control systems and as the core of commercial application servers, integrating a variety of legacy and new components written in a diverse set of technologies, including Java, C, C#, MATLAB, Ruby, Python, and others.

Today, few projects have the luxury of developing a complex application using a single programming language. Inevitably, the requirements will dictate using a mix of technology choices. Arbor adopted the HyperText Transfer Protocol (HTTP) because of its pre- existing, well-defined interfaces and widespread support in all common programming languages.

Arbor employs RDF-S and the Web Ontology Language (OWL) to describe data models, because of its open worldview. RDF-S also provides options for making multiple data format representations. This provides the flexibility to use one data model with different formats, depending on the capabilities of a specific system. This also allows us to avoid the performance penalty of relying heavily on XML based formats on embedded systems, while still making XML representations available on enterprise systems. Arbor supports many different popular data formats in use today, including RDF-XML, CSV, JSON, and the US Federal Government’s Common Data Format (CDF).

Truly complex systems often demand the integration of networked, independent agents operating as peers that consume, provide, or share services. Arbor employs a peer and service discovery mechanism, using the ubiquitous zeroconf protocol that facilitates the cooperation of such agents to achieve operational distributed computing capabilities.

Industrial Graphics Interfaces

Operators of industrial machinery, heavy equipment, or military vehicles work in challenging environments where the fine motor controls required by standard desktop software will not work, while the increased complexity of the machinery often demands many more gauges and controls than is often feasible to mount. Arbor’s industrial graphics interfaces enable them to create of rich and diverse virtual instrument and control clusters on a single industrial display unit.

Rapid Device Integration

Integrating many new devices into a software application can be an integration nightmare, as developers must coordinate connections, transports, device drivers, and messaging protocols.  The Arbor Control Manager enables rapid device integration for devices connected through Controller Area Networks (CAN), MODBUS, serial, GPIO, Ethernet and more.

Universal Messaging Interfaces

Over time organizations build up a legacy code base that captures valuable knowledge through the application of man-years of effort.  Technology advances create tension between the need to reuse existing assets and take advantage of new capabilities.  Arbor offers HTTP as the standard integration API between system components, enabling effective integration between new and legacy assets.

Remote Provisioning & Maintenance

From the first day you place a new system in service, it will need to be maintained and enhanced.  Recalls and major overhauls impose enormous costs in down time and labor.  Arbor enables remote configuration and management of systems through a powerful provisioning capability that even allows for hot swapping software at runtime, offering maintenance in place or as dictated by management policy, not technical constraints.