Component level design Flashcards

1
Q

Hvad er component level design?

A

systemet nedbrydes i mindre uafhængige komponenter, der kan udvikles, testes og vedligeholdes seperat.

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

Hvad er en component?

A

En byggeklods i software, der kan:
-Genbruges – Bruges i flere projekter.
-Udskiftes – Let at erstatte med en anden.
-Forbindes – Har “stik” (interfaces) til at samarbejde med andre.

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

Hvordan arbejder komponenter sammen?

A

gennem veldefinerede interfaces

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

Hvad definerer en genbrugelig komponent?

A

Den løser én opgave og kan forbindes med andre byggeklodser gennem interfaces.

Tænk på den som en LEGO-klods:
Modulær: Passer sammen med andre klodser.
Genbrugelig: Kan bruges i mange forskellige bygninger.
Har stik (interfaces): Så den kan kobles rigtigt på

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

Komponenter med et objektorienteret syn

A

En komponent er en klasse fra et program, men med flere detaljer.
Den har funktioner (interfaces), f.eks.:
-computeJob – Beregner prisen på et printjob.
-initiateJob – Sender jobbet videre.

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

Komponenter med et traditionelt syn (moduler)

A

En komponent er en del af programmet, der laver en bestemt opgave.

Der er tre typer:
-Kontrol-komponent: Styrer andre dele.
-Problem-komponent: Løser en konkret opgave.
-Infrastruktur-komponent: Hjælper med tekniske ting (f.eks. databaseadgang).

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

Komponenter med et proces-orienteret syn

A

Komponenter designes med genbrug for øje.
De beskrives med:
-Interfaces: Hvordan de taler med andre.
-Funktioner: Hvad de kan.
-Samarbejde: Hvordan de arbejder sammen

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

Component-Based Development (CBD)

A

CBD handler om at bygge programmer af færdige komponenter

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

Trusselsmodellering (Threat Modeling)

A

For at beskytte systemet mod angreb undersøger man:

-Hvordan kan systemet blive angrebet?
-Hvilke svagheder findes der?
-Hvordan kan de forhindres?

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

Komponenter er grundstenene i software. Hvis de designes godt, bliver programmer?..

A

-Hurtigere at bygge
-Billigere at vedligeholde
-Mere stabile

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

Hvad viser et UML-Komponentdiagram?

A

Hvordan komponenter arbejder sammen.
Hvilke interfaces (stik) de bruger for at tale med hinanden.

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

Komponentbaseret Udvikling (CBD)

Hvordan designer man komponenter trin-for-trin?

A

1️⃣ Find klasser og komponenter.
2️⃣ Definér deres samarbejde (med f.eks. samarbejdsdiagrammer).
3️⃣ Beskriv deres opførsel (med tilstands- og aktivitetsdiagrammer).
4️⃣ Lav en implementeringsplan (med implementeringsdiagram).

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

Hvad er et Work Product?

A

Et work product er hver komponent, der skabes under designprocessen, og som vises med:

-Grafisk notation (fx UML-diagrammer)
-Tabelnotation (fx skemaer eller tabeller)
-Tekstbaseret notation (fx pseudokode eller beskrivelser)

Work productet er hovedresultatet af designarbejdet og gennemgås for at sikre kvaliteten.

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