Lektion 1 - Konstruktion vs. evolution Flashcards

1
Q

Beskriv begrebet konstruktion.

A

Produktion
Lineær tilgang
Rationel tænkning

Fordele

  • God til konplekse opgaver, opbrydning, dokumentation.
  • Økonomi

Ulemper

  • Dyrt at ændre
  • Minimal brugerinddragelse
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Beskriv vandfaldsmodellen.

A

Analyse – Dybdegående analyse i starten af projektet, som ender i en kravspecifikation, når den er godkendt, går man videre til næste trin.

Design – her arbejder man med specifikationer af systemets opbygning. Dette ender i en design specifikation, som skal godkendes inden næste step.

Implementering – Løsningen som er fundet i kravs- og designspecifikationen programmeres (realisering af systemet).

Aftestning – Aftestning ender i en testrapport, hvor systemets fejl rettes.

Drift – sidste step, hvor systemet sættes i drift og overvåges og vedligeholdes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Beskriv begrebet evolution.

A

Eksperimenter – Benyttes for at sikre at man får udviklet den rette læsning. Her anvendes prototyper.

Empirisk tilgang – kundens involvering spiller en vigtig rolle.
Iterationer – man arbejder iterativt.

Fordele

Lettere at foretage ændringer
Brugerinddragelse

Ulemper

Kompleksitet (hvis det er stort, det som skal laves)
Dokumentation – svær at vedligeholde, fordi den hele tiden ændres.
Tidskrævende, fordi man kan blive fanget i, at det hele tiden skal blive bedre og bedre.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Beskriv den evolutionære arbejdstilgang.

A

Cyklisk arbejdstilgang – små iterationer, hvor små dele af systemet udvikles.

  • *Analyse:** Krav til systemet fastlægges samt en foreløbig kravsspecifikation udarbejdes. – mindre end ved konstruktion.
  • *Design** – fastlæggelse af de foreløbige system.
  • *Programmering** – implementering af den specificerede del af systemet.
  • *Aftestning** – den programmerede del af systemet testes. Hvis der er kørt flere iterationer, testes det også om de forskellige dele kan køre sammen.
  • *Afprøvning** – viser og afprøver den programmerede del for kunden, som kommenterer og kommer med nye ønsker.

Herefter køres endnu en iteration, og man fortsætter indtil man har et fuldt tilfredsstillende system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Beskriv forskellen på konstruktion og evolution, samt hvordan disse kan interagere.

A

Konstruktion henvender sig til projekter med stabile og eksplicitte problemer (komplekse problemer).

Evolution egner sig bedst til at skabe løsninger til skiftende miljøer. Evolution anvendes ved stor usikkerhed i et projekt.

Hvis der er både kompleksitet og usikkerhed er det muligt at anvende et miks af konstruktion og evolution. Hertil kommer princippet om begrænset reducérbarhed, for hvis usikkerheden reduceres, så øger kompleksiteten (da fx mere data indsamles), og omvendt så øges usikkerheden hvis kompleksiteten skal reduceres.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Beskriv 8-dronninge problemet, hvor opgaven er at udvikle et system, som kan placere 8 dronninger på et skakbræt uden at nogle af dem kan slå hinanden. Tag også stilling til om den følger en konstruktiv eller evolutionær tilgang.

A

Der er tale om en konstruktiv tilgang.

Løsning 1 – Afsøgning af hele løsningsområdet. Den stopper når en løsning er fundet, eller når der ikke er flere muligheder. Den er uhensigtsmæssig, da den grundet de mange opstillingsmuligheder bliver meget beregningstung.

Løsning 2 – begræns søgningsfeltet ved at udelukke løsninger, som vi ved på forhånd ikke virker (maks 1 dronning pr. kolonne, række samt diagonalt).

Løsning 3 – Opdel problemet i delproblemer. Placér en dronning af gangen. Fjern den forrige dronning, hvis den næste dronning ikke kan placeres, og fortsæt indtil alle dronninger er placeret, eller der ikke forefindes nogen løsning.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Beskriv kort systemudvikling.

A

Formål: Optimering af arbejdsgang/IT-system.

Tilpasning til virksomhedens kontekst.

Programmør - central aktør - Hvad kan lade sig gøre?

Brugerne - central aktør - lære at bruge det. -> Brugervenlighed

Problemløsning

Forbedre afdelinger - intern infrastruktur

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Beskriv kompleksitet.

A

Kompleksitet

  • megen information
  • ”indviklet” men defineret problem
  • stort løsningsrum (8-dronningeproblemet,ruteplanlægning, lokalefordeling, sortering)

Strategi:

  • kategorisér og abstrahér
  • opdel i delproblemer indtil hvert delproblem har en simpel løsning.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Beskriv usikkerhed.

A
  • utilstrækkelig eller ”upålidelig” information om problemet og den ønskede løsning
  • systemets ønskede egenskaber er ukendte og/eller kun delvist beskrevne.
  • Eksempler: Et universitets skemalægningssystem samt system til elektronisk aflevering af opgaver.

Strategi:

  • indsamle mere (og mere pålidelig) information om problemet og mulige løsninger
  • eksperimentér med forskellige løsninger
How well did you know this?
1
Not at all
2
3
4
5
Perfectly