10 Replies Latest reply on Mar 17, 2017 10:12 AM by Amit K

    Dashboard development, testing, and production deployment to Tableau Server

    Corey Meier

      Hi,

       

      My company is nearing the completion of our Tableau Server hardware and software installation.  In preparation for the upcoming server use, I am interested in how other companies manage their development, testing, and production deployment processes of dashboards (workbooks) to the Tableau Server.  I have done several searches on this site but haven't found what I am looking for.

       

      To give you an idea of my companies Tableau setup, currently we are installing two virtual servers; one to be used for development and the other for both testing/production use.  The development server is to be primarily used for software upgrade testing and the testing/production server is to handle the overall dashboard testing and production.

       

      One option that I have observed in a Tableau training video was to utilize the "projects" on the Tableau server...where you would setup a "Test" project (with limited access by the testing team) and initially publish your dashboard for testing.  Once the dashboard is successfuly tested, move the dashboard into the defined "production" project and now it is ready for end-user use.

       

      Questions I have regarding the above process are:

      • How do you make updates to previously deployed dashboards?
      • How do manage the revisions of these dashboards?  Does Tableau have method of keeping a version of each workbook?
      • How do you deploy an updated dashboard into the production area if the name already exists?  Does Tableau let you overwrite?

       

      As I had mentioned above, I am looking for any real-life suggestions into how to manager this process.  Thank you all in advance for your suggestions and guidance in this area.

       

      Thanks.

      Corey

        • 1. Re: Dashboard development, testing, and production deployment to Tableau Server
          Toby Erkson

          Corey,

          I'm in the same boat as you.  We have a QA Tableau Server and a Production (PROD) Tableau Server and I have the same questions and:

          • What steps are taken when moving a report (i.e. any Tableau workbook/dashboard/etc.) from QA to PROD?
            • Changing data sources?
            • Adding [new] data sources?
            • Permissions (are they copied/inherited)?

           

          What have you come up with so far?  I have nothing to contribute as this is my second week in the job

          • 2. Re: Dashboard development, testing, and production deployment to Tableau Server
            Corey Meier

            Toby,

             

            Our current approach is to create multiple project names on the Production server (e.g. Test, Staging, Production).  As we proceed through the different workbook development phases (Test->Staging->Production), we name the workbook with a prefix of the project name (e.g. "Test-Workbook Name")...and when we get to Production, we just name the workbook as the "Workbook Name". 

             

            The reason for having different names is that even though you can publish one workbook with the same name to multiple projects, the project is not like a folder on a file share.  Publishing under different projects seems to me to be just an attribute of the workbook name.  As a result, a change to the workbook and then publish just to one workbook under a project results in the views changing on the other workbooks (with the same name) that reside in other projects.

             

            With having a unique name for all published workbooks means that they are not shared but treated as their own unique workbook.  As a result, I can publish a workbook to Production but work on new enhancements under the Test project and not affect the Production workbook until I publish and overwrite current version.

             

            Hope this helps.

             

            Thanks.

             

            Corey

            3 of 3 people found this helpful
            • 3. Re: Dashboard development, testing, and production deployment to Tableau Server
              Allison Brown

              Hi Corey,

               

              Not sure if you're still looking for suggestions, but we have found it helpful to add a sheet (dashboard) to each workbook called "change log." We put the date, username, version number (assigned by us), and what changes were made.This has been very helpful as we develop dashboards. We, too, use "dev/QA" and "production" projects.

               

              I'm wondering if you have any suggestions for actually QAing the data. Do you pull queries from the database to verify? If so, how often? This process is currently very tedious for me so just looking for any suggestions.

               

              Thanks!

              Allison

              • 4. Re: Dashboard development, testing, and production deployment to Tableau Server
                Joshua Kennedy

                I'll start off by saying that when using Tableau Sever (Especially enterprise core models), the management of the 'Reporting Asset Pipeline' if-you-will, is a crucial process for any decent task workflow.  In my mild (couple years) experience with various industries and clients it is a conversation to have at time of consideration when Buying Tableau Server.  If you are finding yourself in the situation where you must create this process with an existing hierarchy of 'junk' already being thrown about in your data server this can be difficult.

                 

                A few quick answers to help you get organized:

                • How do you make updates to previously deployed dashboards?
                  • Depending on the need/use for the dashboard I will just publish it to a DEV or TEST (site/project depending on your server structure) and append my initials to the end of the file name [ex: Testworkbook-jk.twbx].  I use this when I need some specific changes that have been made to be approved or looked at by a client at which time the client (who has rights to edit my published material) will usually just publish that exact workbook without my initials to it -- this is overtop of the original one and will later navigate back to the DEV/TEST-project/site and remove the old one.  I also will make a local copy of my altered workbook with my initials and date of when I created/made changes.
                  • Another option that is for systematic updates is to use the built in scheduler for data and extract refreshing in server.
                  • If it is not a data issue but rather a dashboard design/ad hoc analysis complication, I would create a separate site or project in the server for everyone to drop their in-progress works and have a file naming convention that allowed each user to keep track and replace as needed while still allowing others to find and see their progress in a central location.  (i.e. testdashboard_draft/ver1.twbx, etc...)
                  • Again it changes according to the needs of the business, the users and workflow constraints (data securities, turn-around-time, authoring rights, etc...).
                • How do manage the revisions of these dashboards?  Does Tableau have method of keeping a version of each workbook?
                  • Like my first response above if you have a separate area in your Tab Server you can manage version control with simple but uniform naming convention, or use the landing area as a historical record of everything and only publish to a different Project/Site when the changes are 'ready-to-deploy'.
                • How do you deploy an updated dashboard into the production area if the name already exists?  Does Tableau let you overwrite?
                  • Yes Tableau has a dialogue box that appears and will say a file, object, etc.... already exists with that name would you like to overwrite that object?  with a yes or no option.

                I hope this helps!

                 

                -Joshua

                • 5. Re: Dashboard development, testing, and production deployment to Tableau Server
                  Kishan Bhadauria

                  We were also in same problem until past few weeks. Now we are planning to implement accurev which is used in our organisation as a source control. Its easy to use and maintain. You can also try using any source control tool.

                  Hope this helps !

                  • 6. Re: Dashboard development, testing, and production deployment to Tableau Server
                    Nicole Edmonds

                    I haven't done much reading up on this, but as we're becoming more mature in the dashboards we provide, there is a definite need for a better "deployment model". 

                     

                    At my company we're not Enterprise by any stretch, and at the moment we manage Test/Prod mostly by who has access to the versions of the dashboards. 

                    • 7. Re: Dashboard development, testing, and production deployment to Tableau Server
                      Justin D'Cruze

                      One thing you may want to start considering is whether you'll be heavily utilising Published Data Sources.

                       

                      Publishing workbooks which utilise only local data sources (i.e. not Tableau Server) is straightforward between different Servers/Sites, but the steps for migrating workbooks which use Published Data Sources tend to be more convoluted than necessary - especially in 8.2 Desktop which has some bugs related to replacing data sources. In this case, separate Projects in a single site may be easier to manage in terms of the overall process.

                      Having said that, we did go down the separate Site route for QA/Prod as it "logically" makes more sense (even though it's a bit more work).

                      1 of 1 people found this helpful
                      • 8. Re: Dashboard development, testing, and production deployment to Tableau Server
                        Christopher McKinnish

                        Hello Corey

                         

                        About 6 years ago, you were in the same boat that I currently find myself/company.  I am glad you posted here.  Your information and subsequent responses have been a good source of reassurance that I was on the best path for organization.  I would think Tableau would already have this documented. Anyway...we just went the way of Tableau server with 8 core licensing.  I have determined that our solution for development and deployment is basically as you described by having developmental and production projects, however on a single server. My thought is to have a developmental project for post production>>then to production.

                         

                        I'm curious, if you would be so kind, what, if anything, you have determined differently over the years relative to this organizational process.  And specifically how you handle Tableau Desktop and Server Upgrades?

                         

                        Thanks

                        Christopher

                        • 9. Re: Dashboard development, testing, and production deployment to Tableau Server
                          Amit K

                          Thanks Justin for your sharing.

                           

                          I am using

                          Tableau Desktop 9.3.2

                          Tableau Server 9.3.1

                           

                          I have a question on the published data sources though. I have two environments. UAT and PROD. Both the environments have their separate published data sources viz. UAT_DB and PROD_DB. Now when I prepare and publish my workbooks to UAT, they are connected to UAT_DB. Business users then test the workbook in UAT Tableau Server and give me green light to publish them on the PROD server.

                           

                          Now my question is: do I have to make any changes in the data source of the workbook i.e. changing the data source from UAT_DB to PROD_DB before publishing the workbook on PROD?

                          (Both the data sources have exact same name. i.e. UAT_DB is called Superstore and PROD_DB is also called Superstore) Or simply publishing the workbook on the PROD will start using the already published PROD_DB? This may sound an obvious question but still want to ask here.

                           

                          As mentioned by you, I went through changing the data source to PROD_DB first and then publishing the workbook but I receive error as 'The workbook is using a different data source'.

                          • 10. Re: Dashboard development, testing, and production deployment to Tableau Server
                            Amit K

                            I realized the answer to my own question. When publishing on any server - UAT or PROD, I first have to change my data server here, and that allows me to publish my workbook on the correct server environment.

                             

                            Now, I was confused before because the name of the data source was same in both the environments. But now it's all sorted out.

                             

                            DataServer_Change.png