SlideShare una empresa de Scribd logo
Metodologías de Diseño 17/6/2008 Christian Sifaqui
1 Conceptos El diseño se puede ver en términos de 5 conceptos: Metas Restricciones Alternativas Representaciones Soluciones
1 Conceptos Ejemplo: auto Meta: medio de transporte Restricciones: tipo de motor y combustible, caminos existentes, regulaciones ambientales y de seguridad Alternativas: precursores de la solución final Representaciones: bosquejos de la carrocería, modelos a escala, etc. Soluciones: descripciones que permitirán la construcción del auto
1 Conceptos Contexto entender el proceso de desarrollo: - análisis de requerimientos - codificación y testing - integración y calidad
1 Conceptos Contexto las actividades anteriores pertenecen a un ciclo de vida: - modelo lineal: cascada - modelo incremental: espiral o iterativo
1 Conceptos Proceso ISO/IEC 12207 de 1995 - diseño arquitectónico: describe cómo se descompone el sistema y se organiza en componentes - diseño detallado: describe la conducta específica de los componentes identificados en la etapa anterior
2 Estructura y Arquitectura Arquitectura - diseño interno de un sistema de software - según IEEE Standard 1471 del 2000: “ la organización fundamental de un sistema representado en sus componentes, sus relaciones entre cada uno y el ambiente, y los principios que guían su diseño y evolución”
2.1 Estructuras arquitectónicas y vistas Una descripción arquitectónica sirve muchos propósitos ya que los involucrados tienen diferentes roles y necesidades. Las vistas son las perspectivas o facetas del diseño de software. Una vista “representa un aspecto parcial de una arquitectura de software que muestra propiedades específicas de un sistema de software” El IEEE Standard 1016 de 1998 indica que la organización general de la Descripción de Diseño de Software (SDD) se obtiene de “vistas de diseño”
2.1 Estructuras arquitectónicas y vistas Cada vista de diseño contiene un subconjunto de varios atributos que describen entidades de diseño: - descomposición: cómo se particiona el sistema en entidades de diseño - dependencia: las relaciones entre entidades y recursos del sistema
2.1 Estructuras arquitectónicas y vistas - interfaces: lo que un diseñador, programador o testeador necesitan conocer para usar las entidades de diseño - descripción detalladas: detalles internos de diseño
2.1 Estructuras arquitectónicas y vistas Una ejemplo es el “modelo de vistas 4+1” - vista lógica: describe cómo se satisfacen los requerimientos funcionales. Identifica los paquetes más importantes, subsistemas y clases - vista de implementación: describe cómo el diseño se descompone en unidades de implementación. Identifica los módulos de software más importantes como código fuente, archivos de datos, ejecutables, etc.
2.1 Estructuras arquitectónicas y vistas - vista de proceso: tiene que ver con temas como concurrencia y distribución, por ejemplo, cómo varios threads de control se organizan y distribuyen en varios programas y cómo interactúan - la vista de despliegue (deployment): muestra cómo en tiempo de ejecución se distribuyen las unidades y componentes
2.1 Estructuras arquitectónicas y vistas - vista de caso de uso: que consiste de un pequeño número de casos de uso, aglutina las otras vistas, ilustrando cómo trabajan juntas
2.1 Estructuras arquitectónicas y vistas Existen otros modelos de vistas. Pero en forma general las vistas de pueden clasificar en tres categorías, llamadas tipos de vistas: - tipo de vista módulo: estas vistas describen las unidades de implementación, por ejemplo, clases, colecciones de clases y capas
2.1 Estructuras arquitectónicas y vistas - tipo de vista componente-y-conector: estas vistas describen las unidades de ejecución, esto es, elementos que tienen presencia en tiempo de ejecución, por ejemplo, procesos, objetos, clientes, servidores y almacenamientos de datos
2.1 Estructuras arquitectónicas y vistas - tipo de vista de distribución: estas vistas describen las relaciones entre un sistema y sus ambientes de desarrollo y ejecución, esto es, el mapeo de unidades de software a elementos del ambiente, por ejemplo, hardware, sistema de archivos y equipo de desarrollo
2.2 Patrones macro/microarquitectónicos Patrón es “solución común a un problema común en un contexto dado” Los patrones pueden ser clasificados en tres categorías: - estilos arquitecturales - patrones de diseño - idiomas de codificación
Estilos arquitecturales Se define como un “conjunto de restricciones que definen un conjunto o familia de arquitecturas que los satisfagan” Un estilo arquitectural puede ser visto como un meta-modelo que provee una organización de alto nivel a un sistema de software (macroarquitectura)
Estilos arquitecturales Varios autores han identificado varios estilos arquitecturales: - estructura general: por ejemplo, capas, tuberási y filtros, blackboard - sistemas distribuidos: por ejemplo, cliente-servidores, tres capas, broker - sistemas interactivos: por ejemplo, model-view-controller, presentation-abstraction-model
Estilos arquitecturales - sistemas adaptables: por ejemplo, microkernel, reection - otros estilos: por ejemplo, batch, interpretes, control de procesos, basados en reglas
Estilos arquitecturales La elección de un estilo arquitectural particular dependen en la calidad de los atributos que deben satisfacerse. También se pueden presentar estilos heterogéneos
Patrones de diseño Los patrones de diseño se usan para describir detalles a un nivel más bajo y local (microarquitectura)
Patrones de diseño Una categoría de patrones: - patrones creacionales: tienen que ver con la creación de objetos (builder, factory, prototype, singleton) - patrones estructurales: tienen que ver con la composición de objetos (adapter, bridge, composite, decoratos, faccade, flyweight, proxy) - patrones conductuales: describe cómo interactúan los objetos (command, interpreter, iterator, mediator, memento, observer, state, strategy, template, visitor)
Patrones de diseño Otra categoría de patrones: - patrones de descomposición estructural: trata de la descomposición de subsistemas y componentes complejos en partes cooperadoras, por ejemplo, whole-part - patrones de organización de trabajo definen cómo las componentes colaboran juntas para resolver un problema complejo, por ejemplo, master-slave
Patrones de diseño - patrones de acceso de control definen defensas y control de acceso a servicios  y componentes, por ejemplo, proxy - patrones de administración manejan colecciones homogéneos de objetos, servicios y componentes en su totalidad, por ejemplo, command processor, view handler
Patrones de diseño - patrones de comunicación ayudan a organizar comunicación entre componentes, por ejemplo, forward-receiver, dispatcher-server, publisher-subscriber
3 Análisis y evaluación de calidad en diseño Calidad de software es “la totalidad de rasgos y características de un producto o servicio de software que tiene que ver con su habilidad de satisfacer necesidades explícitas o implícitas” ISO/IEC Standard 9126-1 de 2001
3.1 Atributos de calidad en diseño - Calidad en tiempo de ejecución: se observan cuando el sistema está operativo, por ejemplo, funcionalidad, usabilidad, rendimiento, confiabilidad, disponibilidad y seguridad - Calidad en tiempo de desarrollo: tienen impacto en el trabajo de los equipos de desarrollo e mantención, pero no se observan directamente en tiempo de ejecución, por ejemplo, integrabilidad, portabilidad, reusabilidad y testeabilidad
3.1 Atributos de calidad en diseño Algunas de las calidad anteriores se pueden obtener a través de seleccionar una alternativa arquitectural apropiada, por ejemplo, reusabilidad y modificabilidad, rendimiento, pero otras no, por ejemplo, funcionalidad y usabilidad. Un test informal para determinar si un atributo de calidad se puede obtener mediante una elección de alternativa arquitectural es responder la pregunta “¿Se puede mejorar el valor de ese atributo haciendo cambios estructurales?”
3.2 Medición Se pueden definir un número de medidas para obtener estimaciones cuantitativas del tamaño del diseño, estructura y calidad: - medidas orientadas a la función: la estructura del diseño, obtenida mediante descomposición funcional se representa mediante una carta de estructura de donde se pueden obtener medidas como fan-in/fanout, complejidad ciclomática, complejidad de integración
3.2 Medición - medidas orientadas a objeto: la estructura del diseño se representa por diagramas del clases, en el que las medidas se pueden calcular, por ejemplo, métodos ponderados por clase, profundidad del árbol de herencia, número de hijos, acoplamiento entre objetos, respuesta por una clase
3.3 Análisis de calidad y herramientas de evaluación A pesar que algunas medidas se pueden usar para estimar atributos de calidad, muchas son difíciles de cuantificar. Existen otras técnicas para evaluar la calidad de un diseño - revisiones de diseño de software son informales o semiformales, basadas en grupos, por ejemplo, revisiones arquitectura, revisiones e inspecciones de diseño, evaluación basada en escenarios de arquitectura, traza de requerimientos
3.3 Análisis de calidad y herramientas de evaluación - simulación y prototipado son técnicas dinámicas usadas para evaluar un diseño, por ejemplo, rendimientos basado en simulación o análisis de confiabilidad, prototipado de factibilidad

Más contenido relacionado

PDF
Conceptos basicos arquitectura de software
PPT
Diseño arquitectónico
DOC
Arquitectura del sistema
PDF
9.diseño de la arquitectura
PDF
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DOC
PPTX
Diseño arquitectonico
PDF
Arquitectura
Conceptos basicos arquitectura de software
Diseño arquitectónico
Arquitectura del sistema
9.diseño de la arquitectura
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
Diseño arquitectonico
Arquitectura

La actualidad más candente (20)

PPTX
Fundamentos del software
PPT
Arquitecturas de software
PPTX
Diseno de la arquitectura
PDF
Arquitecturas de software - Parte 2
DOCX
Arquitectura del proyecto
DOC
Tipos de arquitecturas de sistemas
PDF
Arquitectura de un sistema
ODT
Diseño de arquitectura del software
PPTX
2 1 1_diseño arquitectónico
PPT
Inv Aplicada 3
PPSX
Conceptos y principios de diseño
PPTX
Estilos arquitectónicos
PPTX
Fundamentos Básicos para el Diseño del Software - Sistemas II
PPT
Ingenieria de Software
PDF
Principios de diseño de la arquitectura del software
PPT
PPTX
Arquitectura Basada En Componentes
PDF
Diseño de Software
 
PPT
Arquitecturas
DOCX
Dierencia entre la ingeniería de software y la arquitectura de software
Fundamentos del software
Arquitecturas de software
Diseno de la arquitectura
Arquitecturas de software - Parte 2
Arquitectura del proyecto
Tipos de arquitecturas de sistemas
Arquitectura de un sistema
Diseño de arquitectura del software
2 1 1_diseño arquitectónico
Inv Aplicada 3
Conceptos y principios de diseño
Estilos arquitectónicos
Fundamentos Básicos para el Diseño del Software - Sistemas II
Ingenieria de Software
Principios de diseño de la arquitectura del software
Arquitectura Basada En Componentes
Diseño de Software
 
Arquitecturas
Dierencia entre la ingeniería de software y la arquitectura de software
Publicidad

Destacado (20)

PPTX
Diseño industrial papendieck - didimo
PDF
El dibujo de arquitectura
PPTX
Taxonomia de sistemas trabajo
PPT
Diseño De Packaging
PPT
TaxonomíA En Los Metodos De DiseñO
PPT
Proceso de Diseño en Ingeniería
PPTX
Tesis en diapositivas
PPT
Selección de procesos
PPT
Teoria de sistemas en las organizaciones
PDF
La composicion y sus elementos
PPT
diseño del producto y proceso
PPT
Proyecto de producción industrial
PDF
Ingenierie entrepreneuriat
PDF
Komi_KOUNAKOU_Villes_Internet
PDF
Elections Montmorillon Mobilisation
PDF
LA TÊTE DANS LES NUAGES OU COMMENT MATINÉE RIME AVEC MOBILITÉ
PPT
Description personnelle (Pedro)
PDF
Déjeuner Stratégie - Le cas Harricana
PPT
Tou.Tv un projet d'innovation
PDF
Queenax, l'entraînement fonctionnel par Precor
Diseño industrial papendieck - didimo
El dibujo de arquitectura
Taxonomia de sistemas trabajo
Diseño De Packaging
TaxonomíA En Los Metodos De DiseñO
Proceso de Diseño en Ingeniería
Tesis en diapositivas
Selección de procesos
Teoria de sistemas en las organizaciones
La composicion y sus elementos
diseño del producto y proceso
Proyecto de producción industrial
Ingenierie entrepreneuriat
Komi_KOUNAKOU_Villes_Internet
Elections Montmorillon Mobilisation
LA TÊTE DANS LES NUAGES OU COMMENT MATINÉE RIME AVEC MOBILITÉ
Description personnelle (Pedro)
Déjeuner Stratégie - Le cas Harricana
Tou.Tv un projet d'innovation
Queenax, l'entraînement fonctionnel par Precor
Publicidad

Similar a Clase 1 (20)

PPTX
2 1 vistas arquitectonicas
PPT
Desarrollo De Software Para Internet
PPT
Capitulo 3 arquitecturas_de_desarrollo_web
PPT
Diseño arquitectonico 1
PPTX
MODELO DE DISEÑOOOOOOOOOOOOOOOOOOOOO.pptx
PDF
Análisis y diseño de sistemas sesion 11 - modelo de analisis
PPT
Desarrollo de Software Orienta a Objetos
PDF
Análisis y diseño de sistemas de información
DOCX
Modelo 4+1
PPT
1127082.ppt
PPTX
Unidad 2 - Arquitectura.pptx
PPT
13 clase-flujo-de-analisis
DOCX
Arquitectura de software.docx
PPTX
Diseño de Software
PDF
El desarrollo de software orientado a aspectos
PPTX
Diseño Arquitectoniffdfwrasfccd dco.pptx
PDF
Tema 4: Diseño arquitectónico de software
PPTX
Patricio quiros tarea final
PDF
Clase7
2 1 vistas arquitectonicas
Desarrollo De Software Para Internet
Capitulo 3 arquitecturas_de_desarrollo_web
Diseño arquitectonico 1
MODELO DE DISEÑOOOOOOOOOOOOOOOOOOOOO.pptx
Análisis y diseño de sistemas sesion 11 - modelo de analisis
Desarrollo de Software Orienta a Objetos
Análisis y diseño de sistemas de información
Modelo 4+1
1127082.ppt
Unidad 2 - Arquitectura.pptx
13 clase-flujo-de-analisis
Arquitectura de software.docx
Diseño de Software
El desarrollo de software orientado a aspectos
Diseño Arquitectoniffdfwrasfccd dco.pptx
Tema 4: Diseño arquitectónico de software
Patricio quiros tarea final
Clase7

Más de Christian Sifaqui (20)

PPT
Charla a funcionarios BCN
PPT
Charla a alumnos de la UCINF
PPT
Presentación mesa redonda
PPT
Presentación para U. La Serena
PPT
Collecter 04
PPT
Presentación para USM
PPTX
Charla II Congreso de Bibliotecas Universitarias y Especializadas
PPT
Charla 9a Jornada de Usuarios Ex-Libris, 30 de septiembre de 2014
PPT
Charla Biblioteca Nacional, 24 de julio de 2014
PPT
Charla SEC, 19 de diciembre de 2013
PPT
Charla a Consejo para la Transparencia, 27 de noviembre de 2013
PPTX
Informática jurídica y tendencias de los sistemas de información de leyes
PPTX
Taller Acceso a la Información y Archivos, Buenos Aires, 8-9 Octubre 2013
PPTX
Conferencia Datos Abiertos Regionales, Montevideo, 2013
PPT
Gestión digital de la información, iSummit Loxa 2012
PPT
IFLA Power to the people, 16.08.2012
PPT
IFLA Semantic Web at the BCN, 15.08.2012
PPT
Encuentro open data, 12 de julio de 2012
PPT
Charla UCV, 15 de mayo de 2012
PPT
Seminario "Uso de TICs en la Enseñanza de la Historia y el Patrimonio Cultura...
Charla a funcionarios BCN
Charla a alumnos de la UCINF
Presentación mesa redonda
Presentación para U. La Serena
Collecter 04
Presentación para USM
Charla II Congreso de Bibliotecas Universitarias y Especializadas
Charla 9a Jornada de Usuarios Ex-Libris, 30 de septiembre de 2014
Charla Biblioteca Nacional, 24 de julio de 2014
Charla SEC, 19 de diciembre de 2013
Charla a Consejo para la Transparencia, 27 de noviembre de 2013
Informática jurídica y tendencias de los sistemas de información de leyes
Taller Acceso a la Información y Archivos, Buenos Aires, 8-9 Octubre 2013
Conferencia Datos Abiertos Regionales, Montevideo, 2013
Gestión digital de la información, iSummit Loxa 2012
IFLA Power to the people, 16.08.2012
IFLA Semantic Web at the BCN, 15.08.2012
Encuentro open data, 12 de julio de 2012
Charla UCV, 15 de mayo de 2012
Seminario "Uso de TICs en la Enseñanza de la Historia y el Patrimonio Cultura...

Clase 1

  • 1. Metodologías de Diseño 17/6/2008 Christian Sifaqui
  • 2. 1 Conceptos El diseño se puede ver en términos de 5 conceptos: Metas Restricciones Alternativas Representaciones Soluciones
  • 3. 1 Conceptos Ejemplo: auto Meta: medio de transporte Restricciones: tipo de motor y combustible, caminos existentes, regulaciones ambientales y de seguridad Alternativas: precursores de la solución final Representaciones: bosquejos de la carrocería, modelos a escala, etc. Soluciones: descripciones que permitirán la construcción del auto
  • 4. 1 Conceptos Contexto entender el proceso de desarrollo: - análisis de requerimientos - codificación y testing - integración y calidad
  • 5. 1 Conceptos Contexto las actividades anteriores pertenecen a un ciclo de vida: - modelo lineal: cascada - modelo incremental: espiral o iterativo
  • 6. 1 Conceptos Proceso ISO/IEC 12207 de 1995 - diseño arquitectónico: describe cómo se descompone el sistema y se organiza en componentes - diseño detallado: describe la conducta específica de los componentes identificados en la etapa anterior
  • 7. 2 Estructura y Arquitectura Arquitectura - diseño interno de un sistema de software - según IEEE Standard 1471 del 2000: “ la organización fundamental de un sistema representado en sus componentes, sus relaciones entre cada uno y el ambiente, y los principios que guían su diseño y evolución”
  • 8. 2.1 Estructuras arquitectónicas y vistas Una descripción arquitectónica sirve muchos propósitos ya que los involucrados tienen diferentes roles y necesidades. Las vistas son las perspectivas o facetas del diseño de software. Una vista “representa un aspecto parcial de una arquitectura de software que muestra propiedades específicas de un sistema de software” El IEEE Standard 1016 de 1998 indica que la organización general de la Descripción de Diseño de Software (SDD) se obtiene de “vistas de diseño”
  • 9. 2.1 Estructuras arquitectónicas y vistas Cada vista de diseño contiene un subconjunto de varios atributos que describen entidades de diseño: - descomposición: cómo se particiona el sistema en entidades de diseño - dependencia: las relaciones entre entidades y recursos del sistema
  • 10. 2.1 Estructuras arquitectónicas y vistas - interfaces: lo que un diseñador, programador o testeador necesitan conocer para usar las entidades de diseño - descripción detalladas: detalles internos de diseño
  • 11. 2.1 Estructuras arquitectónicas y vistas Una ejemplo es el “modelo de vistas 4+1” - vista lógica: describe cómo se satisfacen los requerimientos funcionales. Identifica los paquetes más importantes, subsistemas y clases - vista de implementación: describe cómo el diseño se descompone en unidades de implementación. Identifica los módulos de software más importantes como código fuente, archivos de datos, ejecutables, etc.
  • 12. 2.1 Estructuras arquitectónicas y vistas - vista de proceso: tiene que ver con temas como concurrencia y distribución, por ejemplo, cómo varios threads de control se organizan y distribuyen en varios programas y cómo interactúan - la vista de despliegue (deployment): muestra cómo en tiempo de ejecución se distribuyen las unidades y componentes
  • 13. 2.1 Estructuras arquitectónicas y vistas - vista de caso de uso: que consiste de un pequeño número de casos de uso, aglutina las otras vistas, ilustrando cómo trabajan juntas
  • 14. 2.1 Estructuras arquitectónicas y vistas Existen otros modelos de vistas. Pero en forma general las vistas de pueden clasificar en tres categorías, llamadas tipos de vistas: - tipo de vista módulo: estas vistas describen las unidades de implementación, por ejemplo, clases, colecciones de clases y capas
  • 15. 2.1 Estructuras arquitectónicas y vistas - tipo de vista componente-y-conector: estas vistas describen las unidades de ejecución, esto es, elementos que tienen presencia en tiempo de ejecución, por ejemplo, procesos, objetos, clientes, servidores y almacenamientos de datos
  • 16. 2.1 Estructuras arquitectónicas y vistas - tipo de vista de distribución: estas vistas describen las relaciones entre un sistema y sus ambientes de desarrollo y ejecución, esto es, el mapeo de unidades de software a elementos del ambiente, por ejemplo, hardware, sistema de archivos y equipo de desarrollo
  • 17. 2.2 Patrones macro/microarquitectónicos Patrón es “solución común a un problema común en un contexto dado” Los patrones pueden ser clasificados en tres categorías: - estilos arquitecturales - patrones de diseño - idiomas de codificación
  • 18. Estilos arquitecturales Se define como un “conjunto de restricciones que definen un conjunto o familia de arquitecturas que los satisfagan” Un estilo arquitectural puede ser visto como un meta-modelo que provee una organización de alto nivel a un sistema de software (macroarquitectura)
  • 19. Estilos arquitecturales Varios autores han identificado varios estilos arquitecturales: - estructura general: por ejemplo, capas, tuberási y filtros, blackboard - sistemas distribuidos: por ejemplo, cliente-servidores, tres capas, broker - sistemas interactivos: por ejemplo, model-view-controller, presentation-abstraction-model
  • 20. Estilos arquitecturales - sistemas adaptables: por ejemplo, microkernel, reection - otros estilos: por ejemplo, batch, interpretes, control de procesos, basados en reglas
  • 21. Estilos arquitecturales La elección de un estilo arquitectural particular dependen en la calidad de los atributos que deben satisfacerse. También se pueden presentar estilos heterogéneos
  • 22. Patrones de diseño Los patrones de diseño se usan para describir detalles a un nivel más bajo y local (microarquitectura)
  • 23. Patrones de diseño Una categoría de patrones: - patrones creacionales: tienen que ver con la creación de objetos (builder, factory, prototype, singleton) - patrones estructurales: tienen que ver con la composición de objetos (adapter, bridge, composite, decoratos, faccade, flyweight, proxy) - patrones conductuales: describe cómo interactúan los objetos (command, interpreter, iterator, mediator, memento, observer, state, strategy, template, visitor)
  • 24. Patrones de diseño Otra categoría de patrones: - patrones de descomposición estructural: trata de la descomposición de subsistemas y componentes complejos en partes cooperadoras, por ejemplo, whole-part - patrones de organización de trabajo definen cómo las componentes colaboran juntas para resolver un problema complejo, por ejemplo, master-slave
  • 25. Patrones de diseño - patrones de acceso de control definen defensas y control de acceso a servicios y componentes, por ejemplo, proxy - patrones de administración manejan colecciones homogéneos de objetos, servicios y componentes en su totalidad, por ejemplo, command processor, view handler
  • 26. Patrones de diseño - patrones de comunicación ayudan a organizar comunicación entre componentes, por ejemplo, forward-receiver, dispatcher-server, publisher-subscriber
  • 27. 3 Análisis y evaluación de calidad en diseño Calidad de software es “la totalidad de rasgos y características de un producto o servicio de software que tiene que ver con su habilidad de satisfacer necesidades explícitas o implícitas” ISO/IEC Standard 9126-1 de 2001
  • 28. 3.1 Atributos de calidad en diseño - Calidad en tiempo de ejecución: se observan cuando el sistema está operativo, por ejemplo, funcionalidad, usabilidad, rendimiento, confiabilidad, disponibilidad y seguridad - Calidad en tiempo de desarrollo: tienen impacto en el trabajo de los equipos de desarrollo e mantención, pero no se observan directamente en tiempo de ejecución, por ejemplo, integrabilidad, portabilidad, reusabilidad y testeabilidad
  • 29. 3.1 Atributos de calidad en diseño Algunas de las calidad anteriores se pueden obtener a través de seleccionar una alternativa arquitectural apropiada, por ejemplo, reusabilidad y modificabilidad, rendimiento, pero otras no, por ejemplo, funcionalidad y usabilidad. Un test informal para determinar si un atributo de calidad se puede obtener mediante una elección de alternativa arquitectural es responder la pregunta “¿Se puede mejorar el valor de ese atributo haciendo cambios estructurales?”
  • 30. 3.2 Medición Se pueden definir un número de medidas para obtener estimaciones cuantitativas del tamaño del diseño, estructura y calidad: - medidas orientadas a la función: la estructura del diseño, obtenida mediante descomposición funcional se representa mediante una carta de estructura de donde se pueden obtener medidas como fan-in/fanout, complejidad ciclomática, complejidad de integración
  • 31. 3.2 Medición - medidas orientadas a objeto: la estructura del diseño se representa por diagramas del clases, en el que las medidas se pueden calcular, por ejemplo, métodos ponderados por clase, profundidad del árbol de herencia, número de hijos, acoplamiento entre objetos, respuesta por una clase
  • 32. 3.3 Análisis de calidad y herramientas de evaluación A pesar que algunas medidas se pueden usar para estimar atributos de calidad, muchas son difíciles de cuantificar. Existen otras técnicas para evaluar la calidad de un diseño - revisiones de diseño de software son informales o semiformales, basadas en grupos, por ejemplo, revisiones arquitectura, revisiones e inspecciones de diseño, evaluación basada en escenarios de arquitectura, traza de requerimientos
  • 33. 3.3 Análisis de calidad y herramientas de evaluación - simulación y prototipado son técnicas dinámicas usadas para evaluar un diseño, por ejemplo, rendimientos basado en simulación o análisis de confiabilidad, prototipado de factibilidad