Keywords

1 Introduction

Today most computing components are context sensitive, inconspicuous, almost unseen and interconnected through wireless networks. This was the vision of Mark Weiser in early 1990s as he forecasted computers are applied everywhere and anywhere in the 21st century [1]. Pervasive-computing environment are crowded, heterogeneous and always changing. Additionally pervasive-computing applications must discover and use resources based on the current context. The discovery and use of resources are one of the prevailing concepts in the discipline of Ergonomics.

Ergonomics in general, deals with technical and work circumstance of a particular entity. It put human needs and capabilities at the focus of designing technological systems. Software ergonomics in particular, is about software design of systems, that encompass user needs, interface design, user support and usability test. A systematic approach is essential in the design of software process by considering Human Factors and, thus, usability of the software can be addressed adequately in succession.

One of the important design element in pervasive computing is how applications obtain information they require in order to implement adaptive behavior [2]. Predicting events is one of the challenging phenomenons in pervasive environment. There are a number of research works that deal with event prediction based on context histories and current action of a user, devices and other resources in the user environment.

As learnt from the work of [3,4,5], context information can be obtained from a number of sources including hardware sensors, network information, device status, user profiles and other entities in the user environment. Consequently, context information can be divided in to physical context (i.e., location, sound, movement, and touch) and logical context (user goal, tasks, business process and emotional states). Correspondingly our previous generic architecture [6] elaborate context information as dynamic context (same as physical context) and static context (subsets of logical context).

2 Related Works

2.1 Context-Awareness

Guanling Chen and Dauid Kitz [7] define context as: “Circumstance in which an application runs, and may include: physical state, computational state, and user state”.

The following lists are identified as feature of context-aware applications [8, 9]:

  • presentation of information and services to the user;

  • automatic execution of services to the user; and

  • tagging of context information to support later retrieval

Two recent trends highly facilitate the vision of ubiquitous or pervasive computing: wireless hotspots and the explosion of mobile devices. Network technology facilitates, the spontaneous connection of a user personal device to immediate services seamlessly [10, 11]. But the difficulty lies on knowing the available services in the user environment.

The dynamic environment of pervasive computing proactively provides the participating entities with a rich set of capabilities and services all the time, everywhere, and in a transparent, integrated and extensible way. A context is any situation of an entity (i.e. a person, place, location, etc.).

Obtaining the exact context of an entity is not a simple task and requires in-depth consideration of stored profile of user data in relation to user interaction with other entities/resources as this study indicates.

2.2 Smart-Office

The setup of modern day workplaces relies on the use of information technology. Optimal and effective utilization of physical infrastructure and IT resource is the core concern in smart office. Devices such as, display, a mouse, a keyboard, or other peripheral appliances are considered as infrastructure in smart office environment that contains embedded processor with wireless capability. Integration and interaction of such resources in a smart office environment should be transparent to its user.

Moreover, [12] identifies four basic challenges and put forward resolution techniques to establish smart spaces in a workplace environment; (i) power dependencies, (ii) network dependencies, (iii) peripheral dependencies and (iv) application dependencies.

To the best of our knowledge most of smart office appliance strive to address the above stated challenges reasonably and tries to accommodate smartness from space/allocation point of view.

2.3 Human Factors

Software development is primarily a human and collaborative endeavor, as software is typically developed by individuals or groups working together in an organization. The Study of Human Factors is essential for every software manager to understand how development team interacts with each other.

Numerous companies came to recognize success of a product depends upon a solid Human Factors design and Human Computer Interface (HCI) design, which “is a sub-discipline concerned with the specification, design, evaluation/testing and implementation of interactive computing systems for human use” [13]. As a result, HCI evolve into a discipline, which has its own defined and managed processes.

Ergonomics is a branch of Human computer interaction that can be defined as the application of scientific information concerning humans to the design of objects, systems and environment for human use. It deals with the technological and work situations of a particular individual. It puts human needs and capabilities at the focus of designing technological systems. Office ergonomics, in particular, includes workspace design, environmental factors and teamwork [14].

3 Challenges

Addressing human factors in system development requires the investigation of human ability, limitation and associated uniqueness in designing task, job or system. In this regard, pervasive computing creates a better opportunity with respect to developing context sensitive application/services, which react based on the changing behavior of its user. On the other hand, such context sensitive application requires in-depth understanding of user, task, system and resources preferences. Analyzing preferences of a given entity is still challenging in context aware pervasive system, and hence demand end-to-end understanding of entities, components, methods, behaviors and abstraction for a given circumstance.

Identification of preferences in relation to: user, furniture, and changing environment are difficult. The three basic preferences (user preferences, furniture preference, and total environment preference) provide set of low level context information and demand aggregation to support context awareness with the goal of human factors and ergonomics at time of preprocessing.

4 The Proposed Approach

This section contains part of the extension of our work [6], with some change at the lower level components to accommodate smart office setup and detailed elaboration of introduced components for the overall context determination. The proposed architectural diagram (Fig. 1), illustrates how pervasive system consume context preferences systematically.

Fig. 1.
figure 1

Proposed context aware system architecture tuned for human factors and ergonomics application.

4.1 Component Description

This section elaborates the components identified in Fig. 1, by giving emphasis to lower level components.

User Preference Context.

This is static context information to be filled by the smart office personnel as a preference to all intelligent appliances in the office environment. For instance, a person could have a preference of seat while composing mail with respect to type of device (such as PC, Laptop, PDA, Smart phone and other personal apparatus). Thus, the user is supposed to define his/her preference while using the suitable pervasive application, preferably via hand held device. The envisioned pervasive application encourages office personals to fill their preference as soon as using the intelligent office furniture and appliances for the first time and utilize it for subsequent usage. Moreover, user data available in the hand healed devices are considered as a major input for the overall context predication and regarded as source of human factors in using context sensitive applications/devices.

User preference is not limited to the usage of explicit intelligent furniture for some specific purpose, but also a preference of doing things using a number of technological solutions, in general.

Furniture Preference Context.

Intelligent office furniture has always a defined preference up on the different context in the smart office environment. The furniture’s are assumed to have a location preference in relation to other entities in smart office specifically at time of usage. For instance the orientation of white board in a given room should be visible to all chairs (positions) in the area, as long as chairs are occupied by participants (asserted by pressure sensor available at chairs).

Thus, activities in smart office environment play a significant factor for the overall setup of intelligent office furniture. Employees in smart office might involve in a number of activity while using a limited intelligent resource (such as chair). For instance, a person while seating in a chair, he/she might involve in different activities such as reading, telephone conversation, writing memo or discussion with client or colleagues; for each of the different activities the setup of the intelligent chair is different so as to facilitate better level of task accomplishment. Office furniture for two office personnel should react according to their preference and the total environment context.

Environment Preference Context.

All entities in a given smart office environment would vote for their preference as per the configuration, interaction, network and other contextual data (such as date and time). For instance, considering the intelligent white-board at time of demonstration, it is governed by the absence or presence of light in the room. Consequently, the light sensors determine the situation of the intelligent whiteboard as a global preference.

In general, resources in smart office environment would have two type of preference; local preference and global preference. The local preference is the one set as a default preference for specific intelligent furniture. On the hand, the global preference is the one considered as environmental preference. The global preference prevails over the local preference, in case of preference variance.

Context Aggregator.

Detail of context aggregator and other high level components are already described in our previous publication [6] and accessible directly online at www.scincedirect.com.

4.2 Proposed Algorithms and Techniques

This section reveals algorithms consumed by the different context preferences (such as user, furniture and environment). Consequently, the algorithm detailed in Fig. 2, is permitted for all context prediction at lower level. The context achievement is analyzed by the context lookup data given in Table 1.

Fig. 2.
figure 2

Algorithm used for context preference determination

Table 1. Context lookup table

The algorithm in Fig. 2, will be consumed by the algorithm detailed in Fig. 3. The preprocess_context method at line 5 of Fig. 3 relies on the aggregate context response recommended by Table 1.

Fig. 3.
figure 3

Algorithm used for context aggregation

As learned from Fig. 4, and the context lookup table there are four set of context support condition governed mainly based upon the context variables responses. The current context of user, furniture or environment return the Boolean value one to assure the situation outlook availability for a given context variable is true, otherwise it will be zero, to indicate the lack of context knowledge.

Fig. 4.
figure 4

Context variable distribution chart

Consequently, no context support is a circumstance where all of the context variable lacks knowledge about the user, environment, and other contextual situation and hence requires adaption of the smart environment to the user handheld device, intelligent furniture and other nearby devices in the environment. On the contrary, high context support is facilitated, if all the context variables have knowledge about the user, the environment and connected appliances entirely, in such cases the device will react involuntarily based on the predefined context knowledge. The remaining, situation lack the assertion of one or two variable set and facilitates limited or intermediate context support respectively, such situation requires context refinement to adjust the variables with the value equals to zero.

As per the exploration in this investigation, the context response of a given context preference is highly influenced by the context variables and computationally determined using a simple mathematical approach. Thus, CR = 2CV, Where CR - is the context response and CV - is the context variable. The variable values are binary (i.e., 0 or 1) in nature as clearly indicated in Table 1.

4.3 Implementation Scenario

  • User 1 has two hours meeting agenda schedule before a week at 4:00 AM in the meeting room.

  • User 1 had a discussion with his/her colleague before the meeting section starts, the position of the chair was adjusted as per his/her furniture default preference, to be loaded/adjusted to the smart chair from the user hand held device application.

  • The context of the chair will be adjusted as the meeting starts, by considering the status (on/off) and position (vertical/horizontal and orientation) of the meeting room projector, the configuration and related preference of the projector will be broadcast to all intelligent chair and chair occupants.

  • The context aware server side application (referring our previous study [6]) will consume the published context preferences (user, furniture, and environment), the moment the projector is on.

  • Once the diverse context variable preferences aggregate based on the algorithms and the context lookup table responses, the context of the intelligent furniture will be adjusted/corrected based on temporary preferences.

    • If all context variable preference has knowledge about the circumstance, then context variation is very minimal and hence the intelligent chair will behave based on the predefined preference.

    • If context variable preference lacks knowledge about the cir circumstance, then context variation is very significant and hence the intelligent chair requires training/preference setup by its user.

  • Finally, the high level preference will be directly push to the intelligent furniture actuator to take action based on User 1 preferences.

  • Eventually, at the end of the meeting user 1 will have a telephone conversation; the intelligent furniture will adjust its position based on the default preference of chair (i.e., local preference).

  • The moment User 1 out f the meeting room, the context preference will be stored in the server application, for successive usage for all chairs available in the meeting room by associating with User 1 hand held device.

5 Conclusion and Future Work

This article brings concepts that have common characteristics; critical and requires a separate detail analysis of context preference, primarily for context aware pervasive system. Three basic preferences (user, furniture, and environment) were considered for the actualization of low level context information and stipulate aggregation to support context awareness with the goal of human factors and ergonomics at time of preprocessing. Knowing the preference of entities in context aware environment can be attained using the suggested techniques, and algorithms have enormous input for human factors in software system design and ergonomics. The preferences aggregated will be pushed to the knowledge and application layer. The application layer, consequently push the refined context information to the desirable appliance to bring context awareness and by considering human factors in the changing user environment.

This work gives emphasis only to low level context prediction, algorithms, and related techniques. Further, investigation with regard to the high level context information and actual deployment of the proposed techniques are considered as part of the prospect work.