> For the complete documentation index, see [llms.txt](https://innersourcecommons.gitbook.io/managing-innersource-projects/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://innersourcecommons.gitbook.io/managing-innersource-projects/m-gl/measuring/gqm.md).

# Enfoque GQM (Obxectivo-Pregunta-Métrica)

O enfoque GQM é un mecanismo paraugas que permite definir e determinar as métricas do software. Isto pódese estender facilmente á súa aplicación noutros escenarios, aínda que o sistema InnerSource se adapta especialmente ben a este tipo de avaliación.

Segundo o documento orixinal:

> Calquera proceso de enxeñaría require retroalimentación e avaliación. O desenvolvemento de software é unha disciplina de enxeñaría e as medicións serven, precisamente, de retroalimentación e avaliación. A medición e os datos permiten comprender e controlar os procesos e produtos do software. Facilita a toma de decisións intelixentes e a mellora co paso do tempo. Pero o foco das medicións debe pórse nos obxectivos e modelos. É necesario establecer metas para cada un dos procesos e produtos do software e estes obxectivos deben poder medirse impulsados polos modelos axeitados.\[^6]

O enfoque GQM emprégase, a grande escala, no ámbito académico e na industria como método para determinar as métricas útiles para un conxunto predefinido de obxectivos.

No caso específico de InnerSource, en resumo, algúns dos obxectivos máis importantes poden ser os seguintes:

* Obxectivo 1: mellorar a calidade do código mediante CI e revisión por pares.
* Obxectivo 2: diminuír o prazo de comercialización.
* Obxectivo 3: permitir a innovación entre os/as desenvolvedores/as.
* Obxectivo 4: reducir os custos de desenvolvemento e mantemento.
* Obxectivo 5: mellorar o compromiso dentro da organización.

Logo, para cada un dos obxectivos pode haber unha ou máis preguntas que respondan a eses obxectivos específicos. E gardarán especial relación coa fase na que se atope o proceso. Aínda que poden manterse os mesmos obxectivos cando acabamos de comezar a aplicar InnerSource dentro dunha organización e cando a metodoloxía está totalmente establecida, as preguntas relacionadas poderán ser potencialmente diferentes.

Centrémonos no obxectivo número 5: mellorar o compromiso dentro da organización. Podemos comezar este proceso a partir dunha organización xerárquica na que existen silos de desenvolvedores/as e emprégase *Agile* como metodoloxía principal de desenvolvemento de software. Como punto de partida, a cuestión esencial sería comprender se as políticas específicas están funcionando realmente; como abrir a infraestrutura, permitir a discusión pública, ter reunións de deseño, así como unha longa lista de actividades que fomenten a interacción entre desenvolvedores/as. Por outra banda, nunha organización InnerSource, a cuestión sería buscar mellorar o compromiso ou, polo menos, contar cun proceso de desenvolvemento de software estable neste sentido.

**Comezar de cero**: Pregunta 1: Cantos dos/das desenvolvedores/as as recén chegados/as participan nos proxectos InnerSource?

**Traballar nunha comunidade InnerSource**: Pregunta 1: A atracción de novos/as desenvolvedores/as mellora co paso do tempo? E esta pregunta leva á pregunta 2: Estanse a conservar estes/as novos/as desenvolvedores/as? E, por último, a pregunta 3: Canto tempo tarda un/unha desenvolvedor/a en abandonar a comunidade?

E está claro que ao comezar de cero cómpre centrarse na mellora das fases iniciais, mentres que nun proceso maduro existirán outras cuestións de importancia.

Agora imos descubrir as métricas vinculadas a cada unha das preguntas e pode que se dea resposta a algunhas delas ao mesmo tempo. A continuación, nun caso de catro preguntas, poderiamos definir as seguintes métricas:

* P1: Cantos dos/das novos/as desenvolvedores/as atraídos/as están a participar en proxectos InnerSource?
  * M1. Número de novos/as desenvolvedores/as.
  * M2. Cantidade relativa de desenvolvedores/as novos/as respecto do total.
* P2: Está mellorando co tempo a atracción de novos/as desenvolvedores/as?
  * M1. Número de novos/as desenvolvedores/as.
  * M2. Cantidade relativa de desenvolvedores/as novos/as respecto do total.
  * M3. Inclinación da tendencia de novos/as desenvolvedores/as que se incorporan ao proxecto.
* P3: Estanse a manter os/as novos/as desenvolvedores/as?
  * M4. Número de desenvolvedores/as incorporados/as no último ano, que aínda traballan no proceso.
  * M5. Cantidade relativa de desenvolvedores/as retidos/as respecto do total dos/das incorporados/as no último ano.
* P4: Canto tempo tarda un/unha desenvolvedor/a en abandonar a compañía?
  * Mediana do tempo total de todos os desenvolvedores/as desde o seu primeiro *commit* ata o último.
