**Abstract**

Any interaction refers to the communication between two or more entities (be it abstract/conceptual or physical entity). Successful interaction is equated from the properties of each entity involved in the interaction as well as the capabilities of the interacting entities. With the diversified use and application of computers and specialized devices for specific tasks, such as biomechanical and biomedical devices, interaction design needs to further study the context of the tasks as well. Moreover, with the inclusion of embedded systems and smart devices, instead of focusing only on the hardware performance, the computer architecture needs to consider the opportunities. Especially, HCI can be improved as the current technologies are giving an opportunity for building smart interaction where the user interacts with devices implicitly and in less obtrusive way. In light of this, the design and architecture of an engineered product need to strive for making the product usable and used while making it useful to the user. And this can be achieved if interaction design is dictated by scrutinizing the user model with respects to the usability attributes in view of the context of its task as well as the platform capabilities and constraints as discussed in this chapter.

**Keywords:** interaction design, user-centered design, user interface, implicit interaction, HCI, CHI

### **1. Introduction**

It used to be the case, in the mid-1990s, where people use computers only as a means to analyze and calculate sophisticated mathematical, statistical, and/or scientific problems. By then, the design and architecture of computers used to focus on the computational performance and/or storage capacity. By then, computer architecture was more concerned with the set of rules and methods to describe the functionalities of various components and how these components are organized in the implementation of computer systems to achieve better performance.

In view of "better performance," often computer engineers consider improved processing speed, storage capacity, and information retrieval. Otherwise, interaction performance, associated with the user, used to be less considered. This perspective cannot persist after the introduction of personal computers and especially with the proliferation of mobile technologies like smartphones. If the design and architecture consider only the internal architecture of the functionalities of the components, aiming to address data processing and storage requirements only, but not the user profile nor the context of the users' tasks, usability could be compromised.

Often, computer architecture is much concerned with the performance of the device so as to effectively and efficiently execute users' tasks regardless of the user itself. Instead, users are expected to learn how to use the device architecture and comply with the limitation of the platform while executing their task/s. Such consideration is, of course, rooted to the assumptions of the known user profile of the first-generation computers, where a single group of people used to design, build, program, operate, and maintain each machine [1].

After the introduction of personal computers, and when computers become an indispensable and useful machine for everyone, the functions that can be performed by computers and devices were abstracted at the software layer so as to mediate the interaction language between the machine and the human-user. Particularly, the user interface of software (i.e., application software) determines how users can communicate with the device so as to access a particular service in a machine.

As shown in **Figure 1**, though users actually interact physically with a device, they actually require it to execute a use case to accomplish their need. Hence, users are interacting logically with the service. Software engineers define the service as a use case that is realized by a certain subsystem/component in the software, while the interface is considered as boundary class during analysis and as the user interface during the design and implementation stage.

As the performance of the user is also important to benefit the improved performance of the computer/machine, the user interface design process (usability engineering) takes due consideration to understand the machine. As a result, one of the important tasks in usability engineering lifecycle is scrutinizing the platform capabilities and constraints [2–4]. The platform capabilities are used to meet users' requirements [5] but are limited as specified in the respective architecture of the computer/device. Similarly, the constraints are the result of the architectural organization of the components in the device.

A software that is designed to run on a certain machine (platform), as it benefits from the capabilities of the computer/devices, also could be limited in having some desired functionalities because of the constraints associated with the device architecture. Thus, the human-computer interaction (HCI) further needs to identify and/create interaction modality to complement the limitations while complying with the architectural description of the machine. Such approaches may enable and support users to effectively and efficiently execute their use cases (tasks/functions) on the constrained platform.

With the diversified use and application of computers and specialized devices for specific tasks, such as biomechanical and biomedical devices, the interaction design needs to further study the context of the tasks as well. Moreover, with the

**31**

dislike the product.

*Human-Computer/Device Interaction*

**2. HCI basics**

**2.1 Goals of HCI**

product acceptable by the user.

categories, "utility" and "usability."

*DOI: http://dx.doi.org/10.5772/intechopen.86673*

users' profile and needs are heterogeneous.

inclusion of embedded systems and smart devices, instead of focusing only on the hardware performance, smart technologies shall be considered as opportunities in the design of HCI, so that user interface/interaction designers can easily and

In this chapter, we provide HCI basics first and then discuss the process of effective HCI development. Finally, we introduce the broad categories of HCI, explicit and implicit, in view of recent computational models and embedded systems, which are an integral part of specific purpose computer system as in vehicles and

Lately, when computers of the fourth generation evolve and as application software became indispensable resource and widely used, software engineers use the term "user-friendly" in connection with the interaction and to denote how the software is convenient for users. However, this term is not appropriate for various reasons as indicated in [3], and it is not measurable. Technically, it may imply the consideration of a single dimension of user profile and users' needs, while indeed

When supporting the user performance became equally important to computer performance, alternative terms like usability, user experience, end-user criteria, etc. are coined. In line with user interface design, the field evolved as HCI studying the

HCI primarily focuses on improving the user performance and satisfaction during interactions the users encounter with the computer/device. Though the "C" in the abbreviation "HCI" refers to the word "computer," technically it must mean both the hardware and software. And, by hardware, we mean any device or machine, or it may simply refer the device, which is an engineered product. But, since software is also an integral part of a computer system, in the following sections, by "engi-

Whether the interaction is with the hardware part of computer (machine or device) or the software, the goal of HCI design is to improve the usefulness, usability, and/or usedness of the engineered product [6]. It is also important to provide an intuitive and natural interaction experience for the user [7], so as to make the

The acceptability of the product can have technical or social aspect [7] or the combination of both [3]. Though such classification of acceptability could be useful for simplifying the understanding, some of the attributes considered to measure the

A product's acceptability is related to usefulness of the product [8]. Nielsen [3] considers usefulness as "practical" acceptability, which in turn is divided into two

While utility is associated with meeting the functionality of the product, usability can further take a multidimensional concern, and it could be important to support more than single user, and this forms community subjected to social value [9]. Yet, satisfaction, which is considered as one of the practical usability metrics, could greatly affect the social acceptability. For instance, users could just simply

systematically assimilate user interaction modalities in the devices.

industrial, biomechanical, and biomedical devices/machines.

interaction between the computer/devices and the human-user.

neering product" we mean the device or the software—or both.

practical acceptability could be closely related to social acceptability.

**Figure 1.** *Interaction between user, device, and service.*

#### *Human-Computer/Device Interaction DOI: http://dx.doi.org/10.5772/intechopen.86673*

inclusion of embedded systems and smart devices, instead of focusing only on the hardware performance, smart technologies shall be considered as opportunities in the design of HCI, so that user interface/interaction designers can easily and systematically assimilate user interaction modalities in the devices.

In this chapter, we provide HCI basics first and then discuss the process of effective HCI development. Finally, we introduce the broad categories of HCI, explicit and implicit, in view of recent computational models and embedded systems, which are an integral part of specific purpose computer system as in vehicles and industrial, biomechanical, and biomedical devices/machines.
