1 / 24

Introduktion til Systemudvikling og organisatorisk IT (II)

Introduktion til Systemudvikling og organisatorisk IT (II) Peter Carstensen. Dagsorden. Systemudvikling • Proces-produkt • Karakteristika ved software-produkter • Generelle begreber for at forstå systemudvikling som en proces

liliha
Download Presentation

Introduktion til Systemudvikling og organisatorisk IT (II)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduktion tilSystemudvikling og organisatorisk IT (II) Peter Carstensen

  2. Dagsorden Systemudvikling • Proces-produkt • Karakteristika ved software-produkter • Generelle begreber for at forstå systemudvikling som en proces • Procesmodeller og metodiske tilgange Organisatoriske aspekter af IT • IT som løftestang for forandring • Interessent-analyser

  3. Systemudvikling Krav og behov Konceptuelt design Hovedbevægelsesretning Moduldesign Programmering og test Integration Test og afprøvning Aflevering Vedligeholdelse Faser ifølge Sommerville: 1) Requirements definition 2) System and software design 3) Implementation and unit-test 4) Integration and system test 5) Operation and maintenance.

  4. Proces - produkt Proces Produkt Kvalitetskrav: oftest til produktet Specifikationer: for og til produktet Styringsmekanismer: på processen Ledelse: af processen Systemudvikling: Organisering af processen så produkt bliver godt !

  5. Produktet - hvad er software? ”algorithms + data structures = programs” (Wirth) Iflg. Pressmann, Sommerville, (og mange andre): - instruktioner - data strukturer - dokumentation Applikation - et stykke software som understøtter et sæt opgaver = program(mer) = kode + kodebiblioteker + runtime-system + operativsystem + databaser og DBMS’er + netværk + kommunikationssoftware + eksterne enheder + drivere mv. + dokumentation etc. etc. etc.

  6. Produktet - hvad er der udover software? Applikationen (alt inklusive) ..og.. - Dokumentation - Undervisning samt…….. - Nye/ændrede begreber - Nye kommunikations- og interaktionsformer - Nye opgaver og forretningsområder - Organisationsændringer - Krav om nye kompetencer etc. etc. dvs.: Forandring!!

  7. Fra sidst:Udfordringer og problemer Systemudviklingen skal……. • Designe på grundlag af utilstrækkelig forståelse af problem og behov • Designe til nogen ”vi ikke ved hvem er” • Skyde efter levende mål – styre en proces som først forstås undervejs • Tilfredsstille en hastigt stigende efterspørgsel • Forholde sig til at platformene udvikler sig eksplosivt • Vedligeholde store mængder af dårligt programmel • Etablere og vedligeholde centrale infrastrukturer • Håndtere og bygge videre på strukturer, som ingen forstår og kan forklare (Naur: ”Hver gang en programmør forsvinder ’dør’ noget af koden”) • Bygge på strukturer, som ikke har et standardiseret format og fundament • Afhjælpe at aktørerne ”kun er mennesker” • Rationelt forklare en proces som langt hen ad vejen er ”politisk” / økonomisk • Håndtere en verden, hvor ”runing code is king” - selvom det måske ikke er ønskværdigt

  8. Systemudvikling - elementer i termer af funktioner Konstruktion (produktrettet): Ledelse og styring (procesrettet): Tværgående (nødvendigheder): • Analyse • Design • Realisering - konstruktion - implementering i organisation/brugerkreds • Vurdering • Planlægning • Regulering • Beslutning • Kommunikation • Socialisering Bemærk: Dette vil i reglen ikke være de termer der bruges i forskellige ”metoder”, men de fleste metoder kan forstås i disse termer.

  9. Håndtering af kompleksiteten:Systems life cycle Et typisk life cycle forløb 1 - Udvikling 2 - Vedligehold -rettelser og tilpasning 3 - Vedligehold - udvidelser og forbedringer 1) Information modelling 2) Requirements analysis 3) Design 4) Code generation 5) Testing 1) Information modelling 2) Requirements analysis 3) Design 4) Code generation 5) Testing 1) Information modelling 2) Requirements analysis 3) Design 4) Code generation 5) Testing

  10. Håndtering af kompleksiteten: Forskellige tilgange / procesmodeller / metoder • Vandfaldsmodellen • Evolutionær udvikling • Komponentbaseret udvikling • Inkrementel udvikling • Extreme programming (XP) • Spiralmodellen + 117 varianter og metoder

  11. Vandfaldsmodellen Styrker: - Klart forløb - Fremdrift delvist målbar - Giver rimelig sammen- hængende systemer Problemer: - ”Der er altid iteration” - Kræver krav og overblik up front - Længe før der er noget synligt - Kan give forsinkelser imellem processerne

  12. Komponentbaseret - genbrug • Styrker: • - Genbrug • Hurtige produkter • Uklart hvordan komponentner virker • Mere og mere almindeligt • Problemer: • - Uklart hvordan komponenter virker • Kræver overblik og robust arkitektur

  13. Inkrementel udvikling • Styrker: • - Kan overskues daklumperne er små • Hurtige første resultater • Problemer: • - Kernefunktionalitet skalkunne identificeres • Kræver kunde/bruger forstår at tingene kommer løbende

  14. Spiralmodellen – en teoretisk tilgang • Spiralmodellen’s fokus: • Mål • Begrænsninger • Alternativer • Risici • Risici - løsninger • Planlæg næste fase • ”Commitment” Spiralmodellen iflg Boehm: Runde 0: ”Feasibility study” Runde 1: Konceptudvikling Runde 2: Krav specification Runde 3: Preliminært design Runde 4: Detaljeret design

  15. Tilgange til systemudvikling - metoder Idé: - Tilbyde et sæt begreber, notationer, teknikker, principper og retningslinier - Give et værktøj til den uøvede og støtte den øvede - Sikre ensartethed, styrbarhed, og fælles sprog • Nogle klassiske tilgange: • Objektorienterede metoder og teknikker • Contextual design • Funktionsmodellering • Lauesens virtuelle vindues metode • Struktureret analyse og design (DFD, E/R og minispecs) • Forskellige former for prototyping • RUP • ......... De centrale aktiviteter (iflg Sommerville): - Specifikation - Design og implementering - Validering - Evolution / vedligeholdelse

  16. Opgave 3 – i grupper • Du har fået til opgave at udvikle IT-systemer sammen med 3 af dine studievennertil den tenisklub, du er medlem af. De skal bruge noget kontingentstyring, banereservation, en blogfacilitet til alt-og-intet fra klubben, samt noglefeatures som kan forbedre det sociale liv i klubben. De forestiller sig at dele af det • er web-baseret og at de administrative applikationer kører lokalt på en enkelt PC.De har ikke valgt OS, PC-type etc. endnu. • Overvej: • - hvilke dele af dette vil du gribe an som et vandfaldsforløb? – hvorfor? • hvilke dele vil du udvikle vha iteration og vha. komponenter? – hvorfor? • hvordan vil du organisere de iterative forløb (hvis der er nogen)? • Klubben håber at kunne tjene penge på at sælge programmerne til andresportsklubber på længere sigt. Overvej hvad det betyder for måden I skal opdele komponenterne på. • Ups!: Lad være med at gå i teknisk løsningsmode! Opgaven går ud på at overveje tilgang til opgaven – ikke løsningen

  17. Organisatoriske aspekter af IT • IT som løftestang for forandring • Interessent-analyser

  18. IT som forandringsprojekter Hvad (kan) påvirkes i en organisation ifm. indførelse af ny IT? • nye arbejdsrutiner ændret flow i arbejdet • øget fleksibilitet • ændret organisering af arbejdet • nye kommunikationskanaler • ændrede produkter og afsætningsformer • forbedrede ledelsesinformationer og grundlag for planer mv. • outsourcing af opgaver / adskillelse af lokation og arbejde (Laudon & Laudon, s 27)

  19. IT som forandringsprojekter Hvem er relevante og centrale aktører ? • brugerne • brugernes ledelse • køberne, distributører, etc. • brugerorganisationens aftagere / kunder • andre berørte parter • projektledelsen • diverse i linieledelsen i udviklerorganisationen • projektdeltagere • underleverandører til projektet • eksterne leverandører ……. hvem ellers?? – kantinepersonalet?

  20. Interessentanalyser For at kunne navigere os gennem et udviklingsprojekt skalvi have overblik over hvem der har interesser i vores projekt. - Forstå deres mål og succeskriterier - Være forberedt på modstand, kritik, etc. - Lave forventningsafstemning - Vælge metoder og værktøjer - Planlægge inddragelse etc.

  21. Interessentanalyse - fremgangsmåde • Identifikation af mulige interessenterAktører som deltager, leverer, bruger resultatet eller tager vigtige beslutninger ift. projektet • Beskriv deres position ift. projektetHvad og hvordan berører projektet, forståelse for projektet, indstilling, indflydelse, cost / benefit, aktivitet og deltagelse • Analyse af mulige interessekonflikter og –sammenfaldVurdering af konflikter og interesser, valg af metoder, organisering, involvering af interessenter etc.

  22. Interessentanalyse - hjælpeskema

  23. Opsamling 10 timers oplæg og øvelser på én slide ;-) • Udvikling af systemer er komplekst og usikkert • Software er usynligt og svært at tale om • Der er behov for formalisering, styring, samarbejde og kommunikation • Både processer og produkter i systemudvikling • Mange tilgange og metoder til håndtering af kompleksiteten • IT-projekter i organisationer er ofte forandringsprojekter • Der er mange og meget forskellige interessenter

  24. Opgave 4 - i grupper Firmaet Eurest leverer kantineydelsen til ITU. ITUs ledelse har besluttet sig for at udvikle et web-baseret system, via hvilketansatte, studerende, eventarrangører, etc. kan bestille mad og drikke til forskellige typer af møder, arrangementer mv. som foregår på ITU. Man skal kunne se priser på standardvarer, indhente tilbud på større arrangementer osv. Det er vigtigt, at systemet sikrer, at regningerne sendes til bestilleren, og at det klart hvilken bestilling det drejer sig om, og hvor den skal konteres. Lav en interessentanalyse som Mikkelsen & Riis foreslår den. Hvis der er tid så diskutér de enkelte interesserenter ved brug af rubriceringenforeslået på s. 263. Husk altid Mikkelsen & Riis’ råd om at arbejde med facts og undgå formodninger og forhåndsopfattelser!! Men det er ok at bruge fantasien i denne opgave ;-)

More Related