SlideShare una empresa de Scribd logo
1 de 18
Diseñando un método para generar
sugerencias de mensajes de commit
automáticamente basado en técnicas de
procesamiento de lenguaje natural
Autor: Luis Fernando Cortes Coy
Director: Jairo Aponte y Mario Linares Vasquez
Grupo de investigación: ColSWE
Agenda
1.Problema de investigación
1.1 Justificación
1.2 Definición
2. Objetivos
2.1 General
2.2 Específicos
3. Metodología
4. Preguntas
Problema de investigación
Justificación (1)
• VCS son ampliamente usados en la industria del
software.
• Las aplicaciones cambian continuamente (Medio
ambiente cambiante).
Justificación (2)
Respaldo de
información
Versionar los
artefactos de
software
Repositorio de
la evolución del
software
Sistemas de control de versiones
Justificación (3)
Peter Hallam. What do programmers really do
anyway?. Microsoft Developer Network- C#
compiler.2006.
2%
20%
78%
New code
Modifying existing
Understanding code
Justificación (4)
Es importante mantener la historia de un software para reconstruir las
intenciones originales, y los cambios posteriores.
Justificación (5)
Cómo los desarrolladores documentan los cambios
realizados al código fuente?
“Bug 494847 - Kill MTBF, r=dbaron”
(Phil Ringnalda - Mozilla)
“A11Y issue #77407 fixed.”
(ppis@netbeans.org - Netbeans)
“empty”
(author - Chrome)
“The same issue as in #41049”
(ppisl@netbeans.org - Netbeans)
Definición del problema
Cómo generar automáticamente el comentario del
commit para resolver el problema de la existencia de
comentarios vacíos o no descriptivos en los sistemas
de control de versiones?
Objetivos
Objetivo general
Diseñar una método basado en técnicas de
procesamiento de lenguaje natural para generar
automáticamente sugerencias del comentario del
commit en aplicaciones Java
Objetivos específicos (1)
●
Identificar y estudiar técnicas
➢
Análisis sintáctico del código fuente.
➢
Análisis semántico
➢
Procesamiento de lenguaje natural.
●
Identificar cuales técnicas del estudio previo son útiles
en la generación automática del comentario del
commit.
Objetivos específicos (2)
●
Construir una herramienta utilizando el método
diseñado.
●
Evaluar la utilidad del comentario de commit
generado por la herramienta
Metodología
Proceso (1)
1. Realizar la revisión sistemática de la literatura
relacionada con:
➢
Análisis sintáctico.
➢
Análisis semántico.
➢
Generación de resúmenes de texto y código fuente.
➢
Procesamiento del lenguaje natural.
2. Análisis de las técnicas encontradas.
Proceso (2)
3. Establecer la información que es útil y necesaria en el
mensaje del commit para que este sea útil y relevante.
4. Diseñar el método de generación automática de
comentarios de commit.
5. Identificar y seleccionar un IDE y un VCS.
Proceso (3)
6. Construir una herramienta que implemente el
método diseñado.
7. Diseñar y aplicar un caso de estudio para evaluar la
utilidad del método creado.
Preguntas?

Más contenido relacionado

Similar a Método automático para la generación de comentarios de commit

Lp II clase01 - Desarrollo de software con RUP
Lp II   clase01 - Desarrollo de software con RUPLp II   clase01 - Desarrollo de software con RUP
Lp II clase01 - Desarrollo de software con RUPAngelDX
 
01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_software01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_softwarePaola Galindo
 
Trabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueTrabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueJosue Zelaya
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónMaritere Cruz
 
Desarrollo rapido de software libre de alta calidad UOC 2015 tesis maestria
Desarrollo rapido de software libre de alta calidad UOC 2015 tesis maestriaDesarrollo rapido de software libre de alta calidad UOC 2015 tesis maestria
Desarrollo rapido de software libre de alta calidad UOC 2015 tesis maestriaMariano Reingart
 
01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptx01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptxDyllanBastidas
 
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva  Software por Jhonatan RuizTrabajo diapositiva  Software por Jhonatan Ruiz
Trabajo diapositiva Software por Jhonatan Ruizjhonatanalex
 
Trabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanTrabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanjhonatanalex
 
Ra semana 1 1
Ra semana 1 1Ra semana 1 1
Ra semana 1 1victdiazm
 
3. practicas de construccioin jessi roc
3.  practicas de construccioin jessi roc3.  practicas de construccioin jessi roc
3. practicas de construccioin jessi rocrossypila
 
Practicas de construccioin
Practicas de construccioinPracticas de construccioin
Practicas de construccioinyadiu
 
Especificacion software
Especificacion softwareEspecificacion software
Especificacion softwareinfobran
 
Especificacion software
Especificacion softwareEspecificacion software
Especificacion softwareinfobran
 

Similar a Método automático para la generación de comentarios de commit (20)

Introduccion al desarrollo
Introduccion al desarrolloIntroduccion al desarrollo
Introduccion al desarrollo
 
Lp II clase01 - Desarrollo de software con RUP
Lp II   clase01 - Desarrollo de software con RUPLp II   clase01 - Desarrollo de software con RUP
Lp II clase01 - Desarrollo de software con RUP
 
01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_software01 el proceso-de_desarrollo_de_software
01 el proceso-de_desarrollo_de_software
 
Trabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueTrabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josue
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Desarrollo rapido de software libre de alta calidad UOC 2015 tesis maestria
Desarrollo rapido de software libre de alta calidad UOC 2015 tesis maestriaDesarrollo rapido de software libre de alta calidad UOC 2015 tesis maestria
Desarrollo rapido de software libre de alta calidad UOC 2015 tesis maestria
 
Ingeniería de software
Ingeniería de software Ingeniería de software
Ingeniería de software
 
01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptx01 T1 2021 Sistemas Embebidos.pptx
01 T1 2021 Sistemas Embebidos.pptx
 
Metodologia watch
Metodologia watchMetodologia watch
Metodologia watch
 
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva  Software por Jhonatan RuizTrabajo diapositiva  Software por Jhonatan Ruiz
Trabajo diapositiva Software por Jhonatan Ruiz
 
Trabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanTrabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatan
 
Ra semana 1 1
Ra semana 1 1Ra semana 1 1
Ra semana 1 1
 
TECNOLOGÍA
TECNOLOGÍATECNOLOGÍA
TECNOLOGÍA
 
introducción ingeniería de software
introducción  ingeniería de  softwareintroducción  ingeniería de  software
introducción ingeniería de software
 
3. practicas de construccioin jessi roc
3.  practicas de construccioin jessi roc3.  practicas de construccioin jessi roc
3. practicas de construccioin jessi roc
 
Practicas de construccioin
Practicas de construccioinPracticas de construccioin
Practicas de construccioin
 
Especificacion software
Especificacion softwareEspecificacion software
Especificacion software
 
Especificacion software
Especificacion softwareEspecificacion software
Especificacion software
 
Especificacion software
Especificacion softwareEspecificacion software
Especificacion software
 
Especificacion software
Especificacion softwareEspecificacion software
Especificacion software
 

Último

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
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
 
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
 
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
 
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
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
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
 
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
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
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
 
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
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
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
 

Último (15)

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.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
 
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)
 
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...
 
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
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
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
 
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
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
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
 
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
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
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
 

Método automático para la generación de comentarios de commit

  • 1. Diseñando un método para generar sugerencias de mensajes de commit automáticamente basado en técnicas de procesamiento de lenguaje natural Autor: Luis Fernando Cortes Coy Director: Jairo Aponte y Mario Linares Vasquez Grupo de investigación: ColSWE
  • 2. Agenda 1.Problema de investigación 1.1 Justificación 1.2 Definición 2. Objetivos 2.1 General 2.2 Específicos 3. Metodología 4. Preguntas
  • 4. Justificación (1) • VCS son ampliamente usados en la industria del software. • Las aplicaciones cambian continuamente (Medio ambiente cambiante).
  • 5. Justificación (2) Respaldo de información Versionar los artefactos de software Repositorio de la evolución del software Sistemas de control de versiones
  • 6. Justificación (3) Peter Hallam. What do programmers really do anyway?. Microsoft Developer Network- C# compiler.2006. 2% 20% 78% New code Modifying existing Understanding code
  • 7. Justificación (4) Es importante mantener la historia de un software para reconstruir las intenciones originales, y los cambios posteriores.
  • 8. Justificación (5) Cómo los desarrolladores documentan los cambios realizados al código fuente? “Bug 494847 - Kill MTBF, r=dbaron” (Phil Ringnalda - Mozilla) “A11Y issue #77407 fixed.” (ppis@netbeans.org - Netbeans) “empty” (author - Chrome) “The same issue as in #41049” (ppisl@netbeans.org - Netbeans)
  • 9. Definición del problema Cómo generar automáticamente el comentario del commit para resolver el problema de la existencia de comentarios vacíos o no descriptivos en los sistemas de control de versiones?
  • 11. Objetivo general Diseñar una método basado en técnicas de procesamiento de lenguaje natural para generar automáticamente sugerencias del comentario del commit en aplicaciones Java
  • 12. Objetivos específicos (1) ● Identificar y estudiar técnicas ➢ Análisis sintáctico del código fuente. ➢ Análisis semántico ➢ Procesamiento de lenguaje natural. ● Identificar cuales técnicas del estudio previo son útiles en la generación automática del comentario del commit.
  • 13. Objetivos específicos (2) ● Construir una herramienta utilizando el método diseñado. ● Evaluar la utilidad del comentario de commit generado por la herramienta
  • 15. Proceso (1) 1. Realizar la revisión sistemática de la literatura relacionada con: ➢ Análisis sintáctico. ➢ Análisis semántico. ➢ Generación de resúmenes de texto y código fuente. ➢ Procesamiento del lenguaje natural. 2. Análisis de las técnicas encontradas.
  • 16. Proceso (2) 3. Establecer la información que es útil y necesaria en el mensaje del commit para que este sea útil y relevante. 4. Diseñar el método de generación automática de comentarios de commit. 5. Identificar y seleccionar un IDE y un VCS.
  • 17. Proceso (3) 6. Construir una herramienta que implemente el método diseñado. 7. Diseñar y aplicar un caso de estudio para evaluar la utilidad del método creado.