Author: Bart Scott, Board Developer at CFO Solutions LLC and Community Captain
Board Impact Analysis is a very powerful tool that can be used to assess impacts of proposed changes as well as help in debugging, when used properly. There are two different areas you can utilize the Impact Analysis within Board. Only Developer licensed users can access the Impact Analysis.
The first Impact Analysis is found as a tab in Entities and Cubes. This enables a Developer to analyze where a specific Entity or Cube is used across the Board Application. This can be helpful to determine what may be impacted if an Entity and/or a Cube needs to be modified or cleared. The screenshot below shows an example from an Entity where the Analysis tab is chosen. It identifies that the selected Entity is used in six cubes, one data reader, four screens, and one procedure. If a Developer was going to make changes to this entity, this enables them to determine what parts of the application might be impacted by that change.
When analyzing Cubes, a similar Analysis is available with some differences. The Cube analysis will show which entities are selected for use in the cube, the sparsity, any data readers that populate the cube, any screens the cube is utilized within, and all procedures that utilize the Cube and what dataflows within the procedures affect the Cube. Clicking on the Procedures, the Developer has the ability to launch the Procedure in another tab/window to further investigate the Cube usage. This is extremely helpful when debugging why data may be changing within the Cube. The Developer can identify what data readers affect the cube and what procedures utilize the cube with data flows.
When clicking on the Screens Analysis, similar to procedures, it lets the Developer analyze any screens that may be impacted with changes to the Cube. The Developer is also able to launch the screen directly from this Analysis.
The Second method of using Impact Analysis is available as a menu option under each Data Model.
Selecting the above will take them to the Main Impact Analysis area. This Impact Analysis allows a Developer to analyze multiple items at one time and get much more granular level details related to each item being analyzed. It will take the system a little time for the screen to be loaded because it is loading all the analysis upon opening, as shown below.
The above screen is broken into various sections, including the What, the Linked To and a Graph/List view option on the left-hand side of the panel. A Developer can decide what objects they would like to analyze and uncheck the ones they do not want to analyze to narrow down the scope of the report. For example, in the below we will focus on Procedures. Procedures and Cubes are the two most common items where Analysis is very helpful in debugging of data and/or processing. First uncheck the What checkbox to unselect everything. Then, check mark the Procedures. This will then change the graph accordingly:
Once you have narrowed the scope, you can switch to the List view on the left-hand side within the red circle below:
Checking the List view is optional, not required. It will just provide a different view of the analysis being requested, as shown below:
Once a Developer is happy with what needs to be analyzed, they click on the Analysis tab on the top of the view. As you can see from the screenshot below, there are 23 procedures within the Data Model that have been analyzed. The Procedures found in the red circle below can be clicked on to expand the procedures to further refine what needs to be Analyzed. The List view in the red square below is utilized to show all the details of the analysis.
Once expanded, the Developer can click next to procedures to uncheck all, as shown in the first red square, then select the specific procedures they would like to analyze. For this example, I am picking one specific procedure to analyze.
Once the Developer reduces the scope to the items they want to analyze, they can then click the List view shown inside the blue square on the screenshot prior. As shown below, there are a lot of details listed, from Entities being set in selections, to cubes being modified by dataflows, etc. This is an extremely powerful tool to analyze what may be impacted within the Board system.
In closing, Impact Analysis in Board is a powerful capability—so much so that we could easily fill a 200-page guide exploring its full range of applications. Mastering it is not just a nice-to-have; it’s an essential skill for every Developer.
- You can Analyze in both directions depending on what is needed. Either set the What and review Linked To, or reverse it and set the Linked To and review the What. Both are important depending on what analysis you are doing.
- You must have security to all capsules for the Impact Analysis to identify all Linked To screens and Capsule procedures properly.
- The most important usages of Impact Analysis are normally Cubes, Procedures and Entities, but knowing where Data Readers are utilized can be important as well.
- As mentioned, you must have a Developer license to use Impact Analysis.
- The Data Model Full Impact Analysis is best compared to the Cube/Entity Analysis, but the Cube/Entity Analysis can be used for quick reviews of where items are used.
- Practice makes perfect! The more you use the Impact Analysis, the more comfortable you will become, and it will be extremely helpful when tracking down unknown data changes happening in cubes.