matomo-org / matomo-org/matomo-java-tracker

Automation analysis

Open
#358 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
80
Forks
51
Avg merge
5m
Merged PRs (30d)
16

Description

I'm with the Software Engineering Research Group at the TU Delft, and I am investigating automations. I have looked at your repository and which GitHub workflows and Maven plugins you are using. I hope to provide you with some interesting insights about your repository! I'll give you a quick summary of what I found, and the automation tasks I recommend you to focus on next (:

![Image](https://simchavos.com/assets/thesis/output/matomo-org/matomo-java-tracker_chart.png)

| Level of maturity | Basic | Intermediate | Advanced |
|--------------------|-------|-------------|----------|
| Collaboration | | ‎
✅ ***Completed this level!***

| |
| | ✔️ [Prepare or create documentation artifacts](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Prepare-or-create-documentation-artifacts)
| ✔️ [Generate documentation from source code](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Generate-documentation-from-source-code)
✔️ [Bot commits](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Bot-commits)
| ✔️ [Publish documentation](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Publish-documentation)
❌ [Commit validation](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Commit-validation)
❌ [Issues or PRs management](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Issues-or-PRs-management)
|
| Code quality | ‎
✅ ***Completed this level!***

| | |
| | ✔️ [Run tests](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Run-tests)
✔️ [Static code style analysis](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Static-code-style-analysis)
| ✔️ [Test coverage and validity](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Test-coverage-and-validity)
✔️ [Static code quality analysis](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Static-code-quality-analysis)
❌ [Generate test reports](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Generate-test-reports)
❌ [Automatic code formatting](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Automatic-code-formatting)
| ✔️ [Verify packaging correctness](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Verify-packaging-correctness)
✔️ [Vulnerability scans](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Vulnerability-scans)
✔️ [Sign artifacts](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Sign-artifacts)
❌ [License checks](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#License-checks)
|
| Development | | ‎
✅ ***Completed this level!***

| |
| | ✔️ [Build files configuration](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Build-files-configuration)
| ✔️ [Build environment configuration](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Build-environment-configuration)
| ❌ [Optimization](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Optimization)
|
| Artifacts | | ‎
✅ ***Completed this level!***

| |
| | ✔️ [Code compilation](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Code-compilation)
✔️ [Dependency management of artifact](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Dependency-management-of-artifact)
| ✔️ [Build tasks, resources and configuration](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Build-tasks,-resources-and-configuration)
✔️ [Packaging](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Packaging)
✔️ [Release tagging](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Release-tagging)
✔️ [Publish artifacts to a registry](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Publish-artifacts-to-a-registry)
| ✔️ [Generate source and metadata artifacts](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Generate-source-and-metadata-artifacts)
✔️ [Generate release notes](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Generate-release-notes)
❌ [Source control management](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Source-control-management)
❌ [Containerization](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Containerization)
|

# And now? Next steps!
It is not always clear which automation tasks should be prioritized. It is however important to balance your automation efforts, as a uniform level of maturity is most productive. I'm here to help! Below is a list of tasks that you can work on to help level up your maturity across the automation domains:

- Implement **[Generate test reports](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Generate-test-reports);** implemented by 10% of GitHub repositories
- Implement **[Automatic code formatting](https://github.com/simchavos/automations/wiki/Automation-Thesis-Wiki#Automatic-code-formatting);** implemented by 10% of GitHub repositories
# What do you think?
Do you think my analysis is correct, do these recommendations help you? Or have I missed something?

For my master's thesis I'm doing research into the use of automations in GitHub repositories. With my findings, I want to see if I can help out developers with what automations they could focus on. Do you want to help me out? **Leaving a response is much appreciated!**

If you have any other Java/Maven projects you'd like analyzed, you can send me the repositories and I can analyze them for you!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the repository's GitHub workflows and Maven plugins, then compare them with the linked Automation Thesis Wiki analysis. The report recommends test reports and automatic code formatting, but it does not define a concrete change, acceptance criteria, or what would constitute completion.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, java
Domain
build-system, ci-cd
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.