viktige begreper Flashcards
Validering
Har vi spesifisert det riktige systemet, dvs. er det dette kunden ønsker eller trenger?
Verifisering
Er systemet riktig, dvs. har vi minimert antall feil?
Smidig utvikling
Reduserer risiko at man leverer og evaluerer (validerer og verifiserer) delsystemer fortløpende. Tett kundekontakt.
Unified Modelling Language (UML)
use case, sekvensdiagram, klassediagram, aktivitetsdiagram og tilstandsdiagram.
Prosessmodell
En abstrakt representasjon av en prosess. Modellen beskriver en prosess slik noen mener den burde være. Men den faktiske systemutviklingsprosessen kan ha noen avik fra denne prosessmodellen, men burde følge den sånn cirka.
Eksempler på prosessmodeller kan være fossefall, spiral, RUP, Scrum.
Systemutviklingsprosess
Det er de aktivitetene som utføres i et utviklingsprosjekt.
Inkrementell utvikling
Bonus: nevn fordeler og ulemper
Utviklingen foregår gradvis gjennom ulike aktiviteter som man veksler mellom. Kan være plandrevet eller smidig. Så prosjektet planlegges litt etter litt og dermed er det lettere å endre prosessen for å tilpasse seg til endrede krav fra kunden.
Fordeler:
- kostnadene ved endrede brukerkrav reduseres sammenlignet med tunge-prosesser som fossefallmodellen siden delene som må endres er mindre.
- Enklere å få tilbakemelding fra kunden på de bitene som har blitt utviklet.
- Lettere å se hvor mye som er utviklet så langt.
- Lavere risiko for total prosjektfiasko
Utfordringer:
- Store prosjekter krever en godt og stabil arkitektur som man må forholde seg til, arkitekturen kan ikke utvikles i deler.
- Strukturen til systemet har en tendens til å bli verre etter hvert som flere deler legges til.
- Vanskeligere å foreta endringer senere i prosjektet uten å bruke ressurser på re-faktorisering av prosjektet. (re-strukturering).
Aktivitetsdiagrammer
Viser forretningsprosesser og arbeidsprosesser.
Use case diagrammer
viser systemets funksjonalitet og samspillet mellom systemet og omgivelsene (brukere, andre systemer, komponenter). Identifisering av brukere -> aktører.
- En aktør representerer en rolle som et menneske eller et annet system når det kommuniserer med DETTE systemet.
- En aktør kommuniserer med systemet via ett eller flere use case.
Sekvensdiagrammer
Viser samspill mellom system og omgivelser og mellom de forskjellige delene av systemet (mer detaljert enn use case digrammene).
Modell for interaksjon mellom objektene i et system, for et gitt bruksmønster (use case).
viser:
- Hvilken interaksjon som foregår og når
- Informasjon som sendes mellom objektene
- Interaksjon mellom bruker og system
Nyttig for å:
- få en oversikt over klasser / objekter som er nødvendige for å gjennomføre et bruksmønster.
- implementere systemet, kan generere kode automatisk fra et sekvensdiagram.
- Viser hvordan de ulike objektene kommuniserer. Oversikt over data som sendes mellom objekter.
Klassediagrammer
viser objektklassene i systemet og assosiasjonene mellom disse klassene.
En klasse kan bli sett på som en generell definisjon av objekter som er instanser av klassen.
En assosiasjon mellom to klasser angir at det er en forbindelse mellom disse klassene.
Ved utvikling av modeller i den tidlige fasen av systemutviklingsprosessen, vil objekter som regel representere noe i den virkelige verden, som en pasient, en doktor, en bil eller en bankkonto.
eksempel: class Bank: I en bank skal vi kunne legge inn en ny kunde, fjerne en kunde, sette inn penger på en kundes konto og finne forvaltningskapitalen til bankene. (summen av alle beløpene på alle kontoene).
class Konto: attributter og metoder som man burde kunne gjøre når man har en konto.
Tilstandsdiagrammer
Viser hvordan systemet reagerer på interne og eksterne hendelser.
Primære og sekundære aktører
Primære aktører har egne mål, dvs. De initierer use case som oppfyller deres mål.
Sekundære aktører har ikke egne mål, men de nødvendige for å realisere målene til de primære aktørene.
Use case
Et use case beskriver hvordan systemet oppnår et mål av verdi for en aktør. Skal beskrive en komplett funksjonell enhet.
eksempler:
Krav - Systemet skal på oppfordring vise informasjon om alle tilgjengelige låneprogrammer.
Use case - Be om informasjon om låneprogram.
Krav - Søkeren skal til enhver tid kunne se status for lånesøknaden.
Use case - Se status
Krav - Låneavtaler skal kunne opprettes og sendes til kunden.
Use case - Lag låneavtale.
Krav - Nye lån skal registreres i bankens system for kontooversikter.
Use case - registrer nytt lån.
Interessant
Samlebetegnelse for alle personer, grupper eller organer som påvirkes av eller påvirker systemets utvikling / bruk. Kan være en kunde, leverandør, brukere.
Domenemodell
UML-klassediagrammer uten metoder. Hensikten er å forstå OBJEKTENE og få en god oversikt over systemet. For å kartlegge hvilke objekter man bør ta hensyn til.