Power BI collaborative development
allows multiple developers to work collaboratively on the same PBIX.
Idea could be separate back-end (advanced editor) and fron-end (modelling and report design) or allows the possibility to merge more than one pbix.
Dan Robbins commented
You can already decouple the data from the visualizations. (see below)
Having the ability to DIFF PBIX files and MERGE changes would be very helpful.
1. Perform all of your Data Modeling (Power Query M and DAX) in one PBIX file.
2. Publish it to the Power BI Service.
3. Open a new Reports PBIX file, select Power BI -> Power BI datasets as your data source.
You can also add additional DAX to the Reports PBIX file.
This allows versioning of the Dataset and building Reports tailored to different audiences.
The Report PBIX files are ### KB while the Dataset PBIX files are ###,### KB or larger.
You can decouple your ETL (Power Query M) & Model (DAX) from the Report definition using Analysis Services Tabular. If you have an Azure AS instance, you can even deploy the ETL & Model portion of a .pbix directly to it. This may not be an option for smaller organizations, as Analysis Services is far from free, but to those who can...
The good: IT can govern the semantic model and still provide a lot of reporting flexibility to end-users.
The bad: Analysis Services models at the 1400 compat-level are still crammed into a single-file .bim file... not a good thing for your VCS.
The ugly: The Analysis Services tooling in SSDT for Visual Studio feels a bit abandoned. They ported the Power BI "Get Data" experience into SSDT a while back, which is great, but Power Query Groups are broken/unimplemented, making managing the ETL for larger projects a nightmare.
Great Idea. It should also allow us to use version control systems in order to keep up with the changes everyone has made
Jeroen Habets commented
Or even better: a proper integration with source control (e.g. git). An integration is proper when you the files are text so you can diff (= view differences).
Please allow the possibility to merge more than one PBIX in order to collaborate effectively with colleagues during developments. It's needed