Upload
edson-chavez
View
5.415
Download
1
Embed Size (px)
DESCRIPTION
Presentacion de introduccion al pensamiento craftsmanship
Citation preview
Software Craftsmanship
Edson ‘Grubhart’ Chávez Montaño
Mail: [email protected]: @grubhartBlog: http://soyfreakytambiengeek.blogspot.com
Quien Soy y por que deberia importar
•Scrum Master Certificado
•Mas de 6 años de Experiencia en desarrollo Java
•Mas de 3 años de Experiencia en metodologías Agiles
•Miembro de la comunidad Agile
•Expositor en Eventos de Agilismo
•Expositor en Eventos sobre Spring Framework
Me importa lo que hago
Que es Craftsmanship?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
¿Cuál es tu profesión?¿Cuál es tu profesión?
El proceso de desarrollo de Software
• Software como Capital• Trabajo de Equipo• Evitar la division del trabajo• No existen las balas de plata ni una solucion
que se ajuste a todo• http://www.sei.cmu.edu/library/assets/
whitepapers/17072009whydontthey.pdf
La Necesidad de un nuevo enfoque
• Arte• Ingenieria• Ciencia• Oficio (Craft)
Nunca Olvidemos
• Desarrollar Software NO es igual que construir un edificio
• Las metodologias no escriben Software• Existe un vacio entre el requerimiento y la
implementacion que no se puede automatizar• Programar != Desarrollar• Desarrollar Software NO ES FACIL• Es necesario ser primero un aprendiz
Aprendizaje
Mentoria
Que hace a alguien Excepcional en lo que hace
Manifiesto
Software Craftsmanship
• No se trata de obtener un título o certificación• Se trata de construir una Reputación
Compromiso
Focus y Ritmo Sostenible
Don’t Be a Hero
Llamado a las armas
Estamos cansados de escribir Basura que funciona
Que es lo que no vamos a hacer
• No pondremos al código en el centro de todo• No nos convertiremos en engreidos e
ignoraremos el negocio y al cliente• No ofreceremos certificaciones baratas• No olvidaremos que nuestro trabajo es
satisfacer a los clientes
Que es lo que vamos a dejar de hacer
• Dejaremos de estafar para cumplir un cronograma.
• Dejaremos de aceptar la vieja mentira de: “Después lo arreglamos”.
• Dejaremos de creer que rápido nos da derecho a hacerlo mal.
• Dejaremos de aceptar la opción de hacerlo mal.• Dejaremos de permitir que nos obliguen a
comportarnos de manera poco profesional.
Que es lo que empezaremos a hacer
• Cumpliremos nuestros cronogramas sabiendo que la unica manera de avanzar rapido es haciendo bien las cosas.
• Complaceremos a nuestros clientes escribiendo el mejor codigo que podamos.
• Honraremos a nuestros empleadores creando el mejor diseño que podamos.
• Honraremos a nuestro equipo testeando todo lo que pueda ser testeado.
• Seremos lo suficientemente humildes como para escribir los tests primero.
• Practicaremos para volvernos mejor en nuestro oficio.
Codigo Limpio - NombresCodigo Limpio - Nombres
• Relación entre tamaño, ambito (scope)• Claro• Evitar contexto innecesario
Codigo Limpio - ParametrosCodigo Limpio - Parametros
• Cantidad• Boolean = false• Orden• Claridad
Codigo Limpio - ComentariosCodigo Limpio - Comentarios
• Buenos Comentarios• Malos Comentarios• Decir el “por que” y no el “que”
Codigo Limpio - FuncionesCodigo Limpio - Funciones
• Una sola cosa• Una cosa tambien es encadenar acciones del
mismo nivel de abstracción o conceptualización
• Nombres claros
Algunos libros
• Software Craftsmanship the new imperative• Refactoring• Agile Software Development• Design Patterns• Clean Code• Clean coder• Refactoring to Patterns• The Art of Agile Development
Otros recursos
Object Mentor
Y Por supuesto:
@agileperu
groups.google.com/group/agileperu
¿Preguntas?¿Preguntas?
Edson ‘Grubhart’ Chávez Montaño
Mail: [email protected]: @grubhartBlog: http://soyfreakytambiengeek.blogspot.com