Kursplanen innehåller ändringar
Se ändringarKursplan fastställd 2019-02-08 av programansvarig (eller motsvarande).
Kursöversikt
- Engelskt namnDistributed systems
- KurskodTDA596
- Omfattning7,5 Högskolepoäng
- ÄgareMPCSN
- UtbildningsnivåAvancerad nivå
- HuvudområdeDatateknik, Informationsteknik
- InstitutionDATA- OCH INFORMATIONSTEKNIK
- BetygsskalaTH - Fem, Fyra, Tre, Underkänd
Kurstillfälle 1
- Undervisningsspråk Engelska
- Anmälningskod 12113
- Blockschema
- Sökbar för utbytesstudenterJa
Poängfördelning
Modul | LP1 | LP2 | LP3 | LP4 | Sommar | Ej LP | Tentamensdatum |
---|---|---|---|---|---|---|---|
0107 Tentamen 6 hp Betygsskala: TH | 6 hp |
| |||||
0207 Laboration 1,5 hp Betygsskala: UG | 1,5 hp |
I program
- MPCSN - DATORER, NÄTVERK OCH SYSTEM, MASTERPROGRAM, Årskurs 1 (obligatoriskt valbar)
- MPCSN - DATORER, NÄTVERK OCH SYSTEM, MASTERPROGRAM, Årskurs 2 (valbar)
- MPDSC - DATA SCIENCE OCH AI, MASTERPROGRAM, Årskurs 1 (valbar)
- MPHPC - HÖGPRESTERANDE DATORSYSTEM, MASTERPROGRAM, Årskurs 1 (valbar)
- MPSOF - SOFTWARE ENGINEERING AND TECHNOLOGY - UTVECKLING OCH IMPLEMENTERING AV MJUKVARA, MASTERPROGRAM, Årskurs 2 (valbar)
- TIDAL - DATATEKNIK, HÖGSKOLEINGENJÖR, Årskurs 3 (obligatoriskt valbar)
- TKITE - INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
Examinator
- Philippas Tsigas
- Professor, Dator- och nätverkssystem, Data- och informationsteknik
Ersätter
- TDA595 Distribuerade system
- TIN160 Distribuerade system
Behörighet
Information saknasSärskild behörighet
För kurser på avancerad nivå gäller samma grundläggande och särskilda behörighetskrav som till det kursägande programmet. (När kursen är på avancerad nivå men ägs av ett grundnivåprogram gäller dock tillträdeskrav för avancerad nivå.)Undantag från tillträdeskraven: Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.
Kursspecifika förkunskaper
Studenten ska ha kunskaper från en grundläggande kurs i datorkommunikation eller datornätverk som behandlat TCP/IP-protokollstacken och ha programmeringserfarenhet. Dessutom krävs en kurs i operativsystem eller motsvarande.Syfte
Varför blir datorsystem allt mer distribuerade? Hur kan vi bygga pålitliga och feltoleranta distribuerade system? Hur har Internet kunnat skala till flera miljarder användare? Hur är moderna distribuerade system som t.ex. molntjänster, smarta elnät och kommunicerande bilar uppbyggda? Detta är några frågor som kursen behandlar. Målet med kursen är att få en förståelse för design av distribuerade system och de underliggande principer och mekanismer som dagens distribuerade system använder sig av. Föreläsningarna ger nödvändig fundamental kunskap och laborationerna ger praktisk erfarenhet av utveckling av distribuerade system och erfarenhet med att arbeta med verklighetsanknutna problem.Lärandemål (efter fullgjord kurs ska studenten kunna)
1. Kunskap och förståelse:- Visa kunskap om grundläggande koncept inom distribuerade system och förstå utmaningar och problem såsom synkronisering, konsistens, replikering, och feltolerans.
- Kunna beskriva tillämpningar inom distribuerade system och de mekanismer dessa använder för att kunna utföra sina tjänster.
- Ha god kunskap i att kunna diskutera och analysera de problem och krav som olika designmetoder och lösningar står inför.
- God förståelse inom området för att kunna jämföra och sammanfatta styrkor och svagheter med olika lösningar.
- Kunna utveckla, programmera och utvärdera småskaliga distribuerade system med hjälp av de fundamentala mekanismer som introducerats i kursen.
- Visa förmåga i att utveckla programvara som kan fungera i miljöer med t.ex. opålitliga kommunikationslänkar och begränsad bandbredd.
- Ha god förmåga att beskriva och analysera både existerande och nya metoder för design av distribuerade system, speciellt med avseende på systemens förmåga att skala och vara feltoleranta.
- De kommunikativa färdigheter som praktiseras i den här kursen ger ökad förmåga till samverkan i grupp genom träning i muntlig och skriftlig presentation av labbresultat.
Innehåll
Kursen börjar med en introduktion av grundläggande koncept för distribuerade system och de utmaningar dessa står inför. Därefter repeteras viss väsentlig kunskap om kommunikation och operativsystem för att därefter fokusera på:- Namngivning
- Ömsesidig uteslutning (mutual exclusion) och val (election)
- Klockor och tid
- Konsistens och replikering
- Feltolerans i distribuerade system
- Utvalda representativa distribuerade applikationer
Organisation
Schemalagda föreläsningar och parallellt med föreläsningarna utförs hemuppgifter och handledda labbuppgifter.Litteratur
Andrew S. Tanenbaum, Marten van Steen, "Distributed Systems - Principles and Paradigms", PearsonExamination inklusive obligatoriska moment
För att bli godkänd på kursen krävs godkänd skriftlig tentamen samt godkända hemuppgifter och laborationer. Baserat på tentamensresultatet ges betygen U, 3,4 eller 5.Kursplanen innehåller ändringar
- Ändring gjord på tentamen:
- 2020-01-13: Plats Plats ändrat från Johanneberg till SB Multisal av annbe
[2020-01-14 6,0 hp, 0107]
- 2020-01-13: Plats Plats ändrat från Johanneberg till SB Multisal av annbe