Videregående programmering (DAT240)

Studenter skal lære å bruke programvareutviklingsmetoder som agile og prosjektledelsesverktøy i utviklingen av et større software gruppeprosjekt. Lære om ulike programmeringsparadigmer, som objektorientert programmering, funksjonell osv. Lære å identifisere forskjellen mellom disse paradigmene og deres begrensninger.


Dette er emnebeskrivelsen for studieåret 2024-2025. Merk at det kan komme endringer.

Fakta

Emnekode

DAT240

Versjon

1

Vekting (stp)

10

Semester undervisningsstart

Høst

Antall semestre

1

Vurderingssemester

Høst

Undervisningsspråk

Engelsk

Innhold

NB! Dette er et valgemne og dersom det er færre enn 10 studenter oppmeldt pr. 20. august, kan dette medføre at emnet ikke tilbys.

  • Programvareutviklingsmetodologier for eksempel smidige metodologier som scrum og kanban, prosjektledelsesverktøy (for design, issue trackers, sprints osv.)
  • Programmeringsparadigmer som objektorientert programmering, funksjonell og prosessuell programmering med vekt på sterkt typede språk
  • SOLID, Design Patterns, Generics
  • Avanserte datastrukturer og algoritmer
  • Parallell programmering
  • Bruk av kompilatorer, build systemer
  • Bruk av versjonskontroll (git) og kodegjennomgang i grupper

Læringsutbytte

Kunnskap:

  • Bruk av programmeringsspråket med sterke datatyper
  • Objektorientert programmering og polymorfisme
  • Programvareteknikk og utviklingsmetoder som agile (scrum og kanban)
  • SOLID prinsipper og grunnleggende mønstre for programmering (design patterns)
  • Bruk av forskjellige verktøyer som compilers, build tools, debuggers og versjonskontroll

Ferdigheter:

  • Være i stand til å designe, utvikle og feilsøke komplekse programvaresystemer.
  • Kunne bruk av designmønstre

Generell kompetanse:

  • Kunne utvikle og lede større og mer avanserte software prosjekter

Forkunnskapskrav

Et av følgende alternativer:
DAT110 Grunnleggende programmering
DAT120 Grunnleggende programmering, DAT320 Operativsystemer og systemprogrammering

Anbefalte forkunnskaper

DAT200 Algoritmer og datastrukturer, DAT220 Databaser, DAT320 Operativsystemer og systemprogrammering

Eksamen / vurdering

Prosjektoppgave

Den endelige karakteren er basert på gruppeprosjektet, bestående av én stor oppgave som demonstrerer anvendelsen av begreper og teknikker lært i kurset. Prosjektet skal gjennomføres i gruppe. Karakteren for prosjektet vil være basert på prosjektoppgave som inkluderer programkode.Dersom en student stryker på prosjektet, må hun/han ta dette om igjen neste gang emnet foreleses.

Vilkår for å gå opp til eksamen/vurdering

Obligatoriske innleveringer, Muntlig presentasjon, 3 obligatoriske laboppgaver

Tre obligatoriske individuelle laboppgaver (programmerings og skriftlig oppgaver). Godkjent/ikke godkjent. Alle obligatoriske oppgavene må godkjennes for å få adgang til skriftlig eksamen. Godkjenning skjer ved innlevering via QuickFeed-systemet for automatisk evaluering, samt etterfølgende godkjenning på lab.

Gjennomføring av obligatorisk lab skal gjøres til angitte frister. Fravær på grunn av sykdom eller av andre årsaker skal snarest mulig kommuniseres til laboratorie- eller fagansvarlig. Det kan ikke påregnes å få gjennomføre lab utenom oppsatt tid hvis dette ikke er kommunisert og ny avtale gjort.

Konsekvens av at man ikke har fått godkjent laboratoriearbeid er at man ikke får gå opp til eksamen i emnet.

Obligatorisk muntlig presentasjon av alle gruppemedlemmer i forbindelse med innlevering av prosjektoppgave.

Fagperson(er)

Emneansvarlig:

Vinay Jayarama Setty

Instituttleder:

Tom Ryen

Arbeidsformer

Forelesninger, individuelle programmeringsoppgaver og prosjekt som skal gjøres i grupper.

4 timer med forelesning og 4 øvingstimer pr. uke.

Overlapping

Emne Reduksjon (SP)
Programmering, videregående (BID100_1) 5
Programvareutvikling (DAT210_1) 10

Åpent for

Datateknologi - bachelor i ingeniørfag
Enkeltemner ved Det teknisk-naturvitenskaplige fakultet
Utveksling ved Det teknisk- naturvitenskapelige fakultet

Emneevaluering

Det skal være en tidligdialog mellom emneansvarlig, studenttillitsvalgt og studentene. Formålet er tilbakemelding fra studentene for endringer og justering i emnet inneværende semester.I tillegg skal det gjennomføres en digital emneevaluering minimum hvert tredje år. Den har som formål å innhente studentenes erfaringer med emnet.

Litteratur

Søk etter pensumlitteratur i Leganto