SlideShare a Scribd company logo
1 of 3
Download to read offline
36 | 5
Jaren van ontwikkeling in een groot team met een korte time-to-market mondden begin dit jaar uit in de productlancering van
de Océ Varioprint I300. Deze printer moet de bestaande transactie-, direct mail- en boekmarkt op zijn kop zetten. In een reeks
artikelen beschrijven Venlose r&d’ers wat erbij komt kijken om een dergelijke complexe machine te ontwikkelen. De laatste
aflevering: diagnostische software en de opzet van een data-science-systeem.
Data-science,
een kwestie
van goed
samenwerken
Joost Janse
Serie Océ Varioprint I300
D
e realisatie van de Océ Varioprint I300-
printer is het eerste project waarbij we
een nieuw data-science-systeem heb-
ben toegepast om diagnostiek uit te voeren.
Verschillende afdelingen hebben baat bij de
aanpak om uitvoerige analyses op de logbe-
richten uit te voeren. Zo kan de serviceafde-
ling de uptime van printers maximaliseren
en de fabriek de kwaliteit van (sub)assem-
blages vaststellen en zo mogelijk verbeteren.
Maar data-science was ook tijdens de r&d
van belang. Het I300-project is op een Agile-
manier ingestoken en via een lead customer
program (lcp) voortdurend aangepast aan de
wensen van de klanten. Tijdens het lcp kon
r&d leren van de inzet en het gedrag van
printers en snel oplossingen aandragen als
een klant daarom vroeg.
Om dit diagnostische systeem te realise-
ren, hebben we eerst functionele logging
moeten toevoegen om de aansturingswaar-
den en respons in de machine vast te leggen
in samenhang met een realtime klok. Om-
dat tijdsynchronisatie van de vele embedded
nodes in de printer al was geïmplementeerd,
was deze toevoeging relatief eenvoudig. De
logberichten worden over een intern prin-
ternetwerk verstuurd naar de software-
component die we de logserver noemen. De
logserver voorziet elk van de parallel gepro-
duceerde berichten van een datum en lokale
tijd alsmede van een volgordenummer, en
voegt ze als regel toe aan een van de onge-
veer 270 verschillende logfiles.
Elke logfile structureert de informatie zo-
doende als tabel met regels gevormd door
timestamps en kolommen in de vorm van
vooral numerieke informatie. Door middel
van een synchronisatieproces wordt de func-
tionele logging gedupliceerd naar een voor
dit doel bestemde disk-array in ons eigen
beveiligde datacentrum, die momenteel tot
vijftig terabyte aan gegevens kan bewaren.
Aangezien elke printer tijdens gebruik
zo’n vier gigabyte functionele logging per
dag kan produceren, is het duidelijk dat er
maar een eindige hoeveelheid dagen per
printer kan worden bewaard voor analyse,
zelfs met sterke compressietechnieken. De
retentietijd van elk logbestand wordt vanuit
de inhoud en het gebruik bepaald. De totale
verzameling noemen we large data om daar-
mee aan te geven dat het om een omvang-
rijke hoeveelheid gestructureerde data gaat,
afkomstig van productieprinters opgesteld
in verschillende werelddelen.
Diagnostisch recept
Maar aan data alleen heb je niks. Om de log-
gegevens om te zetten naar zinvolle infor-
matie hebben we het Diagnostic Framework
opgezet. Dit is gebaseerd op een technolo-
giedemonstrator van een groep pdeng-trai-
nees van de softwaretechnologieopleiding
Ooti aan de TU Eindhoven. Daarna is de ap-
plicatie op een Agile-manier verder ontwik-
keld tot een bruikbaar geheel op basis van
wensen van potentiële gebruikers.
Het Diagnostic Framework is gebaseerd
op diagnostische recepten die gemaakt wor-
den door een expert, en vervolgens door
alle betrokkenen gebruikt kunnen worden.
De gebruiker kiest een printer, een tijdspe-
riode en een diagnostisch recept en krijgt
hiermee een grafisch overzicht in de vorm
5 | 37
van tabellen en grafieken. Printermodules
analyseren op gedrag, in- en uitgangsgroot-
heden en regelbereik is hiermee een stuk
eenvoudiger dan voorheen (Figuur 1).
De Diagnostic Framework-applicatie is te
gebruiken op de printer zelf maar ook vanuit
een centrale server. In onze projectzalen zijn
danookregelmatigclient-computerschermen
te zien waarop analyses worden uitgevoerd.
Via deze terugkoppellus vanuit printers in
het veld leren we bijzonder veel en kunnen
we onze printers verder vervolmaken.
Abnormale situaties
Met deze hoeveelheden nauwkeurige ma-
chinedata moet er echter nog veel meer
mogelijk zijn. Denk aan vergelijkingen tus-
sen printers, zoeken naar patronen in de
large data, classificatie en clustering van
data of automatisch onderscheid maken
tussen normale en uitzonderlijke condities.
Met name het ontdekken van trends voor
predictive maintenance is interessant.
Het Diagnostic Framework is dan ook pas
de eerste stap in het diagnostiekproject. On-
der de werknaam Odas (Optimal Data Ana-
lysis System) zijn we bezig aan een tweede
stap, die zich richt op het praktiseren van
data-science. Ook over een derde stap den-
ken we al na. Die zal waarschijnlijk gaan over
een verbreding van het inzetgebied en over
deployment. Qua inzetgebied kun je denken
aan een uitbreiding naar business intelligence
en het nemen van bedrijfsbeslissingen van-
uit diepgaande data-analyses over inspan-
ningen en opbrengsten. Qua deployment
gaat het over het beheersen van kosten en
investeringen en het onderhoud van zo’n
large data-systeem.
De gebruikers waar Odas zich op richt,
zijn functiedesigners en, wat meer in de
toekomst, data-scientists (Figuur 2). Het
systeem bestaat uit drie onderdelen. De ba-
sis wordt gevormd door een module die alle
data opslaat en via een eenvoudig selectie-
mechanisme de gewenste gegevens beschik-
baar stelt. Daarmee is een gestructureerde
programmeeromgeving verbonden die het
mogelijk maakt om deze data middels algo-
ritmes te verwerken en resultaten zichtbaar
te maken. En dan is er nog een alert-module
die abnormale situaties op basis van de in-
komende data detecteert en de geabonneer-
de gebruikers daarover informeert.
Uitgangspunt bij het bedenken van Odas
is dat de gebruikers centraal moeten wor-
den gesteld. Dit lijkt heel logisch, maar als
je echt naar het interactie-design kijkt, vol-
doen lang niet alle it-oplossingen daaraan.
Daarom moeten we goed nadenken over
wie de gebruikers zijn, hoe ze nu werken,
hoe we ze passende middelen kunnen bie-
den en hoe we ze kunnen begeleiden in de
stap naar data-science. Eigenlijk gaat dit
over veranderingsmanagement, een onder-
werp waar vele studies aan zijn gewijd.
In samenwerking met trainees van de User
System Interaction-groep van de TU Eind-
hoven hebben we een profiel opgesteld van
beide gebruikersrollen. Functiedesigners
maken de inhoudelijke beslissingen over
het printerontwerp en zijn vaak opgeleid als
fysicus, werktuigbouwkundige of meet- en
regeltechnicus, niet als it’er. Ze hebben de
inhoudelijke verantwoordelijkheid over het
ontwerp van een van de modules waaruit de
printer bestaat. Ze modelleren en rekenen
met matrixrekenpakketten zoals Matlab of
Python met de Numpy-extensies. In essen-
tie werken ze liever met matrices dan met
geneste loop-structuren. Ze vergaren en ope-
reren vanuit een diepgaande kennis van hun
werkterrein, omringd door een multidiscipli-
nair team van ontwerpers en engineers.
Data-scientists daarentegen zijn vaardig
met verschillende pakketten en gewend aan
big-data-rekenen, vaak op computerclusters.
Ze programmeren in talen als R en eveneens
Python met matrix-extensies, bijvoorbeeld
in de vorm van de Pandas-bibliotheek, die
verder bouwt op Numpy en specifiek voor
data-science bedoeld is. Ze werken business-
gerelateerde vraagstukken uit en schrikken
er niet voor terug om een week lang de data
in te duiken. Ze zijn opgeleid als wiskundige
of it’er en hebben een goede kennis van sta-
tistiek en kunstmatige intelligentie.
Uit deze twee beschrijvingen kunnen we
een aantal requirements afleiden waaraan
Odas moet voldoen. De software moet flexi-
bel te programmeren zijn vanuit Matlab,
Python met diverse library’s, of R. Er dient
een aantal systeemspecifieke zaken geab-
straheerd te zijn middels een goede inter-
face zodat de gebruiker niets hoeft te weten
van de onderliggende opslagtechnologie,
noch kennis hoeft te hebben van de data-
Figuur 1: Met het Diagnostic Framework kunnen alle gebruikers diagnostische recepten
van experts loslaten op data van machines waarin ze geïnteresseerd zijn.
Figuur 2: Het Optimal Data Analysis System (Odas)
moet een centraal data-science-systeem vormen
voor de verschillende gebruikersgroepen binnen Océ.
Deze figuur is ontworpen door trainees van de User
System Interaction-groep aan de TU Eindhoven
(www.usitue.nl).
5 | 39
Serie Océ Varioprint I300
formaten. Ook hoeft de gebruiker zich niet
bezig te houden met wáár iets uitgerekend
wordt en hoe dat geparallelliseerd wordt.
Versioning moet heel eenvoudig werken.
Ook willen we een eenvoudige manier van
programmeren aanbieden die samenwer-
king en hergebruik van code stimuleert.
Geabonneerde gebruikers
We zijn nu bezig met de opzet van Odas als
prototype (Figuur 3). Gebruikers dragen
usecases aan en door het systeem hieraan te
toetsen, willen we bewijzen dat de huidige
opzet voldoet. In onze optiek is ‘keep it simple’
een goed uitgangspunt voor de architectuur.
Zo’n systeem is overzichtelijk en flexibel, dus
eenvoudig aan te passen aan nieuwe wensen.
We gebruiken hiervoor een aantal open­
source data-science-pakketten en -biblio-
theken voor Python die standaard al veel
te bieden hebben om de basisbehoeften te
realiseren, zoals Blaze voor rekenkundige
bewerkingen, HDF5 met Pytables voor ef-
ficiënte en schaalbare hiërarchische opslag
van tabellen, Pandas voor datamanipulatie
en Bokeh voor visualisatie. Pymatbridge
gebruiken we om met Matlab te integreren.
Om een eenvoudige manier van program-
meren aan te bieden die samenwerking en
hergebruik van code stimuleert, willen we
een gestructureerde versie van Jupyter
Notebooks in gaan zetten. Zo’n Notebook is
opgebouwd uit cellen van tekst, executeer-
bare code en gegenereerde output als tekst,
tabel of afbeelding. Een Notebook bevat op
deze manier het complete recept voor een
specifieke analyse (Figuur 4). Door zo’n
Notebook te delen en goed doorzoekbaar te
maken, bieden we een omgeving die samen-
werking en hergebruik van code bevordert.
We structureren de algemene Notebooks
zodanig dat data-extractie en -visualisatie
voor de gebruikers eenvoudig is, maar toch
onder water met large data om kan gaan.
Ook kunnen de Notebooks voorzien wor-
den van ‘alert’-cellen, die berichten naar ge-
abonneerde gebruikers kunnen versturen
wanneer de uitkomst voldoet aan specifie-
ke criteria. Zodoende kunnen opmerkelijke
resultaten in de gaten worden gehouden.
We willen de data ook ontsluiten voor
third-party data-science-pakketten, bijvoor-
beeld om analyse voor business intelligence
te doen. Daarvoor moeten de gegevens in
een SQL-database terechtkomen. We zetten
een aantal vaststaande algoritmes in die spe-
cifieke data opwerken tot de data die voor
deze toepassing nodig zijn. We spelen ook
met het idee om ontbrekende SQL-tabellen
op aanvraag te genereren uit de large data.
Maatwerk
Uitrol van een large data-systeem met een
significante bedrijfsimpact vereist zorgvul-
dige afwegingen en een goede afstemming
tussen de r&d-, service-, productie- en de
verbindende it-afdelingen. Een cruciaal uit-
gangspunt is dat de gebruikers van het sys­
teem, de functiedesigners en data-scientists,
eigenaar zijn van recepten die zij schrijven.
Figuur 3: De opzet van Odas Figuur 4: Jupyter Notebooks kunnen gebruikt worden als
interactieve beschrijving van een experiment of analyse.
Een tweede uitgangspunt is om qua de-
ployment de rekenkracht vlak bij de opslag
te situeren. Tegenwoordig bestaat de mo-
gelijkheid om it-zorg uit te besteden. Grote
aanbieders van data-science-systemen ne-
men de opslag en berekeningen graag uit
handen, en brengen afhankelijk van het
aangeboden verdienmodel kosten in reke-
ning voor gebruik of abonnementen. Deze
kosten zijn vaak afhankelijk van de schaal-
grootte van het datagebruik.
Een andere afweging is het gebruik van
commerciële versus opensource oplossingen.
Per situatie moet worden bekeken wat de best
passende keuze is. Het blijft maatwerk.
De komende jaren zullen we veel leren
over de businesswaarde en inzet van data-
science. We moeten ontdekken hoe we door
middel van gerichte automatisering, en met
behoud van eigenaarschap, waarde kunnen
toevoegen aan onze domeinkennis. Kennis
die we opnieuw zullen inzetten om optimale
printsystemen te ontwerpen, bouwen en
servicen. Data-science is geen magie, maar
een kwestie van goed samenwerken. Het be-
wijs dat we dat onder de knie hebben, wordt
geleverd door de I300.
Joost Janse werkt als architect bij Océ aan
softwaresystemen die multidisciplinaire
diagnostische processen ondersteunen. Hij
promoot het gebruik van data-science om
nieuwe analysemogelijkheden te ontsluiten.
Redactie Pieter Edelman

More Related Content

Viewers also liked

Viewers also liked (7)

Estructura
EstructuraEstructura
Estructura
 
Linux
LinuxLinux
Linux
 
Sustained Award
Sustained AwardSustained Award
Sustained Award
 
lAS FABULA
lAS FABULAlAS FABULA
lAS FABULA
 
Calculadora
CalculadoraCalculadora
Calculadora
 
Como se creo el universo
Como se creo el universoComo se creo el universo
Como se creo el universo
 
Actividad 804
Actividad 804Actividad 804
Actividad 804
 

Similar to Data-science, een kwestie van goed samenwerken

Wat gebeurt er in “Data(keten)land”?
Wat gebeurt er in “Data(keten)land”?Wat gebeurt er in “Data(keten)land”?
Wat gebeurt er in “Data(keten)land”?Sjaak Wolfert
 
Open Line Smart Back Up
Open Line Smart Back UpOpen Line Smart Back Up
Open Line Smart Back UpJo Verstappen
 
Meet de gezondheid van de opslag
Meet de gezondheid van de opslagMeet de gezondheid van de opslag
Meet de gezondheid van de opslagDekkinga, Ewout
 
IT2IT Software metering feature - lab lucas
IT2IT Software metering feature - lab lucasIT2IT Software metering feature - lab lucas
IT2IT Software metering feature - lab lucasIT2IT
 
Ik magazine 3-2009
Ik magazine 3-2009Ik magazine 3-2009
Ik magazine 3-2009rjvl
 
Whitepaper software-comscale-inspectiesystemen-nl
Whitepaper software-comscale-inspectiesystemen-nlWhitepaper software-comscale-inspectiesystemen-nl
Whitepaper software-comscale-inspectiesystemen-nlEd van Veen
 
Koac artikel SWM 7 2015
Koac artikel SWM 7 2015Koac artikel SWM 7 2015
Koac artikel SWM 7 2015Peter Smulders
 
Samen vernieuwende applicaties ontwikkelen
Samen vernieuwende applicaties ontwikkelenSamen vernieuwende applicaties ontwikkelen
Samen vernieuwende applicaties ontwikkelenInterSystems Benelux
 
Trends voor data analyse 2014
Trends voor data analyse 2014Trends voor data analyse 2014
Trends voor data analyse 2014Johan Blomme
 
Learning analytics architecturen 1
Learning analytics architecturen 1Learning analytics architecturen 1
Learning analytics architecturen 1SURF Events
 
New features cognos10.2
New features cognos10.2New features cognos10.2
New features cognos10.2Jan van Otten
 
SolvX whitepaper - voorspellende modellen
SolvX whitepaper - voorspellende modellenSolvX whitepaper - voorspellende modellen
SolvX whitepaper - voorspellende modellenSolvX
 
Tijdschriftenproces Managen 2008
Tijdschriftenproces Managen 2008Tijdschriftenproces Managen 2008
Tijdschriftenproces Managen 2008MichieldeKlein
 

Similar to Data-science, een kwestie van goed samenwerken (20)

SPGPrints casestudy
SPGPrints casestudy  SPGPrints casestudy
SPGPrints casestudy
 
Solvinity Server to Service
Solvinity Server to ServiceSolvinity Server to Service
Solvinity Server to Service
 
Artikel MSchilperoort (2)
Artikel MSchilperoort (2)Artikel MSchilperoort (2)
Artikel MSchilperoort (2)
 
Wat gebeurt er in “Data(keten)land”?
Wat gebeurt er in “Data(keten)land”?Wat gebeurt er in “Data(keten)land”?
Wat gebeurt er in “Data(keten)land”?
 
Open Line Smart Back Up
Open Line Smart Back UpOpen Line Smart Back Up
Open Line Smart Back Up
 
TalentScape 2.0
TalentScape 2.0TalentScape 2.0
TalentScape 2.0
 
BI-Tooltip: Ab Initio Continuous Flows
BI-Tooltip: Ab Initio Continuous FlowsBI-Tooltip: Ab Initio Continuous Flows
BI-Tooltip: Ab Initio Continuous Flows
 
CloudOS_boekje
CloudOS_boekjeCloudOS_boekje
CloudOS_boekje
 
BI Tooltip: Qlikview in high-performance omgevingen
BI Tooltip: Qlikview in high-performance omgevingenBI Tooltip: Qlikview in high-performance omgevingen
BI Tooltip: Qlikview in high-performance omgevingen
 
Meet de gezondheid van de opslag
Meet de gezondheid van de opslagMeet de gezondheid van de opslag
Meet de gezondheid van de opslag
 
IT2IT Software metering feature - lab lucas
IT2IT Software metering feature - lab lucasIT2IT Software metering feature - lab lucas
IT2IT Software metering feature - lab lucas
 
Ik magazine 3-2009
Ik magazine 3-2009Ik magazine 3-2009
Ik magazine 3-2009
 
Whitepaper software-comscale-inspectiesystemen-nl
Whitepaper software-comscale-inspectiesystemen-nlWhitepaper software-comscale-inspectiesystemen-nl
Whitepaper software-comscale-inspectiesystemen-nl
 
Koac artikel SWM 7 2015
Koac artikel SWM 7 2015Koac artikel SWM 7 2015
Koac artikel SWM 7 2015
 
Samen vernieuwende applicaties ontwikkelen
Samen vernieuwende applicaties ontwikkelenSamen vernieuwende applicaties ontwikkelen
Samen vernieuwende applicaties ontwikkelen
 
Trends voor data analyse 2014
Trends voor data analyse 2014Trends voor data analyse 2014
Trends voor data analyse 2014
 
Learning analytics architecturen 1
Learning analytics architecturen 1Learning analytics architecturen 1
Learning analytics architecturen 1
 
New features cognos10.2
New features cognos10.2New features cognos10.2
New features cognos10.2
 
SolvX whitepaper - voorspellende modellen
SolvX whitepaper - voorspellende modellenSolvX whitepaper - voorspellende modellen
SolvX whitepaper - voorspellende modellen
 
Tijdschriftenproces Managen 2008
Tijdschriftenproces Managen 2008Tijdschriftenproces Managen 2008
Tijdschriftenproces Managen 2008
 

Data-science, een kwestie van goed samenwerken

  • 1. 36 | 5 Jaren van ontwikkeling in een groot team met een korte time-to-market mondden begin dit jaar uit in de productlancering van de Océ Varioprint I300. Deze printer moet de bestaande transactie-, direct mail- en boekmarkt op zijn kop zetten. In een reeks artikelen beschrijven Venlose r&d’ers wat erbij komt kijken om een dergelijke complexe machine te ontwikkelen. De laatste aflevering: diagnostische software en de opzet van een data-science-systeem. Data-science, een kwestie van goed samenwerken Joost Janse Serie Océ Varioprint I300 D e realisatie van de Océ Varioprint I300- printer is het eerste project waarbij we een nieuw data-science-systeem heb- ben toegepast om diagnostiek uit te voeren. Verschillende afdelingen hebben baat bij de aanpak om uitvoerige analyses op de logbe- richten uit te voeren. Zo kan de serviceafde- ling de uptime van printers maximaliseren en de fabriek de kwaliteit van (sub)assem- blages vaststellen en zo mogelijk verbeteren. Maar data-science was ook tijdens de r&d van belang. Het I300-project is op een Agile- manier ingestoken en via een lead customer program (lcp) voortdurend aangepast aan de wensen van de klanten. Tijdens het lcp kon r&d leren van de inzet en het gedrag van printers en snel oplossingen aandragen als een klant daarom vroeg. Om dit diagnostische systeem te realise- ren, hebben we eerst functionele logging moeten toevoegen om de aansturingswaar- den en respons in de machine vast te leggen in samenhang met een realtime klok. Om- dat tijdsynchronisatie van de vele embedded nodes in de printer al was geïmplementeerd, was deze toevoeging relatief eenvoudig. De logberichten worden over een intern prin- ternetwerk verstuurd naar de software- component die we de logserver noemen. De logserver voorziet elk van de parallel gepro- duceerde berichten van een datum en lokale tijd alsmede van een volgordenummer, en voegt ze als regel toe aan een van de onge- veer 270 verschillende logfiles. Elke logfile structureert de informatie zo- doende als tabel met regels gevormd door timestamps en kolommen in de vorm van vooral numerieke informatie. Door middel van een synchronisatieproces wordt de func- tionele logging gedupliceerd naar een voor dit doel bestemde disk-array in ons eigen beveiligde datacentrum, die momenteel tot vijftig terabyte aan gegevens kan bewaren. Aangezien elke printer tijdens gebruik zo’n vier gigabyte functionele logging per dag kan produceren, is het duidelijk dat er maar een eindige hoeveelheid dagen per printer kan worden bewaard voor analyse, zelfs met sterke compressietechnieken. De retentietijd van elk logbestand wordt vanuit de inhoud en het gebruik bepaald. De totale verzameling noemen we large data om daar- mee aan te geven dat het om een omvang- rijke hoeveelheid gestructureerde data gaat, afkomstig van productieprinters opgesteld in verschillende werelddelen. Diagnostisch recept Maar aan data alleen heb je niks. Om de log- gegevens om te zetten naar zinvolle infor- matie hebben we het Diagnostic Framework opgezet. Dit is gebaseerd op een technolo- giedemonstrator van een groep pdeng-trai- nees van de softwaretechnologieopleiding Ooti aan de TU Eindhoven. Daarna is de ap- plicatie op een Agile-manier verder ontwik- keld tot een bruikbaar geheel op basis van wensen van potentiële gebruikers. Het Diagnostic Framework is gebaseerd op diagnostische recepten die gemaakt wor- den door een expert, en vervolgens door alle betrokkenen gebruikt kunnen worden. De gebruiker kiest een printer, een tijdspe- riode en een diagnostisch recept en krijgt hiermee een grafisch overzicht in de vorm
  • 2. 5 | 37 van tabellen en grafieken. Printermodules analyseren op gedrag, in- en uitgangsgroot- heden en regelbereik is hiermee een stuk eenvoudiger dan voorheen (Figuur 1). De Diagnostic Framework-applicatie is te gebruiken op de printer zelf maar ook vanuit een centrale server. In onze projectzalen zijn danookregelmatigclient-computerschermen te zien waarop analyses worden uitgevoerd. Via deze terugkoppellus vanuit printers in het veld leren we bijzonder veel en kunnen we onze printers verder vervolmaken. Abnormale situaties Met deze hoeveelheden nauwkeurige ma- chinedata moet er echter nog veel meer mogelijk zijn. Denk aan vergelijkingen tus- sen printers, zoeken naar patronen in de large data, classificatie en clustering van data of automatisch onderscheid maken tussen normale en uitzonderlijke condities. Met name het ontdekken van trends voor predictive maintenance is interessant. Het Diagnostic Framework is dan ook pas de eerste stap in het diagnostiekproject. On- der de werknaam Odas (Optimal Data Ana- lysis System) zijn we bezig aan een tweede stap, die zich richt op het praktiseren van data-science. Ook over een derde stap den- ken we al na. Die zal waarschijnlijk gaan over een verbreding van het inzetgebied en over deployment. Qua inzetgebied kun je denken aan een uitbreiding naar business intelligence en het nemen van bedrijfsbeslissingen van- uit diepgaande data-analyses over inspan- ningen en opbrengsten. Qua deployment gaat het over het beheersen van kosten en investeringen en het onderhoud van zo’n large data-systeem. De gebruikers waar Odas zich op richt, zijn functiedesigners en, wat meer in de toekomst, data-scientists (Figuur 2). Het systeem bestaat uit drie onderdelen. De ba- sis wordt gevormd door een module die alle data opslaat en via een eenvoudig selectie- mechanisme de gewenste gegevens beschik- baar stelt. Daarmee is een gestructureerde programmeeromgeving verbonden die het mogelijk maakt om deze data middels algo- ritmes te verwerken en resultaten zichtbaar te maken. En dan is er nog een alert-module die abnormale situaties op basis van de in- komende data detecteert en de geabonneer- de gebruikers daarover informeert. Uitgangspunt bij het bedenken van Odas is dat de gebruikers centraal moeten wor- den gesteld. Dit lijkt heel logisch, maar als je echt naar het interactie-design kijkt, vol- doen lang niet alle it-oplossingen daaraan. Daarom moeten we goed nadenken over wie de gebruikers zijn, hoe ze nu werken, hoe we ze passende middelen kunnen bie- den en hoe we ze kunnen begeleiden in de stap naar data-science. Eigenlijk gaat dit over veranderingsmanagement, een onder- werp waar vele studies aan zijn gewijd. In samenwerking met trainees van de User System Interaction-groep van de TU Eind- hoven hebben we een profiel opgesteld van beide gebruikersrollen. Functiedesigners maken de inhoudelijke beslissingen over het printerontwerp en zijn vaak opgeleid als fysicus, werktuigbouwkundige of meet- en regeltechnicus, niet als it’er. Ze hebben de inhoudelijke verantwoordelijkheid over het ontwerp van een van de modules waaruit de printer bestaat. Ze modelleren en rekenen met matrixrekenpakketten zoals Matlab of Python met de Numpy-extensies. In essen- tie werken ze liever met matrices dan met geneste loop-structuren. Ze vergaren en ope- reren vanuit een diepgaande kennis van hun werkterrein, omringd door een multidiscipli- nair team van ontwerpers en engineers. Data-scientists daarentegen zijn vaardig met verschillende pakketten en gewend aan big-data-rekenen, vaak op computerclusters. Ze programmeren in talen als R en eveneens Python met matrix-extensies, bijvoorbeeld in de vorm van de Pandas-bibliotheek, die verder bouwt op Numpy en specifiek voor data-science bedoeld is. Ze werken business- gerelateerde vraagstukken uit en schrikken er niet voor terug om een week lang de data in te duiken. Ze zijn opgeleid als wiskundige of it’er en hebben een goede kennis van sta- tistiek en kunstmatige intelligentie. Uit deze twee beschrijvingen kunnen we een aantal requirements afleiden waaraan Odas moet voldoen. De software moet flexi- bel te programmeren zijn vanuit Matlab, Python met diverse library’s, of R. Er dient een aantal systeemspecifieke zaken geab- straheerd te zijn middels een goede inter- face zodat de gebruiker niets hoeft te weten van de onderliggende opslagtechnologie, noch kennis hoeft te hebben van de data- Figuur 1: Met het Diagnostic Framework kunnen alle gebruikers diagnostische recepten van experts loslaten op data van machines waarin ze geïnteresseerd zijn. Figuur 2: Het Optimal Data Analysis System (Odas) moet een centraal data-science-systeem vormen voor de verschillende gebruikersgroepen binnen Océ. Deze figuur is ontworpen door trainees van de User System Interaction-groep aan de TU Eindhoven (www.usitue.nl).
  • 3. 5 | 39 Serie Océ Varioprint I300 formaten. Ook hoeft de gebruiker zich niet bezig te houden met wáár iets uitgerekend wordt en hoe dat geparallelliseerd wordt. Versioning moet heel eenvoudig werken. Ook willen we een eenvoudige manier van programmeren aanbieden die samenwer- king en hergebruik van code stimuleert. Geabonneerde gebruikers We zijn nu bezig met de opzet van Odas als prototype (Figuur 3). Gebruikers dragen usecases aan en door het systeem hieraan te toetsen, willen we bewijzen dat de huidige opzet voldoet. In onze optiek is ‘keep it simple’ een goed uitgangspunt voor de architectuur. Zo’n systeem is overzichtelijk en flexibel, dus eenvoudig aan te passen aan nieuwe wensen. We gebruiken hiervoor een aantal open­ source data-science-pakketten en -biblio- theken voor Python die standaard al veel te bieden hebben om de basisbehoeften te realiseren, zoals Blaze voor rekenkundige bewerkingen, HDF5 met Pytables voor ef- ficiënte en schaalbare hiërarchische opslag van tabellen, Pandas voor datamanipulatie en Bokeh voor visualisatie. Pymatbridge gebruiken we om met Matlab te integreren. Om een eenvoudige manier van program- meren aan te bieden die samenwerking en hergebruik van code stimuleert, willen we een gestructureerde versie van Jupyter Notebooks in gaan zetten. Zo’n Notebook is opgebouwd uit cellen van tekst, executeer- bare code en gegenereerde output als tekst, tabel of afbeelding. Een Notebook bevat op deze manier het complete recept voor een specifieke analyse (Figuur 4). Door zo’n Notebook te delen en goed doorzoekbaar te maken, bieden we een omgeving die samen- werking en hergebruik van code bevordert. We structureren de algemene Notebooks zodanig dat data-extractie en -visualisatie voor de gebruikers eenvoudig is, maar toch onder water met large data om kan gaan. Ook kunnen de Notebooks voorzien wor- den van ‘alert’-cellen, die berichten naar ge- abonneerde gebruikers kunnen versturen wanneer de uitkomst voldoet aan specifie- ke criteria. Zodoende kunnen opmerkelijke resultaten in de gaten worden gehouden. We willen de data ook ontsluiten voor third-party data-science-pakketten, bijvoor- beeld om analyse voor business intelligence te doen. Daarvoor moeten de gegevens in een SQL-database terechtkomen. We zetten een aantal vaststaande algoritmes in die spe- cifieke data opwerken tot de data die voor deze toepassing nodig zijn. We spelen ook met het idee om ontbrekende SQL-tabellen op aanvraag te genereren uit de large data. Maatwerk Uitrol van een large data-systeem met een significante bedrijfsimpact vereist zorgvul- dige afwegingen en een goede afstemming tussen de r&d-, service-, productie- en de verbindende it-afdelingen. Een cruciaal uit- gangspunt is dat de gebruikers van het sys­ teem, de functiedesigners en data-scientists, eigenaar zijn van recepten die zij schrijven. Figuur 3: De opzet van Odas Figuur 4: Jupyter Notebooks kunnen gebruikt worden als interactieve beschrijving van een experiment of analyse. Een tweede uitgangspunt is om qua de- ployment de rekenkracht vlak bij de opslag te situeren. Tegenwoordig bestaat de mo- gelijkheid om it-zorg uit te besteden. Grote aanbieders van data-science-systemen ne- men de opslag en berekeningen graag uit handen, en brengen afhankelijk van het aangeboden verdienmodel kosten in reke- ning voor gebruik of abonnementen. Deze kosten zijn vaak afhankelijk van de schaal- grootte van het datagebruik. Een andere afweging is het gebruik van commerciële versus opensource oplossingen. Per situatie moet worden bekeken wat de best passende keuze is. Het blijft maatwerk. De komende jaren zullen we veel leren over de businesswaarde en inzet van data- science. We moeten ontdekken hoe we door middel van gerichte automatisering, en met behoud van eigenaarschap, waarde kunnen toevoegen aan onze domeinkennis. Kennis die we opnieuw zullen inzetten om optimale printsystemen te ontwerpen, bouwen en servicen. Data-science is geen magie, maar een kwestie van goed samenwerken. Het be- wijs dat we dat onder de knie hebben, wordt geleverd door de I300. Joost Janse werkt als architect bij Océ aan softwaresystemen die multidisciplinaire diagnostische processen ondersteunen. Hij promoot het gebruik van data-science om nieuwe analysemogelijkheden te ontsluiten. Redactie Pieter Edelman