SlideShare una empresa de Scribd logo
1 de 13
1.El diseño como etapa del proceso de producción de software
2.Diseño vs. modelo funcional
3.Diseño basado en ocultación de información
4.Diseño basado en tipos abstractos de datos
5.Diseño orientado a objetos
6.Documentación de un diseño
U N I D A D I
D I S E Ñ O D E S O F T W A R E
1. Dos diseños distintos, ¿cuál es el mejor?
2. Diseño basado en ocultación de la información (DBOI)
3. Diseño del software de control de una estación de peaje
4. Superioridad y limitaciones del DBOI
5. Diseño basado en tipos abstractos de datos (DTAD)
6. Diseño orientado a objetos (DOO)
7. Algunos tópicos complementarios
8. Incidencia de los lenguajes de programación en un diseño
9. Límites del DOO
10. Documentación de diseño
U N I D A D I
D I S E Ñ O D E S O F T W A R E
D I S E Ñ O D E S O F T W A R E
1 - D O S D I S E Ñ O S D I S T I N T O S , ¿ C U Á L E S E L M E J O R ?
ACONTINUACIÓN PRESENTAREMOS DOS
DISEÑOS DISTINTOS PARA EL MISMO
PROBLEMA Y ANALIZAREMOS
cuál de ellos es el mejor.
CONSIDEREMOS UN PROBLEMA CAJAS DE
AHORRO , AL CUAL
le adicionamos el siguiente requisito:
SE DEBE REGISTRAR EN UNA BITÁCORA CADA
DEPÓSITO MAYOR O IGUAL A $1.000.000.
RECORDEMOS QUE
DISEÑAR UN SISTEMA
DE SOFTWARE
CONSISTE EN:
1. DESCOMPONER EL SISTEMA EN
ELEMENTOS DE SOFTWARE
2. ASIGNAR UNA FUNCIONALIDAD
A CADA ELEMENTO
3. ESTABLECER LA RELACIONES
ENTRE ESOS ELEMENTOS
A C L A R A C I O N
CON EL FIN DE SIMPLIFICAR LA PRESENTACIÓN, DESCRIBIREMOS LOS DISEÑOS
EN TÉRMINOS DE CONCEPTOS DE PROGRAMACIÓN ORIENTADA A OBJETOS Y
SOLO NOS ENFOCAREMOS EN UNA PARTE DEL SISTEMA O LOS
REQUERIMIENTOS.
AUN ASÍ, DEBE QUEDAR MUY CLARO QUE UN DISEÑO NO SE DEBE DAR EN
TÉRMINOS DE UNA TECNOLOGÍA DE IMPLEMENTACIÓN PARTICULAR. LO
HACEMOS ASÍ PORQUE AUN NO HEMOS INTRODUCIDO LOS CONCEPTOS Y
NOTACIÓN ESPECÍFICOS DEL DISEÑO DE SOFTWARE.
ANALISIS
¿
C
U
Á
L
D
E
L
O
S
D
O
S
D
I
S
E
Ñ
O
S
E
S
E
L
M
E
J
O
R
?
¿
C
U
Á
L
E
S
E
L
C
R
I
T
E
R
I
O
P
A
R
A
D
E
T
E
R
M
I
N
A
R
E
L
M
E
J
O
R
D
I
S
E
Ñ
O
?
P
R
O
B
L
E
M
A
S
•
•
J U N T O S P O D E M O S
L O G R A R M Á S
PRIMER DISEÑO
•
•
•
SEGUNDO DISEÑO
La descomposición del segundo diseño consiste de dos clases: CajaAhorros y RegistroDep-
Grandes.
La interfaz de CajaAhorros es la siguiente:
• depositar(Dinero m): suma la cantidad m al saldo actual de la cuenta.
• extraer(Dinero m): resta la cantidad m al saldo actual de la cuenta si este es mayor o igual a m.
• Dinero saldo(): retorna el saldo actual de la caja de ahorros.
La interfaz de RegistroDepGrandes es la siguiente:
• El constructor de la clase recibe un parámetro de tipo CajaAhorros que guarda en una variable de estado (o variable miembro) que
llamaremos ca.
• depositar(Dinero m): si m es mayor o igual a $1.000.000 registra los datos del depósito (e.g. número de caja de ahorros, fecha, hora, etc.)
en un archivo de texto, y luego invoca ca.depositar(m); caso contrario invoca directamente ca.depositar(m).
• extraer(Dinero m): invoca ca.extraer(m).
• Dinero saldo(): invoca ca.saldo().
Notar que ambas clases tienen la misma interfaz.
La relación entre ambas clases se establece por composición de objetos . Es decir, se declara un objeto de tipo CajaAhorros y uno de tipo
RegistroDepGrandes, luego el primero se pasa como parámetro del constructor del segundo.
En términos de código se da lo siguiente (Asumimos que el constructor de una clase tiene el mismo nombre que la clase.):
CajaAhorros c;
RegistroDepGrandes r.RegistroDepGrandes(c);
De allí en más el sistema trabaja sobre r.
Por ejemplo si queremos depositar 1.000 pesos en c hacemos r.depositar(1000).
En consecuencia cuando se efectúa un depósito, r controla si el monto es mayor o igual a 1.000.000 en cuyo caso deja el registro
correspondiente pero también hace el depósito sobre c, como lo indica la función de RegistroDepGrandes.depositar().
¿Cuál de los dos diseños es el mejor? ¿Cuál es el criterio para determinar el mejor
diseño?
A N A L I S I S
El criterio es el principio de Diseño para el Cambio.
El mejor diseño es aquel que permite la implementación de cambios (modificaciones)
de manera tal que:
• Cada cambio se efectúe al menor costo posible
• La introducción de cada cambio no degrade la integridad conceptual del sistema
Entonces, para determinar cuál de los dos diseños es el mejor veremos qué costo
tendría introducir algunos cambios probables.
1. No es necesario dejar un registro de los depósitos grandes.
2. La bitácora se guarda en una base de datos (en lugar de en un archivo de texto).
3. También hay que dejar un registro de las extracciones de más de $100.000.
PARA INCORPORAR EL PRIMER
CAMBIO, EN EL PRIMER DISEÑO
LA INCORPORACIÓN DEL SEGUNDO CAMBIO EN
EL PRIMER DISEÑO
EN CUANTO AL TERCER CAMBIO, SIGUIENDO LA IDEA DEL PRIMER DISEÑO
A H O R A S U P O N G A M O S Q U E E S T E
P R O G R A M A
S E V E N D E A D I S T I N T O S B A N C O S
¡
1-Dos diseños distintos,-cuál es el mejor.pptx

Más contenido relacionado

Similar a 1-Dos diseños distintos,-cuál es el mejor.pptx

Similar a 1-Dos diseños distintos,-cuál es el mejor.pptx (20)

C++ Meetup Madrid
C++ Meetup MadridC++ Meetup Madrid
C++ Meetup Madrid
 
Jh actualiizado
Jh actualiizadoJh actualiizado
Jh actualiizado
 
Modelo de datos.
Modelo de datos.Modelo de datos.
Modelo de datos.
 
Por qué hacemos persistencia de datos
Por qué hacemos persistencia de datosPor qué hacemos persistencia de datos
Por qué hacemos persistencia de datos
 
C# for Beginners
C# for BeginnersC# for Beginners
C# for Beginners
 
Roa y millan
Roa y millanRoa y millan
Roa y millan
 
Jessik
JessikJessik
Jessik
 
Jessik
JessikJessik
Jessik
 
Copia de entorno de grado (1)
Copia de entorno de grado (1)Copia de entorno de grado (1)
Copia de entorno de grado (1)
 
Programación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions NavisionProgramación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions Navision
 
Ejemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessEjemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con access
 
CREACION DE DLL Y USO (Ejemplo desarrollado)
CREACION DE DLL Y USO (Ejemplo desarrollado)CREACION DE DLL Y USO (Ejemplo desarrollado)
CREACION DE DLL Y USO (Ejemplo desarrollado)
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
1
11
1
 
base de datos #1
base de datos #1base de datos #1
base de datos #1
 
Creación de una Base de datos
Creación de una Base de datos Creación de una Base de datos
Creación de una Base de datos
 
AOP - OSUM springperu(1era Reunion)
AOP - OSUM springperu(1era Reunion)AOP - OSUM springperu(1era Reunion)
AOP - OSUM springperu(1era Reunion)
 
base de datos #1
base de datos #1base de datos #1
base de datos #1
 
BASE DE DATOS
BASE DE DATOSBASE DE DATOS
BASE DE DATOS
 
Fundamentos de Bases de datos
Fundamentos de Bases de datosFundamentos de Bases de datos
Fundamentos de Bases de datos
 

Más de aulasdigitales24

Las cuatro P en el desarrollo de software.pptx
Las cuatro P en el desarrollo de software.pptxLas cuatro P en el desarrollo de software.pptx
Las cuatro P en el desarrollo de software.pptxaulasdigitales24
 
Ejercicio practico11mmmmmmmmmmmmmmm.pptx
Ejercicio practico11mmmmmmmmmmmmmmm.pptxEjercicio practico11mmmmmmmmmmmmmmm.pptx
Ejercicio practico11mmmmmmmmmmmmmmm.pptxaulasdigitales24
 
Diseño basado en ocultación de la información (DBOI).pptx
Diseño basado en ocultación de la información (DBOI).pptxDiseño basado en ocultación de la información (DBOI).pptx
Diseño basado en ocultación de la información (DBOI).pptxaulasdigitales24
 
Diseño de Software mmmmmmmmmmmmmmmmmm.pptx
Diseño de Software mmmmmmmmmmmmmmmmmm.pptxDiseño de Software mmmmmmmmmmmmmmmmmm.pptx
Diseño de Software mmmmmmmmmmmmmmmmmm.pptxaulasdigitales24
 
Placa madre PARTE 1mmmmmmmmmmmmmmmmm.ppsx
Placa madre PARTE 1mmmmmmmmmmmmmmmmm.ppsxPlaca madre PARTE 1mmmmmmmmmmmmmmmmm.ppsx
Placa madre PARTE 1mmmmmmmmmmmmmmmmm.ppsxaulasdigitales24
 
1- Introduccion- clasificacindelasestructurasdedatos.pptx
1- Introduccion- clasificacindelasestructurasdedatos.pptx1- Introduccion- clasificacindelasestructurasdedatos.pptx
1- Introduccion- clasificacindelasestructurasdedatos.pptxaulasdigitales24
 
2- complejidad algorítmica .pptx
2- complejidad algorítmica         .pptx2- complejidad algorítmica         .pptx
2- complejidad algorítmica .pptxaulasdigitales24
 
2- Modelos de capas una analogia.pptx
2- Modelos de capas una     analogia.pptx2- Modelos de capas una     analogia.pptx
2- Modelos de capas una analogia.pptxaulasdigitales24
 
NOTACION BIG O para alumnos.pdf
NOTACION BIG O para            alumnos.pdfNOTACION BIG O para            alumnos.pdf
NOTACION BIG O para alumnos.pdfaulasdigitales24
 
Cómo LIMPIAR el estaño viejo de un PIN.pptx
Cómo LIMPIAR el estaño viejo de un PIN.pptxCómo LIMPIAR el estaño viejo de un PIN.pptx
Cómo LIMPIAR el estaño viejo de un PIN.pptxaulasdigitales24
 
practica Desmontaje del Samsung Galaxy S8.pptx
practica Desmontaje del Samsung Galaxy S8.pptxpractica Desmontaje del Samsung Galaxy S8.pptx
practica Desmontaje del Samsung Galaxy S8.pptxaulasdigitales24
 
Tema 1-1Calidad de software.pptx kkkkkkkkk
Tema 1-1Calidad de software.pptx kkkkkkkkkTema 1-1Calidad de software.pptx kkkkkkkkk
Tema 1-1Calidad de software.pptx kkkkkkkkkaulasdigitales24
 
Clase 1-1 Utilizacion del tester.pptx practica
Clase 1-1 Utilizacion del tester.pptx practicaClase 1-1 Utilizacion del tester.pptx practica
Clase 1-1 Utilizacion del tester.pptx practicaaulasdigitales24
 
TEMA2.ppt educacion educativa como disciplina
TEMA2.ppt educacion educativa como disciplinaTEMA2.ppt educacion educativa como disciplina
TEMA2.ppt educacion educativa como disciplinaaulasdigitales24
 

Más de aulasdigitales24 (15)

Las cuatro P en el desarrollo de software.pptx
Las cuatro P en el desarrollo de software.pptxLas cuatro P en el desarrollo de software.pptx
Las cuatro P en el desarrollo de software.pptx
 
Ejercicio practico11mmmmmmmmmmmmmmm.pptx
Ejercicio practico11mmmmmmmmmmmmmmm.pptxEjercicio practico11mmmmmmmmmmmmmmm.pptx
Ejercicio practico11mmmmmmmmmmmmmmm.pptx
 
Diseño basado en ocultación de la información (DBOI).pptx
Diseño basado en ocultación de la información (DBOI).pptxDiseño basado en ocultación de la información (DBOI).pptx
Diseño basado en ocultación de la información (DBOI).pptx
 
Diseño de Software mmmmmmmmmmmmmmmmmm.pptx
Diseño de Software mmmmmmmmmmmmmmmmmm.pptxDiseño de Software mmmmmmmmmmmmmmmmmm.pptx
Diseño de Software mmmmmmmmmmmmmmmmmm.pptx
 
Placa madre PARTE 1mmmmmmmmmmmmmmmmm.ppsx
Placa madre PARTE 1mmmmmmmmmmmmmmmmm.ppsxPlaca madre PARTE 1mmmmmmmmmmmmmmmmm.ppsx
Placa madre PARTE 1mmmmmmmmmmmmmmmmm.ppsx
 
1- Introduccion- clasificacindelasestructurasdedatos.pptx
1- Introduccion- clasificacindelasestructurasdedatos.pptx1- Introduccion- clasificacindelasestructurasdedatos.pptx
1- Introduccion- clasificacindelasestructurasdedatos.pptx
 
1- Big O repaso .pptx
1- Big O repaso                    .pptx1- Big O repaso                    .pptx
1- Big O repaso .pptx
 
2- complejidad algorítmica .pptx
2- complejidad algorítmica         .pptx2- complejidad algorítmica         .pptx
2- complejidad algorítmica .pptx
 
2- Modelos de capas una analogia.pptx
2- Modelos de capas una     analogia.pptx2- Modelos de capas una     analogia.pptx
2- Modelos de capas una analogia.pptx
 
NOTACION BIG O para alumnos.pdf
NOTACION BIG O para            alumnos.pdfNOTACION BIG O para            alumnos.pdf
NOTACION BIG O para alumnos.pdf
 
Cómo LIMPIAR el estaño viejo de un PIN.pptx
Cómo LIMPIAR el estaño viejo de un PIN.pptxCómo LIMPIAR el estaño viejo de un PIN.pptx
Cómo LIMPIAR el estaño viejo de un PIN.pptx
 
practica Desmontaje del Samsung Galaxy S8.pptx
practica Desmontaje del Samsung Galaxy S8.pptxpractica Desmontaje del Samsung Galaxy S8.pptx
practica Desmontaje del Samsung Galaxy S8.pptx
 
Tema 1-1Calidad de software.pptx kkkkkkkkk
Tema 1-1Calidad de software.pptx kkkkkkkkkTema 1-1Calidad de software.pptx kkkkkkkkk
Tema 1-1Calidad de software.pptx kkkkkkkkk
 
Clase 1-1 Utilizacion del tester.pptx practica
Clase 1-1 Utilizacion del tester.pptx practicaClase 1-1 Utilizacion del tester.pptx practica
Clase 1-1 Utilizacion del tester.pptx practica
 
TEMA2.ppt educacion educativa como disciplina
TEMA2.ppt educacion educativa como disciplinaTEMA2.ppt educacion educativa como disciplina
TEMA2.ppt educacion educativa como disciplina
 

Último

Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdfMiguelHuaman31
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONALMiNeyi1
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Katherine Concepcion Gonzalez
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptxRigoTito
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.docRodneyFrankCUADROSMI
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfAlfaresbilingual
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIIsauraImbrondone
 

Último (20)

Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
2024 KIT DE HABILIDADES SOCIOEMOCIONALES.pdf
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
5.- Doerr-Mide-lo-que-importa-DESARROLLO PERSONAL
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
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
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
 

1-Dos diseños distintos,-cuál es el mejor.pptx

  • 1. 1.El diseño como etapa del proceso de producción de software 2.Diseño vs. modelo funcional 3.Diseño basado en ocultación de información 4.Diseño basado en tipos abstractos de datos 5.Diseño orientado a objetos 6.Documentación de un diseño U N I D A D I D I S E Ñ O D E S O F T W A R E
  • 2. 1. Dos diseños distintos, ¿cuál es el mejor? 2. Diseño basado en ocultación de la información (DBOI) 3. Diseño del software de control de una estación de peaje 4. Superioridad y limitaciones del DBOI 5. Diseño basado en tipos abstractos de datos (DTAD) 6. Diseño orientado a objetos (DOO) 7. Algunos tópicos complementarios 8. Incidencia de los lenguajes de programación en un diseño 9. Límites del DOO 10. Documentación de diseño U N I D A D I D I S E Ñ O D E S O F T W A R E
  • 3. D I S E Ñ O D E S O F T W A R E 1 - D O S D I S E Ñ O S D I S T I N T O S , ¿ C U Á L E S E L M E J O R ?
  • 4. ACONTINUACIÓN PRESENTAREMOS DOS DISEÑOS DISTINTOS PARA EL MISMO PROBLEMA Y ANALIZAREMOS cuál de ellos es el mejor. CONSIDEREMOS UN PROBLEMA CAJAS DE AHORRO , AL CUAL le adicionamos el siguiente requisito: SE DEBE REGISTRAR EN UNA BITÁCORA CADA DEPÓSITO MAYOR O IGUAL A $1.000.000.
  • 5. RECORDEMOS QUE DISEÑAR UN SISTEMA DE SOFTWARE CONSISTE EN: 1. DESCOMPONER EL SISTEMA EN ELEMENTOS DE SOFTWARE 2. ASIGNAR UNA FUNCIONALIDAD A CADA ELEMENTO 3. ESTABLECER LA RELACIONES ENTRE ESOS ELEMENTOS
  • 6. A C L A R A C I O N CON EL FIN DE SIMPLIFICAR LA PRESENTACIÓN, DESCRIBIREMOS LOS DISEÑOS EN TÉRMINOS DE CONCEPTOS DE PROGRAMACIÓN ORIENTADA A OBJETOS Y SOLO NOS ENFOCAREMOS EN UNA PARTE DEL SISTEMA O LOS REQUERIMIENTOS. AUN ASÍ, DEBE QUEDAR MUY CLARO QUE UN DISEÑO NO SE DEBE DAR EN TÉRMINOS DE UNA TECNOLOGÍA DE IMPLEMENTACIÓN PARTICULAR. LO HACEMOS ASÍ PORQUE AUN NO HEMOS INTRODUCIDO LOS CONCEPTOS Y NOTACIÓN ESPECÍFICOS DEL DISEÑO DE SOFTWARE.
  • 8. J U N T O S P O D E M O S L O G R A R M Á S PRIMER DISEÑO • • •
  • 9. SEGUNDO DISEÑO La descomposición del segundo diseño consiste de dos clases: CajaAhorros y RegistroDep- Grandes. La interfaz de CajaAhorros es la siguiente: • depositar(Dinero m): suma la cantidad m al saldo actual de la cuenta. • extraer(Dinero m): resta la cantidad m al saldo actual de la cuenta si este es mayor o igual a m. • Dinero saldo(): retorna el saldo actual de la caja de ahorros. La interfaz de RegistroDepGrandes es la siguiente: • El constructor de la clase recibe un parámetro de tipo CajaAhorros que guarda en una variable de estado (o variable miembro) que llamaremos ca. • depositar(Dinero m): si m es mayor o igual a $1.000.000 registra los datos del depósito (e.g. número de caja de ahorros, fecha, hora, etc.) en un archivo de texto, y luego invoca ca.depositar(m); caso contrario invoca directamente ca.depositar(m). • extraer(Dinero m): invoca ca.extraer(m). • Dinero saldo(): invoca ca.saldo(). Notar que ambas clases tienen la misma interfaz. La relación entre ambas clases se establece por composición de objetos . Es decir, se declara un objeto de tipo CajaAhorros y uno de tipo RegistroDepGrandes, luego el primero se pasa como parámetro del constructor del segundo. En términos de código se da lo siguiente (Asumimos que el constructor de una clase tiene el mismo nombre que la clase.): CajaAhorros c; RegistroDepGrandes r.RegistroDepGrandes(c); De allí en más el sistema trabaja sobre r. Por ejemplo si queremos depositar 1.000 pesos en c hacemos r.depositar(1000). En consecuencia cuando se efectúa un depósito, r controla si el monto es mayor o igual a 1.000.000 en cuyo caso deja el registro correspondiente pero también hace el depósito sobre c, como lo indica la función de RegistroDepGrandes.depositar().
  • 10. ¿Cuál de los dos diseños es el mejor? ¿Cuál es el criterio para determinar el mejor diseño? A N A L I S I S El criterio es el principio de Diseño para el Cambio. El mejor diseño es aquel que permite la implementación de cambios (modificaciones) de manera tal que: • Cada cambio se efectúe al menor costo posible • La introducción de cada cambio no degrade la integridad conceptual del sistema Entonces, para determinar cuál de los dos diseños es el mejor veremos qué costo tendría introducir algunos cambios probables. 1. No es necesario dejar un registro de los depósitos grandes. 2. La bitácora se guarda en una base de datos (en lugar de en un archivo de texto). 3. También hay que dejar un registro de las extracciones de más de $100.000.
  • 11. PARA INCORPORAR EL PRIMER CAMBIO, EN EL PRIMER DISEÑO LA INCORPORACIÓN DEL SEGUNDO CAMBIO EN EL PRIMER DISEÑO EN CUANTO AL TERCER CAMBIO, SIGUIENDO LA IDEA DEL PRIMER DISEÑO
  • 12. A H O R A S U P O N G A M O S Q U E E S T E P R O G R A M A S E V E N D E A D I S T I N T O S B A N C O S ¡