Extensibility - HxGN SDx - Update 61 - Help - Hexagon

HxGN SDx Extensibility

Language
English
Product
HxGN SDx
Search by Category
Help
SmartPlant Foundation / SDx Version
10

Why use Extensibility instead of customization?

Extensibility is better to use than customization because:

  • The customization mechanism requires custom code to run in-process

  • Customization means additional complexity to update and maintain

  • Multi-tenancy demands a uniform code base for all customers

  • Different tenants may not want customized code in-process

  • Tenant’s data or third-party code could have security access and resource issues

Why has Extensibility been introduced?

Extensibility has been introduced to reduce software customizations that impact maintenance, upgrade, and hotfix cycles, as well as to:

  • Bridge functionality gaps in the Web Client

  • Provide a modern development experience

  • Leverage the myriad of modern web technologies

  • Integrate with existing and external project systems. For example:

    • Project reporting systems

    • Custom viewer applications, both for data and documentation

    • In-house web applications

  • Allow federated searching across multiple hosted sites and third-party systems

  • Provide flexibility for work processes to use client or server extensibility

  • Allow third-party servers to communicate and react to system events

Extensibility is a simple mechanism for administrators that allows methods to have custom views to display applications in an iframe in the Web Client and communicate with external applications.

The Extensibility mechanism provides the freedom for you to implement extensibility in the HxGN SDx server, HxGN SDx Web Client, and Smart Cloud server.

Extensibility provides:

  • The capability to integrate external web applications into the Web Client experience

  • The capability for a third-party server to communicate and react to system events

  • The ability for a client application to perform actions with a back-end service by impersonating the identity of a user

  • An emphasis on the user and developer experience

  • An introduction to Web Development Best Practice

  • A clean, modern API