Artesanía del software - Software craftsmanship

La artesanía del software es un enfoque para el desarrollo de software que enfatiza las habilidades de codificación de los desarrolladores de software . Es una respuesta de los desarrolladores de software a los males percibidos de la industria del software convencional , incluida la priorización de las preocupaciones financieras sobre la responsabilidad del desarrollador.

Históricamente, se ha animado a los programadores a verse a sí mismos como practicantes del análisis estadístico bien definido y el rigor matemático de un enfoque científico con teoría computacional. Esto ha cambiado a un enfoque de ingeniería con connotaciones de precisión, predictibilidad, medición, mitigación de riesgos y profesionalismo. La práctica de la ingeniería dio lugar a convocatorias de licencias, certificación y cuerpos de conocimiento codificados como mecanismos para difundir el conocimiento de la ingeniería y madurar el campo.

El Manifiesto Ágil , con su énfasis en "individuos e interacciones sobre procesos y herramientas" cuestionó algunas de estas suposiciones. El Manifiesto de artesanía del software amplía y desafía aún más los supuestos del Manifiesto ágil, trazando una metáfora entre el desarrollo de software moderno y el modelo de aprendizaje de la Europa medieval .

Visión general

El movimiento tiene sus raíces en las ideas expresadas en obras escritas. The Pragmatic Programmer de Andy Hunt y Dave Thomas y Software Craftsmanship de Pete McBreen posicionan explícitamente al desarrollo de software como heredero de las tradiciones gremiales de la Europa medieval. El filósofo Richard Sennett escribió sobre el software como un oficio moderno en su libro The Craftsman. Freeman Dyson , en su ensayo "La ciencia como industria artesanal" , amplía la artesanía del software para incluir el dominio del uso del software como impulsor de beneficios económicos:

"A pesar del auge de Microsoft y otros productores gigantes, el software sigue siendo en gran parte una industria artesanal. Debido a la enorme variedad de aplicaciones especializadas, siempre habrá espacio para que las personas escriban software basado en su conocimiento único. Siempre habrá ser nichos de mercado para mantener vivas a las pequeñas empresas de software. El oficio de escribir software no se volverá obsoleto. Y el oficio de utilizar el software de forma creativa está floreciendo incluso más que el oficio de escribirlo ".

Después de la discusión inicial, se llevaron a cabo conferencias tanto en Londres como en Chicago, después de lo cual, se redactó un manifiesto y se puso en línea para reunir a los signatarios. Esto fue seguido por el desarrollo de prácticas para desarrollar aún más el movimiento, incluido el intercambio de talentos en "Craftsman Swaps" y la evaluación de habilidades en "Craftsmanship Spikes".

Manifiesto

Desde el sitio web de Software Craftsmanship http://manifesto.softwarecraftsmanship.org/

Como aspirantes a artesanos del software, estamos elevando el nivel del desarrollo de software profesional al practicarlo y ayudar a otros a aprender el oficio. A través de este trabajo hemos llegado a valorar:

  • No solo software que funciona, sino también software bien elaborado
  • No solo respondiendo al cambio, sino también agregando valor constantemente
  • No solo individuos e interacciones, sino también una comunidad de profesionales
  • No solo colaboración con el cliente, sino también asociaciones productivas

Es decir, en la búsqueda de los elementos de la izquierda, hemos encontrado que los elementos de la derecha son indispensables.

© 2009, el abajo firmante.
Esta declaración se puede copiar libremente en cualquier forma, pero solo en su totalidad a través de este aviso.

Historia

Los orígenes de la artesanía del software provienen del movimiento de desarrollo de software ágil que tenía como objetivo reformar la gestión de proyectos de software en la década de 1990.

En 1992, el ensayo de Jack W. Reeves "¿Qué es el diseño de software?" sugirió que el desarrollo de software es más un oficio que una disciplina de ingeniería. Siete años después, en 1999, se publicó The Pragmatic Programmer . Su subtítulo, "From Journeyman to Master", sugería que los programadores atraviesan etapas en su desarrollo profesional similares a las tradiciones de los gremios medievales de Europa.

En 2001, se publicó el libro Software Craftsmanship de Pete McBreen . Sugirió que los desarrolladores de software no necesitan verse a sí mismos como parte de la tradición de la ingeniería y que una metáfora diferente sería más adecuada.

En su discurso de apertura de agosto en Agile 2008 , Robert C. Martin propuso un quinto valor para el Manifiesto Agile, a saber, "Artesanía sobre basura". Más tarde cambió su propuesta a "Artesanía sobre ejecución".

En diciembre de 2008, varios aspirantes a artesanos del software se reunieron en Libertyville, Illinois , con la intención de establecer un conjunto de principios para la artesanía del software. Tres meses después, se decidió un resumen de las conclusiones generales. Se presentó públicamente, tanto para su visualización como para su firma, en forma de Manifiesto por la artesanía del software.

En abril de 2009, dos de las empresas del movimiento de artesanía del software, 8th Light y Obtiva , experimentaron con un "Craftsman Swap". El Chicago Tribune cubrió este evento el 15 de junio de 2009. En enero de 2010, se llevó a cabo un segundo Craftsman Swap entre Obtiva y Relevance.

La 'London Software Craftsmanship Community' (LSCC) se fundó en 2010 y hoy en día es la comunidad de artesanía de software más grande y activa del mundo, con más de 5000 artesanos. En 2014, Sandro Mancuso , uno de sus cofundadores, publicó un libro The Software Craftsman: Professionalism, Pragmatism, Pride . Aportó visibilidad adicional al movimiento de artesanía del software, reforzando los esfuerzos por lograr una mayor excelencia técnica y satisfacción del cliente.

Referencias

  1. ^ "Conferencia de artesanía de software" . Parlez UML . Archivado desde el original el 6 de febrero de 2009.
  2. ^ "Software Craftsmanship North America" . Artesanía del software .
  3. ^ "Manifiesto de artesanía de software" . Artesanía del software .
  4. ^ Reeves, Jack W (23 de febrero de 2005), ¿Qué es el diseño de software? , Developer Dot Star , consultado el 24 de junio de 2015
  5. ^ "Artesanía: ¿el quinto valor del manifiesto ágil?" , Infoq , agosto de 2008 , consultado el 24 de junio de 2015
  6. ^ "Manifiesto para la artesanía del software" . Manifesto.softwarecraftsmanship.org . Consultado el 26 de marzo de 2019 .
  7. ^ "El intercambio de empleados da a dos empresas nuevas perspectivas" , estrella del condado de Ventura , 13 de julio de 2009, archivado desde el original el 17 de septiembre de 2012
  8. ^ Wong, Wailin (15 de junio de 2009). "Abierto a la competición" . Chicago Tribune .
  9. ^ "Relevancia Craftsman Swap Day 1 | 8th Light" . 8thlight.com . Consultado el 2 de febrero de 2018 .

Otras lecturas

enlaces externos