SlideShare ist ein Scribd-Unternehmen logo
1 von 113
Downloaden Sie, um offline zu lesen
Técnicas Basadas en Matriz
de Estructura de Diseño
Agustín Ramos Fonseca
Sunday, July 7, 13
El poder de los
modelos
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Los modelos...
Sunday, July 7, 13
Son abstracciones.
Los modelos...
Sunday, July 7, 13
Son abstracciones.
Permiten razonar algún aspecto de una idea,
concepto o sistema, omitiendo los detalles que
no son relevantes.
Los modelos...
Sunday, July 7, 13
Son abstracciones.
Permiten razonar algún aspecto de una idea,
concepto o sistema, omitiendo los detalles que
no son relevantes.
Permiten comunicar de manera más sencilla
una idea compleja.
Los modelos...
Sunday, July 7, 13
Son abstracciones.
Permiten razonar algún aspecto de una idea,
concepto o sistema, omitiendo los detalles que
no son relevantes.
Permiten comunicar de manera más sencilla
una idea compleja.
Siempre y cuando las personas involucradas
compartan el contexto que el modelo asume.
Los modelos...
Sunday, July 7, 13
Sunday, July 7, 13
Se usa para...
Sunday, July 7, 13
Diseñar
Se usa para...
Sunday, July 7, 13
Diseñar
Documentar
Se usa para...
Sunday, July 7, 13
Diseñar
Documentar
Analizar
Se usa para...
Sunday, July 7, 13
Diseñar
Documentar
Analizar
... ¿analizar?!
Se usa para...
Sunday, July 7, 13
ant
Sunday, July 7, 13
Fragmento de vert.x
Sunday, July 7, 13
Problemas con UML
Sunday, July 7, 13
Problemas con UML
De manera práctica, NO escala muy bien.
Sunday, July 7, 13
Problemas con UML
De manera práctica, NO escala muy bien.
Es difícil mantener el modelo en sincronía
con el código.
Sunday, July 7, 13
Problemas con UML
De manera práctica, NO escala muy bien.
Es difícil mantener el modelo en sincronía
con el código.
Es difícil realizar análisis arquitectónico.
Sunday, July 7, 13
¿y ya?
Sunday, July 7, 13
Una anécdota
Sunday, July 7, 13
Diagnóstico de un sistema
Sunday, July 7, 13
Diagnóstico de un sistema
Hecho con tecnología de punta (circa 2009)
Sunday, July 7, 13
Diagnóstico de un sistema
Hecho con tecnología de punta (circa 2009)
Muy caro implementar nueva funcionalidad o
modificar la existente.
Sunday, July 7, 13
Diagnóstico de un sistema
Hecho con tecnología de punta (circa 2009)
Muy caro implementar nueva funcionalidad o
modificar la existente.
Muy frágil.
Sunday, July 7, 13
Diagnóstico de un sistema
Hecho con tecnología de punta (circa 2009)
Muy caro implementar nueva funcionalidad o
modificar la existente.
Muy frágil.
Deseo de modularizarlo y productizarlo.
Sunday, July 7, 13
Diagnóstico de un sistema
Hecho con tecnología de punta (circa 2009)
Muy caro implementar nueva funcionalidad o
modificar la existente.
Muy frágil.
Deseo de modularizarlo y productizarlo.
Pero no tenían idea de cómo.
Sunday, July 7, 13
Diagnóstico de un sistema
Hecho con tecnología de punta (circa 2009)
Muy caro implementar nueva funcionalidad o
modificar la existente.
Muy frágil.
Deseo de modularizarlo y productizarlo.
Pero no tenían idea de cómo.
Sunday, July 7, 13
¿Modularizar?...
Sunday, July 7, 13
¿Modularizar funcionalidad?
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4View 2
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4
Service 1
Service 2
Service 3
Service 4
Service 5
Service 6
Service 7
Service 8
Service 9
Service 10
View 2
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4
Service 1
Service 2
Service 3
Service 4
Service 5
Service 6
Service 7
Service 8
Service 9
Service 10
View 2
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4
Service 1
Service 2
Service 3
Service 4
Service 5
Service 6
Service 7
Service 8
Service 9
Service 10
View 2
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4
Service 1
Service 2
Service 3
Service 4
Service 5
Service 6
Service 7
Service 8
Service 9
Service 10
View 2
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4
Service 1
Service 2
Service 3
Service 4
Service 5
Service 6
Service 7
Service 8
Service 9
Service 10
Es un grafo...
View 2
Sunday, July 7, 13
Sunday, July 7, 13
Jesús Figueroa Nazuno
Sunday, July 7, 13
Jesús Figueroa Nazuno
Físico - Computólogo - Investigador - Mentor
Sunday, July 7, 13
Sunday, July 7, 13
“Machine Learning”
conocer tú debes (circa 2000)
Sunday, July 7, 13
Clustering
Sunday, July 7, 13
Clustering
Sunday, July 7, 13
Clustering
Sunday, July 7, 13
Clustering
Encontrar grupos que minimizan dos
valores:
Sunday, July 7, 13
Clustering
Encontrar grupos que minimizan dos
valores:
Número de grupos.
Sunday, July 7, 13
Clustering
Encontrar grupos que minimizan dos
valores:
Número de grupos.
Interacción entre los grupos.
Sunday, July 7, 13
Clustering Jerárquico
Sunday, July 7, 13
Clustering de Grafos
Sunday, July 7, 13
¿Modularizar funcionalidad?
View 1 View 3 View 4
Service 1
Service 2
Service 3
Service 4
Service 5
Service 6
Service 7
Service 8
Service 9
Service 10
Es un grafo...
View 2
Sunday, July 7, 13
Representación
Matricial
S1 S2 S3 S4 S5 S6 S7 S8 S9 S10
View 1 x x
View 2 x x x x
View 3 x x x
View 4 x x x x
Sunday, July 7, 13
Representación
Matricial
S1 S2 S3 S4 S5 S6 S7 S8 S9 S10
View 1 x x
View 2 x x x x
View 3 x x x
View 4 x x x x
Sunday, July 7, 13
Clustering
Sunday, July 7, 13
Clustering
Multi-Domain
Matrix
Analysis
Sunday, July 7, 13
Matriz de Estructura de
Diseño (DSM)
Sunday, July 7, 13
DSM básica
Sunday, July 7, 13
DSM con pesos
Sunday, July 7, 13
DSM jerárquica
Sunday, July 7, 13
DSM jerárquica
Sunday, July 7, 13
DSM jerárquica
Sunday, July 7, 13
DSM jerárquica
Sunday, July 7, 13
Análisis de DSM
Sunday, July 7, 13
Triangularización
Reordenar las filas y
columnasde tal manera que
todas las interacciones
queden por debajo de la
diagonal.
Sunday, July 7, 13
Triangularización
Sunday, July 7, 13
Triangularización
Sunday, July 7, 13
Dependencias cíclicas
Sunday, July 7, 13
Dependencias cíclicas
Sunday, July 7, 13
Dependencias cíclicas
Sunday, July 7, 13
Dependencias cíclicas
Sunday, July 7, 13
Clustering
Sunday, July 7, 13
2 Clusters sin traslape
Sunday, July 7, 13
3 clusters sin traslape
Sunday, July 7, 13
2 clusters con traslape
Sunday, July 7, 13
3 clusters con traslape
Sunday, July 7, 13
Demo
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Sunday, July 7, 13
Ventajas de la DSM
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Visualización.
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Visualización.
Permite identificar patrones.
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Visualización.
Permite identificar patrones.
Clusters, módulos críticos, bucles,
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Visualización.
Permite identificar patrones.
Clusters, módulos críticos, bucles,
Entendimiento intuitivo.
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Visualización.
Permite identificar patrones.
Clusters, módulos críticos, bucles,
Entendimiento intuitivo.
Análisis cuantitativo y algorítmico.
Sunday, July 7, 13
Ventajas de la DSM
Información concisa.
Visualización.
Permite identificar patrones.
Clusters, módulos críticos, bucles,
Entendimiento intuitivo.
Análisis cuantitativo y algorítmico.
Flexibilidad
Sunday, July 7, 13
Otros usos
Sunday, July 7, 13
MARS Path Finder
Sunday, July 7, 13
MARS Path Finder
Sunday, July 7, 13
Rediseño de Mozilla
Sunday, July 7, 13
Resúmen
Sunday, July 7, 13
Resúmen
La estructura estática de un sistema son
componentes, módulos y relaciones entre
estos.
Sunday, July 7, 13
Resúmen
La estructura estática de un sistema son
componentes, módulos y relaciones entre
estos.
Ésta estructura se puede representar con un
grafo.
Sunday, July 7, 13
Resúmen
La estructura estática de un sistema son
componentes, módulos y relaciones entre
estos.
Ésta estructura se puede representar con un
grafo.
Y por lo tanto con una matriz: DSM
Sunday, July 7, 13
Resúmen
La estructura estática de un sistema son
componentes, módulos y relaciones entre
estos.
Ésta estructura se puede representar con un
grafo.
Y por lo tanto con una matriz: DSM
Una DSM presenta ventajas para el análisis de
la arquitectura de sistemas.
Sunday, July 7, 13
Resúmen
La estructura estática de un sistema son
componentes, módulos y relaciones entre
estos.
Ésta estructura se puede representar con un
grafo.
Y por lo tanto con una matriz: DSM
Una DSM presenta ventajas para el análisis de
la arquitectura de sistemas.
Sunday, July 7, 13
Referencias
Sunday, July 7, 13
Preguntas
Agustín Ramos
@MachinesAreUs
Sunday, July 7, 13

Weitere ähnliche Inhalte

Mehr von Software Guru

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasSoftware Guru
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesSoftware Guru
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environmentsSoftware Guru
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorSoftware Guru
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealSoftware Guru
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowSoftware Guru
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:Software Guru
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learningSoftware Guru
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDiSoftware Guru
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Software Guru
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSSoftware Guru
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...Software Guru
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?Software Guru
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Software Guru
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsSoftware Guru
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosSoftware Guru
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressSoftware Guru
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsSoftware Guru
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Software Guru
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoSoftware Guru
 

Mehr von Software Guru (20)

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las Cosas
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environments
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador Senior
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto ideal
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache Airflow
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learning
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDi
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJS
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stress
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goals
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseño
 

Kürzlich hochgeladen

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 

Kürzlich hochgeladen (10)

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

Técnicas basadas en matriz de estructura de diseño