Forelesning IMT apr 2010

Like dokumenter
Forelesning IMT Mars 2009

Open Source Software Development

Forelesning IMT mars 2011

Faglærer : Tom Røise. IMT Objektorientert systemutvikling 1. Temaer. IMT3102 Objektorientert systemutvikling Introduksjon av emnet høsten 2011

Faglærer : Tom Røise. IMT Objektorientert systemutvikling 1. IMT3102 Objektorientert systemutvikling. Læringsutbytte i emnebeskrivelsen.

Tom Røise. IMT 2243 : Systemutvikling 1. Forelesning IMT Januar Offshore Software Development. Offshore Software Development

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

Open Source Community

Får man det man betaler for?

EKSAMEN 05HBINDA, 05HBINFA, 05HBISA, 05HBMETEA, 06HBINFA. Tom Røise. INNFØRING MED PENN, evt. trykkblyant som gir gjennomslag

Hvordan evaluerer man kvaliteten på et IT-system?

Distributed object architecture

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

Tom Røise 9. Februar 2010

Konfigurasjonsstyring

Lynkurs 10. Januar 2012

Operativsystemer: Litt IT- og Linux-historie

altinn tjenester 3.0

Operativsystemer: Litt IT-historie

Tom Røise 27.Jan 2011

Oversikt. Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 1 UNIX. 2 Linux. 3 Process. 4 Process models

AlgDat 10. Forelesning 2. Gunnar Misund

AlgDat 12. Forelesning 2. Gunnar Misund

Operativsystemer: Litt IT- og Linux-historie

Åpen innovasjon og tjenesteinnovasjon

Windows eller Linux. i MinButikk

Grunnlag: 11 år med erfaring og tilbakemeldinger

Tom Røise 18. Februar 2009

Tom Røise 28.Jan 2010

Sikkerhets skannere. Sikkerhets/sårbarhets skannere

F.I.F.F.I.G. Fleksibelt og Innovativt system For FakultetsInformasjon og andre Greier

Forretningsmodeller med Fri Programvare

TDT4105 Informasjonsteknologi, grunnkurs

Moderne samhandling gir konkurransefortrinn

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

CORBA Component Model (CCM)

Brukbarhet ved benyttelse av fri programvare i systemutvikling - en praktisk studie

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

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

Kvalitet og programvare. Når bare det beste er godt nok. Produktet prosessen eller begge deler?

UKE nn Oppgave. Fagprøve Dataelektroniker. Prøvenemd Dataelektroniker VESTFOLD FYLKESKOMMUNE

Introduksjon til kurset og dets innhold

Nye krav i ISO 9001, hvilke er de og hvordan implementere disse i TQM? Ragna Karoline Aasen

Forprosjektrapport Gruppe 30

Vedlikehold og gjenbruk

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR

Kravhåndtering. INF1050: Gjennomgang, uke 03

Eksamen i fag TDT4140 Systemutvikling. Tirsdag 27. mai 2004 kl

FORSIDE ved besvarelse av hjemmeeksamen, semesteroppgave, rapport, essay m.m.

Tom Røise. IMT 2243 : Systemutvikling 1. Forelesning IMT Januar Prosjektstyring. Deltemaer innen prosjektstyring

Innføring i Linux. Operativsystemer

ESTIMERING I SMIDIGE PROSJEKTER

Hei! I vår digitale tidsalder representerer antallet informasjonskilder og store informasjonsmengder både utfordringer og muligheter for bedrifter.

Åpen innovasjon med. Hvordan organiserer utviklingsarbeide Lukket og åpne innovasjon Hvem vinner og hvem taper?

Introduksjon til 3290

Altinns nye tjenesteverksted. Lars Vegard Bachmann, produkteier portal og tjenester, Altinn

Søknadsfrist

Med kvalitet menes: WIKIPEDIA. STORE NORSKE LEKSIKON

Bilag til kjøpsavtalen for Antivirusløsning K Bilag 1 - Kundens kravspesifikasjon

Prosjektrapport. Informasjonssikkerhet og risiko ved bruk av fri programvare eller åpen kildekode i IKT-løsninger for helsesektoren.

Beat the Competition. Forelesning 17. januar, Utvikling av interaktive nettsteder

MINE BESTE RÅD TIL OFFENTLIG SEKTOR

CEN/TS «Innovasjon- å skape verdier på nye måter» Har vi råd til å la være? Anthony Kallevig, LO

Kundens kravspesifikasjon ERP-løsning for kommunene i DDV-samarbeidet

Undervisning i Smidige metoder ved Universitetet i Oslo

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

Lise Feirud, Ph.D. Markedssjef

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

Strategiplan, Institutt for Design KMD, UiB, 2018 til 2022

Capgemini Bergen. og vi snakker om... Simply. Business Cloud. Rolf Wangsholm regiondirektør

STRATEGISK PLAN

Tid for læring. Microsoft Office 2007 Windows Vista. e-læring bok

Software installasjon og andre ettertanker

KIS - Ekspertseminar om BankID

Blockchain 2/22/2019. Hva er Blockchain for Business. IBMs platform & løsninger. Hvordan komme igang? Hva er det og hvordan komme igang?

BAAN IVc. BAAN Data Navigator - Brukerhåndbok

Dataforeningen Østlandet Cloud Computing DEN NORSKE DATAFORENING Vi engasjerer, påvirker og skaper fremtid!

Neste generasjon ISO standarder ISO 9001

Innhold. Innledning Del 1 En vei mot målet

Alternativ dag for teoriforelesning. Intro. Torsdag 12:15-14:00 R1

Bedre valg av leverandør gjennom trialsourcing & Fastpris eller per time?! Oslo, 1. desember, 2014 Magne Jørgensen

IN2002: Software Engineering og prosjektarbeid 12. februar Forskningsmetoder / Evaluering av IT-systemer. IN2000/ 12.2.

SSA-K Bilag 1 Kundens kravspesifikasjon

11 Planlegging og dokumentasjon

Kunde og BI leverandør hånd i hånd - eller..? Anders Hernæs / ah@ravnorge.no Lars- Roar Masdal / lrm@ravnorge.no

Litt kontekst Topic maps er en måte å organisere informasjon på en ISO standard (ISO/IEC 13250:2000) en XML applikasjon et lag oppå XML (gjerne også o

Ricoh Norge. Rådsmøte 5 juni Petter Lien Salgsdirektør MA Gøran Alstedt National Account Manager Tor-Einar Fremstad Contract Manager

Supply chain management

IT Service Management

OOSU 22.sept Pattern har sin opprinnelse innen arkitektur (byplanlegging / bygninger)

geonorge - en geografisk tjenestebasert infrastruktur uten sidestykke.

Velkommen til INF115

UTDANNELSE NTNU i Trondheim, Sivilingeniør i datateknikk og informasjonsvitenskap

Oppgave 1: Multiple choice (20 %)

Kap 11 Planlegging og dokumentasjon s 310

Erfaring med BYOD. Espen A. Fossen, Sikkerhetssjef :02

Hvordan forme en mobilstrategi som tar deg helskinnet fra idé til realisering med forventet gevinst?

Velkommen. Torsdag 24 januar 2019 time 1. Yngve og Jo. IN 1030 Systemer, krav og konsekvenser

DIGITAL SKOLEEKSAMEN FOR STUDENTER VED POLITIHØGSKOLEN

Transkript:

Dagens : Forelesning IMT2243 27.apr 2010 Open Source Software Development Offshore Software Development Kvalitetssikring i systemutviklingsprosjekter Pensum : Artsaml. 6 og 7, Sommerville kap. 27 Open Source Hva vet dere om dette temaet? Open Source Software Development Open Source begrepet er i første rekke knyttet til et sett av kriterier for distribusjon av programvaren man har utviklet. Det er en misoppfatning at det her er snakk om gratis programvare. Aktører som legger ut sitt arbeid som Open Source gjør programvaren tilgjengelig i form av at mottaker gis frihet til bruk og også bearbeide den videre. e Tilgang g på kildekoden er et viktig element i dette. Man kan gjerne utvikle en programvare på tradisjonelt vis og deretter slippe det ut som Open Source. Noen Open Source-prosjekter tar steget videre og anvender en helt anderledes måte å kjøre selve utviklingen av programvaren på. Man velger her å involvere brukere av programvaren i selve utviklings- og testingsaktiviteten. Dette er OSSD! Man etablerer en gruppe (ofte idealistiske) systemutviklere til å komme med sine bidrag i programvaren (Developer Community), samtidig oppfordrer man alle brukere der ute til å teste og komme med feilrapporter og forslag til utvidelser (User Community). IMT2243 Systemutvikling 1

Litt historikk innen OSSD 1983 GNU-prosjektet startet av Richard Stallman. Mål om å lage et Unixlignende operativsystem og distribuere det som fri programvare 1985 FSF Free Software Foundation stiftet av Richard Stallman Støtte til universell frihet til å distribuere og endre programvare uten. Fokuserer på fri som i frihet ikke fri som i gratis! 1991 Linus Torvalds lanserer sin ide om å utvikle et operativsystem og drar dermed i gang prosjektet som resulterer i Linux. I 2002 hadde anslagsvis 8000 årsverk av frivillig illi utviklingstid tid resultert t i et operativsystem t som ble benyttet på 25 % av verdens servere. 1997 Eric Raymonds diskuterer i sitt manifest The Cathedral and the Bazaar det han mener er fundamentale forskjeller mellom utviklingsprosesser for henholdsvis tradisjonell kommersiell programvare (Cathedral model) og internett-basert samarbeid og fri informasjonsdeling i prosjekter som Linux og Fetchmail (Bazaar model). 1998 Open Source begrepet etableres (http://www.opensource.org/docs/osd) Mer info på Wikipedia : http://en.wikipedia.org/wiki/open_source_software_development Felles karaktersitika ved sentrale Open Source prosjekter Karakteristika hentet fra Wide Open Open source methods and their future potesial av G.Mulgan m.fl (http://www.demos.co.uk/files/wideopen.pdf) Transparency Vetting of participants only after they ve got involved Low cost and ease of engagement A legal structure and enforcement mechanism Leadership Common standards Peer review and feedback loops A shared conception of goals Incrementalist small players can still make useful contributions Powerful non-monetary incentives Vi tar i vårt emne ikke for oss de ulike i distribusjonsformer og ulike lisensieringsavtalene som finnes innen fagfeltet. Karakteristika ved OSSD-prosesser Må ha et startpunkt i form av et eksisterende produkt eller en genial ide. Gjerne også et nettverk av kontakter innen Open Source miljøer. Hvor mange utviklere tror dere et gjennomsnitlig OSSDprosjekt har? Ulike utviklingsprosesser (A. Capiluppi m.fl): Soloarbeid, en person eier og videreutvikler programvaren, men distribuerer den som Open Source Soloarbeid med innslag av eksterne patcher. Her er det en utvikler, men eksterne bidragsytere gir inn feedback, patcher og eventuelt forslag til utvidelser Gruppearbeid med interne patcher. En lukket utviklergruppe som gjør all videreutvikling selv. Gruppearbeid med reelle bidrag fra større utvikler- og brukermasser (Reelt OSSD). IMT2243 Systemutvikling 2

Eksempler på OSSD Utviklingen av Linux ansees av mange som skoleeksemplet ikke bare på en velfungerende programvare distribuert som Open Source, men også som en reell OOSD utviklingsprosess der fordelene med å få engasjerte brukerog utviklermiljøer (User Community og Developer Community) er utnyttet til fulle. Se : http://no.wikipedia.org/wiki/linux org/wiki/linux Andre kjente OpenSource : Apache Software Foundation, Mozilla Application Suite, KDE, Open Office SourceForge og Freshmeat er viktige kildene for å finne gode Open Source prosjekter http://sourceforge.net/index.php http://freshmeat.net/ Open Source diskusjon : Har dere noen eksempler på profilerte Open Source prosjekter? Sett opp mot de systemutviklingsmodellene vi har gjennomgått hvilke karakteristika mener dere er sentrale innen OSSD og hvilke modell er den mest beslektet med? Hva finner dere igjen fra extreme Programming som kan være relevant i OSSD? Hvor viktig er responstid innen Open Source prosjekter? Hvorfor tror dere folk bidrar som henholdsvis User og eller Developer? Hvorfor skulle du som HiG student vurdere å bidra i et Open Source prosjekt? Nøkkelutfordringer innen OSSD (M.Levesques pensumartikkel) Programvaren bærer ofte sterkt preg av å være utviklet av utviklerne for utviklere (en lukket verden) Har slitt med å få frem brukervennlige systemer særlig på Windows-plattformen. I de senere årene har utviklingen her vært meget positiv for eksempel med programvare som FireFox og OpenOffice. Dokumentasjonen på programvaren preges av å være laget av utviklere for utviklere Feature-driven utvikling Har vært klare tendenser til Religions-krig i forholdet mellom Open Source-miljøer og kommersielle aktører. Her er tendensen klart at man får oppmykning. Bl.a. har IBM distribuert utviklingsmiljøet Eclipse som Open Source. IMT2243 Systemutvikling 3

Offshore Software Development Offshore Software Development er en trend i tiden innen måten man driver systemutvikling på. Dette er vår bransjes svar på globalisering. Store aktører og store utviklingsprosjekter kobler til seg kompetansen der man får mest for pengene. Internasjonale firmaer etablerer miljøer med programmeringsog applikasjonsutviklings-kompetanse i lavkostland som India, Kina, Øst-Europa, men også i Irland, Israel og Canada Offshore Software Development Utviklingsmodellen ll i slike prosjekter blir spesiell. Forholdet mellom kunde og leverandør blir mer komplekst. Leverandør har ofte organisasjonsenheter både Onsite og Offshore Internt hos leverandøren opplever man kulturskiller, tidssoneproblematikk og tildels språkproblematikk som kompliserende for utviklingen. Fordelen er at kan få tak i meget kompetente programmerere / testere / designere til en langt lavere pris Offshore Software Development Nærheten mellom brukere og utviklere forsvinner. Ut fra detaljerte spesifikasjoner utvikler og tester Offshore-miljøene komponenter og delsystemer særlig innen større standardsystemer. Modellen kan benyttes til å utvikle alle typer systemer, men er kun hensiktsmessig i store prosjekter. Meget god skriftlig dokumentasjon og strenge kvalitetssikringsprosedyrer som etterleves er en forutsetning for å lykkes i slike prosjekter. IMT2243 Systemutvikling 4

Hva er programvarekvalitet? Fra NS-ISO 8402 : Kvalitet er helhet av egenskaper og kjennetegn et produkt eller tjeneste har som vedrører dets evne til å tilfredsstille fastsatte krav eller behov som er antydet Departement of Defence : Graden av om egenskapene til programvaren muliggjør utførelse av påtenkt sluttbruk. Fra boka Software Engineering av Roger Pressman : Samsvar med 1) eksplisitt fremsatte funksjons- og ytelseskrav 2) eksplisitt dokumenterte utviklingsstandarder 3) og implisitte karakteristika som forventes av profesjonelt utviklet programvare Software quality attributes Safety Understandability Portability Security Testability Usability Reliability Adaptability Reusability Resilience Modularity Efficiency Robustness Complexity Learnability Internal and external attributes IMT2243 Systemutvikling 5

Sertifisering - ISO 9000 ISO = International Organization for Standardization NS-ISO = Norsk Standard -.. Verdensomspennende Kvalitetsledelse og Kvalitetssikringsstandarder Generell, ikke industri / bransjespesifikk Sikrer kunde at utvikleren har kvalitetskompetanse Opprinnelig : Kontraktsdokument mellom 2 parter Nå : Utgangspunkt for 3.parts sertifisering av firmaer og organisasjoner. Markedsstyrt utbredelse, fikk meget stor tilslutning i større IT-selskap på midten av 90-tallet, synes nå å være mindre i fokus. ISO 9000 and quality management Relevante ISO Standarder ISO 9000 : en serie standarder og retningslinjer for kvalitetssikring i bedrifter og organisasjoner ISO 9001 : Kvalitetssystemer - Kvalitetssikring ved utvikling/konstruksjon, tilvirkning, installasjon og ettersyn av produkter ISO 9000-3 : retningslinjer for bruk av NS-ISO 9001 for utvikling, levering og vedlikehold av programvare IMT2243 Systemutvikling 6

Eksempel på mal for en kvalitetsplan (satt opp med utgangspunkt i IEEE-730) 1. Formål med planen 2. Referanse 3. Ledelse 4. Dokumentasjon 5. Standarder, praksis og konvensjoner 6. Gjennomganger og revisjoner 7. Konfigurasjonsstyring 8. Problemrapportering og tiltak 9. Verktøy, teknikker og metoder 10. Kontrollrutiner for kode, medie og leverandør 11. Vedlikehold og tilbakeholdelse IMT2243 Systemutvikling 7