zondag 23 september 2012

Ontwerpen als vaardigheid: Van hobbyist naar professional 1


"Ontwerp als een architect die het huis van de toekomst maakt, zonder te dromen."       
                                                                                                                          - 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

Geen opmerkingen:

Een reactie posten