Den centrale aktivitet ved systemudvikling af computerbaserede systemer er systemmodellering. Dels systemmodellering af "virkeligheden" i form af systemets domæne og omgivelser i bred forstand, den aktuelle problemsituation der har givet anledning til systemudviklingsforløbet samt de fænomener systemet omfatter med henblik på at opnå forståelse af systemet som udgangspunkt for systemudviklingen. Dels systemmodellering af et computerbaseret system og dets indplacering i omgivelserne med henblik på forbedring af problemsituationen.
Systemmodellerne og systemodelleringen varierer således meget fra systemmodellering som fortolkning og simplificering af vilkårlige fysiske og sociale fænomener til systemmodellering som konstruktion af selvstændige, formelle, logiske maskiner implementeret i en bestemt computertype.
Traditionel systemudvikling omfatter mange forskellige, separate systemmodeller i forbindelse med de forskellige systemudviklingsaktiviteter samt mange forskellige systemmodelleringssprog og tilhørende systemmodelleringsmetoder og -værktøjer som systemudviklerne skal beherske.
Systemmodellering med forskellige, separate systemmodeller er anvendelig ved simple, ensrettede, fremadskridende systemudviklingsforløb som den klassiske vandfaldsmodel og iterative videreudviklinger, hvor systemmodeller kan "oversættes" fra den ene systemudviklingsaktivitet til den næste. Forskellige, separate systemmodeller er dog uhensigtsmæssige ved mere dynamiske og eventuelt kaotiske, eksperimenterende systemudviklingsforløb med vilkårlige skift mellem de forskellige systemudviklingsaktiviteter, da det er nødvendigt med dobbeltrettede "oversættelser" mellem alle kombinationer af systemmodeller når ændringer af en systemmodel kræver tilsvarende ændringer af de andre systemmodeller for at sikre konsistens mellem dem.
Der findes og anvendes desuden et stort antal forskellige systemudviklingsmetodologier med forskellige systemmodeller og varianter af systemmodeller samt tilknyttede systemmodelleringsværktøjer uden umiddelbar mulighed for udskifte/kombinere dem. Det betyder store begrænsninger for systemudviklernes valgfrihed mellem forskellige systemudviklingsmetodologier, -metoder og -værktøjer og medfører store anskaffelses- og uddannelsesomkostninger for systemudviklerne ved udskiftning af systemudviklingsmetodologier, -metoder og -værktøjer.
Endeligt er systemmodellerne og systemmodelleringsværktøjerne bundet til bestemte systemmodelelementer uden mulighed for at supplere med yderligere eller udskifte med andre systemmodelelementer efter behov. Det betyder at systemudviklerne eventuelt må se bort fra relevante aspekter og begrænse systemmodelleringen til de af systemmodelleringsværktøjerne understøttede systemmodelelementer eller må supplere systemmodelleringen med ad hoc systemmodeller ved hjælp af generelle værktøjer (som for eksempel tekstbehandling- og tegneprogrammer).
Der er således behov for integreret systemmodellering, der understøtter dynamiske systemudviklingsforløb, samt fleksible systemmodeller og systemmodelleringsværktøjer, der muliggør tilpasning af systemmodellerne efter individuelt behov for den enkelte systemudvikler og det enkelte systemudviklingsforløb og muliggør fri kombination og udskiftning af systemmodelleringsværktøjer.
|