codecharta
codecharta copied to clipboard
Ideas from Stakeholder Meeting
Collection of Feature requests / ideas from stakeholder meeting
1. CodeCharta/MW audit suite
A toolset, that makes the usage of CodeCharta more accessible by automating a lot of the tedious processes like installing the analysis, manually executing commands for the analysis to generate a map, loading the map into the visualisation, etc. This toolset would simplify the process of creating and loading a map.
Description
As a user, I want a simpler way to generate a map from code so that i safe time and effort when creating a map because currently generating a first map requires too much setup and knowledge.
Acceptance criteria
Assumptions & Exclusions
Open questions
- Can we improve the CodeCharta Desktop app, so that the user does not need to manually install and run the analysis?
- This likely requires a new UI to configure the analysis. Should this be an independent tool or part of the current visualisation desktop app?
2. Optimized view of dependencies
Currently dependencies are displayed using edge metrics which can get hard to read/understand for larger maps. We should rethink how they are displayed to make it more clear
Description
As a user, I want a more clear view of dependencies, so that i can more easily understand and explain them because the current view can get quite confusing for larger maps.
Acceptance criteria
Assumptions & Exclusions
Open questions
- Do we have any ideas on how the current edge metrics view could be improved?
3. CodeCharta Blog Posts
If there is interest from the team, blogposts about CodeCharta (news, explaining how to use new features, how to create a map that focuses on XYZ metrics, etc.) could be created to raise attention for the tool and make it more interesting for new users
Description
As a new user, I want blogposts to be available (additionally to the documentation) that explain basic tasks and workflows, so that i can more easily get familiar with the tool because it currently offers a big variety of features, which can be overwhelming
Acceptance criteria
Assumptions & Exclusions
Open questions
- Is this something anyone of the team is interested in? Maybe we could use AI models to generate these blogposts for us if we provide enough information.
4. Default parser configs
Currently to create a map, a user has to configure the analysis and therefore, have knowledge about the different parsers (which are available, which lead to which metrics, etc.). There should be default parameters/parsers, so that a user can generate a basic map without much knowledge about the different parsers.
Description
As a user, I want a default setting for the ccsh so that i have an easier time generating a basic map because currently i have to select and configure an available parser to produce a map
Acceptance criteria
Assumptions & Exclusions
Open questions
5. Apply custom views across different maps
A common use-case of CodeCharta is to compare two version of a codebase to see the progress/changes. Being able to apply a custom view across different maps would make that comparison easier
Description
As a user, I want to be able to apply custom views across different maps so that i can more easily see differences while keeping the same metrics.
Acceptance criteria
Assumptions & Exclusions
Open questions
- Would this be covered by combing the metric templates and custom views? (Issue #3503)
6. Analyzing used services, EJBs, etc.
One dimension that is currently not analysed is how many services, libraries, etc. are present in a codebase. This could be an interesting information in code audits.
Description
As an auditor, I want to be able to see information about used services, etc. so that i can take that into account during an audit because this can have an effect on the maintainability of a codebase
Acceptance criteria
Assumptions & Exclusions
Open questions
- Is this something that first needs to be handled in metric gardener before we can consider it?
7. Regular stakeholder meeting
Should we regularly hold meetings with stakeholders as a form of extended 'Sprints' to ensure the current direction of the project aligns with what is currently the most common/most wanted use cases of the tool?