SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Ingeniería de software
UNIDAD 4 Diseño del software
01Diseño| Diseño del sistema
El diseño puede definirse como (1) el proceso para definir la
arquitectura, los componentes, los interfaces, y otras
características de un sistema o componente, y (2) como el
resultado de este proceso.
(IEEE)
Definición
02Diseño| Diseño del sistema
El diseño se descompone en dos subprocesos:
I. Diseño de la arquitectura o de alto nivel, en el cual se
describe cómo descomponer el sistema y organizarlo en los
diferentes componentes (arquitectura de software)
II.Diseño detallado, en el que se describe el comportamiento
específico de cada uno de los componentes de software
identificados.
Subprocesos
Reflexión:
¿Por qué es importante diseñar antes de
codificar?
03Diseño | Diseño de sistemas
El proyecto
y sus
característi
cas
Arquitectura de
sistemas
0
4
La arquitectura de un sistema software es la
organización fundamental de dicho sistema
plasmada en sus componentes, las
relaciones entre éstos y con el entorno, y
los principios que guían su diseño e
implementación.
Existen diferentes técnicas:
A.Arquitectura funcional
B.Estilos arquitectónicos
C.Arquitectura de la base de datos
D.Arquitectura hardware y de red
Diseño| Diseño del sistema
05Diseño| Diseño del sistema
A. Arquitectura funcional
Basada en la descripción de las distintas funciones del
sistema. En este enfoque, el criterio de división en
subsistemas puede ser:
Vertical o funcional de usuario, donde la descomposición se
basa en agrupar funcionalidades que provienen de los
requisitos funcionales.
Transversal a las funcionalidades, incluyendo todos los
aspectos que no son específicos de ciertos grupos
funcionales.
06Diseño| Diseño del sistema
Ejemplo
Ejemplo:
En una aplicación para la enseñanza virtual, podrían
considerarse subsistemas la gestión de contenidos, la
gestión de comunicaciones con los alumnos, y el subsistema
de gestión y administración académica (vertical).
Un subsistema de seguridad (políticas de control y derechos
de acceso) o un subsistema de persistencia que agrupa
todos los servicios relacionados con el almacenamiento
(transversal).
07Diseño| Diseño del sistema
Implementan la arquitectura
funcional, haciendo referencia a cada
uno de los diferentes modelos de
representación conceptual en que se
pueden organizar los componentes
dentro de una arquitectura de
software.
Filtro – tubería
o
procesamiento
por lotes
Orientado a
objetos
Arquitectura
basada en
eventos
Control de
procesos
Procesos
distribuidos
Estilos
B. Estilos arquitectónicos
08Diseño| Diseño del sistema
Filtro – tubería o procesamiento por lotes
Basado en el flujo de datos donde
un componente transforma una
entrada en una salida que a su
vez es la entrada para otro
componente
Orientado a objetos
Se representa principalmente mediante un
diagrama de clases, que se podría definir
como un grafo cuyos nodos son objetos y los
arcos son los conectores que comunican los
objetos mediante los métodos.
09Diseño| Diseño del sistema
Arquitectura basada en eventos
•En lugar de producirse
invocaciones de métodos
explícitas, en este modelo los
componentes anuncian sus
eventos y otros registran su
interés en ser notificados cuando
se produzcan ciertos eventos.
•Ejemplo: en la interfaz de
usuario, el clic del ratón dispara
la ejecución de ciertas funciones
previamente asociadas a dicho
evento.
10Diseño| Diseño del sistema
Control de procesos
Asocia componentes de control a
la entrada o salida de un
determinado proceso para
supervisar su comportamiento y
asegurar así que el
comportamiento de dicho
componente es el esperado.
Procesos distribuidos
La funcionalidad global del sistema se divide
en diferentes procesos generalmente
distribuidos en diferentes máquinas.
Módulo 1Control
11Diseño| Diseño del sistema
Lenguajes arquitectónicos
Los lenguajes arquitectónicos
(ADL) describen arquitecturas
software mediante sus
componentes, conectores y
enlaces de comunicación.
ACME – Architecture Based
Languages and Environments
MODAF / DoDAF Architectural Model
(MAF)
SysML
UML
Pie de foto.
12Diseño| Diseño del sistema
Métodos de diseño
Métodos
estructurados
Diseño
orientado a
objetos
Métodos
orientados a
datos
Pie de foto.
13Diseño| Diseño del sistemaMétodos estructurados
Se basan en una aproximación descendente (top –
down) que aboga por descomponer el sistema
completo en niveles funcionales desde la
perspectiva global completa hasta el nivel de
detalle necesario para su implementación.
Especificación de datos
DIAGRMAS E/R
Especificación de datos
DIAGRMAS DFD
Especificación de control
DIAGRMAS TRANSICIONES DE
ESTADO
Las características más importantes de
estos métodos son la descomposición
funcional, el modelado de datos y la
representación del flujo de información.
Diccionario
de datos
Pie de foto.
14Diseño| Diseño del sistema
Técnicas para describir estas vistas en los métodos estructurados
Diagramas entidad/relación (E/R)Diagramas de flujo de datos
Pie de foto.
15Diseño| Diseño del sistema
Técnicas para describir estas vistas en los métodos estructurados
Diagramas de estructuraDiccionario de datos
CLIENTE = @DNI + NOMBRE_CLIENTE + DIRECCION +
{NUM_TFNO}
DIRECCION = [CALLE + NUM + PROV I APT_CORREOS]
@ precede a todo identificador
{ } indican iteración
+ representa composición
[ ] selección
Pie de foto.
16Diseño| Diseño del sistema
La descripción de módulos individuales
puede hacerse mediante numerosas
técnicas, como:
Tablas de transiciones o de decisión que
definen en forma matricial reglas con
acciones a realizar dadas ciertas
condiciones
Árboles de decisión
Pie de foto.
17Diseño| Diseño del sistema
La descripción de módulos individuales
puede hacerse mediante numerosas
técnicas, como:
Tablas de transiciones o de decisión que
definen en forma matricial reglas con
acciones a realizar dadas ciertas
condiciones
Árboles de decisión
18Diseño| Diseño del sistemaMétodos orientados a datos
Primero se obtiene el modelo E/R (modelo
conceptual)
Después se normaliza para obtener el diseño lógico
de la BD.
Finalmente se obtiene el modelo físico que refleja
aspectos de implementación que no se deducen del
modelo lógico de manera evidente, tales como
índices, tipos de estructuras, etc.
19Diseño| Diseño del sistemaDiseño orientado a objetos
• Un modelo captura una vista de un sistema abstrayendo y describiendo un
apropiado nivel de detalle.
• Los modelos a su vez se representan mediante diagramas, que son
representaciones gráficas de un conjunto de elementos de modelado y sus
relaciones.
• En UML (lenguaje unificado de modelado) los diagramas se clasifican en:
1. Diagramas de estructura que reflejan la estructura física (estática) del
sistema por medio de sus clases, métodos, atributos, interfaces, paquetes,
etc. y sus relaciones.
2. Diagramas de comportamiento que muestran la forma en que los distintos
elementos del sistema interaccionan, colaboran y cambian de estado
durante la ejecución del sistema para proveer la funcionalidad requerida.
20Diseño| Diseño del sistema
Diagramas de despliegue
Un diagrama de despliegue muestra la configuración de los nodos que participan en
la ejecución y de los artefactos que residen en ellos.
La mayoría de las veces, esto implica modelar la topología del hardware sobre el que
se ejecuta el sistema.
Los diagramas de despliegue contienen:
Nodos
Hay dos tipos de nodos:
1. Recursos de nodos de computación del dispositivo que tienen capacidades de
procesamiento y la capacidad de ejecutar programas (PC, portátil o teléfono
móvil).
2. Nodo de entorno de ejecución, o EEN. Un EEN es cualquier sistema
informático que reside dentro de un nodo de dispositivo (sistema operativo,
contenedor de servlets).
21Diseño| Diseño del sistema
Diagramas de despliegue
Si el nodo es parte de un paquete, su nombre puede
contener también el del paquete. Puede dividir al cubo en
comportamientos que agreguen información (como
componentes colocados en el nodo)
Otra forma de indicar los componentes
distribuidos es la de mostrarlos en
relaciones de dependencia con un nodo
22Diseño| Diseño del sistema
Diagramas de despliegue
Normalmente se utilizan los diagramas de despliegue
de una de las tres siguientes maneras:
1.Modelar sistemas embebidos
2.Modelar sistemas cliente/servidor
3.Modelar sistemas completamente distribuidos
23Diseño| Diseño del sistema
Modelar sistemas embebidos
Un sistema embebido es una colección de hardware
con gran cantidad de software que interactúa con el
mundo físico. Involucran software que controlan
dispositivos como motores, actuadores y pantallas que
están controlados por estímulos externos tales como
entradas de sensores, movimientos y cambios de
temperatura.
24Diseño| Diseño del sistema
Modelar sistemas cliente/servidor
Un sistema cliente/servidor es una arquitectura muy
extendida que se basa en hacer una clara separación
de intereses entre la interfaz de usuario del sistema
(que reside en el cliente) y los datos persistentes del
sistema (que residen en el servidor)
25Diseño| Diseño del sistema
Modelar sistemas completamente
distribuidos
Los sistemas distribuidos incluyen varios niveles de
servidores.
26Diseño| Diseño del sistema
Diagramas de componentes
Un diagrama de componentes contiene componentes, interfaces y relaciones.
27Diseño| Diseño del sistema
Diagramas de componentes
Se puede mostrar los componentes en relaciones de dependencia con un nodo
28Diseño| Diseño del sistema
Otras técnicas de diseño
Marcos de trabajo:
Un marco de trabajo es un conjunto de clases, interfaces y sus
relaciones que proporcionan un diseño reusable para un sistema
software o parte de un sistema diseñado específicamente para ser
extendido y no como aplicación final.
Ejemplos: El marco de trabajo para pruebas unitarias de JUnit, o el de
interfaces de usuario GUI donde el usuario se centra en desarrollo de la
interfaz abstrayéndose de cómo se implementan sus distintos
componentes (botones, ventanas, adornos, etc.)
29Diseño| Diseño del sistema
Evaluación y métricas en el diseño
Extensibilidad
Solidez
Fiabilidad
Tolerancia a fallos
Compatibilidad
Reusabilidad
Gracias.
©2020
Es responsabilidad exclusiva de los autores el respeto de los derechos de autor sobre los contenidos e imágenes en el presente
documento, en consecuencia, la BUAP no se hace responsable por el uso no autorizado, errores, omisiones o manipulaciones de los
derechos de autor y estos serán atribuidos directamente al Responsable de Contenidos, así como los efectos legales y éticos
correspondientes.

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (18)

Uml presentacion
Uml   presentacionUml   presentacion
Uml presentacion
 
Unidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetosUnidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetos
 
Metodologia UML
Metodologia UMLMetodologia UML
Metodologia UML
 
Diagrama componentes
Diagrama componentesDiagrama componentes
Diagrama componentes
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
 
Introducción a UML
Introducción a UMLIntroducción a UML
Introducción a UML
 
Diagramas UML (Diseño de Sistemas)
Diagramas UML (Diseño de Sistemas)Diagramas UML (Diseño de Sistemas)
Diagramas UML (Diseño de Sistemas)
 
Uml
UmlUml
Uml
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
Uml (presentación 6)
Uml (presentación 6)Uml (presentación 6)
Uml (presentación 6)
 
Presentacion power point
Presentacion power pointPresentacion power point
Presentacion power point
 
Uml
UmlUml
Uml
 
Modelo Conceptual UML
Modelo Conceptual UMLModelo Conceptual UML
Modelo Conceptual UML
 
Conceptos Basicos Uml
Conceptos Basicos UmlConceptos Basicos Uml
Conceptos Basicos Uml
 
Lenguaje de modelado unificado uml
Lenguaje de modelado unificado   umlLenguaje de modelado unificado   uml
Lenguaje de modelado unificado uml
 
Qué es uml, PARA QUE SIRVE, PASOS
Qué es uml, PARA QUE SIRVE, PASOSQué es uml, PARA QUE SIRVE, PASOS
Qué es uml, PARA QUE SIRVE, PASOS
 
Dce0 Fundamentos De Programacion
Dce0 Fundamentos De ProgramacionDce0 Fundamentos De Programacion
Dce0 Fundamentos De Programacion
 
Lenguaje Unificado de Modelado (UML)
Lenguaje Unificado de Modelado (UML)Lenguaje Unificado de Modelado (UML)
Lenguaje Unificado de Modelado (UML)
 

Ähnlich wie Unidad 4. diseno del sistema

Diseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezDiseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezGabrielGonzalez463
 
Modelado de aplicaciones en UML con EA
Modelado de aplicaciones en UML con EAModelado de aplicaciones en UML con EA
Modelado de aplicaciones en UML con EAEmmerson Miranda
 
Diseño estructurado y las técnicas que lo caracterizan
Diseño estructurado y las técnicas que lo caracterizanDiseño estructurado y las técnicas que lo caracterizan
Diseño estructurado y las técnicas que lo caracterizanJonathan Bastidas
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Softwarelcastillo110
 
Tema 4: Diseño arquitectónico de software
Tema 4: Diseño arquitectónico de softwareTema 4: Diseño arquitectónico de software
Tema 4: Diseño arquitectónico de softwareMagemyl Egana
 
Fundamentos Básicos para el Diseño del Software - Sistemas II
Fundamentos Básicos para el Diseño del Software - Sistemas IIFundamentos Básicos para el Diseño del Software - Sistemas II
Fundamentos Básicos para el Diseño del Software - Sistemas IIJimmyWilfredMassVerd
 
Unidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasUnidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasSergio Sanchez
 
Fundamentos del software
Fundamentos del softwareFundamentos del software
Fundamentos del softwaremrquaife
 
Diseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareDiseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareAndresRealp1
 
Desarrollo De Software Para Internet
Desarrollo De Software Para InternetDesarrollo De Software Para Internet
Desarrollo De Software Para Internetsamgeo
 
Arquitecturas
ArquitecturasArquitecturas
Arquitecturasenlinea70
 
ADS - Sesion2
ADS - Sesion2ADS - Sesion2
ADS - Sesion2willy0303
 
Modelamiento visual-y-uml346
Modelamiento visual-y-uml346Modelamiento visual-y-uml346
Modelamiento visual-y-uml346Mguel
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónicolandeta_p
 

Ähnlich wie Unidad 4. diseno del sistema (20)

Diseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezDiseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalez
 
Modelado de aplicaciones en UML con EA
Modelado de aplicaciones en UML con EAModelado de aplicaciones en UML con EA
Modelado de aplicaciones en UML con EA
 
Diseño estructurado y las técnicas que lo caracterizan
Diseño estructurado y las técnicas que lo caracterizanDiseño estructurado y las técnicas que lo caracterizan
Diseño estructurado y las técnicas que lo caracterizan
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Software
 
Tema 4: Diseño arquitectónico de software
Tema 4: Diseño arquitectónico de softwareTema 4: Diseño arquitectónico de software
Tema 4: Diseño arquitectónico de software
 
Fundamentos Básicos para el Diseño del Software - Sistemas II
Fundamentos Básicos para el Diseño del Software - Sistemas IIFundamentos Básicos para el Diseño del Software - Sistemas II
Fundamentos Básicos para el Diseño del Software - Sistemas II
 
Unidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasUnidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De Sistemas
 
Fundamentos del software
Fundamentos del softwareFundamentos del software
Fundamentos del software
 
9.diseño de la arquitectura
9.diseño de la arquitectura9.diseño de la arquitectura
9.diseño de la arquitectura
 
Diseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareDiseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-software
 
Desarrollo De Software Para Internet
Desarrollo De Software Para InternetDesarrollo De Software Para Internet
Desarrollo De Software Para Internet
 
Arquitecturas
ArquitecturasArquitecturas
Arquitecturas
 
Diagrama Despligue
Diagrama DespligueDiagrama Despligue
Diagrama Despligue
 
Manual de sistema
Manual de sistemaManual de sistema
Manual de sistema
 
Clase 2
Clase 2Clase 2
Clase 2
 
Modelo 4+1
Modelo 4+1Modelo 4+1
Modelo 4+1
 
ADS - Sesion2
ADS - Sesion2ADS - Sesion2
ADS - Sesion2
 
Modelamiento visual-y-uml346
Modelamiento visual-y-uml346Modelamiento visual-y-uml346
Modelamiento visual-y-uml346
 
Diseño
DiseñoDiseño
Diseño
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 

Mehr von Josefina Guerrero Garcia

Unidad 2 metodologia para el desarrollo de proyectos (3)
Unidad  2   metodologia para el desarrollo de proyectos (3)Unidad  2   metodologia para el desarrollo de proyectos (3)
Unidad 2 metodologia para el desarrollo de proyectos (3)Josefina Guerrero Garcia
 
Unidad 2 metodologia para el desarrollo de proyectos (2)
Unidad  2   metodologia para el desarrollo de proyectos (2)Unidad  2   metodologia para el desarrollo de proyectos (2)
Unidad 2 metodologia para el desarrollo de proyectos (2)Josefina Guerrero Garcia
 
Unidad 2 metodologia para el desarrollo de proyectos
Unidad  2   metodologia para el desarrollo de proyectosUnidad  2   metodologia para el desarrollo de proyectos
Unidad 2 metodologia para el desarrollo de proyectosJosefina Guerrero Garcia
 
Unidad 1 introduccion al desarrollo de proyectos (3)
Unidad 1   introduccion al desarrollo de proyectos (3)Unidad 1   introduccion al desarrollo de proyectos (3)
Unidad 1 introduccion al desarrollo de proyectos (3)Josefina Guerrero Garcia
 
Unidad 1 introduccion al desarrollo de proyectos (2)
Unidad 1   introduccion al desarrollo de proyectos (2)Unidad 1   introduccion al desarrollo de proyectos (2)
Unidad 1 introduccion al desarrollo de proyectos (2)Josefina Guerrero Garcia
 
Unidad 2 metodologia para el desarrollo de proyectos
Unidad  2   metodologia para el desarrollo de proyectosUnidad  2   metodologia para el desarrollo de proyectos
Unidad 2 metodologia para el desarrollo de proyectosJosefina Guerrero Garcia
 
Unidad 1 introduccion al desarrollo de proyectos (1)
Unidad 1   introduccion al desarrollo de proyectos (1)Unidad 1   introduccion al desarrollo de proyectos (1)
Unidad 1 introduccion al desarrollo de proyectos (1)Josefina Guerrero Garcia
 
Unidad 1 introduccion al desarrollo de proyectos (2)
Unidad 1   introduccion al desarrollo de proyectos (2)Unidad 1   introduccion al desarrollo de proyectos (2)
Unidad 1 introduccion al desarrollo de proyectos (2)Josefina Guerrero Garcia
 
Unidad 1 introduccion al desarrollo de proyectos (1)
Unidad 1   introduccion al desarrollo de proyectos (1)Unidad 1   introduccion al desarrollo de proyectos (1)
Unidad 1 introduccion al desarrollo de proyectos (1)Josefina Guerrero Garcia
 

Mehr von Josefina Guerrero Garcia (20)

Unidad 3 elaboracion de un proyecto (5)
Unidad  3   elaboracion de un proyecto (5)Unidad  3   elaboracion de un proyecto (5)
Unidad 3 elaboracion de un proyecto (5)
 
Unidad 3 elaboracion de un proyecto (4.1)
Unidad  3   elaboracion de un proyecto (4.1)Unidad  3   elaboracion de un proyecto (4.1)
Unidad 3 elaboracion de un proyecto (4.1)
 
Unidad 3 elaboracion de un proyecto (4)
Unidad  3   elaboracion de un proyecto (4)Unidad  3   elaboracion de un proyecto (4)
Unidad 3 elaboracion de un proyecto (4)
 
Unidad 3 elaboracion de un proyecto (3.1)
Unidad  3   elaboracion de un proyecto (3.1)Unidad  3   elaboracion de un proyecto (3.1)
Unidad 3 elaboracion de un proyecto (3.1)
 
Unidad 3 elaboracion de un proyecto (3)
Unidad  3   elaboracion de un proyecto (3)Unidad  3   elaboracion de un proyecto (3)
Unidad 3 elaboracion de un proyecto (3)
 
Unidad 3 elaboracion de un proyecto (2)
Unidad  3   elaboracion de un proyecto (2)Unidad  3   elaboracion de un proyecto (2)
Unidad 3 elaboracion de un proyecto (2)
 
Unidad 3 elaboracion de un proyecto (1)
Unidad  3   elaboracion de un proyecto (1)Unidad  3   elaboracion de un proyecto (1)
Unidad 3 elaboracion de un proyecto (1)
 
Unidad 2 metodologia para el desarrollo de proyectos (3)
Unidad  2   metodologia para el desarrollo de proyectos (3)Unidad  2   metodologia para el desarrollo de proyectos (3)
Unidad 2 metodologia para el desarrollo de proyectos (3)
 
Unidad 2 metodologia para el desarrollo de proyectos (2)
Unidad  2   metodologia para el desarrollo de proyectos (2)Unidad  2   metodologia para el desarrollo de proyectos (2)
Unidad 2 metodologia para el desarrollo de proyectos (2)
 
Unidad 2 metodologia para el desarrollo de proyectos
Unidad  2   metodologia para el desarrollo de proyectosUnidad  2   metodologia para el desarrollo de proyectos
Unidad 2 metodologia para el desarrollo de proyectos
 
Unidad 1 introduccion al desarrollo de proyectos (3)
Unidad 1   introduccion al desarrollo de proyectos (3)Unidad 1   introduccion al desarrollo de proyectos (3)
Unidad 1 introduccion al desarrollo de proyectos (3)
 
Unidad 1 introduccion al desarrollo de proyectos (2)
Unidad 1   introduccion al desarrollo de proyectos (2)Unidad 1   introduccion al desarrollo de proyectos (2)
Unidad 1 introduccion al desarrollo de proyectos (2)
 
Criterios Ergonómicos
Criterios ErgonómicosCriterios Ergonómicos
Criterios Ergonómicos
 
Co-Diseño y Prototipado
Co-Diseño y PrototipadoCo-Diseño y Prototipado
Co-Diseño y Prototipado
 
Unidad 2 metodologia para el desarrollo de proyectos
Unidad  2   metodologia para el desarrollo de proyectosUnidad  2   metodologia para el desarrollo de proyectos
Unidad 2 metodologia para el desarrollo de proyectos
 
Unidad 1 introduccion al desarrollo de proyectos (1)
Unidad 1   introduccion al desarrollo de proyectos (1)Unidad 1   introduccion al desarrollo de proyectos (1)
Unidad 1 introduccion al desarrollo de proyectos (1)
 
Unidad 1 introduccion al desarrollo de proyectos (2)
Unidad 1   introduccion al desarrollo de proyectos (2)Unidad 1   introduccion al desarrollo de proyectos (2)
Unidad 1 introduccion al desarrollo de proyectos (2)
 
Unidad 1 introduccion al desarrollo de proyectos (1)
Unidad 1   introduccion al desarrollo de proyectos (1)Unidad 1   introduccion al desarrollo de proyectos (1)
Unidad 1 introduccion al desarrollo de proyectos (1)
 
Introduccion al curso i d 1
Introduccion al curso i d 1Introduccion al curso i d 1
Introduccion al curso i d 1
 
Heurísticas
Heurísticas Heurísticas
Heurísticas
 

Kürzlich hochgeladen

Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfNancyLoaa
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularMooPandrea
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 

Kürzlich hochgeladen (20)

Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 

Unidad 4. diseno del sistema

  • 1.
  • 2.
  • 3. Ingeniería de software UNIDAD 4 Diseño del software
  • 4. 01Diseño| Diseño del sistema El diseño puede definirse como (1) el proceso para definir la arquitectura, los componentes, los interfaces, y otras características de un sistema o componente, y (2) como el resultado de este proceso. (IEEE) Definición
  • 5. 02Diseño| Diseño del sistema El diseño se descompone en dos subprocesos: I. Diseño de la arquitectura o de alto nivel, en el cual se describe cómo descomponer el sistema y organizarlo en los diferentes componentes (arquitectura de software) II.Diseño detallado, en el que se describe el comportamiento específico de cada uno de los componentes de software identificados. Subprocesos
  • 6. Reflexión: ¿Por qué es importante diseñar antes de codificar? 03Diseño | Diseño de sistemas
  • 7. El proyecto y sus característi cas Arquitectura de sistemas 0 4 La arquitectura de un sistema software es la organización fundamental de dicho sistema plasmada en sus componentes, las relaciones entre éstos y con el entorno, y los principios que guían su diseño e implementación. Existen diferentes técnicas: A.Arquitectura funcional B.Estilos arquitectónicos C.Arquitectura de la base de datos D.Arquitectura hardware y de red Diseño| Diseño del sistema
  • 8. 05Diseño| Diseño del sistema A. Arquitectura funcional Basada en la descripción de las distintas funciones del sistema. En este enfoque, el criterio de división en subsistemas puede ser: Vertical o funcional de usuario, donde la descomposición se basa en agrupar funcionalidades que provienen de los requisitos funcionales. Transversal a las funcionalidades, incluyendo todos los aspectos que no son específicos de ciertos grupos funcionales.
  • 9. 06Diseño| Diseño del sistema Ejemplo Ejemplo: En una aplicación para la enseñanza virtual, podrían considerarse subsistemas la gestión de contenidos, la gestión de comunicaciones con los alumnos, y el subsistema de gestión y administración académica (vertical). Un subsistema de seguridad (políticas de control y derechos de acceso) o un subsistema de persistencia que agrupa todos los servicios relacionados con el almacenamiento (transversal).
  • 10. 07Diseño| Diseño del sistema Implementan la arquitectura funcional, haciendo referencia a cada uno de los diferentes modelos de representación conceptual en que se pueden organizar los componentes dentro de una arquitectura de software. Filtro – tubería o procesamiento por lotes Orientado a objetos Arquitectura basada en eventos Control de procesos Procesos distribuidos Estilos B. Estilos arquitectónicos
  • 11. 08Diseño| Diseño del sistema Filtro – tubería o procesamiento por lotes Basado en el flujo de datos donde un componente transforma una entrada en una salida que a su vez es la entrada para otro componente Orientado a objetos Se representa principalmente mediante un diagrama de clases, que se podría definir como un grafo cuyos nodos son objetos y los arcos son los conectores que comunican los objetos mediante los métodos.
  • 12. 09Diseño| Diseño del sistema Arquitectura basada en eventos •En lugar de producirse invocaciones de métodos explícitas, en este modelo los componentes anuncian sus eventos y otros registran su interés en ser notificados cuando se produzcan ciertos eventos. •Ejemplo: en la interfaz de usuario, el clic del ratón dispara la ejecución de ciertas funciones previamente asociadas a dicho evento.
  • 13. 10Diseño| Diseño del sistema Control de procesos Asocia componentes de control a la entrada o salida de un determinado proceso para supervisar su comportamiento y asegurar así que el comportamiento de dicho componente es el esperado. Procesos distribuidos La funcionalidad global del sistema se divide en diferentes procesos generalmente distribuidos en diferentes máquinas. Módulo 1Control
  • 14. 11Diseño| Diseño del sistema Lenguajes arquitectónicos Los lenguajes arquitectónicos (ADL) describen arquitecturas software mediante sus componentes, conectores y enlaces de comunicación. ACME – Architecture Based Languages and Environments MODAF / DoDAF Architectural Model (MAF) SysML UML
  • 15. Pie de foto. 12Diseño| Diseño del sistema Métodos de diseño Métodos estructurados Diseño orientado a objetos Métodos orientados a datos
  • 16. Pie de foto. 13Diseño| Diseño del sistemaMétodos estructurados Se basan en una aproximación descendente (top – down) que aboga por descomponer el sistema completo en niveles funcionales desde la perspectiva global completa hasta el nivel de detalle necesario para su implementación. Especificación de datos DIAGRMAS E/R Especificación de datos DIAGRMAS DFD Especificación de control DIAGRMAS TRANSICIONES DE ESTADO Las características más importantes de estos métodos son la descomposición funcional, el modelado de datos y la representación del flujo de información. Diccionario de datos
  • 17. Pie de foto. 14Diseño| Diseño del sistema Técnicas para describir estas vistas en los métodos estructurados Diagramas entidad/relación (E/R)Diagramas de flujo de datos
  • 18. Pie de foto. 15Diseño| Diseño del sistema Técnicas para describir estas vistas en los métodos estructurados Diagramas de estructuraDiccionario de datos CLIENTE = @DNI + NOMBRE_CLIENTE + DIRECCION + {NUM_TFNO} DIRECCION = [CALLE + NUM + PROV I APT_CORREOS] @ precede a todo identificador { } indican iteración + representa composición [ ] selección
  • 19. Pie de foto. 16Diseño| Diseño del sistema La descripción de módulos individuales puede hacerse mediante numerosas técnicas, como: Tablas de transiciones o de decisión que definen en forma matricial reglas con acciones a realizar dadas ciertas condiciones Árboles de decisión
  • 20. Pie de foto. 17Diseño| Diseño del sistema La descripción de módulos individuales puede hacerse mediante numerosas técnicas, como: Tablas de transiciones o de decisión que definen en forma matricial reglas con acciones a realizar dadas ciertas condiciones Árboles de decisión
  • 21. 18Diseño| Diseño del sistemaMétodos orientados a datos Primero se obtiene el modelo E/R (modelo conceptual) Después se normaliza para obtener el diseño lógico de la BD. Finalmente se obtiene el modelo físico que refleja aspectos de implementación que no se deducen del modelo lógico de manera evidente, tales como índices, tipos de estructuras, etc.
  • 22. 19Diseño| Diseño del sistemaDiseño orientado a objetos • Un modelo captura una vista de un sistema abstrayendo y describiendo un apropiado nivel de detalle. • Los modelos a su vez se representan mediante diagramas, que son representaciones gráficas de un conjunto de elementos de modelado y sus relaciones. • En UML (lenguaje unificado de modelado) los diagramas se clasifican en: 1. Diagramas de estructura que reflejan la estructura física (estática) del sistema por medio de sus clases, métodos, atributos, interfaces, paquetes, etc. y sus relaciones. 2. Diagramas de comportamiento que muestran la forma en que los distintos elementos del sistema interaccionan, colaboran y cambian de estado durante la ejecución del sistema para proveer la funcionalidad requerida.
  • 23. 20Diseño| Diseño del sistema Diagramas de despliegue Un diagrama de despliegue muestra la configuración de los nodos que participan en la ejecución y de los artefactos que residen en ellos. La mayoría de las veces, esto implica modelar la topología del hardware sobre el que se ejecuta el sistema. Los diagramas de despliegue contienen: Nodos Hay dos tipos de nodos: 1. Recursos de nodos de computación del dispositivo que tienen capacidades de procesamiento y la capacidad de ejecutar programas (PC, portátil o teléfono móvil). 2. Nodo de entorno de ejecución, o EEN. Un EEN es cualquier sistema informático que reside dentro de un nodo de dispositivo (sistema operativo, contenedor de servlets).
  • 24. 21Diseño| Diseño del sistema Diagramas de despliegue Si el nodo es parte de un paquete, su nombre puede contener también el del paquete. Puede dividir al cubo en comportamientos que agreguen información (como componentes colocados en el nodo) Otra forma de indicar los componentes distribuidos es la de mostrarlos en relaciones de dependencia con un nodo
  • 25. 22Diseño| Diseño del sistema Diagramas de despliegue Normalmente se utilizan los diagramas de despliegue de una de las tres siguientes maneras: 1.Modelar sistemas embebidos 2.Modelar sistemas cliente/servidor 3.Modelar sistemas completamente distribuidos
  • 26. 23Diseño| Diseño del sistema Modelar sistemas embebidos Un sistema embebido es una colección de hardware con gran cantidad de software que interactúa con el mundo físico. Involucran software que controlan dispositivos como motores, actuadores y pantallas que están controlados por estímulos externos tales como entradas de sensores, movimientos y cambios de temperatura.
  • 27. 24Diseño| Diseño del sistema Modelar sistemas cliente/servidor Un sistema cliente/servidor es una arquitectura muy extendida que se basa en hacer una clara separación de intereses entre la interfaz de usuario del sistema (que reside en el cliente) y los datos persistentes del sistema (que residen en el servidor)
  • 28. 25Diseño| Diseño del sistema Modelar sistemas completamente distribuidos Los sistemas distribuidos incluyen varios niveles de servidores.
  • 29. 26Diseño| Diseño del sistema Diagramas de componentes Un diagrama de componentes contiene componentes, interfaces y relaciones.
  • 30. 27Diseño| Diseño del sistema Diagramas de componentes Se puede mostrar los componentes en relaciones de dependencia con un nodo
  • 31. 28Diseño| Diseño del sistema Otras técnicas de diseño Marcos de trabajo: Un marco de trabajo es un conjunto de clases, interfaces y sus relaciones que proporcionan un diseño reusable para un sistema software o parte de un sistema diseñado específicamente para ser extendido y no como aplicación final. Ejemplos: El marco de trabajo para pruebas unitarias de JUnit, o el de interfaces de usuario GUI donde el usuario se centra en desarrollo de la interfaz abstrayéndose de cómo se implementan sus distintos componentes (botones, ventanas, adornos, etc.)
  • 32. 29Diseño| Diseño del sistema Evaluación y métricas en el diseño Extensibilidad Solidez Fiabilidad Tolerancia a fallos Compatibilidad Reusabilidad
  • 33. Gracias. ©2020 Es responsabilidad exclusiva de los autores el respeto de los derechos de autor sobre los contenidos e imágenes en el presente documento, en consecuencia, la BUAP no se hace responsable por el uso no autorizado, errores, omisiones o manipulaciones de los derechos de autor y estos serán atribuidos directamente al Responsable de Contenidos, así como los efectos legales y éticos correspondientes.