Mönster. Ulf Cederling Växjö University Ulf.Cederling@msi.vxu.se http://www.msi.vxu.se/~ulfce. Slide 1



Relevanta dokument
Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

CHANGE WITH THE BRAIN IN MIND. Frukostseminarium 11 oktober 2018

Questionnaire for visa applicants Appendix A

Module 6: Integrals and applications

Beijer Electronics AB 2000, MA00336A,

Att fastställa krav. Annakarin Nyberg

Sara Skärhem Martin Jansson Dalarna Science Park

Module 1: Functions, Limits, Continuity

SVENSK STANDARD SS :2010

Kvalitetsarbete I Landstinget i Kalmar län. 24 oktober 2007 Eva Arvidsson

Forma komprimerat trä

Surfaces for sports areas Determination of vertical deformation. Golvmaterial Sportbeläggningar Bestämning av vertikal deformation

CONNECT- Ett engagerande nätverk! Paula Lembke Tf VD Connect Östra Sverige

SOA One Year Later and With a Business Perspective. BEA Education VNUG 2006

Byggdokument Angivning av status. Construction documents Indication of status SWEDISH STANDARDS INSTITUTE

Health café. Self help groups. Learning café. Focus on support to people with chronic diseases and their families

FÖRBERED UNDERLAG FÖR BEDÖMNING SÅ HÄR

Preschool Kindergarten

Självkörande bilar. Alvin Karlsson TE14A 9/3-2015

Designmönster, introduktion. Vad är det? Varför skall man använda mönster?

Byggritningar Ritsätt Fästelement. Construction drawings Representation of fasteners SWEDISH STANDARDS INSTITUTE

Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH


Writing with context. Att skriva med sammanhang

Libers språklåda i engelska Grab n go lessons

Lektion 3. Anteckningar

Plats för projektsymbol. Nätverket för svensk Internet- Infrastruktur

Provlektion Just Stuff B Textbook Just Stuff B Workbook

DNSSEC Våra erfarenheter

Erfarenheter från Hazop användning på programvara i Arte740. Presentation för SESAM Claes Norelöv 4Real AB

Testning som beslutsstöd

Make a speech. How to make the perfect speech. söndag 6 oktober 13

Introduktion till Entity Framework och LINQ. Källa och läs mer

Teknisk rapport SIS-TR 18:2007 Publicerad/Published: Utgåva/Edition: 1 Språk/Language: svenska/swedish ICS: ;

Urban Runoff in Denser Environments. Tom Richman, ASLA, AICP

Stort Nordiskt Vänortsmöte maj Rundabordssamtal Hållbar stadsutveckling, attraktiva städer 20 maj 2016

Service och bemötande. Torbjörn Johansson, GAF Pär Magnusson, Öjestrand GC

Isolda Purchase - EDI

Workplan Food. Spring term 2016 Year 7. Name:

Jämställd vård. Primärvårdsdelegationen

Stad + Data = Makt. Kart/GIS-dag SamGIS Skåne 6 december 2017

Föreläsning 10: Introduktion till utvärdering. Rogers et al. Kapitel 12

PRESS FÄLLKONSTRUKTION FOLDING INSTRUCTIONS

12.6 Heat equation, Wave equation

Klicka här för att ändra format

Boiler with heatpump / Värmepumpsberedare

The road to Recovery in a difficult Environment

CHEMICAL KEMIKALIER I MAT. 700 miljoner på ny miljöteknik. Rester i mer än hälften av alla livsmedel

Enterprise App Store. Sammi Khayer. Igor Stevstedt. Konsultchef mobila lösningar. Teknisk Lead mobila lösningar

Om oss DET PERFEKTA KOMPLEMENTET THE PERFECT COMPLETION 04 EN BINZ ÄR PRECIS SÅ BRA SOM DU FÖRVÄNTAR DIG A BINZ IS JUST AS GOOD AS YOU THINK 05

Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod

Anmälan av avsiktsförklaring om samarbete mellan Merck Sharp & Dohme AB (MSD AB) och Stockholms läns landsting

Föreläsning 8. Designmönster

MUSIK OCH SPRÅK. !Musik!och!inkludering!!fält!för!musikterapeuter!och!forskning! !!!! !!!2016?04?09! !FMS!rikskonferens!!!Karlstad!universitet!

Amir Rostami

Kanban är inte din process. (låt mig berätta varför) #DevLin Mars 2012

2.1 Installation of driver using Internet Installation of driver from disk... 3

Viktig information för transmittrar med option /A1 Gold-Plated Diaphragm

Affärsmodellernas förändring inom handeln

Klimatanpassning bland stora företag

Immigration Studying. Studying - University. Stating that you want to enroll. Stating that you want to apply for a course.

PORTSECURITY IN SÖLVESBORG

Samrådsgrupper Hösten 2014

Support for Artist Residencies

Materialplanering och styrning på grundnivå. 7,5 högskolepoäng

Mina målsättningar för 2015

Vätebränsle. Namn: Rasmus Rynell. Klass: TE14A. Datum:

Teenage Brain Development

What Is Hyper-Threading and How Does It Improve Performance

De interaktiva kuddarna Textil som kommunikationsredskap

The Swedish National Patient Overview (NPO)

Solowheel. Namn: Jesper Edqvist. Klass: TE14A. Datum:

Resultat av den utökade första planeringsövningen inför RRC september 2005

Collaborative Product Development:

Vad är mönsterspråk?

Quality-Driven Process for Requirements Elicitation: The Case of Architecture Driving Requirements

Wood Buildings. -Development in Sweden Niclas Svensson, Swedish Wood Building Council. Niclas Svensson, Swedish Wood Building Council

Regional Carbon Budgets

Discovering!!!!! Swedish ÅÄÖ. EPISODE 6 Norrlänningar and numbers Misi.se

Kursplan. AB1029 Introduktion till Professionell kommunikation - mer än bara samtal. 7,5 högskolepoäng, Grundnivå 1

TEIO05 Grundläggande entreprenörskap och idékvalificering. Omvärlds- och marknadsanalys 10 februari 2014 Ingela Sölvell,

VI KAN FJÄLLEN, MEN VI HAR ALDRIG ÅkT I PISTERNA

Nordic Casemix Centre (NCC) (Nordiskt center för patientgruppering r.f)

Webbregistrering pa kurs och termin

Signatursida följer/signature page follows

LEVERANTÖRSLED; INKÖP OCH UPPHANDLING

Anmälan av avsiktsförklaring om samarbete med AstraZeneca AB

Användning av Erasmus+ deltagarrapporter för uppföljning

Flervariabel Analys för Civilingenjörsutbildning i datateknik

AGIL KRAVHANTERING. Hitta behoven bakom kraven!! Thomas Nilsson! Agile Coach & Mentor! CTO, Responsive

Svenska()(Bruksanvisning(för(handdukstork()(1400(x(250(mm(

Kursplan. FÖ3032 Redovisning och styrning av internationellt verksamma företag. 15 högskolepoäng, Avancerad nivå 1

PRESS FÄLLKONSTRUKTION FOLDING INSTRUCTIONS

En bild säger mer än tusen ord?

Chapter 1 : Who do you think you are?

Transkript:

Mönster Ulf Cederling Växjö University UlfCederling@msivxuse http://wwwmsivxuse/~ulfce Slide 1

Beskrivningsmall Beskrivningsmallen är inspirerad av den som användes på AG Communication Systems (AGCS) Linda Rising: Introducerade mönster på AGCS i mitten av 90-talet (april 1995) Augusti 1994: 1 st Annual Conference of Pattern Languages of Program Design (Illinois) Fokus: State of the art beträffande mönsterbeskrivning Visade sig finnas en mängd uppsättning former, ansatser, skrivstilar och mönsterteman Pattern Language (pattern system) : A collection of patterns together with guidelines for their implementation, combination, and practical use Buschmann et al, Pattern-Oriented Software Architecture, A System of Patterns 1996 Slide 2

Mönsterspråk för systemtest The Test Organization Testing Efficiency Testing Strategy Problem Resolution The Tester s More Important Than The Test Cases Designers Are Our Friends Take Time Get Involved Early Time To Test Rising Linda, The Patterns Handbook: Techniques, Strategies, and Applications, Cambridge University Press 1998 Slide 3

Exempel - Mönsterbeskrivning Namn, Alias Problem Sammanhang Krafter Lösning Resulterande sammanhang Rationalitet Kända tillämpningar Besläktade mönster Skiss Författare, datum Referenser Exempel Slide 4

Namn Ord eller kort fras som beskriver det väsentliga i mönstret Beskriv problemet, lösningen, sammanhanget eller avsikten Ett bra namn möjliggör en förbättrad kommunikation i utvecklingsteamet, speciellt då man kan gissa avsikten med mönstret givet namnet TAKE TIME Slide 5

Alias Samma mönster kan existera på annat håll, i ett annat företag, eller i en publikation Experter kanske använder svårtolkade namn och ett alias kan bidra till att nybörjare bättre förstår vilket mönstret avser att lösa Exempel: Template Method fick efter en del diskussioner ett alias, Skeleton Method Slide 6

Problem En kort, fullständig mening som beskriver det problem mönstret ska lösa Kan formuleras som en fråga How much time should Designers be given to finish work that is behind schedule? Slide 7

Sammanhang Begränsningar, målgrupp, använda mönster, omfång etc, dvs allt som kan ogiltigförklara lösningen om dessa förutsättningar förändras Testing for an area is scheduled to start, design is not complete Remember that Designers Are Our Friends Slide 8

Krafter Förklara varför det är ett besvärligt problem Ofta motsägelsefullt, kan skapa spänningar: Vi vill ha nöjda kunder Vi har begränsade resurser Designers always want more time More effort up front usually produces a better product in the end Slide 9

Lösning Det bästa sättet att lösa problemet Tackla de viktigaste krafterna beroende på sammanhanget Bortse eventuellt från några krafter Håll målgruppen i minnet Give Designers the time they request, within reason It is Time To Test other areas in the mean time Slide 10

Resulterande sammanhang Vad händer om mönstret används, vilka krafter hanteras, vilka problem uppstår, föroch nackdelar? Att enbart lösa problemet är inte tillräckligt System testing will take less time if the design quality is better Slide 11

Rationalitet Varför lösningen löser problemet Sälj in mönstret, utbilda läsaren Higher quality systems take less time to test than poorer quality systems By giving Designers the time they truly need, there will be a significant pay-back in the end in avoiding the effort to test and fix all the problems in a poor quality system Increasing planned development time 15% cuts the number of defects in half (Remer, 1996) All the forces of Take Time and Time To Test must be carefully weighed before deciding which pattern to follow Remer D, Cost and schedule estimation for software development projects, UCLA 1996 Slide 12

Övriga delar Kända tillämpingar: A one- time occurrence is an event A double occurrence is a coincidence If it occurs more than twice, it s a pattern Jim Coplien/ Gerald Weinberg/ Bunny Duhl Besläktade mönster: Här omfattas både liknande mönster och mönster som på något sätt samverkar med det man för tillfället beskriver Skiss: Beskriv skissen om nödvändigt Slide 13

Övriga delar Författare Datum Referenser: Lista samtliga referenser Exempel: Ge ett exempel på implementationen av mönstret Vanligtvis på källkodsnivå Slide 14

Introduktion av mönster på AGCS Linda Rising introducerade mönster på AG Communication Systems (AGCS) i mitten av 90-talet (April 1995) Evalueringsfas: 1 Är mönster en teknologi värd att satsa på för AGCS? 2 Är mönstren i Design Patterns -boken värda en utbildningsinsats? Gamma et al, Design Patterns Elements of Reusable Object-Oriented Software 1995 Rekommendation: 1 Varje intresserad designer bör ha en kopia av Design Patterns -boken 2 Utbildning i dessa m önster bör erbjudas utvecklingsteamen för att förbättra kommunikation och designkunskap Slide 15

Introduktion av mönster på AGCS Beta-utbildning: 3 fulla dagar 1 full dag + 4 halvdagar People can t learn patterns without trying them People need to find them in their own problem domain Kursstruktur: Tillämpa designmönstren i Design Patterns -boken Betona förändringshantering (långsiktigt vidmakthållande och systemutvidgning) Integrera mönster i utvecklingsmodellen genom designgranskningar och dokumentation Observationer: Litet motstånd mot dessa nya begrepp Kunskap från olika applikationer (och programspråk) var mycket väsentligt för att kunna tillgodogöra sig mönsterteknologin Användning av mönster bidrar till en gemensam vokabulär som tillåter ett utvecklingsteam att fokusera på problem i stället för på implementationsdetaljer Slide 16