desarrollo de sistemas y aplicaciones

33
Desarrollo de Sistemas y Aplicaciones

description

explica como se desarrollan los sistemas y sus aplicaciones de manera resumida, obteniendo para el estudiante un conocimiento básico de lo que es un sistema.

Transcript of desarrollo de sistemas y aplicaciones

Page 1: desarrollo de sistemas y aplicaciones

Desarrollo de Sistemas y Aplicaciones

Page 2: desarrollo de sistemas y aplicaciones

Factores a considerar en el diseño de aplicaciones.

Page 3: desarrollo de sistemas y aplicaciones

El diseño de sistemas abarca varias actividades, que van hasta el diseño de la interfaz de usuario.

Muchos especialistas trabajan en el diseño de hardware y el diseño gráfico de páginas web.

Sin embargo, sólo las organizaciones grandes emplean diseñadores especialistas de interfaces para sus aplicaciones software.

Por tanto, los ingenieros de software a menudo deben tomar la responsabilidad de diseñar la interfaz de usuario, así como del diseño del software que implementa esa interfaz.

¿Qué factores influyen?

Page 4: desarrollo de sistemas y aplicaciones

Aunque los diseñadores y programadores de software son competentes en la tecnología de implementación de interfaces, las interfaces de usuario que desarrollan suelen ser poco atractivas e inapropiadas para sus usuarios.

Diseño de Interfaces

Page 5: desarrollo de sistemas y aplicaciones

Muchos de los «errores de usuario» son causados porque las interfaces de usuario no consideran las habilidades de los usuarios reales y su entorno de trabajo.

Diseño de Interfaces

Page 6: desarrollo de sistemas y aplicaciones

Una interfaz de usuario mal diseñada significa que los usuarios no podrán acceder a algunas características del sistema, cometerán errores y sentirán que el sistema les dificulta en vez de ayudarlos.

Cuando se toman decisiones en el diseño de las interfaces de usuario, deben tenerse en cuenta las capacidades físicas y mentales de las personas que utilizarán el software.

Diseño de Interfaces

Page 7: desarrollo de sistemas y aplicaciones

Algunos factores humanos importantes a considerar son :1. Las personas tienen una memoria limitada a corto plazo: podemos recordar instantáneamente como 7 elementos de información. Por lo tanto, si a los usuarios se les presenta demasiada información al mismo tiempo, es posible que no puedan asimilarla.

Diseño de Interfaces

Page 8: desarrollo de sistemas y aplicaciones

2. Todos cometemos errores: especialmente cuando tenemos que manejar demasiada información o estamos estresados. Cuando los sistemas fallan y emiten mensajes de aviso y alarmas, aumentan el estrés de los usuarios, incrementando la posibilidad de que cometan errores.

Diseño de Interfaces

Page 9: desarrollo de sistemas y aplicaciones

3. Poseemos un amplio rango de capacidades físicas: Unas personas ven y escuchan mejor que otras, otras son daltónicas, y otras son mejores en manipulaciones físicas. No se debe diseñar para las propias capacidades y suponer que todos los otros usuarios serán capaces de adaptarse.4. Tenemos diferentes preferencias de interacción: A algunos les gusta trabajar con imágenes, a otros con texto. La manipulación directa es natural para algunas personas, pero otras prefieren interactuar con comandos al sistema.

Diseño de Interfaces

Page 10: desarrollo de sistemas y aplicaciones

Estos factores humanos son la base para los principios de diseño.

Estos principios generales se aplican a todos los diseños de interfaces de usuario.

El principio de familiaridad del usuario sugiere que los usuarios no deben ser obligados a adaptarse a una interfaz sólo porque sea conveniente implementarla.

La interfaz debe utilizar términos familiares para los usuarios, y los objetos que el sistema manipula deben estar directamente relacionados con el entorno de trabajo del usuario.

Diseño de Interfaces

Page 11: desarrollo de sistemas y aplicaciones

Si un sistema se diseña para ser utilizado por controladores del tráfico aéreo, los objetos deben ser aviones, trayectorias de vuelo, etcétera.

Las operaciones asociadas podrían ser aumentar o reducir la velocidad del avión, ajustar la posición del avión y cambiar de altura.

La implementación subyacente de la interfaz (archivos y estructuras de datos) se debe ocultar al usuario final.

Diseño de Interfaces

Page 12: desarrollo de sistemas y aplicaciones

Los comandos con significados similares en aplicaciones diferentes se deben expresar de la misma forma.

A menudo los errores se originan cuando el mismo comando del teclado, como «Control+b», significa cosas diferentes en sistemas distintos.

Normalmente, se pueden evitar este tipo de errores si se siguen los métodos abreviados para las teclas de comandos definidos por el sistema operativo que utiliza.

Diseño de Interfaces

Page 13: desarrollo de sistemas y aplicaciones

Principios de Diseño de las Interfaces de Usuario

Page 14: desarrollo de sistemas y aplicaciones

El principio de uniformidad de la interfaz de usuario significa que los comandos y menús del sistema deben tener el mismo formato, los parámetros deben pasarse a todos los comandos de la misma forma, y la puntuación de los comandos debe ser similar.

Las interfaces uniformes reducen el tiempo de aprendizaje del usuario.

Así, el conocimiento aprendido en un comando o aplicación es aplicable en otras partes del sistema o en aplicaciones relacionadas.

Diseño de Interfaces

Page 15: desarrollo de sistemas y aplicaciones

Sin embargo, la uniformidad total no siempre es posible o deseable.

Puede ser razonable implementar el borrado de un escritorio arrastrando las entidades a un cubo de basura, pero sería incómodo borrar el texto en un procesador de textos de esta forma.

Desgraciadamente, los principios de familiaridad del usuario y uniformidad a veces son contradictorios.

Idealmente, las aplicaciones con características comunes deberían utilizar siempre los mismos comandos para acceder a estas características.

Principios de Diseño de las Interfaces de Usuario

Page 16: desarrollo de sistemas y aplicaciones

El principio de mínima sorpresa es apropiado porque las personas se irritan demasiado cuando el sistema se comporta de forma inesperada.

Cuando se usa un sistema, los usuarios construyen un modelo mental de la forma en que trabaja dicho sistema.

Si sucede algo completamente diferente, el usuario se sorprende y confunde.

Principios de Diseño de las Interfaces de Usuario

Page 17: desarrollo de sistemas y aplicaciones

El principio de recuperabilidad es importante porque los usuarios inevitablemente cometen errores cuando utilizan un sistema.

El diseño de la interfaz puede minimizar estos errores (por ejemplo, los errores de teclado se evitan si se utilizan menús).

Pero los errores nunca pueden eliminarse completamente.

Por consiguiente, se deben incluir recursos que permitan a los usuarios recuperarse de sus errores.

Éstos pueden ser de tres tipos:

Principios de Diseño de las Interfaces de Usuario

Page 18: desarrollo de sistemas y aplicaciones

1. Confirmación de acciones destructivas. Si un usuario lleva a cabo una acción potencialmente destructiva, el sistema debe pedirle que confirme que esto es realmente lo que desea antes de destruir cualquier información.

2. Proporcionar un recurso para deshacer. Restablece el sistema al estado previo antes de que ocurriera la acción. Son útiles varios niveles de este recurso, porque los usuarios no siempre reconocen inmediatamente que han cometido un error.

Recursos que facilitan el Principio de

Recuperabilidad

Page 19: desarrollo de sistemas y aplicaciones

3. Generar puntos de control. La generación de puntos de control implica grabar el estado de un sistema en intervalos periódicos y permitir que el sistema se restaure desde el último punto de control.

Así, cuando se produce un error, el usuario puede retroceder a un estado previo y empezar de nuevo.

Recursos que facilitan el Principio de

Recuperabilidad

Page 20: desarrollo de sistemas y aplicaciones

Principio de asistencia al usuario: Las interfaces deben proporcionar asistencia al usuario o ayuda.

Éstas se deben integrar en el sistema y proporcionar diferentes niveles de ayuda y asesoramiento.

Los niveles deben variar desde la información básica para iniciarse con el sistema hasta una descripción completa de las características del sistema.

Los sistemas de ayuda se deben estructurar de forma que cuando el usuario requiera ayuda no se sienta saturado con la información.

Principio de Asistencia al Usuario

Page 21: desarrollo de sistemas y aplicaciones

Debemos considerar los siguientes asuntos generales de diseño de interfaces de usuario.

Fundamentalmente, el diseñador de una interfaz de usuario se plantea dos cuestiones clave:

1. ¿Cómo debe interactuar el usuario con el sistema informático?

2. ¿Cómo se debe presentar la información del sistema informático al usuario?

Una interfaz de usuario coherente debe integrar la interacción del usuario y la presentación de la información.

Asuntos de Diseño(Ian Sommerville)

Page 22: desarrollo de sistemas y aplicaciones

La interacción del usuario significa emitir comandos y datos asociados al sistema informático.

En las primeras computadoras, la única forma de hacer esto era a través de una línea de comandos, y se utilizaba un lenguaje de propósito específico para comunicarse con la máquina.

Sin embargo, este enfoque se orientó a usuarios expertos.

Actualmente se han desarrollado varios enfoques que son más fáciles de utilizar.

Interacción del Usuario

Page 23: desarrollo de sistemas y aplicaciones

Hay 5 estilos principales de interacción:1. Manipulación directa. El usuario interactúa directamente con los objetos de la pantalla.La manipulación directa implica un dispositivo apuntador (un ratón, un lápiz óptico, un trackball o, en una pantalla táctil, un dedo) que indica el objeto a manipular y la acción, la cual especifica lo que se debe hacer con ese objeto. Por ejemplo, para borrar un archivo, se puede hacer clic en un icono que represente a ese archivo y arrastrarlo a un icono de un cubo de basura.

Estilos de Interacción del Usuario

Page 24: desarrollo de sistemas y aplicaciones

2. Selección de menús. El usuario selecciona un comando de una lista de posibilidades (un menú).

También puede seleccionar otro objeto de la pantalla por manipulación directa, y el comando actúa sobre él.

En este enfoque, para borrar un archivo, seleccionaría el icono del archivo y después el comando de borrado.

Estilos de Interacción del Usuario

Page 25: desarrollo de sistemas y aplicaciones

3. Rellenado de formularios. El usuario rellena los campos de un formulario.

Algunos campos pueden llevar menús asociados, y el formulario puede tener «botones» de acción que, cuando se presionan, hacen que se inicie alguna acción.

Normalmente no utilizará este enfoque para implementar la interfaz de operaciones como el borrado de archivos.

Hacer esto implicaría introducir el nombre del archivo en el formulario y después «presionar» un botón de borrar.

Estilos de Interacción del Usuario

Page 26: desarrollo de sistemas y aplicaciones

4. Lenguaje de comandos. El usuario emite un comando especial y los parámetros asociados para indicar al sistema qué hacer.

Para borrar un archivo, se teclearía un comando de borrado con el del archivo como parámetro.

5. Lenguaje natural. El usuario emite un comando en lenguaje natural.

Normalmente esto es un front-end para un lenguaje de comandos; el lenguaje natural se analiza y traduce a comandos del sistema.

Para borrar un archivo, se teclearía «borrar el archivo xxx».

Estilos de Interacción del Usuario

Page 27: desarrollo de sistemas y aplicaciones

Las interfaces de usuario basadas en web se fundan en HTML o XHTML (el lenguaje de descripción de páginas utilizado por las páginas web) junto con lenguajes como Java, que pueden asociar programas con los componentes de una página.

Como normalmente estas interfaces basadas en web son diseñadas por usuarios casuales, muchas usan interfaces basadas en formularios.

Se pueden construir interfaces de manipulación directa en web, pero es una tarea compleja de programación.

Interacción del Usuario

Page 28: desarrollo de sistemas y aplicaciones

Además, por los diferentes niveles de experiencia de los usuarios de la web y como provienen de culturas diferentes, es difícil establecer una interfaz de usuario para interacción directa que sea universalmente aceptada.

En interfaces basadas en formularios, el usuario proporciona toda la información requerida y después inicia la acción pulsando un botón.

Interacción del Usuario

Page 29: desarrollo de sistemas y aplicaciones

Los procesos de creación de un software consta de actividades e información asociada que requiere el desarrollador de sistemas.ESPECIFICACIÓN: la funcionalidad de la aplicación y la operabilidad son específicas a detalle.DISEÑO E IMPLEMENTACIÓN: la estructura total del software es diseñada e identificada por componentes específicos.

Factores a considerar en el diseño de aplicaciones (Ian

Sommerville).

Page 30: desarrollo de sistemas y aplicaciones

INTEGRACIÓN Y PRUEBA: desarrollo de módulos individuales que son integrados dentro de un sistema completo y probado.

OPERACIÓN Y MANTENIMIENTO: la aplicación es desarrollada para los consumidores y modificado una vez que se conocen los requerimientos y errores.

Factores a considerar en el diseño de aplicaciones (Ian

Sommerville).

Page 31: desarrollo de sistemas y aplicaciones

Tema 2

Page 32: desarrollo de sistemas y aplicaciones

Aplicación en red.

1. ¿Las soluciones de la cloud son una moda?2. Ventajas y desventajas.3. ¿Existe temor por la seguridad?

Spoon.net

Page 33: desarrollo de sistemas y aplicaciones

Office 365 (EE.UU.)

Java (EE.UU.)

SAP (Alemania)

Google drive (EE.UU.)

Onedrive (EE.UU.)

Dropbox (EE.UU.)

Ubuntu one (Reino Unido)

Google docs (EE.UU.)

Box (EE.UU.)