SlideShare une entreprise Scribd logo
1  sur  37
Entorno de Calidad
para Software Libre
Octubre 2013

Ing. Jose Diaz Diaz
JOEDAYZ
Acerca de
Ing. José Amadeo Martin Díaz Díaz
CEO JoeDayz.pe & Docente en EPE UPC
Formación
BlueStar Energy (2007)
Bristol Myers Squibb (2006)
Trans Solutions Systems (2003 - 2005)
Telefonica Servicios Internet (2000 - 2002)
Egresado de la Pontificia Universidad Católica del Perú (1994 - 2000)
@jamdiazdiaz
JoeDayz.pe Clientes
JoeDayz.pe Partnership
Agenda
Situación actual
Propuesta
Conclusiones
Situación Actual
Proveedor inicia
servicio

Proveedor
acepta
servicio

Postulan
los
proveedor
es

Se genera un
TDR

Se
selecciona
un
proveedor
QA recibe
los
releases

Se realizan
presentacion
es
parciales

Coordina con
Gestor
por email o
telefono

Proveedor
trabaja en
remoto
o de forma local
Propuesta
Tener un entorno de calidad similar a
cloudbess.com
La implementación se realizara con
software libre
Propuesta
Para este servicio no se ha implementado nexus,
sonar. Eso puede ser una segunda etapa.
Herramientas como Selenium, Mockito, JUnit si
son recomendadas para pruebas unitarias e
integrales. Son entregables que deberá añadir el
proveedor
JMeter es para pruebas de performance y stress
Guías de instalación, uso en un proyecto de
prueba y capacitación
Seguimiento de
incidencias, bugs,
MantisBT es un producto
mejoras una
web que permitirá
mejor comunicación entre
las partes involucradas

Flujo de trabajo: abierto, en
progreso, cerrado,
duplicado sobre alguna
incidencia
Notificaciones por e-mail a
los involucrados
Soporte a archivos
adjuntos
Problemas a solucionar
Las incidencias encontradas quedaran registradas, a través
de, Mantis en la base de datos.
Se sabrá el estado actual de la incidencia: abierta (recién
creada), en progreso, cerrada (atendida). Se puede volver a
abrir una incidencia.
Seguimiento exhaustivo con fechas, involucrados y/o
responsables
A cada incidencia se le adjuntara los documentos
involucrados
No hay limite de usuarios, limite de proyectos.
Controlador de
Versiones
Git es un controlador de
versiones distribuido
Guarda el histórico de
cada proyecto a nivel de
item
Te permite trabajar offline
y online
Manejar diferentes
versiones del proyecto e
integrarlas a demanda
Problemas a solucionar
No mas CDs para compartir los entregables.
Se tiene la historia de cada item del proyecto: fecha de
creación, creador, fecha de modificación, autor de la
modificación.
En caso se desee regresar a una version anterior de un
item del proyecto esto se hace a elección.
Se puede manejar versiones del proyecto. Crear ramas del
proyecto alternativas y luego integrarlas en la rama
principal.
El repositorio se convertirá en el punto de partida para la
integración continua que se va a proponer.
BitBucket
BitBucket es un
servicio en la nube
que brinda el servicio
de hosting para
repositorios Git
Cero administración y
actualización
Seguridad y/o
privacidad de los
fuentes
Problemas a solucionar
Al tener los repositorios en la nube los proveedores y
la organización podrán tener disponibilidad de los
fuentes las 24 horas del día, los 365 días del año
No se necesita adquirir un servidor exclusivo,
aumentar capacidad de almacenamiento, hardware o
tener colaboradores dedicados
Si se debe tener un colaborador que brinde los
permisos, administre las cuentas. Dedicación al
negocio y no distraerse en cuestiones técnicas de
instalación o actualización
Maven
Maven es un gestor de
proyecto
No mas gestión de
dependencias, plugins
manualmente. Maven
hará ese trabajo por
nosotros
Arquitectura estándar,
proceso y flujo de trabajo
estándar para desarrollo
de proyectos
Problemas a solucionar
La gestión de dependencias o librerías va a ser
ordenada y automatizada
Evitar la duplicidad de dependencias
Arquitectura de proyecto estándar acorde a buenas
practicas de la industria y aprendida de tantos
proyectos desarrollados a nivel mundial
Uso de plugins probados y recomendados que
automatizan muchas tareas que manualmente
pueden costar días
Jenkis
Es el actor principal de
nuestra propuesta
Es el servidor de
integración continua
Es quien toma el código
fuente de los repositorios y
ejecuta las tareas
programadas
Brinda información sobre el
estado del proyecto en
línea
Problemas a solucionar
La organización podrá ver día a día el trabajo de
los proveedores en un panel central de tareas
Podrá ver si el proveedor ejecuta tareas de
compilación, prueba y despliegue
Si utiliza las herramientas relacionadas con el
proyecto
JMeter
Aplicación diseñada
para realizar pruebas
de performance
Probar el
comportamiento de
la aplicación web
bajo condiciones de
carga extrema
concurrente
Problemas a solucionar
Esta es una de las pruebas que se detecto que
no se realizan en la organización
Con esta herramienta se podrá ver los limites
de la aplicación en condiciones extremas en un
ambiente similar a producción y ver su
capacidad de atención
JUnit, Mockito, Selenium
Dependencias y
librerías para hacer
pruebas unitarias e
integrales
De uso exclusivo
para desarrolladores
Selenium si puede
ser realizada por
colaboradores de QA
Problemas a solucionar
Hoy por hoy buenas practicas de desarrollo es incluir
pruebas unitarias e integrales (entre otras pruebas)
Hay una garantía de que se ha hecho el esfuerzo por
cumplir los criterios de aceptación de cada historia de
usuario o caso de uso
Se recomienda que al menos existan estas pruebas de
caja blanca en los procesos mas importantes del
proyecto
Estas pruebas luego pueden ser utilizadas por Jenkins
para que de información a los involucrados si las
pruebas no funcionan
No hacer pruebas es como
manejar sin
cinturón de seguridad
Conclusiones
El entorno de calidad no dará opción a que una
consultora no utilice un marco de trabajo y
buenas practicas de desarrollo de software
Brindara información día a día de lo que pasa
con el proyecto y si se esta trabajando con el
Un perfil junior no sabe como hacer pruebas,
integración continua. Eso implicara que los
proveedores deberán tener buenos equipos
Conclusiones
Se debe romper el mito de que esto significa mas tiempo.
Será si un tiempo controlado y se tendrá la información
necesaria para tomar las medidas correctivas en el momento
oportuno
Romper el mito de que entonces con un entorno como este
se debe pagar el 200% del proyecto. Se debe buscar tener
un buen servicio en tiempo y en presupuesto.
El costo de desarrollar un proyecto no es lo mas caro si uno lo
compara con el soporte post producción a lo largo del
tiempo.
Un mal trabajo puede hacer que el proyecto sea insostenible y
en consecuencia se cancele. Un buen proyecto hará que las
actualizaciones y mejoras sean en tiempos y presupuestos
justos.
Gracias por su atención

JOEDAYZ
www.joedayz.pe
Ing. Jose Diaz

Contenu connexe

Tendances

Ejecutando proyectos de innovación tecnológica de software en intel
Ejecutando proyectos de innovación tecnológica de software en intelEjecutando proyectos de innovación tecnológica de software en intel
Ejecutando proyectos de innovación tecnológica de software en intelHospital Español
 
Programación extrema [XP]
Programación extrema [XP]Programación extrema [XP]
Programación extrema [XP]Agustín
 
Modelos de Negocio con Software Libre 5/6 Usuarios
Modelos de Negocio con Software Libre 5/6 UsuariosModelos de Negocio con Software Libre 5/6 Usuarios
Modelos de Negocio con Software Libre 5/6 UsuariosSergio Montoro Ten
 
Metodologías agiles
Metodologías agilesMetodologías agiles
Metodologías agilesloreeleeii
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agilesmmanuelo
 
Libro Ingeniería del Software
Libro Ingeniería del SoftwareLibro Ingeniería del Software
Libro Ingeniería del SoftwareGiovanny Guillen
 
8.6 Resolución del Caso.
8.6 Resolución del Caso.8.6 Resolución del Caso.
8.6 Resolución del Caso.Brox Technology
 
Propuesta de como dar un soporte con rapidez
Propuesta de como dar un soporte con rapidezPropuesta de como dar un soporte con rapidez
Propuesta de como dar un soporte con rapidezdleon0920
 
Crisis de software
Crisis de softwareCrisis de software
Crisis de softwareandreslarals
 

Tendances (14)

Ejecutando proyectos de innovación tecnológica de software en intel
Ejecutando proyectos de innovación tecnológica de software en intelEjecutando proyectos de innovación tecnológica de software en intel
Ejecutando proyectos de innovación tecnológica de software en intel
 
Evolucion del software crisis y mitos
Evolucion del software crisis y mitosEvolucion del software crisis y mitos
Evolucion del software crisis y mitos
 
Metodologías Agiles
Metodologías AgilesMetodologías Agiles
Metodologías Agiles
 
14.administración de la calidad
14.administración de la calidad14.administración de la calidad
14.administración de la calidad
 
Scrum
ScrumScrum
Scrum
 
Programación extrema [XP]
Programación extrema [XP]Programación extrema [XP]
Programación extrema [XP]
 
Modelos de Negocio con Software Libre 5/6 Usuarios
Modelos de Negocio con Software Libre 5/6 UsuariosModelos de Negocio con Software Libre 5/6 Usuarios
Modelos de Negocio con Software Libre 5/6 Usuarios
 
Metodologías agiles
Metodologías agilesMetodologías agiles
Metodologías agiles
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
prog
progprog
prog
 
Libro Ingeniería del Software
Libro Ingeniería del SoftwareLibro Ingeniería del Software
Libro Ingeniería del Software
 
8.6 Resolución del Caso.
8.6 Resolución del Caso.8.6 Resolución del Caso.
8.6 Resolución del Caso.
 
Propuesta de como dar un soporte con rapidez
Propuesta de como dar un soporte con rapidezPropuesta de como dar un soporte con rapidez
Propuesta de como dar un soporte con rapidez
 
Crisis de software
Crisis de softwareCrisis de software
Crisis de software
 

En vedette

Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011
Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011
Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_201125karen
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016Andrew Chen
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsBarry Feldman
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome EconomyHelge Tennø
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your BusinessBarry Feldman
 

En vedette (6)

biologi
biologibiologi
biologi
 
Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011
Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011
Guia cnaturales 1_basico_semana5_los_seres_vivos_marzo_2011
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post Formats
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Similaire à Entorno de Calidad de Software Libre con Jenkins

Caminando hacia la agilidad con Visual Studio 2010
Caminando hacia la agilidad con Visual Studio 2010Caminando hacia la agilidad con Visual Studio 2010
Caminando hacia la agilidad con Visual Studio 2010Rodrigo Corral
 
ALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas PrácticasALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas PrácticasRodrigo Corral
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativojorge paez
 
PROCESO DE DESARROLLO DE SOFTWARE.pptx
PROCESO DE DESARROLLO DE SOFTWARE.pptxPROCESO DE DESARROLLO DE SOFTWARE.pptx
PROCESO DE DESARROLLO DE SOFTWARE.pptxjuan gonzalez
 
Procesos de evolución del software
Procesos de evolución del softwareProcesos de evolución del software
Procesos de evolución del softwareuriel plata
 
Desarrollode software (1)
Desarrollode software (1)Desarrollode software (1)
Desarrollode software (1)turlahackers
 
Desarrollo rápido de aplicaciones (rad)
Desarrollo rápido de aplicaciones (rad)Desarrollo rápido de aplicaciones (rad)
Desarrollo rápido de aplicaciones (rad)Jean Carlos Toa
 
Modelo Descrptivos Del Proceso Del Sofware
Modelo Descrptivos  Del  Proceso Del SofwareModelo Descrptivos  Del  Proceso Del Sofware
Modelo Descrptivos Del Proceso Del Sofwareluisfe
 
2.- Introducción y Tipos de sistemas de información (2).ppt
2.- Introducción y Tipos de sistemas de información (2).ppt2.- Introducción y Tipos de sistemas de información (2).ppt
2.- Introducción y Tipos de sistemas de información (2).pptMatasEnriqueFarasPea
 
Desarrollo de Software por www.jasoftsolutions.com
Desarrollo de Software por www.jasoftsolutions.comDesarrollo de Software por www.jasoftsolutions.com
Desarrollo de Software por www.jasoftsolutions.comJosé Luis Lee Rázuri
 
Una introducción a ontimize
Una introducción a ontimizeUna introducción a ontimize
Una introducción a ontimizeontimize
 

Similaire à Entorno de Calidad de Software Libre con Jenkins (20)

El coste de no usar integración continua
El coste de no usar integración continuaEl coste de no usar integración continua
El coste de no usar integración continua
 
Caminando hacia la agilidad con Visual Studio 2010
Caminando hacia la agilidad con Visual Studio 2010Caminando hacia la agilidad con Visual Studio 2010
Caminando hacia la agilidad con Visual Studio 2010
 
ALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas PrácticasALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas Prácticas
 
GENEX
GENEXGENEX
GENEX
 
Sesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-softwareSesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-software
 
Programación extrema (xp)
Programación extrema (xp)Programación extrema (xp)
Programación extrema (xp)
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Proceso desarrollo software
Proceso desarrollo softwareProceso desarrollo software
Proceso desarrollo software
 
PROCESO DE DESARROLLO DE SOFTWARE.pptx
PROCESO DE DESARROLLO DE SOFTWARE.pptxPROCESO DE DESARROLLO DE SOFTWARE.pptx
PROCESO DE DESARROLLO DE SOFTWARE.pptx
 
Mitos de-software.
Mitos de-software.Mitos de-software.
Mitos de-software.
 
Procesos de evolución del software
Procesos de evolución del softwareProcesos de evolución del software
Procesos de evolución del software
 
Desarrollode software (1)
Desarrollode software (1)Desarrollode software (1)
Desarrollode software (1)
 
Desarrollo rápido de aplicaciones (rad)
Desarrollo rápido de aplicaciones (rad)Desarrollo rápido de aplicaciones (rad)
Desarrollo rápido de aplicaciones (rad)
 
Modelo Descrptivos Del Proceso Del Sofware
Modelo Descrptivos  Del  Proceso Del SofwareModelo Descrptivos  Del  Proceso Del Sofware
Modelo Descrptivos Del Proceso Del Sofware
 
Crystal Clear
Crystal ClearCrystal Clear
Crystal Clear
 
Presentacion fdd
Presentacion fddPresentacion fdd
Presentacion fdd
 
DevOps: una breve introducción
DevOps: una breve introducciónDevOps: una breve introducción
DevOps: una breve introducción
 
2.- Introducción y Tipos de sistemas de información (2).ppt
2.- Introducción y Tipos de sistemas de información (2).ppt2.- Introducción y Tipos de sistemas de información (2).ppt
2.- Introducción y Tipos de sistemas de información (2).ppt
 
Desarrollo de Software por www.jasoftsolutions.com
Desarrollo de Software por www.jasoftsolutions.comDesarrollo de Software por www.jasoftsolutions.com
Desarrollo de Software por www.jasoftsolutions.com
 
Una introducción a ontimize
Una introducción a ontimizeUna introducción a ontimize
Una introducción a ontimize
 

Dernier

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
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
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
 
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
 
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
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
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
 
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
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
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
 

Dernier (15)

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
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
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
 
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
 
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
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
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
 
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
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.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
 

Entorno de Calidad de Software Libre con Jenkins

  • 1. Entorno de Calidad para Software Libre Octubre 2013 Ing. Jose Diaz Diaz JOEDAYZ
  • 2. Acerca de Ing. José Amadeo Martin Díaz Díaz CEO JoeDayz.pe & Docente en EPE UPC Formación BlueStar Energy (2007) Bristol Myers Squibb (2006) Trans Solutions Systems (2003 - 2005) Telefonica Servicios Internet (2000 - 2002) Egresado de la Pontificia Universidad Católica del Perú (1994 - 2000) @jamdiazdiaz
  • 8. QA recibe los releases Se realizan presentacion es parciales Coordina con Gestor por email o telefono Proveedor trabaja en remoto o de forma local
  • 10. Tener un entorno de calidad similar a cloudbess.com
  • 11. La implementación se realizara con software libre
  • 12. Propuesta Para este servicio no se ha implementado nexus, sonar. Eso puede ser una segunda etapa. Herramientas como Selenium, Mockito, JUnit si son recomendadas para pruebas unitarias e integrales. Son entregables que deberá añadir el proveedor JMeter es para pruebas de performance y stress Guías de instalación, uso en un proyecto de prueba y capacitación
  • 13. Seguimiento de incidencias, bugs, MantisBT es un producto mejoras una web que permitirá mejor comunicación entre las partes involucradas Flujo de trabajo: abierto, en progreso, cerrado, duplicado sobre alguna incidencia Notificaciones por e-mail a los involucrados Soporte a archivos adjuntos
  • 14.
  • 15. Problemas a solucionar Las incidencias encontradas quedaran registradas, a través de, Mantis en la base de datos. Se sabrá el estado actual de la incidencia: abierta (recién creada), en progreso, cerrada (atendida). Se puede volver a abrir una incidencia. Seguimiento exhaustivo con fechas, involucrados y/o responsables A cada incidencia se le adjuntara los documentos involucrados No hay limite de usuarios, limite de proyectos.
  • 16. Controlador de Versiones Git es un controlador de versiones distribuido Guarda el histórico de cada proyecto a nivel de item Te permite trabajar offline y online Manejar diferentes versiones del proyecto e integrarlas a demanda
  • 17.
  • 18. Problemas a solucionar No mas CDs para compartir los entregables. Se tiene la historia de cada item del proyecto: fecha de creación, creador, fecha de modificación, autor de la modificación. En caso se desee regresar a una version anterior de un item del proyecto esto se hace a elección. Se puede manejar versiones del proyecto. Crear ramas del proyecto alternativas y luego integrarlas en la rama principal. El repositorio se convertirá en el punto de partida para la integración continua que se va a proponer.
  • 19. BitBucket BitBucket es un servicio en la nube que brinda el servicio de hosting para repositorios Git Cero administración y actualización Seguridad y/o privacidad de los fuentes
  • 20. Problemas a solucionar Al tener los repositorios en la nube los proveedores y la organización podrán tener disponibilidad de los fuentes las 24 horas del día, los 365 días del año No se necesita adquirir un servidor exclusivo, aumentar capacidad de almacenamiento, hardware o tener colaboradores dedicados Si se debe tener un colaborador que brinde los permisos, administre las cuentas. Dedicación al negocio y no distraerse en cuestiones técnicas de instalación o actualización
  • 21.
  • 22. Maven Maven es un gestor de proyecto No mas gestión de dependencias, plugins manualmente. Maven hará ese trabajo por nosotros Arquitectura estándar, proceso y flujo de trabajo estándar para desarrollo de proyectos
  • 23.
  • 24. Problemas a solucionar La gestión de dependencias o librerías va a ser ordenada y automatizada Evitar la duplicidad de dependencias Arquitectura de proyecto estándar acorde a buenas practicas de la industria y aprendida de tantos proyectos desarrollados a nivel mundial Uso de plugins probados y recomendados que automatizan muchas tareas que manualmente pueden costar días
  • 25. Jenkis Es el actor principal de nuestra propuesta Es el servidor de integración continua Es quien toma el código fuente de los repositorios y ejecuta las tareas programadas Brinda información sobre el estado del proyecto en línea
  • 26.
  • 27. Problemas a solucionar La organización podrá ver día a día el trabajo de los proveedores en un panel central de tareas Podrá ver si el proveedor ejecuta tareas de compilación, prueba y despliegue Si utiliza las herramientas relacionadas con el proyecto
  • 28.
  • 29. JMeter Aplicación diseñada para realizar pruebas de performance Probar el comportamiento de la aplicación web bajo condiciones de carga extrema concurrente
  • 30.
  • 31. Problemas a solucionar Esta es una de las pruebas que se detecto que no se realizan en la organización Con esta herramienta se podrá ver los limites de la aplicación en condiciones extremas en un ambiente similar a producción y ver su capacidad de atención
  • 32. JUnit, Mockito, Selenium Dependencias y librerías para hacer pruebas unitarias e integrales De uso exclusivo para desarrolladores Selenium si puede ser realizada por colaboradores de QA
  • 33. Problemas a solucionar Hoy por hoy buenas practicas de desarrollo es incluir pruebas unitarias e integrales (entre otras pruebas) Hay una garantía de que se ha hecho el esfuerzo por cumplir los criterios de aceptación de cada historia de usuario o caso de uso Se recomienda que al menos existan estas pruebas de caja blanca en los procesos mas importantes del proyecto Estas pruebas luego pueden ser utilizadas por Jenkins para que de información a los involucrados si las pruebas no funcionan
  • 34. No hacer pruebas es como manejar sin cinturón de seguridad
  • 35. Conclusiones El entorno de calidad no dará opción a que una consultora no utilice un marco de trabajo y buenas practicas de desarrollo de software Brindara información día a día de lo que pasa con el proyecto y si se esta trabajando con el Un perfil junior no sabe como hacer pruebas, integración continua. Eso implicara que los proveedores deberán tener buenos equipos
  • 36. Conclusiones Se debe romper el mito de que esto significa mas tiempo. Será si un tiempo controlado y se tendrá la información necesaria para tomar las medidas correctivas en el momento oportuno Romper el mito de que entonces con un entorno como este se debe pagar el 200% del proyecto. Se debe buscar tener un buen servicio en tiempo y en presupuesto. El costo de desarrollar un proyecto no es lo mas caro si uno lo compara con el soporte post producción a lo largo del tiempo. Un mal trabajo puede hacer que el proyecto sea insostenible y en consecuencia se cancele. Un buen proyecto hará que las actualizaciones y mejoras sean en tiempos y presupuestos justos.
  • 37. Gracias por su atención JOEDAYZ www.joedayz.pe Ing. Jose Diaz