Skip to content

Update Mermaid graph to link to the MD book for GQM (Not link back to GitHub) #100

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
May 10, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 18 additions & 18 deletions .github/workflows/gqm_update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,33 +8,33 @@ on:
- "measuring/metrics/**"

workflow_dispatch:

jobs:
generateDiagram:
name: Generate Diagram
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.DEPLOY_KEY_SSH_PRIVATE_KEY }}
- name: Use Node.js
uses: actions/setup-node@v3
fetch-depth: 0

- uses: actions/setup-node@v3
with:
node-version: "21.x"
- run: npm install --prefix ./scripts/gqm_gen
- run: npm run coverage-report --prefix ./scripts/gqm_gen
- name: Report NYC coverage

- name: Configure Git
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"

- name: Update GQM diagram
run: |
cd scripts/gqm_gen
./update_gqm.sh

- name: Report coverage
if: success()
uses: sidx1024/[email protected]
with:
coverage_file: ".nyc_output/nyc-coverage-report/coverage-summary.json"
- run: npm run --silent start --prefix ./scripts/gqm_gen > ./new_gqm.md.tmp
- run: sh ./scripts/gqm_gen/gqm_update.sh ./new_gqm.md.tmp ./measuring/use_gqm.md > ./measuring/use_gqm.md.tmp
- run: rm -f ./new_gqm.md.tmp
- run: mv -f ./measuring/use_gqm.md.tmp ./measuring/use_gqm.md
- name: Commit GQM Diagram
working-directory: ./measuring
run: |
git config --local user.name "github-actions[bot]"
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
git diff --staged --quiet || (git commit -m "Update Goals Questions Metrics Graph" && git push)
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# We want to ignore our vale StylesPath
.github/vale/*
gqm*[pngmd]
gqm*[pngmd]
book
**/dist/
12 changes: 9 additions & 3 deletions SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,17 @@
* [What, When and How to Measure](measuring/measuring.md)
* [Goals using Metrics](measuring/goals.md)
* [Use Goals, Questions, and Metrics](measuring/use_gqm.md)
* [Goals](use_gqm/goals/README.md)
* [Goals](measuring/goals/index.md)
* [Find InnerSource Projects](measuring/goals/find-projects.md)
* [Reduce Duplication](measuring/goals/reduce-duplication.md)
* [Questions](use_gqm/questions/README.md)
* [Questions](measuring/questions/index.md)
* [What is the InnerSource Adoption Trend?](measuring/questions/adoption-trend.md)
* [Who contributes to the InnerSource project?](measuring/questions/who-contributes.md)
* [Who Uses](measuring/questions/who-uses.md)
* [Metrics](use_gqm/metrics/README.md)
* [Metrics](measuring/metrics/index.md)
* [Code Contributions](measuring/metrics/code-contributions.md)
* [Contribution Distance](measuring/metrics/contribution-distance.md)
* [Number of InnerSource repositories](measuring/metrics/number-of-innersource-repositories.md)
* [Usage Count](measuring/metrics/usage-count.md)
* [Areas of Analysis](measuring/areas.md)
* [Goal-Question-Metric Approach](measuring/gqm.md)
Expand Down
22 changes: 22 additions & 0 deletions measuring/goals/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Goals

This section contains all the goals for measuring InnerSource projects.

## Available Goals

- [Find InnerSource Projects](goals/find-projects.md) - Identify and discover InnerSource projects within the organization
- [Reduce Duplication](goals/reduce-duplication.md) - Minimize code duplication through InnerSource practices

## How to Use

Each goal is defined in its own markdown file. The goals are used to:
1. Define clear objectives for InnerSource initiatives
2. Guide the selection of relevant questions
3. Help determine appropriate metrics for measurement

## Adding New Goals

To add a new goal:
1. Create a new markdown file in this directory
2. Add a link to it in this README.md
3. Update the GQM diagram by running the generator
24 changes: 24 additions & 0 deletions measuring/metrics/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Metrics

This section contains all the metrics used to measure InnerSource project questions.

## Available Metrics

- [Code Contributions](metrics/code-contributions.md) - Measure the number and types of code contributions to InnerSource projects
- [Contribution Distance](metrics/contribution-distance.md) - Measure how far contributions come from the original team
- [Number of InnerSource repositories](metrics/number-of-innersource-repositories.md) - Track the total count of InnerSource repositories
- [Usage Count](metrics/usage-count.md) - Measure how many times a component is used across the organization

## How to Use

Each metric is defined in its own markdown file. The metrics are used to:
1. Quantify answers to questions
2. Track progress towards goals
3. Provide actionable insights

## Adding New Metrics

To add a new metric:
1. Create a new markdown file in this directory
2. Add a link to it in this README.md
3. Update the GQM diagram by running the generator
23 changes: 23 additions & 0 deletions measuring/questions/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Questions

This section contains all the questions used to measure InnerSource project goals.

## Available Questions

- [What is the InnerSource Adoption Trend?](questions/adoption-trend.md) - Track the growth and adoption of InnerSource practices over time
- [Who contributes to the InnerSource project?](questions/who-contributes.md) - Identify and analyze the contributors to InnerSource projects
- [Who Uses](questions/who-uses.md) - Track which teams and projects are using InnerSource components

## How to Use

Each question is defined in its own markdown file. The questions are used to:
1. Break down goals into measurable aspects
2. Guide the selection of appropriate metrics
3. Help evaluate progress towards goals

## Adding New Questions

To add a new question:
1. Create a new markdown file in this directory
2. Add a link to it in this README.md
3. Update the GQM diagram by running the generator
60 changes: 25 additions & 35 deletions measuring/use_gqm.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,8 @@ To test your changes see this README.md file.

```mermaid
graph LR;

subgraph GQM[Goals, Questions, Metrics]

%% begin nodes
subgraph GQM[Goals, Questions, Metrics]
%% begin nodes
find-projects.md[Find InnerSource Projects]
reduce-duplication.md[Reduce duplication]
adoption-trend.md[What is the InnerSource adoption trend?]
Expand All @@ -41,48 +39,40 @@ graph LR;
contribution-distance.md[Contribution Distance]
number-of-innersource-repositories.md[Number of InnerSource repositories]
usage-count.md[Usage count]
%% end nodes

%% begin edges
%% begin edges
find-projects.md-->who-uses.md
find-projects.md-->who-contributes.md
reduce-duplication.md-->who-uses.md
adoption-trend.md-->number-of-innersource-repositories.md
who-contributes.md-->code-contributions.md
who-contributes.md-->contribution-distance.md
who-uses.md-->usage-count.md
%% end edges

%% begin clicks
click find-projects.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/goals/find-projects.md" "Find InnerSource Projects"
click reduce-duplication.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/goals/reduce-duplication.md" "Reduce duplication"
click adoption-trend.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/questions/adoption-trend.md" "What is the InnerSource adoption trend?"
click who-contributes.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/questions/who-contributes.md" "Who contributes to the InnerSource project?"
click who-uses.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/questions/who-uses.md" "Who uses the InnerSource project?"
click code-contributions.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/metrics/code-contributions.md" "Code contributions"
click contribution-distance.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/metrics/contribution-distance.md" "Contribution Distance"
click number-of-innersource-repositories.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/metrics/number-of-innersource-repositories.md" "Number of InnerSource repositories"
click usage-count.md "https://github.com/InnerSourceCommons/managing-inner-source-projects/blob/main/measuring/metrics/usage-count.md" "Usage count"
%% end clicks

%% begin clicks
click find-projects.md "/measuring/goals/find-projects" "Find InnerSource Projects"
click reduce-duplication.md "/measuring/goals/reduce-duplication" "Reduce duplication"
click adoption-trend.md "/measuring/questions/adoption-trend" "What is the InnerSource adoption trend?"
click who-contributes.md "/measuring/questions/who-contributes" "Who contributes to the InnerSource project?"
click who-uses.md "/measuring/questions/who-uses" "Who uses the InnerSource project?"
click code-contributions.md "/measuring/metrics/code-contributions" "Code contributions"
click contribution-distance.md "/measuring/metrics/contribution-distance" "Contribution Distance"
click number-of-innersource-repositories.md "/measuring/metrics/number-of-innersource-repositories" "Number of InnerSource repositories"
click usage-count.md "/measuring/metrics/usage-count" "Usage count"
end
subgraph Legend
direction TB

goal[Goal]
question[Question]
metric[Metric]
subgraph Legend
direction TB
goal[Goal]
question[Question]
metric[Metric]

classDef goals stroke:green,stroke-width:2px;
class goal,find-projects.md,reduce-duplication.md goals
classDef goals stroke:green,stroke-width:2px;
class goal,find-projects.md,reduce-duplication.md goals

classDef questions stroke:orange,stroke-width:2px;
class question,adoption-trend.md,who-contributes.md,who-uses.md questions
classDef questions stroke:orange,stroke-width:2px;
class question,adoption-trend.md,who-contributes.md,who-uses.md questions

classDef metrics stroke:purple,stroke-width:2px;
class metric,code-contributions.md,contribution-distance.md,number-of-innersource-repositories.md,usage-count.md metrics
end

classDef metrics stroke:purple,stroke-width:2px;
class metric,code-contributions.md,contribution-distance.md,number-of-innersource-repositories.md,usage-count.md metrics
end
```

Add your goals, questions, and metrics into this graph! It will help you to see how others approach and interact with what you are doing.
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
37 changes: 0 additions & 37 deletions scripts/gqm_gen/gqm_update.sh

This file was deleted.

Loading