From OIAr
Jump to navigation Jump to search

This is a Generic Pattern document GP Workspace Version: 0.5 OIAr logo
Document type: Generic Pattern Owner:

J.A.H. Schoonderbeek


This Generic Pattern belongs to "Commons". This Pattern models the generic (user) digital workspace, which acts as a gateway between the digital and physical world. The goal of this pattern is to provide a digital consumer (applications and/or other ICT systems) a means to interact with the physical world, including the human users of ICT.

While the Pattern can be used to model many systems varying from smart watches to multifunctional workgroup printers, its main application is in the modelling of a user workspace. By and large there are three types of user workspace:

  1. A "fat client": a workspace that delivers its consumers (most or all) computational resources from the location of the human user, resulting in less dependence on the organization's central IT. However, the consumers running on the workspace may well make use of centralized resources such as shared file storage, and the workspace itself may be serviced from a centralized facility, e.g. applications may be deployed from a remote deployment service. The applications running locally, and the human user working the applications, can have all necessary rights and abilities to manage the workspace, or these rights and abilities can be partially or wholly restricted, e.g. by centrally managed policies
  2. A "virtual desktop" providing consumers with a centralized personal workspace: the workspace has all the properties of a fat client, except that the computational resources are delivered from one or more centralized locations. At the physical location of the human user, an extra workspace is required for handling the actual physical input and output, using connectivity to the centralized location to transmit the digital input/output. This may involve only a minimal device ("thin client").
  3. A "shared applications environment" providing access to a centralized shared workspace: the workspace has the properties of the centralized personal workspace, except that groups of human users share the same workspace, with limited or no personalization, and little or no flexibility in installing applications for the user itself. Every update or new application is handled at the centralized location, resulting in uniform workspaces between users in the same group, and predictable maintenance load for the centralized facility.

Note that while the fat client and thin client characterizations point toward "traditional" computers, this Pattern is equally suitable to model different form factors, purposes and information delivery, ranging from tablets and mobile devices through gaming consoles and wearable IT. The different form factors and other properties of these clients are then represented in the Input and Output functionality, and in Workspace Accommodation if need be.

While Workspace implementations often use the desktop computer metaphor, OIAm's use of the term is not limited to facilities that can deliver a user the desktop experience. Other devices and systems may also be modelled, as long as either user input and/or output are present. Examples are multifunctional workgroup printers (a single printer directly attached to a single user workspace is better represented as an Output function instance), surveillance camera systems, telemetry platforms, CNC (Computer Numerical Control) systems and most any other system that interacts with the physical world.

The Pattern often depends on many adjacent services, only some of which have been included in this Pattern Type description.

Services realized

This Pattern realizes the following service(s):

  • Workspace (This Service delivers a (generic) digital workspace, which acts as a gateway between the digital and physical world.)

Functional and Integration view

This is the graphic representation of the functional model of this Generic Pattern:

Generic Pattern Workspace
Generic Pattern Workspace

Generic Pattern Composition

This pattern is an aggregation of the following (mandatory and optional) functions, expressed in Generic Functions:

Icon Function Inclusion Rationale
GF.Workspace Engine icon Workspace Engine recommended This function provides the main functionality of the pattern: the support of applications.
GF.Presentation Engine icon Presentation Engine recommended Output to, and input from the physical world will surely require appropriate formatting and/or processing. For example, camera images presented by Input may require a form of compression (not separately included in the Pattern), while force feedback output will require adaptation to the format in use at the targeted Output device.
GF.Output icon Output recommended This function provides the actual output to the physical world.
GF.Input icon Input recommended This function provides the actual input from the physical world.
GF.Controlling icon Controlling recommended This function models the manner in which the Pattern's administrators, and possibly authorized clients, can administer the Workspace. Among the administrative tasks can be the following:
  • Administering look & feel of the Workspace as it presents itself to a (human or ICT) consumer;
  • Configuring input & output parameters;
  • Administering updates, policies, logging, and other operational and security related parameters.

Care must be taken to limit access to this function to users that are sufficiently knowledgeable and authorized, as misconfiguration likely impacts both operational efficiency and IT security.

GF.Workspace Accommodation icon Workspace Accommodation optional Accommodation covers mainly physical traits of the workspace, including how the workspace is projected from the place of generation (e.g. server farm) to the location of use (e.g. a user's office). Accommodation is regularly used to describe the functionality of a "thin client", negating the need to separately model this client as a physical Workspace that supports a centralized virtual Workspace.
GF.Logging icon Logging optional As the interaction with the physical world and with human users gives greater rise to incidents, good logging is recommended for both operational and security purposes.

Services connected with this Generic Pattern

This Generic Pattern has the following mandatory and optional relations with adjacent Generic Services.

Service Adjacency Summary Rationale
File Storage recommended This service offers clients the ability to store, retrieve and modify data in loosely structured form. The way in which the Workspace stores data and other files may be either local to the physical device (in which case it can be included in an applied version of this Generic Pattern), or relegated to a centralized service.
Authentication & Authorization optional This service can validate an identity claim, and it can validate the permissions required for an action, as part of an Authentication & Authorization process. Often the normal interaction with human users will require Authentication, as in the case of a regular user workspace (but not in the case of, for instance, a kiosk system). But even if this is not the case, then still Authentication & Authorization is recommended for the Controlling functionality.
Facilities Monitoring optional This service allows its users to monitor IT facilities with the aim of guarding operational continuity or security. Workspaces often form a significant load on operational support, and are also regularly a concern for security personnel. Monitoring (often subdivided into operational and security monitoring) helps inform these groups of incidents, status and general use of Workspace instances.
Facilities Deployment optional This Service can deploy the software part of an IT systems, and/or configurations thereof. Workspace facilities may be instantiated many times, as can be seen with user workspaces. In that case, use of a Facilities Deployment service may reduce operational effort and response times, while increasing quality and uniformity.

Applied Patterns based on this Generic Pattern

The following Applied Patterns are based wholly or in part on this Generic Pattern: