Programvaruteknik (software engineering) Flashcards

1
Q

Vilka tre saker kännetecknar agile development models?

A

Inkrementell och iterativ
Korta feedback-loopar
Kravanalys

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

Vad är design patterns?

A

Generella lösningar på återkommande problem.

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

Vad är syftet med ett use case diagram?

A

Att beskriva systemet från användarens synvinkel

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

Vad är syftet med ett klassdiagram?

A

Beskriva strukturen och relationer mellan olika typer av klasser.

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

Vilka är de fyra traditionella utvecklinsfaserna vid programvarututveckling?

A

Kravanalys(requirement analysis)
Design
Implementation
Testing

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

Vad är huvudsyftet med att dela upp programvara i moduler?

A

För att förenkla programvaruutveckling genom att en enskild modul är överblickbar och kan utvecklas
oberoende av andra moduler

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

Vilka tre egenskaper är önskvärda för moduler?

A

Hög sammanhållning (cohesion)
Låg koppling (coupling)
Information Hiding

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

Ge ett exempel på en agile development model

A

Scrum

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

Vad är skillnaden mellan glass box och black box testing?

A

Glass-box testning innebär att testaren känner till den interna strukturen av programvaran som skall testas och utnyttjar denna information vid konstruktion av testerna.

Detta till skillnad från black-box testning som inte bygger på kunskap om programvarans interna struktur.

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

Vad gör en product owner enligt Scrum?

A

Upprätthåller och prioriterar en lista med krav som kallas Product Backlog

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

Förklara begreppet Sprint

A

Korta iterationer 2-4v som ska resultera i något levererbart till kund

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

Vad kallas den roll som säkerställer att Scrum-ramverket följs?

A

Scrum master

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

Vad är Daily scrum?

A

Korta morgonmöten då varje projektdeltagare redogör deras progress genom att svara på 3st frågor

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

Vilka tre frågor ska projektdeltagare svara på varje morgon?

A

Vad har jag gjort sedan igår?
Vad ska jag åstakomma till imorgon?
Vad hindrar mig?

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

Hur går Sprint retrospective till och vad är syftet?

A

Alla projektdeltagare, Scrum master och produktägaren arbetar tillsammans för att diskutera och lära sig från tidigare sprint.
Det är ett förbättringsarbete.

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

Vad är ett Increment?

A

Ett Increment är de uppgifter/delmås i Product Backlog som har gjorts färdiga under en sprint och alla tidigare sprintar.

Increment is the sum of all the Product Backlog items completed during a Sprint and the value of the increments of all previous Sprints.

17
Q

Vad är Sprint review?

A

En Sprint Review hålls i slutet av en sprint. Där presenteras det arbete som har utförts och utvärderar arbetet.

Därefter anpassas Product Backlog ifall det behövs.

18
Q

Vad är syftet med Sprint planning?

A

Att ändringsönskemål gås igenom av produktägaren och gruppen bryter ner kraven och estimerar sedan alla aktiviteter. Slutligen vägs tidsestimaten mot tillgänglig tid och de ändringsönskemål, som gruppen åtar sig att införa under sprinten.

Vid Sprint planning gör man en plan inför den kommande sprinten.

Sprint Planning answers the following:

  1. What can be delivered in the Increment resulting from the upcoming Sprint?
  2. How will the work needed to deliver the Increment be achieved?
19
Q

Ge ett exempel på:
One to One
One to Many
Many to Many

A

Giftemål; man kan bara var gift med en person enligt svensk lag

Mamma-Barn; Ett barn kan bara ha en biologisk mamma medans en mamma kan ha flera biologiska barn

Bros-Syster; En broder kan ha flera systrar/bröder och systern kan ha flera systrar/bröder

20
Q

Förklara begreppet coupling och cohesion.

A

Coupling är ett mått på hur sammanflätade olika moduler är. Låg coupling är bra.

Cohesion är ett mått på hur väl innehållet i en modul hänger ihop. Hög sammanhållning(cohesion) är bra.

21
Q

Vill man ha hög eller låg coupling respektive cohesion.

A

Låg koppling (coupling) och hög sammanhållning (cohesion)

22
Q

Vad innebär prototyping?

A

Prototyping innebär att man utvecklar och utvärderar en prototyp (en ofärdig version av det som skall
utvecklas)

23
Q

Beskriv några fördelar med att dela upp program i moduler:

A

Genom att dela upp program i moduler så blir modulerna mer läsbara, återanvändbara och pålitliga.

24
Q

Vad programvarutekniken som bygger på att konstruera programvara genom att kombinera olika färdiga komponenter(istället för att utveckla enga komponenter)?

A

Component based software architecture.