Skriv ut som pdf om du vill ha en pdf! Om du vill ha en snyggare utskrift, klicka bort webbläsarens automatiskt tillagda sidhuvud och sidfot.

Blekinge Tekniska Högskola
Institutionen för programvaruteknik

Revision: 2
Dnr: BTH-4.1.14-1202-2024


Kursplan

Avancerat mjukvaruprojekt i team

Advanced Software Project in Teams

15 högskolepoäng (15 credits)

Kurskod: PA2567
Huvudområde: Programvaruteknik
Utbildningsområde: Tekniska området
Utbildningsnivå: Avancerad nivå
Fördjupning: AXX - Avancerad nivå, kursens fördjupning kan inte klassificeras

Undervisningsspråk: Svenska
Gäller från: 2024-11-01
Fastställd: 2024-11-01

1. Beslut

Denna kurs är inrättad av dekan 2018-05-18. Kursplanen är fastställd av prefekten vid institutionen för programvaruteknik 2024-11-01 och gäller från 2024-11-01.

2. Förkunskapskrav

För tillträde till kursen krävs avklarade kurser i programmering, 6 hp, algoritmer och datastrukturer, 6 hp, programvaruutveckling, 6 hp, projekt i mjukvaruutveckling eller systemteknik, 7,5 hp samt genomgången kurs i databasteknik, 6 hp.

3. Syfte och innehåll

3.1 Syfte

Kursen syftar till att binda ihop tidigare kunskaper inom ramen för ett stort grupprojekt där ett komplext system av relevans för utbildningsprogrammets inriktning ska utvecklas.
Kursen är upplagd för att, så nära det är möjligt, efterlikna ett projekt som det normalt kan bedrivas ute i industrin. Att utveckla större system ställer stora krav på tekniskt kunnande, samt kunskap om olika bibliotek och tredjeparts programvaror för att kunna integrera dessa. I kursen får studenten användning av ett flertal av de förmågor som tidigare tillägnats under studietiden. I kursen kommer studenten praktisera metoder som understödjer ett ingenjörsmässigt arbetssätt, inkluderande organisation, ledning, samarbetsförmåga samt muntlig och skriftlig kommunikation.

3.2 Innehåll

Kursen omfattar följande moment:
• Storskalig programvaruutveckling: förstudiearbete, kravhantering, lösningsförslag, design och analys, arkitektur, konstruktion, kvalitetssäkring, test och leverans, leveransplanering, konfigurationshantering och dokumentation.
• Kundrelation: kundmöten, behovsanalys, åtagande gentemot kunden, uppföljningsmöten, demos och slutleverans.
• Organisation av programvaruprojekt i större grupp: delprojekt, roller, samarbete, kommunikation.
• Gruppens arbete och teamwork: gruppens utveckling, effektivt teamarbete och effektivt beslutsfattande i grupp.
• Projektplanering och uppföljning: givna tidsramar, resurser och budget. Planering och schedulering av arbete, tidsestimat, metoder för mätning, uppföljning och kommunikation av resultat och aktuell progress.
• Mätningar och evidensbaserat beslutsfattande: kontinuerligt förbättringsarbete genom mätningar och datainsamling fokuserad på process, projekt och produkt.
• Kvalitetssäkring: mätbara kvalitetsmål, testplanering och rapportering av testresultat.

4. Lärandemål

Följande lärandemål examineras i kursen:

4.1. Kunskap och förståelse

Efter genomförd kurs ska studenten kunna:

  • visa goda tekniska kunskaper i programutveckling genom att självständigt i detalj redogöra för en färdig programvaruprodukt och dess ingående komponenter.
  • visa förståelse och erfarenhet av utmaningar relaterade till projektets förstudiefas, samt formulering och uppföljning av åtagandet mot kunden.
  • visa förståelse och erfarenhet av hur organisations- och kommunikationsproblem, som normalt uppstår vid programutveckling i grupp, påverkar gruppens samarbetsförmåga och resultat.
  • redogöra för hur olika lösningar på organisation, roller och arkitektur påverkar gruppens samarbetsförmåga och resultat.
  • visa god förståelse för innebörden och funktion av projektplanering och uppföljning.
  • redogöra för innebörden och vikten av kvalitetssäkring och leveranssäkring vid programutveckling.

4.2. Färdighet och förmåga

Efter genomförd kurs ska studenten kunna:

  • inom ramen för programutveckling i grupp, visa skicklighet och färdighet för rollen som yrkesverksam inom industri och näringsliv.
  • redogöra för hur en programvara utvecklas i grupp genom att aktivt delta i planerandet, organiserandet och genomförandet av ett sådant projekt.
  • självständigt planera och genomföra uppgifter inom givna tidsramar.
  • muntligt och skriftligt redogöra för och diskutera information, problem och lösningar i dialog med olika grupper.
  • ur ett programvarutekniskt perspektiv göra bedömningar med hänsyn till relevanta tekniska lösningar, utvecklingsmetodologi och modeller för kvalitetssäkring.
  • använda mätningar och mätdata för evidensbaserat beslutsfattande.
  • identifiera sitt behov av ytterligare kunskap och att utveckla sin kompetens.
  • genom praktiskt arbete erhållit insyn i innebörden och vikten av kvalitetssäkring och leveranssäkring vid programutveckling.
  • visa förmåga att muntligt och skriftligt kommunicera och ha dialog med olika grupper.
  • visa förmåga att anpassa sig till nya situationer, generera nya ideér (kreativitet).
  • visa förmåga att kunna ta beslut och förstå konsekvenser av olika beslut.

4.3. Värderingsförmåga och förhållningssätt

Efter genomförd kurs ska studenten kunna:

  • självständigt söka, inhämta och värdera tillgänglig litteratur och annan bakgrundsinformation som är relevant för en problemställning inom området programvaruteknik.
  • professionellt förhållningssätt och arbetssätt som bygger på åtagandekultur, gällande såväl gruppen som helhet såsom individen i gruppen.
  • självständigt identifiera, formulera och lösa problem inom området programvaruteknik.
  • söka, samla, värdera och kritiskt tolka relevant information i en problemställning samt kritiskt diskutera företeelser, frågeställningar och situationer.

5. Läraktiviteter

Genomförandet av projekten sker normalt i grupper av 8-12 personer. Projektuppgifterna är obligatoriska och ska lösas som grupparbete till en fast budget och inom givna tidsramar. Kunden är beställare av hela projektet. Studenterna åtar sig att utföra uppdraget från kunden. Kunden kan ha mer eller mindre bestämd uppfattning om uppdraget och vad det innebär. Kunden kan ställa krav på vilken teknik som skall användas. Studenterna föreslår kunden en lösning baserat på kundens önskemål. Via diskussioner, kravspecifikationer och kontrakt kommer kunden och studenterna överens om den slutliga omfattningen på uppdraget. Studenterna organiserar sig själva i projektgrupperna och sköter själva sin planering. Under denna process kommer de i kontakt med flera av de aspekter av programutveckling som kursen poängterar.

Varje projektgrupp har en handledare, Head of Department (HoD), som fungerar som chef över projektgruppen. Projektgruppen rapporterar till HoD och stämmer veckovis av sin progress mot uppsatta mål. Om problem uppstår skall projektgruppen försöka lösa dem med hjälp av sin HoD.

Parallellt med projektarbetet sker undervisning, i begränsad omfattning, med föreläsningar, seminarier, handledning och rapportskrivande. Föreläsningar presenterar teorier och bidrar till den teoretiska förståelsen. Vid seminarier och handledning diskuteras olika aspekter av projektet och dess genomförande.

6. Bedömning och examination

Examinationsmoment för kursen

Kod Benämning Omf. Betyg
2210 Projekt 13 hp GU
2220 Rapport 2 hp GU

Kursen bedöms med betygen G Godkänd, UX Underkänd, något mer arbete krävs, U Underkänd.

Examinator har möjlighet att muntligen följa upp skriftliga examinationer.

I kurstillfällets information inför kursstart framgår i vilka examinationsmoment som kursens lärandemål examineras samt gällande bedömningsgrunder.

Examinator kan, efter samråd med högskolans FUNKA-samordnare, fatta beslut om anpassad examinationsform för att en student med varaktig funktionsvariation ska ges en likvärdig examination jämfört med en student utan funktionsvariation.

7. Kursvärdering

Kursvärdering ska göras i enlighet med BTH:s beslut om frågeställning i kursvärderingar och beslut om process för hantering och uppföljning av kursvärderingar.

8. Begränsningar i examen

Kursen kan ingå i examen men inte tillsammans med annan kurs vars innehåll, helt eller delvis, överensstämmer med innehållet i denna kurs.

9. Kurslitteratur och övriga lärresurser

Software Engineering, 9th edition. Författare: Ian Sommerville. Förlag: Addison-Wesley, senaste upplagan.
Agile Estimating and Planning, 1st Edition. Författare: Mike Cohn. Förlag: Pearson, senaste upplagan.