AR System architecture


AR System, a client-server architecture, is a part of the BMC Helix Innovation Suite that helps you to develop, build, deploy, and use applications on cloud (SaaS) and in on-premises environments. BMC Helix Innovation Suite is a single-tenant common platform for BMC Helix ITSM and BMC Helix Innovation Studio applications.

The BMC Helix Innovation Suite is built on AR System. For more information about BMC Helix Innovation Suite architecture, see BMC-Helix-Innovation-Suite-architecture.

 

AR System is based on a multitiered client-server architecture that includes the client tier, the Mid Tier, the server tier, and the data tier. AR System clients provide the user interface. The Mid Tier  makes the user interface available in browsers. The AR System server  implements the workflow functions, access control, and flow of data into and out of the database. The database server acts as a data storage and retrieval engine. The following table provides details about the different tiers:

Tier

Description

Client tier

Contains AR System clients. Client tools are used to access, manage, and build applications.

Most clients present information to application users and receive input from them. The tools for migration and application development belong to this tier.

Mid Tier

Contains components and add-in services that run on a web server, enabling users to view applications on the web. Helps access AR System server through Mid Tier from a browser and make web services accessible.

Server tier

Contains the AR System server, which controls workflow processes, enforces business logic, and provides access to databases and other data sources in the data tier.

Contains server-side applications such as Approval Server, Email Engine, and Flashboards, and the C and Oracle Java plug-in servers with plug-ins.

Data tier

Contains database servers and other data sources that AR System server can access. The database server acts as the data storage and retrieval engine for the data that applications create and manipulate.

The following figure depicts the relationship among the system components that reside within each of the functional environments of the AR System architecture. These system components work together to provide power, flexibility, and scalability. Notice that no definitive starting and ending point separates the environments because their functions sometimes overlap

 AR System  functional components

221_ARS functional components.png

AR Systemincludes the following functional environments:

Functional environment

Description

Client tier

Present services and display data to clients through various interfaces, which include:

  • API programs
  • BMC Helix ITSM applications
  • Browsers
  • Cell phones
  • PCs
  • Personal Digital Assistants (PDAs)
  • Developer Studio

Web and server tier

The following business processing components manage the data entered through clients, perform services based on your business processes, and enforce your business rules:

  • Mid Tier
  • AR System server
  • Server functions such as Distributed Server Option and Approval Server
  • Atrium Integrator
  • Web services

Data tier

BMC Helix Innovation Suitesupports Oracle, Microsoft SQL Server, and PostgreSQL databases for storing data. For each of the relational databases, tables owned by other systems can be referenced as if they were owned by AR System.

AR System groups for scalability and high availability

To provide scalability and increase reliability, you can connect a group of Approval Server to the same database and manage them as a unit by configuring a server group. Server groups act as a single server to support the applications that they run. Servers in the server group can be configured to spread the load of shared services, and they can provide backup to each other to ensure that those services are always available.

The following figure depicts the high-level architecture of the AR System:

221_ARS groups for scalability and high availability.png

Heterogeneous environment provides flexibility

Because the multiple layers of AR System are independent of one another, you can combine operating system platforms to fulfill different functions. The heterogeneous environment enables you to mix and match client and server platforms. For example:

  • Developer Studioon a computer running Windows can manage forms on a UNIX or Linux server.
  • Browsers can use a Mid Tier based on Microsoft Windows to access forms on a UNIX server.
  • An AR System server on Windows can interact with a database on UNIX.

AR System client-server communication

AR Systemcomponents communicate with each other by using the communication protocols. The following figure represents the communication structure:

221_ARS client server communication.png

Communications between clients and the AR System server

All clients of the AR System communicate with the server by using remote procedure calls (RPCs) on top of a TCP/IP transport stack. The type of RPC is the Oracle ONC RPC. TCP/IP networks are generally the standard for corporate and internet communications. The RPC mechanism is used because it is a "lightweight" transport that uses minimal network bandwidth, yet provides robust communications services. It can function over slower dial-up network links and high-speed internet and intranets, and is supported over most of the wireless networking technologies. The AR System web server communicates with the browsers by using Hypertext Transfer Protocol (HTTP) or Secure HTTP (HTTPS).

Communications between AR System server and database servers

From the perspective of the database server, the AR System server is a database client. AR System server uses the JDBC to connect to the database. When a AR System server is installed, the installer specifies the type and location of the database server that informs the AR System server which JDBC driver to use. The AR System server supports SQL Server, Oracle, and PostgreSQL databases and communicates with the database servers by using type 4 JDBC drivers. The AR System server uses the JDBC connection pooling to allow multiple database connections in parallel. The AR System server process comprises many threads to support user requests and share the connection pool. This provides tremendous data throughput and system scalability.

Many-to-many connections

In an AR System environment, one AR System server can theoretically support any number of AR System client connections that are limited by network bandwidth and server host and database performance. The clients can be on any mix of platforms. Similarly, a AR System client can be connected to any number of servers at the same time. These servers can be any mix of server hosts and underlying database engines.

AR System clients

AR Systemclients provide user interface facilities available from various platforms, including the Web. AR System clients are available for many operating system environments, as shown in the AR System client-server architecture. For each operating system, the client is composed of a set of native applications or tools that use the standard user interface conventions for that environment. Individual users can run these tools as necessary.

AR Systemclients can be broadly divided into user clients and developer clients.

User clients

Through the Mid Tier, users can access AR System in a browser.

From the browser, administrators can:

  • Create groups and roles
  • Create users and assign licenses
  • Manage AR System server settings and licenses

Users can:

  • Access AR System forms and applications to create, submit, search, and modify requests
  • Receive and respond to AR System notifications
  • Chart data
  • Generate reports
  • Display alerts in the Alert List form, which can be refreshed automatically at specified intervals or manually at any time
  • Search records, run or generate reports, and view Flashboards

Developer clients

The developer clients are used to create, modify, and extend AR System applications. The following table briefly describes the tasks that you can carry out with the developer clients.

Client

Tasks

Developer Studio

Developers can:

Create and update applications, forms, and workflows.

Mid TierConfiguration Tool

Administrators can:

  • Modify the Mid Tier settings for AR System server, passwords, logging, caching, and authenticating web services.
  • Specify home page and preference and catalog servers.

Import-export command line interface (CLI)

Administrators can:

  • Connect to the AR System server to import and export object definitions without the graphical user interface of Developer Studio.
  • Automate tasks.

Data Import Command Line Interface (CLI)

  • Connect to the AR System server to import data without the graphical user interface of Data Import.
  • Automate tasks.

Data Import

Administrators can:

  • Import Mid Tier data from one AR System server to another.
  • Load external data into the AR System database.
  • Map between the columns in the external data set and the fields in the AR System form.

Data Import is available for Windows.

Migrator

Administrators can:

  • Migrate applications, objects, and data between servers, servers and files, or files.
  • Reduce the difficulty and time required to synchronize AR System server in development and production environments.

For limitations on using Migrator with other BMC applications, see Known-and-corrected-issues.

 AR System database server

AR Systemuses standard relational database engines for the actual storage and retrieval of data. Architecturally, the database server is an independent set of processes that are completely separate from the AR System server processes. Physically, the database server processes can be running on the same server host as the AR System server or on a different host. The database server can be any platform that the database engine supports. 

For information about supported platforms, see Compatibility matrix in the BMC Helix Innovation Suite Deployment online documentation.

Support for an external database

AR Systemcan also work with data stored in external databases and other data sources that AR System does not manage. AR System accesses these data sources through view forms. In addition, AR System can use AR System database connectivity (ARDBC) to work with data not stored in databases as if the data were locally owned. In other words, ARDBC plug-ins can be created and configured to enable access to data stored outside the database as if it were in tables owned by AR System.

Support for multiple database types

Because the AR System server manages all workflow, applications are independent of the database. Therefore, applications created on a AR System server running one type of database can easily be moved to a server running a different type of database. BMC provides a simple export/import utility for this purpose.

AR Systemis not a database application in the typical sense. AR System server manages all of the workflow, so proprietary database features such as triggers and stored procedures are not used. An application created on an AR System server running one type of database engine can easily be moved to a server running a different database engine through a simple export-import process.

Support for database searches

AR Systemworkflow components can search for records or requests in the AR System database and act on the results of the search. Clients can use the following types of searches:

  • Query-by-example (QBE)
  • Advanced search
  • Predefined
  • Recent

An administrator can create and store searches that users commonly perform. A user can define personal searches for forms to which the user has access.

Support for high availability and failover

AR Systemleverages common database architecture for high availability, including failover.

For tested configurations, see the Compatibility matrix.

 

 

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*