Open Platform 3.0™ Snapshot – Basic Architecture Models

 

This chapter describes a number of basic architecture models in which platforms interact with each other and with other system components. They may be used in the eventual standard as the basis for stating normative requirements on conforming platforms.

Notation

Many of the figures in this chapter are expressed in the ArchiMate modeling language. The ArchiMate specification [ARCHIMATE] is an Open Group Standard for an open and independent modeling language for Enterprise Architecture. There is a good explanation of it in the ArchiMate® 2.0 – Understanding the Basics White Paper.

The figures in this chapter use a small subset of the ArchiMate symbols. They are shown and explained below.

ArchiMate Notation

Applications

Application Model

The distinction between applications and systems software is one of the oldest in computing. Applications form part of the Technical Reference Model (TRM) defined in [TOGAF]. A modified form of this model, including a business layer and a more broadly scoped infrastructure layer, is shown in the figure.

The Application Model

An application (as defined in [TOGAF]) is a deployed and operational IT system that supports business functions and services; for example, a payroll. Applications use data and are supported by multiple technology components but are distinct from the technology components that support the application.

The operator of an application is an enterprise or person that manages it and makes it available for use.

The application users are people who use the application. They often have a business relationship with the operator; for example, they may be employed by the operator. They include people that use the application in order to manage or maintain it, as well as people who use the application for business purposes (end users). Users are treated individually; different users can access different information, and may have rights to access different facilities.

The application platform (again as defined in [TOGAF]) is the collection of technology components of hardware and software that provide the services used to support applications.

The application infrastructure includes communications infrastructure, processing, storage, and possibly other infrastructure providing basic IT capabilities, but not part of the application platform. The application platform uses the infrastructure and makes its services available to the application. (Many definitions of infrastructure include what is defined here as the application platform. In this Snapshot, the platform is considered to be separate from the infrastructure, not a part of it.)

Web Application Model

With the advent of the World-Wide Web, a particular form of the basic model emerged, in which the user accesses the application across the World-Wide Web, using a web browser. This is shown in the next figure.

The Web Application Model

The web application operator, web application user, web application, web application platform, and web application infrastructure can be considered as the application operator, application user, application, application platform, and application infrastructure of the Application Model. The web application infrastructure includes communications infrastructure to access the World-Wide Web.

The web application user interacts with the web application using browser content that consists of HTML with scripts (e.g., written in Javascript) and applications (known as applets) downloaded from the server.

The browser platform is the client-side web platform. It supports the browser content and enables the user to interact with the web application through that content. It uses the browser infrastructure.

The browser infrastructure consists of communications and other infrastructure on the client that is used by the browser platform, including to access the World-Wide Web.

As use of the World-Wide Web became more sophisticated, the Web Service Model emerged. It is described in the next section.

Web Services

Web Service Model

The essence of the web service model is that a web service exposes an API on the World-Wide Web, for use by software programs. This is illustrated in the figure.

The Web Service Model

A web service is a software application or component that is web-accessible, which signifies that it provides a network-accessible service interface based on the Hypertext Transfer Protocol (HTTP).

A web service API is an interface by which another system interacts with a web service using the World-Wide Web. There are two styles of web service API that are comprehended by this Snapshot: SOAP and REST.

The web service provider is an enterprise or person that makes the web service available to the web service consumer. It is the operator of the web service. The provider often has a business relationship with the consumer, and may offer the service under commercial terms. When the service is offered free-of-charge, this may be under terms of a license that the consumer is deemed to accept.

The web service consumer is a person or enterprise that uses the service and in most cases has a contractual relationship with the provider. (This relationship may be implicit rather than being stated in a written contract.) Generally, each consumer is treated separately by the service, and different consumers may have different rights to use facilities and access information.

The web service consumer program is a program that interacts with the web service and is used by the consumer.

The web service platform supports the web service and enables it to use the underlying web service infrastructure.

The web service infrastructure provides the processing, storage, and other infrastructure capabilities that the web service needs, including access to the World-Wide Web.

The web service consumer platform supports the web service consumer program and enables it to use the underlying web service consumer infrastructure.

The web service consumer infrastructure provides the processing, storage, and other infrastructure capabilities that the web service consumer program needs, including access to the World-Wide Web.

Web Service Application Model

A frequently-encountered pattern is that of an application that exposes capabilities through an API as a web service. This is illustrated in the figure.

The Web Service Application Model

This model is a combination of the web application model and the web service model.

A web service application is both a web application and a web service. A web service application operator is an enterprise or person that manages it and makes it available for use; it is both a web application operator and a web service operator. The web service application platform is its supporting platform, and is both a web application platform and a web service platform. The web service application infrastructure is its underlying infrastructure, and is both a web application infrastructure and web service infrastructure.

The web application user, browser content, browser platform, and browser infrastructure are as in the web application model.

The web service consumer, web service consumer program, web service consumer platform, and web service consumer infrastructure are as in the web service model.

Cloud Computing

The essential concept of cloud computing is that IT resources are made available, within an environment that enables them to be used, via a communications network, as a service.

The authoritative definition by the US National Institute of Standards and Technology (NIST) says that:

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” [NIST CLOUD DEFINITION]

This cloud model is composed of five essential characteristics, three service models, and four deployment models. The five essential characteristics are on-demand self-service, broad network access, resource pooling, rapid elasticity, and measured service. The three service models are Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS). The four deployment models are private cloud, community cloud, public cloud, and hybrid cloud.

The Open Group Cloud Ecosystem Reference Model [CLOUD RM] defines the major actors in cloud computing and their relationships and a minimum set of architecture building blocks. It incorporates the essential NIST definitions, and adds a fourth service model: Business Process as a Service (BPaaS). The figure shows the business roles and cloud services of the Cloud Ecosystem Reference Model without the architecture building blocks, to present cloud computing in a comparable way to other technologies in this Snapshot.

Cloud Business Roles and Services

The cloud service may be BPaaS, SaaS, PaaS, or IaaS. If it is SaaS, PaaS, or IaaS, its use follows a model that is a combination of the basic application and cloud computing models. These three models are described in the following sections. If it is BPaaS, it is realized by a business process that may use applications, and the basic application model or one of the same three combination models applies to each such use.

Cloud Software as a Service Model

In the SaaS service model, the cloud service is realized as a combination of application, platform, and infrastructure, as illustrated in the figure.

The Cloud Software as a Service Model

The SaaS provider and SaaS consumer are the cloud service provider and cloud service consumer of the SaaS cloud service.

The SaaS provider, SaaS user, SaaS application, SaaS platform, and SaaS infrastructure form a copy of the Application Model, with the SaaS provider as the operator of the SaaS application.

The SaaS consumer has a business relation with (often is the employer of) the SaaS users.

Cloud Platform as a Service Model

In the PaaS service model, the cloud service is realized as a combination of platform and infrastructure, as illustrated in the figure.

The Cloud Platform as a Service Model

The PaaS provider and PaaS consumer are the cloud service provider and cloud service consumer of the PaaS cloud service.

The PaaS consumer, PaaS application user, PaaS application, PaaS platform, and PaaS infrastructure form a copy of the Application Model, with the PaaS consumer as the operator of the PaaS application.

The PaaS consumer uses the PaaS service to support the PaaS application, and has a business relation with the PaaS application users.

Cloud Infrastructure as a Service Model

In the IaaS service model, the cloud service is realized as infrastructure, as illustrated in the figure.

The Cloud Infrastructure as a Service Model

The IaaS provider and IaaS consumer are the cloud service provider and cloud service consumer of the IaaS cloud service.

The IaaS consumer, IaaS application user, IaaS application, IaaS platform, and IaaS infrastructure form a copy of the Application Model, with the IaaS consumer as the operator of the IaaS application.

The IaaS consumer uses the IaaS service to support the IaaS platform, which in turn supports the IaaS application, and has a business relation with the IaaS application users.

Mobile Computing

Mobile Computing Model

The mobile computing phenomenon is based on the use of portable computing devices that can connect to the Internet wherever the user is. This can be achieved in various ways, including:

  • The use of cellular telephone networks as networks in the Internet
  • The ability to connect a device to WiFi networks that are part of the Internet
  • The ability to connect a portable computer to access points on different fixed networks that are part of the Internet

(The Internet is a collection of connected networks that can include cellular telephone networks, WiFi networks, fixed Ethernet networks, and other networks of various kinds.)

Examples of mobile devices include cellphones, tablets, and laptop computers.

The basic mobile computing model is illustrated in the figure. It is essentially the same as the Application Model with the addition of a connection to the World-Wide Web, and with the understanding that the user of the mobile device and apps is also their operator.

The Mobile Computing Model

The application programs that run on mobile devices are known as apps. “App” is not just an abbreviated form of “application”. An app generally does not use a large amount of computing resource (since mobile devices often do not have large amounts of computing resource) and uses information that is stored on a server rather than holding that information in local storage long-term.

A mobile device platform supports the application programs on the device and enables them to use the capabilities of the device infrastructure. Examples are Android and iOS.

Mobile device infrastructure typically includes some means of obtaining user input, some form of user display, one or more processors, local storage, and connectivity to the Internet.

App Store Model

Apps are usually downloaded to mobile devices from app stores. An app store is a web resource from which users can acquire and download apps. There are a number of app stores on the web. The original examples were operated by mobile device platform vendors. There are now also app stores operated by other enterprises.

The app store model captures the business and technical environment for app store use, as shown in the figure.

The App Store Model

The mobile user, mobile app, mobile device platform, and mobile device infrastructure are as in the Mobile Computing Model. This is an extension of that model.

The user of a mobile device can download an app from an app store. The user often has a business relation with the app store operator. For example, the operator may be a mobile device platform vendor, and the user may have purchased or licensed the platform. In any case, the operator typically identifies each user and keeps track of their downloads.

The app supplier is an enterprise or person that makes the app available for acquisition in the app store. The user often purchases or licenses the app from the supplier, rather than from the app store operator.

The app store operator generally has a business relation with the supplier. The operator may, for example, charge a commission on sales of the app through the store. The operator may also impose quality or security standards on apps made available in the store.

Mobile Device Management Model

Mobile Device Management (MDM) is management of mobile devices deployed across mobile operators, service providers, and enterprises. MDM functionality typically includes over-the-air distribution of applications, data, and configuration settings for all types of mobile devices, including mobile phones, smartphones, tablet computers, ruggedized mobile computers, mobile printers, mobile point-of-sale devices, etc. This applies to company-owned and employee-owned devices across the enterprise and to mobile devices owned by consumers.

The Mobile Device Management Model is shown in the figure.

The Mobile Device Management Model

The mobile user, mobile app, mobile device platform, and mobile device infrastructure are as in the Mobile Computing Model. This is an extension of that model.

The remainder of the MDM model is a copy of the Application Model. The device management operator, device manager, device management application, device management platform, and device management infrastructure can be considered as the application operator, application user, application, application platform, and application infrastructure of the application model.

The device management operator is an enterprise that manages a set of devices. A common scenario is that these are devices used – and in some cases owned – by its employees. The device manager is also often an employee of that enterprise, with responsibility for managing the devices, perhaps a member of the IT department. In any case, there is some kind of business relation between the device management operator and the mobile user, and between the device management operator and the device manager.

The device manager uses the device management application to manage the devices. This application is operated by the device management operator. It is able to use the mobile device platforms on the managed devices to manage the infrastructure. It communicates with these platforms across the World-Wide Web, and has access to this through the device management platform and the underlying device management infrastructure.

Mobile Application Management Model

Mobile Application Management (MAM) is the management of apps on mobile devices deployed across mobile operators, service providers, and enterprises, including provisioning and configuration of access control.

MAM differs from MDM. It focuses on application management, while MDM manages the device at lower levels, including firmware and configuration settings.

The mobile application management model is shown in the figure.

The Mobile Application Management Model

The mobile user, mobile app, mobile device platform, and mobile device infrastructure are as in the Mobile Computing Model. This is an extension of that model.

The remainder of the MAM model is a copy of the Application Model. The app management operator, app manager, app management application, app management platform, and app management infrastructure can be considered as the application operator, application user, application, application platform, and application infrastructure of the application model.

The app management operator is an enterprise that manages a set of mobile apps. A common scenario is that these are apps used by its employees. The app manager is also often an employee of that enterprise, with responsibility for managing the apps, perhaps a member of the IT department. In any case, there is some kind of business relation between the app management operator and the mobile user, and between the app management operator and the app manager.

The app manager uses the app management application to manage the devices. This application is operated by the app management operator. It is able to use the mobile device platforms on the managed devices to manage the apps that run on them. It communicates with these platforms across the World-Wide Web, and has access to this through the app management platform and the underlying app management infrastructure.

Mobile Connected Device Model

Mobile devices often have local connections to other devices. This is an important feature of mobile computing.

Locally connected devices can include:

  • Other, similar, mobile devices
  • Peripherals, such as headsets or printers
  • Fixed devices connected to the Internet (for example, payment terminals)
  • Sensors and controls

Local connections can use a number of media, including:

  • USB cables
  • Bluetooth
  • Near Field Communication (NFC)

The mobile connected device model is shown in the figure.

The Mobile Connected Device Model

The mobile user, mobile app, mobile device platform, and mobile device infrastructure are as in the Mobile Computing Model. This is an extension of that model.

A connected device is a device connected to a mobile computing system by some form of local connection. The connected device operator is the person or enterprise responsible for operating the connected device. This may be the mobile user. There is generally a business relation between the mobile user and the connected device operator, covering use of the connected device. (This is the trivial “same entity” business relation if the connected device operator is the mobile user.)

The mobile device platform and mobile device infrastructure enable apps and the user to use connected devices by communicating with them across the local connections.

Social Computing

There are no models defined specifically for social computing, but social computing solutions often include instances of the Web Application Model and the Web Service Model.

Social Networks

Social Computing refers here to computing related to or using social media. Social media is an application of Internet and web technology that provides a means of interactions among people in which they create, share, and exchange information and ideas in virtual communities and networks.

A social media system is a social network. Such a system is essentially a web application, as shown in the figure.

Social Network

The social network is a web application, the social network operator is the web application operator, the social network platform is the web application platform, and the social network infrastructure is the web application infrastructure, as in the Web Application Model. The social media user is the web application user. Users are treated individually; different users can access different information, and may have rights to access different facilities. Membership is often free-of-charge, but charges may apply, perhaps with different charges for different levels of membership.

Social Web Service

Social networks can often be accessed through APIs. Many social network operators expose APIs and have developed apps that use them.

These APIs are of two different kinds. One kind is used by the members of the social network, and enables them to use it more effectively than through a web browser. The other kind provides information about use of the social network, and is used by other enterprises, often for marketing purposes. The business model of many social networks is that their members use them free-of-charge, and other enterprises pay for information about that use.

A social network that exposes APIs is essentially a web service, as shown in the figure.

Social Web Service

The social network is the social web service, with operator, platform, and infrastructure as in the Web Service Model. The social web service user is a web service consumer, and the social web service application is the web service consumer system.

The Internet of Things

There is no commonly agreed definition of the Internet of Things. The term is used here to mean “the collection of uniquely identifiable objects embedded in or accessible by Internet hosts”.

A “uniquely identifiable object” can be, for example:

  • A sensor, such as a temperature sensor (thermometer)
  • A control; for example, to control a valve in a heating system
  • A combination of sensor and control (for example, a thermostat)
  • An object identifier, such as an RFID tag or a barcode

It is estimated that there will be over 25 billion such devices by 2020, generating data at a rate that is one or more orders of magnitude higher than the rate at which people generate data today.

For the purposes of this Snapshot, the things of interest are those that are or can be connected to the Internet, either directly or indirectly. These alternatives are covered by two basic models: the Internet Object Model for direct connection, and the Managed Object Model for indirect connection.

Internet Object Model

The Internet object model is related to the Internet of Things and also to big data analytics. It captures the situation where a device is directly connected to the Internet. Some such devices can be sources of data for big data analytics.

In the Managed Object Model, discussed next, an identifiable object, which can be a sensor, a control, or a passive object (such as an item with a barcode) is connected by a local network to a system that manages it. This system may in turn be connected to the Internet, enabling other systems on the Internet to access the object indirectly. In the Internet connected device model, by contrast, the object is connected to the Internet directly. This rules out the possibility of it being a passive object, since it must be able to manage the Internet connection. It can, however, be a sensor or a control (or both). If the object is a sensor, then it can be a data source.

The Internet object model is shown in the figure.

The Internet Object Model

An Internet object is a uniquely identifiable object that is connected to the Internet and exposes an interface – the object interface – that enables other systems connected to the Internet to interact with it. It is operated by a person or enterprise: the Internet object operator.

The object interface can be a web service API, using HTTP over the Internet protocols, or can be some other kind of interface that uses the Internet protocols, such as a set of defined IP messages.

The Internet object user is a program that interacts with the object. The person or enterprise that operates it is the Internet object user operator. There is generally some kind of business relationship between the Internet object user operator and the Internet object operator that covers the use of the object. (This includes the trivial business relationship where the two entities are the same.)

The Internet object user is supported by the Internet object user platform and Internet object user infrastructure. The Internet object user infrastructure provides access to the Internet for interaction with the object.

Managed Object Model

The more common scenario today is of an object that is connected indirectly, as in the managed object model, shown in the figure.

The Managed Object Model

A managed object is a uniquely identified object that is connected by a local connection to a system that manages it and is connected to the Internet.

The managed object is operated by a person or enterprise that is the managed object operator. The system that manages it is operated by a person or enterprise that is the object manager operator. These two entities are often the same. If they are not, then there is generally a business relation between them covering management of the object.

The local connection media can be, for example:

  • A dedicated device inter-connection network such as a vehicle Controller Area Network (CAN)
  • Radio, in particular for NFC and RFID
  • Optical; for example, for barcodes

The connection can be permanent (as in a CAN) or transient (as with NFC).

The system that manages the object includes a program, the object manager, that reads from or gives instructions to the object, and in some cases may be able to adjust or configure it. This program is supported by the object manager platform which enables it to use the capabilities of the object manager infrastructure. These include connectivity to the local connection and to the Internet.

The manager interface is exposed by the object manager to enable remote systems to interact with it and with the objects that it manages. This interface can be a web service API, using HTTP over the Internet protocols, or can be some other kind of interface that uses the Internet protocols, such as a set of defined IP messages.

The managed object user is a program that interacts with the object manager and the objects that it manages. The person or enterprise that operates it is the managed object user operator. There is generally some kind of business relationship between the managed object user operator and the object manager operator that covers the use of the manager and managed objects. (This includes the trivial business relationship where the two entities are the same.)

The managed object user is supported by the managed object user platform and managed object user infrastructure. The managed object user infrastructure provides access to the Internet for interaction with the manager and managed objects.

If the manager interface is a web service API then the model is an extension of the Web Service Model, with the managed object user operator, managed object user, managed object user platform, managed object user infrastructure, object manager operator, object manager, object manager platform, and object manager infrastructure as, respectively, the web service provider, web service, web service platform, web service infrastructure, web service consumer, web service consumer program, web service consumer platform, and web service consumer infrastructure of that model.

The system that manages the object can be a mobile device, with the manager interface a web service API. In this case, this model is also an extension of the Mobile Connected Device Model, with the object manager operator, object manager, object manager platform, object manager infrastructure, managed object operator, and managed object as, respectively, the mobile user, mobile app, mobile device platform, mobile device infrastructure, connected device operator, and connected device of that model.

Big Data

The term big data refers to data that is so large that it is difficult to work with using IT systems available today. There is a growing body of analysis, visualization, and distributed processing software that enables people to extract useful information from such data.

A big data application obtains data from one or more sources and analyzes it.

Data sources can include:

  • Corporate data in SQL databases
  • Data in SQL or NoSQL databases that are cloud services
  • Data provided by social networks
  • Data provided by sensors or object identifiers in the Internet of Things

An item of data generally has an owner. The operator of the big data application has a business relationship with the owner that covers use of the data.

The application may include visualization functionality to enable effective presentation of the results of its analysis to users.

The application may be a web service that makes the results of its analysis available to other applications or apps through APIs.

Performance and quality of service of the application are crucial. Achieving them is a key challenge for big data analysis.

To be able to process large amounts of data, and to achieve performance and quality of service, the application may use the platform to marshal and configure underlying processing, storage, and network resources.

Objects in the Internet of Things can be generators of data; the Internet Object Model and the Managed Object Model are big data models as well as being Internet of Things models. There are two other basic models for big data: the Database Source Model, and the Data API Source Model.

Internet Object Model for Big Data

When an Internet object generates data and exposes it through its object interface, the Internet object user may process large volumes of data, and be a big data application. The Internet object operator is often the data owner.

A large volume of data may be generated by a single object, or a single Internet object user may interface to a large number of Internet objects that together generate a large aggregate volume of data.

Managed Object Model for Big Data

Similarly, when a managed object generates data and the object manager exposes it through its manager interface, the managed object user may process large volumes of data, and be a big data application. The managed object operator or the object manager operator is often the data owner.

A large volume of data may be generated by a single object, or by multiple objects managed by a single object manager, or a single managed object user may interface to a large number of object managers that together generate a large aggregate volume of data.

Database Source Model

The database source model applies when the big data application accesses data in a database via a programmatic interface, such as the ODBC interface. This model is shown in the figure.

The Database Source Model

The database user program is a big data application. The database source is the database that holds the data, plus the data that it holds.

The database source operator is the person or enterprise that operates the database.

The database user program operator is the person or enterprise that operates the database user program. This program may have users, such as data scientists, that use the program to process and analyze the data. Alternatively (or in addition), the database user program may expose the data, possibly in processed form, to other programs, acting as a data API source in the Data API Source Model.

A data owner is a person or enterprise that owns some of the data. There are generally business relationships between the data owner, the database source operator, and the database user program operator, covering storage and use of the data.

The database platform supports the database user program and the database source, and provides the capabilities by which the database user program accesses the data. The underlying database infrastructure includes the media on which the data is stored.

The media on which the data is stored may be directly attached to the processor on which the database user program runs, or may be attached to another processor that is connected by a network. In this case, the database infrastructure includes both processors and the network, and the database platform manages the data transfer between the processors.

Data API Source Model

The data API source model applies when the big data application accesses data that is exposed by another application via an API. This model is shown in the figure.

The Data API Source Model

The data API user program is a big data application. The data API source is an application program that exposes the data via an API, the Data API.

The data API source operator is the person or enterprise that operates the data API source.

The data API user program operator is the person or enterprise that operates the data API user program. This program may have users, such as data scientists, that use the program to process and analyze the data. Alternatively (or in addition), the data API user program may expose the data, possibly in processed form, to other programs, acting as a data API source.

A data owner is a person or enterprise that owns some of the data. There are generally business relationships between the data owner, the data API source operator, and the data API user program operator, covering storage and use of the data.

A common application of this model is one in which the data API source is a social web service, as in the Social Web Service use of the web service model. In this case, the data API source operator and the data owner are the social web service operator, the data API is the web service API, the data API user program operator is the social web service user, and the data API user program is the social web service application.

The data API source platform and data API source infrastructure support the data API source. The data API user platform and data API user infrastructure support the data API user program, and enable it to use the data API to access the data.

Composition

Composition is a technique that:

  • Enables rapid assembly, configuration, and operation of functional and cost-effective solutions by IT-aware business users
  • Enables development and integration of solutions by IT specialists

It can be used in providing the Multi-Party Services Orchestration capability.

The Composition Model

The composition model is shown in the figure.

The Composition Model

A solution is composed by IT-aware users, using a solution palette. This palette is created by IT specialists. It contains resources that are composed to make the solution, and composition-support applications that facilitate the composition process. It may just be essentially a single solution that can be configured, or may be a complex system in which the business can assemble and configure a variety of components.

The users of the resulting solution may include the IT-aware users that created it and also other users, not necessarily IT-aware, and not necessarily employed by the business. (They may, for example, be its customers, or employees of its business partners.) The users rely on the quality of services performed by and information provided by the solution, and the business is responsible for achieving and maintaining the required levels of quality.

The organization that employs the IT specialists to create the solution palette (or a single IT specialist, acting as a one-person enterprise) is the palette provider. The business operates the resources. The palette provider manages their use, performance, and delivery, and negotiates relationships between the business and their suppliers. The business and the palette provider may be the business and IT departments of the same enterprise, or the palette provider may be a separate enterprise acting as resource broker. A “cloud broker” is a particular case of this.

The compliance officer is a person acting for the business to ensure that it conforms to regulation and meets its self-imposed standards of operation. Where the palette provider is a separate organization, the business retains the responsibility for conformance to regulation and policy. To meet this responsibility, the compliance officer monitors compliance parameters of the solution kit and of the solutions, including rights to access services and information.

Resources used in solutions can include cloud services (BPaaS, SaaS, PaaS, and IaaS), application components, platform components, and infrastructure components.