"Ontwerp
als een architect die het huis van de toekomst maakt, zonder te dromen."
- Sam Rain
- Sam Rain
Wie van zijn of haar hobby een baan wilt
maken, heeft ervaring nodig. Het is vaak een lange lijdensweg welke gepaard
gaat met vooral vallen en opstaan. Ook in de informatie technologie sector gaat
dit op — een thuisnetwerkje beheren maakt nog geen beheerder en een
programmaatje in elkaar flansen maakt zeker geen software architect in de
wereld van industrie. Tegenwoordig is het hebben van meerdere disciplines
binnen een vakgebied meer de regel dan de norm. Toch is een specialisme het
talent onder de professionals — het onderscheid maakt dat men kan concurreren
met andere gegadigden binnen een project.
In de industriële toepassingen is de
simpliciteit ver te zoeken — er komt naast creativiteit ook nog eens de nodige
verantwoordelijkheid bij kijken. Veiligheid, robuustheid, schaalbaarheid,
flexibiliteit, beheren en inzicht zijn maar enkele aspecten die ieder project
met zich meebrengen. Vergissen is menselijk, maar in de industrie een kostbare
blunder — hoewel software vaak gepresenteerd wordt als het populair
kinderspeelgoed van Deense origine, is het eerder te vergelijken als metselwerk
met specie. Eenmaal uitgehard, wordt het bikken en vaak hardhandig vervangen
door andere bakstenen.
Het proces vóór de tekentafel wordt vaak niet
gezien door de beginnende professional. Denkwerk, kennis en de nodige
methodologie lijken vaak ideaal totdat men een frontale botsing maakt tien
processen verder op — die soms ook nog eens pas opgemerkt worden op een paar
weken voor de 'deadline'. Het ontwerp lijkt als een kaartenhuis in elkaar te
zakken en de paniek springt erin. Wie oplossingen ontwerpt zal de processen
moeten begrijpen, de industrie van toepassing moeten begrijpen en het inzicht
hebben dat 'business logic', ondanks de modulaire opbouw, zo flexibel is als
een loden kubieke meter.
Veiligheid is een onderschatting van vele ontwerpers — dat is voor de 'beheerder'
en het onderliggend systeem. Inderdaad zijn deze de eerste linie, maar het is
de toepassing waarin de vele gaten ontdekt worden en voor een risico zorgen.
Authenticiteit van gebruikers, maar ook van het systeem zelf, dienen in het
ontwerp te worden opgenomen. De toegangspunten tot het systeem moeten voor de
ontwerper duidelijk zijn, evenals de cruciale koppelingen naar externe
gegevensbronnen.
Robuustheid in de industriële software gaat verreweg om hoe de oplossing 'omgaat'
met fouten en problemen. Robuuste oplossingen moeten dus tegen een stootje
kunnen — het zijn vaak ontwerpers die weinig ervaring hebben met de
'knulligheid' van de menselijke gebruikers waardoor de verwachtingen bij de
levering ernstig tegenvallen. Het 'testen' gaat daarom vaak in de vorm van
'happy paths', welke de meest ideale manieren van gebruik binnen de oplossing
zijn. Zonder een aantal doemscenario's, worden fouten vaak te laat ontdekt - en
nog vaker in situaties waar dan geen reddingsplan aanwezig is.
Schaalbaarheid wordt vaak verward met een modulaire strategie. Schalen betekent dat
men zowel kan uitbreiden als inperken. Een ontwerp dat niet kan schalen
limiteert zichzelf op de bekende 'levenscyclus' van de oplossing. Schaalbare
ontwerpen zijn niet moeilijk — het is een kwestie van gebruikers te
anonimiseren en onder te verdelen in rollen. Daarnaast bestaat 'data' enkel in
persistente vorm binnen een gegevensbron en zijn toegangspunten en externe
koppelingen configureerbaar — zodat er meerdere oplossingen co-existent ingezet
kunnen worden.
Beheren
van de oplossing is anders dan het 'onderhouden'
ervan. Ten alle tijde moet een industriële toepassing toegang verlenen aan één
of meer beheerders, zodat er handelingen verricht kunnen worden zoals het tijdelijk
stoppen of terugdraaien van lopende processen. Omdat de industrie in grote
hoeveelheid cruciale gegevens transporteert, kan een enkele fout grote impact
hebben op de resultaten van zelfs meerdere processen. Een ontwerp dat geen
rekening houdt met beheer van de oplossing is een onpraktisch ontwerp — immers
heeft ook een auto een stuur, een gaspedaal en een rem nodig.
Inzicht creëren is vaak een onderschatting — waar beheerders voldoende hebben
aan overzicht, zijn rapportages een "must-have" in industriële
oplossingen. Uiteindelijk gaat het om resultaten en deze cruciale informatie
dient terug te halen zijn, zonder dat daar een trukendoos voor opengemaakt
hoeft te worden. Een ontwerper die niet beseft wat managers willen weten, kan
ook geen degelijke oplossing ontwerpen met mogelijkheden tot inzicht.
Rapportages moeten dus altijd opgevraagd kunnen worden en 'vanzelf gegeneerd
kunnen.
Industriële toepassingen ontwerpen vraagt meer
dan een probleemstelling op te lossen — het is een oplossing ontwerpen, rekeninghoudend
met risico's en uitbreidingsplannen rondom het meest onvoorstelbare
eisenpakket.
Meer lezen over Informatie Technologie? Klik hier voor de inhoudsopgave van alle
artikelen!
©SamRain
Ontwerpen
Ontwerpen
Geen opmerkingen:
Een reactie posten