Informatikbog HHX

  • 🗚
  • 🔍︎
  • Procesdiagrammer #

    Processer kan modelleres med procesdiagrammer.

    Procesdiagrammer kaldes også "flowcharts" eller "rutediagrammer".

    Der findes mange variationer over procesdiagrammet. I dette kapitel præsenteres procesdiagrammer i en mest grundlæggende form.

    Computerprogrammer er processer, som kan repræsenteres med et procesdiagram.

    I informatik C beskrives processer på et højt niveau (lav detajeringsgrad) med procesdiagrammer; typisk brugerinteraktioner.

    I de følgende afsnit præsenteres de elementer, som indgår i et procesdiagram.

    Processer #

    En proces er en række tilstandsskift, som repræsenterer en overgang fra en tilstand til en anden.

    Rækkefølgen beskrives ved at tegne pile mellem tilstandsskiftene.

    en række af tilstandsskift

    I computersprog kaldes en proces for en funktion eller et program.

    Hændelser #

    Et tilstandsskift kaldes for en hændelse.

    Hændelser tegnes som rektangler.

    en række af hændelser

    En hændelse er normalt noget, der sker på grund af en påvirkning fra omverdenen.

    I en applikation med en grafisk brugergrænseflade kunne en hændelse være, at brugeren klikker på en knap.

    Tilstande #

    En tilstand er en beskrivelse af den måde "verden" (processen) ser ud mellem tilstandsskift.

    En proces har én starttilstand og én sluttilstand.

    Mellem start- og sluttilstanden er der ét eller flere tilstandsskift.

    Når man modellerer computerprogrammer, repræsenteres tilstand med variable.

    en række af tilstandsskift

    Start- og sluttilstanden tegnes som ovaler.

    Starttilstanden er processens input og sluttilstanden er output.

    Tilstandsskift som udtrykkes ved at de dataværdier, som processens variabler (den "synlige" tilstand i diagrammet) henviser til, ændrer sig, kaldes bare tilstandsskift.

    Tilstandsskift, som ikke afspejles i den "synlige" tilstand i diagrammet, kalder man anden virkning 🧞. F.eks. at tegne en figur på en computerskærm er en anden virkning.

    Variable #

    En variabel er et navn, som repræsenterer en del af tilstanden i et computerprogram.

    Variable i computerprogrammer og i matematiske formler ligner hinanden; de træder i stedet for tal (data).

    Kontrolstrukturer #

    Rækkefølgen af hændelser i processen styres med kontrolstrukturer.

    De 3 grundlæggende kontrolstrukturer er: Sekvenser, forgreninger og løkker.

    Sekvens #

    En sekvens er et ubetinget tilstandsskift.

    en række af tilstandsskift

    At tilstandsskiftet er ubetinget, betyder, at der ikke er noget valg med hensyn til valget af den næste hændelse i processen.

    Sekvenser kan bestå af et eller flere tilstandsskift lige efter hinanden.

    Et proces eller et computerprogram består af sekvenser, som kædes sammen med de andre kontrolstrukturer: forgreninger og løkker.

    Forgrening #

    En forgrening er et betinget tilstandsskift.

    At tilstandsskiftet er betinget, betyder, at valget af den næste hændelse i processen er betinget af tilstanden på det sted i processen, hvor forgreningen befinder sig.

    Betingelsen i en forgrening er et spørgsmål, som kan besvares på 2 måder; eksempelvis med ja eller nej.

    en forgrening

    Forgreningen tegnes som en diamant.

    Ved forgreningen deler sekvensen sig i to. De to nye sekvenser vil "mødes" igen og blive til en sekvens før processen slutter.

    Løkke #

    En løkke er en sekvens, som starter i en forgrening og som ender i den samme forgrening.

    Løkker repræsenterer dele af processen, som gentager sig et antal gange.

    Det er betingelsen, i den forgrening som indleder løkken, som bestemmer hvor mange gange, løkken skal gentages.

    en komplet eksempel

    I diagrammet ovenfor er der to forgreninger, men kun en af dem starter en løkke. Kan du se hvilken en af dem, det er?

    Kan du se hvilket tilstandsskift i diagrammet, som har det, man kalder anden virkning?

    Andre regler #

    Der er et par andre regler, som man skal følge, når man tegner et procesdiagram:

    • man skal altid kunne finde vej fra start til slut
    • man må ikke vende tilbage til starttilstanden
    • man må ikke forlade sluttilstanden