{"id":8784,"date":"2015-05-04T13:04:36","date_gmt":"2015-05-04T13:04:36","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/visualstudioalm\/2015\/05\/04\/gain-understanding-and-insights-into-projects-in-visual-studio-online-with-power-bi\/"},"modified":"2022-08-01T00:08:21","modified_gmt":"2022-08-01T08:08:21","slug":"gain-understanding-and-insights-into-projects-in-visual-studio-online-with-power-bi","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/devops\/gain-understanding-and-insights-into-projects-in-visual-studio-online-with-power-bi\/","title":{"rendered":"Gain understanding and insights into projects in Visual Studio Online with Power BI"},"content":{"rendered":"<p>The Visual Studio Online team is proud to present the initial release of the Visual Studio Online content pack for Power BI. This is the first in a wave of additions to the analytical capabilities of Visual Studio Online using Power BI to easily visualize data and gain insights not previously possible. Understanding data is the key to making insightful business decisions, identifying gaps and issues, fixing those issues and monitoring progress. You can try it now by signing in to <a href=\"http:\/\/www.powerbi.com\">www.powerbi.com<\/a>.<\/p>\n<h3>What\u2019s available in this release?<\/h3>\n<p>Before showing off some of the features, it\u2019s important to know what\u2019s included. Our efforts are focused on delivering incremental value to our customers so we get working product in their hands as quickly as possible. This allows customers to use the capabilities we deliver and allows us to get rapid feedback on what has been produced. With this in mind, source control data from Git repos (including Pull Requests) and Team Foundation Version Control are included in this initial release. For specific information on what is included in each dimension, check out the <a href=\"https:\/\/aka.ms\/vsopbi\">official documentation<\/a>. Other data will be added in short order in addition to fine tuning the existing capabilities. Work Item tracking data is next.<\/p>\n<p>Start by getting a Power BI account. Go to <a href=\"http:\/\/powerbi.com\">http:\/\/powerbi.com<\/a> and sign up. Signing up is free. When you sign up for Power BI, you must use your organization or school email account. This does not have to be the same credentials you use to connect to VS Online. When you connect to VS Online to pull data into Power BI, you will be prompted for your VS Online credentials. Your Power BI account is completely separate from VS Online \u2013 you get a Power BI account and then VS Online is one of many data sources from which you can pull data.<\/p>\n<h3>Connecting to Visual Studio Online<\/h3>\n<p>The connection experience authorizes Power BI to access your VS Online account and starts with selecting the Visual Studio Online connector. It is important to note that there are two different scenarios for the connection process. These scenarios are outlined here:<\/p>\n<p>1&#46; Your VS Online account is backed by AAD and is the same AAD account you log into Power BI with.<\/p>\n<p>2&#46; You log in to your VS Online account with an MSA (Microsoft account\/LiveID) or you log into your VS Online account with different AAD credentials than you log into Power BI.<\/p>\n<h4>Scenario #1: VS Online and Power BI AAD credentials are the same<\/h4>\n<p>1&#46; Once you log into Power BI, click Get Data in the upper left corner<\/p>\n<p><img decoding=\"async\" title=\"clip_image002\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image002\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/1513.clip_image002_13D83624.jpg\" width=\"244\" height=\"110\" \/><\/p>\n<p>2&#46; Select the Visual Studio Online connector and click Connect<\/p>\n<p><img decoding=\"async\" title=\"clip_image004\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image004\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/8030.clip_image004_thumb_018F6F62.jpg\" width=\"677\" height=\"410\" \/><\/p>\n<p>3&#46; In the Configure Visual Studio Online dialog enter the account name (don\u2019t include visualstudio.com so if the account is \u201ccorpx.visualstudio.com\u201d just enter \u201ccorpx\u201d) and the project you want to connect to.<\/p>\n<p>a. Note that wildcards are supported. You could enter \u201c<em>\u201d for every project in the account or, if you had projects with these names \u201cTest1\u201d, \u201cTest2\u201d, \u201cTest3\u201d, \u201cApp1\u201d, \u201cApp2\u201d and entered \u201cTest<\/em>\u201d Power BI will retrieve data for the projects Test1, Test2 and Test3.<\/p>\n<p><img decoding=\"async\" title=\"clip_image006\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image006\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/5810.clip_image006_thumb_6F46A89F.png\" width=\"445\" height=\"319\" \/><\/p>\n<p>4&#46; Clicking next will take you to the OAuth screen \u2013 only OAuth2 is currently supported at this time.<\/p>\n<p>a. Please note that this is where the first issue may occur. It is possible, on the VS Online Connection Settings screen, for an administrator to turn off third party application access via OAuth. If an administrator did this, you will not be able to access your VS Online data through Power BI and you will need to contact your VS Online administrator. Here\u2019s what the VS Online Settings screen looks like if everything is correctly enabled:<\/p>\n<p><img decoding=\"async\" title=\"clip_image008\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image008\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/8546.clip_image008_thumb_2F108F25.jpg\" width=\"481\" height=\"109\" \/><\/p>\n<p>Click <strong>Sign In<\/strong> to continue. This will display the VS Online authorization dialog which allows Power BI to retrieve data from your account.<\/p>\n<p><img decoding=\"async\" title=\"clip_image010\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image010\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/0535.clip_image010_thumb_03CBF81E.png\" width=\"486\" height=\"458\" \/><\/p>\n<p>5&#46; Click Accept<\/p>\n<p><img decoding=\"async\" title=\"clip_image012\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image012\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/3000.clip_image012_thumb_4395DEA3.jpg\" width=\"700\" height=\"601\" \/><\/p>\n<p>At this point, the screen will close and Power BI will begin importing your data.<\/p>\n<h4>Scenario #2: Using Microsoft Account or different AAD credentials (from Power BI) to log into VS Online<\/h4>\n<p>If you are using a Microsoft Account or different AAD credentials than you use for Power BI, you will need to supply those credentials to VS Online to get access to the data. This can happen in one of two ways. Either, the connect experience will prompt you for the credentials or, if you access VS Online often, your browser may have your most recent credentials cached. If the cached credentials match the account you are connecting to, it will work seamlessly, however, this caching can be confusing if the last account\/username you used isn\u2019t the one you need to enable Power BI to access the VS Online data. This can lead to Access Denied errors. If you are getting access denied errors without any prompt for credentials, then you should use In Private in IE or Incognito in Chrome to bypass the cache.<\/p>\n<p>If your cached credentials work, you won\u2019t get prompted. If you don\u2019t have cached credentials, then you will be prompted to login to VS Online. If you are using a Microsoft account enter your credentials on the right hand side of the dialog. If you are using AAD credentials, click the link on the lower left hand side of the dialog.<\/p>\n<p><img decoding=\"async\" title=\"clip_image014\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image014\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/3583.clip_image014_thumb_4A48E826.png\" width=\"701\" height=\"485\" \/><\/p>\n<h3>Using Power BI with VS Online<\/h3>\n<p>Once connected, data is populated in Power BI and an instant dashboard is created for you. Depending on the size of the data, this may take a few minutes.<\/p>\n<p>Once connected, the first thing we recommend doing is changing the name of the data source. By default it is \u201cVisual Studio Online\u201d. If you connect to multiple VSO accounts, or multiple projects, this will become confusing. To change the name, hover over the datasets name and click the ellipses.<\/p>\n<p><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/1882.image_192ABD00.png\" width=\"758\" height=\"329\" \/><\/p>\n<p>Click Rename to rename the dataset. It is also worth considering changing the initial report name and dashboard name.<\/p>\n<h4>Understanding how the data is retrieved, stored and updated<\/h4>\n<p>The data source that is connected to when retrieving data for Visual Studio Online is actually the public REST APIs. Once connected, data from the project is retrieved through those APIs and stored in a tabular model in Power BI. At the moment, every user who connects to Visual Studio Online retrieves a full copy of all of the data. The populated model cannot be shared but dashboards created from it can be shared (to share, select the ellipses next to the dashboard to share and click \u201cShare\u201d).<\/p>\n<p>Currently the data is refreshed every 24 hours. Soon you will be able to schedule refreshes to happen more frequently so that the data is more up-to-date. For the moment, real-time data is best handled through the light-weight charting features within Visual Studio Online.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/3157.image_thumb_14480944.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/3157.image_thumb_14480944.png\" width=\"702\" height=\"312\" \/><\/a><\/p>\n<p>At this point the dashboard can be customized by novice or expert users in a variety of different ways. One of the newest and most innovative features in Power BI is the natural language query capability. As shown in the next picture, a user may ask a question such as \u201chow many pull requests per day?\u201d and the chart, scalar value or list (depending on the question) is dynamically generated \u2013 little knowledge of the underlying data model is required. This graph can then be pinned to the dashboard.<\/p>\n<p><img decoding=\"async\" title=\"clip_image020\" style=\"border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;border-top-width: 0px\" border=\"0\" alt=\"clip_image020\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/7737.clip_image020_thumb_2C6A6425.jpg\" width=\"706\" height=\"513\" \/><\/p>\n<p>This capability gives stakeholders the ability to quickly ask a question in a non-technical manner and get a definitive answer back. As more data is added in subsequent releases, the types of questions that can be answered will expand.<\/p>\n<h3>Empowering the Enterprise<\/h3>\n<p>For more advanced users, custom reports can be created which allow data to be displayed in many different ways. Data from Visual Studio Online is a natural fit for the complex nature of development data. For example, while a graph can be created showing the amount of time it takes for pull requests to be completed, if some pull requests take longer, does this necessarily indicate a problem with the workflow? That question can only be answered by looking at correlated data. Perhaps the amount of time it takes to complete a pull request is related to the number of files changed in the pull request. With Power BI these types of correlations are simple to do.<\/p>\n<p>The default dashboard is backed by the default report that is created. Starting off with this dashboard:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/8204.image_thumb_01930F8D.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/8204.image_thumb_01930F8D.png\" width=\"725\" height=\"371\" \/><\/a><\/p>\n<p>Clicking the Commits by Week, Repo will take you to a specific report with more detail (in this case the default report):<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/5657.image_thumb_3CE6754B.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/5657.image_thumb_3CE6754B.png\" width=\"730\" height=\"370\" \/><\/a><\/p>\n<p>At this point everything on the page becomes interactive. Clicking the week of March 2<sup>nd<\/sup> on the middle graph results in the report looking like this:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/1781.image_thumb_5F3E0AC4.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/1781.image_thumb_5F3E0AC4.png\" width=\"738\" height=\"374\" \/><\/a><\/p>\n<p>Now everything on the report is filtered by the week starting on March 2<sup>nd<\/sup>. And this exposes some of the amazing power provided by Power BI. Graphs are no longer static, they are all correlated to each other. Virtually anything that shows a visualization can be selected which causes everything else to be filtered. In addition, reports can have multiple pages which are easily navigated at the bottom of the page:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/0724.image_thumb_338D40C8.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/0724.image_thumb_338D40C8.png\" width=\"740\" height=\"375\" \/><\/a><\/p>\n<p>The default report creates three pages, a Git Activity, Pull Request and Version Control page.<\/p>\n<p>To add to the report for a given dataset, open the report and click Edit Report in the upper left corner. At this point all of the data in the dataset is exposed to you. Once you click Edit Report, click the plus in the blank page on the left side of the screen as shown here:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/1222.image_thumb_07DC76CC.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/1222.image_thumb_07DC76CC.png\" width=\"713\" height=\"406\" \/><\/a><\/p>\n<p>This adds a new blank page. To start creating new graphs, just click the fields (or measures which are represented by a calculator next to the field names) and they will be added to the report. For example, suppose you wanted to see the number of commits made by each user. Under the User dimension, click the User field (this will generate a \u201crank by commits\u201d graph as the default so just remove the \u201cContributor rank by commit\u201d entry from the values on the right side of the screen. Go up to the Commits section and check the Commits measure. You end up with this report:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/5140.image_thumb_77D038C5.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/5140.image_thumb_77D038C5.png\" width=\"727\" height=\"369\" \/><\/a><\/p>\n<p>Note the measure is the value field on the right and the Axis is \u201cUser\u201d. Optionally you can drag another field to the legend area which will add another dimension to the graph. But we can take this one step further.<\/p>\n<p>Say an end user (development manager maybe) is interested in who add\/edited\/deleted files in a given repo. Click anywhere in the blank space on the report to deselect the graph. Then expand the Repositories dimension and click the Repo field. Uncheck the measure that is added by default. Expand the Commits dimension and click the Commits measure. You can also just drag the Commits measure to any blank area of the canvas to create a new visual. You can even drag it into an existing visual to add it there too. The web experience is fully touch optimized, so you have a lot of fun with it on a touch screen. At this point there is a basic graph there. Change the graph type to a stacked bar chart as shown here:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/6557.image_thumb_0BE9554F.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/6557.image_thumb_0BE9554F.png\" width=\"729\" height=\"566\" \/><\/a><\/p>\n<p>The chart button will appear to the left or the right of chart when the mouse is hovering over the chart. Next, click the Files Added, Files Deleted and Files Edit measures in the Commits dimension. And with these few steps the following report is created:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/2678.image_thumb_46D08818.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" title=\"image\" style=\"border-top: 0px;border-right: 0px;border-bottom: 0px;border-left: 0px\" border=\"0\" alt=\"image\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2015\/05\/2678.image_thumb_46D08818.png\" width=\"740\" height=\"375\" \/><\/a><\/p>\n<p>Selecting the any of the bars on one chart will filter the results on the other. Either chart can be pinned to the dashboard once the report is saved.<\/p>\n<p>These capabilities combined with the advanced visualization offered by Power BI let you make sense of your data faster than before. As we make more data available, more information and more correlations for deeper insight and understanding of you processes will become possible. Please give the new Visual Studio Online content Pack for Power BI a try and give us your feedback!<\/p>\n<p>Sign up for Power BI at <a href=\"http:\/\/www.powerbi.com\">www.powerbi.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Visual Studio Online team is proud to present the initial release of the Visual Studio Online content pack for Power BI. This is the first in a wave of additions to the analytical capabilities of Visual Studio Online using Power BI to easily visualize data and gain insights not previously possible. Understanding data is [&hellip;]<\/p>\n","protected":false},"author":170,"featured_media":45953,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-8784","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops"],"acf":[],"blog_post_summary":"<p>The Visual Studio Online team is proud to present the initial release of the Visual Studio Online content pack for Power BI. This is the first in a wave of additions to the analytical capabilities of Visual Studio Online using Power BI to easily visualize data and gain insights not previously possible. Understanding data is [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/8784","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/users\/170"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/comments?post=8784"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/8784\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media\/45953"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media?parent=8784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/categories?post=8784"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/tags?post=8784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}