SwiftKanban provides several features for you to model hierarchical data – such as Programs (with Projects and Sub-Projects), Portfolios of (Strategic/ Corporate) Initiatives and Projects, or even simpler hierarchies such as Themes – Epics – User Stories etc.

Currently, SwiftKanban provides two distinctive ways for you to manage and monitor the progress of cards in the hierarchy – Parent-Child hierarchy and Portfolio Lane.

In the 8.0 release of SwiftKanban, which is scheduled in the early part of this quarter, we are planning to improve the configuration around our % complete calculations applicable to both Parent-Child hierarchy and Portfolio Lane.

But before we talk about the improvements, let us briefly touch upon the current behavior of both these features.

Parent-Child hierarchy

Current (Pre 8.0 release) Behavior

  1. Currently, the progression percentage of the parent card is calculated based on the total completion percentage of its immediate child cards. There is no way to calculate the progression percentage of a parent card and its child cards separately.

Let us use the following diagram to understand the calculation.

In the above example, based on the latest formula, the completion percentage of the same parent card A will be:

  1.  Any parent card has only one Hierarchy progress icon which indicates its progression based on the above calculation formula.

 

Why Are We Making The Enhancements

In real life, the progress of a task may be determined by a combination of factors – such as progress of its sub-cards, its progress along a specific workflow, or a combination thereof.  To help you model such real-life scenarios – as well as to better visualize it using the Portfolio Lane, we will now provide two separate % complete figures for any task modeled as a card.  Every card in a hierarchy will have its own % complete attribute as well as a child Card % Progress attribute. Depending on your context, you can choose for them to behave exactly the same way (which is the CURRENT system behavior), OR you can choose to have different calculation methods for each, as needed.

For example, if you want your parent card movement based on the child card completion, then you can decide the Card % Progress to be equal to Child Card %  complete ( which is the current scenario). But, if you want to track your parent card progress based on its own To-Do or Manually and NOT based on its child card %  complete, then the current Card Hierarchy does not support that.

The implementation of this new model will help you decide your own way of tracking the progress.

Let us now understand the changes in the  Parent-Child Hierarchy in SwiftKanban 8.0.

Changes in Parent-Child Hierarchy in SwiftKanban 8.0

In 8.0 release, we are going to implement the following changes:

  • To achieve the above-mentioned enhancement, two new attributes, “Card % Progress” and “Child % Progress” will be introduced for every card type. Each of these attributes will display the value on the card based on the calculation preference selected for each of them. We have explained all the preferences for “Card % Progress” and “Child % Progress” in detail below.
  • There will be two separate Percent Progress indicators on the card. The first attribute, “Card % Progress” will store the % progress of the current (that is, the parent) card. The second attribute “Child % Progress” will store the aggregate % complete of all the child cards of this (parent) card.
  • An Admin (at the Org. level)and a Board Manager can configure how these attributes are to be calculated for each Card Type within a Board. While the Org Admin sets the default configuration which becomes available to a newly created Board, the Board Manager can change the default preference of both these attributes at the Board level.
  • For all the existing Boards (created before 8.0), all the card types at the Board level, will by default have both these % Complete attributes. For the “Card % Progress” attribute, the default preference will be Child Percent Progress and for the “Child % Progress” attribute, the preference will be the “Percentage of Child Cards Completed”.
  • The ‘Card % Progress’ will show the value of % complete at THIS card level (i.e. the parent card level) itself, which can be calculated using one of the following four methods:

  1. Manual: Using this preference, you can manually enter percent value in the Manual Progress field of your card. For example, if you enter 40 in the Manual Progress field, the card will always show 40% completion. Use this preference when you are unsure about evaluating progress percentage based on any calculation method.

As shown In the above image, if we apply this preference on the THM1 card, then its percent complete will be driven manually.

  1. Percentage of My Card ToDos completed: You can select this preference, even if the card has other child cards.  This preference is recommended if the completion of the ToDos of the parent card is MORE important to track/ calculate the  % progress of the parent card. The formula for deriving Card Percent Complete is:

Count of Completed ToDos of the Parent Card/Total count of ToDos of the parent Card)*100.

As shown in the above image, if we apply this preference on THM1 card, then its percent complete will be:

Count of Completed ToDos of THM1/Total count of ToDos of THM1)*100.

  1. Percentage of My Card ToDo Effort completed: This preference can be quite useful for a Scrumban team to track the efforts of their ToDos under release/sprint cards. The formula used for deriving the Parent Card % Progress is:

Sum of the Actual Effort of All ToDo of the Parent Card/Total ToDo Effort of the Parent Card)*100, where Total ToDo Effort = Actual ToDo Efforts + Remaining ToDo Efforts.

As shown in the above image, if we apply this preference on THM1 card, then the percent complete will be Sum of the Actual Effort of All ToDo’s of THM1/Total ToDo Effort of THM1)*100.

 

  1. Child Percent Progress: As is the current behavior in SwiftKanban, often, you will want a card’s percent complete to be computed based solely on the completion of its child cards. If you need that, you can use this preference. In this ONLY, the Card % Progress AND the Child % Progress will BOTH be equal. For example, if the Child % Progress field displays 50% completion, the Card % Progress field value will also show the same.

As shown in the above image, if we apply this preference on the THM1 card, then its “Card Percent Complete” value will be equal to that of “Child Percent Complete”.

Note: In all of the above preferences, when the card is archived or moved to or beyond the Done column, the Parent Card % Progress value will get updated to 100, irrespective of the preference set on the card. But for the Child Percent Progress preference, even if the Card gets archived or Done and therefore the “Card % Progress” field/attribute of the parent card gets updated to 100%, the “Child % Progress” field/attribute of the same parent card won’t have any impact.

  • The “Child % Progress” attribute of a card will store the aggregate percent progress of THIS card’s child cards. (REMEMBER – this NEW attribute is provided to help you understand the completion status of the Child Cards of this ONLY. This MAY or MAY NOT be the same as THIS card’s % progress, depending on the preference you choose for calculating the “Card % Progress” attribute of this card, as explained in the previous section.)

There will be three options for calculating the progress % of child cards:

  1. Percentage Of Child Cards Completed: Use this preference if you want to track the completion of this card’s child cards based on the count of completed child cards vis-a-vis the total number of child cards this card has. This is the same as the current “Card Hierarchy” method.  The preference considers the child cards that have Overall Status = Closed out of the total number of cards at each level and then evaluate the average value from bottom to top.

As shown in the above image, consider the parent card THM1, having 2 child cards (EPIC1, EPIC2) and EPIC1 has 3 child cards (UST1, UST2, UST3), where UST2 had the overall status as Closed. Then percent complete of parent EPC1 is derived as 33.33% (1 out of 3). Subsequently, percent complete of THM1 is derived as an average of the percent complete of the EPC1 and EPC2 as 16.67%.

  1. Percentage of completed ToDos of Child cards: If the Team Members are defining ToDo(s) for each activity under a card, then the computation of ‘Child % Progress’ based on completion of ToDo(s) can give a more accurate picture. This preference computes the Child % Progress based on this formula:

Total Completed ToDos on Child Cards in Next Level)/ (Total ToDos on Child Cards in Next Level

In the above image, consider the parent card THM1, having 2 child cards (EPIC1, EPIC2) and EPIC1 has 3 child cards (UST1, UST2, UST3). Now the count of completed ToDos is 5, 10, and 0 for UST1, UST2, and UST3, respectively. The total ToDo count is 15, 20, and 20 for UST1, UST2, and UST3, respectively. If the preference is set on EPIC1, then the total completed ToDos of the child cards is evaluated as 5 + 10 + 0 = 15 and the total ToDos is evaluated as 15 + 20 + 20 = 55. So, the percent complete of parent EPIC1 would be (15/55)*100 = 27.27%.

Note: For both the above options, If a child card gets discarded or aborted, then that child card won’t be considered for the computation.

  1. Percentage Effort of completed ToDo of Child Cards: This preference is recommended if you are defining ToDo(s) for child cards and tracking their Estimated, Remaining and Actual Effort. This provides a more granular level of computation compared to the previous two options. This mode of work may be used by Scrum/ Scrumban teams that are tracking Burndown Charts.

The computation of ‘Child % Progress’ using this preference uses this formula:

(Sum of the Child cards ToDo Actual Effort in the next level/Total ToDo Effort of child cards in the next level)*100,

Where,

Total Effort of child card ToDos in at the next level = Actual Efforts of child card ToDos at the next level + Remaining Effort of child card ToDos at the next level

In the above image, consider the parent card THM1, having 2 child cards (EPIC1, EPIC2) and EPIC1 has 3 child cards (UST1, UST2, UST3). The ToDo Actual Effort is 4, 8, and 13 for UST1, UST2, and UST3, respectively. The ToDo Remaining Effort is 14, 20, and 20 for UST1, UST2, and UST3, respectively. If the preference is set on EPIC1, then the sum of Actual ToDo Effort of its child cards is evaluated as 4 + 8 + 13 = 25, and the total ToDo Effort is evaluated as (4 + 14) + (8 + 20) + (13 + 20) = 79. So, the percent complete of parent EPIC1 would be (25/79)*100 = 31.65%.

Note: For a card where work has not started and there is no log of Remaining Effort, Estimated Effort is considered as the Remaining Effort.

Default Card Hierarchy Behavior After Migration to 8.0 Release

After the migration to the 8.0 release, all the card Types in a given Board which are not flowing through any portfolio swim lane, the “Card % Progress” attribute calculation will be defaulted to the “Child % Progress” preference and “Child % Progress” attribute will be defaulted to the Percentage Of Child Cards Completed preference. This will ensure that the CURRENT behavior of % progress is accurately carried over to the new model.

Portfolio Lane

Current (Pre 8.0 release) Behavior

Currently, the Portfolio Lane is a special type of a lane on the board, where the horizontal position of cards in the lane visually communicates the % progress of those cards. Today if you set any Swim lane to Portfolio, the % progress of the card on the Portfolio lane is decided by one of the following Portfolio Base in the configuration of the Swim Lane settings:

  1.  Tracking Parent Card Based on Hierarchy
  2. Tracking Card Based on its To-Do’s
  3. Tracking the Parent Card Based on the To-Do’s of its Immediate Child Cards
  4. Tracking Cards Manually

You can get the details of each of the Portfolio Base by clicking the links above.

As you may be aware,  if you select the Portfolio Base as Hierarchy, then the % progress of the parent card as indicated in the horizontal scale of the Portfolio Lane is the same as the rolled-up progress of its child cards, indicated by the green circle on the parent card. In other words, the horizontal position on the portfolio lane and the green circle are “synchronized”.

But, if the Portfolio Base is other than Hierarchy, such as Child card To-Dos, then while the green circle shows the rolled-up progress of the child cards, the parent card’s progression on the portfolio axis is governed by the Portfolio Base, which maybe Child card To-Dos as in this case or the card’s own ToDos. Therefore, the % progress of the card as shown on the horizontal slider of the Portfolio Lane is NOT synchronized with the completion indicated by the green circle icon of the card and MAY be different in value.

To resolve this issue, we have made some improvements in the Portfolio Lane feature in the 8.0 release.

Features of New Portfolio Lane

If you have a Portfolio lane configured in your Board, then after the 8.0 release, you should be aware of the following migration impact:

  • Any existing Portfolio Swim lane created before 8.0 release will continue to have the same structure of columns – Ready, In-Progress, and Done. The lane  will still be defined as Portfolio in the  Smart Lane Settings window.
  • There will be no more options of (Hierarchy, To-Do, Child Cards To-Do, or Manual) as a Portfolio Base in an existing or new Portfolio Swim lane.
  • The Portfolio Base will now have only two options: “Card % Progress” or “Child % Progress”.
    • If you set the Portfolio Base as “Card % Progress”, all Portfolio Lane cards will progress based on the value of their “Card % Progress” attribute (which will be calculated based on whatever preference has been selected for the “Card % Progress” of its card type).
    • Similarly, if you set the Portfolio Base as “Child % Progress”, then all Portfolio Lane cards will progress based on the card’s “Child % Progress” attribute value (which will, of course, be calculated based on whatever preference has been selected for the “Child % Progress” of its card type).
  • To know how the cards in an existing Portfolio lane (pre-8.0 release) will progress after 8.0 release, see the following table:
If You Have Set Portfolio Base in Pre-8.0 to…. Then post 8.0, the default Portfolio Base will be set as… The Preference of “Card % Progress” of All the card Type flowing via the Portfolio lane will be based on… The Preference of “Child % Progress” of All the card Type flowing via the Portfolio lane will be based on…
Hierarchy Card % Progress Child % Progress Percentage of Child Cards Completed
Child To-Do Card % Progress Child % Progress Percentage Of ToDos Completed of Child Cards
Manual Card % Progress Manual Percentage of Child Cards Completed
To-Do Card % Progress Percentage of My Card ToDos completed Percentage of Child Cards Completed
  • Now while doing the above card type settings, If cards of the same Card Type are flowing through multiple Portfolio lanes in a Kanban Board, and each of the swim lanes has different preference settings, then SwiftKanban will pick up that Portfolio lane preference setting using which maximum number of open cards are currently flowing and apply the above logic for that Card Type across other Portfolio Swim lanes.

Consider this scenario:

    • If a Kanban Board has 3 Portfolio Swim lanes, Lane A, B, C.
    • The Portfolio Base for Lane A is Card % Progress, B is Child % Progress and C is Manual.
    • There are 21 portfolio cards of card type User Story in Lane A, 10 cards of the same card type in Lane B and 5 cards of the same card type in Lane C. All these cards across Lane A,B,C are in “In-Progress” column (which means they are flowing).
    • In such case, the % progress of User Story Card Type will be Portfolio Base of Lane A (which is Card % Progress) because Lane A currently has the maximum number of “in-progress” User Story cards.
  • You can change the “Card % Progress” and “Child % Progress” calculation methods for any of your Card Types anytime from the Board Editor. However, any OPEN cards will NOT be recomputed after the change. Therefore, if there is any change in the value of the  Card % Progress and Child % Progress field due to the modified settings, they will be updated only after you perform a relevant operation on the card.

For example, if you have changed the preference for “Card % Progress” from Manual to Percentage of  My Card ToDos completed for card type User Story, then the calculation of a User Story card will not be updated due to the change in the preference till you add a To-Do or close an existing To-Do in that card.

  • Was this helpful?
  • Yes   No