Essäy frågor, från gamla tentor. Systemutveckling A 7.5hp Flashcards

1
Q

I väntrummet på en akutmottagning väntar olika patienter på att få träffa en läkare. Akutsjuksköterskorna jobbar med triagering, alltså att
sortera och prioritera i patientflödet utifrån en bedömning av en patients medicinska allvarlighetsgrad. Till sin hjälp har de en
triageringshandbok samt en app i vilken de bland annat registrerar när en patient anländer. Vissa patienter har bedömts behöva
snabbare behandling, bland annat de som behöver röntgas. När en patient varit på röntgenavdelningen får denne sina röntgenbilder i ett
grönt kuvert och återvänder då till väntrummet på akutmottagningen. Akutsjuksköterskorna som jobbar med triagering kan lätt identifiera
dessa patienter då det gröna kuvertet sticker ut bland patienterna. Det gröna kuvertet underlättar även när det finns språkbarriärer på
grund av bristande språkkunskaper.
Beskriv triagering som system och vad som ingår i det utifrån beskrivningen ovan. Motivera ditt svar (8 poäng).

A

Triageringssystemet består i den här fallbeskrivningen av ett antal komponenter. Vi har dels en app, dels de olikfärgade kuverten men
även akutsjuksköterskorna som är användarna av detta system. I huvudsak fungerar systemet genom att en patient (intressenter i systemet)
kommer till akuten, efter att ha registrerats och tilldelats en prioritet av sjuksköterskan (intressenter i systemet) slussas de vidare till respektive vårdavdelning. De
patienter som exempelvis tilldelats en hög prioritet och som röntgas omgående återvänder med ett färgat kuvert innehållandes dennas
röntgenbilder.

Allt detta gör triagering till ett Aktivitetssystem, det vill säga en logisk samling av aktiviteter som utförs av en grupp av människor för att nå ett mål.

Triagering är i sin helhet ett informationssystem då det hjälper vårdpersonalen att förmedla information mellan de olika instanserna. Vilket även gör det till ett socio-tekniskt system.

Det är ett informationssystem då appen (som stödjs av användarmanualen) lagrar information om när de anländer och det är input från sjuksköterskorna.

De gröna kuverten nyttjas av personalen som är en komponent (Personalen bearbetar data (grönakuvertet),

systemet tar in inputs bl.a. (sjuksköterskornas
allvarlighets bedömning eller när de ger information till appen) och ger outputs i form av en prioriteringsordning av vårdtagarna i ett inledande steg på akuten. med hjälp av komponenten triageringshandbok

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

Är triageringssystemet ett öppet eller slutet system? Motivera ditt svar.

A

Triagering är ett öppet system. Detta då det tar inputs från sin omgivning / användarna, vilket är i enlighet med definitionen
för ett öppet system. Ett slutet system skulle tvärtemot agera utan inputs från sin omgivning, vilket inte är fallet i detta scenario.

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

Franck vill bygga en relationsmodell om utbildningar i systemvetenskap på Uppsala Universitet. Han har konstaterat följande: det är
flera olika kurser under höstterminen, det finns flera utbildningar (t.ex. kandidatprogram i systemvetenskap, A-kursen i
systemvetenskap) och såklart många studenter som ivrigt läser systemvetenskap.
Kan du hjälpa Franck att identifiera de olika komponenter som ska ingå i relationsmodellen? Beskriv vilka entiter som finns (minst 3),
vad är möjliga attribut till dessa entiteter, och vilka relationer som kan finnas mellan dessa entiteter (dvs. kardinalitet).
(poängssättning: 1+1 poäng för varje entitet + attribut ; 1 poäng per relation med kardinalitet)

A

Ett ERD-digram för utbildningarna inom systemvetenskap skulle kunna innehålla (exempelvis)
följande entiteter: *Elev *Kurs *Lärare

Där relationen skulle beskrivas som följande, en elev kan delta på en eller flera kurser, där kursen kan ha en eller flera lärare (kardinaliteten
beskrivs mer utförligt i slutet av frågan).

Attributen till dessa entiteter skulle exempelvis kunna vara som följande: *Elev: Student-ID (någon form av
identifikation), Program eller kurs (Kurs-ID), Ålder, antal HP, adress mm. *Kurs: Kurs-ID, antal registrerade
studenter (genom Student-ID), utbildningens längd mm. *Lärare: Delaktighet i kurser (genom Kurs-ID),
Lärar-ID, antal undervisningstimmar mm.

Kardinaliteten mellan dessa entiteter skulle då vara som följande: *Elev: Relationen mellan elev och kurs är sådan att en elev kan delta på en eller
flera kurser (för att få ett student-ID och därmed vara med i ERD). En kurs kan även läsas av en eller flera elever (förutsatt att skolan inte håller
lektioner för tomma salar). *Kurs: En kurs kan som tidigare nämnt ha en eller flera elever. Kursen kan även ha en eller flera lärare (Möjligen skulle
en kurs kunna gå helt utan lärare, exempelvis en distanskurs med enbart en ansvarig. Defintionsfråga). *Lärare: En lärare kan vara delaktig i en
eller flera kurser under en termin. Relationen är därför att en kurs kan ha en eller flera lärare, och att en lärare kan vara delaktig i en eller flera
kurser.

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

Kvalitetsgranskning av kraven.

Namnge och definiera 5 kriterier för kvalitetsgranskning av krav. Ge ett exempel för varje kriterium.

A

*Mätbart: För att ett krav ska fylla en funktion ska det gå att testa vid systemets lansering. Exempelvis måste ett krav som
“lättanvänt” kunna testas genom exempelvis hur många första-gångs-användare som har en grundläggande förståelse för systemet efter en
genomgång på X antal timmar.

*Tydligt: Ett krav måste vara tydligt. Det kravet som nämndes i föregående exempel kan sägas vara otydligt i sin utformning. Ett krav måste vara tydligt definierat, exempelvis som att “systemet ska uppdateras var 3:e timme med nya kunduppgifter”.

*Motiverat:
Anledningen till att kravet ställs. Vad finns det för fördelar för användaren, och i förlängningen verksamheten med att detta krav ställs på systemet?
Ett exempel kan vara att “Genom att ha ett kundordersystem effektiviseras kundorderhanteringen, och därmed frigörs mer personal vilket ökar
kundnöjdheten i butiken”.

*Spårbart: Vem är det som formulerat kravet? För att förstå kravet ursprung och dess värde är det viktigt med en tydligt definierad intressent, särskilt då vissa intressenter kan ha prioritet i utvecklingen. Exempelvis “Kassapersonalen önskar större knappar i ordersystemets gränssnitt för att minska antalet felaktiga klick”.

*Sammanhang: I vilket sammanhang ställs kravet, eller i vilken del av processen.
För att till fullo förstå ett krav är det nödvändigt att beskriva i vilken situation som kravet formulerats. Att exempelvis skriva “När en order anländer
via hemsidan bör detta aviseras i personalens telefoner” sätter kravet i ett sammanhang, nämligen att kravet / behovet uppstår när en kundorder
inkommer via hemsidan.

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

Förklara varför det är viktigt att planera testning av systemet i samband med kravanalys

A

När kraven analyseras är det av största vikt att även planera in testningen av systemet för att säkerställa att dessa krav uppfylls
vid den faktiska lanseringen. För att kraven ska fylla någon funktion överhuvudtaget måste de vara mätbara/ möjliga att testa, vilket innebär att ett
välformulerat krav utan större problem bör kunna omsättas i ett test av systemet redan vid kravanalysen. Sammantaget är det alltså viktigt att
planera test av systemet vid kravanalysen för att säkerställa att kraven faktiskt uppfylls i det faktiska systemet inför lansering, ett välformulerat
krav ska även vara mätbart vilket gör att planering av tester även blir en naturlig del av kravanalysen.

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

Förklara vad V-modellen går ut på (syftet och olika typer av tester)

A

V-modellen är en modell som går ut på att man medan man utveckar varje del av ett system utvecklar man även en rad tester för att testa
denna del av systemet. Så när systemet väl är färdigställt använder man sig av dessa tester för att se om de lever upp till kraven som ställts.

testerna som utförs är:

  • enhetstest: testar om en enskild funktion hos systemet fungerar som den ska
  • integrationstest: testar om olika funktioner som är beroende av varandra fungerar tillsammans
  • systemtest: testar om systemet i sin helhet fungerar som det är tänkt, ger rätt inputt rätt output
  • acceptanstest: testar om det lever upp till användarnaskrav på systemet
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Förklara vad ett acceptanstest är (ange 2 olika typer av acceptanstester)

A

Ett acceptanstest är ett test på hur användarna uppelver systemet och om de “accepterar” det, det vill säga om de kommer att
använda som avsett vid lansering. Det finns i huvudsak två acceptanstester som genomförs i och med lanseringen av ett nytt system:

Alpha-testing: Ett test av systemet med fabricerad data, det vill säga att systemet beter sig som vanligt, men den data som används av
användarna är skapad specifikt för testet.

Beta-testing: Ett test av systemet med verklig data. I dette skede så får användarna alltså testa systemet praktiskt taget exakt som det
kommer att se ut vid lanseringen.

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

Kravinsamling (eng. requirements elicitation)

FÖRSTÅELSE: definiera syftet av denna process.

A

Syftet med kravinsamlingen är att kartlägga vilka funktioner systemet förväntas handhålla och vilka problem dessa förväntas lösa.

Kraven kan delas in i olika kategorier, beroende på vem eller vad de rör, exempelvis Business Requirements som direkt rör affärsplanens
framgång, User Requirements som syftar att förenkla användares arbetsuppgifter, Functional Requirements som definierar vad systemet
förväntas göra samt Non-functional Requirements som beskriver hur systemet ska fungera.

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

Dataflödesdiagram (DFD).

Förklara vad ett dataflödesdiagram är och vad det används till

A

Ett dataflödes-diagram visar hur dataelement flödar mellan entiteter, datalager och processer inom en övergripande process.
Dataflödes- diagrammet är en processmodell som används vid analys och design fasen för att tydliggöra hur data flödar inom en process.

Eftersom att dataflödesdiagrammet har flera nivåer (kontext ->0,1,2,3,4,5 osv) kan det användas för att dels skapa en överblick av en process
genom kontextdiagrammet / nivå 0, exempelvis då man vill analysera vilka entiteter och delprocesser som finns i en process. Men även för att
närmare analysera en delprocess genom nivå 0,1,2,3 osv. exempelvis för att se vilka datalager som är delaktiga vid en viss process för att
möjliggöra för högre säkerhet hos de datalager som hanterar personuppgifter eller för att helt enkelt förstå kopplingarna inom systemet och
processen.

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

Förklara vad DFD-nivåer syftar till och hur indelningen i olika DFD-nivåer sker.

A

DFD-nivåerna syftar till att skapa abstraktionsnivåer i avbildningen av en process. Den mest övergripande nivån,
kontextdiagrammet visar enbart entiterna och den övergripande processen som sker. Exempelvis Kund -> Order -> Företag.

I nästa nivå, nivå 0 adderas även datalager och delprocesser till beskrivningen. Därmed kan föregående exempel utökas med en databas för
kundordrar, lagerstatus och processer för betalning, leverans med mera.

I de fortsatta nivåerna, som börjar vid nivå 1 isoleras enskilda delprocesser för att beskrivas närmare. Exempelvis kan processen för
betalning i nivå-0 diagrammet disikeras närmare och delas upp i flera delprocesser och datalager.
Den fortsatta nivå-indelningen sker då man går in i mer detalj på en enskild process i nivå-1 diagrammet (som då skapar nivå 2-diagrammet) och
så vidare. Genom de olika nivåerna kan man alltså analysera processer både övergripande, men även på en extremt hög detaljnivå.

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

Arkitekturstilar

Kurslitteraturen behandlar olika arkitekturstilar, bl.a. klient-server och flerskiktsarkitektur som bygger på begreppet “skikt”.

Förklara vad menas med skikt och ge ett exempel på en logisk uppdelning i 3 olika skikt. Förklara vad som ingår i dessa 3 skikt.

A

Skikt är en typ av logisk arkitektur som beskriver hur en process utförs i systemet. En grundläggande två skikts arkitektur kanske
exempelvis enbart innefattar en dator som visar det grafiska och en databas som hämtar, och bearbetar data.

En arkitektur med tre skikt tar ofta sin utformning i en stil liknande denna: 1) Presentation av data -> 2) Hämtning av data -> 3) Bearbetning av
data. Genom att dela upp uppgiften på detta sätt i tre delar blir hela systemet snabbare. Exempelvis kan en vanlig kontorsdator presentera
informationen på skärmen, som gått via en separat server som inhämtar datan från en databas, där datan lagras och behandlas för det specifika

syftet.
Att dela upp arkitekturen på detta sätt i n-antal skikt ger mer processkraft i varje enskilt steg, vilket kan kraftigt påskynda annars långsamma
processer. Att via en persondator både hämta, bearbeta och presentera exempelvis aktiedata, skulle i de flesta fall gå extremt långsamt, om det
skulle gå överhuvudtaget.

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

Förklara varför det är viktigt för en systemdesigner att ha ett etiskt förhållningssätt till design- och utvecklingsarbetet.

A

Design och utvecklingsarbetet är essentiellt för den färdiga produktens utformning. I designfasen utvecklas exempelvis
gränssnittet för användarna som i slutändan är hur systemet “representeras” här finns ett mycket stort ansvar för hur användarna i slutändan
kommer att bruka, eller missbruka programmet och hur det till följd kommer att påverka dom.

Ett relevant exempel i dagsläget är sociala medier, som ofta till stor del skapar sina användare genom att designa sin applikationer så att
användarna stannar kvar på appen, och inte minst upplever att det är viktigt för dom. Genom att designa funktioner som stora knappar med
hjärtan (symboler vi relaterar till) som ska utgöra “likes” och genom att skapa flöden som aldrig tar slut, utan där man kan scrolla förevigt kan
man säga att de utgör exempel på oetisk design. Genom mänsklig psykologi får nämligen denna design oss att stanna kvar längre, och uppleva
likes på våra bilder som en utvärdering av oss själva - vilket har visats leda till en rad psykologiska åkommor hos användarna (kan talas om en
ny folksjukdom).

Vidare kan man diskutera information overflow, och hur man som designer ansvarar för att rätt information presenteras på rätt sätt. Att för mycket
information presenteras på exempelvis studentportalen har visats leda till onödig stress då hjärnan konstant försöker processera all den
information som den slås av. Hur man visuellt presenterar informationen man vill förmedla påverkar alltså användaren. Detsamma gäller vid
skapandet av produktionssystem och dylikt där systemet kanske i större utsträckning påverkar arbetaren än vice versa. Alla system bör ta hänsyn
till den människan som kommer att använda systemet, och hur det påverkar denna tilltänkta användare.

Det finns även aspekter av etik inom designen av datalagringen, då man exempelvis ansvarar för att välja en säker lagring av personuppgifter eller
annan känslig data som systemet kan tänkas hantera.

=> Tillägg!! Därför är det bra att testning sker så tidigt som möjligt i ett systemutvecklingsprojekt, för att identifiera vilka brister och problem
som finns med tex det föreslagna gränssnittet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q
Kravhantering:
FÖRSTÅELSE: Definiera följande begrepp:
i. funktionellt krav
ii. icke-funktionellt krav
iii. kravspecifikation
A

Ett funktionellt krav beskriver VAD ett systemet ska göra, utan hänsyn till tekniska aspekter. Kan exempelvis vara:

“Tillgång till kundhanteringssystem”

Ett icke-funktionellt krav besrkiver HUR ett system ska fungera. Detta kan då exempelvis ta formen av:

“kundhanteringssystemet ska finnas
tillgängligt i alla butiker i Frankrike och Spanien”.

Kravspecifikationen är det dokument som sammanställer samtliga funktionella och icke-funktionella krav på systemet. Den kan även innehålla
användarkrav och affärskrav, där indelningen är efter vad som är krav utifrån verksamhetens mål och vad användarna av systemet har för krav
för att kunna genomföra sina arbetsuppgifter.

=> ett tillägg!! Krav ska inte ge förslag på lösningar. Om kraven ger förslag på lösningar låser man sig tex fast vid en speciell hårdvara eller
mjukvara. Kraven ska inte vara creeping utan hålla sig inom projektets ramar.

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

REFLEKTION: man brukar säga att kravhantering sker inom analysfasen av systemutveckling. Men man kan också hävda att kravhantering kan också ske delvis inom andra faser. Motivera hur och varför kravhantering kan sträcka sig över systemutvecklings
samtliga faser

A

Först och främst ska sägas att i enlighet med Eriksson (2008) så bör kravhantering ske iterativt och regelbundet i hela
utvecklingsprocesen. Detta har sin grund i att krav, som när allt kommer kring avgör hela utformningen av systemet, är en föränderlig åsikt.

Intressenterna som vädrar sina krav i analysfasen kan 1) komma på andra krav för systemet 2) ändra sin uppfattning under systemets gång 3)
inse att ett krav inte längre är relevant.

Eftersom att intressenternas kravbild är föränderlig så bör projektet ta höjd för detta, genom en regelbunden kravinsamling som även innefattar
återkoppling med de intressenter som ursprungligen lyfte krav säkerställs att systemet är relevant även när det lanseras (Eriksson, 2008). Det
förefaller därför naturligt att kravhantering sker även i design, och till viss del i konstruktionsfasen av systemet för att säkerställa att systemet
utformas efter intressenternas nuvarande kravbild.

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

I ett användningsfall anges:

i) det sk. normala händelseförloppet.
ii) alternativa händelseförlopp.
iii) undantag.

FÖRSTÅELSE: Förklara innebörden av ovanstående begrepp.

A

Normalt händelseförlopp:

Det normala händelseförloppet är den “väg” som användaren förväntas ta genom programmet när allt går enligt förväntningarna. Användaren
tar alltså den uttänkta vägen för att komma fram till den erfordrade lösingen.

Alternativt händelseförlopp:

Det alternativa händelseförloppet är en icke-tilltänkt väg som användaren kan ta, men som fortfarande leder till önskat resultat. Detta innebär
alltså att användaren lyckas göra en by-pass någonstans, men viktigt att poängtera är att det fortfarande resulterar i att önskat resultat
uppnås.

Undantag:

Med ett undantag menas att något har gått fel. Det är alltså nästa steg utöver ett alternativt händelseförlopp, men här har användaren inte
bara hamnat på en icke-tilltänkt väg genom programmet, det har dessutom gått så fel att resultatet blir felaktigt.

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

Förklara varför det är viktigt att skilja mellan dessa 3 begrepp i ett användningsfall:

i) det sk. normala händelseförloppet. (I ett användningsfall)
ii) alternativa händelseförlopp. (I ett användningsfall)
iii) undantag. (I ett användningsfall)

A

Analytikerna behöver veta när huvudprocesserna i användningsfallet kan genomföras av användarna med de funktioner som är tänkta utan
problem dvs det normala händelseförloppet.

Analytikerna behöver veta när huvudprocesserna i användningsfallet inte kan genomföras av användarna med de funktioner som är tänkta,
men ändå löser the “tasks” fast på ett annat sätt dvs det alternativa händelseförloppet.

Analytikerna behöver ta hänsyn till eventuella fel som kan uppstå för att undvika dessa i det färdiga systemet dvs undantag.

Eftersom användningsfall analyserar huvudprocesser i samband med systeminförandet är det viktigt att veta hur användarna interagerar
med systemet för att identifiera krav. Kraven som identifieras under användningsfallen analyseras av analytikerna för att redogöra för vad
användarna behöver för att göra “tasks” och transformera dessa till funktionella krav till utvecklarna, så de kan utveckla ett system som
uppfyller användarnas krav och därmed kommer uppfylla användarkraven.

17
Q

ange och förklara vilka steg tillhör denna process: Kravinsamling (eng. requirements elicitation)

A
  • Samla in krav - vilka krav finns på det nya systemet?
  • Identifiera krav - sammanställ kraven och säkerhetsställ att dessa är genomförbara och tydliga.
  • Prioritera krav - vilka krav är det viktigaste? vilka krav håller sig inom projektets ramar och motverkar scope creep?
  • Lös konflikter mellan krav - finns det något krav på systemet som inte kan genomföras på grund av ett annat krav? Kan göras med hjälp
    av kravinsamlingsanalyser i form av Use case, DFD diagram, aktivitetsdiagram
  • Speciella motstridigheter - finns det lagar som gör att krav inte kan uppfyllas?
18
Q

ange (och förklara kort) 5 tekniker som används inom kravinsamling

A

Intervjuer - analytikerna ställer frågor till människor som är berörda utav införandet av ett nytt system dvs intressenterna. Sker oftast en-mot-en, frågorna är väl igenomtänkta, det som sägs sinsemellan parterna dokumenteras, dokumentationen sammanställs och godkänns av personen i fråga som intervjuades för att säkerhetsställa att det som står är rätt och sedan används informationen som är upphämtad och
analyseras.

Observationer - analytikerna “ser på” hur tex en verksamhet fungerar, en subjektiv bedömning om personal trivs med det befintliga systemet
eller vilka frustrationer som kan uppstå med det befintliga systemet. Analytikern tar hänsyn till tex dessa frustrationer och identifierar vad
som behövs ändras i det nya systemet för att undvika att frustrationer uppstår.

Dokumentationsanalys - analytikerna analyserar det befintliga systemet (as-is-systemet) och identifierar brister och eller/bra egenskaper hos
det för att sedan ta hänsyn till dessa så det nya systemet (to-be-systemet) blir så bra anpassat som möjligt till verksamheten.

JAD sessions - Joint Application Developement - en opartisk person genomför en “workshop” med flera roller inom en verksamhet, där alla
får vara(chefer och anställda) med och ha åsikter om vad som behövs för det nya systemet. Analytikerna får därmed en helhetsbild om vad
flera i organisationen tycker, en nackdel kan vara att vissa inte vågar uttrycka fel om deras chef är där.

Enkäter - frågeformulär som skickas ut till en större grupp för att samla in vad många tycker om något. Effektivt sätt att samla in kravinfo i
en stor grupp. eftersom det finns e-enkäter som är enkla för personer i en verksamhet att besvara.

19
Q

Beskriv en organisation med utgångspunkt i Beynon-Davies model av en organisation som bestående av flera nivåer av infrastruktur. Det går bra att besvara frågan i abstrakta termer eller välja ut en specifik organisation, tex RAF.

A

Enligt Beynon-Davies består en organisation av tre “nivåer” som benämns: ICT-system, Informationssystem samt Aktivitetssystem.

För att utgå från exemplet RAF, så kan modellen beskrivas i tre olika nivåer.

ICT / IT - System:

Den lägsta nivån. Denna innefattar endast tekniken och den kommunikation som pågår internt inom den. Exempelvis radarsystem, GPS-
positioner, flygdata mm. Denna information befinner sig inom informationssystemet.

Informationssystem:

Informationssystemet täcker dels ICT/IT systemet, men även det informationsutbyte som sker mellan användare och systemet. Här
innefattas alltså markpersonalen, som gör observationer som skickas som inputs till systemet, som i sin tur skickar tillbaka outputs till
systemets användare.

Aktivitetssystem:

Aktivitetssystemet rymmer organisationen i stort. Här tillkommer alltså samtlig personal och de funktioner de utför. De behöver alltså inte
vara i direkt anslutning till varken informationssystemet eller IT-systemet, även om båda såklart påverkar deras uppgifter.
Aktivitetssystemet är beroende av information från informationssystemet för att fungera, och informationssystemet anpassas utefter
aktivitetssystemet. Exempelvis piloter, mekaniker mm. utgör centrala funktioner i organisationen utan att själva skriva in information i
systemen.

20
Q

Är informationssystem öppna eller slutna system? Motivera ditt svar med utgångspunkt i respektive definition.

A

Informationssystem är öppna system. De är öppna eftersom att de är socio-tekniska system som påverkas och formas av sin omgivning;

  • personer
  • elektronik
  • affärsmiljön
21
Q

Vad är mainframe-eran och vad kännetecknar den från ett användningsperspektiv?

A

Mainframe-eran sträckte sig från det att datorer först uppfanns, och fasades ut i och med att man uppfann integrerade kretskort. Detta
innefattar alltså både första generationens datorer som byggde på vakuumrör, andra generationen som byggde på kapacitorer, och till viss
del den tredje som byggde på de tidigare nämnda kretskorten.

Under denna era var datorer dels otympliga i storleksperspektiv, de kunde till en början ta upp ett helt rum. De var även väldigt dyra. Detta
innebar att man inte kunde allokera en dator till varje enskild person. Användare fick alltså dela på en och samma dator för att utföra
beräkningar. Till en början innebar detta att man fick göra ett punch-card och sedan fysiskt besöka datorn i turordning, senare kom man på
time-sharing som innebar att flera skärmar kunde vara anslutna till samma dator, som utförde de olika användarnas beräkningar i turordning.

22
Q

Vad är distribuerad-eran och vad kännetecknar den från ett användningsperspektiv?

A

Den distribuerade eran började pga att datorer blev mindre och förmånligare, samt att användbarheten blev bättre iom
standardiserade operativsystem och interface, bättre input/output, bättre kommunikation, osv. Den distribuerade eran börjar egentligen med
fjärde generationen av datorer som byggde på mikroprocessorer, vilket ledde till uppkomsten av minidatorer som kunde användas och
skötas av enskilda avdelningar. Den redan tidigare utvecklade client-server arkitekturen blev nu vanlig, och gjorde att en stor del av
behandlingen flyttades från centrala stordatorer till lokala datorer, dvs distribuerades. Tunga beräkningar samt omfattande datalagring förblev
centraliserade, i servermiljön, men nu kunde antalet användare ökas dramatiskt, särskilt genom utveckling av PC:n lite senare. Client-server
arkitekturen (även kallad thick clients eftersom mycket utfördes på själva minidatorn/PC:s) dominerade under 80 och 90-talet, fram till
internet-eran som började på 2000-talet.

23
Q

Redogör processen för design av användargränssnitt och beskriv de stegen som hör till processen.

A

Följande 5 steg ingår i designprocessen av användargränssnitt:

Use Scenario:

Systemanalytikern analyserar i detta steg hur användarna använder sig av och navigerar i
systemet för att kunna optimera och designa användargränssnittet på så sätt så att
användarna på snabbaste och effektivaste sätt kan utföra sina uppgifter.

Interface Structure Design:

I detta steg fastställer man hur systemets olika interface skall designas och hur de är
sammankopplade med varanra genom t.ex. menyer i systemet.

Interface Standard:

I detta steg bestämmer man standarden för hur olika delar i gränssnittet skall se ut som t.ex.
knappar, fönster, menyer mm.

Interface Design Prototype:

I detta steg gör man en prototyp av designen av de olika gränssnitten.

Interface Evaluation

I detta steg utvärderar man om gränssnittet är godtagbart eller om förändringar måste göras.

24
Q

Förklara vad menas med genomförbarhet och genomförbarhetsanalys.

A

Genomförbarhet är måttet som används för att avgöra om ett projekt är realiserbart och till nytta för organisationen.

Genomförbarhetsanalysen är metoden för att mäta genomförbarhet

25
Q

En genomförbarhetsanalys täcker bl.a. följande aspekter:

  • ekonomisk genomförbarhet
  • teknisk genomförbarhet
  • operationell genomförbarhet
  • tidsmässig genomförbarhet
  • etisk genomförbarhet.

Förklara i detalj vad som ingår i dessa aspekter.

A

Ekonomisk genomförbarhet:
När det gäller ekonomisk genomförbarhet undersöker man om byggandet av ett
informationssystem är ekonomiskt genomförbart. Man sammanställer projektets totala
kostnader och systemets löpande underhållskostnader för att se om vinsten av systemet
kommer att överstiga detta.
För att räkna på om systemet är ekonomiskt genomförbart tar man bl.a. hjälp av följande tekniker:

  • Return On Investment (Räknar på avkastningen av investeringen i systemet. Kommer systemet att
    generera avkastning på den investering som görs?)
  • Break Even Point (Denna metod räknar ut om och i sådana fall när systemet kommer att ha betalat
    tillbaka dess kostnader, alltså när systemet börjar “gå med vinst”.)
  • Present Value (Present value räknar ut nuvärdet av en summa pengar x antal år fram i tiden med hänsyn till inflationen.)
  • Net Present Value (Net present value är differensen mellan PV för vinsterna och PV för kostnaderna)

Den ekonomiska genomförbarheten handlar ej enbart om materiell vinst så som ökad vinst i
pengar eller effektiviseringar av processer som sparar på kostnader, utan det handlar även
om immateriella vinster så som möjligheten att ge bättre kundservice, bättre arbetsmiljö för
de anställda eller liknande. Dessa immateriella vinster är mycket svårare att räkna på.

Teknisk genomförbarhet:
Svarar på frågan “Kan vi bygga systemet?”
Inom den tekniska genomförbarhetsaspekten ingår bl.a. vilken teknisk kompetens företaget
besitter. Kommer vi att kunna utveckla detta system med de resurser vi har in-house?
Det handlar även om vad för teknisk utrustning som finns inom organisationen så som
hårdvara, mjukvara, nätverk mm. och om det nya systemet kommer att kunna köras på den
utrustning som finns eller om ny utrustning måste införskaffas. Det handlar även om att
undersöka om det är tekniskt möjligt att bygga det nya systemet så att det är kompatibelt
med övriga system som redan används. Kommer de att kunna interagera med varandra?

Operationell genomförbarhet:
Svarar på frågan “Om vi bygger det, kommer det att användas?”
Operationell genomförbarhet handlar om att undersöka om det finns stöd inom
organisationen för införandet av ett nytt informationssystem. Kommer systemet att användas
om det byggs?
Man kan titta på vilken roll projektsponsorn har inom organisationen och hur stort stöd
denne har.
Man måste även titta på om stöd för informationssystemet finns hos nyckelroller inom
organisationen och hos projektets/systemets intressenter. Om det finns invändningar hos
nyckelpersoner inom organisationen eller hos intressenterna försvårar detta den operationella
genomförbarheten betydligt.

Tidsmässig genomförbarhet:
Den tidsmässiga genomförbarheten ser till om projektet är genomförbart inom de tidsramar
som skulle gälla för projektet. Hur mycket tid har organisationen tillgänglig att lägga på detta
projekt med hänsyn till övriga projekt och arbetsuppgifter som måste utföras? Finns det en
deadline då systemet behöver vara färdigt och är det då tidsmässigt genomförbart att bygga
systemet?

Etisk genomförbarhet:
Den etiska genomförbarheten undersöker om det är etiskt korrekt/genomförbart att bygga
systemet. Man måste självklart ta hänsyn till de lagar och regler som gäller med det kan
också handla om funktioner och egenskaper i systemet som är lagliga men som möjligtvis ej
skulle anses som etiskt korrekta. Det kan t.ex. handla om hur systemet lagrar och behandlar
personuppgifter och historik mm.

26
Q

Moderna (elektroniska) datorers utveckling kan indelas i ett antal generationer. Om
man bortser från 5 generationen (AI-baserade), vilka är de fyra huvudsakliga
generationerna? Vilka faktorer drev varje generation och vilka implikationer fick den?
Ge exempel.

A

Generation 1: vakumrörsdatorer (40-50-talet)
Första generella (programmerbara) elektroniska datorerna byggde på vakumrör (eller ännu
tidigare, elektromagnetiska reläer). De var stora, dyra, energikrävande, underhållstunga och
otillförlitliga, men förenklade tunga beräkningar betydligt, till exempel för befolkningsräkning
och beräkning av artilleritabeller. De hade inga operativsystem och programmering skedde i
maskinspråk, med input genom hålkort (batchprogrammering), en användare i taget. Datorer
fanns bara i stora forskningscentra, universitet eller stora datacentraler.

Generation 2: transistordatorer (50-60-talet)
Forskning kring halvledarmaterial ledde till att dyra och energikrävande vakumrör kunde
ersättas med betydligt mindre och billigare transistorer. Storleken på datorer minskade från
rumsstora till skåpstora och processeringskraften ökade betydligt. Liknande problem fanns
ännu, men var betydligt mindre. Datorer blir billigare och enskilda företag börjar skaffa dem.
Datorerna får arbetsminne och fast lagring (magnetband), samt nya input som skrivmaskiner.
Assemblerspråk börjar användas och de första gen 3 språken som Cobol och Fortran
uppfinns.

Generation 3: integrerade kretsar (60-70-talet)
Transistorer kunde miniatyriseras och packas på kretskort, vilket ytterligare minskade storleken på datorer. T.ex. Apollo Guidance Computer (AGC) var i sin helhet ungefär lika stor som en ryggsäck. De första standardiserade datorserierna uppkom och datorerna fick
operativsystem. Tangentbord och monitorer börjar användas och lagringskapaciteten ökar.
Den ökade processeringskraften börjar delas genom time-sharing och de första nätverken
byggs. Högnivåprogrammeringsspråk som Fortran, Cobol och C blir vanliga.

Generation 4: mikroprocessordatorer (70-talet till idag)
Mikroprocessorer uppfinns och tusentals integrerade kretsar packas på kort tillsammans med
I/O och minne. Intels processorserie blir standard. Utvecklingen fortsätter och först
minidatorer, sedan PC:n, blir vanliga ute på avdelningarna i företag. Client-server
arkitekturen blir standard. Grafiska användargränssnitt och sjunkande priser leder till
hemupptagning av datorer och många kända företag som Atari, Commodore, Apple, MicroSoft
och en stor mängd PC klon tillverkare uppkommer. Mikroprocessorer börjar också användas i
all elektronik, som hushållsmaskiner och idag har användningen möjliggjort bland annat
smart phones och IoT. I princip är vi nu i brytpunkten mellan generation 4 och 5.

27
Q

Definiera kort följande termer (1-2 meningar):

Aktivitetssystem (activity system)

A

Ett aktivitetssystem är den delen av ett system som (oftast) består av människor som utför
uppgifter i strävan mot ett gemensamt, organisatoriskt/affärsmässigt mål. T.ex. är det all
personal på en restaurang som lagar mat, serverar mat, plockar disk mm. med det
gemensamma målet att snabbt och med bra service servera god mat till gästerna.

28
Q

Definiera kort följande termer (1-2 meningar):

Front-end system

A

Front-end system är den delen av ett system som kan nås av en användare och interageras
med. T.ex. gränssnittet i ett kassasystem.

29
Q

Definiera kort följande termer (1-2 meningar):

Business case

A

En ekonomiskt-orienterad undersökning för att bedöma ifall ett systemutvecklingsprojekt
lönar sig att göra eller inte. Del av planeringsfasen i systemlivscykeln.

30
Q

Definiera kort följande termer (1-2 meningar):

Skräddarsydd utveckling (bespoke development)

A

Skräddarsydd utveckling är när man bygger ett system från grunden och skräddarsyr det till
en viss organisations behov och krav.

31
Q

Definiera kort följande termer (1-2 meningar):

Lineär modell för systemutveckling

A

En lineär modell för systemutveckling innebär att man går igenom faserna i SDLC sekvensiellt
och att man slutför en fas innan man går vidare till nästa. Mycket tid och dokumentation
ingår ofta i varje fas och ett exempel på en lineär modell är vattenfallsmodellen.

32
Q

Definiera kort följande termer (1-2 meningar):

Konfigurationshantering (Configuration management)

A

Konfigurationshantering innebär att man dokumenterar de ändringar och uppdateringar som
görs i systemet under dess livstid.

33
Q

Förklara systemlivscykeln (System Development Lifecycle, se figur i bilagan). Vad
aktiviteter ingår i de olika utvecklingsstegen (blå lådorna) Planering, Analys, Design, Konstruktion och Driftsättning? Egna ord räcker för att
förklara.

A

Planering: syftet är att bedöma ifall ett nytt system är värd investeringen. Inkluderar
aktiviteterna business case (en främst ekonomisk bedömning av värdet av ett system),
riskanalys (tidigare erfarenhet, omfattning, struktur, osv), genomförbarhetsanalys, samt
identifiering av intressenter. Genomförbarhetsanalysen resulterar också i kunskap gällande
ifall in-house kunnande finns i tillräcklig grad.

Analys: analys av verksamheten och systemets roll. Främsta aktiviteter är kravelicitering (ta
fram krav och behov, t.ex. genom intervjuer, enkäter, observationer, dokumentanalys, osv)
och kravspecificering (representation av eliciterade krav, t.ex. use cases,
modelleringstekniker). Det viktiga här är att fasen resulterar i en kravspecifikation.

Design: skapa en plan för utvecklingen, en systemspecification, utgående ifrån behoven.
Märk att berör både tekniska systemet och mänskliga aktivitetssystemet. Designen bör också
beakta strategiska val som paket vs. skräddarsydd utveckling. Den viktiga outputen här är
alltså en systemspecifikation utgående från kravspecifikation, vilken utgör grunden för att
konstruera systemet.

Konstruktion: Utvecklingen av systemet, dvs programmering, testning (t.ex. enhets-,
integrations-, system- och acceptanstestning) dokumentering, men också förändringsledning
(mänskliga aktivitetssystemet). Boken talar om implementering som då innefattar både
konstruktion och driftsättning, vilket är helt ok svar också.

Driftsättning: driftsättningen kan göras på olika sätt, t.ex. direkt (nya systemet driftsätts med
en gång), parallellt (nya och gamla systemen används parallellt under en överperiod) eller
enligt hybridmodell (phased). Här använde en del av er lite olika termer för
driftsättningsmetoderna (säkert från andra boken), men det är också helt ok. Också skolning
av personal (aktitivetetsystemet) ingår!

34
Q

Knuth definiera en algoritm med:

  • ändlighet
  • bestämdhet
  • indata
  • utdata

Beskriv dessa krav kortfattat.

A

Ändlighet:
Algoritmen måste kunna garanteras bli färdig efter ett ändligt antal steg (oavsett indata).
Den tekniska termen är terminera

Bestämdhet:
Varje steg i algoritmen måste vara entydigt och precist definierat

Indata:
Indatan är den data/information som algoritmen skall hantera och göra något av.

Utdata:
Utdatan är den data/information som algoritmen producerar.