Processer och processmodeller Flashcards

1
Q

Vad är en process?

A

Ett antal aktiviteter som sker som är relaterade till varandra, med syfte att producera ett visst resultat.

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

Vad är skillnaden mellan process och processmodell?

A

Processmodell: vad ska ingå i en process
Process: vad vi faktiskt gör i praktiken, ett nätverk av aktiviteter

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

Vad är en mjukvaruprocess?

A

Set of related activities that leads to the production of a software system

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

Vad är en aktivitet?

A

En avgränsad sak vi gör, kan ha flera delsteg

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

Vad måste beskrivas när man specificerar en aktivitet?

A
  1. Pre-condition
  2. Post-condition
  3. Input
  4. Output
  5. Roller
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Vad är en linjär processmodell?

A

Modell där vi gör stegen i en ordning, t ex

Specifikation -> Design -> Implementation -> Test -> Drift

Nästa sak påbörjas inte förens den senare är avslutad

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

Vad är en iterativ processmodell?

A

En processmodell där vi itererar stegen, dvs upprepar.

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

Hur ofta driftsätts en renoldad iterativ process?

A

En gång

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

Vad är en inkrementell processmodell?

A

Man bygger upp mjukvaran i mindre delar tills man har den kompletta produkten. Man bygger inkrement med återkoppling efter varje imkrement. ytterligare ett par krav. Bygger på inkrementellt.

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

Vilka olika sätt kan man driftsätta i en inkrementell processmodell?

A
  1. Per inkrement/version
  2. Genom en integration bucket där inkrement samlas, integereras med varandra -> testas (systemtest) -> driftsätts tillsammanss
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Vad innebär vattenfallsmodellen?

A

En sorts linjär process som kallas vattenfallsmodellen främst för hur den oftast ritas upp.

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

Vad innebär inkrementell modell med integration bucket?

A

Inkrementell processsmodell där varje inkrement samlas i en integration bucket, integreras med varandra, testas och driftsätts tillsammans.

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

Vad innebär vattenfallsmodellen?

A
  • Linjär, planstyrd process
  • Hela förloppet planeras innan start
  • Steg reflekterar fundamentala aktiviteter i mjukvaruutveckling
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Vilka steg innehåller vattenfallsmodellen och hur motsvarar de stegen i mjukvaruutveckling?

A
  1. Specification -> Requirements analysis and definition
  2. Design -> System and software design
  3. Implementation -> Implementation and unit testing
  4. Test -> Integration and system testing
  5. Drift -> Operatin and maintenance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Vad innebär en inkrementell modell med flera releaser?

A

Istället för att samla och integrera varje inkrement i en integration bucket släpps varje inkrement som en ny release, driftsättning sker i slutet av varje inkrement.

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

Hur skiljer sig den “generella” beskrivningen av vattenfallsmodellen från så som Royce beskrev den?

A

Royce poängterade att det behövdes loopar även i en vattenfallsprocess

17
Q

Vad innebär RUP-modellen i korthet?

A

Består av fyra (4) faser och nio (9) discipliner.

Iterativ process pga besöker varje disciplin inom alla faser.

Dokumenttung.

18
Q

Vad är skillnaden mellan top-down och bottom up?

A

Top-down: börjar med helheten och bryt ner i mindre delar
Bottom-up: Börjar i detaljerna och jobbar sig uppåt tills man kan sätta ihop en helhetsbild

19
Q

Vad är för och- nackdelarna med vattenfallsmodellen?

A

+ Lätt att förstå, intiutiv
+ Tilltalar management pga lätt att överblicka
- Ofta dokumenttung

20
Q

Vad är för och- nackdelarna med inkrementell modell med integration bucket?

A

+ learning by doing

  • svårt ur managementperspektiv,
  • svårt med översikt
  • svårare med validering pga testning kräver definieradae krav
  • degenerandee arkitektur när man saknar helhelsbilden från start
21
Q

Vad är för och- nackdelar med inkrementell metod med flera releaser?

A

+ leverera tidigare och få tid till att bättre förstå otydliga krav
+ varje release ökar förståelse för produkten

  • svårt ur managementperpektiv
  • kravspec kan ej användar som en del av kontrakt eftersom vi inte vet allt från början
  • svårare med validering, mycket testning kräver definierade krav
  • degenererande arkitektur
22
Q

Vad betyder begreppet agil?

A

Följsam

En agil proocesss är följsam till förändringar och nya behov

23
Q

Varifrån uppstod behovet av agila processer?

A

80-talet, mjukvara blir mer komplext -> projekten klarar inte av att anpassa
sig till flyktiga krav -> tar lång till att modeller upp och man krossa budget -> behovet finns

24
Q

Vad innebär XP?

A
  • Beskriver metooder för själva utvecklingen, inte projektleding
  • Grunden utgörs av XP Values
  • Values bryts ner till regler/rekommendationer
25
Q

Vilka är XP values och vad innebär dem?

A
  1. Communication; öga mot öga, tillsammans
  2. Simplicity; göra det som efterfrågas, stämma av ofta
  3. Feedback; demonstrera tidigt, lyssna, anpassa
  4. Courage; tala sanning, inte arbetar ensam
  5. Respect; alla bidrar med ngt värde, respektera varandra
26
Q

Ge exempel på några XP Rules

A
  • User stoories; hur beskriver man en produkt från användaren synvinkel
  • Colletive ownership; ingen äger koden
  • Pair-programming
  • Refactoring; slå ihop redundant kod
27
Q

Vilka utmaningar finns med att använda XP?

A
  • Flyktiga krav då ändringar sker informellt
  • Säger inget om hur konflikten mellan intressenter ska hanteras
  • Informella krav gör det svårt att identifiera krav i konflikt med varandra
  • Brist på formell design -> svåröverblickat system
28
Q

Hur ser Scrum-processen ut?

A
  • Fokuserar på projekthantering, inte själva utvecklingen
  • Nyckelbegrepp “Pigs” (committed) and “chickens” (involved)

Product backlog, allt osm ska göras -> man plockar till sprint backlog, dvs arbete som ska göras under en sprint; bryts ner till små delar -> efter sprint upprepas processen

29
Q

Vilka är rollerna inom scrum?

A

Pigs
Scrum team
- Product owner
- Scrum Master (liknar en projektledare)
- Utvecklingsteam

Chickens
- Alla andra intressenter
- Management i linjeorganisationen

30
Q

Vilka aktiviteter hittar vi i en sprint?

A
  • Sprint planning meeting; tar det längre tid än 2x4h är det för långt för en sprint
  • Första 4h med alla “pigs”; man väljer vad från product backlog ska göras -> daily scrum meeting/standup (15 min), vad gjorde du igår/vad gör du idag/vad hindrar dig
31
Q

Vad innebär begreppet “Pigs and chickens” och vad innebär det inom Scrum?

A
  • Pigs; commited
  • Chickens; involved

Commited (måste med, bidrar med sig själva) och involved (bidrar med något, men inte med sig själva)

32
Q

Vad är för och- nackdelarna med Scrum?

A

Fördelar:
+ låga krav på dokumentation

+ funkar bra med osäkra krav

+ skapar synlighet för gruppen, vem jobbar med vad

Nackdelar:

  • flyttar makt neråt till teamen; problem för ovana organisation
  • kräver disciplinerade utvecklare
  • kräver aktiv produktägare med tid
  • viss oflexibilitet i o m “scrum meeting”
  • nytt synsätt = krav på attitydförändring
33
Q

Vad är kanban?

A

En processmodells om fokuserar på flödet av ett arbetspaket (eg. delar av sprint backlog)

34
Q

Vad är nackdelarna med att använda agila metoder?

A
  • Anpassat efter mindre grupper
  • Går emot vanor hos traditionella linjeorganisationer
  • Höga krav på kommunikationsförmåga
  • Svårt med kompabilitet med standarder och policys
35
Q

Vad är för -och nackdelarna att arbeta med scrum?

A

Fördelar:
+ Minskar ändringar i dokumentation
+ Fungerar bra med flyktiga krav
+ Synlighet för gruppen, vem som jobbar med vad

Nackdelar:
- Kräver inte bara ny process utan ett helt nytt synsätt
- Kan vara svårt att förhålla sig till bedömningsmodeller som t ex cert eller standarder
- Svårigheter med att sätta en pris och en hård deadline

36
Q

Vilka konksekvenser finns när man arbetar med scrum?

A

(1) Flyttar makt neråt i en hierarki, makten ligger hos teamen. Kan vara svårt i en traditionell linjeorganisation.
(2) Med tanke på den stora ansvaret per utvecklare kräver det stor disciplin och ställer stora krav på utvecklare.
(3) Kräver en produktägare med tid för aktivt deltagande
(4) Liten flexibilitet i t ex olika tidszoner i o m att alla ska delta vi daily standup

37
Q

Hur kan aglia metoder fungera i stora organisationer och projekt?

A

Ett alternativ är att teamen har sina scrum master och sedan från produktägare synka och koordinera sinsemellan och kanske synka sprintar.