Skip to content

Automation analysis #303

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'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 ‎
⚠️ Still working on this level!

❌ Run tests
❌ Static code style analysis
❌ Test coverage and validity
❌ Generate test reports
❌ Automatic code formatting
❌ Static code quality analysis
❌ 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
✔️ Release tagging
✔️ Publish artifacts to a registry
❌ Generate source and metadata artifacts
❌ 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:

  • Implement Package management; implemented by 36% of GitHub repositories
  • Implement Run tests; implemented by 23% 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!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions