On most engineering teams, no one has a clear picture of how the code base is changing at any point. An engineer may be familiar with the changes in the parts of the code they personally worked on or code reviewed, but they are typically unaware of other changes going on around them.
Technical leads, who are responsible for a team of engineers often have even less visibility into the details of what everyone is working on, unless they constantly read code, and this is hard to do consistently at any scale. As for non-technical folks, let's not go there. Engineering is a black box for them.
There are no easy ways to answers these types of questions about code using the user interfaces of existing DevOps and Work Tracking platforms.
Given our philosophy of empowering teams on the ground with actionable data, a key goal for Polaris is to give product and engineering teams intuitive and non-technical tools to answer these types of questions on demand with accuracy.
Insight starts with visibility, and much of Polaris is built with this philosophy.
In general, we aim to make what happens during implementation less mysterious for everyone, and provide simple and intuitive ways to visualize the work of making software and talk about it as a team.
The SpecFlow Chart is a key component in Polaris for making this happen.
The SpecFlow Chart is designed to visualize an arbitrary collection of commits from a certain perspective such as a Value Stream, Contributor, Card or Repository. It shows time on the horizontal axis and one of several analysis dimensions as pivot attributes for the collection on the vertical axis.
In Polaris, a Spec is defined as a card which has commits associated with it. Polaris allows allows commit history to be analyzed along the usual code related perspectives: repositories, branches, files, contributors etc. But focusing on specs facilitates analysis along value related perspectives: cards, card types, features, and epics; and along organizational perspectives: work streams, value streams, and organizations.
Polaris indexes every commit made to a distributed code base, potentially spread across hundreds or thousands of repositories and branches, and organizes them for efficient analysis in real time, along all these perspectives. The underlying time varying representation, called the Ergonometric Graph™, is the foundation of all analysis in Polaris. The SpecFlow Chart is the component that we use across the application for directly visualizing this graph from a variety of perspectives.
It is a fundamental building block in the Polaris App and is used all across the UI.
The video shows an example of the SpecFlow Chart from the perspective of a single Value Stream, for the prior six months, with pivots for authors, cards, repositories and branches. There are many other possible combinations and periods by which perspectives and pivot attributes can be chosen, and you will see these all across the application.
In this video we show how the chart can be used to answer a variety of questions about the flow of work for the Value Stream, including simple ones like who is working on what, and what is happening to cards in progress, and also more complex ones like recognizing long lived branches, or engineering tasks.
Other perspectives we support today include Cards, Contributors, Repositories, Organizations, and more will be available in the future.