System Analysis and Design Intro til kursus
Dagsplan 10-10.30 Introduktion 10.40 - 11.30 Systemdefinering - læring, kurset, ressourcer - systemudvikling, objektorienteret analyse og design > 10.40 - 11.30 Systemdefinering 12.00 – 15.30 Øvelser: Systemdefinering - beskriv situationen - udforsk ideer - systemet - systemdefinitionen
Læringsmål for forelæsningen Kende og forstå kursets formål Kende de praktiske detaljer Have erkendt dit ansvar for din læring i dette kursus – og overvejer aktivt hvordan det bedst sker Have dannet dig en mening om hvad systemudvikling er Have dannet dig en mening om hvad objektorienteret analyse og design er
Læring ”Læring må forstås som enhver nogenlunde varig ændring af menneskelige kapaciteter, der ikke er forårsaget af biologisk modning eller aldring” ”Man lærer ved at mentalt at opbygge og stadig videreudvikle og omstrukturere sine egne kundskaber, færdigheder, forståelser og måder at forholde sig på” ”Læring må forstås som en aktiv proces, som den lærende selv gennemfører ved at omsætte impulser fra sit samspil med omverden i en tilegnelsesproces, hvorigennem de nye impulser relateres til det, der tidligere er lært” Samspil med omgivelserne individuel tilegnelse og bearbejdelse
Læringsstile Aktiv Sansende Visuel Sekventiel Refleksiv Intuitiv Verbal Global 75% Lad os prøve det Lad os tænke over det 65% Fokus på input fra sanser Fokus på det ubevidste 87% Vis mig hvordan Forklar mig hvordan 44% Forstår en ting af gangen Forstår gennem at få overblik
Læringsressourcer Kurset Forelæsning Aktiv: fremlægge, diskutere, bidrage til eksemplerne Refleksiv: Tage noter, tænke, kigge i bogen, lytte Visuel og verbalt Globalt (overblik og opsamling) Litteratur, slides og andre materialer Aktiv: slå op, afprøv teknikker og ideer, diskuter, Refleksiv: læs, noter, tænk, tegn mindmaps, Visuel: figurer Sekventiel: bogen, slides Global: slides Øvelser Aktiv: Små øvelser i læs og forstå, Lave projekt, Spøge (vejleder, hjælpelærere og hinanden) Refleksiv: hjemmearbejde /forberedelse/efterbrænder Projektet, konsultationer, systemmesser og review Alle muligheder, men brug dem bevidst Samle trådene til overblik Øve sig til detalje viden Sjov øger motivationen Diskutere øger dybden i indlæringen Afprøve teori Spørge vejledere og kursus holdere – samspil med ”eksperter” Suppleringsgruppe M.M.M…..
Kurset Omfang: 3 moduler Forudsætninger: Grundlæggende kvalifikationer i programmering Prøve: Evalueres gennem projektet Formål: ”opnå erfaring med at analysere, designe, programmere og afprøve et edb-system, som understøtter arbejdet i en organisation” = SYSTEMUDVIKLING
Kurset Holder ideen til løsning? Holder løsningen? Iterativ proces Dokumenteret produkt Projektarbejdet <> kursusarbejdet Vejledere <> kursusholder (mig:) Reflektion / læring
Folk: Underviser Gitte Tjørnehøj gtj@cs.aau.dk /rum 5.2.58 Hjælpelærer Lise Heeager liseh@cs.aau.dk /rum 5.2.34
Tid Øvelse Engagement Forklaring Opmuntring Feedback Udfordringer Sjov Iagttagelse Ros Hjælp Træning
Systemudvikling En arbejdsproces der fører til at et IT system kan tages i anvendelse Proces: noget der gøres over tid (beskrives som aktiviteter) System: noget vi vælger at se som en helhed IT system: En samling ideer, kode og teknologi der kan køres til gavn for nogle brugere Anvendelse: Et IT system er ikke noget … hvis ikke det bruges. Det er jo ikke kunst vi laver… Først: hvad er der brug for ? Og hvem har brug for det? Dernæst: Hvordan kunne er it system, der opfylder de behov se ud? Dernæst: Hvordan skal det bygges op? Dernæst: Byg det Dernæst: Prøv det Slut: Brug det
Systemudvikling
Systemudvikling Hjælp til systemudvikling Processer: …. Metoder: foreskriver aktiviteter og række følge for en større sammenhængende opgave (madopskrifter) Teknikker: måder at løse mindre delproblemer på (udrulning af dej) Værktøjer: UML, CASE, mønstre, programmeringsomgivelser, papir, … (kniv, kagerulle)
Pause
Metoders betydning Forkorter oplæringstiden for nye Formidler erfaring Letter samarbejdet fordi processen er forholdsvis veldefineret En god metode kan dog ikke kompensere for: Manglende kompetence hos udviklere og brugere Dårlige vilkår for analyse og design arbejdet
Om strukturen i OOA&D Et IT system til at administrere, overvåge eller styre en dynamisk virkelighed Hvilken del af virkeligheden er det at systemet skal bruges til at administrere, overvåge eller styre? (p.o.) Hvordan skal systemet hjælpe dem der administrerer, overvåger eller styrer? (a.o.) Hvordan skal edb-systemets arkitektur designes, for at man kan realisere kravene på den tekniske platform? (arkitektur) – suppleres med anden litteratur Hvilke komponenter er nødvendige for at realisere kravene? (komponenter) – suppleres med anden litteratur
Edb-systemets omgivelser og dele Systemvalget går ud på at fastlægge disse aspekter for en konkret edb-løsning
Aktiviteter i Systemvalg Skab forankring for Systemdefinition: En kortfattet og præcis beskrivelse af en IT-løsning udtrykt i naturligt sprog.
Beskriv situationen i et rigt billede Elementer Proces Struktur Problemer Fokus på forandring i situation Fokus på stabil situation
Aktiviteter i Systemvalg Skab forankring for Systemdefinition: En kortfattet og præcis beskrivelse af en IT-løsning udtrykt i naturligt sprog.
Skab nye ideer Studér et eksisterende Se på standardsystemer Forbilleder Eksempel: Forbillede for et nyt tekstbehandlingssystem kunne være word, wordperfect, papir og blyant (i brug) Studér et eksisterende Se på standardsystemer Metaforer Eksempel: En metaforer for et bibliotekssystem kunne være et lager en butik en kunstudstilling Eksperimenter med prototyper: Planlægning Udvikling Forberedelse Afprøvning Sammenfatning
Aktiviteter i Systemvalg Skab forankring for Systemdefinition: En kortfattet og præcis beskrivelse af en IT-løsning udtrykt i naturligt sprog.
Systemdefinition (BATOFF) Betingelser: De betingelser, som systemets videre udvikling og brug er underlagt. Anvendelsesområde: En eller flere organisatoriske enheders administration, styring eller overvågning af et problemområde. Teknologi: Den teknologi, som systemet udvikles til og ved hjælp af. Objekter: En kommende brugers opfattelse af et problemområde. Funktionalitet: De hovedfunktioner, som systemet tilbyder til understøttelse af arbejdsopgaver i anvendelsesområdet. Filosofi: Den filosofi, der ligger bag edb-systemet. B Frivillig arbejdskraft med relativt stor entusiasme og stærkt varierende admini- strativ erfaring. Kan udvikles selv om der er modstridende eller manglende krav. A Ledelsen af fodboldklubben, trænerne og forældrene T Billig PC-platform med gængse værk- tøjer. O Spillere, kampe, hold, facilliteter, materialer F Støtte til planlægning af et holds aktiviteter og til kommunikationen til forældre og ledelse. F Planlægnings- og kommunikations værktøj
Definér systemer Systemdefinition 1: Et edb-system, der bruges i arbejdet med planlægningen af et fodboldholds aktiviteter i løbet af sæsonnen.med hovedvægten på kamp og træningsplaner. Systemet skal primært være et planlægningsværktøj værktøj, men sekundært også et kommunikationsmedium til brug for trænere, forældre og klubbens ledelse. Systemet skal baseres på en billig PC med gængse værktøjer. Der skal i øvrigt tages hensyn til, at systemet skal kunne fungere i forskellige typer af miljøer præget af frivillig arbejdskraft med relativt stor entusiasme, men stærkt varierende PC erfaring System 1 Filosofi: støtte Funktionalitet: planlægge Betingelser: De betingelser, som systemets videre udvikling og brug er underlagt. Anvendelsesområde: En eller flere organisatoriske enheders administration, styring eller overvågning af et problemområde. Teknologi: Den teknologi, som systemet udvikles til og ved hjælp af. Objekter: En kommende brugers opfattelse af et problemområde. Funktionalitet: De hovedfunktioner, som systemet tilbyder til understøttelse af arbejdsopgaver i anvendelsesområdet. Filosofi: Den filosofi, der ligger bag edb-systemet. Systemdefinition 2: Et edb-system, der bruges i styring af et fodboldhold gennem registrering af medlemmer og deres økonomiske og andre mellemværende med klubben. Fakturering, automatisk kamplanlægning og andre ressuorcefordelinger skal være mulig. Styringen skal være simpel at lære, idet klubben benytter ulønnet og utrænet arbejdskraft System 2 Filosofi: automatisk planlægning Funktionalitet: registrere
Valg af system Et system er en helhedsopfattelse Systemer fastlægges i systemdefinitioner Der skal vælges ét system Argumentation baseret på pålidelig information Det er brugernes valg Systemudviklerne organiserer og støtter
Oversigt over foranalyse
Foranalysens formål At systemudviklere og brugere får en nuanceret forståelse af situationen At fastlægge de overordnede egenskaber ved det nye system At overveje alternative løsningsmuligheder mens det er billigt at ændre kurs At afstikke rammerne for det efterfølgende analyse og design arbejde At muliggøre en vurdering af omkostninger og fordele ved at udvikle systemet At danne grundlag for beslutningen om hvorvidt projektet skal fortsætte – og indgå endelig aftale
Foranalysens kendetegn Varighed: Fra få uger til flere måneder Fokus på opbygning af samarbejdsrelationer, indlevelse, innovation og ejerskab Er det fundament resten af projektet bygger på. En forkert beslutning vil typisk være dyr at lave om senere Meget afhængig af at det er de ”rigtige” brugere / udviklere der deltager Vil vise nødvendige tilpasninger af metoden
Foranalyse: Risici Kun blik for én løsning For stor detalje – for lidt detalje No problem attitude hos udviklerne Ingen fremdrift – svær at afslutte Manglende forståelse for konsekvenserne af de valg der træffes Udviklerne står som ejere af systemet – ikke kunden og brugerne Svært at vurdere omkostningerne ved at udvikle systemet