DRI2001 h04 - Forelesning Systemutvikling og nettsteder

Like dokumenter
DRI 2001 Systemutviklingsarbeidet og nettsteder Forelesning

DRI2001 forelesning

DRI 2001 Systemutviklingsarbeidet et overblikk Forelesning

DRI 2001 Systemutviklingsarbeidet et overblikk Forelesning

DRI2001 Offentlige nettsteder. Litt om systemutvikling Torsdag 24 aug Arild Jansen, AFIN, UiO

eforvaltning visjoner og realiteter Forelesning , Arild Jansen, AFIN

GJENNOMGANG UKESOPPGAVER 7 REPETISJON

Hensikten med denne delen av kurset. Objektets egenskaper. Objektorientering hva er det? Best practises ved programvareutvikling. Kravspesifikasjonen

PROSJEKTPLAN FOR INF [4 3]120-PROSJEKT: PROJECT HOSPITAL 2004

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Distributed object architecture

Læreplan i informasjonsteknologi - programfag i studiespesialiserende utdanningsprogram

Oppsummering. Thomas Lohne Aanes Thomas Amble

Model Driven Architecture (MDA) Interpretasjon og kritikk

Bakgrunn. Kurset krever ingen spesielle forkunnskaper om modellering.

FINF aug Arild Jansen 1. Temaer: FINF4001 Høst Repetisjon om informasjonssystemer (IS) Litteratur

Innhold. Innledning Del 1 En vei mot målet

Design, bruk, interaksjon

Kvalitetskrav til løsninger

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR

Universitetet i Oslo Enhet for lederstøtte

t Institutt for informatikk Erik Arisholm 13. mai 2009 INF1050-oppsummering-1

1. Leksjon 01: Introduksjon til faget Prosjektrettet systemarbeid

Forelesning Systemutvikling: Rammeverk- strategier metoder og teknikker

Innholdsfortegnelse: Resymé: Denne leksjon gir en kort og enkelt oversikt over hvilke oppgaver som skal utføres i design- og programmeringsfasen.

Utvikling fra skallet og inn

Prototyping. Plenumstime Uke 6. Med Maria og Helle

UKE 11 UML modellering og use case. Gruppetime INF1055

FINF H september Arild Jansen, AFIN Systemutvikling med usikre og uforutsigbare rammer FINF

Brukersentert design Kapittel 3 i Shneiderman

inf 1510: å lage skisser og prototyper

UML-Unified Modeling Language

Brukergrensesnittdesign

Systemutvikling II Rammeverk- strategier metoder og teknikker

Temaer: FINF aug Arild Jansen 1. FINF4001 Høst Repetisjon om informasjonssystemer (IS) Litteratur

INF1050 Systemutvikling

CORBA Component Model (CCM)

Kravspesifiseringsprosessen

Regjeringens IKT-politikk

Modellering av brukstilfeller og forretningsprosesser. Kurs i standarder, Oslo, 12. juni 2018

Kravspesifikasjon. Dagens forelesning. Mal for kravspesifikasjon. Hvordan finne fram til kravene? Kravspesifikasjon og objektorientert analyse

AlgDat 12. Forelesning 2. Gunnar Misund

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering

Web fundamentals. Web design. Frontend vs. Backend Webdesign 17. januar Monica Strand

Eksamen i fag SIF8018 Systemutvikling. Fredag 25. mai 2001 kl

Informasjonsorganisering. Information Architecture Peter Morville & Jorge Arango Kapittel 4, 5 & 6

Systemutvikling med usikre og uforutsigbare rammer

1. SQL server. Beskrivelse og forberedelse til installasjon

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel

AlgDat 10. Forelesning 2. Gunnar Misund

Prosjektoppgave våren 2007

GJENNOMGANG UKESOPPGAVER 4 USE CASE MODELLERING HELGA NYRUD & KRISTIN BRÆNDEN

Kapittel 7 & 8. Kravspesifikasjoner & Data design. Thomas Tjøstheim og Thomas Edvinsen. 20 September Kapittel 7 & 8 p.1/20

UNIVERSITETET I OSLO

Læringsmål og pensum. Utvikling av informasjonssystemer. Oversikt. Systemutvikling Systemutvikling i seks faser Femstegs prosedyre for programmering

Neste generasjon FASIT Målsetting og status FASIT-dagene 2016 Gardermoen,

Systemutvikling og prosjektveiviseren Arild Jansen, FINF

I dag UML. Domenemodell visualisering av konsepter. Eksempel. Hvordan finne domeneklasser?

Tom Røise 2/28/2007. IMT2243 : Systemutvikling 1. Forelesning IMT mars Tema : Litteratur : Strukturert analyse. Strukturert analyse

Oblig 2, SLI250 Et kortfattet analyse og designdokument for skifteregister på nett

ARK 2014 Arkitekturfaget - observasjon fra en tjenesteleverandør

Hvordan kan en gjenbrukbar NOARK kjerne bidra til samhandling mellom forvaltningsnivåene?

Fra krav til modellering av objekter

GJENNOMGANG UKESOPPGAVER 9 TESTING

OptimalJ-kurs UIO Oppsummering av kurset. De ulike modellene egenskaper og formål

Samdok samla samfunnsdokumentasjon

UML 1. Use case drevet analyse og design Kirsten Ribu

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk

UNIVERSITETET I OSLO

SolidPlant er perfekt for deg som jobber med design av rørsystemer og anlegg, og er kjent med SolidWorks.

Grunnleggende om Evaluering av It-systemer

Team2 Requirements & Design Document Værsystem

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

OWGS (Obstacle Warning GPS System)

«Den digital byggeplass» modellbasert prosjektering, produksjon og drift. BIM & merkede komponenter i FDVU DEMO

DRI 3001 Våren forelesning Arild Jansen AFIN

UML-Unified Modeling Language. Prosess-oversikt. Use case realisering

1. Forelesning : Introduksjon Arild Jansen, AFIN

Kravspesifikasjon. Kravspesifikasjon. Mal for kravspesifikasjon. Hvordan finne fram til kravene? Hva skal systemet gjøre? Hvem og hva påvirker krav?

Web Service Registry

Eksamen INF

KURS: NBEF FDVU-verktøy, as built dokumentasjon og BIM Trondheim 19-20/5-2011

KRAVSPESIFIKASJON. Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni.

INF1050 Systemutvikling

Informatiske metoder Masterskolen Arild Jansen, AFIN

Obligatorisk oppgave INF3221/4221

Kravspesifikasjon. Erik Arisholm. Simula Research Laboratory. Institutt for Informatikk. INF1050-krav-1

Transkript:

Systemutvikling utvikling av offentlig nettsteder DRI2001 forelesning 20.10 Litt om eksperimentell systemutvikling og prototyping Systemutviklingsprosessene og utvikling av [offentlige] nettsteder Fasene i SU-arbeidet for ulike typer nettsteder SU-prosessen for de ulike komponenter Litt om metoder og teknikker, spesielt UML Oppsummering Pensum: Holmane, kap. 2-4 Om W3C og XML: http://www.w3.org, http://xml.coverpages.org/govml.html Kvalitetskriterier: http://www.kvalitetpaanett.net/omkvalitet.htm Støttelitteratur - G. Skagestein : Systemutvikling (pensum INF1050) - Avison & Fitzgerald: Information System Development 1 Fossefallsmetoden med laksetrapper Problembeskrivelse Systemanalyse Kravspesifikasjon Systemutforming (design) Logisk modell Realisering (f eks. programmering) Ferdig system Implementasjon Bruk, Drift & vedlikehold Tid 2 Eksperimentell systemutvikling Problembeskrivelse 1. Kravspek. 1. Logisk modell Test av 1. System versjon 1. Prototype 2. Kravspek. 2. Logisk modell 2. System 2. Prototype versjon i bruk Tid + kostnader 3 1

Hva er prototyping Prototyping er en systematisk teknikk for å oversette og prøve ut nye ideer og begreper i praksis Ekte prototyp : bruk og kast, f eks. skal framvise bestemte sider ved brukergrensesnitt eller funksjonelle egenskaper Brukes mye i utforming av vev-brukergrensesnitt, men også generelt i dialog med utvalgte brukere. Prototypen blir ikke satt i drift Pilot system : En tidlig versjon som kan bli brukt i anvendelsesområdet som en del av det framtidige system Brukes f eks. ved utprøving av ny layout eller ny funksjonalitet mot alle brukerne. Pilotsystemet settes i drift. 4 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 5 Forhold mellom prototyp og det ferdige system To alternativer 1. Prototypen er en del av spesifikasjonen av det ferdige system (ekte prototyp) For eks. å vise funksjonalitet eller brukergrensesnitt 2. Prototyper blir gradvis utviklet og forbedret til å produsere den framtidige systemløsningen Pilotversjonen er 1. versjon av ferdig system 6 2

Den såkalte tjenestetrappa Fullført el. saksbehandling Brukarorientering Vertikal integrasjon IV Enkel interaktivitet III "Brosjyre på nett" II I Kompleksitet/Gevinstpotensiale Trinn 1: Vevteneste som inneheld generell informasjon om etaten og tenestene "Brosjyre på nett" Trinn 2: Teneste med tilrettelagt informasjon og enkle, interaktive funksjonar "Enkel interaktivitet" Trinn 3: Vevteneste som tilbyr brukaren å leggja inn og henta informasjon tilrettelagt ut frå personlege kriterium. Tenesta er knytt til interne fagsystem Trinn 4: "Elektronisk forvaltning" Vevteneste og nettverksfunksjonar for samarbeid med andre myndigheiter og andre institusjonar i samfunnet. "Vertikal integrasjon" "Horisontal integrasjon" 7 Fasene i SU-arbeidet for ulike nettsteder Trinn 1 : Brosjyre på nett Forprosjektet Klarlegget mål og omfang: relativt få aktører Analysefasen Avklare hvilke brukere skal nettstedet rette seg mot: informasjonsbehov og krav til layout, struktur mm. Enkel kravspesifikasjon Logisk utforming (design) og realisering Utforme layout og informasjonsarkitektur, prototyping ofte med redigeringsverktøy som Hot Metall, Dreamweaver. Involvere typiske brukere til å vurdere layout mm. Enkle PhP-skript Implementering Legge ut de aktuelle data, oppdatere alle linker og etablere nødvendige koblinger til andre systemer,.. Drift og vedlikehold Stort sett innholdsvedlikehold, inkludert lenker mm Systemutviklingsprosessen ofte lite formalisert, ad-hoc metoder.. 8 Fasene i SU-arbeidet for ulike nettsteder Trinn 2: enkle interaktive tjenester Forprosjektet Klarlegget mål og omfang: noen flere aktører. Støtte i ledelsen Analysefasen Som for trinn 1 + å avklare hvilken funksjonalitet nettstedet skal ha. Nødvendig med mer omfattende kravspesifikasjon Logisk utforming (design) og realisering Som for trinn 1, men mer krevende prototyping. Involvere flere brukere til å vurdere funksjonalitet. Nødvendig med Skript programmering, inkludert kobling mot applikasjoner (f eks. databaser) Implementering Som trinn 1 + implementere koblinger til andre systemer, Drift og vedlikehold Fortsatt stort sett innholdsvedlikehold, inkludert lenker mm Systemutviklingsprosessen ofte lite formalisert, ad-hoc metoder 9 3

... DRI 2001 Forelesning 20.10.2004 Systemutviklingprosessen og nettsteder Trinn 3.4: Vertikal (og horisontal) integrasjon Forprosjektet Klarlegget mål, omfang og ressurser. Involvere ledelsen tungt Analysefasen Som for trinn 2 + å avklare grad av formalisering og integrasjon. Nødvendig med grundig, fullstendig kravspesifikasjon. Nødvendig å klarlegge nødvendige endringsbehov i organisasjonen Logisk utforming (design) Betydelige mer krevende enn trinn 2. Lage fullstendig informasjonsmodell samt formalisere nødvendig rettsregler mm Involvere ulike brukere. Denne fasen inkluderer også å beskrive nye ansvarsforhold og oppgaver for de ansatte 10 Fasene i SU-arbeidet for ulike nettsteder Trinn 3-4: Vertikal integrasjon (forts.) Realisering Nødvendig med betydelig programmering, inkludert kobling mot aktuelle fagsystemer, både databaser og f eks. saksbehandlersystemer. Starte omorganisering av organisasjonen, opplæring osv Implementering Trinn 2 + implementere alle programmer. Omfattende prosess. Gjennomføre alle organisatorisk endringer Drift og vedlikehold Krevende vedlikehold, både programmer og data innholdsvedlikehold, inkludert lenker mm Systemutviklingsprosessen må formaliseres, ofte mange delprosjekter. Gjerne kombinasjon av fosefallsmetoder og eksperimentell SU 11 Nettsteder er komplekse byggverk. Brukergrensesnitt Design / Arkitektur / funksjonalitet Informasjonsressurser Applikasjonsprogrammer.............., Teknisk infrastruktur.............. Organisatorisk Infrastruktur:.Bak-kontor (2. linje).. 12 4

SU-prosessen for de ulike komponenter Trinn 1: Brosjyre på nett ingen interaktivitet Brukergrensesnitt Grafisk layout ved redigeringsverktøy, enkel PHP etc., Bruk av eksperimentell prototyping: prøver ut og forkaster utkast Arkitektur: Ofte enkel, men kan være mange nivåer Funksjonalitet : Lite/intet Applikasjon: Lite/intet, Informasjonsressurser: De dokumenter (filer) som ligger på vev-tjeneren Teknisk infrastruktur : Moderate krav: primært vev-tjener ++ Organisatorisk infrastruktur : Vev-ansvarlige + personer som sørger for å ajourholde informasjonsressursene og Eks: http://www.afin.uio.no/, 13 SU-prosessen for de ulike komponenter Trinn 2:Tjenester med enkel interaktivitet Brukergrensesnitt Grafisk layout : Omtrent som for trinn 1 Arkitektur: Omtrent som trinn 1 Funksjonalitet : Håndtere enkle skjemaer, funksjoner Applikasjon: Begrenset, til noe interaksjon mot andre systemer Informasjonsressurser: Som under trinn 1, men også kobling mot andre databaser mm Teknisk infrastruktur : Det stiller noen flere krav, blant annet sikkerhet mot andre systemer Organisatorisk infrastruktur : Som trinn 1, i tillegg oppfølging av interaktive tjenester Eks: http://www.enebakk.kommune.no/ 14 SU-prosessen.. Trinn 3: Vertikal integrasjon Brukergrensesnitt Grafisk layout : Grensesnittet mer mangfoldig, skreddersys ulike tjenestetyper, Arkitektur: Mer mangfoldig krever langt mer omtanke Funksjonalitet : Skreddersys mot ulike tjenester Applikasjon: Avanserte, koblinger mot ulike fagsystemer etc. Informasjonsressurser: Mangfoldig, ofte mange informasjonskilder Teknisk infrastruktur : Det stiller langt flere krav, viktig med god sikkerhet mot andre systemer Organisatorisk infrastruktur : Stiller store krav til organisatorisk infrastruktur, spesielt de som er ansvarlige for fagsystemene som tilbyr vertikal integrasjon Eks: studentveven : http://www.uio.no/ 15 5

SU-prosessen Trinn 4: Horisontal Integrasjon Brukergrensesnitt Grafisk layout : Som trinn 3, kanskje enda mer mangfoldig Arkitektur: Enda mer kompleks enn trinn 3, skal tilpasses mange Funksjonalitet : Mer krevende Applikasjoner: Ofte flere for ulike formål Informasjonsressurser: Som under trinn 3, men vil ha flere Teknisk infrastruktur : Det stiller store krav, blant annet sikkerhet mot andre systemer og andre virksomheter Organisatorisk infrastruktur : Som trinn 3, i tillegg oppfølging mot andre virksomheter Eks: http://www.afin.uio.no/, 16 Hvilke av disse perspektiver er mest aktuelle? Funksjonsorientering (FO) Beskriver hva som skal gjøres, f eks. Eks. lover&regler Aktuelt for tjenesteutvikling, Dataorientering (DO) Beskriver hvilke data datasystemet skal inneholde Aktuelt for modellering av informasjonsstruktur, databaser Hendelsesorientert (HE) Hvordan reagerer på viktige begivenheter Aktuelt for modellering av interaktivitet etc. Objektorientering (O-O) Objekter som grunnlag for innkapsling av data og operasjoner på disse Aktuelt for modellering av hele nettstedet 17 Analysemetoder Metoder og teknikker for å få innsikt i problemet og virkeligheten, dvs. brukernes omgivelser Skal bidra til å utarbeide en kravspesifikasjon, og samtidig behovet for organisatoriske endringer Formaliserte og mindre formaliserte metoder Spørreskjemaer, kartleggings- og analysemetoder, Analyse av skriftlige materiale Strukturerte og mindre strukturerte intervjuer Observasjoner Bruksmønstre (Use cases- del aav UML ) 18 6

UML - The Unified Modelling Language UML er en standardisert grafisk notasjon for å støtte objekt-orientert analyse og utforming grafiske symboler og enkel grammatikk (regler for bruk) Uavhengig av programmeringsspråk og utvikl. Metoder Bygger på grunnideene i SIMULA (Dahl&Nygård 1965..) Tilsammen 12 ulike diagrammer http://www.rational.com/uml/index.jsp?smsession=no http://www.omg.org/uml/ 19 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 20 Use Cases System Bruksmønster 1 Bruksmønster 2 Aktør Bruksmønster 3 Bruksmønstre er nyttig f eks. i å beskrive interaksjonen mellom bruker og nettstedet, som et hjelpemiddel for å utforme brukergrensesnitt 21 7

Oppsummering behov for SU-metoder Trinn 1: Enkle, ad-hoc pregete (eksperimentelle metoder) kan fungere, men undervurder ikke vedlikeholdet Trinn 2: Krever noe mer formalisering, fortsatt mye vekt på eksperimentelle metoder Trinn 3-4 Krever omfattende systematikk i metodebruk og prosjektgjennomføring. Viktig med en god organisasjonsutviklingsprosess (sosioteknisk) 22 Utvikling av nettsteder er en sosio-teknisk teknisk utviklingsprosess: Teknisk system Organisatorisk- og sosial system 23 Fossefallsmetodene er viktige, men har også vist seg utilstrekkelige!! 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 Inkrementell og/eller eksperimentell systemutvikling systemutvikling Andre former (ekstrem programmering,..) Kombinasjoner i praksis 24 8