Softwareudvikling-på-tværs 2007-1 Konferencen foregår på Hotel Scandic Copenhagen, Vester Søgade 6, 1601 København (lige ved Planetariet). Hermed forårets buket af spændende indlæg om de emner der interesserer danske softwarefolk netop nu. Denne gang er der fokus på usability, test, konfigurationsstyring, agile metoder, UML 2.1, kommunikation og nye teknologier. Alle de blandede bolsjer som på to kompakte dage giver et overblik over tendenserne lige nu. Og du kan naturligvis frit zigzagge mellem de to spor om eftermiddagen. Den halvårlige Softwareudvikling-på-tværs henvender sig til softwareudviklere, web-udviklere, it-udviklere, systemudviklere, softwarechefer, udviklingschefer, metodefolk, kvalitetsfolk og projektledere. Konferencen holdes nu for 18. år i træk og har efterhånden udviklet sig til en institution blandt danske it-folk. På disse konferencer er der nemlig livlig diskussion og erfaringsudveksling, og deltagerne får altid ny viden med hjem. Dag 1, ondag den 13. juni 2007 09.45-10.00 Kaffe 10.00-10.10 Velkomst og introduktion til konferencen Stephen Biering-Sørensen, Teknologisk Institut, IT-Udvikling 10.10-11.00 1. Usability: Hvad gør de bedste bedre? Rolf Molich, DialogDesign 11.10-12.00 2. Agile testing Poul Staal Vinje, agile-metoder.dk 12.00-13.00 Frokost 13.00-13.50 3. Erfaringer med agile metoder hos WM-data projektleder Dorte Havshøj SPOR 1 SPOR 2 14.00-14.50 4. Erfaringer med Service Orienteret Arkitektur adm. direktør Niels Henrik Sodemann, Ementor Danmark 5. Ny UI teknologi og værktøjer på Windows ISV Developer Evangelist, Nikolaj Winnes, Microsoft Danmark 14.50-15.15 Kaffe 15.15-16.05 6. Kommunikation i projektgruppen seniorkonsulent Birthe Wordenskjold, Teknologisk Institut, IT-Udvikling 16.10-17.00 8. Kommunikation i projektgruppen (fortsat) 7. Python - det nye scriptsprog seniorkonsulent Carsten Jørgensen, DELTA 9. Maskinoversættelse lektor Daniel Hardt, Copenhagen Business School, Dept. of Computational Linguistics
Dag 2, torsdag den 14. juni 2007: 09.00-09.50 09.50-10.15 10.15-11.05 11.10-12.00 12.00-13.00 10. Forbedring af udviklingsprocessen med ProImprove Henrik Hesselberg, ProConsulting A/S Kaffe 11. Konfigurationsstyring er ikke bare noget man får et værktøj til at gøre M.Sc.C.E. Anne Mette Jonassen Hass, DELTA 12. Modellering med den nye version af UML chefkonsulent Flemming Hansen og seniorkonsulent John W. Christensen, Teknologisk Institut, IT-Udvikling Frokost SPOR 1 SPOR 2 13.00-13.50 13.55-14.45 14.45-15.10 15.10-16.00 13. Effektiv håndtering og analyse af MASSIVE datasæt professor Lars Arge, leder af Center for Massive Data Algorithmics (MADALGO), Aarhus Universitet 15. Find de kritiske fejl før systemet sættes i drift lektor, Ph.D. Lars Michael Kristensen, Datalogisk Institut, Aarhus Universitet Kaffe 17. Unit test Software Test Manager Stefan H. Skov, Danfoss Drives A/S 14. Modellering med den nye version af UML for viderekomne chefkonsulent Flemming Hansen og seniorkonsulent John W. Christensen, Teknologisk Institut, IT-Udvikling 16. OOD vs. Testability Senior Consultant Mark Seemann, Microsoft Danmark 18. Nytænkning i udviklingsprocesserne projektleder Casper Littrup, Teknologisk Institut, Kreativitet og ideudvikling Ret til ændringer forbeholdes.
Dag 1, onsdag den 13. juni 2007 1. Usability: Hvad gør de bedste bedre? ved Rolf Molich, DialogDesign Efterhånden findes der en række bevisligt velfungerende brugergrænseflader, f.eks. Google, NewYorkTimes.com, Landsend.com, telmore.dk, dba.dk og en række netbanker. Rolf vil forklare hvorfor de fungerer godt, og hvad du bør lære af dem både hvad angår design og metode. Rolf vil også komme ind på hvorfor det er let at gøre det svært, men svært at gøre det let. 2. Agile testing ved Poul Staal Vinje, agile-metoder.dk I den agile verden er testen knyttet uløseligt sammen med selve udviklingen. Testfaserne fra vandfaldsmodellen kendes simpelthen ikke, fordi udvikling og test er to sider af samme sag. Dette indlæg vil afdække de forskellige discipliner inden for agile testing, herunder Test Driven Development og automatisering af test. Også testernes nye rolle diskuteres. Poul Staal Vinje er kendt i brede kredse for sine bøger om bl.a. softwaretest. 3. Erfaringer med agile metoder hos WM-data ved projektleder Dorte Havshøj, WM-data A/S WM-data introducerede i foråret 2004 agile udviklingsmetoder på udviklingen af en ny generation af en studieadministrativ løsning. Gennem de forgange 3 år har projektet gjort sine erfaringer på godt og ondt med det at skifte udviklingsmetode fra en vandfaldsbaseret model til en dynamisk/iterativ model og fra fastprisaftaler til tidsbokse. 4. Erfaringer med Service Orienteret Arkitektur ved adm. direktør Niels Henrik Sodemann, Ementor Danmark SOA er som bekendt et sæt af principper i form af løse koblinger, åbne standarder, procesorientering med videre for at skabe interoperabilitet mellem forskellige it-systemer uanset platform og geografisk placering. Med udgangspunkt i et konkret og meget visionært system til den offentlige sektor fortælles om erfaringerne med at anvende SOA som arkitekturprincip for opbygning af en it-arkitektur. Der fortælles også om erfaringerne med opbygning af en enterprise arkitektur, og endelig fortælles om hvordan selve processen kan dokumenteres. 5. Ny UI teknologi og værktøjer på Windows ved ISV Developer Evangelist Nikolaj Winnes, Microsoft Danmark For at støtte op om de mange nye UI tiltag i Windows Vista og Office 2007, ser vi i dette indlæg på de nye teknologier og værktøjer der er til rådighed for at bygge disse nye brugeroplevelser. Vi gennemgår muligheder og opbygning af Windows Presentation Foundation, en af de nye teknologier i Windows Vista. På værktøjssiden kigger vi på Expression Blend, et værktøj der giver designere og udviklere mulighed for at designe brugergrænseflader baseret på Windows Presentation Foundation. Til sidst tager vi en snak om understøttelse af Windows Presentation Foundation i Visual Studio, og hvordan vi arbejder sammen, designer og udvikler. 6. Kommunikation i projektgruppen ved seniorkonsulent Birthe Wordenskjold, Teknologisk Institut, IT-Udvikling Kommunikation på alle planer er vitalt for projektets succes, så det er vel rimeligt at vi også prøver at blive endnu bedre til at kommunikere. Her vil vi sætte fokus på den gode kommunikation og hvordan den skabes. Hvordan gøres budskabet helt klart, hvad gør man hvis modtageren ikke er modtagelig og hvordan sikres det gode samarbejde rent kommunikativt? Birthe Wordenskjold er master i erhvervskommunikation og har i mange år undervist i kommunikation. Bemærk at dette er et dobbeltindlæg. 7. Python - det nye scriptsprog ved seniorkonsulent Carsten Jørgensen, DELTA Hvad gør et sprog så populært på så kort tid, som tilfældet har været med Python? Er Python ved at
erstatte de meget udbredte sprog Java og Perl? Sproget egner sig både til ganske små scripts og til store applikationer - samtidigt med at det er meget let at lære. Carsten Jørgensen mener selv at sprogets store popularitet skyldes at programmering i Python er lynhurtigt. Indlægget vil gennemgå de vigtigste konstruktioner i Python, så du (næsten) vil kunne programmere i det, når du kommer hjem. 8. Kommunikation i projektgruppen (fortsat) 9. Maskinoversættelse ved lektor Daniel Hardt, Copenhagen Business School, Dept. of Computational Linguistics I dag er det ikke længere en utopi at få computere til at oversætte fra et sprog til et andet. Det er imidlertid ikke helt simpelt, og den seneste forskning inddrager statistisk viden om ordforekomster i forskellige typer af tekster. Teknologien er nu så moden at maskinel oversættelse står foran et gennembrud. Daniel Hardt, som forsker i sprogvidenskab, vil i dette indlæg fortælle om mekanismerne bag moderne maskinoversættelse. Dag 2, torsdag den 14. juni 2007 10. Forbedring af udviklingsprocessen med ProImprove ved Henrik Hesselberg, ProConsulting A/S ProImprove er en model for at gennemføre procesforbedringer i såvel en virksomhed som i det enkelte projekt. Den består af 5 faser som dækker forløbet lige fra den indledende modenhedsvurdering over tilpasning af processer til forankringen i organisationen. I indlægget gennemgås modellens elementer, og der fortælles om erfaringerne med brug af modellen. Der gives eksempler på de steder hvor procesforbedring ofte løber ind i problemer - samt hvad man kan gøre ved dem. 11. Konfigurationsstyring er ikke bare noget man får et værktøj til at gøre ved M.Sc.C.E. Anne Mette Jonassen Hass, DELTA Uanset hvor bredt man går ud i kanterne og kringelkrogene i softwareudvikling kommer man ikke uden om konfigurationsstyring. Det er en støtteproces for alt andet, der foregår under udviklingen og under brugen af ethvert produkt. Konfigurationsstyring er utrolig vigtigt og nok den aktivitet, der kan bidrage til flest besparelser i en organisation, både mht. tid, penge og frustrationer. Dets vigtighed afspejles også i den betydning konfigurationsstyring har i modenhedsmodellerne, ikke mindst i CMMI, hvor det er umuligt at blive vurderet til niveau 2, hvis man ikke har styr på hvad konfigurationsstyring er og kan bruge det som støtteproces for alle de andre processer, der arbejdes med. Med udgangspunkt i plakaten "Configuration Management at a Glance - or Two" fortælles hvorfor man skal indføre konfigurationsstyring og hvad det egentlig er for noget. 12. Modellering med den nye version af UML ved chefkonsulent Flemming Hansen og seniorkonsulent John W. Christensen, Teknologisk Institut, IT-Udvikling Den nye version af modelleringssproget UML (Unified Modelling Language) rummer en række spændende elementer som vil blive gennemgået i dette indlæg. Indlægget er relevant for alle som vil kunne læse og forstå UML-diagrammer, eller som vil vide hvordan UML kan bruges til at modellere komplekse systemsammenhænge. Indlægget præsenterer de nye elementer på overordnet niveau og efterfølges af et dyberegående indlæg for dem som også skal forfatte UML-diagrammer. 13. Effektiv håndtering og analyse af MASSIVE datasæt ved professor Lars Arge, leder af Center for Massive Data Algorithmics (MADALGO), Aarhus Universitet De seneste års dramatisk forbedrede muligheder for at opsamle, lagre, og analysere massive datasæt af høj kvalitet har resulteret i mange nye applikationer, og ledt til mange nye videnskabelige
resultater. Desværre har de stadig større datasæt også ledt til effektivitetsproblemer. Disse problemer udspringer ofte af at de algoritmer der bruges i nuværende applikationer ikke tager højde for moderne computeres hierarkisk opbyggede hukommelse. I dette foredrag vil Lars Arge give eksempler på applikationsområder, hvor meget store datamængder rutinemæssigt bliver opsamlet, og beskrive hvorfor der opstår effektivitetsproblemer når der ikke tages hensyn til hierarkisk hukommelse i håndteringen af disse store datasæt. Han vil også beskrive hvordan nye algoritmiske metoder kan lede til enorme køretidsforbedringer. Endelig vil han fortælle om motivationen bag og målsætningerne for det netop oprettede MADALGO center. 14. Modellering med den nye version af UML for viderekomne ved chefkonsulent Flemming Hansen og seniorkonsulent John W. Christensen, Teknologisk Institut, IT-Udvikling Dette er en fortsættelse af det tidligere indlæg, og her gås der i dybden med de nye sprogelementer. Endvidere gives der eksempler på både forretningsmodellering og modellering af embeddede systemer. Der fortælles om modeldrevet udvikling, om sammenhængen mellem UML og SOA samt om nogle af de værktøjer der kan anvendes til modellering. 15. Find de kritiske fejl før systemet sættes i drift ved lektor, Ph.D. Lars Michael Kristensen, Datalogisk Institut, Aarhus Universitet Det er de fleste softwarefolks drøm at lave fejlfrie programmer, men er det ikke blot ren utopi? Lars Michael Kristensen - som fornylig modtog Eliteforskerprisen - arbejder med at lave computermodeller som kan forudsige systemers opførsel før de sættes i drift. Det bruges bl.a. på datakommunikation og protokoller, som helst skal virke efter hensigten. I nogle tilfælde kan man ligefrem sætte et garantistempel på at computersystemet virker 100% efter hensigten. 16. OOD vs. Testability ved Senior Consultant Mark Seemann, Microsoft Danmark Objektorienteret design har i årevis været det førende paradigme inden for API design, men i den seneste tid har agile principper, og herunder testability, vundet mere og mere frem. Hvor OO typisk foreskriver indkapsling og afskærmning, trækker testability i den modsatte retning mod API'er, der måske er mere åbne end godt er. Denne diskrepans kan dog adresseres, så man opnår et design, der er både testbart og opfylder almindeligt anerkendte principper for objektorientering. I dette indlæg skitseres problemstillingen og mulige løsninger gennem eksempler i C#. 17. Unit Test ved Software Test Manager Stefan H. Skov, Danfoss Drives A/S Unit testen, dvs. den test som udviklerne selv laver af deres moduler, er ikke så enkel at få styr på, som man skulle tro. I dette indlæg fortælles om erfaringerne med at indføre systematisk unit test på embedded kode, herunder den modstand mod forandring som altid følger med sådanne tiltag. Men også om hvilke anbefalinger til hvordan man kommer i gang og hvad der skal til for at det faktisk kan lykkes at få en test som er effektiv. Endelig fortælles om udfordringerne med at outsource og hvad det får af indflydelse på selve testen. Indlægget berører også unit test af kommercielle systemer og open source-systemer. 18. Nytænkning i udviklingsprocesserne ved projektleder Casper Littrup, Teknologisk Institut, Kreativitet og ideudvikling Nytænkning i udviklingsprocesserne - ja tak, men understøtter virksomhedens og afdelingens arbejdsform de processer der leder til nye ideer. I indlægget fortælles om nogle af de typiske udfordringer som individ og teams støder på i forbindelse med at skulle nytænke. Udgangspunktet for indlægget er vores forskellige tankeprocesser i hjernen og hvorledes disse skaber muligheder og udfordringer i arbejdet med at skabe et miljø der fremmer innovation. Muligheder og udfordringer der vedrører både softwareudvikleren og lederen der er ansvarlig for udviklingsprocessen.
Priser ekskl. moms: Ikke-medlemmer: 1 dag kr. 3900,- Begge dage kr. 6300,- Medlemmer af Softwareudvikling-på-tværs: 1 dag kr. 1300,- Begge dage kr. 2100,- Pris ved samtidig indmeldelse: 1 dag kr. 2530,- Begge dage kr. 4090,- Priserne inkluderer deltagelse, forplejning og materialer, men ikke middag eller evt. overnatning. Tilmelding via: www.swtvaers.teknologisk.dk