SlideShare a Scribd company logo
C4 model in a Software Engineering subject to ease the
comprehension of UML and the software development
process
Andrea Vázquez-Ingelmo1, Alicia García-Holgado1, Francisco J. García-Peñalvo1
1GRIAL Research Group. University of Salamanca
{andreavazquez, aliciagh, fgarcia}@usal.es
EDUCON 2020
Contents
1. Introduction
2. Objective
3. Context
4. The problem
5. The C4 Model
6. Actions
7. C4 Model application
example
8. Discussion and conclusions
1. Introduction
• Software Engineering I is a mandatory
subject in the second semester of the
Degree in Computer Science
at the University of Salamanca (Spain)
• At this point, they have already acquired programming
and computational skills
1. Introduction
• The higher levels of abstraction required by software
engineering makes it complex for the students and also
challenging to teach
• In previous years, different changes have been
introduced in the teaching methods, like Project-Based
Learning (PBL) and active methodologies
• Although that, students are still facing difficulties with
one of the core contents of the subject: UML
1. Introduction
• One of the main difficulties faced is the gap that students
perceive between the systems they model and the
systems they have actually coded
2. Objective
This paper proposes the introduction of a new approach for
documenting software as a complement of UML in the
subject of Software Engineering I: the C4 model
3. Context
• The whole course is driven by milestones following the
software development process
• These milestones are
Requirements
elicitation
Domain
model
Use-case
realization
3. Context
• The sessions in which UML is explained are structured
following this model
1. Use-case diagrams are presented to lay the
foundations of requirement elicitation
2. Class diagrams are explained at analysis level,
omitting implementation-level details
3. Sequence and communication diagrams are
introduced
3. Context
• Students must apply the acquired knowledge to analyze
and document their own information system (their final
project)
• For this project, teachers propose
a generic goal that the system
must accomplish
• Students have the freedom to
design any type of system that
lets users reaching the goal
4. The problem
• One of the main issues students face is the
conceptualization of the system
• If the conceptualization phase is poorly carried out, it
could affect the rest of the phases, given the incremental
nature of the project
• The C4 model offers a syntax that could make the
conceptualization and abstraction of a system’s
functionality a less convoluted task
5. The C4 model
• C4 model divides the system in four levels
• Each of these levels is focused on a certain perspective of the
system
• The C4 Model was defined by Simon Brown https://c4model.com/
Context
Containers
Components
Code
5. The C4 model
6. Actions
• Introduction of the C4 model at the
requirements elicitation phase
• The simplified syntax of the C4 model is set to help them
identify main actors, external systems and internal
components
• The two first levels of the C4 model are employed, letting
students design their systems at high-level
Requirements
elicitation
6. Actions
• At the end of the semester, when students have
developed their final project, they are asked to do
another C4 model of the final system
• This C4 model should be similar to the one developed at
the beginning, but with the specific components that are
part of their solution
7. C4 model application example
• During the 2018-2019 course, the final project consisted
in designing a system that accomplish the goal of
promoting diversity in business contexts
• Although the ideas fulfilled the project requirements,
students had trouble documenting them with UML
• Using the C4 model, students could combine the static
nature of the system with its functionality, easing the
recognition of conceptual classes and use cases
7. C4 model application example
Context view of a proposed inclusive hiring system using the C4 model
7. C4 model application example
Container view of a proposed inclusive hiring system using the C4 model
7. C4 model application example
• Functionality of the
user management
container outlined in
the C4 model
7. C4 model application example
• By detecting the relationships among containers at the
first stage of the project, students can rely on these
associations and the information requirements of each
container to build their domain model
• Finally, the third milestone is focused on the
development of interaction diagrams
• These can be easily added to the C4 model at its last level
(code-level), relating them to the specific use-cases hold
in a container
7. C4 model application example
Sequence diagram that represents the modification of business data
within the proposed hiring system
8. Discussion and conclusions
• Students encounter a lot of barriers that are drawn across the
rest of the milestones if conceptualization issues are not
solved at the beginning of the course
• This model could help students with the organization of
functionalities at the requirements elicitation phase
• Students can work with a methodology closer to businesses
contexts, that can be understood by the stakeholders
• This methodology is also closer to the reality of how systems
are being currently developed (e.g., distributed components,
communication through API calls, etc.)
8. Discussion and conclusions
• The C4 model does not replace the UML language, it
wraps and refactors it in more manageable pieces
• The fourth level of the C4 model can be represented
through UML diagrams
• This proposal will be applied in the forthcoming years
• The analysis of the learning experience will be carried out
in the long-term in order to rely on meaningful samples
from different academic years
C4 model in a Software Engineering subject to ease the
comprehension of UML and the software development
process
Andrea Vázquez-Ingelmo1, Alicia García-Holgado1, Francisco J. García-Peñalvo1
1GRIAL Research Group. University of Salamanca
{andreavazquez, aliciagh, fgarcia}@usal.es
EDUCON 2020

More Related Content

What's hot

Intro to HBase
Intro to HBaseIntro to HBase
Intro to HBase
alexbaranau
 
Software Engineering - chp4- design patterns
Software Engineering - chp4- design patternsSoftware Engineering - chp4- design patterns
Software Engineering - chp4- design patterns
Lilia Sfaxi
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
Sudarsun Santhiappan
 
Data models in NoSQL
Data models in NoSQLData models in NoSQL
Data models in NoSQL
Dr-Dipali Meher
 
NoSQL
NoSQLNoSQL
NoSQL
Radu Potop
 
Object Storage Overview
Object Storage OverviewObject Storage Overview
Object Storage Overview
Cloudian
 
Consensus and Raft Algorithm in Distributed System
Consensus and  Raft Algorithm in Distributed SystemConsensus and  Raft Algorithm in Distributed System
Consensus and Raft Algorithm in Distributed System
Thao Huynh Quang
 
The Rise of NoSQL and Polyglot Persistence
The Rise of NoSQL and Polyglot PersistenceThe Rise of NoSQL and Polyglot Persistence
The Rise of NoSQL and Polyglot Persistence
Abdelmonaim Remani
 
SQL vs NoSQL | MySQL vs MongoDB Tutorial | Edureka
SQL vs NoSQL | MySQL vs MongoDB Tutorial | EdurekaSQL vs NoSQL | MySQL vs MongoDB Tutorial | Edureka
SQL vs NoSQL | MySQL vs MongoDB Tutorial | Edureka
Edureka!
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
Mike Dirolf
 
Sql vs NoSQL-Presentation
 Sql vs NoSQL-Presentation Sql vs NoSQL-Presentation
Sql vs NoSQL-Presentation
Shubham Tomar
 
Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architecture
Bishal Khanal
 
1 introduction of OOAD
1 introduction of OOAD1 introduction of OOAD
1 introduction of OOAD
Manish Chaurasia
 
Schema-on-Read vs Schema-on-Write
Schema-on-Read vs Schema-on-WriteSchema-on-Read vs Schema-on-Write
Schema-on-Read vs Schema-on-Write
Amr Awadallah
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
Nikolay Vasilev
 
Sqoop
SqoopSqoop
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
Sanae BEKKAR
 
Sql Antipatterns Strike Back
Sql Antipatterns Strike BackSql Antipatterns Strike Back
Sql Antipatterns Strike Back
Karwin Software Solutions LLC
 
An Introduction to Hadoop
An Introduction to HadoopAn Introduction to Hadoop
An Introduction to Hadoop
DerrekYoungDotCom
 

What's hot (20)

Intro to HBase
Intro to HBaseIntro to HBase
Intro to HBase
 
Software Engineering - chp4- design patterns
Software Engineering - chp4- design patternsSoftware Engineering - chp4- design patterns
Software Engineering - chp4- design patterns
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Data models in NoSQL
Data models in NoSQLData models in NoSQL
Data models in NoSQL
 
NoSQL
NoSQLNoSQL
NoSQL
 
Object Storage Overview
Object Storage OverviewObject Storage Overview
Object Storage Overview
 
Consensus and Raft Algorithm in Distributed System
Consensus and  Raft Algorithm in Distributed SystemConsensus and  Raft Algorithm in Distributed System
Consensus and Raft Algorithm in Distributed System
 
The Rise of NoSQL and Polyglot Persistence
The Rise of NoSQL and Polyglot PersistenceThe Rise of NoSQL and Polyglot Persistence
The Rise of NoSQL and Polyglot Persistence
 
SQL vs NoSQL | MySQL vs MongoDB Tutorial | Edureka
SQL vs NoSQL | MySQL vs MongoDB Tutorial | EdurekaSQL vs NoSQL | MySQL vs MongoDB Tutorial | Edureka
SQL vs NoSQL | MySQL vs MongoDB Tutorial | Edureka
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Sql vs NoSQL-Presentation
 Sql vs NoSQL-Presentation Sql vs NoSQL-Presentation
Sql vs NoSQL-Presentation
 
Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architecture
 
1 introduction of OOAD
1 introduction of OOAD1 introduction of OOAD
1 introduction of OOAD
 
Schema-on-Read vs Schema-on-Write
Schema-on-Read vs Schema-on-WriteSchema-on-Read vs Schema-on-Write
Schema-on-Read vs Schema-on-Write
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Sqoop
SqoopSqoop
Sqoop
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
 
RDBMS vs NoSQL
RDBMS vs NoSQLRDBMS vs NoSQL
RDBMS vs NoSQL
 
Sql Antipatterns Strike Back
Sql Antipatterns Strike BackSql Antipatterns Strike Back
Sql Antipatterns Strike Back
 
An Introduction to Hadoop
An Introduction to HadoopAn Introduction to Hadoop
An Introduction to Hadoop
 

Similar to C4 model in a Software Engineering subject to ease the comprehension of UML and the software development process

HND Assignment Brief Session Sept.docx
              HND Assignment Brief               Session Sept.docx              HND Assignment Brief               Session Sept.docx
HND Assignment Brief Session Sept.docx
joyjonna282
 
20121121101127simulation azmi
20121121101127simulation azmi20121121101127simulation azmi
20121121101127simulation azmi
Ahmad Nur Faiz
 
Simulation Powerpoint- Lecture Notes
Simulation Powerpoint- Lecture NotesSimulation Powerpoint- Lecture Notes
Simulation Powerpoint- Lecture Notes
Kesavartinii Bala Krisnain
 
Presentation on po pshjhhjhekhhkkhkhjpeo
Presentation on po pshjhhjhekhhkkhkhjpeoPresentation on po pshjhhjhekhhkkhkhjpeo
Presentation on po pshjhhjhekhhkkhkhjpeo
epandhari
 
Algorithms and Complexity.pptx
Algorithms and Complexity.pptxAlgorithms and Complexity.pptx
Algorithms and Complexity.pptx
ChryslerPanaguiton
 
DITEC - Software Engineering
DITEC - Software EngineeringDITEC - Software Engineering
DITEC - Software Engineering
Rasan Samarasinghe
 
Student feedback system
Student feedback systemStudent feedback system
Student feedback system
Akshay Surve
 
Outcome Based Education (OBE) - A practitioner's experience
Outcome Based Education (OBE) - A  practitioner's experienceOutcome Based Education (OBE) - A  practitioner's experience
Outcome Based Education (OBE) - A practitioner's experience
Ravindra Dastikop
 
The application of computer aided learning to learn basic concepts of branchi...
The application of computer aided learning to learn basic concepts of branchi...The application of computer aided learning to learn basic concepts of branchi...
The application of computer aided learning to learn basic concepts of branchi...
ijma
 
Waterfall Model
Waterfall ModelWaterfall Model
An Approach To Meeting The ICT Requirements Of The Social Work Degree
An Approach To Meeting The ICT Requirements Of The Social Work DegreeAn Approach To Meeting The ICT Requirements Of The Social Work Degree
An Approach To Meeting The ICT Requirements Of The Social Work Degree
Mary Montoya
 
Design patterns
Design patternsDesign patterns
Design patterns
Majid Qafouri
 
Itec410 lec01
Itec410 lec01Itec410 lec01
Itec410 lec01
Ahmad Ammari
 
402-IT-X-2022-23 TERMWISE SYLLABUS.pdf
402-IT-X-2022-23 TERMWISE SYLLABUS.pdf402-IT-X-2022-23 TERMWISE SYLLABUS.pdf
402-IT-X-2022-23 TERMWISE SYLLABUS.pdf
JNVKGLCS
 
Project Guidelines-LMU TOPUP.pptx
Project Guidelines-LMU TOPUP.pptxProject Guidelines-LMU TOPUP.pptx
Project Guidelines-LMU TOPUP.pptx
PasanSubasinghe2
 
Eeri 314 pec 2013
Eeri 314 pec 2013Eeri 314 pec 2013
Eeri 314 pec 2013Drifter92
 
Ict3612 102 1_2018
Ict3612 102 1_2018Ict3612 102 1_2018
Ict3612 102 1_2018
RhandzuRikhotso
 
Melbourne t1 2016-assignment_2_mn504
Melbourne   t1 2016-assignment_2_mn504Melbourne   t1 2016-assignment_2_mn504
Melbourne t1 2016-assignment_2_mn504
Sandeep Ratnam
 

Similar to C4 model in a Software Engineering subject to ease the comprehension of UML and the software development process (20)

HND Assignment Brief Session Sept.docx
              HND Assignment Brief               Session Sept.docx              HND Assignment Brief               Session Sept.docx
HND Assignment Brief Session Sept.docx
 
20121121101127simulation azmi
20121121101127simulation azmi20121121101127simulation azmi
20121121101127simulation azmi
 
Simulation Powerpoint- Lecture Notes
Simulation Powerpoint- Lecture NotesSimulation Powerpoint- Lecture Notes
Simulation Powerpoint- Lecture Notes
 
Presentation on po pshjhhjhekhhkkhkhjpeo
Presentation on po pshjhhjhekhhkkhkhjpeoPresentation on po pshjhhjhekhhkkhkhjpeo
Presentation on po pshjhhjhekhhkkhkhjpeo
 
Algorithms and Complexity.pptx
Algorithms and Complexity.pptxAlgorithms and Complexity.pptx
Algorithms and Complexity.pptx
 
DITEC - Software Engineering
DITEC - Software EngineeringDITEC - Software Engineering
DITEC - Software Engineering
 
Student feedback system
Student feedback systemStudent feedback system
Student feedback system
 
Outcome Based Education (OBE) - A practitioner's experience
Outcome Based Education (OBE) - A  practitioner's experienceOutcome Based Education (OBE) - A  practitioner's experience
Outcome Based Education (OBE) - A practitioner's experience
 
The application of computer aided learning to learn basic concepts of branchi...
The application of computer aided learning to learn basic concepts of branchi...The application of computer aided learning to learn basic concepts of branchi...
The application of computer aided learning to learn basic concepts of branchi...
 
Waterfall Model
Waterfall ModelWaterfall Model
Waterfall Model
 
An Approach To Meeting The ICT Requirements Of The Social Work Degree
An Approach To Meeting The ICT Requirements Of The Social Work DegreeAn Approach To Meeting The ICT Requirements Of The Social Work Degree
An Approach To Meeting The ICT Requirements Of The Social Work Degree
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Itec410 lec01
Itec410 lec01Itec410 lec01
Itec410 lec01
 
402-IT-X-2022-23 TERMWISE SYLLABUS.pdf
402-IT-X-2022-23 TERMWISE SYLLABUS.pdf402-IT-X-2022-23 TERMWISE SYLLABUS.pdf
402-IT-X-2022-23 TERMWISE SYLLABUS.pdf
 
Project Guidelines-LMU TOPUP.pptx
Project Guidelines-LMU TOPUP.pptxProject Guidelines-LMU TOPUP.pptx
Project Guidelines-LMU TOPUP.pptx
 
Final ec2 kt
Final ec2 ktFinal ec2 kt
Final ec2 kt
 
Eeri 314 pec 2013
Eeri 314 pec 2013Eeri 314 pec 2013
Eeri 314 pec 2013
 
Ict3612 102 1_2018
Ict3612 102 1_2018Ict3612 102 1_2018
Ict3612 102 1_2018
 
Icare id model ppt
Icare id model pptIcare id model ppt
Icare id model ppt
 
Melbourne t1 2016-assignment_2_mn504
Melbourne   t1 2016-assignment_2_mn504Melbourne   t1 2016-assignment_2_mn504
Melbourne t1 2016-assignment_2_mn504
 

More from Grial - University of Salamanca

Gender mainstreaming in Engineering Education
Gender mainstreaming in Engineering EducationGender mainstreaming in Engineering Education
Gender mainstreaming in Engineering Education
Grial - University of Salamanca
 
Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...
Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...
Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...
Grial - University of Salamanca
 
Mesa redonda Género y Diversidad - Robótica e inclusión
Mesa redonda Género y Diversidad - Robótica e inclusiónMesa redonda Género y Diversidad - Robótica e inclusión
Mesa redonda Género y Diversidad - Robótica e inclusión
Grial - University of Salamanca
 
Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV
Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV
Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV
Grial - University of Salamanca
 
Study for the improvement of the Moroccan public higher education system base...
Study for the improvement of the Moroccan public higher education system base...Study for the improvement of the Moroccan public higher education system base...
Study for the improvement of the Moroccan public higher education system base...
Grial - University of Salamanca
 
Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)
Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)
Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)
Grial - University of Salamanca
 
Facilitating access to the role models of women in STEM: W-STEM mobile app
Facilitating access to the role models of women in STEM: W-STEM mobile appFacilitating access to the role models of women in STEM: W-STEM mobile app
Facilitating access to the role models of women in STEM: W-STEM mobile app
Grial - University of Salamanca
 
Perception of the gender gap in computer engineering studies: a comparative s...
Perception of the gender gap in computer engineering studies: a comparative s...Perception of the gender gap in computer engineering studies: a comparative s...
Perception of the gender gap in computer engineering studies: a comparative s...
Grial - University of Salamanca
 
Young people participation in the Digital Society: a case study in Brazil
Young people participation in the Digital Society: a case study in BrazilYoung people participation in the Digital Society: a case study in Brazil
Young people participation in the Digital Society: a case study in Brazil
Grial - University of Salamanca
 
Gender equality in STEM programs: a proposal to analyse the situation of a un...
Gender equality in STEM programs: a proposal to analyse the situation of a un...Gender equality in STEM programs: a proposal to analyse the situation of a un...
Gender equality in STEM programs: a proposal to analyse the situation of a un...
Grial - University of Salamanca
 
Equity in mathematical modelling education: a literature review
Equity in mathematical modelling education: a literature reviewEquity in mathematical modelling education: a literature review
Equity in mathematical modelling education: a literature review
Grial - University of Salamanca
 
Engaging women into STEM in Latin America: W-STEM project
Engaging women into STEM in Latin America: W-STEM projectEngaging women into STEM in Latin America: W-STEM project
Engaging women into STEM in Latin America: W-STEM project
Grial - University of Salamanca
 
Estudio piloto sobre la percepción de la brecha de género en estudios de inge...
Estudio piloto sobre la percepción de la brecha de género en estudios de inge...Estudio piloto sobre la percepción de la brecha de género en estudios de inge...
Estudio piloto sobre la percepción de la brecha de género en estudios de inge...
Grial - University of Salamanca
 
La brecha de género en el sector STEM en Latino América: una propuesta europea
La brecha de género en el sector STEM en Latino América: una propuesta europeaLa brecha de género en el sector STEM en Latino América: una propuesta europea
La brecha de género en el sector STEM en Latino América: una propuesta europea
Grial - University of Salamanca
 
Desayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USAL
Desayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USALDesayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USAL
Desayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USAL
Grial - University of Salamanca
 
HIPPOCAMPUS project: usability study
HIPPOCAMPUS project: usability studyHIPPOCAMPUS project: usability study
HIPPOCAMPUS project: usability study
Grial - University of Salamanca
 
An app to support yoga teachers to implement a yoga-based approach to promote...
An app to support yoga teachers to implement a yoga-based approach to promote...An app to support yoga teachers to implement a yoga-based approach to promote...
An app to support yoga teachers to implement a yoga-based approach to promote...
Grial - University of Salamanca
 
Ecosistema tecnológico WYRED - Estudios de usabilidad
Ecosistema tecnológico WYRED - Estudios de usabilidadEcosistema tecnológico WYRED - Estudios de usabilidad
Ecosistema tecnológico WYRED - Estudios de usabilidad
Grial - University of Salamanca
 
Age influence in gender stereotypes related to Internet use in young people: ...
Age influence in gender stereotypes related to Internet use in young people: ...Age influence in gender stereotypes related to Internet use in young people: ...
Age influence in gender stereotypes related to Internet use in young people: ...
Grial - University of Salamanca
 
Percepción de los estereotipos de género asociados al uso de Internet en estu...
Percepción de los estereotipos de género asociados al uso de Internet en estu...Percepción de los estereotipos de género asociados al uso de Internet en estu...
Percepción de los estereotipos de género asociados al uso de Internet en estu...
Grial - University of Salamanca
 

More from Grial - University of Salamanca (20)

Gender mainstreaming in Engineering Education
Gender mainstreaming in Engineering EducationGender mainstreaming in Engineering Education
Gender mainstreaming in Engineering Education
 
Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...
Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...
Mesa redonda Género y Diversidad - Importancia de exponer a los jóvenes a rol...
 
Mesa redonda Género y Diversidad - Robótica e inclusión
Mesa redonda Género y Diversidad - Robótica e inclusiónMesa redonda Género y Diversidad - Robótica e inclusión
Mesa redonda Género y Diversidad - Robótica e inclusión
 
Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV
Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV
Mesa redonda Género y Diversidad - Cátedra de brecha digital de género GVA-UV
 
Study for the improvement of the Moroccan public higher education system base...
Study for the improvement of the Moroccan public higher education system base...Study for the improvement of the Moroccan public higher education system base...
Study for the improvement of the Moroccan public higher education system base...
 
Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)
Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)
Taller de WordPress en el Máster TIC de la USAL (Actualizado 2020)
 
Facilitating access to the role models of women in STEM: W-STEM mobile app
Facilitating access to the role models of women in STEM: W-STEM mobile appFacilitating access to the role models of women in STEM: W-STEM mobile app
Facilitating access to the role models of women in STEM: W-STEM mobile app
 
Perception of the gender gap in computer engineering studies: a comparative s...
Perception of the gender gap in computer engineering studies: a comparative s...Perception of the gender gap in computer engineering studies: a comparative s...
Perception of the gender gap in computer engineering studies: a comparative s...
 
Young people participation in the Digital Society: a case study in Brazil
Young people participation in the Digital Society: a case study in BrazilYoung people participation in the Digital Society: a case study in Brazil
Young people participation in the Digital Society: a case study in Brazil
 
Gender equality in STEM programs: a proposal to analyse the situation of a un...
Gender equality in STEM programs: a proposal to analyse the situation of a un...Gender equality in STEM programs: a proposal to analyse the situation of a un...
Gender equality in STEM programs: a proposal to analyse the situation of a un...
 
Equity in mathematical modelling education: a literature review
Equity in mathematical modelling education: a literature reviewEquity in mathematical modelling education: a literature review
Equity in mathematical modelling education: a literature review
 
Engaging women into STEM in Latin America: W-STEM project
Engaging women into STEM in Latin America: W-STEM projectEngaging women into STEM in Latin America: W-STEM project
Engaging women into STEM in Latin America: W-STEM project
 
Estudio piloto sobre la percepción de la brecha de género en estudios de inge...
Estudio piloto sobre la percepción de la brecha de género en estudios de inge...Estudio piloto sobre la percepción de la brecha de género en estudios de inge...
Estudio piloto sobre la percepción de la brecha de género en estudios de inge...
 
La brecha de género en el sector STEM en Latino América: una propuesta europea
La brecha de género en el sector STEM en Latino América: una propuesta europeaLa brecha de género en el sector STEM en Latino América: una propuesta europea
La brecha de género en el sector STEM en Latino América: una propuesta europea
 
Desayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USAL
Desayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USALDesayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USAL
Desayuno de mujeres investigadoras - I Jornadas de Buenas Prácticas USAL
 
HIPPOCAMPUS project: usability study
HIPPOCAMPUS project: usability studyHIPPOCAMPUS project: usability study
HIPPOCAMPUS project: usability study
 
An app to support yoga teachers to implement a yoga-based approach to promote...
An app to support yoga teachers to implement a yoga-based approach to promote...An app to support yoga teachers to implement a yoga-based approach to promote...
An app to support yoga teachers to implement a yoga-based approach to promote...
 
Ecosistema tecnológico WYRED - Estudios de usabilidad
Ecosistema tecnológico WYRED - Estudios de usabilidadEcosistema tecnológico WYRED - Estudios de usabilidad
Ecosistema tecnológico WYRED - Estudios de usabilidad
 
Age influence in gender stereotypes related to Internet use in young people: ...
Age influence in gender stereotypes related to Internet use in young people: ...Age influence in gender stereotypes related to Internet use in young people: ...
Age influence in gender stereotypes related to Internet use in young people: ...
 
Percepción de los estereotipos de género asociados al uso de Internet en estu...
Percepción de los estereotipos de género asociados al uso de Internet en estu...Percepción de los estereotipos de género asociados al uso de Internet en estu...
Percepción de los estereotipos de género asociados al uso de Internet en estu...
 

Recently uploaded

Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
Jisc
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
TechSoup
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
EduSkills OECD
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
Mohammed Sikander
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
EugeneSaldivar
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
Balvir Singh
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Atul Kumar Singh
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
Tamralipta Mahavidyalaya
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
DhatriParmar
 
STRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBC
STRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBCSTRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBC
STRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBC
kimdan468
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
Marketing internship report file for MBA
Marketing internship report file for MBAMarketing internship report file for MBA
Marketing internship report file for MBA
gb193092
 

Recently uploaded (20)

Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
 
STRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBC
STRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBCSTRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBC
STRAND 3 HYGIENIC PRACTICES.pptx GRADE 7 CBC
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
Marketing internship report file for MBA
Marketing internship report file for MBAMarketing internship report file for MBA
Marketing internship report file for MBA
 

C4 model in a Software Engineering subject to ease the comprehension of UML and the software development process

  • 1. C4 model in a Software Engineering subject to ease the comprehension of UML and the software development process Andrea Vázquez-Ingelmo1, Alicia García-Holgado1, Francisco J. García-Peñalvo1 1GRIAL Research Group. University of Salamanca {andreavazquez, aliciagh, fgarcia}@usal.es EDUCON 2020
  • 2. Contents 1. Introduction 2. Objective 3. Context 4. The problem 5. The C4 Model 6. Actions 7. C4 Model application example 8. Discussion and conclusions
  • 3. 1. Introduction • Software Engineering I is a mandatory subject in the second semester of the Degree in Computer Science at the University of Salamanca (Spain) • At this point, they have already acquired programming and computational skills
  • 4. 1. Introduction • The higher levels of abstraction required by software engineering makes it complex for the students and also challenging to teach • In previous years, different changes have been introduced in the teaching methods, like Project-Based Learning (PBL) and active methodologies • Although that, students are still facing difficulties with one of the core contents of the subject: UML
  • 5. 1. Introduction • One of the main difficulties faced is the gap that students perceive between the systems they model and the systems they have actually coded
  • 6. 2. Objective This paper proposes the introduction of a new approach for documenting software as a complement of UML in the subject of Software Engineering I: the C4 model
  • 7. 3. Context • The whole course is driven by milestones following the software development process • These milestones are Requirements elicitation Domain model Use-case realization
  • 8. 3. Context • The sessions in which UML is explained are structured following this model 1. Use-case diagrams are presented to lay the foundations of requirement elicitation 2. Class diagrams are explained at analysis level, omitting implementation-level details 3. Sequence and communication diagrams are introduced
  • 9. 3. Context • Students must apply the acquired knowledge to analyze and document their own information system (their final project) • For this project, teachers propose a generic goal that the system must accomplish • Students have the freedom to design any type of system that lets users reaching the goal
  • 10. 4. The problem • One of the main issues students face is the conceptualization of the system • If the conceptualization phase is poorly carried out, it could affect the rest of the phases, given the incremental nature of the project • The C4 model offers a syntax that could make the conceptualization and abstraction of a system’s functionality a less convoluted task
  • 11. 5. The C4 model • C4 model divides the system in four levels • Each of these levels is focused on a certain perspective of the system • The C4 Model was defined by Simon Brown https://c4model.com/ Context Containers Components Code
  • 12. 5. The C4 model
  • 13. 6. Actions • Introduction of the C4 model at the requirements elicitation phase • The simplified syntax of the C4 model is set to help them identify main actors, external systems and internal components • The two first levels of the C4 model are employed, letting students design their systems at high-level Requirements elicitation
  • 14. 6. Actions • At the end of the semester, when students have developed their final project, they are asked to do another C4 model of the final system • This C4 model should be similar to the one developed at the beginning, but with the specific components that are part of their solution
  • 15. 7. C4 model application example • During the 2018-2019 course, the final project consisted in designing a system that accomplish the goal of promoting diversity in business contexts • Although the ideas fulfilled the project requirements, students had trouble documenting them with UML • Using the C4 model, students could combine the static nature of the system with its functionality, easing the recognition of conceptual classes and use cases
  • 16. 7. C4 model application example Context view of a proposed inclusive hiring system using the C4 model
  • 17. 7. C4 model application example Container view of a proposed inclusive hiring system using the C4 model
  • 18. 7. C4 model application example • Functionality of the user management container outlined in the C4 model
  • 19. 7. C4 model application example • By detecting the relationships among containers at the first stage of the project, students can rely on these associations and the information requirements of each container to build their domain model • Finally, the third milestone is focused on the development of interaction diagrams • These can be easily added to the C4 model at its last level (code-level), relating them to the specific use-cases hold in a container
  • 20. 7. C4 model application example Sequence diagram that represents the modification of business data within the proposed hiring system
  • 21. 8. Discussion and conclusions • Students encounter a lot of barriers that are drawn across the rest of the milestones if conceptualization issues are not solved at the beginning of the course • This model could help students with the organization of functionalities at the requirements elicitation phase • Students can work with a methodology closer to businesses contexts, that can be understood by the stakeholders • This methodology is also closer to the reality of how systems are being currently developed (e.g., distributed components, communication through API calls, etc.)
  • 22. 8. Discussion and conclusions • The C4 model does not replace the UML language, it wraps and refactors it in more manageable pieces • The fourth level of the C4 model can be represented through UML diagrams • This proposal will be applied in the forthcoming years • The analysis of the learning experience will be carried out in the long-term in order to rely on meaningful samples from different academic years
  • 23. C4 model in a Software Engineering subject to ease the comprehension of UML and the software development process Andrea Vázquez-Ingelmo1, Alicia García-Holgado1, Francisco J. García-Peñalvo1 1GRIAL Research Group. University of Salamanca {andreavazquez, aliciagh, fgarcia}@usal.es EDUCON 2020