Este plan de aprendizaje es una introducción a InnerSource. InnerSource consiste en la aplicación de las mejores prácticas de desarrollo y principios de trabajo de las comunidades de software libre dentro de una corporación. El software desarrollado no es por lo tanto software libre, pero sí que está en abierto y accesible dentro de los confines de la organización para que cualquier persona pueda usarlo y contribuir a su desarrollo. Esta estrategia permite que se abra la posibilidad de colaboración de manera amplia y efectiva, produciendo software que evoluciona y se modifica de forma ágil según las necesidades de los diferentes clientes internos.
LearnInnerSource fomenta y reconoce la reusabilidad del código y la colaboración con cualquier persona independientemente de la estructura de la organización. Este enfoque es diferente respecto a lo visto hasta ahora en organizaciones con estructuras más tradicionales donde ideas y producto se generan en forma de silos y quedan limitadas por la jerarquía corporativa. Vamos a explorar un ejemplo de esta situación.
LearnPongamos como ejemplo la situación donde un equipo A usa el software que produce un equipo B. El equipo A tiene una petición para una nueva funcionalidad y se la envía al equipo B, pero el equipo B no llega a tiempo de implementar dicha mejora para el equipo A. En un entorno de InnerSource, si al equipo A no le facilitan dicha funcionalidad entonces habría enviado un pull request en su lugar. Esto significa que el equipo A implementa la funcionalidad directamente en el software del equipo B y envía un pull request para que sea revisado con los cambios pertinentes. El equipo B es entonces el encargado de revisar dicho código y aceptarlo cuando esté listo.
LearnMuchos son los beneficios de la colaboración a través de InnerSource. InnerSource proporciona a la compañía una estrategia que escala para aquellos equipos que necesitan tener un nuevo requisito a tiempo sin el problema de tener que mantenerlo en el tiempo. Además, ésta es una situación donde la compañía gana como un todo ya que otros equipos tienen acceso a ese código.
LearnCada compañía, equipo, project e individuo es diferente. Debido a esto, el camino a seguir y la manera de funcionar de InnerSource variará de una situación a otra. En su núcleo hay sin embargo cuatro principios que forman los cimientos de cualquier instancia de InnerSource. Estos principios se inspiran en los proyectos existosos de software libre y son requeridos en entornos InnerSource para alcanzar los beneficios que ya se han descrito.
LearnEn este módulo hemos visto una introducción a InnerSource. InnerSource aplica las buenas prácticas de desarrollo de los proyectos de software libre en desarrollos internos. Ofrece una opción adicional a los consumidores internos cuando los equipos de desarrollo no pueden atender una petición. Para llevar a cabo InnerSource de forma satisfactoria, se ha de involucrar al product owner y a los trusted committers del equipo anfitrión así como a contribuidores del equipo invitado Un InnerSource efectivo beneficiará a ambas partes. Los principios clave sobre los que se basa el trabajo de InnerSource son las contribuciones voluntarias de código fuente y la priorización de actividades de mentoría.
Learn