La tecnología informática es una combinación de tres aspectos o conceptos centrales, a saber:
- Hardware
- Software
- Peopleware
Los términos hardware y software hablan por sí mismos y, por lo tanto, no requieren más explicación.
Peopleware, sin embargo, tiende a generar un gran signo de interrogación en la mente de la mayoría de las personas. Este término podría haberse colocado en la primera o última posición dentro de la lista anterior, ya que se refiere al papel que desempeñan las personas tanto en el desarrollo como en el uso de sistemas de hardware y software. Esto incluye una variedad de problemas o categorías, que incluyen:
- Factores organizacionales
- Gestión de proyectos
- Dinámica de grupo
- Trabajo en equipo
- Productividad del desarrollador
- La psicología de la programación
- Interacción hombre-máquina
- Diseño de interfaz humana
Peopleware se utiliza para describir el factor humano dentro de la tecnología informática; desde el desarrollo hasta la fabricación y el uso. Se refiere al efecto de las personas y las limitaciones humanas en y en relación con las máquinas, los sistemas operativos y el software, así como el funcionamiento de los mismos. Visto puramente desde la perspectiva de la comunidad de software, los aspectos cubiertos por el concepto de software personal se centran en:
- Aprendizaje organizacional
- Cultura organizacional
- Modelado de la competencia humana
- Desarrollo de individuos productivos
- Desarrollo de equipos productivos
- Gestión de personas
Aquí la atención se centra en los límites impuestos a las funciones del software por la competencia humana, o más precisamente, la falta de. La idea es crear formas en las que el hombre y la máquina se puedan combinar para lograr los resultados más efectivos y productivos, tanto a nivel individual como en equipo. Un programa de software, por ejemplo, puede probarse para determinar la facilidad de uso mediante la observación de cómo reacciona una selección de individuos con diferentes capacidades. Esto incluye, entre otros factores, la capacidad de comprender y responder a instrucciones y mensajes de error. Cuanto más fácil de usar es un programa de software, más probabilidades hay de que se integre con éxito en un entorno de trabajo.