Questa sezione del Learning Path contiene un’introduzione al concetto di InnerSource. InnerSource è l’applicazione di pratiche e principi open source per lo sviluppo software all’interno dell’azienda. Il software InnerSource rimane di proprietà dell’azienda, ma internamente è aperto per chiunque lo voglia utilizzare e per chiunque voglia contribuire ad esso. Questa strategia consente una collaborazione ampia ed efficace, producendo software agile e reattivo alle mutevoli esigenze dei suoi numerosi stakeholder interni.
LearnInnerSource incoraggia e premia la collaborazione ed il riuso del codice per chiunque, indifferentemente dalla posizione che ricopre all’interno della struttura organizzativa aziendale. Questo approccio differisce da quello che si è visto all’interno delle aziende tradizionali dove le idee ed il prodotto del lavoro tendono a rimanere intrappolati tra confini della gerarchia aziendale interna e dei suoi silos. Esploriamo una situazione che illustra un esempio di questa idea.
LearnDiciamo che il team A usa il software prodotto dal team B. Il team A invia una richiesta di funzionalità al team B, ma il team B non è in grado di implementare quella funzionalità in tempo per il team A. In un contesto InnerSource, se il team A non può ottenere questa richiesta di funzionalità allora può inviare invece una pull request. Vale a dire che il team A implementa la funzionalità direttamente all’interno del software del team B ed esegue il submit di una pull request con le modifiche al codice. I partner del team B esaminano ed accettano il codice inviato.
LearnEsistono molti benefici nel collaborare attraverso l’applicazione dell’InnerSource. InnerSource fornisce all’azienda una strategia scalabile per il guest team per ottenere le richieste di funzionalità quando ne hanno bisogno loro senza l’onere a lungo termine della manutenzione. L’azienda nel suo insieme vince poiché il tempo del guest team viene convogliato nel codice che altri possono usare.
LearnOgni azienda, team, progetto ed individuo è differente. Per questo motivo, il modo esatto con cui funziona il concetto di InnerSource varierà da una situazione all’altra. Al suo interno, comunque, sono quattro i principi su cui si fonda la base di qualsiasi caso di successo di InnerSource. Questi principi traggono ispirazione da progetti Open Source di successo e sono richiesti affinché l’InnerSource possa ottenere i vantaggi descritti in precedenza.
LearnIn questo percorso formativo, abbiamo introdotto l’InnerSource. L’InnerSource applica principi e best practice dell’open source allo sviluppo software interno. Questo approccio rende disponibile un’opzione ulteriore agli utenti quando i team di produzione non sono in grado di consegnare una richiesta di funzionalità necessaria. L’InnerSource di successo coinvolge un product owner e un trusted committer dell'host team così come un contributor del guest team. Fatto in modo efficare, l’InnerSource porta molti vantaggi ad entrambi i team partecipanti. I principi chiave su cui si basa l’InnerSource sono contribuzione volontaria al codice ed il tutoraggio prioritizzato.
Learn