Udvikling – del II.

Slides:



Advertisements
Lignende præsentationer
Lysbilledserien (nr. 3 af 3) indeholder blandede korte stræktyper: -bingostræk -grovorienteringsstræk -finorienteringsstræk -transportstræk Find evt. algoritmen.
Advertisements

Automatiseret GUI-test Lars Kjølholm Testnet maj 2009.
Anskaffelse af ny teknologi
Katalog over nationale standarder på sundhedsområdet.
Et projekt til undersøgelse af udviklingsmetodologi.
KONFLIKTHÅNDTERING Velkommen! Dias.
©Jenny Bohr – Til underviserne Voksne beskriver og italesætter ofte sig selv med de ord, som voksne brugte om dem, da de var børn. Mange.
13 SEPTEMBER 2012 TIPS OG TRICKS OM KOMMUNEPLANTILLÆG 1 Brugerseminar 2012 Tips og tricks om kommuneplantillæg Hanne Klit Johansen, Byplanlægger, afdeling.
Teststrategi Engrosmodellen
Fælles kompetenceudviklingsdag 25. september 2012, CABI
©Jenny Bohr – Til underviserne Her er valgt at vise filmen ”et liv i kaos”. Hvis kursisterne er unge, kan man vælge en anden film eks. ”det.
BUREAU FOR MARKEDSANALYSER Din genvej til viden, indsigt & overblik Man får et hurtigt overblik ved at kigge på farverne. De grønne farver viser, at her.
Modul 1 - Processer.
Arkitektur - data.
Usability og interaktionsdesign i en mindre IT virksomhed Infinit 13
Dahlbom & Mathiassen Computers In Context 9. Power
Arbejds- og Udviklingsgruppe Udviklingsseminar 1
Iterativ udvikling og UP
Et projekt til undersøgelse af udviklingsmetodologi.
Formularer (Access, del 3)
Samarbejde bibliotek og uddannelse – et bud på hvordan
Digitalisering i Praktiken Workshops den 9. februar 2007
Trivselsundersøgelse og ledelsesevaluering
Udvikling og styring af en virksomhed
Et projekt til undersøgelse af udviklingsmetodologi.
IT-Strategi.
System Udvikling Kilde: Per S Laursen.
Felter og nøgle-felter (databaser, del 6)
Problemliste Listen laves vilkårligt – herefter udvælges det problem der har 1. prioritet
Konsensusprocessen.
Virksomheder - definition
SEO PÅ AU.
Velkommen til E-business
Økonometri 1: Specifikation og dataproblemer1 Økonometri 1 Specifikation, og dataproblemer 4. november 2005.
Tietgen Skolen Kvalitet og kvalitetssikring Review Test.
1 Lektion 18: Priser i en åben økonomi 1.Økonomiske nyheder 2.Repetition 3.Dagens pensum 4.Hvad kan I få eksamensspørgsmål i? 5.Næste lektion 6.Tilbagemelding.
Introduktion til Access (Access, del 1)
Validering af data (Access, del 7)
Opslagsfelter (Access, del 6). RHS – Informationsteknologi 2 Udgangspunkt Vi er ofte i den situation, at valg af en type for et felt ikke begrænser vores.
Oprettelse af tabeller (Access, del 2)
Rapporter (Access, del 5)
Formulering af strategi ud fra analyse og ”Scenarier”
Microsoft Dynamics – synergi mellem forretningsområder Susanne Christoph Dynamics Sales Lead
1 Dagens gang Repeter systemvalg Gennemgang af klasser og strukturer (kap. 3+4 OOA+D) Tavle opgave Gruppe opgave til næste gang.
Arkitektur - software. RHS - Informationsteknologi 2 Software-arkitektur Formålet med software-arkitekturen er at definere en software-”platform”, som.
Trivselsundersøgelse og ledelsesevaluering Anæstesiologisk Afdeling Flere ledere
Et projekt til undersøgelse af udviklingsmetodologi.
1 Algoritme til at løse knude P-center problemet Algoritmen brugte set covering problemet Virker derfor kun til knude problemer Vi vil alligevel bruge.
Ældre, IT og læring. Ældre tæmmer teknologien..
Økonometri 1: Specifikation og dataproblemer1 Økonometri 1 Specifikation, og dataproblemer 7. april 2003.
Nyt Fælles Bibliotekssystem
Statens Center for Kompetence- og Kvalitetsudvikling SCKK Konsensusprocessen.
Context- og flow-diagrammer (databaser, del 3)
Globaliseringsredegørelsen 24.mar. 14 Figurer fra Danmark tiltrækker for få udenlandske investeringer i Sådan ligger landet
Udvikling – del II. 2 Håndtering af krav Uanset hvordan vi organiserer udviklingen af et SW-produkt, er håndtering af krav altid kritisk Dårlig håndtering.
Livsstilsændringer i Flok. 2 Aabenraa kommune 6000 medarbejdere Ca. 450 arbejdssteder MED. System med HMU som beslutningsorgan.
Rapporter (Access, del 5). RHS – Informationsteknologi – Udgangspunkt Vi har oprettet en database Vi har defineret en eller flere tabeller, og.
1 USB Gennemgang af installering af USB driver til ICT. Er fortaget på Windows XP.
Introduktion til databaser (databaser, del 1)
Opslagsfelter (Access, del 6). RHS – Informationsteknologi – Udgangspunkt Vi er ofte i den situation, at valg af en type for et felt ikke begrænser.
Introduktion til Access (Access, del 1). RHS – Informationsteknologi – Fra design til udvikling Vi ved nu, hvordan vi finder et design for en database,
Økonometri 1: Specifikation og dataproblemer1 Økonometri 1 Specifikation, og dataproblemer 9. november 2004.
Økonometri 1: Specifikation og dataproblemer1 Økonometri 1 Specifikation og dataproblemer 2. november 2004.
Systematisk problemløsning i kriminalitetsbekæmpende funktioner
Oprettelse af tabeller (Access, del 2)
Økonometri 1: Dummy variable1 Økonometri 1 Dummy variable 24. marts 2003.
1 Læringsstil, samt Projektplanlægning og projektstyring Mål: At i får kendskab til jeres egen læringsstil. At I får et grundlæggende kendskab til projektplanlægning.
Definition Kriterier Design og evaluering
Jan Christiansen Nyborg Gymnasium
Design af interaktion.
Præsentationens transcript:

Udvikling – del II

Håndtering af krav Uanset hvordan vi organiserer udviklingen af et SW-produkt, er håndtering af krav altid kritisk Dårlig håndtering af krav er den hyppigste årsag til fejlslagne projekter Alle interessenter i et projekt vil typisk stille krav til det – i forskellige former

Håndtering af krav Hvordan opstår krav? Fra toppen (ledelse, forretningsmulighed) Fra bunden (ændring af eksisterende system, uhensigtsmæssige procedurer, med videre…) Men som regel vil der være nogle krav, som stammer fra projektets ”sponsor” 3

Forretningskrav Dem som sponserer projektet, vil stort set altid have krav til projektet Typisk ”høj-niveau” krav Programmet skal give forbedret kundeservice Programmet skal spare 5 millioner om året Programmet skal kunne planlægge ruter for lastbiler, under hensyntagen til aktuel trafik-situation (for det kan vores konkurrenter ikke)

Forretningskrav Forretningskrav er som regel ikke-tekniske, men mere orienteret mod det forretningsproblem, der skal løses Forretningskrav er sjældent detaljerede nok til at danne basis for udvikling 5

Bruger-krav Ofte vil brugerne af systemet have mere konkrete og detaljerede krav Man skal kunne indtaste data hørende til denne situation i et enkelt skærmbillede Hvis programmet går ned, skal man ved opstart kunne starte fra hvor man var før Der skal være en vejledning til hvert felt, i en pop-up boks som fremkommer når man markerer feltet

Formulering af krav Ligemeget hvor krav kommer fra, skal de kunne formuleres objektivt! Hvorfor? Man kan ikke teste om et krav er opfyldt, hvis det ikke er formuleret objektivt Ethvert krav bør kunne mod-svares af et test-scenarie

Formulering af krav Hvad synes I om disse krav? Programmet skal være hurtigt Programmet skal være nemt at bruge Programmet skal give os en konkur-rencemæssig fordel Programmet skal være bedre end det vi har nu Programmet skal kunne køre på en PC med denne specifikation… Programmet skal bruge ny teknologi

Subjektivitet er vores fjende Ethvert krav som er subjektivt formuleret, kan i tilfælde af kon-flikt blive genstand for fortolkning Objektive krav kan testes entydigt og endegyldigt

Subjektivitet er vores fjende Er bestemt ikke let at omformulere krav til objektiv form Programmet skal være let at bruge -> 90 % af vores brugere skal kunne indtaste oplysninger hørende til en sag indenfor 90 sekunder, efter 4 timers brug af programmet Kan være en svær – men også særdeles oplysende – øvelse for en kunde 10

V-modellen Vi antager, at krav falder i visse ”niveauer” Forretningskrav Brugerkrav Tekniske krav Hvert krav modsvares af en tilhørende test, som skal undersøge hvorvidt kravet er opfyldt Test-drevet udvikling

V-modellen

…to the extreme I princippet burde vi kunne definere en test-case for hvert eneste krav Vi burde så kunne lave et program, som automatisk tester om alle test-cases er opfyldt Hvis alle test-cases er opfyldt, er program-met klar til levering til kunden! eXtreme Programming (XP)

eXtreme Programming En udviklingsmetode, som i ekstrem grad tager udgangspunkt i test Skal opfattes som et ”modsvar” til den traditionelle vandfalds-metode Alle elementer i projektet – krav, design, test, programkode, med videre – er konstant i bevægelse

eXtreme Programming Hovedtræk i XP: Vi kan definere et fuldt sæt af test-cases for vores produkt, på alle niveauer Er test-cases opfyldt, er produktet færdigt Test-cases defineres før programmet udvikles Meget tæt samarbejde mellem kunde og leverandør Projekt køres i korte ”iterationer”, og kan revideres efter hver iteration 15

eXtreme Programming Fordele ved XP Stærkt kunde-engagement Meget fleksibelt mht. krav Udviklernes mening respekteres Tag det vigtigste først Løbende evaluering – skal vi fortsætte?

eXtreme Programming Ulemper ved XP Kan være en meget ”alternativ” måde at arbejde med en leverandør på for kunden Realistisk? Kan man på forhånd definere test-cases for ”alt”? Jura – hvem har ansvaret hvis det går galt? 17

Styr på krav, og hvad så…? Nej, vi har aldrig bare ”styr på krav”… Men vi har altid et øjebliksbillede af krav, og det er altid vores arbejdsgrundlag Ud fra krav udspringer ”designs” Brugergrænseflade Databaser System-design Detaljeret design

Brugergrænseflade (GUI) Krav til GUI er næsten altid bruger-drevet Hvordan laver man en god GUI? Involvér brugeren! Hvem andre end brugeren kan afgøre, om en GUI er god…?

Brugergrænseflade (GUI) Hvordan kan brugeren blive involveret? Lav prototyper af GUI, gerne low-tech Samtaler med kerne-brugere Usability-studies Mange systemer er faldet på at være ubrugelige i praksis…. 20

Prototyper En prototype er i denne sammenhæng en slags skitse til det færdige program Formål er primært at kunne vise brugerne noget konkret i løbet af udviklingsforløbet Brugerne er som regel mest interesserede i GUI, ikke i hvad der sker under over-fladen Sjældent forretningskrav til GUI

Prototyper Ikke-funktionel prototype: Kun en GUI-skal uden funktionalitet, f.eks lavet i Power-Point eller på papir. Evolutionær prototype: Der bygges mere og mere funktionalitet på prototypen, alt efter respons på tidligere prototyper Pilot-prototype: Hvis systemet skal installeres på mange arbejdspladsser

Farer ved prototyper Prototyper er gode, men… Brug for klar afstemning af forventninger mellem kunde og leverandør (”det virker jo ikke…?”) Hvordan håndteres kundens ønsker om ændringer? Hvem tager den endelige beslutning? Hvem skal betale?

System-design Hvad er ”system-design”? Design på et overordnet niveau Hvad er den tekniske platform? Hvilken teknologi baserer vi løsningen på? Integration til anden IT hos kunden? Sjældent et forretningskrav, men kan være dikteret af forhold hos kunden (tradition, eksisterende platform, med videre)

Detaljeret design Detaljeret design er mest en problem-stilling for dem som udvikler løsningen Måske kan dele af løsningen baseres på et allerede eksisterende koncept Omhandler også udvikling af test på dette niveau, f.eks enhedstest Ikke et niveau som involverer kunden