Plan loading optimizations are in place for RTC 6.0.1. These optimizations can significantly improve plan load performance for large trees. These optimizations include "Fetch Outplaced Children On Demand" and "Fetch Plan Item Children On Demand". With these optimizations enabled you can configure your plans by creating new lightweight plans and new lightweight plan views. Then use those whenever heavyweight plan views are not required.
The key is to configure plans to show you relevant information, for the items in that plan.
High level plans have a set of high level plan items, such as Stories or Epics. In the plan view settings, set “Include children from other plans: “ to “1 Level”. Then switch to the narrowly focused plans when you need to see the details of those nested trees.
Rather than using one monolithic plan and drilling down to a specific team and iteration, create a plan that is scoped to what each team is currently working on and have the teams work from those plans.
Cross project plans should be used for calculating the schedule of items that you want to track together, but that do not share a project area.
The work item scheduler is a main component of how planning works. Work Items appear in the accumulated time view in the order they are scheduled. Plan snapshots are used to calculate the schedule for cross project plans. Because of the need to calculate schedules using work items from multiple snapshots, cross project plans can be slower than other plans. In general, if you are not tracking the schedule of a group of items from different project areas, you should use another plan type.
If you have a cross project plan and want to continue to track these items together, but you do not need scheduling information, then create a new plan of type of some other type such as “Release Backlog”. Set the Owner and Iteration for the new plan to those of the cross project plan. Then in the new plan, create a new view that is a copied from the view in the cross project plan.
Child elements will be loaded as needed when delayed child loading is enabled and active. This allows large tree plans to only load top level elements. And that can significantly improve performance.
Outplaced Children are children that are not directly part of this plan, but are still shown as part of the tree.
Plan Item Children are children that are directly part of this plan.
Unfortunately, not all plans can take advantage of delayed load. These plans will load all plan children, regardless of the settings. This section describes plan options that can be modified to allow your plans to use delayed loading of children.
Settings to enable delayed load of items are in the “Application Administration/Advanced Properties”. When these settings are enabled plans only load the top level items. Then when a plan item is expanded in the plan view tree, the children for the plan item are loaded.
In order to calculate accumulated time all plan items must be loaded by the client.
If you are not using the accumulated time information, create a copy of the view with all the other information you are using. Then remove the accumulated time column from the copy.
The server does not have enough information to determine the team of each item. The client fetches all plan items to calculate this grouping.
In the Scrum Project Template the Release Backlog/Team View is grouped by Team.
Avoid this grouping if it is not specifically what you want.
The server does not have enough information to determine the grouping for the items. The client fetches all plan items to calculate the grouping.
Avoid this grouping if it is not specifically what you want.
Once you have created your new lightweight plan view based on the information above, you can set that view as the default plan view. Then this plan will load more quickly when you or others view the plan.
If you create a lightweight view that loads quickly you can open it to work with. If after working with it you realize you want additional information, toggle over to the heavyweight view. The existing data will remain loaded as the plan pulls in the additional information you want to work with. You don't pay the plan load penalty twice. Obviously if you know you need the data initially, you can just open the heavyweight view to begin with.
Eliminate unnecessary item loading by using Plan Scope.
Other plan exclusions work by filtering plan items after the plan has loaded. Plan Scope keeps items that do not need to be displayed from being fetched by the client by filtering on the server. Plan Scope can be particularly helpful in removing resolved items, or items whose type is not appropriate for this plan (e.g. release items vs. plan items).
For more information on configuring plan scope see: Plan Performace/Plan Scope
It is difficult to come up with a single number of elements that work best for planning. A plan shows some set of information about a group of elements. Performance is highly dependent on what is being shown. In general plans with 300 to 400 elements should load quickly. You can continue to increase plan size up to 1,000 to 1,500 elements. Once you start getting above this you may find performance degrading.
In addition, releases of RTC (5.0.2 and forward) include a new planning tool, called RTC Quick Planner which allows teams to edit plans in a fast and fluid manner. RTC Quick Planner is fast and lightweight; plans load much faster, as it only loads only a few screens of the plan at a time and then loads additional plan items as you page through the plan and ask to display them. Developers, Scrum Masters and other users who need to load plans quickly and create new work items dynamically, should be encouraged to use RTC Quick Planner for their daily plan scenarios.
I | Attachment | Action | Size | Date | Who | Comment |
---|---|---|---|---|---|---|
![]() |
PlanAccumulatedTime.png | manage | 73.6 K | 2016-06-03 - 16:06 | TimFeeney | |
![]() |
PlanChildren.png | manage | 35.4 K | 2016-06-03 - 16:07 | TimFeeney | |
![]() |
PlanConfigOptions1.png | manage | 50.1 K | 2016-06-03 - 16:02 | TimFeeney | |
![]() |
PlanConfigOptions2.png | manage | 35.7 K | 2016-06-03 - 16:05 | TimFeeney | |
![]() |
PlanDelayLoading.png | manage | 13.3 K | 2016-06-03 - 16:07 | TimFeeney | |
![]() |
PlanDetails.png | manage | 38.8 K | 2016-06-03 - 16:08 | TimFeeney | |
![]() |
PlanGroupByFolder.png | manage | 38.7 K | 2016-06-03 - 16:06 | TimFeeney | |
![]() |
PlanGroupByTeam.png | manage | 65.5 K | 2016-06-03 - 16:06 | TimFeeney | |
![]() |
PlanLightweightView.png | manage | 30.3 K | 2016-06-03 - 16:04 | TimFeeney | |
![]() |
PlanSwitchViews.png | manage | 33.7 K | 2016-06-03 - 16:12 | TimFeeney | |
![]() |
PlanViewCopy.png | manage | 40.7 K | 2016-06-03 - 16:07 | TimFeeney |
Status icon key: