El diseño se desarrollaba de manera adhoc y por lo
general se efectuaba a medida que se generaba HTML.
Surgio la construccion de web apps
aplicacion software de codificacion
2.1.1 ELEMENTOS Y ATRIBUTOS DE CALIDAD
"el mal software es una plaga en casi todas las
organizaciones que emplean computadoras
Si un producto las satisface, tiene calidad.
La calidad del diseño
características que los diseñadores
especifican para un producto.
El tipo de materiales, tolerancias y
especificaciones del desempeño
En el desarrollo del software
la calidad del diseño incluye el grado en el que el diseño cumple las
funciones y características especificadas en el modelo de
requerimientos
LINEAMIENTOS Y ATRIBUTOS DE LA CALIDAD DEL SOFTWARE
tres características que funcionan como guía
para evaluar un buen diseño:
• Debe implementar todos los
requerimientos explícitos
contenidos en el modelo de
requerimientos
• Debe ser una guía
legible y comprensible
para quienes generan el
código y para los que lo
prueban y dan el apoyo
posterior.
• Debe proporcionar el panorama
completo del software, y abordar los
dominios de los datos, las funciones y
el comportamiento desde el punto de
vista de la implementación.
Satisfacción del Usuario = Producto que Funciona +
Buena Calidad + Entrega dentro del Presupuesto y
Plazo.
EVALUACIÓN DE LA CALIDAD DEL DISEÑO
• La funcionalidad se califica de acuerdo
con el conjunto de características
2.1.2 NORMA ISO 9126 E ISO/IEC 12207
El estándar ISO-9126 se desarrolló con la intención de
identificar los atributos clave del software de cómputo.
Este sistema identifica seis atributos clave de la calidad:
Funcionalidad. Grado en el que el software satisface las
necesidades planteadas según las establecen los atributos
siguientes: adaptabilidad, exactitud, interoperabilidad,
cumplimiento y seguridad.
Confiabilidad. Cantidad de tiempo que el software se
encuentra disponible para su uso, según lo indican los
siguientes atributos: madurez, tolerancia a fallas y
recuperación.
Usabilidad. Grado en el que el software es fácil de usar,
según lo indican los siguientes subatributos: entendible,
aprendible y operable.
Eficiencia. Grado en el que el software emplea óptimamente los
recursos del sistema, según lo indican los subatributos siguientes:
comportamiento del tiempo y de los recursos.
Facilidad de recibir mantenimiento. Facilidad con la que
pueden efectuarse reparaciones al software, según lo
indican los atributos que siguen: analizable, cambiable,
estable, susceptible de someterse a pruebas.
Portabilidad. Facilidad con la que el software
puede llevarse de un ambiente a otro según lo
indican los siguientes atributos: adaptable,
instalable, conformidad y sustituible.
2.1.3 NORMAS INSTITUCIONALES
SEGURIDAD DEL SOFTWARE
actividad del aseguramiento del software que se
centra en la identificación y evaluación de los
peligros
se identifican los peligros y se clasifican según su riesgo
Una vez identificados estos peligros en el nivel del sistema, se utilizan técnicas de análisis para
asignar severidad y probabilidad de ocurrencia a cada uno.
Una vez identificados y analizados los peligros, pueden especificarse requerimientos relacionados
con la seguridad para el software.
Aunque la confiabilidad y la seguridad del software están muy relacionadas, es importante entender
la sutil diferencia entre ellas.
utiliza técnicas de análisis estadístico
para determinar la probabilidad de que
ocurra una falla del software.
La seguridad del software examina las formas en las que las fallas
generan condiciones que llevan a un peligro
EL PLAN DE ACS
El Plan de ACS proporciona un
mapa de ruta para instituir el
aseguramiento de la calidad del
software.
ADMINISTRACIÓN DE LA CALIDAD DEL SOFTWARE
Objetivos: El objetivo de las herramientas del ACS es
ayudar al equipo del proyecto a evaluar y mejorar la
calidad del producto del trabajo de software.
Mecánica: La mecánica de las herramientas varía. En
general, el objetivo consiste en evaluar la calidad de
un producto específico.
2.1.4 DISEÑO DE LA INTERFAZ DE LA WEBAPP
Uno de los retos del diseño de la interfaz de las webapps
es la naturaleza indeterminada del punto en el que entra
el usuario
Los objetivos de la interfaz de una webapp son los siguientes
1) establecer una ventana congruente en el contenido y las
funciones que brinda
2) guiar al usuario a través de una serie de interacciones
con la webapp
3) organizar las opciones de navegación y contenido
disponibles para el usuario.
2.1.5 Diseño de la Estética
El diseño estético, también llamado diseño gráfico, es una
actividad artística que complementa los aspectos técnicos
del diseño de las webapps.
Sin estética, una webapp tal vez sea
funcional pero no atractiva.
Con estética, una webapp lleva a sus usuarios a un mundo
que los sitúa en un nivel tanto visceral como intelectual.
Aspectos de la distribución
Toda página web tiene una cantidad limitada de "superficie" que se utiliza
para dar apoyo a la estética no funcional, características de navegación,
contenido de información y funciones dirigidas al usuario.
Aspectos del diseño gráfico
El diseño gráfico toma en cuenta cada aspecto de
la vista y sensación de la webapp. El; de diseño
gráfico comienza con la distribución y avanza
hacia la sideración de los esquemas de color
globales; tipos, tamaños y estilos del texto; uso de
J complementarios (audio, video y animación) y
todos los demás elementos estéticos de aplicación
2.1.6 Diseño del Contenido
"Los buenos diseñadores generan la regularidad a partir del caos; comunican sus ideas con claridad,
organizando y manipulando palabras e imágenes."
El diseño del contenido se centra en dos tareas diferentes del diseño, cada una de las z dirigida por
individuos que poseen habilidades distintas.
Objetos de contenido
La relación entre los objetos de contenido definidos como parte del
modelo de requerimientos para la webapp y los objetos de diseño que
representan el contenido es análoga a la relación existe entre las clases de
análisis y los componentes del diseño que se describió en capítulos
anteriores.
La información contenida dentro del objeto de contenido se etiqueta como atributos. Por ejemplo,
Fotografía (imagen de tipo .jpg) tiene los atributos dimensión horizontal, dimensión vertical y estilo
de bordes.
2.1.7 Diseño Arquitectónico
El diseño arquitectónico está ligado con las metas establecidas para una webapp, con el contenido
que se va a presentar, con los usuarios que la visitarán y con la filosofía de navegación adoptada.
Arquitectura del contenido
El diseño del contenido se centra en la definición de la estructura general de los hipermedios de la
webapp. Aunque en ocasiones se crean arquitecturas personalizadas, siempre se tiene la opción de
elegir entre cuatro distintas estructuras de contenido:
Las estructuras lineales se encuentran cuando es común en una secuencia predecible de
interacciones (con cierta variación o diferencia). Un ejemplo clásico es la presentación de tutoriales
Las estructuras de malla son una opción arquitectónica que se aplica
cuando es posible organizar el contenido de una webapp en forma categórica en dos (o más)
dimensiones.
Las estructuras jerárquicas son sin duda la arquitectura más común de las
webapps.
Una estructura de red o "telaraña pura" es similar en muchos sentidos a la
arquitectura que evoluciona a partir de sistemas orientados a objetos.
2.1.8 Diseño de la Navegación
Una vez que la arquitectura de la webapp ha sido establecida y se han identificado sus componentes
(páginas, textos, subprogramas otras funciones de procesamiento), deben definirse las rutas de
navegación que permitan a los usuarios acceder al contenido y a las funciones de la webapp.
Semántica de la navegación
Como muchas acciones del diseño de webapps, el diseño de la navegación comienza con la
consideración de la jerarquía del usuario y los casos de uso relacionados, desarrollados para cada
categoría de usuario (actor).
• Vínculo de navegación individual: incluye vínculos basados en texto, iconos, botones e
interruptores, así como metáforas gráficas. Deben elegirse vínculos que sean apropiados para el
contenido y consistentes con la heurística que conduzca al diseño de una interfaz de alta calidad.
• Barra de navegación horizontal: enlista las categorías principales de contenido o de funciones en
una barra que contiene vínculos apropiados. En general, se enlistan de cuatro a siete categorías.
• Columna de navegación vertical: 1) enlista las principales categorías de contenido o funciones o 2)
enlista virtualmente todos los principales objetos de contenido que hay dentro de la webapp.
• Pestañas: metáfora que no es más que una variación de la barra o columna de navegación y
representa categorías de contenido o funciones como pestañas que se seleccionan cuando se
requiere un vínculo.
• Mapas del sitio: dan una tabla de contenido que incluye todo el contenido a fin de navegar hacia
todos los objetos y funciones contenidas dentro de la webapp.
2.1.9 Método de Diseño de Hipermedios Orientados a Objetos
En la última década, se han propuesto varios métodos de diseño para aplicaciones web. Hasta hoy,
ninguno de ellos es el dominante. En esta sección se presenta un panorama breve de los métodos de
diseño de webapps más estudiado.
Diseño conceptual del MDHOO
El diseño conceptual del MDHOO genera una representación de los subsistemas, clases y relaciones
que definen el dominio de aplicación para la webapp
Diseño de la navegación para el MDHOO
El diseño de la navegación identifica un conjunto de "objetos" que se derivan de las clases definidas
en el diseño conceptual. Para incluir éstos, se define una serie de "clases de navegación" o "nodos".
Diseño abstracto de la interfaz y su implementación
La acción de diseño abstracto de la interfaz especifica los objetos de la interfaz que el usuario ve
cuando ocurre una interacción con la webapp. Se emplea un modelo formal de objetos de interfaz,
llamado vista de datos abstractos