Gamle systemer In 140 Forelesning Nr 19 Sommerville kap 26.

Slides:



Advertisements
Liknende presentasjoner
Teknologi i klasserommet
Advertisements

Er datasikkerhet viktig for deres firma ? Hva ville dere gjøre hvis alle data plutselig ble borte ved: •Tyveri ? •Brann ? •Datahavari ? •Menneskelig svikt.
Praktisk info til prosjektkunder
Programvare for nisje SMS
Transaksjonskostnader
Nettprosjekt Kundeservice på nett •Bakgrunn –SiT hadde gamle nettsider med mye og utdatert innhold og funksjonalitet •Formål –Bidra til at.
Programmering i ActionScript - hva er det, og hvordan undervise?
Endringsstyring Change Management.
ISO 9000:2000 Prosessorientering v/Per L. Berge Excellence Norway
Høgskolen i Oslo - GM Vær metodisk  Definer og forstå problemet  Spesifiser hva du har av hardware  Lag en prototyp av brukersnittet  Design.
Forelesning IMT Februar 2006
Prosjektstyring In 140 Sommerville kap 4.
MS kap 61 Nye trender  Vi skal se på  Virtualisering  ”Cloud computing”
EKommune-strategi - verkt ø ykasse Ellen Karin Larsen, KS.
Mads Lomholt (usit/sas/lipk) Nytt i Windows 7 Åpne dokumentformat.
2003 IT-konferansen 2003 UNIVERSITETET I OSLO Vortex: Skrivbar web for UiO Oddmund Møgedal USIT/UiO.
Semantisk interoperabilitet i det offentlige
Datavarehus i skatteetaten -
1 Oppgave gjennomgang Kap Oppgaver -Kap 12: 1, 2, 3, 5, 7, 8, 11, 18, 19.
Prosjektstyring In 140 Sommerville kap 4.
Verifikasjon og validering
Prototyping In 140 Sommerville kap. 8. Mål Forstå hensikten med prototyping i forskjellige utviklingsprosjekt Forstå forskjellen mellom evolusjonær og.
Systemmodeller In 140 Sommerville kap. 7. Mål Forstå hensikten med kontekstmodell Forstå ideene bak –oppførselsmodellering –datamodellering –objektmodellering.
Objektorientert utforming In 140 Forelesning Nr 13 Sommerville kap 12 – del 2.
Introduksjon til systemutvikling
Utført av: Jeppe Flensted HiST Vår 2009
Kravanalyse og spesifikasjon
Human Factors (HF) i kontrollrom - En revisjonsmetode 2003
Combining Compound Conceptual User Interface Components with Modelling Patterns - a Promising Direction for Model-based Cross-platform User Interface Development.
Hvordan uttrykke krav Kapittel 4.4. Innledning Målet er å samles rundt ett entydig språk som ikke kan misforståes eller feiltolkes. Gjør sporbarheten.
Gruppe 3 – Presentasjon 2 Henning Kristiansen, Mats Lindh, André Hauge og Vegard Simensen.
DEKOMPONERING OG MODULARITET ~Gruppe 4~. Gjennomgang Designtyper/kriterier innen dekomponering Dekomponeringsspesifikasjon Strukturert og objektorientert.
© Eurokompetanse a.sISO 9000:2000 august 2001 nr. 1.
Kartlegging og dokumentasjon
Av Donald Norman. Normans hovedanliggende: Information appliances An appliance specializing in information: knowledge, facts, graphics, images, video,
Konfigurasjonsstyring Configuration Management
Problemstyring Problem Management
Kvalitative og kvantitative metoder
Programvareendring del 2 In 140 Forelesning Nr 22 Sommerville kap 27, 2. Del.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
Å omfavne forandringer med ekstrem programmering(XP) Brukt i In140 Skrevet av Ola Bø Bygger på Kent Becks artikkel "Embracing change with extreme programming."
Prosjektoppgave eGovernment NTNU 2008 Innføring av elektroniske tjenester i Halden kommune - et delprosjekt i ”Det Døgnåpne Østfold” Prosjektoppgaven er.
Skjemaendringer i systemer bestående av XML-data i relasjonsdatabaser Høgskolen i Gjøvik Master i Medieteknikk, Marianne Brattrud.
Prosjektledelse In 140 Forelesning Nr 18 a Sommerville kap
De 222 mest brukte ordene i det norske språket..
Objektorientert utforming In 140 Sommerville kap. 12.
1 Systemering In 140 forelesning nr. 2 Sommerville kap. 3.
1 GeoPortal – Rammeverk Introduksjon. 2 Teknisk rammeverk - Interoperabilitet Interoperabilitet evne til å kommunisere, kjøre programmer, eller overføre.
Programvareendring del 1 In 140 Forelesning Nr 21 Sommerville kap 27, 1. Del.
9. Product information Produktinformasjon. Online kjøp Som vi har sett har vi ikke noe produkt å se på, holde i, prøve ut, … Da må vi ta igjen på andre.
Telenors satsing på fri programvare Paul Skrede - GoOpen 2009.
Forstudie Nå situasjonen: dagens situasjon med ulemper og fordeler
Programvareendring In 140 Forelesning Sommerville kap 27.
Gamle systemer In 140 Sommerville kap 26. Forelesninger fremover 8/4:Gamle systemer 22/4: Systemevolusjon og vedlikehold 28/4: Konfigurasjonsstyring.
Gamle systemer In 140 Forelesning Nr 19 Sommerville kap 26.
Objektorientert design
1 Kap. 57 – Cloud Computing How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen, Universitetet.
Senter for teknologi, innovasjon og kultur (TIK) - Universitetet i Oslo ORGANIZATIONS AND KNOWLEDGE TIK ESST Module 4 Jon Vatnaland.
Objektorientert utforming In 140 Forelesning Nr 11 Sommerville kap 12 – del 1.
Objektorientert design In 140 Sommerville kap 12 – del 1.
Android-Programmering Våren Oversikt Long-running operasjoner Introduksjon til Android services On-demand service Bruk av servicer på tvers av prosesser.
IN 265 Våren 2003 : Forelesning : Design av arkitektur og komponent 1 IN250 – Om komponent design Mål for forelesningen: l Se på prinsipper.
Produktnavn Tittel på presentasjon. Oversikt Gi en kort beskrivelse av produktet eller tjenesten, brukerproblemene som løses, og brukerne produktet eller.
I den prosessorienterte organisasjon spør man
Nye trender Vi skal se på Virtualisering ”Cloud computing”
Sett inn bilde av produkt her
Utskrift av presentasjonen:

Gamle systemer In 140 Forelesning Nr 19 Sommerville kap 26

Mål Forstå hva som menes med gamle systemer og hvorfor disse systemene er sentrale i mange organisasjoner Bli kjent med hvordan slike systemer kan være bygd opp Kjenne til funksjonsorientert design. Forstå hvordan man beslutter om slike systemer skal: kasseres, vedlikeholdes, gjenoppbygges eller erstattes

Introduksjon Systemer koster mye og bør derfor ha lang levetid Levetid ofte over 10 år, kanskje over 20 år Slike gamle systemer er ofte forretningskritiske Systemene har utviklet og endret seg Mange endringer over mange år Ingen forstår helt hvordan systemet virker Kassere og erstatte gamle systemer er risikabelt.

Risiko ved kassering av gamle systemer –Spesifikasjon er mangelfull eller gått tapt. –System og forretningsvirksomhet er sammenvevd. –Forretningsregler er innebygd i systemet og ikke dokumentert på annen måte. –Ny utvikling er risikabelt i seg selv. –Hva skjer med integrasjon mot andre systemer?

Kostbart å vedlikeholde gamle systemer Mange har vært involvert – dårlig konsistens Laget i foreldet programmeringsspråk som få behersker i dag. Dårlig eller ingen systemdokumentasjon utenom kildekoden eller ikke den heller Vedlikeholdet har ødelagt strukturen i systemet Optimerte systemer er mindre forståelige Data i filer med ulik struktur – dobbeltlagring

Dilemma Fortsatt bruk av gammelt system – stadig økte kostnader Dyrt å erstatte gammelt system og risikabelt Kan noe gjøres for å utvide levetiden for gamle systemer og redusere kostnaden ved å drive dem videre?

Struktur i gamle systemer Ikke bare programvare Sosioteknisk databasert system –Programvare –Maskinvare –Data –Forretningsprosesser –Leverandører –Ledelsen –Strategier –Lover & regler

Logiske deler av et gammelt system Maskinvare Støtteprogramvare Applikasjonsprogramvare Applikasjonsdata Forretningsprosesser Forretningsregler

Strukturen i et gammelt system

Lagdelt modell

Endring av lagdelt modell Kan man endre et lag uten å påvirke de andre? Oftest ikke fordi: –Endringer gir nye muligheter som høyere lag vil utnytte... –Endringer kan involvere tyngre programvare... –Endring av hardware fører ofte til endring av operativsystem

Strukturen i gamle applikasjoner

Startet fra ett program Utvidet med flere programmer som delvis deler data med eksisterende Programmene er ikke konsistente En annen løsning er data sentralisert i DBHS –Mindre dobbeltlagring –Transaksjonshåndtering –Teleprocessing monitor

Database-sentrert system

Transaksjonsbehandling

Gamle databasesystemer DBHS kan være foreldet/inkompatibel –Overgang fra Hierarkisk eller nettverksdb – til RDB Teleprocessing monitor er ofte DBHS- avhengig

Utforming av gamle systemer Ikke samarbeidende objekter – samling av subrutiner (funksjoner) Subrutiner kan kalle (bruke) andre subrutiner Avhengig av språk kan data være: –Tilgjengelige for hele systemet –Private for hver subrutine Utformingsstrategien er –Å dele inn programfunksjonaliteten i subrutiner –Felles data (systemtilstand) som deles av subrutinene Teori for utformingsstrategi (70'-start 80') –Top down-design –Structured design

Referanse hvis du kommer til å jobbe funksjonsorientert: The practical guide to structured systems design – Meilir Page-Jones (Tilgjengelig f. eks. fra Amazon.)

Funksjonsorientert utforming Algoritmekompleksitet overvinnes ved å dele inn i subrutiner Felles statiske data er et stort problem Funksjonsorientert utforming fungerer bra når –Det er lite statiske data –Deling av data er uttrykt (vist som funksjonsparametere) –Systemet håndterer uavhengige enkle inndata Databehandlingssystemer er ofte postorienterte –De passer godt til funksjonsorientert utforming

Funksjonsorienterte systemer Kommersielle databehandlingssystemer er vanlige og deles i to klasser: –Batch-systemer (lønn, faktura, kontoutskrift) –Transaksjonssystemer Kan eksistere sammen og dele data

Input-process-output model

Les data – Behandle data – Skriv data Lese data –Lese en post fra fil –Validere data –Lagre data til validert datafil Behandle data –Lese validerte data –Beregne resultat –Skrive data til resultatfil Skrive data –Lese ferdig beregnede data –Formatere dem som regning –Skrive ut regning på papir

Funksjonell utformingsprosess Dataflytutforming –Modellerer databehandlingen med dataflytdiagrammer Strukturell dekomponering –Modellere hvordan funksjoner dekomponeres med grafiske strukturkart –Viser eksplisitt dataoverføring Detaljert utforming –Funksjonene i strukturkartet beskrives i detalj

Payroll system DFD

Lønningssystem DFD

Lønningssystem - Strukturell dekomponering

Vurdering av gamle systemer Hvilken løsning er mest kosteffektiv? –Kassere systemet –Fortsette vedlikehold –Forandre systemet for lettere vedlikehold –Erstatte systemet med et nytt system Beslutningen avhenger av –Det eksisterende systemets verdi og kvalitet. Svaret kan være forskjellig for ulike deler av systemet

System quality and business value

Hva gjør vi med de gamle systemene? Fire muligheter –Lav kvalitet, lav forretningsverdi –Lav kvalitet, høy forretningsverdi –Høy kvalitet, lav forretningsverdi –Høy kvalitet, høy forretningsverdi Objektiv kvalitetsvurdering Ikke objektive forhold –Organisasjonsendringer –Organisasjonsstandarder –Budsjetthensyn

Vurdering av forretningsverdi Ingen enkle metoder Hent synspunkter fra flere interessenter –Sluttbrukere –Kunder –Avdelingsledere –IT-ledere –Toppledere

Vurdering av systemkvalitet Systemet består av: –Forretningsprosess, –Applikasjonsprogramvare –Støttemiljø støtteprogramvare Maskinvare Hele det sosio-tekniske systemet må vurderes: –Brukere –Programvare –Maskinvare –Data –Forretningsprosesser –Leverandører

Vurdering av forretningsprosessen Prosesskvalitet Spørsmål som kan stilles: –Finnes det en modell for prosessen? –Er samme prosess brukt for samme funksjon i hele organisasjonen? –Hvordan har man tilpasset prosessen til arbeidet? –Er det sammenheng med andre prosesser, er sammenhengen klar for de involverte? –Støttes prosessen effektivt av applikasjonsprogrammet Leverer det nødvendig informasjon? Må samme informasjon registreres flere steder? Normalt forskjell på teori og praksis

Vurdering av støttemiljø Endringer i støttemiljøet fører til endringer i applikasjonsprogrammet Dette bør inngå i vurderingen: –Leverandørstabilitet –Oppetid –Alder –Ytelse –Behov for støtte –Vedlikeholds- og driftskostnader –Interoperabilitet

Vurdering av applikasjonsprogramvare Avviker fra vurdering av systemer under bygging –Foreldede standarder og teknikker –Struktur ødelagt av forandringer –Mangelfull dokumentasjon Forhold som inngår i vurdering –Forståelighet –Dokumentasjon –Data –Ytelse –Programmeringsspråk –Konfigurasjonsstyring –Testdata –Personalets ferdigheter

Vurdering av applikasjonsprogramvare Kvantitative måltall –Antall forandringsønsker –Antall brukergrensesnitt –Datavolum Arbeid å skaffe denne informasjonen Sammenholdes med alder og systemstørrelse

Gamle systemer: Hovedpunkter I Systemet er ikke bare applikasjon, men sosio-tekninske datstøttede systemer –forretningsprosesser, applikasjonen, støttesystemer og maskinvare Består gjerne av mange program som deler data i filer eller foreldede dbhs De fleste er bygd på funksjonsorientert utvikling – De er satt sammen av funksjoner som kommuniserer gjennom parametere og globale delte dataområder

Gamle systemer: Hovedpunkter II To hovedtyper: –Batch- systemer –Transaksjonssystemer Felles struktur: les, behandle, skriv Forretningsverdi og kvalitet må vurderes før man velger kassering, omforming, videre vedlikehold, erstatning Systemkvaliteten avhenger av –Forretningsprosess –Støttesystemer –Selve applikasjonen