Building data driven companies — 3 P’s framework.

Standard
Data Driven Comapnies need Process Platform People

Data Driven Companies — 3 P’s framework

People:

To build data-driven organization, you need decision makers to use data instead of anything else. So you need to help built a culture where data-driven decision-making thrives — usually this is most efficient if you have executive buy-in. Example: A CEO who is a stats-junkie! Of course, not every company would have this. It could be that you find yourself in an organization where the CEO is known to make huge bets just using “gut” — in cases like this, an organization could have some of the best platform and processes but unfortunately, it won’t do any good.

Now just having people who make data driven decisions is not enough — you (as a data professional) need to deliver “data” to them. To do that you need 1) Processes 2) Platform. So let’s talk about them:

Platform:

A platform in this context is the data and analytics platform used by the organization to get the data they need, when they need it. If the organization is small (e.g. less than 15 or so) then the platform could be excel and engineers/analyst writing ad-hoc queries but as you grow (= team size expands) then you need better platform to serve the data needs of the organization. Some tools are better than others and you would usually wind up using multiple vendors in your analytics stack — but remember that jut having a great analytics platform is not enough. You need the “people” and the “processes” to go with that. So, with that let’s talk about process:

Process:

Process is everything between Platform and People. Let me expand on this. Here are few things where having a defined process is key for building data-driven organizations.

  1. How to prioritize the analytics request? It will be great to have a process where you/team will work on projects that closely align with the strategic objective of the company
  2. What does the analytics org-structure look like? Do you have analyst embedded in each team or do you have a centralized team or do you go for a hybrid approach?
  3. What is the process to justify investment in analytics?
  4. Which is the “right” metric definition? (There needs to be a process that keeps the metric definition standardized in an organization)
  5. What is the process to clean data? (Maintaining data integrity is key. You could put this on “Platform” bucket as well)
  6. How do users get “help”? (Is there a ticketing system that they should use? Is it just another “IT” ticket? Who responds to tickets? What’s the SLA around analytics queue tickets? etc)
  7. Who owns “analytics”? There needs to be someone on the team owns analytics like analytics manager, VP of analytics and he/she should be reporting to someone on management team (CIO, CFO, COO, Chief of Staff, CEO) who is held responsible as well.

The list goes on…but I hope you get the point. Having a well-defined processes in an organization is important — usually, this stuff gets less attention and org’s/teams tend to focus just on “platform” which might not be the best thing to do.

Having shared the 3 P’s, let me share few tips on

How to go about implementing the framework:

Three tips:

  1. Identify the “P” that has the best ROI
  2. It’s an iterative process!
  3. Refine as needed

On #1. To help you identify the “P” that has the best ROI, your first step could be to create a matrix to help you evaluate where your organizations falls. I have shown an example below:

Building Data Driven companies 3 Ps framework matrix

If you want to build analytics from scratch then you would love working at early stage startups (bottom-right) but if you like advanced stuff (data-science) then Top-right corner is great! Also, For org’s in Top Left where you have the platform and processes but lack data-driven people — it would be wise to crank up your efforts to drive adoption. (since you already have the right platform and process than any additional investment here would yield little to no ROI).

On #2. Understand that it’s an iterative process. You are never done optimizing any of these P’s! It’s a journey and not a destination.

Continuos Improvement Process People Platform

On #3: Just like with other frameworks, you’ll need to refine and adjust this based on your needs. You may have noticed that I focused on “Org-wide” framework but you could be heading up an analytics function for a department and in that case, not all of the things here would help. “People”, “Process” and “Platform” would still apply on a high level but it might just be that you don’t have “control” over the platform. So, you may need to refine/adjust this as needed.

I hope the framework is a great tool for you to think about building data driven companies!

Best,
Paras Doshi

PS: If you like articles like this, don’t forget to sign up for the newsletter!

[VIDEO] Microsoft’s vision for “Advanced analytics” (presented at #sqlpass summit 2015)

Standard

Presented at #sqlpass summit 2015.

SQL Server Reporting services: How to display “There are NO rows” message?

Standard

Problem:

You have a SQL Server reporting services (SSRS) report that has a table which displays some records — but sometimes it can have NO rows; In that case, how to display “There are No rows” message so that it doesn’t confuse the consumer.

Solution:

  1. Open the report in SQL Server Data Tools and go to the “design” tab of your SSRS report
  2. Select your table (do NOT select a cell inside a table. Make sure that the table is selected) SQL Server reporting services NO data rows message
  3. While the “table” is selected, Go the Properties section OR you can use F4
  4. Inside the Properties section, find “No Rows” section and you should see a NoRowsMessage property:SQL Server reporting services NO data rows message v2
  5. Go to the preview tab to make sure it’s working and you should be ready to deploy the change!

That’s it! Hope that helps.

Official reference:  https://msdn.microsoft.com/en-us/library/dd220407.aspx

Author: Paras Doshi

How to change the Data Source of a SQL Server Reporting Services Report (Native Mode)?

Standard

Problem:

You have your SQL Server Reporting Services environment in native mode — and you want to modify the data source of a report there.

Solution:

  1. Navigate to Report Manager.
  2. Navigate to the Report that you want to Manage and run it
  3. After the report renders, you will have a breadcrumb navigation on the top right
  4. Click on the Last Part of the Breadcrumb NavigationSSRS properties report native mode
  5. It should open up the “properties” section of this report
  6. On the properties section, you should be able to manage the data source
    SSRS Manage Data Source Native Mode Shared
  7. Make the changes that you wanted to the data source settings of this SSRS report — and don’t forget to click “apply”
  8. Done!

Author: Paras Doshi

How to fix the Non-unicode to unicode data type conversion problems in SQL Server Integration Services?

Standard

Problem:

Are you trying to import an Excel file into SQL Server using SQL Server Integration services…And ran into error that has words like “Non unicode” and “unicode”? Then this blog is for you.

Why does this error occur?

Well it turns out that things like SQL Server and Excel have encoding standards that they follow which provides them a way to process, exchange & store data. BUT turns out that SQL Server and Excel use different standards.

Solution:

So, the solution is simple right? Import the data from Excel into non-Unicode format because that’s what you need for SQL Server.

So how do you that? Between your Source and Destination tasks, include a task called “Data conversion” and do the following for all columns that have text:

Excel SQL Server Unicode Nonunicode

And in the destination task, you’ll have to make sure that the mapping section using the new output aliases that you defined in the “data conversion” step.

Conclusion:

In this post, we learned about how to solve a common error that pops up when you try to import excel file to sql server using SSIS. Hope that helps.

Author: Paras Doshi

How to add Sparkline data visualization to Google spread sheets?

Standard

I like using spark lines data viz when it makes sense! It’s a great way to visualize trends in the data without taking too much space. Now, I knew how to add sparklines in Excel but recently, I wanted to use that on Google sheet and I had to figure it out so here are my notes:

1. Google has an inbuilt function called “SPARKLINE” to do this.

2. Sample usage: =SPARKLINE(B2:G2) — by default you can put line chart in your cells.

3. Then there are other options including changing the chart type. You can find them documented here:  https://support.google.com/docs/answer/3093289

4. One of the best practices that I advocate when you spark-line to “compare” trends is to make sure that you have the consistent axis definition. So the sample usage for that could like this:

=SPARKLINE(B2:G2,{“ymin”,0;“ymax”,110})

(if you want to do this for excel then here’s the post: http://parasdoshi.com/2015/03/10/how-to-assign-same-axis-values-to-a-group-of-spark-lines-in-excel/ )

After you’re done, here’s what a finished version could like on Google sheet:

Google Sheet Data visualization spark line

Here’s the working google sheet: https://docs.google.com/a/parasdoshi.com/spreadsheets/d/1EJYDTxOifeEL-YwW1a0oxXw7tFG1iAVQlwjo4EU8R-s/edit?usp=sharing

A key driver for business intelligence adoption: Embedded analytics.

Standard

Did you know most business intelligence (BI) solutions are under-utilized? Your BI solution might be one of them — I definitely had some BI solutions that were not as widely used as I had imagined! Don’t believe me? Take a guess at “number of active users” for your BI solution and then look up that number by using your BI server logs. Invariably, this is Shocking to most BI project leaders = Their BI solution is not as widely used as they had imagined! Ok, so what can you do? Let me share one key driver to drive business intelligence adoption: Embedded analytics.

Embedded analytics

#1: what is Embedded analytics? 

Embedded analytics is a technology practice to integrate analytics inside software applications. In the context of this post, it means integrating BI reports/dashboards in most commonly used apps inside your organization.

#2: why should you care? 

You should care because it increase your business intelligence adoption. I’ve seen x2 gains in number of active users just by embedding analytics. if you want to understand why it’s effective at driving adoption, here’s my interpretation:

Change is hard. You know that — then why do you ask your business users to “change” their workflow and come to your BI solution to access the data that they need. Let’s consider an alternative — put data left, right & center of their workflow!

Example: You are working with a team that spends most of their time on a CRM system then consider putting your reports & dashboards inside the CRM system and not asking them to do this:

Open a new tab > Enter your BI tool URL > Enter User Name > Enter Password > Oops wrong password > Enter password again > Ok, I am in > Search for the Report > Oops, not this one! > Ok go back and search again > Open report > loading…1….2….3…. > Ok, here’s the report!  

You see, that’s painful! Here’s an alternative user experience with embedded analytics:

They are in their favorite CRM system! And see a nice little report embedded inside their system and they can click on that report to open that report for deeper analysis in your BI solution.

How easy* was that?

*Some quick notes from the field:

1) it’s easy for users but It’s not easy to implement! But well — there’s ROI if you invest your resources in setting up embedded analytics correctly!

2) Don’t forget context! example: if a user is in their CRM system and is looking at one of their problem customers — then wouldn’t it be great if your reports would display key data points filtered for that customer! So context. Very important!

3) Start small. Implement embedded analytics for one subject area (e.g. customer analysis) for one business team inside one app! Learn from that. Adjust according to your specific needs & company culture AND if that works — then do a broad roll out!

Now, think of all the places you can embed analytics in your organization. Give your users an easy way to get access to the reports. Don’t build it and wait for them to come to you — go embed your analytics anywhere and everywhere it makes sense!

#3: Stepping back

Other than Embedded analytics — you need to take a look at providing user support and training as well…And continue monitoring usage! (if you’re trying to spread data driven culture via your BI solution then you should “eat at your own restaurant” and base your adoption efforts on your usage numbers and not guesses!)

Conclusion:

In this post, I shared why embedded analytics can be a key drive for driving business intelligence adoption.