Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO

Liknende presentasjoner


Presentasjon om: "FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO"— Utskrift av presentasjonen:

1 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
FINF Forelesning Systemutvikling II – metoder & teknikker Temaer: Utvikling av IS – Rammeverk og tilnærmingsmåter Overblikk over Avison og Fitzgerald Metoder og teknikker Litt om analysemetoder og teknikker Prototyping, litt UML,.. Litteratur Avison & Fitzgerald, Information Systems, Kap. 4-16 Boehm: A Spiral Model of Software Development and Enhancement, Blomberg, J. et al: Ethnographic Field Methods and Their Relations to design. FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

2 Avison & Fitzgerald, IS development Et kort leseveiledning
Kap. 1-3 : Forstå IS, omgivelser og kontekst Introduksjon og kritikk av Livsyklusmodellen Kap. 4-9 Temaer i IS utvikling Organisatoriske temaer Modellering Prosess-, data, og objekt-modellering Programvareutvikling – Konstruksjon, evolusjonær utvikling , prototyping vev-utvikling.. Menneskeperspektiver Brukere og brukerdeltaking, kunnskapsforvaltning mm Ekstern utvikling: kjøp av standardpakker, utskilling, mm FINF H -04, Arild Jansen. AFIN/UiO

3 Kap 10-18 Teknikker og verktøy
’Holistiske’ analyseteknikker Rike bilder, ’rot-definisjoner .begrepsmodeller,.. Data (modellerings)teknikker (ER,ORM...) Prosess (modellering) teknikker: Dataflyt,.beslutningstabeller, strukturerte språk Objekt-orienterte modellering /teknikker OOA&D, UML & use cases Organisatoriske og menneske teknikker Kritisk suksess-faktorer , risiko-analyse,..SWOT, Verktøy Web-verktøy, Database MS, Prosjektstyringsverktøy Integrerte pakker, f eks. Oracle MS, Designer 2000 FINF H -04, Arild Jansen. AFIN/UiO

4 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Utviklingsmodeller Representerer ulike tilnærminger til systemutvikling Gjenspeiler også evolusjon av programvareutvikling Hovedklasser av utviklingsmodeller er: Kod og fiks Stegvise utviklingsmodeller Fossefall/vannfallsmodellen (“waterfall”) Evolusjonære Transformasjonsmodeller Spiralmodeller FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

5 Fossefalls’modellen’ er utilstrekkelig (men fortsatt like aktuell !)
Problemet er ikke veldefinert (upresist) Ønsker og behov er uklare/ikke konsistente Rammer og begrensninger er ikke klarlagt Verden er i forandring Brukernes ønsker endrer seg Omgivelsene endrer seg Tekniske forhold endrer seg Alternative modeller er nødvendig Evolusjonær systemutvikling Eksperimentell systemutvikling Ekstrem programmering FINF H -04, Arild Jansen. AFIN/UiO

6 Utviklingsmodeller (forts.)
Evolusjonsmodeller: løsningen blir gradvis utviklet basert på erfaring Iterativ systemutvikling: utvikling der omfanget gradvis økes og fasene gjentas Prototyping: en prototyp utvikles som til slutt blir systemet Transformasjonsmodeller: antar at høy nivås spesifikasjoner kan automatisk bli transformert til spesifikasjoner på lavere nivå (fra formelle spesifikasjoner til programvare) FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

7 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Spiralmodellen Et forsøk på å kombinere evolusjonær tankegang med de positive sider av konstruksjonstenkning Fokus på risiko og reduksjon av risiko Utvikling oppdelt i et sett av sykler (i spiralen) Målsetning (hva skal oppnås f.eks. funksjonalitet, ytelse, etc.) Alternative måter å realisere løsning for dette (utvikle, kjøpe, etc.) Identifisere begrensningene (kostnad, grensesnitt, etc.) FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

8 Spiralmodellen- skjematisk skisse
Fastlegge mål og rammer Vurdere alternativer, risikovurderinger Risikoanalyser Analyse Prototyping Krav utforming Vurdering Planlegge neste fase Utvikle neste produkt FINF H -04, Arild Jansen. AFIN/UiO

9 Metodologier og rammeverk (kap. 19-25)
Hva er en metodologi En samling av prosedyrer, metoder, teknikker og dokumentasjonsstøtte som skal bistå systemutviklere i å planlegge, gjennomføre , kontrollere og evaluere arbeidet .... Den vil omfatte faser og retningslinjer for valg av teknikker og verktøy .. Prosess-orienterte (Strukturert analyse (SA) , eks. JSP) Blandete metoder (eks SSADM, både SA og datamodellering) Objekt-orienterte metodologier Mathiassen OOA&D, RUP: Use cases &UML ,... Rapid development metodologier : RAD, XP,.Web –dev. Menneske og organisasjonsorienterte metologier Sosio-teknikk tilnærming/Ethics , Soft System methodlogy,... FINF H -04, Arild Jansen. AFIN/UiO

10 Systemutviklingsmetoder og teknikker (Utviklingsmetodikker)
Hva er en SU-metodikk Aktivitetsliste Aktivitetsrekkefølge Spesifikasjon av hva som skal leveres Programmoduler, Forslag til milepæler Anbefalte teknikker Sjekklister Rutiner for kvalitetssikring Verktøystøtte FINF H -04, Arild Jansen. AFIN/UiO

11 Noen ulike utviklingsmetodologier
Riccardi: Structured approach to DB design Analyse&kravspek. -> Konseptuelt design ->logisk design ->Fysisk design SASD (Structurert analyse og design) Analyse& kravspek-> design -> Realisering RUP & UML Use Cases & risk analysis -> O-analyse –> Arktek. design … OOA&D (Mathiassen et al) Problemanalyse& applik. Analyse-> Arkitektonisk design .. …… FINF H -04, Arild Jansen. AFIN/UiO

12 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Prototyping Noen sentrale spørsmål Hva er prototyping? Hvorfor bruker vi prototyping? Når bruker vi prototyping? Hvilke perspektiver/tilnærminger , metoder og teknikker kan omfatte prototyping? FINF H -04, Arild Jansen. AFIN/UiO

13 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Hva er prototyping Prototyping er en systematisk teknikk for å ’oversette’ og prøve ut nye ideer og begreper i praksis A) Ekte (proper) prototyp : bruk og kast, f eks. skal framvise bestemte sider ved brukergrensesnitt eller funksjonelle egenskaper B) Smørebrett (Arbeidsbenk, verktøy) Prøve ut tekniske spørsmål i utviklingsarbeidet C) Pilot system : En tidlig versjon som kan bli brukt i anvendelsesområdet som en del av det framtidige system FINF H -04, Arild Jansen. AFIN/UiO

14 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Hvorfor prototyping For brukerne Brukerne kan prøve ut ’operative’ versjoner tidlig i prosessen Gir god basis forlæring Grunnlag for å planlegge/gjennomføre organisatoriske endringer For systemutviklere Relevante problemer kan avklares gjennom eksperimentering Prototyper representerer en felles basis for kommunikasjon mellom systemutviklere og brukere Utprøving av alternative tekniske løsninger FINF H -04, Arild Jansen. AFIN/UiO

15 Prototyping som tilnærmingsmåte i SU-arbeidet
Representerer et evolusjonært syn på SU-prosessen Kan lage tidlig ’virkende’ versjoner tidlig i prosessen Gjør det mulig å drive programutvikling basert på eksperimentering og erfaring NB: Må skille mellom prototyping som teknikk og som metode i evolusjonær SU. FINF H -04, Arild Jansen. AFIN/UiO

16 Ulike mål ved prototyping
Utforskende (eksplorerende) prototyping: avklare uklarheter i problemområdet (ekte prototyper) Eksperimenterende prototyping : teste ut ulike aspekter ved teknisk løsning ( breadboard) Evolusjonær prototyping : Inngår i en skrittvis SU-prosess (pilot systemer ) Mens de 2 første målene utgjør prototyping en teknikk for å avklare, framskaffe informasjon osv, så innebærer det siste målet prototyping som metode FINF H -04, Arild Jansen. AFIN/UiO

17 Forhold mellom prototyp og det ferdige system
To alternativer 1. Prototypen er en del av spesifikasjonen av det ferdige system (ekte prototype eller breadboard) for eks. å vise funksjonalitet eller brykergrensesnitt 2. Prototyper blir gradvis utviklet ogforbedret til å produsere demn framtidige systemløsningen FINF H -04, Arild Jansen. AFIN/UiO

18 Prototyping er ingen enkel løsning på vanskelige problemer
Viktig å avklare mål og strategier Prototyping må planlegges Det tar (lenger) tid, både for utviklere og brukerorganisasjon Det stiller krav til brukerne (ansvarliggjøring ) Dere sa at det var dette dere ville ha Viktig å dokumenterer hva som blir besluttet Brukeren (etter 4. prototyp) : Nei, det er ikke slik jeg vil ha det Utvikler: det var dette du sa du ville ha på siste møte FINF H -04, Arild Jansen. AFIN/UiO

19 Prioriteringer og valg av tilnærmingsmåte
FINF H -04, Arild Jansen. AFIN/UiO

20 Sammenheng kontraktstype og utviklingsstrategi
FINF H -04, Arild Jansen. AFIN/UiO

21 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Analysemetoder Metoder og teknikker for å få innsikt i problemet og anvendelsesområder. Skal bidra til å utarbeide en kravspesifikasjon (men ikke bare det Formaliserte og mindre formaliserte metoder Spørreskjemaer, kartleggings- og analysemetoder, Analyse av skriftlige materiale Strukturerte og mindre strukturerte intervjuer Observasjoner , Etnografiske metoder Scenarier Bruksmønstre – (use cases ) FINF H -04, Arild Jansen. AFIN/UiO

22 Modeller og virkeligheten
. (Edb)-system Bruker Modell av virkeligheten Virkeligheten Problemområdet: Formål/oppgave: Eks - Informasjonsformidling, beslutningsstøtte, støtte for samhandling,.. Anvendelsesområdet: Del av brukerorganisasjonen Eks: Saksbehandlere eller borgerne FINF H -04, Arild Jansen. AFIN/UiO

23 Analyse av problemområdet
Kartlegging og studier av skriftlige kilder Intervjuer og kartleggingsarbeid ved behov Formelle teknikker for analyse av problem/oppgavebeskrivelser, f eks. rettsregler Andre spesifikasjonsteknikker Prototyping FINF H -04, Arild Jansen. AFIN/UiO

24 Analysefasen – alternative metoder og teknikker
Rike bilder – basert på ulike metoder: besøkobservasjon, intervjuer, dokumentstudier,.. Use-cases Scenarier Ulike former for prototyping Etnografiske metoder ..... FINF H -04, Arild Jansen. AFIN/UiO

25 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Eksempel på rikt bilde FINF H -04, Arild Jansen. AFIN/UiO

26 UML - The Unified Modelling “Language”
UML er en standardisert grafisk notasjon for å støtte OO analyse og utforming grafiske symboler og enkel gramatikk (regler for bruk) Uavhengig av programmeringsspråk og utvikl. Metoder Adminstrert av OMG (obj. Man. Group) Aktører: Rumbaugh, Booch, Jacobson, Cod &Yourdan,... Bygger på grunnideene i SIMULA (Dahl&Nygård ) Tilsammen 12 ulike diagrammer FINF H -04, Arild Jansen. AFIN/UiO

27 De 8 mest vanlige UML-diagrammene
Classe/objekt diagram Komponent diagram (utplasserings) Deployment diagram Bruks mønster diagram Sekvens-diagram Aktivitetsdiagram Samarbeidsdiagram Tilstandsdiagram FINF H -04, Arild Jansen. AFIN/UiO

28 Bruksmønstre – (use cases)
Brukes til å bestemme funksjonalitet og spesielt hvordan aktører samhandler med ”systemet ” Aktør : Bruker eller andre systemer Bruksmønstre modellerer aktiviteter i anvedelsesområdet Det beskriver en avgrenset bruk av (en del av) det framtidige system. Bruksmønstre tillater oss å lage mange ulike scenarier for framtidig bruk FINF H -04, Arild Jansen. AFIN/UiO

29 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Use Cases System Use Case 1 Use Case 2 Actor Use Case 3 FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

30 Sammenheng UML-diagranner og bruksområde
Sammenheng UML-diagranner og bruksområde Use- Case view Logi- cal view Compo- nent view Concur- rency view Deploy- ment view Use-Case diagram Class/object diagram Sequence diagram Collaboration diagram State diagram Activity diagram Component diagram Deployment diagram FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

31 Hva er bra med bruksmønstre – og mindre bra
Beskriver forventet funksjonalitet av det framtidige system på et passende detaljerings-nivå og på en forståelig Godt egnet for å utarbeide kravspesifikasjoner Lett å forstå av brukerne Utmerket grunnlag for testing og validering Men bruksmønstre kan ’låse’ grensesnitt mellom system og omgivelsene Stimulerer kanskje ikke til å nye arbiedsformer ? FINF H -04, Arild Jansen. AFIN/UiO FINF H Arild Jansen AFIN

32 FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO
Etnografiske metoder Etnografi : systematiske studier av andre kulturer ( i deres egne omgivelser) Etnografisk metode i SU-arbeidet : Skal gi best mulig forståelse av arbeidsaktiviteter. Metode: Observasjon, uformelle intervjuer, deltakelse, videobruk etc. Fokus: Studere arbeidstaker på egne premisser (over tid) Vekt på naturlige aktiviteter som inngår i helheten Forskjeller mellom idealer og reell adferd Formelle aspekter Oppfatninger og holdninger av arbeidet Det faktiske arbeidet FINF H -04, Arild Jansen. AFIN/UiO

33 Problemer ved etnografiske og andre kartleggingsmetoder
Drukner vi i data om dages situasjon Er det problemområdet eller anvendelsesområdet (brukerorganisasjonen) vi beskriver Når og hvordan skal vi trekke grenser mellom (data)systemet og omgivelsene Eks: Vi skal lage et nettsted for en kommune. Hva slags metoder tro dere er fruktbare ? FINF H -04, Arild Jansen. AFIN/UiO

34 Konsekvenser av systemtenkningen i systemutviklingsarbeidet
Vi må fastlegge systemets mål og rammer Dette kan innebære konfliktfyllte prioriteringer:, eks: Effektivitet <-> sikkerhet <->funksjonalitet <-> brukervennlighet <->fleksibilitet. Vi må finne en hensiktsmessig avgrensning av systemet Slike grenser kan (må) endre seg over tid Vi må klarlegge hvilke deler av omverdenen som er særlig relevant for systemet i bruk Organisasjonsmessige forhold, hos/ved ’kundene’ , i samfunnet ellers FINF H -04, Arild Jansen. AFIN/UiO

35 IS-strategier Kort oppsummering
Behov for ulike tilnærmingsmåter Software engineering (SE) og Ssoio-teknisk (SO) er komplementære og ikke alterntiver Utviklingsmetodikker (rammeverk for SU-arbeidet) Veileder i SU-arbeidet : angir faser og arbeidsformer mm Viktig for kommunikasjon og organisering av prosjektet Må brukes med fornuft, tilpasses avhengig av problemtype, betingelser, kompetanse, kultur osv FINF H -04, Arild Jansen. AFIN/UiO


Laste ned ppt "FINF4001 H -04, 2.9 Arild Jansen. AFIN/UiO"

Liknende presentasjoner


Annonser fra Google