{"id":15473,"date":"2023-11-13T01:28:02","date_gmt":"2023-11-13T00:28:02","guid":{"rendered":"https:\/\/www.architecturemaker.com\/?p=15473"},"modified":"2023-11-13T01:28:02","modified_gmt":"2023-11-13T00:28:02","slug":"what-is-hourglass-architecture","status":"publish","type":"post","link":"https:\/\/www.architecturemaker.com\/what-is-hourglass-architecture\/","title":{"rendered":"What Is Hourglass Architecture"},"content":{"rendered":"
\n

The term hourglass architecture refers to an overall design philosophy that advocates an efficient and effective approach in building software applications. This architecture is designed to make software development easier and to ensure system flexibility. The hourglass architecture works by representing data and its associated behavior into two distinct components: the Internal Engine and the External Framework. The intent of the hourglass architecture is for software components to interact through an interface that sits between the two layers. The goal is to create a highly specific, yet extensible and maintainable system. This architecture has several advantages compared to its contemporaries.<\/p>\n

<\/p>\n

The hourglass architecture contains two distinct layers. The Internal Engine is designed to contain the core business logic of an application. This layer is responsible for the computational complexity and data processing that takes place within a system. It is designed to be light-weight, modular, and reusable across applications. The External Framework layer is designed to provide the user interface and system integrations required to use the application outside of the Internal Engine. This layer is typically a higher-level language like Java or C#, with a library of components and features that serve to extend the capabilities of the Internal Engine.<\/p>\n