Tentamens frågor från studenter Flashcards
1) Beskriv skillnaden mellan en commodity feature och en differentiator feature?
Svar:
- En commodity är en bit funktionalitet som kunden förväntar sig ska finnas, medans en differentiator är funktionaliteten som avgör ifall kunden väljer din produkt över konkurrerande produkter.
2)
Vilket av följande uttalanden beskriver bäst skillnaden mellan kravbaserad utveckling och databaserad utveckling?
a) Kravbaserad utveckling syftar endast till dom viktigaste delarna i ett system medans databaserad utveckling används till hela systemet.
b) Databaserad utveckling måste alltid ta hänsyn till GDPR medans kravbaserad utveckling behöver aldrig det.
c) Databaserad utveckling använder sig av användardata för att förbättra produkten medans kravbaserad utveckling inte gör det.
d) Det finns ingen skillnad mellan kravbaserad utveckling och databaserad
utveckling.
Svar: C
c) Databaserad utveckling använder sig av användardata för att förbättra produkten medans kravbaserad utveckling inte gör det.
Nämn tre potentiella fallgropar för data-driven utveckling?
Ge utförliga svar med exempel
Svar: T.ex.
- För liten sample size. Det svårt eller omöjligt att få ut tillräckligt med data för att göra jämförelser. ex. En hem sida för försäljning av hjullastare har för få kunder som köper för att vi skall se skillnad på försäljning.
- Dålig data (varför är den dålig)
- Oviktig data (Varför oviktig )
- Felaktig analys (Vad kan gå fel)
- För kort livstid (Hur kort ät kort)??
4) Vad är digitalisering och varför sker det?
Digitalisering är processen att omvandla information, processer, produkter och tjänster till
digital form för användning med datorer och andra digitala enheter. Det innebär integration
av digital teknik i alla områden av en verksamhet, vilket fundamentalt förändrar hur den
fungerar och levererar värde till kunder.
Det sker därför att differentiering genom mekanik och elektronik blir allt svårare. Samt att för
att undvika “commoditization” behövs nya lösningar och tjänster. Digitalisering av produkter
och förändrade affärsmodeller kan leda till differentiering.
5) Rangordna dessa efter leveranscykel, från längst tid till kortast tid:
1. A/B tester
2. Produktgenerationer
3. Förstärkningsinlärning (Reinforcement learning)
4. DevOPS, DataOps och AI/MLOps
5. Årliga mjukvaruuppdateringar
Svar:
1. Produktgenerationer
2. Årliga mjukvaruuppdateringar
3. DevOPS, DataOps och AI/MLOps
4. A/B tester
5. Förstärkningsinlärning (Reinforcement learning)
6) Vilka av dessa egenskaper stämmer in på outcome/data driven utveckling?
a. Innovation
b. Värde hypotes (Value hypothesis)
c. Minimera prediktionsfel (Minimize prediction errors)
d. Konkurrenskraftiga paritets funktioner(Competitor parity features)
e. Många punkter i datamängd (Many points in data set)
a. Innovation
b. Värde hypotes (Value hypothesis)
11) Vad är commodity functionally?
- De viktigaste funktionaliteterna (svaret)
- De minst viktiga och nödvändiga funktionaliteterna
- De dyraste funtionaliterna
- De billigaste funktionaliteterna
- Användare lockas av dessa funktionaliteter - Användare lockas inte av dessa funktionaliteter(svaret)
Fråga 12) Vad är Outcome driven? Ge exempel på ett företag, bolag som använder sig utav denna metod.
Det är att man inte jobbar mycket med att kraven, utan utvecklarna får i uppgift att uppnå ett viss resultat. Booking.com är ett exempel
15) Rangordna nedanstående punkter i rätt ordning utifrån DevOps fasen.
● Kod
● Integration
● Plan
● Operate
● Deploy
● Release
● Monitor
● Test
● Plan
● Kod
● Integration
● Test
● Release
● Deploy
● Operate
● Monitor
16) Beskriv skillnaden mellan test driven utveckling jämfört med vanlig testing.
I testdriven utveckling testar man före implementation.
17) Nämn två anledningar till varför ett företag skulle vilja uppdatera sin Legacy-applikation och
migrera den till ett moln av micro services.
Alternativ för rätta svar:
● Legacy-applikationer är väldigt svåra och kostsamma att underhålla och blir bara
dyrare med åren.
● Legacy-applikationer har svårare att möta kunders efterfrågan på funktionalitet.
● Legacy-kod är svår att sätta sig in i för nya utvecklare och de som skrivit den från
början har med största sannolikhet slutat/gått vidare till andra projekt.
18) Vad är legacysystem och vad är en utmaning i att jobba med dem?
Legacy system är tekniska system som utvecklats under en tidigare era och som
fortfarande används idag. De kan vara svåra och dyra att underhålla, uppgradera eller
integrera med moderna system och teknologier.
19) Vilka är de olika stegen från idé till release vid DevOps-utveckling?
Planering, Kodning, Testning, Integration, Leverans, Övervakning, Underhåll
20) I testdriven utveckling skriver man tester för en funktion innan man börja skriva
koden. Varför vill man köra testerna en gång innan man börjar skriva koden, även om
de ändå kommer misslyckas?
För att säkerställa att testerna man skrivit inte “råkar gå igenom”. Går dem igenom så behöver man skriva om sina tester.
21) Varför är det viktigt att använda versionshanteringssystem som Git när man utvecklar
programvara?
Versionshanteringssystemet Git hjälper till att spåra förändringar i koden, vilket
underlättar samarbete mellan flera utvecklare och möjliggör återställning av tidigare
versioner om något går fel. Det ger också ökad transparens och säkerhet i
utvecklingsprocessen.