Scorecards
What is a Scorecard?
Scorecards enable us to define and track metrics/standards for our Port entities, based on their properties. Each scorecard consists of a set of rules, where each rule defines one or more conditions that need to be met.
Each rule has a level property whose value can be defined per to the way you define standards in your organization, for example:
- Service maturity can be defined as
Basic,Bronze,Silver,Gold. - Security standards can be defined as
Low,Medium,High,Critical. - Production readiness can be defined as traffic light colors
Red,Orange,Yellow,Green. - Engineering quality can be defined as
Poor,Fair,Good,Excellent. - Service response time can be defined as
A,B,C,D,F.
Scorecard use cases
Scorecards can be used to evaluate the maturity, production readiness and engineering quality of any entity in your software catalog, for example:
Does a service has an on-call defined? Does a README.md file exist in the repository? Is Grafana defined for the K8s cluster? Is the relation of a certain entity empty?
Building a Scorecard
The scorecard is built in Port, and then you can use it in your Backstage instance. Read more about how to build a scorecard here.
Scorecards Page
For example, let's add the Scorecard component to the NavBar:
in the file: packages/app/src/App.tsx, add the route:
<Route path="/scorecards" element={<ScorecardsPage />} />
and then add the link to the NavBar, in the file: packages/app/src/components/Root/Root.tsx:
<SidebarItem icon={DoneAllIcon} to="scorecards" text="Scorecards" />
