Lateral Think's
 
Picture
Entendemos por usabilidad  la facilidad con que las personas pueden utilizar una herramienta particular o cualquier otro objeto fabricado por humanos con el fin de alcanzar un objetivo concreto.

En informática este concepto se refiere a la complejidad que pueda tener para una persona la utilización de una herramienta en concreto, siendo más usable cuanto menos tiempo necesita para conocer y utilizar la herramienta en cocreto. Lo que llamamos un entorno "amigable" (Friendly).

Aunque durante años la tendencia de la programación ha ido dirigida a la funcionalidad de la aplicación, se ha visto que el éxito comercial de estas se basaba en la simplicidad de uso para el usuario, realizando su cometido correctamente. Así tenemos el ejemplo paradigmático de la página web Google, que en su momento tuvo que hacer competencia directa con grandes buscadores ya asentados, como Yahoo! o Altavista, convertidos ya en portales. El gran éxito de Google se debe a dos factores: la eficacia del motor de búsqueda, y la facilidad de utilización a través de una pantalla más bien espartana.

La dificultad más importante a la hora de hacer una aplicación "usable" es conocer bien cual es el "target" al que va dirigida la aplicación, puesto que el diseño de la aplicación va a ir determinada por el público a la que va dirigida la aplicación, y no por las necesidades funcionales de esta.

Este concepto se está llevanto al límite en el caso de la tecnología móvil, como son los teléfonos móviles y las tabletas (Pads), a través de las pantallas táctiles.

¿Que ventajas de usabilidad supone el uso de las pantallas táctiles? Por una parte, el uso de pantallas táctiles supone una mayor libertad para el programador, que no se ve limitado por el hardware del equipo para dar una determinada funcionalidad a un programa, ya que esta funcionalidad física puede ser simulada de forma lógica (a través del software). Por otro lado, el uso de pantallas táctiles no limita al uso de botones, sino que permite una representación abstracta de la realidad en pantalla, haciendo su uso mucho más intuitivo para el usuario, que no necesita un tiempo de adaptación para el uso del dispositivo en cuestión. Un ejemplo de esto puede suponer el famoso gesto del "pellizco" en las pantallas para ampliar fotografías, sin tener que recurrir a botones para especificar si se aumenta o disminuye dicho tamaño. Básicamente se trata de que el usuario no necesite "sacarse una ingenieria" con el manual de instrucciones.

Bibliografia y Recursos:
(Fuente: El título es lo último)
bIblIOgrAfÍA

[Usabilidad: concepto, cuestiones generales]

Bevan, N.; Kirakowski, J.; Maissel, J. “What is Usability?” En:Proceedings of the 4th International Conference on HCI, Stuttgart, September 1991.

Folmer, E.; Bosch, J. “Architechting for usability: a survey”. The Journal of Systems and Software, v. 70, n. 1-2, February 2004. pp. 61-78.


ISO 9241-11. Ergonomic Requirements for Office Work with Visual Display Terminals (VDTs) – Part 11: Guidance on Usability, 1998.


Krug, S.. No me hagas pensar: una aproximación a la usabilidad. Madrid: Pearson Educación, 2001. ISBN 84-205-3252-5

Nielsen, J. Usabilidad. Diseño de sitios web. Pearson Educacion: Madrid, 2000. ISBN 84-205-3008-5

Nielsen, J. “Weblog Usability: The Top Ten Design Mistakes” [en línea]. Jakob Nielsen’s Alertbox, October 17, 2005. [Consultado el 10 de julio de 2006] http://www.useit.com/alertbox/weblogs.html

[Usabilidad: cómo medirla, estudios de evaluación de usabilidad...]

Alva Obeso, M.E. Metodología de Medición y Evaluación de la Usabilidad en sitios web educativos. [en línea]. Tesis doctoral Universidad de Oviedo, Marzo 2005.  [Consultado el 10 de agosto de 2006]http://www.di.uniovi.es/~cueva/investigacion/tesis/Elena.pdf


González, M.P; Afra, P. y Lorés, J. “Evaluación heurística”. En: Introducción a la Interacción Persona-Ordenador. [en línea] [Consultado el 20/09/2006:] http://griho.udl.es/ipo/pdf/15-Evaluacion-Heuristica.pdf

Hassan Montero, Y.; Martín Fernández, Francisco J. “Guía de Evaluación Heurística de Sitios Web” [en línea] Nosolousabilidad.com, 30 de marzo de 203. [Consultado el 10 de julio de 2006]http://www.nosolousabilidad.com/articulos/heuristica.htm

Hassan Montero, Y.; Martín Fernández, Francisco J. “Método de test con usuarios” [en línea] Nosolousabilidad.com, 9 de diciembre de 2003. [Consultado el 10 de julio de 2006]http://www.nosolousabilidad.com/articulos/test_usuarios.htm

Hornbaek, K. “Current practice in measuring usability: Challenges to usability studies and research”. En: International Journal of Human-Computer Studies, 64, 2006. pp. 79-102.

Manchón, E. “Tipos de evaluación de sitios web” [en línea]Alzado.ord, 9 de febrero de 2003. [Consultado el 10 de julio de 2006] http://www.alzado.org/articulo.php?id_art=75

Manchón, E. “Evaluación por criterios o heurística” [en línea]. [Consultado el 15 de julio de 2006]http://www.ainda.info/evaluacion_heuristica.html

Marcos, M.C. et al. “Evaluación de la usabilidad en sistemas de información terminológicos online”. [en línea] Hipertext.net, núm. 4, 2006. [Consultado el 15 de julio de 2006]http://www.hipertext.net/web/pag268.htm

Marcos, M.C.; Cañada, J. “Cómo medir la usabilidad: técnicas y métodos para evaluar el uso de sitios web”. En: C. Rovira y Ll. Codina (Dirs.). Documentación digital. Barcelona: Sección Científica de Ciencias de la Documentación. Departamento de Ciencias Políticas y Sociales. Universidad Pompeu Fabra.[Consultado el 15 de julio de 2006]http://www.mcmarcos.com/pdf/2004_usabilidad-modd.pdf


Márquez Correa, J. Guía para la evaluación experta. [en línea][Consultado el 15 de julio de 2006]http://www.jmarquez.com/documentos/jm_checklist.pdf


Nielsen, J. “How to Conduct a Heuristic Evaluation”. [en línea] En: Nielsen, J.; Mack, R.L. (ed.) Usability Inspection Methods, New York: John Wiley & Sons, 1994. ISBN 0-471-01877-5. [Consultado el 5 de julio de 2006]http://www.useit.com/papers/heuristic/heuristic_evaluation.html

Nielsen, J. “Ten Usability Heuristics”. [en línea] En: Nielsen, J.; Mack, R.L. (ed.) Usability Inspection Methods, New York: John Wiley & Sons, 1994. ISBN 0-471-01877-5. [Consultado el 5 de julio de 2006]http://www.useit.com/papers/heuristic/heuristic_list.html

[Usabilidad y blogs]

Barrón, G. et al. “Errores de Usabilidad en Blogs” [en línea].Veaseademas.com, 3 noviembre de 2005. [Consultado: 10 julio de 2006]http://www.veaseademas.com/archivos/2005/11/errores_de_usab.html

García, J.C. “La Usabilidad de las bitácoras como factor de éxito” [en línea]. Úsalo. Usabilidad para todos, 4 de marzo de 2006. [Consultado: 14 julio de 2006] http://usalo.es/141/la-usabilidad-de-las-bitacoras-como-factor-de-exito

“Net Rage. A Study of blogs and usability” [en línea]. Catalyst Group Design, Julio 2005. [Consultado: 4 julio de 2006]http://www.catalystgroupdesign.com/cofactors/upload/Blog_usability_report.pdf

Nielsen, J. “Blog usability mistakes” [en línea]. Jakob Nielsen’s Alertbox, [Consultado: 14 julio de 2006]http://www.useit.com/alertbox/weblogs.html

blOgs y wEbs
Alzado.org. Web de César Martín, Eduardo Manchón y Luis Villa, con cientos de artículos sobre usabilidad, diseño de información, desarrollo web, diseño centrado en el ususario…

Blog de Cadius. Weblog de Cadius, comunidad de profesionales dedicados a la arquitectura de información, la usabilidad, diseño de interacción y demás disciplinas centradas en el usuario. En la web de Cadius, posibilidad de suscribirse a su lista de correo, información sobre los Cocktails mensuales y los laboratorios.

Creating Passionate Users. Blog escrito principalmente por Kathy Sierra, sobre diseño centrado en el usuario, aprendizaje y metacognición…

No Solo Usabilidad. Magazín electrónico sobre usabilidad y diseño web centrado en el usuario, editado por Yusef Hassan Montero,Francisco Jesús Martín Fernández y Dunia Hassan Montero.

UPA Usability Resources. Página de recursos sobre usaiblidad de laUsability Professionals’ Association (UPA). Definiciones de usaiblidad, casos prácticos, guías y metodologías, recursos y enlaces, eventos, conferencias… La UPA organiza el World Usability Day, que este año se celebrará el 14 de noviembre (2006).

UPA Spain. Web de la Asociación Española de Profesionales de la Usabilidad. Matienen una lista de correo a la que podemos suscribirnos para recibir mensualmente noticias sobre las actividades y eventos organizados por la Asociación. Recopilación de webs de Asociaciones y comunidades virtuales, glosarios, herramientas y webs especializadas en usabilidad.

Úsalo. Usabilidad para todos. Bitácora de Juan Carlos García Gómez y Tomás Saorín Pérez con ideas y consejos sobre Usabilidad y sus disciplinas afines: Accesibilidad, Arquitectura de la Información, Findability, HCI, Diseño, Experiencia de Usuario…

Useit.com. Website de Jackob Nielsen, uno de los “gurús” de la usabilidad. Acceso a su Alertbox, columna periódica sobre usabilidad web, y a sus publicaciones.

Usolab Weblog. Weblog de usabilidad, diseño y negocios online mantenido por Usolab, consultoría especializada en usabilidad y diseño web centrado en usuario.

 
Picture
Estoy haciendo recopilación de post antiguos de mis ex-blogs, que creo que pueden merecer la pena. Y uno de ellos es este. ¿Que criterios debo de seguir para crear índices a tablas en Oracle?. Leed atentos:
He aquí la pregunta que muchos se hacen cuando se encuentran con problemas de rendimiento en sus tablas.... ¿he de crear un índice?. Veamos en que criterios podemos basarnos.

Como norma general, para cualquier tipo de índice, debe limitarse el número de estos y crear siempre los que exclusivamente sean necesarios, es decir, el menor número posible dentro de todos los que hagan falta.

La selectividad de un índice es la relación entre el número de valores distintos de una columna indexada y el número de registros de la tabla. Si una tabla tiene 1000 registros, y una columna indexada de la tabla tiene 950 valores diferentes, la selectividad del índice es 0.95 (950/1000). La mejor selectividad es 1. Los índices únicos sobre columnas no nulas y las claves primarias siempre tienen selectividad 1.

La selectividad de un índice nos da una medida de su utilidad para evitar I/O en la ejecución de sentencias contra la tabla. Si un índice sobre una tabla de 1000 registros tiene sólo 5 valores diferentes, entonces su selectividad es muy pobre (5/1000 = 0.005). Para cada posible valor de este índice, habrá un promedio teórico de 200 filas. En este caso, podría ser más interesante realizar un full table scan en vez de acceder vía índice a esta tabla, si bien se debe comprobar con datos reales de acceso a la misma.

Si se está usando CBO, el optimizador no realizará accesos a tablas a través de índices con una selectividad muy baja.

Puede sin embargo ser conveniente usar índices con baja selectividad, si se cumplen varias condiciones.

• Las sentencias empleadas no usan variables bind o se ha implementado algún mecanismo para distinguir aquellas consultas que deben emplear el índice, como por ejemplo, uso de literales, basándose en la distribución de datos.
• El índice está analizado con histogramas.
• El valor usado en las condiciones tiene muy poca cardinalidad.
 

En la vida del desarrollo del software siempre se planetan varios problemas de difícil o, al menos, complicada solución. Por este motivo durante las últimas décadas se han estado estudiando y poniendo al dia diferentes metodologías, con la itención de resolver todos estos problemas.

  - Problema 1: Modelo de gestión del proyecto.
         El primer problema que suele surgir es como gestionar el proyecto para que este sea desarrollado con más agilidad y menor esfuerzo. Los principales problemas con los que se han enfrentado hasta ahora los analistas para gestionar los proyectos eran el cumplimiento de fechas y la adaptación a nuevos requerimientos durante el desarrollo de la aplicación, derivado del ciclo tradicional de vida del software. Por eso se desarrollaron lo que más tarde se han conocido como "metodologías ágiles de desarrollo", de las cuales han destacado Scrum  y Extrem Programing.
Desde el inicio, la que mejores resultados parece heber mostado ha sido la metodología Scrum que básicamente consite en: "un modelo de referencia que define un conjunto de prácticas y roles, y que puede tomarse como punto de partida para definir el proceso de desarrollo que se ejecutará durante un proyecto." La siguiente ficha explica perfectamente el proceso:
Picture

  -  Problema 2: Modelado del software.
         Otro de los grandes problemas es elegir una tecnología adecuada a las necesidades funcionales de la aplicación. Esto se solucionó en parte, con la popularización de las aplicaciones web, cuyos frameworks han implementado, de forma estandarizada, el modelo Vista-Controlador como parte integral del sistema, de tal manera que se permite de una manera sencilla la programación de aplicaciones complejas. Un ejemplo claro de este modelo, lo representa el modelo para java llamado "Structs".
Picture
Picture
         Para tener más información sobre los modelos del software, lo mejor es recurrir a los "Pattern Dessign", cuyo nacimiento surgión con el conocido como Gang of Fours, ya que sus autores fueron  Erich GammaRichard HelmRalph Johnson and John Vlissides. El manual se divide en dos partes, los primeros dos capítulos, que exploran las ventajes y dificultades de la programación orientada a objetos, y el resto, que describen un conjunto de patrones de diseño software. Se incluyen ejemplos en C++ y Smalltalk.

Como recomendación, visitad todos los links expuestos en el artículo, para una mayor pofundización sobre el tema.