The EASA system is highly configurable to meet functional requirements specified by a User and implemented in an EASA application (an 'EASAP').
Consider which resources an EASAP requires such as:
To a large extent, the particular resource requirements above will define the EASA system architecture, processing and performance requirements constrain the number and capability of machines required by EASA.
These requirements might include:
The following four architecture examples cover the most common use cases.
The simplest EASA system combines several EASA computational roles within a single physical machine.
This configuration has the same capabilities of a distributed architecture.
This default single EASA machine provides a simple way to get going, see Get started with EASA
After installing the 'off-the-shelf' system above, one may:
This architecture is seldom used in production as it will likely struggle under any significant User load.
Excel memory and CPU requirements (memory and CPU) will nearly always a single machine's capacity above a modest number of simultaneous Users.
The diagram above illustrates three EASA computational roles in an EASA system:
As the number of Users grows, more EASAP/Excel Servers may be needed.
One common configuration involves a backend database and a combined EASA/EASAP Server, below.
The EASA/EASAP Server hosts a user interface, creates database queries, and retrieves result sets.
In general this system will scale well with increasing Users for two reasons:
A similar architecture involves specialized computation on a machine called a Compute Server.
This computation may require Matlab, a C program, a batch script, or other proprietary software.
This type of system may utilize a single-user license on the Compute Server and allow the EASA/EASAP Server to manage a queue of submissions. One User's EASAP may be granted temporary software license access to execute a task. When the task completes, the license will be released to the next User EASAP instance in the queue.
One of the most common and computationally intensive cases involves a 'live' Excel-linked EASAP which may:
This case highlights EASA's impressive ability to scale, a single EASA Server will balance User load across multiple EASAP/Excel Servers
The diagram below shows two EASAP/Excel Servers though typically in practice there are many more.
It is very common to use an Excel spreadsheet to conduct an analysis of a business 'case' or 'case record'.
Historically an Author would use the Excel Range Wizard to automatically generate an EASAP with an Excel 'look and feel' with GUI elements were linked to an actual 'live' spreadsheet running on an Excel Server.
The Excel Desktop Client provides an alternative interface. This functionality involves very specific GUI objects to select a single business case and VBA support via the EASA Ribbon allows an analysis of the case within a temporary spreadsheet called an Excel Client.
An Excel Client is an Excel spreadsheet on the User's desktop machine initialized with existing case data from a database.
An Excel Client has the built-in capability to write a case record back to the database via an 'EASA Ribbon > Save' click.
An EASAP launches an Excel Client after a case is selected by a User with a CASE VIEWER.
With CASE VIEWER and child FILTER's an EASAP may:
This novel architecture is outlined below,