SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
Dr. Francisco José García Peñalvo / fgarcia@usal.es
Alicia García Holgado / aliciagh@usal.es
Andrea Vázquez Ingelmo / andreavazquez@usal.es
Departamento de Informática y Automática
Universidad de Salamanca
MODELO C4
INGENIERÍA DE SOFTWARE I
2º DE GRADO EN INGENIERÍA INFORMÁTICA
CURSO 2020/2021
ÍNDICE
• La brecha entre los modelos y el código
• El modelo C4
• Nivel de contexto
• Nivel de contenedores
• Nivel de componentes
• Nivel de código
• Notación
• C4 y los casos de uso
2
Ingeniería de Software I – El modelo C4
LA BRECHA ENTRE LOS
MODELOS Y EL CÓDIGO
La descripción de una arquitectura software está compuesta por
muchas vistas
Separación entre vistas lógicas y de desarrollo
Problemas a la hora de reflejar y trazar de forma precisa las
entidades modeladas en el código
La estructura del código debería reflejar la
arquitectura de nuestro sistema
Ingeniería de Software I – El modelo C4
3
LA BRECHA ENTRE LOS
MODELOS Y EL CÓDIGO
4
¿?
¿?
Ingeniería de Software I – El modelo C4
EL MODELO C4
Surge como solución para aliviar la brecha entre modelo y código
Permite comunicar la arquitectura de un sistema en función del detalle
que se quiera proporcionar
Está basado en cuatro niveles que describen el sistema con distintos
grados de granularidad
• El nivel de contexto
• El nivel de contenedores
• El nivel de componentes
• El nivel de código
5
Ingeniería de Software I – El modelo C4
EL MODELO C4
6
Ingeniería de Software I – El modelo C4
Nos permite tener una imagen
genérica de nuestro sistema y
sus interacciones con el
exterior
En este nivel podemos
especificar los sistemas
externos con los que interactúa
nuestro propio sistema
El sistema que modelamos se
considera una “caja negra”,
solo nos interesan sus
relaciones externas
También permite identificar los
usuarios finales que harán uso
de la funcionalidad de nuestro
software
Ingeniería de Software I – El modelo C4
7
NIVEL DE CONTEXTO
https://c4model.com/
Los contenedores referencian
cualquier entidad que ejecuta
código o almacena datos
Pueden verse como unidades
desplegables o ejecutables
Ejemplos de contenedores:
• Aplicaciones web
• Servicios web
• Aplicaciones de escritorio
• Bases de datos
• Sistema de ficheros
Ingeniería de Software I – El modelo C4
8
NIVEL DE CONTENEDORES
https://c4model.com/
Dentro de cada contenedor
podemos encontrar diversos
componentes
Los componentes representan
un grupo de funcionalidades
Los componentes pueden tener
relaciones entre sí y entre los
usuarios finales
Muestra la responsabilidad de
cada componente a alto nivel,
así como los detalles de
implementación (tecnología
utilizada, etc.)
Ingeniería de Software I – El modelo C4
9
NIVEL DE COMPONENTES
https://c4model.com/
En este nivel se muestran detalles de la implementación de cada componente
Se pueden utilizar diagramas de clase, de entidad relación, o similares
Ingeniería de Software I – El modelo C4
10
NIVEL DE CÓDIGO
https://c4model.com/
Ingeniería de Software I – El modelo C4
11
NOTACIÓN
https://c4model.com/
C4 Y LOS CASOS DE USO
Los casos de uso de UML también nos sirven para especificar el
contexto del sistema y los actores que interactúan con los diversos
bloques funcionales
Es posible transformar los diagramas de casos de uso al modelo C4
Se propone especificar mediante los niveles de contexto y
contenedores la solución al taller de casos de uso
(evaluación continua)
12
Ingeniería de Software I – El modelo C4
Ingeniería de Software I – El modelo C4
13
BIBLIOGRAFÍA
• Software Architecture for Developers: Volume 2 – Visualise, document
and explore your software architecture. Simon Brown.
• https://c4model.com
• https://medium.com/@javiervivanco/el-modelo-c4-de-
documentaci%C3%B3n-para-la-arquitectura-de-software-
424704528390
Dr. Francisco José García Peñalvo / fgarcia@usal.es
Alicia García Holgado / aliciagh@usal.es
Andrea Vázquez Ingelmo / andreavazquez@usal.es
Departamento de Informática y Automática
Universidad de Salamanca
MODELO C4
INGENIERÍA DE SOFTWARE I
2º DE GRADO EN INGENIERÍA INFORMÁTICA
CURSO 2020/2021

Más contenido relacionado

Similar a C4 model.pdf

Arquitectura sw varios niveles.pdf
Arquitectura sw varios niveles.pdfArquitectura sw varios niveles.pdf
Arquitectura sw varios niveles.pdfRene Guaman-Quinche
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareJosé Antonio Sandoval Acosta
 
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventosPOE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventosFranklin Parrales Bravo
 
Clase 1_Unidad II (2).pdf
Clase 1_Unidad II  (2).pdfClase 1_Unidad II  (2).pdf
Clase 1_Unidad II (2).pdfamacias7983
 
Arquitectura del software
Arquitectura del softwareArquitectura del software
Arquitectura del softwareJohns Chacon
 
5 aissexposicion1grupo4
5 aissexposicion1grupo45 aissexposicion1grupo4
5 aissexposicion1grupo4Any Álvarez
 
C4model - Arquitectura de Software
C4model - Arquitectura de SoftwareC4model - Arquitectura de Software
C4model - Arquitectura de SoftwareRene Guaman-Quinche
 
Programacion IV - Semana 01.pptx
Programacion IV - Semana 01.pptxProgramacion IV - Semana 01.pptx
Programacion IV - Semana 01.pptxErrol31
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de SoftwareMaricela Ramirez
 
clase_unidad_i__FUNDA_DISE_SOF_PARTE_I.ppt
clase_unidad_i__FUNDA_DISE_SOF_PARTE_I.pptclase_unidad_i__FUNDA_DISE_SOF_PARTE_I.ppt
clase_unidad_i__FUNDA_DISE_SOF_PARTE_I.pptssuseraff8a1
 
Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Lucero Mtz
 
Lenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y ComponentesLenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y ComponentesKarina Arguedas Ruelas
 
Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3natachaceleste
 
Unidad 4
Unidad 4Unidad 4
Unidad 4mi casa
 
Arquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasArquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasTensor
 

Similar a C4 model.pdf (20)

Arquitectura sw varios niveles.pdf
Arquitectura sw varios niveles.pdfArquitectura sw varios niveles.pdf
Arquitectura sw varios niveles.pdf
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de software
 
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventosPOE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
POE Unidad 2: Diseño y construcción de programas visuales y orientados a eventos
 
Clase 1_Unidad II (2).pdf
Clase 1_Unidad II  (2).pdfClase 1_Unidad II  (2).pdf
Clase 1_Unidad II (2).pdf
 
Arquitectura del software
Arquitectura del softwareArquitectura del software
Arquitectura del software
 
1057571401
10575714011057571401
1057571401
 
5 aissexposicion1grupo4
5 aissexposicion1grupo45 aissexposicion1grupo4
5 aissexposicion1grupo4
 
C4model - Arquitectura de Software
C4model - Arquitectura de SoftwareC4model - Arquitectura de Software
C4model - Arquitectura de Software
 
Programacion IV - Semana 01.pptx
Programacion IV - Semana 01.pptxProgramacion IV - Semana 01.pptx
Programacion IV - Semana 01.pptx
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de Software
 
clase_unidad_i__FUNDA_DISE_SOF_PARTE_I.ppt
clase_unidad_i__FUNDA_DISE_SOF_PARTE_I.pptclase_unidad_i__FUNDA_DISE_SOF_PARTE_I.ppt
clase_unidad_i__FUNDA_DISE_SOF_PARTE_I.ppt
 
Arduino (2).pdf
Arduino (2).pdfArduino (2).pdf
Arduino (2).pdf
 
Temario diplomado
Temario diplomadoTemario diplomado
Temario diplomado
 
Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015
 
Lenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y ComponentesLenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y Componentes
 
Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3
 
Unidad 4
Unidad 4Unidad 4
Unidad 4
 
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)
 
Uml tutorial-visual-paradigm
Uml tutorial-visual-paradigmUml tutorial-visual-paradigm
Uml tutorial-visual-paradigm
 
Arquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasArquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadas
 

Último

TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxUPSE
 
Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfCarlosSanchez452245
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)Samuel Solís Fuentes
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfUPSE
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptxalzabenjaminci00
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...juanforero141
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocioMagemyl Egana
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxcorreafrancoci00
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocioMagemyl Egana
 

Último (9)

TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
 
Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdf
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocio
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocio
 

C4 model.pdf

  • 1. Dr. Francisco José García Peñalvo / fgarcia@usal.es Alicia García Holgado / aliciagh@usal.es Andrea Vázquez Ingelmo / andreavazquez@usal.es Departamento de Informática y Automática Universidad de Salamanca MODELO C4 INGENIERÍA DE SOFTWARE I 2º DE GRADO EN INGENIERÍA INFORMÁTICA CURSO 2020/2021
  • 2. ÍNDICE • La brecha entre los modelos y el código • El modelo C4 • Nivel de contexto • Nivel de contenedores • Nivel de componentes • Nivel de código • Notación • C4 y los casos de uso 2 Ingeniería de Software I – El modelo C4
  • 3. LA BRECHA ENTRE LOS MODELOS Y EL CÓDIGO La descripción de una arquitectura software está compuesta por muchas vistas Separación entre vistas lógicas y de desarrollo Problemas a la hora de reflejar y trazar de forma precisa las entidades modeladas en el código La estructura del código debería reflejar la arquitectura de nuestro sistema Ingeniería de Software I – El modelo C4 3
  • 4. LA BRECHA ENTRE LOS MODELOS Y EL CÓDIGO 4 ¿? ¿? Ingeniería de Software I – El modelo C4
  • 5. EL MODELO C4 Surge como solución para aliviar la brecha entre modelo y código Permite comunicar la arquitectura de un sistema en función del detalle que se quiera proporcionar Está basado en cuatro niveles que describen el sistema con distintos grados de granularidad • El nivel de contexto • El nivel de contenedores • El nivel de componentes • El nivel de código 5 Ingeniería de Software I – El modelo C4
  • 6. EL MODELO C4 6 Ingeniería de Software I – El modelo C4
  • 7. Nos permite tener una imagen genérica de nuestro sistema y sus interacciones con el exterior En este nivel podemos especificar los sistemas externos con los que interactúa nuestro propio sistema El sistema que modelamos se considera una “caja negra”, solo nos interesan sus relaciones externas También permite identificar los usuarios finales que harán uso de la funcionalidad de nuestro software Ingeniería de Software I – El modelo C4 7 NIVEL DE CONTEXTO https://c4model.com/
  • 8. Los contenedores referencian cualquier entidad que ejecuta código o almacena datos Pueden verse como unidades desplegables o ejecutables Ejemplos de contenedores: • Aplicaciones web • Servicios web • Aplicaciones de escritorio • Bases de datos • Sistema de ficheros Ingeniería de Software I – El modelo C4 8 NIVEL DE CONTENEDORES https://c4model.com/
  • 9. Dentro de cada contenedor podemos encontrar diversos componentes Los componentes representan un grupo de funcionalidades Los componentes pueden tener relaciones entre sí y entre los usuarios finales Muestra la responsabilidad de cada componente a alto nivel, así como los detalles de implementación (tecnología utilizada, etc.) Ingeniería de Software I – El modelo C4 9 NIVEL DE COMPONENTES https://c4model.com/
  • 10. En este nivel se muestran detalles de la implementación de cada componente Se pueden utilizar diagramas de clase, de entidad relación, o similares Ingeniería de Software I – El modelo C4 10 NIVEL DE CÓDIGO https://c4model.com/
  • 11. Ingeniería de Software I – El modelo C4 11 NOTACIÓN https://c4model.com/
  • 12. C4 Y LOS CASOS DE USO Los casos de uso de UML también nos sirven para especificar el contexto del sistema y los actores que interactúan con los diversos bloques funcionales Es posible transformar los diagramas de casos de uso al modelo C4 Se propone especificar mediante los niveles de contexto y contenedores la solución al taller de casos de uso (evaluación continua) 12 Ingeniería de Software I – El modelo C4
  • 13. Ingeniería de Software I – El modelo C4 13 BIBLIOGRAFÍA • Software Architecture for Developers: Volume 2 – Visualise, document and explore your software architecture. Simon Brown. • https://c4model.com • https://medium.com/@javiervivanco/el-modelo-c4-de- documentaci%C3%B3n-para-la-arquitectura-de-software- 424704528390
  • 14. Dr. Francisco José García Peñalvo / fgarcia@usal.es Alicia García Holgado / aliciagh@usal.es Andrea Vázquez Ingelmo / andreavazquez@usal.es Departamento de Informática y Automática Universidad de Salamanca MODELO C4 INGENIERÍA DE SOFTWARE I 2º DE GRADO EN INGENIERÍA INFORMÁTICA CURSO 2020/2021