Introducción Sistemas
Operativos.
Como ya se ha venido estudiando en las
clases de Hardware las computadoras son un conjunto de
componentes Electrónicos, Eléctricos,
Ópticos, Mecánicos, etc. interconectados entre
sí para realizar tareas específicas, pero carentes
de inteligencia o control, por lo que una computadora sin el
software, es un montón de componentes sin
utilidad.
Con el software correcto, una computadora
puede tener en control de su hardware y podrá
hacer muchas tareas, puede almacenar, procesar y recuperar
información, encontrar errores de
ortografía , escuchar música, ver videos,
hacer diseños, hacer cálculos etc.
El software para computadoras puede
clasificarse en general en dos clases: los programas de sistema,
que controlan la operación de la computadora en sí
y los programas de aplicación, que resuelven problemas
para sus usuarios.
El programa más importante que hace
realidad la magia de las computadoras, dispositivos de
telecomunicaciones como los teléfonos inteligentes, Ipad
etc, es el sistema operativo (SO),este controla y administra
todos los recursos de hardware y proporciona la base sobre la
cual pueden escribirse los programas de aplicación y todos
los programas ofimáticos.
Desde su creación, las computadoras
digitales han utilizado un sistema de codificación en
sistema de numeración binaria, es decir con los 1 , 0.
Esto se debe a que los circuitos integrados funcionan con este
principio, es decir, hay corriente o no hay corriente.
Al inicio las computadoras eran sistemas
tan complejos que solo podían ser operados por experto, se
requería de mucho tiempo para introducir un programa y
resultaba poco provechosa la utilización de computadoras
para resolución de problemas prácticos.
Se buscaron medios más elaborados
para manipular la computadora, pero que a su vez
simplificaran la labor del operador o el usuario. Es
entonces cuando surge la idea de crear un medio para que el
usuario pueda operar la computadora con un entorno, lenguaje y
operación bien definido para hacer un verdadero uso y
explotación de esta, de esta forma surgen los sistemas
operativos.
En resumen el sistema operativo es la capa
intermedia entre el Hardware y el Usuario, es el encargado de
brindar de forma ordenada, sencilla y segura la
administración, operación, interpretación,
codificación y emisión de las órdenes a la
computadora (procesador central) para que esta realice las tareas
necesarias y específicas para completar una orden, proceso
o tarea específica.
Funciones de los
Sistemas Operativos.
1. Interpreta los comandos que permiten al
usuario comunicarse con el ordenador.
2. Coordina y manipula el hardware de la
computadora, memoria, impresoras, unidades de disco, teclado,
mouse, etc.
3. Organiza los archivos en diversos
dispositivos de almacenamiento, como discos
flexibles, discos duros, discos compactos o cintas
magnéticas.
4. Gestiona los errores de hardware y la
pérdida de datos.
5. Servir de base para la creación
del software logrando que equipos de marcas distintas
funcionen de manera análoga, salvando las
diferencias existentes entre ambos.
6. Configura el entorno para el uso del
software y los periféricos; dependiendo del tipo de
máquina que se emplea, debe establecerse en forma
lógica la disposición y características del
equipo, una microcomputadora tiene físicamente unidades de
disco, puede simular el uso de otras unidades de disco, pueden
ser virtuales utilizando parte de la memoria principal para tal
fin. En caso de estar conectado a una red, el sistema operativo
se convierte en la plataforma de trabajo de los usuarios y es
este quien controla los elementos o recursos que
comparten. De igual forma, provee de protección a la
información que almacena.
Interfaz de
Línea de Comandos (CLI).
La interfaz CLI es una interfaz entre el
sistema operativo y el usuario en la que este escribe los
comandos utilizando un lenguaje de comandos especial que son
interpretados o comprendidos por la maquina, estos sistemas
basados en comandos son por lo general programables, lo que les
otorga una flexibilidad y potencialidad que no tienen los
sistemas basados en entornos gráficos, esta interfaz
existe casi desde los comienzos de la computación,
superada en antigüedad solo por las tarjetas perforadas y
mecanismos similares, existen, para diversos programas y sistemas
operativos, para diversos hardwares y con diferente
funcionalidad.
Diagrama Sistema CLI.
Las CLI son parte fundamental de los Shells
o Emuladores de Terminal. Aparecen en todos los desktops (Gnome,
KDE, Windows) como un método para ejecutar aplicaciones
rápidamente.
Se encuentran también como interfaz
de lenguajes interpretados tales como Java, Python, Ruby o Perl,
se utilizan en aplicaciones cliente–servidor, en DBs (Postgres,
MySQL, Oracle), en clientes FTP, etc, las CLI son un elemento
fundamental de aplicaciones de ingeniería tan importantes
como Matlab y Autocad.
La contraparte de CLI es la interfaz
gráfica de usuario (GUI) que ofrece una estética
mejorada y una mayor simplificación, aunque tiene un mayor
consumo de recursos computacionales y en general, de
una reducción de la funcionalidad alcanzable. Asimismo
aparece el problema de una mayor vulnerabilidad a
los sistemas operativos por complejidad GUI.
Las CLI son usadas por muchos programadores
y administradores de sistemas como herramienta
primaria de trabajo, especialmente en sistemas operativos basados
en Unix; en entornos científicos, de ingeniería y
un subconjunto más pequeño de usuarios
domésticos avanzados, con la llegada del sistema operativo
Unix a inicios de los 70s, el uso de la línea de comandos
se convirtió en un estándar, se canonizaron las
reglas de ejecución basadas en tuberías, filtrado
de archivos utilizando comodines y todas aquellas funcionalidades
que permitían las nacientes interfaces de texto. Los
sistemas operativos que vendrían (CP/M, DOS)
adoptarían como propias aquellas cualidades.
Con la popularización del Computador Personal en
los 80s, las aplicaciones entraron a un escenario donde ya no se
tenía que compartir los recursos del sistema con otros
usuarios. Ahora cada usuario contaba con su propia
máquina, con la que interactuaba de una forma mucho
más personalizada.
Apple y luego Microsoft lanzaron
exitosamente al mercado sistemas que explotaban todos los
conceptos visuales que habían sido desarrollados por Alan
Kay y su equipo del PARC, es decir, una interfaz gráfica
para controlar al computador por medio de un ratón,
llegaba la era de las GUI. En la actualidad las GUI
permanecen como la interfaz dominante y las CLI como interfaz
secundaria, no obstante, en aquel momento el mismo Dr. Alan Kay
señalo: "es necesario desarrollar un nuevo tipo de
interfaz" para optimizar la relación entre humanos y
computadores.
Alan Curtis Kay Piera
Científico Computacional, Premio
Turing 2003.
Pionero en la programación
orientada a objetos y el diseño de sistemas de
GUI.
Cuando se trata de un programa que
interactúa con el kernel de algún sistema operativo
se le llama frecuentemente Shell, algunos ejemplos
son los diversas shell de Unix (ksh, csh, tcsh, Bourne Shell,
etc.), el histórico CP/M y el command.com de DOS, estos
dos últimos fuertemente basados en las CLI de RSTS
(Resource Sharing Time Sharing System) y RSX-11 (RSX-11 familia
de real-time operating systems principalmente PDP-11 creadas por
Digital Equipment Corporation (DEC)).
El sistema operativo Windows Vista y
versiones posteriores traen una CLI llamada Windows PowerShell,
que combina características de las tradicionales shells de
Unix con su framework orientado a objetos .NET.
Tipos de
Shell:
En UNIX hay dos tipos de Shell más
usados:
1. El Bourne shell. Si está usando
este Shell el símbolo que aparece es Carácter $
.
2. El C shell. Si está usando este
Shell el símbolo que aparece es carácter %. Sub
Categorias de Bourne Shell:
· Bourne shell ( sh)
· Korn shell ( ksh)
· Bourne Again shell (
bash)
· POSIX shell ( sh)
Sub categorías de C Shell
:
· C shell ( csh)
· TENEX/TOPS C shell (
tcsh)
El Shell origina de Unix fue escrito a
mediados de 1970 por Stephen R. Bourne en los laboratorios
AT&T Bell Labs en New Jersey.
Ejercicio:
Un ejemplo de líneas de comando en
Unix : $ find ./ -name ernesto.txt –print | more
Un ejemplo de línea de comando en
Windows: c:> dir ernesto.txt /s /p
Analice el siguiente Comando: C:>ping
yahoo.com
Haciendo ping a yahoo.com [206.190.36.45]
con 32 bytes de datos: Respuesta desde 206.190.36.45: bytes=32
tiempo=257ms TTL=44
Respuesta desde 206.190.36.45: bytes=32
tiempo=177ms TTL=44
Respuesta desde 206.190.36.45: bytes=32
tiempo=188ms TTL=44
Respuesta desde 206.190.36.45: bytes=32
tiempo=227ms TTL=44
Estadísticas de ping para
206.190.36.45:
Paquetes: enviados = 4, recibidos = 4,
perdidos = 0 (0% perdidos),
Tiempos aproximados de ida y vuelta en
milisegundos:
Mínimo = 177ms, Máximo =
257ms, Media = 212ms
C:> time
C:> date
C:> control netconnections
Analice los siguientes Comandos:
C:>pathping yahoo.com
C:>msconfig
TAREA #1
1. Concepto de Computadora.
2. Que funciones o trabajo hace una
computadora, mencione al menos 10.
3. Qué sistema de
codificación usan las computadoras.
4. Haga diagrama de bloques sistema de
cómputo.
5. Describa que es un sistema
operativo.
6. Escriba al menos 5 funciones de un
sistema operativo.
7. Dibuje diagrama de árbol de
sistemas operativos.
8. Que es CLI, explique.
9. Donde podemos encontrar CLI.
10. Por quien es usada la interfaz
CLI.
11. Que sistemas operativos usan
CLI.
12. Como se le llama frecuentemente a
CLI.
13. Como se llama el Shell de Windows y
como se invoca.
14. Cuáles son los dos Shell
más usados un Unix.
15. Cuáles son las sub
categorías del Bourne Shell.
16. Cuales sin las sub categorias de C
Shell.
17. Quien es Allan Kay y cuáles son
sus contribuciones al campo computación.
18. Que hace el comando find.
19. Que hace el comando dir.
20. Que hace el comando ping.
21. Que hace el comando time.
22. Que hace el comando date.
23. Que hace el comando control
netconnections.
24. Que hace el comando
pathping.
25. Que hace el comando
msconfig.
Interfaz
Gráfica del Usuario (GUI).
Sin lugar a dudas que uno de las
características que hicieron que las computadoras
se volvieran herramientas sencillas para ser usadas
masivamente es la interfaz GUI ya que facilito el uso y control
de los equipos a través de objetos visuales , este tipo de
visualización que permite al usuario elegir comandos,
iniciar programas , ver listas de archivos , opciones utilizando
iconos , las listas de elementos del menú y todas estas
selecciones pueden activarse a través del teclado o con el
Mouse.
A los programadores, las interfaces
gráficas de usuario ofrecen un entorno que se encarga
de la comunicación con el ordenador o
computadora.
Esto hace que el programador pueda
concentrarse en la funcionalidad, ya que no está sujeto a
los detalles de la visualización ni a la entrada a
través del Mouse o el teclado, también permite a
los programadores crear programas que realicen de la misma forma
las tareas más frecuentes, como guardar un archivo, porque
la interfaz proporciona mecanismos estándar de control
como ventanas y cuadros de diálogo, otra ventaja es que
las aplicaciones escritas para GUI son independientes de los
dispositivos.
Aunque hoy por hoy nos parece muy
fácil el uso de sistemas operativos tipo GUI, para su
desarrollo y funcionamiento se han considerados muchos de los
campos de la ciencia para poder hacerlo realidad.
En este sentido los Científicos e
ingenieros han considerado el análisis a fondo la
interacción PERSONA –COMPUTADOR, por lo que se han
incluido muchas áreas de la ciencia para poder adaptar la
tecnología al uso de la humanidad como una herramienta que
venga a satisfacer muchas necesidades desde complicados trabajos
científicos, comerciales, recreacionales , de
telecomunicaciones etc.
Interacción Persona-Ordenador
IPO.
Todavía no hay una definición
concreta para el conjunto de conceptos que forman el área
de la interacción persona-computador, en términos
generales, podríamos decir que es la disciplina que
estudia el intercambio de información mediante software
entre las personas y las computadoras. Esta se encarga del
diseño, evaluación e implementación de los
aparatos tecnológicos interactivos, estudiando el mayor
número de casos que les pueda llegar a afectar. El
objetivo es que el intercambio sea más eficiente,
minimizar errores, incrementar la satisfacción, disminuir
la frustración y en definitiva hacer más
productivas las tareas que rodean a las personas y los
computadores.
Aunque la investigación en este
campo es muy complicada, la recompensa una vez conseguido el
objetivo de búsqueda es muy gratificante, es muy
importante diseñar sistemas que sean efectivos,
eficientes, sencillos y amenos a la hora de utilizarlos, dado que
la sociedad disfrutará de estos avances. La dificultad
viene dada por una serie de restricciones y por el hecho de que
en ocasiones se tienen que hacer algunos sacrificios.
La recompensa sería: la
creación de librerías digitales donde los
estudiantes pueden encontrar manuscritos medievales virtuales de
hace centenares de años; los utensilios utilizados en el
campo de la medicina, como uno que permita a un equipo de
cirujanos conceptualizar, alojar y monitorizar una compleja
operación neurológica; los mundos virtuales para el
entretenimiento y la interacción social, servicios del
gobierno eficientes y receptivos, que podrían ir desde
renovar licencias en línea hasta el análisis de un
testigo o bien teléfonos inteligentes que saben donde
están y cuentan con la capacidad de entender ciertas
frases en un idioma. Los diseñadores crean una
interacción con mundos virtuales integrándolos con
el mundo físico.
Raíces
históricas
Los gráficos por computadora
nacieron de la utilización del CRT y de las primeras
utilizaciones del lápiz óptico, eso llevó al
desarrollo de técnicas pioneras para la interacción
persona- computador. Muchas de éstas datan de 1963,
año en que Ivan Sutherland desarrolló Sketchpad
para su tesis doctoral, la cual marcó el inicio de los
gráficos por computadora.
A partir de aquel momento se ha continuado
trabajando en este campo, creando y mejorando los algoritmos y el
hardware que permiten mostrar y manipular objetos con mucho
más realismo, todo eso, con la finalidad de
conseguir gráficos interactivos.
Algunos de los avances tecnológicos
relacionados fueron intentos de llegar a una simbiosis
hombre-máquina , con el Dynabook y Smalltalk (Alan Kay y
Adele Goldberg, 1977).
Dynabook
Alan Kay sosteniendo el prototipo del
Dynabook
El concepto de Dynabook fue creado por Alan
Kay en 1968, dos años antes del descubrimiento
del Xerox PARC. Kay pretendía hacer un ordenador
para los niños de todas las edades; eso condujo al
desarrollo del prototipo del Xerox Alto, nombrado originariamente
"el Dynabook provisional". Éste plasmaba todos los
elementos de una interfaz gráfica (GUI, Graphical User
Interface, 1972). El componente de software de esta
investigación es el Smalltalk, el cual tomó un
camino propio, diferente al del Dynabook.
Se podría describir el Dynabook como
lo que ahora se conoce como ordenador portátil o una
tableta PC, el cual tenía como objetivo acercar los
niños en el mundo digital. Los adultos también lo
podían utilizar, a pesar de estar creado para los
niños y niñas.
Kay quería que el Dynabook encarnara
las teorías de aprendizaje que Jerome Bruner y Seymour
Papert , psicólogo que trabajo con Jean Piaget, Seymourt
había inventado el lenguaje de programación Logo y
estaba proponiendo el hardware en el cual se ejecutara el
ambiente de programación . Desde finales de los noventa,
Kay ha estado trabajando en el sistema de programación
Squeak, un entorno de código abierto basado en Smalltalk,
que se podría ver como continuación lógica
del concepto Dynabook.
Smalltalk
Smalltalk es mucho más que un
lenguaje de programación. Permite realizar tareas de
computación mediante la interacción con un entorno
de objetos virtuales. Metafóricamente, se puede considerar
que un Smalltalk es un mundo virtual donde viven objetos que se
comunican entre sí, mediante el envío de
mensajes.
Un sistema Smalltalk está compuesto
por:
· Una Máquina virtual
(Virtual machine)
· Un archivo llamado "Imagen", que
contiene a todos los objetos del sistema
· Un lenguaje de programación
(también conocido como Smalltalk)
· Una enorme biblioteca de "objetos
reusables"
· Y generalmente, un entorno de
desarrollo que además puede funcionar como un sistema en
tiempo de ejecución.
Alan Kay está implicado activamente
en el proyecto One Laptop Per Child que utiliza Smalltalk,
Squeak, y los conceptos de un ordenador por aprender.
Aunque el hardware necesario para crear un
Dynabook ya existe hoy día, Alan Kay cree que
el
Dynabook no se ha inventado todavía,
porque faltan un software clave y un plan de estudios
adecuado.
A partir de aquí surgió los
cimientos de la interacción persona-computador, como
sería el caso del ratón, pantallas con mapas de
bits, computadoras personales, la metáfora de escritorio y
las ventanas y los punteros para clicar.
Además, el hecho de trabajar con
sistemas operativos desembocó en la creación de
nuevas técnicas para hacer interfaces de dispositivos de
entrada/salida, controles de tiempo, multiprocesadores y para
soportar el hecho de que se abrieran diversas pantallas o que
hubiera animaciones.
Otros objetivos
IPO.
Dado que la interacción
persona-computador estudia la comunicación entre el ser
humano y las máquinas, esto implica que la HCI
(Human–computer interaction ) involucre
conocimientos acerca de ambos: de la persona y de la
máquina. Sobre las máquinas se requiere contar
conocimiento en cuanto a sistemas operativos, técnicas
gráficas, lenguajes de programación y entornos de
desarrollo. Sobre las personas, es importante tener unos
conocimientos previos, como teoría de la
comunicación, disciplinas del diseño gráfico
e industrial, lingüística, ciencias sociales,
psicología cognitiva y función del ser
humano.
Con el fin de tener un concepto más
aproximado sobre el campo de la interacción humano-
computador contemplamos en que está
especializado:
· Unión de las tareas de los
humanos con las máquinas.
· Capacidades humanas para utilizar
las máquinas (incluyendo la capacidad de entender
las interfaces)
· Algoritmos y programas de la
interfaz en sí.
· Conceptos de ingeniería que
se plantean a la hora de diseñar y construir
interfaces.
· El proceso de
especificación, diseño, e implementación de
la interfaz.
· Sacrificios del
diseño.
En conclusión, la HCI aborda
aspectos de las ciencias humanas, así también como
de ingeniería y del diseño.
Principales componentes
Los componentes fundamentales del sistema
son: Usuario
Hay que tener en cuenta que el ser humano
tiene una capacidad limitada de procesar información; lo
cual es muy importante considerar al hacer el diseño. Nos
podemos comunicar a través de cuatro canales de
entrada/salida: visión, audición, tacto y
movimiento. La información recibida se almacena en la
memoria sensorial, la memoria a corto plazo y la memoria a largo
plazo.
Una vez recibimos la información,
ésta es procesada a través del razonamiento y
de habilidades adquiridas, como por ejemplo el hecho
de poder resolver problemas o el detectar errores. A todo este
proceso afectará al estado emocional del usuario, dado que
influye directamente sobre las capacidades de una persona.
Además, un hecho que no se puede pasar por alto es que
todos los usuarios tendrán habilidades comunes, pero
habrá otras que variarán según la
persona.
Computador
El sistema utilizado puede afectar de
diferentes formas al usuario. Los dispositivos de entrada
permiten introducir texto, como el caso del teclado del
computador, el teclado de un teléfono, el habla o bien un
escrito a mano, dibujos, selecciones por pantalla, con el
ratón por ejemplo.
Como dispositivos de salida contaríamos con
diversos tipos de pantallas, mayoritariamente aquellas que son de
mapas de bits, pantallas de gran tamaño de uso en lugares
públicos, a largo plazo se podría contar
también con papel digital.
Los sistemas de realidad virtual y de
visualización con 3D juegan un rol muy importante en el
mundo de la interactividad persona-computador. También
serán importantes los dispositivos en contacto con el
mundo físico, por ejemplo controles físicos, como
sensores de temperatura, movimiento, etc. Por otra parte
tendríamos diferentes tipos de impresoras con sus propias
características, fuentes y caracteres, también
escáneres y aparatos de reconocimiento
óptico.
Origen del proceso interactivo
Es importante que haya una buena
comunicación entre usuario y computador, por este motivo
la interfaz tiene que estar diseñada pensando en las
necesidades del usuario. Es de vital importancia este buen
entendimiento entre ambas partes dado que sino la
interacción no será posible.
Principios de diseñ
Interfaz.
Cuando evaluamos una interfaz, o
diseñamos una nueva, se tienen que tener en cuenta los
siguientes principios de diseño experimental.
· Fijar quien será el
usuario/s y la su/s tarea/s. Se tiene que establecer el
número de usuarios necesarios para llevar a cabo las
tareas y determinar cuáles serían las personas
indicadas. Una persona que nunca lo ha utilizado y no la
utilizará en el futuro, no sería un usuario
válido.
· Medidas empíricas.
Sería de gran utilidad llevar a cabo un testeo de la
interfaz con usuarios reales, en la situación en que se
utilizaría. No podemos olvidar que los resultados se
verán alterados si la situación no es real.
Habría que establecer una serie de especificaciones
cuantitativas, que serán de gran utilidad, como
podrían ser el número de usuarios necesarios para
realizar una tarea, el tiempo necesario para completarla y el
número de errores que se producen durante su
realización.
· Diseño iterativo. Una vez
determinados los usuarios, las tareas y las medidas
empíricas se vuelve a empezar: se modifica el
diseño, se testea, se analizan los resultados y se repite
de nuevo el proceso hasta obtener la interfaz deseada.
Metodologías de
diseño
Desde 1980, año en que surgió
el concepto interactividad persona-computador, han surgido
numerosas metodologías para su diseño. Éstas
se basan en el hecho de que los diseñadores tienen que
captar como se lleva a cabo la interactividad entre usuario y
sistema técnico, este proceso de diseño un hecho a
tener en cuenta es el proceso cognitivo del usuario, lo cual se
verá afectado por la memoria y la atención, de esta
manera si se hace una previsión se conseguirá un
resultado mucho más favorable, los modelos más
modernos se centran en tener un feedback, una
comunicación, entre usuarios, diseñadores e
ingenieros, así se pretende conseguir que el usuario
obtenga la experiencia que realmente quiere tener.
· Diseño centrado en el
usuario (UCD, user-centred design): Es un concepto moderno,
que se está extendiendo mucho, parte de la
idea de que el usuario es el centro del diseño, en
cualquier sistema computacional. Los usuarios, los
diseñadores y el equipo técnico trabajan unidos con
el objetivo de articular aquello que se desea, que se necesita y
conocer las limitaciones del usuario para crear un sistema
adecuado.
· Esta metodología es similar
a la del diseño participativo, la cual enfatiza la
posibilidad de que los usuarios finales contribuyan
con el diseño del sistema.
· Principios de diseño de la
interfaz de usuario: Existen siete principios que se tienen
que considerar en todo momento a la hora de
diseñar la interfaz de usuario:
Tolerancia, simplicidad, visibilidad,
factibilidad, consistencia, estructura y
retroacción.
Disciplinas
Dentro del campo de la interacción
persona-computador, se considera una serie de disciplinas tales
como:
· Informática
· Psicología (social,
organizativa…)
· Documentación
· Ciencia cognitiva
· Ergonomía
· Ingeniería
· Diseño
· Antropología
· Sociología
· Filosofía
· Lingüística
Podemos distinguir algunas
características propias del software, como son:
· Usabilidad
· Utilidad
· Accesibilidad
Todas estas referentes a la experiencia con
la interacción de un sistema
informático.
La interacción Persona Computador o
HCI (Human–computer interaction ) ha sido objeto de
diversos estudios científicos, entre ellos el tema de la
ergonomía , estas variables han venido a establecer un
conjunto de reglas o leyes que ayudan con el mejoramiento
día a día en la interacción HOMBRE
MAQUINA.
Ley de Fitts
En ergonomía, la ley de Fitts es un
modelo del movimiento humano, que predice el tiempo necesario
para moverse rápidamente desde una posición inicial
hasta una zona destino final como una función de la
distancia hasta el objetivo y el tamaño de éste. La
ley de Fitts se usa para modelar el acto de apuntar, tanto en el
mundo real, por ejemplo con una mano o dedo, como en los
ordenadores, por ejemplo con un ratón. Fue publicada por
Paul Fitts en 1954.
El modelo
Matemáticamente, la ley de Fitts ha sido
formulada de varias formas diferentes. Una forma común es
la formulación de Shannon (propuesta por Scott MacKenzie,
y llamada así por su semejanza con el teorema de Shannon)
para movimiento sobre una única
dimensión:
Donde:
· T es el tiempo medio necesario
para completar el movimiento. (Tradicionalmente, los
investigadores han usado el símbolo MT, para indicar
movement time, «tiempo del movimiento» )
· a y b son constantes
empíricas, y pueden ser determinadas aproximando los datos
medidos con una línea recta.
· D es la distancia desde el punto
inicial hasta el centro del objetivo. (Tradicionalmente,
los investigadores han usado el símbolo A
para esto, indicando la amplitud del movimiento.)
· W es la anchura (width es
inglés) del objetivo medida sobre el eje del
movimiento.
También puede entenderse W como la
tolerancia de error permitida en la posición final,
dado que el punto final del movimiento debe quedar a +/-
W/2 del centro del objetivo.
A partir de la ecuación, vemos un compromiso
velocidad-precisión relacionado con el acto de apuntar,
donde los objetivos que son más pequeños o
están más lejos necesitan más tiempo para
ser alcanzados.
Éxito y
consecuencias de la ley de Fitts.
La ley de Fitts es un modelo inusualmente
exitoso y bien estudiado. Los experimentos que reproducen los
resultados de Fitts y demuestran su aplicabilidad en situaciones
muy diferentes no son difíciles de realizar. Los datos
medidos en tales experimentos quedan a menudo sobre una
línea recta con un coeficiente de correlación de al
menos 0,95, lo que indica que el modelo es muy
preciso.
Aunque Fitts sólo publicó dos
artículos sobre su ley (Fitts 1954, Fitts y Peterson
1964), cientos de estudios posteriores relacionados con ella
aparecen en la literatura sobre interacción
persona-computador o persona-ordenador (IPO) y muy probablemente
miles de estudios en la más amplia literatura sobre
psicomotricidad.
La ley de Fitts fue aplicada por primera
vez a la IPO en 1978, quienes usaron el índice de
rendimiento (IP, index of performance) para comparar diferentes
dispositivos de entrada, quedando el ratón en primer
lugar. (Este trabajo pionero, según la biografía de
Stuart Card, (Stuart K. Card es un investigador estadounidense e
Investigador Senior en Xerox PARC. Es considerado como uno de los
pioneros de la aplicación de los factores humanos en la
interacción persona-ordenador . ) «fue un factor
crucial que llevaría a Xerox a introducir comercialmente
el ratón».
La ley de Fitts ha podido aplicarse bajo
una gran variedad de condiciones, con varios miembros diferentes
(manos, pies, miras montadas en la cabeza, ojos), dispositivos
(de entrada), entornos físicos (incluso bajo el agua) y
poblaciones (jóvenes, ancianos, personas con
discapacidades mentales y sujetos drogados). Adviértase
que las constantes a, b e IP tienen valores diferentes bajo cada
una de estas condiciones.
Desde la llegada de interfaces
gráficas de usuario (GUI), la ley de Fitts ha sido
aplicada a tareas en las que el usuario debe mover la
posición del cursor sobre un objetivo de la pantalla, como
un botón u otro widget. La ley de Fitts puede modelar las
acciones de point-and-click (señalar y pinchar) y de
drag-and-drop (arrastrar y soltar). (Adviértase que
arrastrar tiene un IP menor asociado, porque la mayor
tensión muscular hace más difícil
señalar.)
A pesar del atractivo del modelo, debe
recordarse que en su forma original y más
estricta:
· Se aplica sólo al
movimiento en una única dimensión y no al
movimiento en dos dimensiones
· Describe respuestas motoras
simples de, digamos, la mano humana, fallando al explicar
la aceleración software que suele estar implementada
para un cursor de ratón.
· Describe movimientos sin entrenamiento, y no
los que se realizan tras meses o años de práctica
(aunque algunos arguyen que la ley de Fitts modela un
comportamiento de tan bajo nivel que el entrenamiento intensivo
no supone demasiada diferencia).
Si, como suele afirmarse, la ley sigue
siendo correcta para la acción de señalar con un
ratón, algunas consideraciones para el
diseño de interfaces de usuario son:
· Los botones y otros widgets que
hayan de ser señalados en las GUI deben tener un
tamaño razonable, siendo muy difícil pinchar en los
que sean pequeños.
· Los bordes (por ejemplo la barra de
menús en Mac OS) y esquinas de la pantalla son
particularmente fáciles de alcanzar porque el puntero
queda en el borde de la misma independientemente de cuánto
más se mueva el ratón, por lo que puede
considerarse que tienen ancho infinito.
· Los menús popup pueden ser
usados más rápidamente que los pull-down, al
ahorrar desplazamiento el usuario.
· Los elementos de los menús
radiales se seleccionan más rápidamente y con una
tasa de error menor que los de los menús
lineales, por dos razones: porque todos están a la misma
corta distancia del centro del menú, y porque sus
áreas de selección con forma de cuña (que
suele extenderse hasta el borde de la pantalla) son muy
grandes.
La ley de Fitts sigue siendo uno de los
pocos modelos predictivos de IPO firmes y fiables
Algunos detalles
matemáticos
El logaritmo de la ley de Fitts se denomina
índice de dificultad (ID, del inglés index of
difficulty) para el objetivo, y tiene unidades de
bits. Puede reescribirse la ley como
siendo
Así, la unidades de b son
tiempo/bit, por ejemplo milisegundos/bit. La constante a puede
ser considerada el tiempo de reacción o el
tiempo necesario para pinchar un botón.
Los valores de a y b cambian según
las condiciones bajo las que se realiza la acción de
apuntar. Por ejemplo, tanto un ratón como un lápiz
pueden usarse para señalar, pero tienen asociados
diferentes constantes a y b.
Un índice de rendimiento (IP, index
of performance), en bits/tiempo, puede ser definido para
caracterizar cómo de rápido puede apuntarse,
independientemente de los objetivos concretos
considerados.
Hay dos convenciones para definir IP: una
es IP = 1/b (que tiene la desventaja de ignorar el efecto de a) y
la otra es IP = IDmedia/MTmedia (que tiene la desventaja de
depender de una «media» ID
arbitrariamente elegida). Cualquiera sea la definición
usada, medir el IP de diferentes dispositivos de
entrada permite comparar éstos respecto a su capacidad
para apuntar.
Ligeramente diferente de la
formulación de Shannon es la formulación original
de Fitts:
Aquí el factor de 2 no es
particularmente importante: esta forma del ID puede ser reescrita
con dicho factor incluido como cambios en las constantes a y b.
El «+1» de la forma de Shannon.
EL PRESENTE TEXTO ES SOLO UNA SELECCION DEL TRABAJO
ORIGINAL.
PARA CONSULTAR LA MONOGRAFIA COMPLETA SELECCIONAR LA OPCION
DESCARGAR DEL MENU SUPERIOR.