domingo, 29 de marzo de 2020

Introducción al lenguaje unificado de modelado UML

Comprender que es exactamente el Lenguaje Unificado de Modelado (UML) resulta una tarea relativamente compleja si no realizamos una analogía a otras ciencias como la Ingeniería Civil, en ella se establece una serie de planos o documentos que especifican las características y demás de una obra que se va a construir. En las ciencias computacionales (Ing. de Software, Informática, etc.) se requiere artefactos similares que especifiquen las características, componentes y funcionamiento de un proyecto de software. De ahí parte una interrogante ¿Cómo estandarizar estos "planos"? Y la respuesta es un lenguaje gráfico de propósito general al que llamamos UML y que tiene como objetivos:
  • Especificar
  • Visualizar
  • Construir
  • Documentar
A todos los artefactos de un proyecto de software. Siendo independiente de la metodología de desarrollo de software a emplear. Aunque, la más empleada en conjunto es el Proceso Unificado de Desarrollo (UP o RUP).

UML incluye diversos conceptos semánticos, de notación y de principios generales que acompañan todas las fases de desarrollo. Este tiene partes estáticas, dinámicas, de entorno y organizativas. Se debe resaltar que la especificación de UML no define o pretende ser un proceso estándar, pues los métodos de desarrollo son casi únicos en cada proyecto a diferencia de lo que sucede en otras disciplinas que tienen antigüedades de hasta milenios, pero está orientado a dar apoyo a la mayoría de los procesos de desarrollo orientados a objetos existentes. Esto implica que esta íntimamente ligado a los lenguajes orientados a objetos.

UML nace al unificar tres metodologías de desarrollo orientado a objetos que son: OMT, Bootch y OOSE en una sola durante la década de los 90 que fue formalmente presentado en 1997.

Las versiones de UML fueron la 1.1, 1.5 y actualmente la 2.0 y posteriores hasta el 2015 con la versión 2.1.5

En UML existen tres áreas principales que se subdividen en vistas y estas tienen sus artefactos, llamados diagramas. Cada diagrama tiene sus propias características y sirven a determinados fines.

Área principal Vista Diagrama
Estructural Vista estática Diagrama de clases
Vista de diseño Estructura interna
Diagrama de colaboración
Diagrama de componentes
Vista de casos de uso Diagrama de casos de uso
Dinámica Vista de máquina de estado Diagrama de máquina de estados
Vista actividad Diagrama de actividad
Vista de interacción Diagrama de secuencia
Diagrama de comunicación
Física Vista de despliegue Diagrama de despliegue
Gestión del modelo Vista de gestión del proyecto Diagrama de paquetes

En conclusión, UML es un lenguaje gráfico que nos brinda un estándar en la construcción de los diversos artefactos de un sistema. Estos artefactos pueden describir los procesos del negocio, los componentes internos, la forma como interactúa con el usuario, los dispositivos, etc.


Fuentes:

  • Rumbaugh, J., Jacobson, I. y Booch, G. (2007). El lenguaje unificado de modelado: manual de referencia. (2a ed.). (Trad. Sánchez, S., San Juan, O. y García-Bermejo, R.). Madrid: Pearson Educación.
  • Alarcón, R. (2000). Diseño orientado a objetos con UML. Madrid: Grupo Eidos



miércoles, 18 de marzo de 2020

Interacción hombre-máquina y hombre-computadora

¿Qué es la interacción hombre-máquina y hombre-computadora?


La interacción hombre-máquina (IHM) es una disciplina que estudia el cómo los usuarios interactúan con las diversas tecnologías (incluyendo las computacionales) empleando principios psicológicos, sociales y de diseño.

La interacción hombre-computadora (IHC) es una disciplina relacionada con el diseño, implementación y evaluación de sistemas informáticos interactivos para uso de seres humanos.

En otras palabras la IHC estudia como los humanos interactúan con los sistemas computacionales teniendo como contribuidores a las disciplinas de: ingeniería, ergonomía, psicología y diseño gráfico principalmente.



Importancia y objetivos


Gran parte del éxito de un sistema informático está estrechamente relacionado con la facilidad y la comprensión natural del funcionamiento de este por parte del usuario. Esta facilidad se proporciona a través de las interfaces intuitivas con las que interactúa el usuario final.

Actualmente gran parte del código de un programa se dedica exclusivamente a la interfaz gráfica con la que el usuario interactúa, dependiendo del tipo de programa el porcentaje en líneas de código puede aumentar significativamente.

El objetivo de esta disciplina es desarrollar y/o mejorar la seguridad, utilidad, eficacia, eficiencia y usabilidad de sistemas que incluyan ordenadores (computadores de escritorio, portátiles, móviles, etc.).




Evolución


El desarrollo de software y hardware cada vez más sofisticado ha ido transformado la forma de trabajar, estudiar y jugar. Por ello, la IHM se ha convertido desde hace 4 décadas en una de las áreas de estudio en las ciencias de la información y administración de la tecnología en las que se desarrolla investigación y se le presta mayor atención.

Este estudio sistemático del desempeño humano comenzó en serio a principios del siglo pasado en las fábricas, con énfasis en las tareas manuales. Explícitamente en 1949 con la Segunda Guerra Mundial como antecedente que generó un impulso para estudiar la interacción entre humanos y máquinas, ya que cada bando durante este periodo se esforzó por producir armamento más efectivo, debido a esto se llevó a una ola de interés en el área entre los investigadores y a la formación de la Sociedad de Investigación de Ergonomía en 1949.

La ergonomía, una de las disciplinas en las que se apoya la IHM, pone énfasis en las características físicas de las máquinas y sistemas, y cómo afectan el rendimiento del usuario al utilizarlas. Los factores humanos (otra disciplina), incorporan estas preocupaciones y también las relacionadas a problemas cognitivos (entender el uso de la máquina o sistema).

La ergonomía y los factores humanos son disciplinas que están relacionadas con el rendimiento del usuario en el contexto de cualquier sistema, ya sea informático, mecánico o manual. A medida que el uso de la computadora se generalizó, un número cada vez mayor de investigadores se especializó en estudiar la interacción entre las personas y las computadoras, con respecto a los aspectos físicos, psicológicos y teóricos de este proceso. Este proceso de investigación se denominó originalmente como interacción hombre-máquina, pero el término se convirtió en interacción hombre-computadora en reconocimiento del interés particular en las computadoras y la composición de la población de usuarios.



Fuentes:


  • Dix, A., Finlay, J., Abowd, G. y Beale, R. (2004). Human–Computer Interaction (3a ed.). England: Pearson Education.



Ejercicio con PseInt usando funciones

Las funciones dentro de PseInt se pueden crear mediante la palabra reservada SubProceso, SubAlgortimo o Función. Esto dependerá del estilo d...