Keywords

1 Introduction and Background

Information and Communications Technology (ICT) is being transformed to a model based on services that are commoditized and delivered in a standardized manner. In a cloud service-based model, users access cloud services based on their requirements without regard to where the cloud services are hosted or how they are delivered.

Several computing paradigms have promised to deliver this computing vision, of which the latest is Cloud Computing. The term “Cloud” denotes a computing infrastructure from which businesses and users are able to access applications from anywhere in the world, on-demand. Thus, the ICT world is rapidly evolving to develop software for millions to consume as a cloud service, rather than to run on individual computers. Cloud computing represents a paradigm shift that has redefined the relationship between buyers and sellers of IT-related products and services [1]. The ISO (International Organization for Standardization) SC38 Study Group on Cloud Computing in their 2011 report [1] identified at least 23 Cloud Computing industry initiatives that had published material, were developing standards or were doing at least some work in this area.

With multiple and often confusing Cloud Computing approaches being offered to the IT community, ISO initiated standardization work on a Cloud Computing vocabulary and a Cloud Computing reference architecture in 2010. On a parallel front, ITU-T was also in the process of developing Recommendations for Cloud Computing terminology and reference architecture. The two groups successfully launched collaborative work on the development of a common set of standards/recommendations for Cloud Computing vocabulary and reference architecture.

The ISO Joint Technical Committee (JTC1) formed a Sub-Committee, called SC38 named Distributed Application Platform and Services, to harmonize the ISO work on standardization for: Web Services, Service Oriented Architecture and Cloud Computing. This initiative was largely driven by the IT marketplace having to face multiple incompatible choices of product sets, which essentially creates barriers to interoperability efforts.

This paper updates the previous work [10] of the basic Cloud Computing terminology and Reference Architecture that was based on the Committee Draft (CD) document. This update reflects removal of some overlapping items between the Vocabulary and Reference Architecture documents, along with minor clarifications of relationships. This paper illustrates how Fact Based Modeling (FBM) provides a useful means to capture and understand the Cloud Computing standards, hopefully leading to a more cohesive and consistent direction for the next generation of ICT.

NOTE: The standards for Cloud Computing are under continuing development and are subject to change. The contents of this paper are intended to be illustrative and should not be considered as an authoritative description of the emerging ISO standards.

In this paper, we have used the FBM notation and methodology as a description technique to define semantic models abstracted from the current Cloud Computing and SOA documents being progressed for standardization. FBM is a methodology for modeling the semantics of a subject area.

FBM is based on logic and controlled natural language, whereby the resulting fact based model captures the semantics of the domain of interest by means of fact types, together with the associated concept definitions and the integrity rules [9].

The roots of FBM go back to the 1970s. NIAM, a FBM notation style, was one of the candidate methodologies used for developing conceptual schemas as defined in ISO Technical Report TR9007:1987 Concepts and Terminology for the Conceptual Schema and the Information Base. Subsequently, several developments have taken place in parallel, resulting in several Fact Based Modeling “dialects”, like NIAM, ORM2, CogNIAM, DOGMA and FCO-IM. The notation used in this paper is ORM2 notation.

A simplistic description of usage and reading the ORM2 notation follows. The subject area Universe of Discourse is seen as consisting of semantic objects (representing objects in the real world model) that can be described using natural language sentences—consisting of an object, predicate and possibly one or more objects, each connected with a predicate-object pair. A real world object is represented by an object type denoted by a circle, also known as an entity type. Object types may have subtypes denoted by arrows from the subtype to supertype (e.g. object type Role has subtype Sub-role). Object types are involved in ‘fact type’ sentence descriptions that can be binary, or n-ary (ternary, quaternary etc.), as depicted by rectangle boxes, each box representing a ‘role’ that the object type plays in that sentence. Integrity rules are then associated with the fact types, like mandatory (shown as a dark dot on the object type connector). A horizontal bar on top of a role of a fact type denotes a uniqueness restriction on the occurrence of the set of role populations. The ORM2 notation contains several other rules that can be graphically depicted but are out of scope for our discussions. An example of a fact type reading from Fig. 1 is: A Party (in the cloud computing paradigm schema) must be assigned to one or more CCRole(s). A CCRole may be assigned to one or more Parties.

Fig. 1.
figure 1figure 1

Basic Cloud Computing concepts from ISO 17788

2 Cloud Computing Concepts

Figure 1 depicts the main Cloud Computing concepts using FBM, along with examples, as defined in the ISO Overview and vocabulary document [2]. The concepts are defined in terms of the cloud services that are available to cloud service customers and the cloud deployment models that describe how the computing infrastructure that delivers these cloud services can be provided and shared by users.

It is interesting to note that the Cloud Computing vocabulary and concepts were developed prior to an agreed upon architecture. The architecture itself takes its basis from the approach used in the ISO Open Distributed Reference Model (ODP) [4] by utilizing the user view and functional view.

The cloud paradigm is composed of key characteristics, roles and activities, cloud service capabilities and cloud service categories, deployment models, and cross cutting aspects as shown. The concept relationships generally appear in the cloud computing reference architecture.

Table 1 is the relevant definitions pertaining to the cloud computing models shown.

Table 1. Definitions of concepts used in Cloud Computing ISO 17788, ISO 17789

3 Cloud Computing Reference Architecture

A Fact Based Model for the Cloud Computing Reference Architecture (CCRA) is shown in Fig. 2. As noted earlier, the CCRA takes as its basis the ODP reference model but focuses only on the user and functional views. The CCRA does not address the implementation and deployment views. The user view is the ecosystem (or system context) including the parties, the roles, the sub-roles and the activities. The functional view is the distribution of functions necessary for the support of cloud activities.

Fig. 2.
figure 2figure 2

Cloud computing reference architecture model from ISO 17789

The Fact Based Models in this paper represent the distillation and transforms as interpreted from the vocabulary text [2] and the CCRA text [3]. The purpose of these diagrams is being able to understand and analyze them using a formal modelling methodology to represent the involved facts and relationships as opposed to text paragraphs.

4 Cloud Computing Service Level Agreement (Cloud SLA)

A service level agreement is part of a cloud service agreement that includes cloud service level objectives and cloud service qualitative objectives for the covered services. The cloud SLA accounts for the key characteristics of cloud computing that include: Self-service, resource pooling, multi-tenancy, rapid elasticity and scaling, tradeoff between cost and control, and more importantly, the ability to ‘measure’ cloud services.

Figure 3 relates cloud services with service level agreements, SLOs and SQOs.

Fig. 3.
figure 3figure 3

FBM schema depicting ISO 19086-1 CC SLA

The use of FBM enables the capture of SLA standard semantics [5,6,7] in a succinct capsulated form in the FBM schema shown in Fig. 3 (Table 2).

Table 2. Definitions of concepts used in CC SLA ISO 19086

5 Cloud Computing Interoperability and Portability

The cloud computing interoperability standard [8] is aimed at all parties involved in cloud computing—cloud service customers (CSCs), cloud service providers (CSPs), and cloud service partners (CSNs) acting as cloud service developers. ISO DIS 19941 provides a common understanding of interoperability and portability as it applies to cloud computing. This common understanding helps to achieve interoperability and portability in cloud computing by establishing common terminology and concepts that are involved.

Figure 4, describes cloud computing portability and depicts the terminology used. Figures 5, 6, 7 and Table 3 describe cloud computing interoperability the terminology used.

Fig. 4.
figure 4figure 4

FBM schema of CC portability ISO 19941

Fig. 5.
figure 5figure 5

FBM schema of CC interoperability – transport/syntax facet ISO 19941

Fig. 6.
figure 6figure 6

FBM schema of CC interoperability – semantic/behavioural facet ISO 19941

Fig. 7.
figure 7figure 7

FBM schema of CC interoperability – policy facet ISO 19941

Table 3. Definitions of concepts used in CC interoperability and portability ISO 19941

It is important to note that using FBM and strongly typed subtypes, it was possible to abstract and condense much of the formal descriptions in the standard [8].

6 Cloud Computing Suite of Standards

By transforming each of the Cloud Computing concepts, terminology and architectures using Fact Based Modeling, we are able to distill the salient object types, relationships and some of the business rules to enable a comparative analysis of the involved architectures—the Cloud computing reference architecture (CCRA), the cloud computing service level agreement suite of multi part standards (some are still in development), cloud computing interoperability and portability architecture, and cloud computing cloud service and devices: data flow, data categories and data use.

By using FBM any deviations from the established vocabulary immediately become apparent. Cloud computing reference architecture uses ODP views whereas the follow on standards do not. These are only some of the examples of divergence between the cloud computing and companion architectures.

It is clear that there needs to be an accord between the Cloud Computing standards group and other CC related standards groups like Security and Privacy, Metadata, Open-edi, Internet of Things (IoT RA), Blockchain and distributed ledger technologies, with other standards developing organizations (SDO), and industry consortia.

7 Conclusions

In this paper we have demonstrated the use of Fact Based Modeling to facilitate an analysis of the ISO vocabulary and reference architecture standards for Cloud Computing, cloud computing service level agreement framework, cloud service level agreement metrics, cloud computing interoperability and portability. As a result, we have identified a number of areas where the concepts in the vocabulary and architecture documents are generally aligned and provide a mechanism to explore any misalignments. We have also identified a number of areas where Cloud Computing and associated standards are using similar concepts, typically in ways that may be readily compared.

Fact Based Modeling appears to provide significant assistance both in the development of consistent architectures based on sound concepts and also in the analysis and comparison of different architectures.

Further effort to analyze the models in more detail would provide valuable insight into the complex relationships within Cloud Computing suite of standards.