Skip to content
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

Epic: track code quality metrics #84

Open
Guidevit opened this issue Jul 18, 2023 · 0 comments
Open

Epic: track code quality metrics #84

Guidevit opened this issue Jul 18, 2023 · 0 comments

Comments

@Guidevit
Copy link
Member

Task: Define and Document the Formulas for Calculating Defect Density and Code Churn

Start by researching best practices and existing methods for calculating defect density and code churn. Defect density is typically the number of defects confirmed per size of the code base (usually in KLOC - thousand lines of code). Code churn is generally the sum of added lines, modified lines, and deleted lines of code during a certain period.
Once you have defined your formulas, document them clearly in a place that is accessible to all team members, such as an internal wiki or documentation platform.
Task: Collect Defect Data from the Bug Tracking System

Integrate with your bug tracking system (like Jira or GitHub Issues) using its API. Most bug tracking systems provide REST APIs that can be used to extract data.
Write a script or develop a small application that can make API calls to the bug tracking system and pull relevant defect data. Depending on your needs, you might want to pull data such as defect ID, defect status, opening date, closing date, severity, etc.
Schedule this script or application to run at regular intervals (e.g., daily) to keep your defect data up to date.
Task: Extract Code Churn Information from the Version Control System

Use the API provided by your version control system (like Git) to extract code churn information. Git, for example, provides commit stats that can give you the number of lines added and deleted in each commit.
Just like with the defect data, you'll want to write a script or application that can pull this data at regular intervals. Be sure to capture any data necessary to calculate code churn as defined in your formula.
Task: Calculate Defect Density and Code Churn Metrics

Now that you have your defect and code churn data, you can use the formulas defined earlier to calculate these metrics.
Implement this calculation as a script or a function in your data processing pipeline. This could be done where your data is stored, or in a separate service depending on your architecture.
Be sure to account for any edge cases to ensure the accuracy of your metrics. For example, if your code base size is zero or your churn is zero, you should handle these situations gracefully.
Task: Develop a Dashboard Component to Display Defect Density and Code Churn Metrics

Define what the dashboard component should look like. You might want to include trend lines for defect density and code churn over time, and perhaps a breakdown by project or team.
Develop this dashboard using a suitable library or tool. This could be a JavaScript library like D3.js or a more specialized dashboarding tool like Tableau, Looker, or Power BI.
Include interactive features, like the ability to filter by date range, project, or team, and drill down into specific time periods or projects for more detailed insights.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant