The Human-Computer Interaction Design Ontology (HCIDO)
domain ontology from HCI-ON
1. Ontology Description
(acrescentar descrição no astah)
3. Ontology Models
Figure 1 presents the packages of the HCIDO Modularization.

Figure 1. HCIDO Modularization.
(acrescentar descrição no astah)
3.1. Design Object
(acrescentar descrição no astah)
Figure 2 presents the conceptual model of the HCIDO - Design Object subontology.

Figure 2. HCIDO - Design Object conceptual model.
(acrescentar descrição no astah)
3.2. Design Specification
(acrescentar descrição no astah)
Figure 3 presents the conceptual model of the HCIDO - Design Specification subontology.

Figure 3. HCIDO - Design Specification conceptual model.
(acrescentar descrição no astah)
4. Concepts Definition
The following table shows the definitions for HCIDO concepts.
Concept | Definition |
---|---|
A HCI Design Specitication that is a piece of code (i.e., a Software Item) intended to present basic functionality of an interactive system or of its components. It is developed for early evaluation purposes and cannot be considered the final implementation. | |
A Software Design Choice that describes Mental HCI Design Choices. It is a physical representation of Mental HCI Design Choices, which can be used for communication and evaluation purposes (e.g., the fragment of a sketch showing the fields of a form arranged in two columns or a sentence written in a document describing the expected behavior after a form submission). | |
A User Interface Program that plays the role of Software Design Component and implements Mental HCI Design Components, having its own structure, appearance and behavior. It can be composed of other HCI Design Components. | |
A Software Design Object is an Interactive Software System that plays the role of Software Design Object and implements a Mental HCI Design Object. | |
A Software Design Specification that describes Mental HCI Design Specifications, encoding one or more HCI Design Choices (e.g., a hand-drawn sketch or a text document). | |
A Software Designer that uses his or her skills to directly contribute to the creation of a specification containing design choices about human-computer interaction aspects of the interactive software system being designed. | |
A HCI Design Component that implements Mental User Input Resulting States and is expected to be triggered or not in certain conditions after actions performed by users of the interactive system | |
A Loaded User Interface Program that plays the role of Loaded Software Design Component (i.e., a copy of a programs that deals with user interface aspects loaded in the memory of an interactive computer system) | |
Mental Software Design Choices defining how the human-computer interaction should be implemented, including aspects related to the system’s appearance, the disposition of components in space and time and their expected behaviors in response to user actions. | |
A Mental Software Design Component that can be perceived or triggered by users (e.g., a text label and a button) through the user interface. | |
A Mental Software Design Object specified by a Mental HCI Design Specification that refers to an Interactive Software System being designed (i.e., what is expected to exist after the HCI design effort) | |
A Mental Software Design Specification consisting of a set of Mental HCI Design Choices. It represents the ideas that give form to a detailed description in the designer’s mind about HCI structural and behavioral aspects of the design object (i.e., it specifies the Mental HCI Design Object). | |
A Software Design Proposition describing situations, conditions or constraints related to actions that users can or cannot perform in a Mental HCI Design Component (e.g., a button that can only be clicked after filling all required fields in a form, a text input field that accepts only numbers) | |
A Mental Computing Resulting State decscribing how a Mental HCI Design Component should be presented to users (e.g., presenting a collection of products as a list or in a 3x3 grid). | |
A HCI Design Specification that is a higher fidelity Document depicting how the interactive system should be presented to users, similar to screenshots of the system’s future screens. | |
A HCI Design Component that implements Mental User Observable States and aims to present information that can be perceived through users’ senses | |
A Requirement that refers to User Goals (i.e., a Requirement concerned with users' needs or capabilities that should be addressed by the system, in order to allow users to achieve their goals in an effective, efficient, safe and satisfying manner). | |
Requirement Artifacts that describe User Requirements (e.g., user requirements written as user stories). | |
A HCI Design Specification that is a Document outlining the basic structure of the interactive system’s user interface (e.g., how elements are visually organized on the screen) in a low fidelity sketch, which does not address specific details such as colors and typography. |
5. Detailed Concepts
Human-Computer Interaction Design Ontology (HCIDO) detailed concepts.
HCIDO::Functional Prototype
Functional Prototype
Specializes:
HCIDO::HCI Design Specification
SysSwO::Software Item
Definition:
A HCI Design Specitication that is a piece of code (i.e., a Software Item) intended to present basic functionality of an interactive system or of its components. It is developed for early evaluation purposes and cannot be considered the final implementation.
Relations:
HCIDO::HCI Design Choice
HCI Design Choice
Specializes:
SDRO::Software Design Choice
Definition:
A Software Design Choice that describes Mental HCI Design Choices. It is a physical representation of Mental HCI Design Choices, which can be used for communication and evaluation purposes (e.g., the fragment of a sketch showing the fields of a form arranged in two columns or a sentence written in a document describing the expected behavior after a form submission).
Relations:
HCI Design Choice (0..*) describes (1..*) Mental HCI Design Choice
HCI Design Choice (0..*) /motivated by (0..*) User Requirement Artifact
HCI Design Choice (0..*) /motivated by (0..*) HCI Design Choice
HCI Design Specification (1..*) <>-- (1..*) HCI Design Choice
HCIDO::HCI Design Component
HCI Design Component
Specializes:
HCIO::User Interface Program
SDRO::Software Design Component
Definition:
A User Interface Program that plays the role of Software Design Component and implements Mental HCI Design Components, having its own structure, appearance and behavior. It can be composed of other HCI Design Components.
Relations:
HCI Design Component (0..*) implements (1..*) Mental HCI Design Component
HCI Design Component (0..*) <>-- (0..*) HCI Design Component
HCI Design Object (1..1) <>-- (1..*) HCI Design Component
Loaded HCI Design Component (0..*) materialization of (1..1) HCI Design Component
HCIDO::HCI Design Object
HCI Design Object
Specializes:
SDRO::Software Design Object
HCIO::Interactive Software System
Definition:
A Software Design Object is an Interactive Software System that plays the role of Software Design Object and implements a Mental HCI Design Object.
Relations:
HCI Design Object (1..1) <>-- (1..*) HCI Design Component
HCI Design Object (0..*) realizes (0..*) HCI Design Specification
HCI Design Object (0..*) implements (1..*) Mental HCI Design Object
HCIDO::HCI Design Proposition
HCI Design Proposition
Specializes:
SDRO::Software Design Proposition
Definition:
Relations:
HCI Design Proposition (1..1) propositional content of (1..*) HCI Designer Mental Moment
HCIDO::HCI Design Specification
HCI Design Specification
Specializes:
SDRO::Software Design Specification
Definition:
A Software Design Specification that describes Mental HCI Design Specifications, encoding one or more HCI Design Choices (e.g., a hand-drawn sketch or a text document).
Relations:
HCI Design Specification (1..*) <>-- (1..*) HCI Design Choice
HCI Design Specification (0..*) describes (1..*) Mental HCI Design Specification
HCI Design Object (0..*) realizes (0..*) HCI Design Specification
HCI Designer (1..*) responsible for (0..*) HCI Design Specification
HCIDO::HCI Designer
HCI Designer
Specializes:
SDRO::Software Designer
Definition:
A Software Designer that uses his or her skills to directly contribute to the creation of a specification containing design choices about human-computer interaction aspects of the interactive software system being designed.
Relations:
HCI Designer (1..*) responsible for (0..*) HCI Design Specification
HCI Designer Mental Moment (0..*) inheres in (1..1) HCI Designer
HCIDO::HCI Designer Mental Moment
HCI Designer Mental Moment
Specializes:
SDRO::Software Designer Mental Moment
Definition:
Relations:
HCI Designer Mental Moment (0..*) inheres in (1..1) HCI Designer
HCI Design Proposition (1..1) propositional content of (1..*) HCI Designer Mental Moment
HCIDO::Interactive HCI Design Component
Interactive HCI Design Component
Specializes:
HCIDO::HCI Design Component
Definition:
A HCI Design Component that implements Mental User Input Resulting States and is expected to be triggered or not in certain conditions after actions performed by users of the interactive system
Relations:
Interactive HCI Design Component (0..*) expects to be actioned by (1..*) Mental User Input Resulting State
HCIDO::Loaded HCI Design Component
Loaded HCI Design Component
Specializes:
SDRO::Loaded Software Design Component
HCIO::Loaded User Interface Program Copy
Definition:
A Loaded User Interface Program that plays the role of Loaded Software Design Component (i.e., a copy of a programs that deals with user interface aspects loaded in the memory of an interactive computer system)
Relations:
Loaded HCI Design Component (0..*) materialization of (1..1) HCI Design Component
HCIDO::Mental HCI Design Choice
Mental HCI Design Choice
Specializes:
HCIDO::HCI Design Proposition
SDRO::Mental Software Design Choice
Definition:
Mental Software Design Choices defining how the human-computer interaction should be implemented, including aspects related to the system’s appearance, the disposition of components in space and time and their expected behaviors in response to user actions.
Relations:
Mental HCI Design Choice (1..*) concerns (0..*) Mental HCI Design Component
Mental HCI Design Choice (1..*) concerns (0..*) Mental User Observable State
Mental HCI Design Choice (1..*) concerns (0..*) Mental User Input Resulting State
Mental HCI Design Choice (0..*) motivated by (0..*) Mental HCI Design Choice
HCI Design Choice (0..*) describes (1..*) Mental HCI Design Choice
User Requirement (0..*) motivates (0..*) Mental HCI Design Choice
Mental HCI Design Specification (1..*) <>-- (1..*) Mental HCI Design Choice
HCIDO::Mental HCI Design Component
Mental HCI Design Component
Specializes:
HCIDO::HCI Design Proposition
SDRO::Mental Software Design Component
Definition:
A Mental Software Design Component that can be perceived or triggered by users (e.g., a text label and a button) through the user interface.
Relations:
HCI Design Component (0..*) implements (1..*) Mental HCI Design Component
Mental HCI Design Choice (1..*) concerns (0..*) Mental HCI Design Component
HCIDO::Mental HCI Design Object
Mental HCI Design Object
Specializes:
HCIDO::HCI Design Proposition
SDRO::Mental Software Design Object
Definition:
A Mental Software Design Object specified by a Mental HCI Design Specification that refers to an Interactive Software System being designed (i.e., what is expected to exist after the HCI design effort)
Relations:
HCI Design Object (0..*) implements (1..*) Mental HCI Design Object
Mental HCI Design Specification (1..*) specifies (1..*) Mental HCI Design Object
HCIDO::Mental HCI Design Specification
Mental HCI Design Specification
Specializes:
HCIDO::HCI Design Proposition
SDRO::Mental Software Design Specification
Definition:
A Mental Software Design Specification consisting of a set of Mental HCI Design Choices. It represents the ideas that give form to a detailed description in the designer’s mind about HCI structural and behavioral aspects of the design object (i.e., it specifies the Mental HCI Design Object).
Relations:
Mental HCI Design Specification (1..*) specifies (1..*) Mental HCI Design Object
Mental HCI Design Specification (1..*) <>-- (1..*) Mental HCI Design Choice
HCI Design Specification (0..*) describes (1..*) Mental HCI Design Specification
HCIDO::Mental User Input Resulting State
Mental User Input Resulting State
Specializes:
HCIDO::HCI Design Proposition
SDRO::Software Design Proposition
Definition:
A Software Design Proposition describing situations, conditions or constraints related to actions that users can or cannot perform in a Mental HCI Design Component (e.g., a button that can only be clicked after filling all required fields in a form, a text input field that accepts only numbers)
Relations:
Interactive HCI Design Component (0..*) expects to be actioned by (1..*) Mental User Input Resulting State
Mental HCI Design Choice (1..*) concerns (0..*) Mental User Input Resulting State
User Input Resulting State (0..*) satisfies (0..*) Mental User Input Resulting State
HCIDO::Mental User Observable State
Mental User Observable State
Specializes:
HCIDO::HCI Design Proposition
SDRO::Mental Computing Resulting State
Definition:
A Mental Computing Resulting State decscribing how a Mental HCI Design Component should be presented to users (e.g., presenting a collection of products as a list or in a 3x3 grid).
Relations:
Presentational HCI Design Component (0..*) aims to present (1..*) Mental User Observable State
User Observable State (0..*) satisfies (0..*) Mental User Observable State
Mental HCI Design Choice (1..*) concerns (0..*) Mental User Observable State
HCIDO::Mockup
Mockup
Specializes:
HCIDO::HCI Design Specification
SysSwO::Document
Definition:
A HCI Design Specification that is a higher fidelity Document depicting how the interactive system should be presented to users, similar to screenshots of the system’s future screens.
Relations:
HCIDO::Presentational HCI Design Component
Presentational HCI Design Component
Specializes:
HCIDO::HCI Design Component
Definition:
A HCI Design Component that implements Mental User Observable States and aims to present information that can be perceived through users’ senses
Relations:
Presentational HCI Design Component (0..*) aims to present (1..*) Mental User Observable State
HCIDO::User Requirement
User Requirement
Specializes:
RSRO::Requirement
Definition:
A Requirement that refers to User Goals (i.e., a Requirement concerned with users' needs or capabilities that should be addressed by the system, in order to allow users to achieve their goals in an effective, efficient, safe and satisfying manner).
Source: adapted from: (ISO 9241-220:2019)
Relations:
User Requirement (0..*) motivates (0..*) Mental HCI Design Choice
User Requirement (0..*) refers to (1..*) User Goal
User Requirement Artifact (0..*) describes (1..1) User Requirement
HCI Evaluation Criteria (0..*) refers to (0..*) User Requirement
HCIDO::User Requirement Artifact
User Requirement Artifact
Specializes:
RSRO::Requirement Artifact
Definition:
Requirement Artifacts that describe User Requirements (e.g., user requirements written as user stories).
Relations:
User Requirement Artifact (0..*) describes (1..1) User Requirement
HCI Design Choice (0..*) /motivated by (0..*) User Requirement Artifact
HCIDO::Wireframe
Wireframe
Specializes:
HCIDO::HCI Design Specification
SysSwO::Document
Definition:
A HCI Design Specification that is a Document outlining the basic structure of the interactive system’s user interface (e.g., how elements are visually organized on the screen) in a low fidelity sketch, which does not address specific details such as colors and typography.