Systemdesign fortsättningskurs



Relevanta dokument
Återanvändning. Två mekanismer. Nedärvning av egenskaper (inheritance) Objekt komposition

Subsystem. Klasser är ett bra sätt att organisera små system. Klasser är för små enheter för att organisera stora system

Design mönster. n n n n n n. Command Active object Template method Strategy Facade Mediator

Kontrakt baserad design. Design by contract

Vi har... Diskuterat olika objektorienterade mekanismer. Ha också tagit upp några krav på hur dom här mekanismerna ska användas

Databaser - Design och programmering. Programutveckling. Programdesign, databasdesign. Kravspecifikation. ER-modellen. Begrepps-modellering

Databaser - Design och programmering. Databasdesign. Kravspecifikation. Begrepps-modellering. Design processen. ER-modellering

Webprogrammering och databaser. Begrepps-modellering. Exempel: universitetsstudier Kravspec. ER-modellen. Exempel: kravspec forts:

Förfrågan till Klockarens redaktörer

Databaser - Design och programmering. Databasdesign. Funktioner. Relationsmodellen. Relationsmodellen. Funktion = avbildning (mappning) Y=X 2

Universitetet: ER-diagram e-namn

MS-A0409 Grundkurs i diskret matematik Sammanfattning, del I

Föreläsning 10: Kombinatorik

Universitetet: ER-diagram e-namn

Egna funktioner. Vad är sin? sin är namnet på en av många inbyggda funktioner i Ada (och den återfinns i paketet Ada.Numerics.Elementary_Functions)

Leica Lino. Noggranna, självavvägande punkt- och linjelasers

1. Hur gammalt är ditt barn?

DEL I. Matematiska Institutionen KTH

Genomsnittligt sökdjup i binära sökträd

Plattformshissar från Cibes Lift för alla byggnader

Vad är det okända som efterfrågas? Vilka data är givna? Vilka är villkoren?

Remiss Remissvar lämnas i kolumnen Tillstyrkes term och Tillstyrkes def(inition) och eventuella synpunkter skrivs i kolumnen Synpunkter.

Identfiera orsaker och ge förslag på åtgärder och resultatmått Åtgärdstyp Ska risken åtgärdas genom att orsaken: Bakomliggande orsaker

Exempel. En klass för att inkapsla funktionen hos ett tangentbord. Nu kan många objekt skapas av klassen

Vägen till energiklassad personal. Kurskatalog Fastighetsautomation.

ENDIMENSIONELL ANALYS B1 FÖRELÄSNING VI. Föreläsning VI. Mikael P. Sundqvist

1. Hur gammalt är ditt barn?

ISO ISO Guidance on social responsibility. Marknaden förändras snabbt. En standard om socialt ansvarstagande

c n x n, där c 0, c 1, c 2,... är givna (reella eller n=0 c n x n n=0 absolutkonvergent om x < R divergent om x > R n n lim = 1 R.

1. Test av anpassning.

Produsert for bevegelses hemmede, og er det mest fleksible og variasjonrike alternativ på markedet. Tilpasnings-mulighetene er nesten ubegrensede.

UTVECKLINGSTRAPPA BOXARE VÄRDEGRUND DIPLOMBOXNING

Extrem prestanda Nu utan BPA UPPLEV DEN FANTASTISKA STYRKAN HOS VÅRA BPA-FRIA PRODUKTER

Utlandskyrkans krisberedskap

REGULJÄRA SPRÅK (8p + 6p) 1. DFA och reguljära uttryck (6 p) Problem. För följande NFA över alfabetet {0,1}:

Tentamen 19 mars, 8:00 12:00, Q22, Q26

101. och sista termen 1

Kontextfri grammatik (CFG)

Borel-Cantellis sats och stora talens lag

Fakta om plast i havet

Innehåll Grafräknaren och diskret matematik...1 Vad handlar diskret matematik om?...1 Permutationer och kombinationer...3 Något om heltalsräkning...

Lösningar och kommentarer till uppgifter i 1.1

Tommy Färnqvist, IDA, Linköpings universitet

Mönster. n n n n n. Visitor Decorator Extension Object State Taskmaster

MS-A0409 Grundkurs i diskret matematik I

Höftledsdysplasi hos dansk-svensk gårdshund - Exempel på tavlan

2. Konfidensintervall för skillnaden mellan två proportioner.

1. Hur gammalt är ditt barn?

Lycka till! I(X i t) 1 om A 0 annars I(A) =

SveTys. Affärskultur i Tyskland. Vad är det? Och vad ska jag tänka på?

Digital signalbehandling Fönsterfunktioner

Hisslösningar från Cibes Lift för alla byggnader

Ångfärjan eller Oceanpiren? Stadsbyggnadsförvaltningen Inledande lokaliseringsstudie av kongress/hotel center i centrala Helsingborg

Solgläntans föräldrakooperativ Kvalitet och måluppfyllelse läsåret 2012/13

Digital pedagogik en naturlig del av framtidens skola!

RESTARITMETIKER. Avsnitt 4. När man adderar eller multiplicerar två tal som t ex

Föreläsning G04: Surveymetodik

HOW TO GROW. .how to grow. .how not to grow 15 % 74a%

PTKs stadgar. Fastställda vid stämman

Datorövning 2 Fördelningar inom säkerhetsanalys

Kollektivt bindande styre på global nivå

PROMEMORIA. 01.JI^ Sida. c:\managemennits\publickprojekt\ny plattform och arkitektur\it plan IT strategi\it-strategi.doc.

Anmärkning: I några böcker använder man följande beteckning ]a,b[, [a,b[ och ]a,b] för (a,b), [a,b) och (a,b].

1. Hur gammalt är ditt barn?

Hambley avsnitt 12.7 (även 7.3 för den som vill läsa lite mer om grindar)

Ca m 3 = ton. Masshantering Sven Brodin. Dessa mängder ska Stockholms Stad transportera varje månad.

z Teori z Hypotesgenerering z Observation (empirisk test) z Bara sanningen : Inga falska teser z Hela sanningen : Täcker alla sanna teser

Statistisk analys. Vilka slutsatser kan dras om populationen med resultatet i stickprovet som grund? Hur säkra uttalande kan göras om resultatet?

Räkning med potensserier

Induktion LCB Rekursion och induktion; enkla fall. Ersätter Grimaldi 4.1

AMF. I princip är det bara möjligt att flytta privat sparande och sparande där avtalet tecknats efter den 2 februari i fjol.

b 1 och har för olika värden på den reella konstanten a.

Vikingen FutureLook. Delphi Finansanalys AB

7 Sjunde lektionen. 7.1 Digitala filter

Kundundersökning Kommuninfo/ Kuntainfo: Enkät om kommunens informationsverksamhet

Operativsystem - Baklås

Duo HOME Duo OFFICE. Programmerings manual SE

MARKNADSPLAN Kungälvs kommun

Visst kan man faktorisera x 4 + 1

Mätbar vetskap om nuläget och tydliga målbilder om framtiden. Genomför en INDICATOR självvärdering och nulägesanalys inom tre veckor

KOM IHÅG ATT NOTERA DITT TENTAMENSNUMMER NEDAN OCH TA MED DIG TALONGEN INNAN DU LÄMNAR IN TENTAN!!

Applikationen kan endast användas av enskilda användare med förtroenderapportering.

. Mängden av alla möjliga tillstånd E k kallas tillståndsrummet.

tullinge FLEMINGSBERG TULLINGE Kommunens avsikter för Tullinge som helhet

Lärarhandledning Att bli kvitt virus och snuva - När Lisa blev av med förkylningen

Tentamen i Flervariabelanalys F/TM, MVE035

Hambley avsnitt 12.7 (även 7.3 för den som vill läsa lite mer om grindar)

Kompletterande kurslitteratur om serier

Minsta kvadrat-metoden, MK. Maximum likelihood-metoden, ML. Medelfel. E(X i ) = µ i (θ) MK-skattningen av θ fås genom att minimera

Dataskyddsförordningen offentlig sektor

Arbetsmiljöuppföljning IFO-FH enhet: Kontakt- och familjehemsenheten

Armin Halilovic: EXTRA ÖVNINGAR

SEKAB celluapp. Ledande bioraffinaderiteknologi från idé till affär

Uppgifter 3: Talföljder och induktionsbevis

Föreläsningar 7,8 sept 24, sept 26 v 39). delvis DD Chapter 6.

Ekvationen (ekv1) kan beskriva en s.k. stationär tillstånd (steady-state) för en fysikalisk process.

Frasstrukturgrammatik

Jag läser kursen på. Halvfart Helfart

Tentamen i Elektronik, ESS010, del 2 den 14 dec 2009 klockan 14:00 19:00.

Datorlingvistisk grammatik I

Transkript:

Systemdesig fortsättigskurs

Orgaisatio Föreläsare Potus Boström Assistet? Tider mådagar och tisdagar kl. 8-10 Börjar 3.9 och slutar 16.10 Rum B3040

Orgaisatio Iga föreläsigar 24.9, 25.9, 1.10 och 2.10 Måste hitta adra passade tider Förhadskuskaper Systemdesig, grudkurs Programmerig 2-3 övigsuppgifter E av dem lite större

Litteratur Agile software developmet : priciples, patters, ad practices, 2003 [Marti] R. Marti Artiklar Läkar på kurssida Desig Patters: Elemets of Reusable Object-Orieted Software, 1995 [GoF] E. Gamma, R. Helm, R. Johso och J. Vlissides Object orieted software costructio, 2d editio, 1997 [Meyer] B. Meyer

Iehåll Objekt orieterad desig av mjukvara Bra desig priciper Återavädbarhet Egeskaper hos objektorieterade språk Nedärvig (iheritace) Geerisk programmerig Stadard bibliotek Kotrakt baserad desig För- och eftervillkor Objekt ivariater

Iehåll Desig priciper Mjukvarukompoeter som ka återavädas Kompoeter som ka utvidgas Desig möster Avädbara desig möster för olika problem

Utvecklig av mjukvara Producera det öskade mjukvarusystemet på utsatt tid och iom budgetramar Problem Komplexitet Itegrerig med gamla (ikompatibla) system Ädrade kravspecfikatioer Hjälpmedel Återavädig av existerade mjukvara Avädig av existerade kompoeter Desig möster

Utvecklig (forts.) Uderhåll av program e av de mest utmaade aktivitetera Mjukvara blir ite dålig med tide, me ma behöver... Fixa fel i de ursprugliga mjukvara Apassa mjukvara till ya avädarkrav Största dele av tide och pegara uder ett systems livstid går åt till detta Programmet bör vara desigat med take på detta Utvidgigsbart Ekelt att sätta till ya fuktioer Återavädig Ekelt att återaväda kod Kompatibilitet Det bör vara ekelt att olika moduler ka kombieras med varadra Kotiuitet Lite ädrig i specifikatioe leder till lite ädrig av programkode

Varför objektorieterad programmerig? För att hatera komplexitete för program måste ma ha e systematisk metod för att dela upp programmet i midre delar (moduler) Att dela upp systemet i objekt är ite de eda möjlighete

Uppdelig baserad på fuktio (Eg. Fuctioal decompositio) Traditioell metod före objektorieterade metoder Top-dow utvecklig. Idetifiera e huvud fuktio som se är delad upp i midre delar Stegvis programpreciserig

Uppdelig baserad på fuktio (forts.) Exempel C kompilator: Specifikatio Översätt C-kod till maskikod Uppdelig 1. Läs program och producera e sekves av tokes 2. Omvadla sekvese av tokes till ett abstrakt sytax träd 3. Sätt i sematisk iformatio i trädet (t. ex. Typifo för variabler) 4. Geerera kod frå det här trädet De här metode har flera fördelar Logisk och ekel Bra för att utveckla algoritmer och midre system

Nackdelar Oftast har ett program måga fuktioer Svårt att idetifiera vad olika fuktioer har gemesamt Ofta är det huvudfuktioe som avädare vill ädra Lite ädrig av specifikatioe leder till stora ädrigar i programmet Arkitekture följer frå utvecklaras ursprugliga uppfattig av systemets fuktio också om systemets verkliga huvudfuktio har ädrats med tide

Objektorieterad utvecklig Utvidgig av systemet Objekt bättre lämpade ä fuktioer Baserad på empiriska studier, ite på ågot formellt bevis Återavädig Objekt typer erbjuder mera stabil bas för återavädig Döljig av iformatio Stabilt grässitt Kompatibilitet Objekt ka be ekelt kombierade med varadra Väldefiierade grässitt

Objekt orieterad programutvecklig Object-orieted software costructio is the software developmet method which bases the architecture of ay software system o modules deduced from types of objects it maipulates (rather tha fuctio or fuctios that the system is iteded to esure) B. Meyer Object orieted software costructio, 1997 OBJECT MOTTO: Ask ot first what the system does: ask what it does it to! B. Meyer Object orieted software costructio, 1997

Hur hitta objekt Motsvarar direkt ågot fysiskt objekt iom applikatios området som mjukvara ämad för Relatioer mella objekt följer ofta också frå domäe Klasser som reda utvecklats av ågo aa Det är oödigt att skapa ågot ytt om problemet reda lösts tillräckligt bra tidigare Erfarehet och imitatio. Aväd passade prövade desig möster Också om ite direkt tillämpbara så ka de ge ispiratio

Utvecklig Hur bli e bra utvecklare Måste kua bakgrude Programmerigsspråk, algoritmer, data strukturer... Måste också veta priciper Programmerigs paradigmer, teamwork, Ikapslig, Döljig av iformatio, cohesio, couplig, kotrakt baserad utvecklig Måste också lära sej av dom bästa Desig möster fis tillgägliga för måga olika problem Ger e bra lösig om de tillämpas korrekt Övig ger färdighet