BLOGBUSINESS INTELLIGENCESAP ANALYTICS CLOUD
Kris van Brouwershaven

SAC Story vs Application (1/4): Introductie

Gebruik je SAP Analytics Cloud (SAC) in je organisatie en ben je benieuwd naar de verschillen tussen een Story en een Analytic Application? Deze blog neemt je mee langs een aantal functionaliteiten van beide SAC reporting applicaties en helpt je bij het maken van een beslissing tussen het gebruik van een SAC Story of een SAC Analytic Application.

Wat is wat?

Wat is een story?

Met een story vertel je op een visuele wijze een verhaal met je data. Een story biedt een aantal hulpmiddelen om visualisaties te maken en bedieningselementen voor de gebruikers te creëren. Hierdoor is een story flexibel genoeg om in veel (complexe) situaties gebruikt te worden. Door gebruik te maken van standaard functionaliteit, kan je middels Drag & Drop een dashboard maken zonder kennis van programmeertalen.

Wat is een analytic application?

Een analytic application vertelt net als een story het verhaal van je data. Daarnaast biedt een analytic application een aanzienlijk hogere mate van vrijheid die gepaard gaat met technische complexiteit. Ten opzichte van een story kan je functionaliteit zelf toevoegen door te programmeren in JavaScript. Dit geeft de ontwikkelaar meer vrijheid om pixel-perfect rapporten te ontwikkelen, of functionaliteit toe te voegen die niet beschikbaar is in een story.

De kracht van een Story

Om de kracht van een story uit te leggen, geven we je graag een voorbeeld. Een story biedt de mogelijkheid om middels een datumveld een Date-Offset te creëren. Hiermee kan je in een paar klikken de meetwaardes inperken op een tijdselectie.

Deze ingeperkte meetwaardes kan je vervolgens gebruiken in je story om je data te visualiseren en vergelijkingen te maken tussen periodes zonder hiervoor in je datamodel meetwaardes te definiëren. Je kan hiermee bijvoorbeeld een periode in het huidige jaar vergelijken met diezelfde periode vorig jaar, zonder hier nieuwe meetwaardes voor te definiëren.

 

Flexibiliteit Application

De kracht van een analytic application, zit in de mogelijkheid om extra functionaliteit toe te voegen. Er kunnen meer functionaliteiten worden gemaakt, maar een aantal veelgebruikte zijn:

  • Dezelfde data bekijken in en grafiek of een tabel door middel van een grafiekswitch.

  • Het toevoegen van meetwaardes en dimensies aan een tabel of grafiek.

Grafiekswitch

Een veelgebruikte functie in een application is het switchen tussen een tabel en een grafiek. Met een tabel kan je op een gedetailleerde manier naar de data kijken, met een grafiek creëer je overzicht.

Het toevoegen van meetwaardes en dimensies aan een tabel of grafiek
De Explorer-mode in een SAC Story klinkt misschien al bekend, maar met deze functie voeg je individuele kolommen toe aan de dimensies en measures.

Manier 1: Er worden dimensies en meetwaardes gedefinieerd die je toe kan voegen of kan verwijderen uit je analyse.

Manier 2: Met een zogeheten Navigation Panel biedt een application eenzelfde functionaliteit als de Explorer View in een SAC Story, gehesen in een moderner en gebruiksvriendelijker jasje. Deze functionaliteit is te vergelijken met die van een draaitabel in Excel.

Met deze twee regels aan code kan je deze functionaliteit toevoegen aan je applicatie:

[Objectnaam].openNavigationPanel({expanded: true});[Objectnaam].getDataSource().setRefreshPaused(false);

 

Commenting functie

Het verklaren van cijfers in je rapport gebeurt nu vaak buiten SAC om in bijvoorbeeld een PowerPoint-presentatie, Word-document of Excel-sheet. De oplossing die SAC biedt, is het toevoegen van commentaar aan je rapport. Hierin heb je in een SAC story een limitatie dat het enkel kan in een story gebaseerd op een import-connectie. In theorie heel handig, in de praktijk komt het zelden voor dat er een dashboard wordt gemaakt op enkel geïmporteerde data.

De flexibiliteit door het coderen in een analytic application biedt de mogelijkheid om commentaar te geven op een rapport gebaseerd op een live-connectie. Met een application kan je ervoor zorgen dat je in je rapport verklaringen kan geven op live-data, zonder dat dit SAC verlaat. Dit kan je doen met een functie om gegevens weg te schrijven in bijvoorbeeld SAP HANA-tabellen. Hiermee is de business altijd up-to-date met de laatste verklaringen. Bijvoorbeeld: door de stijging in olieprijzen zijn de grondstoffen duurder geworden wat impact heeft op de cijfers. Iedereen die het rapport opent, kan dit commentaar zien.

 

Beheersbaarheid

Een story biedt een hoge mate van beheersbaarheid doordat alles werkt op basis van standaard functionaliteiten van SAC. Hierdoor kan iedereen met kennis van SAC elkaars werk overnemen.

In een analytic application is het lastiger om een structuur te hanteren die voor iedereen begrijpelijk en werkbaar is. Deze blog geeft je een advies.

Tips & Tricks voor het beheersbaar houden van een applicatie:

  • Van tevoren nadenken over de structuur van je applicatie
    Een applicatie met het minimale aantal objecten, laadt het snelste. Als er van tevoren wordt nagedacht over de structuur van de applicatie, kunnen duplicaten worden vermeden.

  • Het geven van logische namen
    Spreek met je developers een standaard naamconventie af. Zo kan een andere developer zien waar het object zich bevindt door enkel naar de naam te kijken.
    Voorbeeld hoe het niet moet:

Een voorbeeld van hoe het wél kan: [Paginanaam]_[Objectnaam]_[Functionaliteit]

  • Het zetten van een uitleg en commentaar bij je code
    Doordat het volledig in JavaScript wordt gecodeerd, is het toevoegen van commentaar erg simpel: door // voor je tekst, of /* */ om je tekst heen te zetten, zorg je ervoor dat deze tekst niet wordt gezien als uit te voeren script.

Voorbeeld:
 

 

 

Naast dat de ontwikkeltijd van een story vele malen sneller is dan van een application, is de beheersbaarheid ook lastiger in een application. De ontwikkeltijd is in de regel zo’n 3x langer van een application dan van een story.

Ook de beheersbaarheid is door het verschil in aanpak van developers niet eenduidig te behandelen. Een story behoeft in verhouding tot een application vrijwel geen overdracht, daar waar een applicatie door de mogelijkheden en flexibiliteit een intensieve overdracht behoeft.

Bij het ontbreken van commentaar, moeten developers na overdracht de logica van een andere developer doorgronden, voordat zij hier aanpassingen aan kunnen doorvoeren.

Samenvatting

Een story biedt standaard functionaliteit voor het creëren van je dashboards. Voor het ontwikkelen van de dashboards is geen programmeerkennis nodig, waardoor de drempel laag is. Het creëren van een story heeft een hoge leercurve en makkelijke beheersbaarheid door het ontbreken van scripting.

Een analytic application biedt vrijheid om zelf functies te scripten en toe te voegen in je rapport. Dit kunnen functies zijn die niet beschikbaar zijn in een story, maar wel gewenst zijn door de business. De beheersbaarheid van een analytic application is afhankelijk van hoe deze gebouwd is en de ontwikkeltijd is in de regel 3x lang dan een story.

Afhankelijk van de requirements uit de business, kan je de keuze maken voor een story of een analytic application. Hierbij adviseren wij kritisch te kijken naar de requirements in verband met ontwikkeltijd en beheersbaarheid van een application.

Dit is blog 1 van 3, in de volgende blog behandelen we een aantal scenario’s waarin overwegingen en keuzemomenten worden verhelderd.

Let’s Connect!

Wil je nog meer weten over SAP Analytics Cloud en hoe Business Intelligence jou kan helpen? Neem dan contact op met Roel van Bommel (06-226938392) of Joury Jonkergouw (06-82622361).