In this article, we will help you understand how to work with the Story mapping feature.
Skip Ahead to: Advantages of using Story Mapping Configuring Story Mapping screen |
Overview
The Story Mapping Board in SwiftKanban offers you a comprehensive mapping tool to organize user stories into a visual map that communicates the end-to-end user journey from the big picture to actionable user stories. Inspired by Jeff Patton’s famous model, the three levels of the Story Mapping Board help you to:
- Frame the big picture of user requirements at the first or top-most level that addresses the common goal.
- Decompose it to the smaller, epic-level activities and associate them with the user persona at the second level.
- Break the user-driven activities down into smaller building blocks or user stories and associate them with a release strategy.
So, with the Story Mapping Board, you can quickly and efficiently build an MVP version of a product or feature in a Lean-Agile manner and achieve its desired outcomes with faster turn-around time.
Advantages of using Story Mapping
- Helps you visualize your product roadmap.
- Keeps the team members and the customers on the same page about what is happening on the Board.
- Depending on the product requirements, it helps you decide the iterations for the delivery.
- With the Multi-Board feature, you can enable multiple Boards, card types, and release/sprints on a single Story Mapping Board.
- It builds shared understanding and collaboration among the team members.
- Sizing, planning, and prioritizing the cards becomes easy.
Understanding Story Mapping
The structure of a Story Mapping Board is defined in three levels. Each level should have a unique card type associated with it.
At the top/first level of the Board, identify the Usage Sequence on how the functional flow is. These goals are divided into n number of smaller parts (for example – epics) at the second level. Along with the epics, their personas are set at this level. You can have more than one epic and their personas at the second level of the board. Moreover, after you create epics or themes at this level, you can decide which Board they should flow to by enabling the Multi-Board feature.
These epics are further broken down into smaller and workable parts (user stories) at the 3rd level of the board. Once the user stories are created, planned, and prioritized, they can be tagged to their respective Release or Sprint.
For example, consider you have created two custom cards Theme and Epic, and have associated them with levels 1 and 2 of the Story Mapping Board respectively. You are developing a mobile app for your eCommerce website. Its high-level goals/themes that you are planning to achieve in the next few months are ‘Find a product’, ‘Examine a product’, ‘Add to basket’, etc. These goals can be defined at the top/first level of the board.
Now, the goal/theme ‘Find a product’ can be divided into epics like ‘Browse product category’, ‘Search a product’, etc. At the same time, you can also define the personas of these epics on the board like Buyer, Seller, Administrator, etc. These epics along with their personas are set at the second level of the Board. Once you create user stories of these epics, you can tag them with the release or sprints available at the 3rd level of the Board.
By default, User Story is associated with Level 3 of the board. However, you can associate multiple cards with a level.
Important Points:
Before you start using the Story Mapping Board, here are some important points you need to remember:
1. Cards Created in the Story Mapping Board Flow to Kanban Board
Cards created on the Story Mapping Board such as Themes, Epics, and User Stories flow from the Story Mapping Board to the Source system which is the Kanban board. Cards created from the Kanban board or other areas of the application are not available in the Story Mapping board. So, it is recommended that cards are created from the Story Mapping board while working on a new feature/module.
2. Workitem’s Name, Description, Release, and Sprint Flow bi-directional
When you update any of these four fields in the Story Mapping Board these changes are reflected in the Kanban Board. Similarly, if you change the Name, Description, Release, or Sprint on a card from the Kanban Board then these changes are reflected on the Story Mapping Board.
3. Level 2 – Level 3 Cards Linking is Reflected in the Parent-Child Hierarchy View of Workitem
Linking of Epic to Theme and User Story/Technical Story to Epic/Theme done in the Story Mapping Board is reflected in the Parent-Child hierarchy view of the work item.
4. Modification in the Hierarchy View of a Workitem will not be reflected in Story Map
The planning of a product or a feature is done in the Story map. As the development work gets started and goes on, new workitems (user stories, technical stories, epics, etc.) may get created as the product/feature evolves. Since these workitems are created during the development and are not part of the original plan, these are not reflected in the Story Map.
So, any changes to the hierarchy of workitems made in the Story Map are reflected in the hierarchy view of the workitem but any changes made in the hierarchy view of a workitem will not be reflected back in the SM.
Besides, one may add a new level in the workitem hierarchy which is not configured in the 3 levels of the Story Map. In this scenario, the card hierarchy cannot be in sync with the Story Map. Also, the hierarchy may be set across multiple projects which might not be configured in the Story Map. Hence, it is recommended that you plan the product/feature roadmap in the Story Mapping Board and refer to it only from the initial scope point of view. Further updates to the hierarchy should be seen in the hierarchy view of the respective items alone.
Prerequisite
- To use the story mapping feature in SwiftKanban, one must have a supporting license. Please contact us at [email protected] to know how to avail of it.
- Once the Story Map is enabled via the Plugins page, the Admin needs to activate the license for the user. Get to know more about it from this page.
- The Story Mapping board has three levels so make sure you have three unique card types defined in the project to associate with the three levels of the board.
Configuring Story Mapping screen
To configure the Story Mapping in SwiftKanban, you must enable the Story Mapping plugin. To enable the Story Mapping plugin, perform the following steps:
Note: You must have Admin or Manager access to configure the Story Mapping feature in SwiftKanban.
- Click the More Options icon on the Control Panel.
2. Select the Admin Settings option. The Admin Settings page is displayed.
3. Click the Plugins tile. The Plugins page is displayed.
4. In the Story Mapping row, click Enable. The Story Mapping Setup window is displayed.
5. In the Story Mapping Setup, you can find the following details:
- Story Mapping UI Server URL: By default, it shows the front-end URL of the Story Mapping Service. like http://192.168.101.100:5000/.
- Story Mapping Data Server URL: By default, it shows the back-end URL of the Story Mapping Service. like http://192.168.101.100:8082/storymapping
- Swifkanban URL: It is the URL of the instance. By default, it will show the URL of the source system.
- Admin Login ID: It is the Login ID of the Integration user for the logged-in account. This user will be used to communicate between the Story Mapping Board and SwiftKanban using REST API calls.
Admin Password: Password of the Integration user. Generally, you only need to enter this information in this setup dialog box.
Note: For more information about Configuring the Story Mapping Screen, refer to the Story Mapping Deployment document.
Navigation for Story Mapping Board
To open the Story Map, click the Main menu and select the Story Mapping option.
Story Map page
The first time you navigate to the Story Map page, you can see a default Story Map, named First Story Map. If you are visiting the Story Map for the first time, the First Story Map will have nothing in it. You can start building that default Story Map Board by setting its configuration, adding cards to it, and enabling the Multi-Board feature (if required). Once you create cards on it, you can rename it.
Many a time, having one Story Map is not enough. Your business or functional requirement mandates that you have a separate Story Map for a separate product or feature roadmap. For example, on one hand, you want to build a mobile app similar to your web application, on another hand, you want to build the Analytics feature for your application. Both of them require a separate product journey involving different personas, and a different set of Epic-Theme-User Stories, and may also be tracked in a separate PI and Sprints. So, for such varied requirements, it is important that you create separate Story Maps, and not just one.
To fulfill such requirements, the Story Map feature lets you create any number of Story Maps and track a separate product or feature roadmap.
To create another Story Map, perform the following steps:
- Click the Add Story Map button on the Story Mapping page.
- Enter the Name and Description of the Story Map and click Save.
3. The newly created Story Map is displayed in the Story Mapping list.
You can modify the name and description of an existing Story Map by clicking the Edit icon against it under the Action column. Similarly, you can delete an existing Story Map by clicking the Delete icon.
Note: You cannot delete the Default Board.
Once you create a Story Map, click its name to open the Story Map and start building it.
Let us get to know more about it from the following sections. We will begin with understanding the layout of the Story Map which is in a Board format.
Story Mapping Board Layout
The Story Mapping Board in SwiftKanban has the following sections.
- Toolbar
- Level 1
- Level 2
- Level 3
Toolbar
The toolbar in Story Mapping Board helps you perform the given operations:
Zoom level – As the name suggests, Zoom level helps you get better visibility of the cards (with their ID and name) on the board.
Add Card – It helps you create a new card on the Board. To create a new card on the Story Mapping Board using the toolbar, perform the following steps-
-
- Click the Add Card
- Select the card type that you want to add. Depending upon the selected card type (and the level it is associated with), the level of the board opens in a pop-up window showing the position of the columns. The columns that are already occupied are shown in a dark shade while the available spaces are shown in light space.
- Select the column or position of that card on the board.
- Click Next. The Card details pop-up window appears.
- Enter the card title, and description, and select the Release and Sprint for the Card.
- Click the Save button. The card is saved successfully in the selected locations.
Note: The cards created in the Story Mapping board will also be shown in the Kanban board and they can only be deleted or modified from the story mapping board.
Notification – It shows a notification if any update or synchronization of information between Story Mapping Board and Application fails.
Full-Screen view – The Full-screen view helps you see the Story Mapping board in full screen.
More – The More icon has the following options in it-
- WBS On/Off – WBS stands for Work Breakdown Structure. So, when you click the WBS On/Off toggle, it shows you the WBS code on level 1, level 2, and level 3 cards along with their ID and Name. It helps you to know the linking between the cards at three levels.
Note: The WBS code is shown on level 3 cards only if they are linked to level 2 cards. - Layout Editor – The layout Editor helps you add a new column or delete an existing column in level 1 of the board. To add a new column or delete an existing column –
- Click the Layout Editor A small toolbar appears on each column of level 1 excluding column 1.
- Click the Insert 1 Column left, Insert 1 Column right, and Delete Column to add or delete an existing column. The column is added or removed.
Note: You can’t delete a column if it has cards in it. Only an empty column can be deleted. - To go back to the board view, click the Back to Board button on the Toolbar.
- Refresh – It refreshes the Story Mapping screen.
- Settings – It helps you set cards at the three levels, set personas at the second level, and select the option (Release or Sprint or both) that you want to tag cards to at the third level.
To do the settings of the Story Mapping Board, click the Settings icon on the toolbar. The Story Mapping Settings dialog box appears with the following sections in it-
- Associate Card Type to Levels – In this tab, you can set the cards to be used at the three levels of your board. It enlists all the card types that are defined in your Kanban board including the custom cards. Once you select a card type for level 1, it won’t be shown for level 2 and level 3. Similarly, the card type selected for level 2, won’t be shown for level 3. You can associate more than one card type for any level of the board.
To select a card type, click its name under the bar of that level and similarly, to remove a selection, click another card type and deselect the previous one.
Note: Each level must have at least one card type associated with it.
After selecting the card type for all three levels, click the Save button or click the Reset button to reset the settings.
- Define Persona – This tab helps you define the personas of your project at the second level of the Board. You can set multiple personas at this level (each row having a unique persona). By default, there are two personas on the board.
To set a persona, click the Define Personas tab in the Story Mapping Settings dialog box and enter the following details-
-
- Icon – Contains the profile pic of the persona. You can either select from the given icons by clicking the drop-down icon or upload an image from your system by clicking the image and selecting the Attach option.
- Name – Enter the name of the persona which will be shown on the board along with their profile picture.
- Persona – Enter the persona like Buyer, Seller, and so on.
- Position – Shows the position of the persons in the Story Mapping Board. For example, if the persona Buyer is in the first row and the persona Seller is in the second row of the board then their positions are 1 and 2 respectively. You can change the position of the persona by simply dragging and dropping them using the drag-drop icon in the left corner of the row. On reordering a persona, all its cards move along with the persona. For example, if the persona Buyer has three Epics in its row then moving the Buyer persona up or down will also move its three Epics with it.
- Abbreviation – Short name for the persona. For Example, for Buyer, you can set Buy, for Seller, you can set Sel, etc.
- Description – Short description of the personas.
- Action – Contains two icons Save and Delete. As the name suggests, the Save option helps you save the details of the persona you have entered and the Delete option allows you to delete the filled details.
After saving the details of the persona, click the Save button at the bottom of the diagram.
- Roadmap Planning – It helps you set the Release or Sprint or both for the mapping board (3rd level of the Story Mapping board).
1. Release – Select this checkbox to show all the open releases of your project in the mapping board. You can tag a card on the board to one of the releases on the Board.
2. Sprints – Select this checkbox to show all the open sprints of your project in the mapping board. You can tag a card on the board to one of the sprints in the roadmap.
3. Recommended – It will show both releases and sprints of your project in the mapping board. You can tag a card on the board to the given release and sprint.
Note: It will show all the open releases and sprints of the Board from where you have opened the Story Mapping Board. Moreover, the Release Planning and Sprint Planning plugins should also be enabled. After selecting the required checkbox, click the Save button to save the changes.
When you select the option as both the Release and Sprint for sprint planning then the cards planned for a Release but not for a Sprint will be visible in the “No Sprint Set” row in Level 3 of the Story Mapping Board and not in the Unallocated row.
Note: If you have enabled the Multi-Board feature via the Advanced Settings under the Roadmap Planning tab, then you can select any Board that you have access to for Release and Sprint. But if you have not enabled the Multi-Board feature, then It will show all the open releases and sprints of the Board from where you have opened the Story Mapping Board.
Level1
At this level, the Usage Sequence (on how the functional flow of the project will be) is defined. This usage sequence is broken down in detail in the rest of the two levels of the board.
In level 1, one column can have only one card. The cards at level 2 which are placed in the column under level 1 card are automatically linked to it. The stretch of a column in level 1 is considered before the next card in the same row. For example, if there is a card in column 1 and another in the Release and Sprint Planning column, then until you add any cards in column 2 and 3, they are considered a stretch of column 1’s card. So, all the 2nd and 3rd level cards in column 1, 2 and 3 are considered as column one.
Level2
The functional flow of the Board at level 1 is broken down into smaller parts at level 2 so that they can be tracked and managed easily. The cards at this level are associated with their personas. You can define more than one card type at this level and add cards accordingly. You can also move the cards to any column you want or link them with the cards at level 3.
By default, there are two personas on a board. You can add more personas as per your requirement from the Story Mapping Configuration Box. The Personas at this level can also be reordered along with their cards.
Level3
The granular level cards defined from the level 2 cards are set at this level of the board. You can set more than one card type for this level. These cards can be linked to level 2 cards which are already linked to level 1 cards and can be moved to any column across level 2 cards.
Cards at the three levels are recommended to be created in the Story Mapping board as they flow from SM to Kanban Board. However, if you make any changes to the four fields of the cards – Name, Description, Release, Sprint in the Kanban Board then those changes are synched up in the Story Mapping board. Note: If the Description field is not an RTF field, then the description field will not be synced.
The rows of level 3 of the Story Mapping board are:
Unallocated: When neither Release nor Sprint is planned for a card then it is visible in the Unallocated row.
No Sprint Set: When a card is planned for a Release but not for Sprint then it is visible in the No Sprint Set row.
The bar of level 1 shows the name of the eforms/workitems that have been configured for that level in Settings. The zoom level icon at the right side helps the user to see the card of that level in three different levels. Users can see the cards of these three levels in different sizes at the same time.
Release and Sprint planning
This level of the board has Releases Sprints or both (as selected in the Story Mapping Configuration box). The level 3 cards are by default placed in the Unallocated section. Once planned for the upcoming releases or sprints, they can be moved/ tagged to the respective release and sprints in this level using drag and drop or by directly tagging the card to Release or Sprints. Only open Releases and Sprints of the application are shown in the Story Mapping Board in chronological order.
Note: If you have enabled the Multi-Board feature via the Advanced Settings under the Roadmap Planning tab, then you can select any Board that you have access to for Release and Sprint. But if you have not enabled the Multi-Board feature, then It will show all the open releases and sprints of the Board from where you have opened the Story Mapping Board.
Board Activities
How to add a new card?
There are two ways to add a card on the Story Mapping board.
- Add a card by right-clicking
- Add a card using the Add Card button on the toolbar
To add a card by right-clicking, perform the following steps:
- Right-click the column in which you want to add a new card. From the drop-down list, select the card type.
Note: Only those card types will be shown that you have associated with that level in the Story Mapping Configuration dialog box. - Enter the name of the card.
- Click the Save button. The card appears on the board.
- To enter more details about the card, click the card. The card pop-up view opens.
- The top bar displays the Card type and the Card ID while the main window consists of two tabs – Details and Activity Log.
- In the Details tab, fill in the values in the following fields –
Title: The title is the name of the card. You can modify it anytime.
Description: A short description of the card.
Release: Select the release from the drop-down list that you want the card to tag.
Sprint: Select the Sprint from the drop-down list that you want the card to tag. - Click the Save button.
- You can see all the activities performed on the card like the date of modification, modified by and any description for that by clicking the Activity Log.
To add a new card using the toolbar, perform the following steps:
- Click the Add Card button on the toolbar.
- Select the Card type that you want to add to.
- From the Select Column to add Card pop-up window, select the cell position where you want the card to be placed.
Note: Cells that are already occupied with a card on them are shown in dark color and cannot be selected for adding a card. - Click the Next button. The card pop-up view opens.
- Fill in all the details of the card as mentioned above and click Save.
How to delete a card at level 1?
To delete a card, right-click the required card and select Delete. Once you delete a card from the board, it can’t be retrieved.
Note: Any existing card that belongs to a closed Board cannot be deleted until the Board is reopened
How to link a card to another card?
You can link a card from one level to another level on the Story Mapping board. When you link two cards at the two different levels of the board then the card at the upper level is automatically set as a Parent card and the card at the lower level is set as a Child card. For example, if you associate Card Type Theme at level 1 and Card Type Epic at level 2, then Theme and Epic cards are automatically set as parent and child cards. Similarly, when you link an Epic with a user story, then Epic is set as a parent card while the user story is set as a child card.
Note: The automatic linking of Epic and User Story is applicable only if there is one Epic in a particular column. If there are multiple epics in a column then the card at level3 (e.g. User Story) will not be linked to it automatically.
This linking can be seen with the help of WBS code. When you click the Show WBS button, then all the cards are shown with their WBS code on them showing their linking with each other.
Note: One card can have only one parent card at a time but one parent card can have multiple child cards.
- Linking of level 1 card with level 2 cards:
The Card Types you associate with Level 1 and Level 2 in Story Mapping Board automatically get linked with each other. So, whenever you create a level 2 card, it gets linked with the level 1 card of the same column. In case, the same column doesn’t have any card at level 1, then it is linked to the level 1 card in the left column.
- Linking of level 2 cards with level 3 cards:
To link a level2 card with level 3 card, perform the following steps-
- Right-click the level 2 card that you want to link with level 3 cards and select Link.
- Select Add Children. A bar appears at the bottom of the page.
- Select the card(s) from the level 3 that you want to link with level 2 card.
- Click the Save
Note: Card at level3 can have only one parent card. Those cards which are already linked won’t be shown for new linking.
Click Reset to select a different card.
Note: The linking of cards is persisted to the Story Mapping Board only and does not get reflected in the application.
How to move a card?
Cards in level 1 can only be moved to an empty column which means all the rows starting from level 1 to level 3 of that column should be empty. The level 2 and the level 3 cards can be moved across all the columns in that level.
To move a card, select the card and drag it to the required column before dropping there.
Note: Moving a card may break the existing relationship. For example, moving a card at level 2 to another column will break the relationship with its parent card at level 1 and will re-establish a new relationship with another parent card at level 1 based on its column position.
Story Mapping for Multi-Board
Many a time, the success of a product or service delivery significantly depends on the right orchestration between the product management and development team. As the product management team makes a fine alignment between the organization’s portfolio objectives and churns out high-level functional goals in the form of epics and features, the development team ensures they are well executed in smaller units like User Stories in an incremental fashion.
The whole planning and development activity can happen in a single Board or even across multiple Boards. In a multi-board scenario, the upstreaming or grooming of epics or themes can be managed in a product-planning Board, whereas the execution of those high-level activities can be managed and monitored in the form of smaller workable parts or user stories in a development Board.
However managing the seamless synchronization among cards of different natures (themes, epics, user stories) across the various Boards can at times be difficult if we are not able to see their end-to-end mapping visually. The multi-Board feature of the Story Mapping Board helps you overcome this problem as it helps you map the end-to-end journey of the product delivery across multiple Boards in a single place only. It not only saves the time and effort of managing cards and linking among them across multiple Boards but also keeps all the stakeholders on the same page.
For example, in the above scenario of developing a mobile app for an e-commerce website, its themes, and epics can be defined in one Board while its user stories and technical stories can be defined in another Board. In such a condition, you can have all the themes, epics, and user stories across multiple Boards in one Story Mapping Board to visually map the end-to-end product journey and keep all the stakeholders aware of what is happening in the system.
Note: While using the Story Mapping Board for multiple projects, one needs to ensure that the set of releases and Sprints are the same across all the projects so that the cards of the Story Map board are synchronized in all the projects.
Configuring Multi-Board in Story Mapping Board
To set the multiple Boards in the Story Mapping Board, perform the following steps:
The settings for configuring the Multiple Project settings are available under the Advanced Settings in the Story Mapping Settings dialogue box. To access it, perform the following steps –
- Click the Settings icon from the toolbar.
- Click the Advanced Settings link at the right-bottom corner. The Advanced Settings dialog box is displayed.
- In the dialog box. perform the following steps:
- Board – Here you can select the Boards that you want to configure on your Story Mapping Board.
Note: You can select any number of Boards but any closed Board will not be available to be selected for this field.To select the Boards:- Click step 1 and then click the Board field. By default, it shows the Board from which you have opened the Story Mapping Board.
- Clicking the field shows all the Boards that you have access to. Select the Boards where your cards created in the Story Mapping Board will flow.
- Card Type – Here you can select the card types that you want to access from multiple Boards. Those selected card types will be enabled for the Story Mapping Board.
To select the card type:- Click step 2 on the left side.
- Each Board that you selected in Step 1 is listed here where you can select the card type for each Board.
Note: You can select one card type from one Board only.
For example, if you have selected Themes and Epics from Board A then you can’t select the same from Board B. Similarly if you select User Stories and Technical Stories from Board B then the same can’t be selected from Board A.
Note: The Themes and Epics cards in Board A that will be tagged to the User Stories in Board B via the Story Mapping Board will be limited to the Story Mapping Board only. Since these Themes and Epics are not present in Board B, the user stories will be tagged to None back when seen from their respective Board. A message informing the same will also be displayed in the Activity Log for that card.
- Project for Release and Sprint – Here you can select the Board for your Release and Sprints. The Boards that you have selected in step 1 will be available here.
- To select the Board, click step 3 on the left side.
- Select the Board from the list.
Note: Release and Sprints will be selected from the same project only. But as mentioned above, the name of releases and Sprints must be the same across all the projects so that the cards of the Story Map board are synchronized in all the projects.
- Board – Here you can select the Boards that you want to configure on your Story Mapping Board.
While updating cards in the Kanban board, the four fields of the cards – Name, Description, Release, and Sprint also get synched up on the Story Mapping Board.
Once you have set the configuration for Multi-Board, you are ready to perform the Board activities like Add Card, Link Card, Move Card, and others.
Note: You can’t perform board activities on the Story Mapping Board if the respective Kanban board is closed. However, if you reopen the Kanban board then the board activities can also be performed in the story mapping board.