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 (:
Level of maturity | Basic | Intermediate | Advanced |
---|---|---|---|
Collaboration | ✅ Completed this level! |
||
✔️ Prepare or create documentation artifacts |
✔️ Generate documentation from source code ❌ Bot commits |
❌ Publish documentation ❌ Pre-commit hooks ❌ Issue or PR bots |
|
Code quality | |
||
✔️ Run tests ❌ Static code style analysis |
✔️ Test coverage and validity ✔️ Static code quality analysis ❌ Generate test reports ❌ Automatic code formatting |
✔️ Verify packaging correctness ✔️ Sign artifacts ✔️ License checks ❌ Vulnerability scans |
|
Development | ✅ Completed this level! |
||
✔️ Build files configuration |
✔️ Build environment configuration |
✔️ Optimization |
|
Artifacts | ✅ Completed this level! |
||
✔️ Code compilation ✔️ Dependency management of artifact |
✔️ Build tasks, resources and configuration ✔️ Packaging ✔️ Release tagging ✔️ Publish artifacts to a registry |
✔️ Generate source and metadata artifacts ❌ Generate release notes ❌ Source control management ❌ 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 Static code style analysis; implemented by 9% of GitHub repositories
- Implement 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!