Denne ukens tema Del 1: Faginfo + A1; Del 2: kap Velkommen til fag SIF8060 Modellering av informasjonssystemer. Faginfo: Terminologi

Like dokumenter
EKSAMEN I FAG SYSTEMERING 2 LØSNINGSFORSLAG Mandag 18. mai 1998 Tid: kl

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

Oppgave 1. Modelleringsperspektiver og modelleringsspråk (40%) Alle underoppgavene teller likt

DRI2001 forelesning

DRI 2001 Systemutviklingsarbeidet et overblikk Forelesning

Bolk om Kravspesifisering

DRI 2001 Systemutviklingsarbeidet et overblikk Forelesning

2. Beskrivelse av mulige prosjektoppgaver

EN INNFØRING I BPM

UKE 9 Prosesser og prosessmodeller inkludert smidige metoder. Gruppetime INF1055

Model Driven Architecture (MDA) Interpretasjon og kritikk

UKE 11 UML modellering og use case. Gruppetime INF1055

UNIVERSITETET I OSLO

Kvalitet av konseptuelle modeller

Forskningsmetoder i informatikk

AlgDat 12. Forelesning 2. Gunnar Misund

Distributed object architecture

GJENNOMGANG UKESOPPGAVER 7 REPETISJON

Konstruktivistisk Veiledning

Systemutvikling. Universitetet i Oslo, Institutt for informatikk Vår 2017

Forskningsmetoder i informatikk

EKSAMEN I FAG SYSTEMERING 2 Tirsdag 23. mai 2000 Tid: kl

AlgDat 10. Forelesning 2. Gunnar Misund

Kravspesifikasjon med UML use case modellering. Erik Arisholm

HCI, Interaksjon, grensesnitt og kontekst. Intervju, spørsmålstyper og observasjon

Eksamen 2013 Løsningsforslag

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

Kravspek: Mål-orientering

VELKOMMEN TIL MAT-INF1100 og MAT-INF1105. Knut Mørken Rom Ø368, Fysikkbygget

UML-Unified Modeling Language

Use Case-modellering. INF1050: Gjennomgang, uke 04

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Læringsmål for forelesningen

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

KVALITATIVE METODER I

Kap3: Klassemodellering

Oversikt over forelesningen. DFD sentrale konsepter. Intro til Dataflytdiagrammer (DFD) Marakas, kap. 5

På partnerforums frokostmøte spør vi:

Innhold. Innledning Del 1 En vei mot målet

IN1010 Objektorientert programmering Våren 2019

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

«Understrømmer i endringsarbeid»

Delt opp i tre strategier: forretningststrategi, organisasjonsstrategi og informasjonstrategi.

VELKOMMEN TIL MAT-INF1100(L) Knut Mørken Rom 1033, Niels Henrik Abels hus

Organisasjon og endring

Velkommen til. IN1010 Objektorientert programmering Våren 2018

Forbedringskunnskap. Forståelse for virksomheter og tjenester som systemer med gjensidig avhengighet

Vår visjon for hvordan DERE digitaliserer virksomheten gjennom ny teknologi. Foredraget svarer opp:

Spesifikasjon av Lag emne

Hvorfor objektorientert programmering? Objektorientert programmering i Python: Introduksjon. Læringsmål uke 7. Undervisning og pensum IN1000

Hvorfor objektorientert programmering?

Masterskolen Oppsummering Arild Jansen AFIN

Kravspesifisering (4): Use Cases. Hvorfor passer use cases til krav? Tema / læremål. Gjettekonkurranse: Hva er det mest fundamentale.

Gode pasientforløp. Hvordan bruke målinger som styringsverktøy? Hva er det særlig viktig at ledere har oppmerksomhet på?

Design, gjennomføring og viderebruk av risikoanalyser. Per Myrseth 7. november 2013

Prototyping. Plenumstime Uke 6. Med Maria og Helle

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise IMT2243 : Systemutvikling 1

Forventningsavklaring. Forbedringskunnskap Innføring av et innsatsområdet Forbedringsmodellen og andre nyttige verktøy Suksesskriterier

KONTINUASJONSEKSAMEN I FAG SYSTEMERING 2 Torsdag 24. august 2000 Tid: kl

Språk, abstraksjonsmekanismer og perspektiver i konseptuell modellering

Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer

Dagens IMT 1321 IT-LEDELSE. Faglærer : Tom Røise. IMT1321 IT-Ledelse 1. Faglærers bakgrunn

DEL II: ORGANISASJONSENDRING DRIVKREFTER, INNHOLD OG OMFANG, KONTEKST OG PROSESS... 35

Kravspesifisering (3): Forhold til OO Analyse og Design

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

Billige skjermvideoer Visjoner og erfaringer

KONTINUASJONSEKSAMEN I FAG 78052/45161 SYSTEMERING 2 Onsdag 18. august 1999 Tid: kl

MNFIT-272 Kunstig intelligens Forelesning 4.

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

«Standard for begrepsbeskrivelser»

Forskningsmetoder i informatikk

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise IMT2243 : Systemutvikling 1

Gruppenavn. Prosjektnavn Beskrivelse av design For Navn på systemet. Versjon <1.0>

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

Design og dokumentasjon

Dagens. Faglærers bakgrunn IMT 1321 IT-LEDELSE. Faglærer : Tom Røise 11.Jan IMT1321 IT-Ledelse 1

Repetisjon. 1 binærtall. INF3110 Programmeringsspråk. Sist så vi ulike notasjoner for syntaks: Jernbanediagrammer. BNF-grammatikker.

Bakgrunn. Kurset krever ingen spesielle forkunnskaper om modellering.

Fra krav til objektdesign

Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2)

1. Leksjon 01: Introduksjon til faget Prosjektrettet systemarbeid

Litt om kompilering og interpretering. Dagens tema Syntaks (kapittel Komp. 47, kap. 1 og 2) Syntaks og semantikk

Ark 1 av 18. programmeringsspråkenes. Velkommen til IN 211. verden. IN 211 Programmeringsspråk

Kravhåndtering. INF1050: Gjennomgang, uke 03

Universitetet i Oslo Institutt for informatikk. Eskild Busch. UML hefte

CHAPTER 11 - JORUN BØRSTING, ANALYZING QUALITATIVE DATA

INF3110 Programmeringsspråk

Ofte stilte spørsmål.

Meta- og språk-modellering

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

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell (ny versjon) Dagens forelesning. Fra krav til objektdesign

Velkommen! I dag. Viktige beskjeder. Studieadministrasjonen. IN Høst Siri Moe Jensen Geir Kjetil Sandve Henrik Hillestad

Forskningsmetoder. INF1050: Gjennomgang, uke 13

LØSNINGSFORSLAG TIL Eksamen i TDT4250 Modellering av IS

Modellering IT konferanse

Neste generasjon ERP-prosjekter

Forside. Eksamen i IN1030 for Våren Ingen hjelpemidler tillatt.

SERES - status Ressursnettverk for eforvaltning og Norstella Elektronisk Samhandling i Offentlig Sektor 27.august 2009

Transkript:

Velkommen til fag SIF8060 Modellering av informasjonssystemer Guttorm Sindre, IDI Denne ukens tema Del 1: Faginfo + A1; Del 2: kap 1 + 8.1 Faginfo Motivasjon Hvorfor modellere, hvorfor ta faget? Avgrensing av fagets interesseområde Dimensjoner i IS-utvikling Konseptuell modellering i IS-utvikling No Silver Bullet Faginfo: Læremål Stud.plan: oversikt over språk, teknikker og verktøy for å lage informasjonssystemmodeller med høy Kun oversikt? Misvisende! Ønsker også at dere skal bli flinkere til å Lage modeller, vurdere en av modeller etc. Velge egnede modelleringsspråk og verktøy utifra behov Evt også kunne lage egne modelleringsspråk ved behov Gjøre godt arbeid i systemutviklingsprosjekter (her: spesiell vekt på analyse og kravspek) Faginfo: Terminologi Informasjonssystem: hva omfatter dette? Kun den automatiserte delen Også informasjonsbehandling utført av mennesker i organisasjonen? Modell: kan være nesten hva som helst Repr. en eksisterende eller tenkt del av virkeligheten Mer abstrakt, mindre, billigere enn det den forestiller Mål: Velge ut de viktige sidene ved det representerte I dette faget: Modellering ifbm analyse og kravspek Analyse: forstå problemet (deskriptiv modellering) Kravspek: angi løsning (preskriptiv modellering) Faginfo: pensum, forelesninger Selvtrykt kompendium i 2 deler Del 1: Artikkelsamling Del 2: Bokmanus av Krogstie / Sølvberg Fås kjøpt på forelesning eller i IDIs ekspedisjon Forelesninger: 3 t uka Mandag 8-10, ti 8-9 F-plan noe endret ifht det som er trykt i kompendium Transparenter og annet på http://www.idi.ntnu.no/~sif8060 Faginfo: øvinger Obligatoriske Krav: 50% score Noen teoretiske (dvs. spørsmål med tekstlige svar), noen praktiske (lage modeller) Mer info kommer på web etter hvert 1

Motivasjon (1) Hvorfor lage modeller for analyse/kravspek av IS? Store tapsprosjekter (skreddersøm og ERP) Dårlig behovsanalyse / kravspek hyppig grunn Dårlig programmering ikke noen hyppig grunn Kostnader ved å fikse feil 10 per fase hvor feilen er med på lasset Programkode Detaljert, dyrt å skrive Implisitte krav, dårlig oversikt Lite egnet for diskusjon med sluttbrukere Hva om spørsmålet var lage eller kjøpe, automatisere eller ikke? Motivasjon (2) Eksempel: Vi blir bedt om å lage et system for viderekopling av telefonsamtaler. Vi tenker at dette er så enkelt at vi bare kan programmere i vei. Men så er det plutselig noen som spør: Skal viderekopling være transitiv eller ikke? Hvorfor ta dette faget? Motivasjon (3) Analyse og kravspesifikasjon er vanskelig! mye vanskeligere enn programmering (overhørt på en konferanse: you don t let a novice write use cases, that s for your top developers... ) opplevd vanskegrad reell vanskegrad Motivasjon (4) Hvem kan ha nytte av faget? alle som driver med systemutvikling, særlig med prosjektlederansvar eller involvert i tidlige faser Jobbe med databaseløsninger, web-applikasjoner, telekomsystemer, arbeidsflytsystemer, ERP-systemer her er modellering mye brukt de som skal jobbe med utvikling av modelleringsverktøy de som får ansvar for valg og tilpasning av metode, modelleringsspråk og modelleringsverktøy De som skal ta prosjekt eller diplom på IS, eller forske på problemstillinger knyttet til modellering Avgrensing av faget (1) Modellering av nåsituasjonen (ikke begrenset til eksisterende applikasjoner) Analyse (også som del av planlegging) Passivt fremtidsbilde Modellering av ønsket fremtidig situasjon (ikke begrenset til applikasjoner) Modellering av ønsket fremtidig applikasjon Kravspesifikasjon Modellering av fremtidig teknisk løsning Design Implementasjon og testing Endring av eksisterende løsning aktive modeller,endring av konfigurasjonsdata Avgrensing av faget (2) Enormt antall språk, metodikker og verktøy... Nye dukker stadig opp... Selv med artikkelbasert pensum kan man ikke dekke alt Derfor mer vekt på: Læring for fremtidig læring Generelle rammeverk, kategoriseringer etc Utvalg av språk/metoder for å vise bredde, unngå repetisjon av det som er lært i tidligere fag Nytt i forhold til i fjor Mer eksplisitt fokus på kravspesifikasjon (4 ukers bolk midtveis spesielt om dette) 2

Dimensjoner ved metodikk for IS-utvikling (Del 2, kap 8.1) Hvorfor angriper vi problemområdet som vi gjør? Weltansschauung (jmf Hirschheim/Klein i grunnkurset) Dekning av prosess Dekning av produkt Dekning av semiotiske nivåer Hvordan dekkes standard-teknikker? Gjenbruk Modellering Hvem er involvert i utvikling/vedlikehold? Modenhet Weltansschauung Ulike grunnsyn Objektivistisk : Virkeligheten eksisterer uavhengig av enhver observatør. Relasjonene mellom virkeligheten og modeller av den er trivielle og opplagte. Mulig å snakke om true requirements to a system Konstruktivistisk: Relasjonene mellom virkeligheten og modeller av denne er gjenstand for forhandlinger blant en samling observatører, og kan oppdateres over tid. Mentalistisk: Hva man kaller virkeligheten samt relasjonene til enhver modell av denne er totalt avhengig av observatør Karakterisert ved Ontologi: Hva kan man vite? Epistemologi: Relasjon mellom den som vet, og det som kan vites Metodologi: Hvordan skaffer man seg kunnskap? Objektivisme vs konstruktivisme Ontologi Objektivistisk Realisme (en objektiv virkelighet) Epistemologi Positivistisk (Observatør påvirker ikke virkeligheten) Metodologi Konstruktivistisk Nominalisme (Virkeligheten er sosialt konstruert) Anti-positivistisk (Observatør påvirker virkeligheten) Intervensjonisme Hermeneutikk (analyse-> kritikk-> analyse) Dekning av prosess Utvikling av applikasjoner og andre relaterte prosess- og organisasjonsendringer Analyse Kravspesifikasjon Design Implementasjon/Testing Konvertering og innføring Planlegging av endringer i datastøtte Drift og anvendelse av applikasjoner Vedlikehold (forvaltning og videreutvikling) av applikasjoner og andre relaterte endringer Ledelse og styring av de fire områdene over Dekning av produkt En enkelt applikasjon En gruppe av relaterte applikasjoner Hele porteføljen av applikasjoner Helheten av mål, forretningsprosesser, organisasjon, og teknologi innen virksomheten Ulike semiotiske nivåer Organisasjonsnivå Hvorfor lages systemene i det hele tatt? Verdiøkning innen org. Sosialt nivå Kontekst for organisasjonelle gjøremål Organisasjon som sosialt system der aktiviteter gjennomføres i forhold til mer eller mindre etablerte mål, normer, og regler for oppførsel Pragmatisk nivå Oppnå basis for å ta beslutninger og koordinere aktiviteter Gjennom kommunikasjon Semantisk nivå Hva kommuniseres? Modeller Syntaktisk nivå Hvordan representeres modeller? Som setninger i veldefinerte(?) språk Empirisk nivå Hvordan gjøres setninger persistente? Koding i mønstre Fysisk nivå Hvordan er mønstre implementert? Detekterbare spor på fysisk materiale 3

Gjenbruk av produkt og prosess Ulike mål for gjenbruk: Lavere kostnad, kortere utviklingstid, fleksibilitet, senere gjenbrukbarhet, kapasitet,, risikostyring Substans: Produkter (komponenter/dokumentasjon) eller prosesser Omfang (Scope) Internt eller eksternt (for prosjekt eller organisasjon) Vertikalt eller horisontalt Modus: Planlagt (med eller for gjenbruk) eller ad-hoc Teknikk: Sammensetning eller generering Intensjon: Uendret, konfigurert, portet, modifisert, som mønster, som ide (pattern) Medvirkning Hvem er berørt av en endring? De med ansvar for utvikling, innføring og vedlikehold Direkte eller indirekte brukere og driftspersonell De med økonomisk interesse Alle disse menneskenes overordnede Direkte eller indirekte medvirkning Valgt eller utvalgt Grad av innflytelse Grad av innflytelse Hvem er involvert på hvilke stadier, og med hvilken innflytelse. Skala for innflytelse og makt Ingen/minimal informasjon Informasjon Mulighet til å gi råd Råd tatt i betraktning Felles beslutning Fullstendig kontroll Representere produkt og prosess Uformelle språk norsk, engelsk Språk med formell syntaks DFD Språk med formell (operasjonell) semantikk Tilstandsdiagram, JAVA Språk med formell (matematisk) semantikk Z, PROLOG Ikke-språklige representasjoner lyd, bilde, video Modenhet Detaljert metodebeskrivelse tilgjengelig Metoden er i bruk Verktøystøtte Støtte til opplæring i og bruk av metoden og relaterte verktøy Metoden videreutviklet planmessig gjennom erfaringer fra praktisk bruk, vitenskapelige forsøk, og/eller kontinuerlig forbedring. Hvordan er tilstanden nå? Weltansscauung: De fleste metoder er grunnleggende objektivistiske, men aspekter av konstruktivisme øker Prosess og produkt: Hovedfokus stadig på utvikling av et system Semiotiske nivåer: De fleste IS-metoder fokuserer på lavt nivå (fysisk, empirisk, eller syntaktisk), men det finnes også de som adresserer pragmatisk, sosialt, og organisasjonelt nivå Gjenbruk: Stadig økende fokus (f.eks. komponentbasert utvikling, tilpasning av ERP-systemer) Representasjon: Økende fokus på modellering: OO (UML med tilleggsprofiler), BPR og ERP-løsninger, Workflow... Reell medvirkning: Økende fokus Modenhet: ofte liten. De fleste modne metodeverk er fossefall med variasjoner (iterasjoner, inkrementer etc) 4

SIF 8060 og dimensjonene Weltansscauung: Hovedsaklig konstruktivistisk (men også innslag av arbeider fra en mer objektivistisk tradisjon) Dekning av prosess: Planlegging, analyse, kravspesifikasjon, design, videreutvikling Dekning av produkt: Potensielt helheten av mål, forretningsprosesser, organisasjon, og teknologi innen virksomheten Semiotiske nivå: Alle, men begrenset fokus på overordnede organisasjonelle aspekter Gjenbruk: Gjenbruk av produkter både gjennom sammensetning og gjennom generering Representasjon: Modellering ved bruk av språk med formell syntaks og operasjonell semantikk Reell medvirkning: Underforstått, beskrevet hvordan dette kan oppnås i praksis i enkelte artikler Modenhet: Kombinasjon av modne og mer forskningspregede arbeider Konseptuell modellering i IS-utvikling (Del 2, kap 1) Som del av de endringene som gjøres i en organisasjon. Organisasjoner utvikles gjennom en prosess av sosial konstruksjon Organisasjoner består av individer som oppfatter verden forskjellig Alle endringer påvirkes av den eksisterende situasjonen i organisasjonen Modellering er en læringsaktivitet Sosial konstruksjon i en org. Konseptuell modellering Internalisering (sense-making) Lokal virkelighet (individuell) Organisasjonell virkelighet (Objekter, institusjoner, språk, teknologi) Eksternalisering (aksjon) Type modeller hovedsakelig brukt ved virksomhetsmodellering, problemanalyse og kravspesifikasjon Hovedsakelig diagram-basert (2-dimensjonale diagrammer) Språket for modellering har et begrenset vokabular Normalt brukt som en mellomrepresentasjon som basis for design/programmering Språkene er ment å være generelt anvendelig (ikke begrenset i forhold til en enkelt domene/bransje eller teknologi) Modellering som sosial konstruksjon Subjektivt i forhold til det man fokuserer på i modelleringsspråket (språkbias) Fokusere på visse aspekter på bekostning av andre Valg av språk påvirker i noen grad hvordan vi tenker Subjektivt i forhold til den del av den oppfattede virkelighet som vurderes som relevant Resultatet sterkt avhengig av deltagerne i prosessen Problemer med modell-monopol Rollen til konseptuell modellering i systemutvikling Representere systemer og krav Basis for kommunikasjon Basis for analyse og forståelse Basis for design, implementasjon og videreutvikling Hvilke praktiske erfaringer har dere med konseptuell modellering? 5

Kvalitet av modeller Tidsplan Modelleringsdomene D Modellerers kunnskap K Semantisk Fysisk Oppfattet semantis k Empirisk Eksternalisert modell M Pragmatisk Sosial Sosial aktørs tolkning T Syntaktisk Språkekstensjon S Uke 2: språk og perspektiver (kap 2.1-3, 2.5) Uke 3: modell Uke 4: språk Uke 5-8: kravspesifikasjon Uke 9-12: div modelleringsteknikker Uke 13-14: oppsummering I morgen: No Silver Bullet av F.P.Brooks Jr 6