-
Feature
-
Resolution: Unresolved
-
Critical
-
None
-
L
-
False
-
-
False
-
0% To Do, 100% In Progress, 0% Done
-
-
Feature Overview (aka. Goal Summary)
This feature introduces a data aggregation capability to the existing Scorecard plugin within Red Hat Developer Hub (RHDH). The primary goal is to provide a "manager view"—a specialized dashboard or report—that displays Key Performance Indicators (KPIs) aggregated across multiple owned applications or components. This directly addresses the needs of personas like Engineering Managers and Product Managers who oversee the health and compliance of numerous services but currently lack a consolidated, high-level summary.
Specifically, this enables aggregation of data points (e.g., total number of bugs, overall Critical/High CVE count) from existing data sources across all entities associated with a specific owner (e.g., a Group in the Software Catalog). Since this view is for high-level oversight, the aggregated data does not require real-time updates, and a configurable refresh schedule (e.g., every few minutes or hourly) is acceptable to balance data freshness with system load.
Goals (aka. Expected User Outcomes)
- Engineering Manager / Platform Engineer: I want to define and view aggregated KPIs across all applications or components owned by my team/group, so I can quickly assess overall technical health, compliance, and risk without manually checking each service's individual scorecard.
- Platform Engineer: I want to configure a data refresh schedule for the aggregated KPIs, so I can ensure the manager view is up-to-date enough for high-level decision-making while minimizing unnecessary load on the RHDH backend and external data sources.
- Engineering Manager / Security Team: I want to see high-level roll-up metrics like the total count of critical security vulnerabilities (CVEs) or major bugs across my portfolio, so I can prioritize resource allocation and identify teams/areas requiring immediate attention.
Requirements (aka. Acceptance Criteria):
- KPI Configuration: As a Platform Engineer, I want the Scorecard configuration interface to include an option to create an "Aggregated KPI," so I can define metrics that sum or average results across multiple entities.
- Aggregation Scope: As a Platform Engineer, I want the ability to scope an Aggregated KPI by one or more Owner Groups (as defined in the Software Catalog), so the aggregation accurately reflects the portfolio of the target manager.
- Aggregation Logic: As a Platform Engineer, I want to define basic aggregation functions (e.g., SUM, AVERAGE, COUNT, MAX) for the raw data points collected from the individual component scorecards, so I can create meaningful high-level metrics (e.g., SUM of all "Critical Bugs" from JIRA, AVERAGE "Test Coverage" across all components).
- Display View: As a Manager, I want a dedicated, high-level dashboard view (e.g., a "Homepage/Dashboard" or "Portfolio Health" page) that prominently displays the configured Aggregated KPIs, so I don't have to navigate individual component pages.
- Refresh Mechanism: As a Platform Engineer, I want the Aggregated KPI data to be re-calculated on a configurable, non-real-time schedule (e.g., minimum one-hour interval, with options for daily/hourly), so I can control the performance overhead.
- Drill-Down Capability: As a Manager, I want to be able to click on an Aggregated KPI to see a list of the individual components that contributed to the value, so I can identify the underlying services impacting the overall score. (Figma)
- Data Source Consistency: As a Platform Engineer, I want the Aggregated KPI feature to work with all currently integrated Scorecard data sources (e.g., SonarQube, JIRA, security scanners) that provide quantifiable metrics.
Out of Scope (Optional)
- Real-Time Data Processing: Aggregated data will not be updated in real-time. The initial implementation will focus on scheduled batch processing.
- Complex Custom Aggregation Logic: Advanced statistical functions, custom scripting for aggregation, or cross-entity conditional logic (beyond simple SUM/AVERAGE/etc.) are out of scope for the initial release.
- New Data Source Integrations: This feature will leverage existing data sources already integrated with the RHDH Scorecard plugin; no new external tool integrations will be developed as part of this ticket.
Customer Considerations (Optional)
- Large Organization Scalability: Since RHDH serves large organizations, the aggregation mechanism must be performant and scalable to handle portfolios with hundreds or thousands of components without degrading overall RHDH performance during the scheduled refresh. Caching and efficient database queries are critical.
- Role Identification: Aggregation relies heavily on the Owner field/Group entities in the Software Catalog. Ensure that the Platform Engineer configuring the KPI has clear visibility into the Group-Component relationships to correctly scope the manager view.
Documentation Considerations
- Add a new section in the Scorecard documentation section titled "Configuring Aggregated KPIs for Portfolio Health," explaining the new configuration options, supported aggregation functions, and how to set the refresh schedule.
- Update the existing RHDH documentation with a section on the new "Manager View" or "Portfolio Health Dashboard," clearly explaining how to interpret the aggregated scores and utilize the drill-down function.
- Performance Impact Note: Include a clear technical note about the non-real-time nature of the data and the recommended refresh frequency to manage system load, particularly for organizations with a high volume of components.