Procesmodellering i forbindelse med computerbaserede systemer sker typisk på meget forskellige måder i forbindelse med forskellige systemudviklingsmetodologier samt aktiviter og abstraktionsniveauer. Der er dog visse fællestræk, og specielt kan der laves fællestræk igennem generalisering af koncepterne.
På højere abstraktionsniveauer i forbindelse med analyse og design modelleres processer som delprocesser forbundet med relationer i form af data. I forbindelse med implementering modelleres processer derimod som sekvenser af programinstruktioner. Disse sekvenser af programinstruktioner kan dog ligeledes transformeres til netværk af programinstruktioner forbundet med relationer i form af de data, som den enkelte programinstruktion benytter. Sådanne transformationer er almindelige i moderne kompilere i forbindelse med registerallokering for og optimering af programkode. Processer kan således logisk set generelt modelleres som netværk af delprocesser og data.
Logisk procesmodellering
I forbindelse med computerbaseret eksekvering skal processer dog nødvendigvis transformeres til sekvenser af maskinkode programinstruktioner. Data eksisterer kun indirekte igennem computerens lagerenheder og CPUens interne registre.
Implementering af procesmodellering
Internt i computerens CPU kan sekvenserne af maskinkode programinstruktioner dog også logisk set modelleres som netværk af maskinkodeinstruktioner forbundet med relationer i form af de registre, som den enkelte maskinkodeinstruktion benytter.
Ved at bringe procesmodelleringen et niveau dybere fra programmodellering til modellering af computerens CPU kan der bevares én form for procesmodellering som modellering af netværk af processer og data, der er konsistent med modellering af statiske programstrukturer som sekvenser af programinstruktioner.
Modellering af programinstruktioner
Al procesmodellering fra uformel højniveau analyse til formel lavniveau implementering kan således laves på samme måde i form af netværk af processer og data.
|