Resumen Del Capitulo 8 Edward R.

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

Nombre:

Edward Rafael Rodríguez Pimentel

Matricula:
20210134

Tema:
Resumen capitulo 8

Profesor:
Ever Miguel

Materia:
Introducción a la ingeniería de software

Fecha de entrega:
06/07/2024
Introducción
Propósito del Resumen

Este resumen tiene como objetivo sintetizar los conceptos clave y los temas
principales presentados en el Capítulo 8 del libro "Ingeniería de Software: Un
Enfoque Práctico" de Roger Pressman. Esta actividad busca reforzar la
comprensión de los conceptos fundamentales del diseño de software y mejorar las
habilidades de síntesis y análisis de los estudiantes.
Temas Principales del Capítulo
 Conceptos de diseño
 Diseño en el nivel de componentes
 Diseño de la interfaz de usuario
 Diseño basado en patrones
 Diseño de webapps
 Diseño de arquitectura
Sección 1: Conceptos de Diseño
Definición y Importancia del Diseño

El diseño en ingeniería de software se refiere al proceso de planificar y estructurar


los componentes de un sistema, incluyendo su arquitectura, interfaces y módulos
individuales. Es crucial porque facilita el desarrollo, mantenimiento y evolución del
software, asegurando que el sistema sea escalable, flexible y fácil de entender.
Principios de Diseño
 Cohesión: Mide la relación funcional entre los elementos de un módulo. Alta
cohesión implica una responsabilidad bien definida.

 Acoplamiento: Indica el grado de interdependencia entre módulos. Bajo


acoplamiento facilita el mantenimiento y la modificación del sistema.

 Encapsulamiento: Oculta los detalles internos de un módulo y expone solo


lo necesario, mejorando la modularidad y reduciendo la complejidad.

 Abstracción: Simplifica conceptos complejos mediante la creación de


niveles de detalle manejables.

 Separación de Responsabilidades: Divide el sistema en partes distintas


donde cada una tiene una responsabilidad específica y única.

2
Sección 2: Diseño en el Nivel de Componentes
Definición de Componentes

Los componentes son partes modulares y reutilizables del software que encapsulan
una funcionalidad específica y pueden ser desarrollados y probados de manera
independiente.
Principios y Técnicas de Diseño de Componentes
 Principios:
o Bajo Acoplamiento: Los componentes deben tener mínimas
dependencias entre ellos.

o Alta Cohesión: Los componentes deben tener una única


responsabilidad clara y bien definida.
 Técnicas:

o Diagramas de Clases: Representación visual de clases y sus


relaciones.

o Diagramas de Componentes: Representación de los componentes


del sistema y sus interacciones.

o Patrones de Diseño: Soluciones comprobadas para problemas


comunes de diseño, como el patrón de diseño Singleton o Factory.
Sección 3: Diseño de la Interfaz de Usuario
Principios de Diseño de UI
 Usabilidad: La interfaz debe ser intuitiva y fácil de usar.
 Accesibilidad: La interfaz debe ser accesible para personas con
discapacidades.

 Consistencia: La interfaz debe ser consistente en todas las partes del


sistema.

 Retroalimentación: El sistema debe proporcionar retroalimentación clara al


usuario sobre sus acciones.
Modelos de Interacción y Diseño Centrado en el Usuario
 Modelos de Interacción:
o Modelo de Consulta: Interacción basada en la consulta de
información.

3
o Modelo de Instrucción: Interacción basada en la ejecución de
comandos.

o Modelo de Manipulación Directa: Interacción a través de la


manipulación directa de objetos en la interfaz.
 Diseño Centrado en el Usuario:

o Investigación del Usuario: Comprender las necesidades y


comportamientos de los usuarios.
o Prototipos: Creación de modelos preliminares de la interfaz.

o Pruebas de Usabilidad: Evaluación de la interfaz con usuarios reales


para identificar problemas y mejoras.
Sección 4: Diseño Basado en Patrones
Patrones de Diseño y su Clasificación

 Patrones Creacionales: Enfocados en la creación de objetos, como


Singleton y Factory.

 Patrones Estructurales: Enfocados en la composición de clases u objetos,


como Adapter y Decorator.

 Patrones de Comportamiento: Enfocados en la interacción y


responsabilidad entre objetos, como Observer y Strategy.
Ejemplos y Aplicación de Patrones

 Singleton: Asegura que una clase tenga solo una instancia y proporciona un
punto de acceso global.
 Factory: Define una interfaz para crear objetos, pero permite a las subclases
alterar el tipo de objetos que se crearán.

 Observer: Define una dependencia de uno a muchos entre objetos de


manera que cuando un objeto cambia de estado, todos sus dependientes son
notificados.

 Decorator: Permite agregar responsabilidades a los objetos de forma


dinámica.
 Aplicación de Patrones:

o Identificación de Problemas: Determinar dónde un patrón puede ser


útil.

4
o Selección de Patrones Adecuados: Elegir el patrón que mejor
resuelve el problema.
o Implementación: Integrar el patrón en el diseño del sistema.
Sección 5: Diseño de Webapps
Principios y Arquitecturas Comunes
 Principios:

o Responsividad: La aplicación debe adaptarse a diferentes tamaños


de pantalla y dispositivos.

o Escalabilidad: La aplicación debe poder manejar un aumento en la


carga y usuarios.
o Rendimiento: La aplicación debe ser rápida y eficiente en el uso de
recursos.

o Seguridad: La aplicación debe proteger los datos y la privacidad de


los usuarios.
 Arquitecturas Comunes:

o Arquitectura de Tres Capas: Separación en capas de presentación,


lógica de negocio y datos.

o Arquitectura de Microservicios: Aplicaciones compuestas por


pequeños servicios independientes que se comunican entre sí.
Tecnologías y Buenas Prácticas
 Tecnologías:
o HTML: Lenguaje de marcado para estructurar contenido web.
o CSS: Lenguaje de estilos para diseñar y presentar contenido web.

o JavaScript: Lenguaje de programación para crear interactividad y


dinámicas en la web.

o Frameworks (React, Angular, Vue.js): Herramientas y bibliotecas


que facilitan el desarrollo de aplicaciones web complejas.
 Buenas Prácticas:

o Optimización de Carga: Minimización del tiempo de carga y


respuesta.

5
o Accesibilidad: Diseño que permite el acceso a todos los usuarios,
incluidas personas con discapacidades.

o Pruebas y Depuración: Evaluación y corrección de errores para


garantizar la funcionalidad y estabilidad.
Sección 6: Diseño de Arquitectura
Definición y Estilos Arquitectónicos

 Definición de Arquitectura de Software: La estructura fundamental de un


sistema, que define los componentes del sistema y sus interacciones.
 Estilos Arquitectónicos:

o Cliente-Servidor: Separación entre los proveedores de servicios


(servidores) y los consumidores de servicios (clientes).

o Orientada a Servicios (SOA): Arquitectura que organiza y utiliza


servicios distribuidos que pueden ser reutilizados.

o Basada en Eventos: Arquitectura donde los componentes interactúan


a través del intercambio de eventos.

o Microservicios: Arquitectura donde una aplicación es una colección


de servicios pequeños y autónomos que se comunican entre sí.
Modelado y Evaluación de Arquitectura

Vistas Arquitectónicas: Diferentes perspectivas para entender y comunicar la


arquitectura de un sistema (vista lógica, vista de desarrollo, vista de proceso, vista
física).
Lenguajes de Descripción de Arquitectura (ADL): Herramientas para describir la
arquitectura de un sistema.
 Evaluación de Arquitectura:
o Análisis de Rendimiento: Evaluar cómo el sistema maneja las
demandas de procesamiento.

o Escalabilidad: Evaluar la capacidad del sistema para crecer y


manejar aumentos en la carga.

o Seguridad: Evaluar la capacidad del sistema para protegerse contra


amenazas.
o Mantenibilidad: Evaluar la facilidad con la que se puede modificar y
actualizar el sistema

6
7

También podría gustarte