Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

Automation analysis #327

Closed
simcha-vos-from-tu-delft opened this issue Apr 4, 2025 · 1 comment
Closed

Automation analysis #327

simcha-vos-from-tu-delft opened this issue Apr 4, 2025 · 1 comment
Assignees

Comments

@simcha-vos-from-tu-delft
Copy link

simcha-vos-from-tu-delft commented Apr 4, 2025

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'll give you a quick summary of what I found, and the automation tasks I recommend you to focus on next (:

Image

Level of maturity Basic Intermediate Advanced
Collaboration
Completed this level!

✔️ Prepare or create documentation artifacts
✔️ Generate documentation from source code
Commit validation
Bot commits
Publish documentation
Issues or PRs management
Code quality
Completed this level!

✔️ Run tests
✔️ Static code style analysis
✔️ Static code quality analysis
Test coverage and validity
Generate test reports
Automatic code formatting
✔️ Verify packaging correctness
✔️ Vulnerability scans
✔️ Sign artifacts
✔️ License checks
Development
⚠️ Still working on this level!

✔️ Build environment configuration
Package management
✔️ Build files configuration
✔️ Optimization
Artifacts
Completed this level!

✔️ Code compilation
✔️ Dependency management of artifact
✔️ Build tasks, resources and configuration
✔️ Packaging
✔️ Generate source and metadata artifacts
✔️ Release tagging
✔️ Publish artifacts to a registry
Source code version control
Generate release notes
Containerization
Push container to remote

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:

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!

@phax
Copy link
Owner

phax commented Apr 6, 2025

Hi @simcha-vos-from-tu-delft
Thanks for your post. Here is some feedback:

  • Publish documentation
    • The JavaDocs are published implicitly by releasing towards Maven Central - I don't know if you count this as documentation or if you only take user documentation
  • Package Management
    • This point seems to not apply to Java-only projects. As I don't use any kind of Python I suggest not to put an "x" there, but some more neutral sign :)

You code on "Automatic code formatting" does not really apply here, because I am the sole developer and do my formatting inside the IDE. No need for a plugin.

The rest looks pretty okay to me

@phax phax self-assigned this Apr 6, 2025
Repository owner locked and limited conversation to collaborators Apr 6, 2025
@phax phax converted this issue into discussion #328 Apr 6, 2025

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants