Sårbara kurser – TIG167

Vi fortsätter fortsätta sårbarhetsanalysen av våra kurser. Denna gång blir det TIG167 som vi har kursansvar för.

Med utgångspunkt i frågorna från i analysen av TIG058[1] kollar vi nu på TIG167.

Kursplanen

Kursplanen finns att ladda ner här: TIG167.

Lärandemål för kursen

Kunskap och förståelse

  • analysera ett givet problem inför implementation av en lösning visa grundläggande
  • förståelse för design och programmering i Android visa grundläggande förståelse
  • för procedurell programmering förklara hur en kod och grafiskt layout i Android
  • fungerar och skrivs i XML förklara hur ett modulärt C-program är uppbyggt
  • förklara ingående delar i utvecklingsprocessen av ett C-program

Färdigheter och förmåga

  • skriva strukturerade och modulära program i Android-miljö och i programspråket C
  • skriva automatiska tester till och debugga ett program
  • testa programmet på egen dator med hjälp av simulator
  • programmera för och ladda upp kod till inbyggd arkitektur eller mobil enhet
  • skriva program för olika skärmstorlekar och upplösningar i Android

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

  • avgöra när dynamisk respektive statisk minnesallokering skall användas
  • välja grad av modularitet genom avdelning av program
  • avgöra hur en mobil enhet skall interagera med omvärlden

Vår kommentar: Man kan återigen säga en hel del om målen ovan. Vi tar denna diskussion vid ett annat tillfälle. I dag skall vi analysera sårbarheten.

Former för bedömning / Examination

Kursen examineras genom momenten en individuell skriftlig inlämningsuppgift (3 högskolepoäng), en individuell salstentamen (4,5 högskolepoäng) samt ett projekt som genomförs i grupp (7.5 högskolepoäng).

Genomgång av kursens lärmål och examinationsform

Vi kommer att gå igenom kursens mål och examination utgående från frågorna ovan.

Specifik kompetens

Det finns i kursen TIG167 några kompetenskrav utöver generell programmeringskunskap. Vi förutsätter att alla kan programmera i ett objektorienterat språk, t ex Java. Men vi kan, enligt oss, inte förutsätta att en lärare kan vare sig Android, vilket i denna analys fall avser både operativsystemet och utvecklingsmiljön, eller C. Så denna kurs har alltså kompetenskraven Android och C.

Vad gäller Android ser vi ett krav att läraren, i sin handledande roll, har skrivit eller varit med om att skriva ett par så kallade appar.

Speciell utbildning eller erfarenhet

Att skriva program för Android är egentligen ganska enkelt men det är också lätt som utvecklare att glömma små detaljer vilket ibland gör att appen kraschar eller liknande. Det kan ta lång tid för en nybörjare att reda ut vad som är fel så behovet av handledning av erfaren utvecklare är viktig. Detta då handledarens roll i Android-delen av kursen till stor del handlar om att hjälpa studenterna hitta och lösa de små misstagen. Detta sparar mycket kalendertid för studenterna.

Även i C är det ganska enkelt att skriva ett program. Problemet med C är att det är ganska enkelt att skriva program som kraschar då felhantering eller att programmatiskt undvika krascher inte påtvingas utvecklare av språket. Böcker och annat material är, enligt oss, också slarviga med att ta upp felhantering.

Kursmaterialet

Kursens material för Android[2] täcker inte hela kursens behov. Materialet som finns bedömer vi, som själva har skrivit materialet, dock vara nog för att kunna användas för självstudiekurser tillsammans med handledning. Se tidigare bloggpost om TIG058 för genomgång av vårt kursmaterial. För att Android-delen av kursen skall bli “osårbar” behöver kompletterande material tas fram.

Kursens material för C-delen har ändrats under gång. I senaste kursen användes en bok som inte, enligt oss, har material bra nog för att användas. Vår kritik mot boken är främst:

  • materialet undviker att hantera fel och skriva robust kod
  • för få övningar
  • lösningsförslagen verkar ihophaffsade – innehåller ofta fel eller slarv

Vi har tagit fram delar av en C-kurs[3]. Om vi kompletterar även denna med saknade delar kommer materialet vara nog för att kunna användas för självstudiekurser tillsammans med handledning.

Kursens Android-material och tilltänkt C-material är publicerat och licensierat under en sådan licens att användande är tillåtet om man anger källa. Med publicerat menar vi publikt tillgängligt utan kostnad eller inloggning.

Examinationsformen

Kursen examineras via tentamen, inlämningsuppgift och projektarbete.

Tentamen (C)

Det finns gamla tentor i den lärplattform som används på GU. Några tentor har lösningsförslag, ibland dessutom i videoform. Gamla tentor samt lösningsförslag gör att det är enkelt att skriva och rätta nya tentor. Det finns inget i kursplanen som sätter några ytterligare krav på en lärare. För att rätta tentamen, är det vår bedömning att kunskaper i Java, kompletterat med nåågra dagars inläsning av C så utgör inte rättning av tentamen ett hinder.

Inlämningsuppgift (C)

Inlämningsuppgifter finns redan och kan användas direkt. Vi har använt script för att underlätta rättningen av studenternas inlämningar. Även utan dessa går det att rätta inlämningarna men det kan lite mer tid. Det finns inget i kursplanen som sätter några ytterligare krav på en lärare. Handledarinstruktioner bör tas fram.

Projekt (Android)

Studenterna får själva välja projekt. Lärarens roll är, vad gäller examination, är att granska och bedöma den inlämnade koden, rapporter och appen när den körs. För att göra detta krävs viss erfarenhet av Android. Alltså har vi, återigen, ett krav på Android-kompetens.

Slutsats

Tänkt materialet för kursen nästa år kan idag inte användas som en distanskurs. Detta medför att vi har ett beroende till personal som kan både C och Android. Åtgärden till nästa termin är att komplettera materialet så att lärare med C- och Android-kompetens inte är kritiskt.

Dock har kursen ett krav på Android-kompetens hos den lärare som skall jobba med handledning av Android-projektet.

Kursen TIG167 ställer krav på att läraren skall ha grundläggande kunskaper i programmering. Vidare behöver läraren ha erfarenhet av Android och helst även av C.

Det borde vara enkelt, enligt samma resonemang som i TIG058, att hitta någon i befintlig personal som kan hålla kursen TIG167 då grundkunskaper i programmering kan kompletteras med C- och Android-kunskaper.

Slutsatsen är att vi idag ser en liten sårbarhet med kursen. Vi har, till skillnad från TIG015 och TIG058, inte möjlighet att ta in tidigare studenter då denna kurs ges sista terminen och således har dessa tidigare studenter slutat sina studier.

[1] https://programmeringspedagogik.wordpress.com/2018/04/17/sarbara-kurser-tig058/

[2] http://wiki.juneday.se/mediawiki/index.php/Android_-_the_practical_way

[3] http://wiki.juneday.se/mediawiki/index.php/Programming_with_C

 

Advertisements
Posted in Uncategorized | Leave a comment

Sårbara kurser – TIG015

Vi fortsätter sårbarhetsanalysen av våra kurser. Denna gång blir det TIG015 som vi inte har kursansvar för. Dock håller vi (ansvarar för) programmeringsdelen som utgör ca 50%.

Med utgångspunkt i frågorna från i analysen av TIG058[1] kollar vi nu på TIG015.

Kursplanen

Kursplanen finns att ladda ner här: TIG015.

Lärandemål för kursen

Kunskap och förståelse

  • redogöra för begreppen data och information.
  • använda teorier och modeller som behövs för att förstå systemtänkande inklusive
  • systemteorins begrepp hårt och mjukt tänkande.
  • redogöra för begreppen systemvetenskap och informatik.
  • redogöra för akademiska riktlinjer för rapportskrivning.

Färdigheter och förmåga

  • redogöra för och kritiskt analysera informationsteknologin och dess användning,
  • informationssystems innehåll och användning, informationsteknologins
  • användning i informationssystem, informationssystemutveckling med
  • användarfokus, hur objektorienterade program och system fungerar internt samt
  • hur problemlösning i program fungerar. utveckla fungerande program från enklare
  • problemlösning och muntligt och skriftligt kunna redogöra för och kritiskt analysera lösningarna.

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

  • reflektera kring några av IT:s olika roller i samhället.

Vår kommentar: Man kan säga en hel del om målen ovan. Vi tar denna diskussion vid ett annat tillfälle. I dag skall vi analysera sårbarheten.

Former för bedömning / Examination

Kursen examineras genom momenten en individuell skriftlig inlämningsuppgift (3 högskolepoäng), en individuell salstentamen (4,5 högskolepoäng) samt ett projekt som genomförs i grupp (7.5 högskolepoäng).

Genomgång av kursens lärmål och examinationsform

Vi kommer att gå igenom kursens mål och examination utgående från frågorna ovan.

Specifik kompetens

Det finns i kursen TIG015 inga speciella kompetenskrav angivna i kursplanen.

Speciell utbildning eller erfarenhet

Det finns i kursen TIG015 inga speciella krav på utbildning eller erfarenhet (hos läraren) utifrån mål och innehåll angivna i kursplanen.

Kursmaterialet

Kursens material bedömer vi, som själva har skrivit materialet, vara nog för att kunna användas för självstudiekurser tillsammans med handledning. Se tidigare bloggpost om TIG058 för genomgång av vårt kursmaterial

Kursens material är publicerat och licensierat under en sådan licens att användande är tillåtet om man anger källa. Med publicerat menar vi publikt tillgängligt utan kostnad eller inloggning.

Examinationsformen

Kursen examineras via tentamen och inlämningsuppgifter.

Det finns gamla tentor i den lärplattform som används på GU. Alla tentor har lösningsförslag, ibland dessutom i videoform. Gamla tentor samt lösningsförslag gör att det är enkelt att skriva och rätta nya tentor. Det finns inget i kursplanen som sätter några ytterligare krav på en lärare än just grundläggande programmering.

Inlämningsuppgifter finns redan och kan användas direkt. Vi har använt script för att underlätta rättningen av studenternas inlämningar. Även utan dessa går det att rätta inlämningarna men det kan lite mer tid. Det finns inget i kursplanen som sätter några ytterligare krav på en lärare. Vidare finns det omfattande handledarinstruktioner för inlämningsuppgifterna med beskrivande lösningsförslag.

Slutsats

Kursen TIG015 ställer så klart krav på att läraren skall ha grundläggande kunskaper i programmering. Men inga ytterligare kunskaper behövs enlig kursplanen.

Materialet är av sådan karaktär att det kan användas i en självstudiekurs, så vi är säkra på att vi kan säga upp oss eller få sparken utan att detta har en negativ effekt på möjligheten att ge kursen.

Det vara enkelt, enligt samma resonemang som i TIG058, att hitta någon i befintlig personal som kan hålla kursen TIG015 då den är en grundkurs inom huvudområdet Informatik och ges under första året.

Slutsatsen är att vi inte ser någon sårbarhet med kursen. Vi tror, i likhet med TIG058, till och med att även en eller ett par framstående studenter (ibland kallat amanuens) skulle kunna hålla kursen med stöd av en lärare. Det senare stärks även av svaren i kursvärderingen, där handledarstudenterna fick högre betyg än lärare och materialet(!).

[1] https://programmeringspedagogik.wordpress.com/2018/04/17/sarbara-kurser-tig058/

Posted in Uncategorized | Leave a comment

Arbete med kursplaner som kurs- och programutveckling

Bakgrund

Under avdelningens vårkonferens togs ett antal beslut för att förbättra utbildningen i det lilla perspektivet (per kurs) och i det större perspektivet (programnivå). Ett antal aktiviteter i denna riktning beslutades. Vi listar ett urval av aktiviteterna nedan.

Programråd SVP
Aktiviteter:

  • Arrangera månatliga lärarmöten på respektive program.
  • Arrangera gemensam lärarkonferens årligen.

Kursutvärdering för kursutveckling

Aktiviteter:

  • Programledare tar fram och fastställer rutin för genomförande av kurs- och programutvärdering.
  • Lyft resultat av kursutvärdering på lärarmöten samt diskutera föreslagna förändringar.

Inför lärarlag

Aktiviteter:

  • Genomför sårbarhetsanalys på kursnivå kring personberoende
  • Ta fram förslag för omstöpning av samtliga kurser frånsett uppsatser  till 7,5 högskolepoäng.

Det går att urskilja två tydliga trender i aktiviteterna; ökad samverkan mellan lärarna (lärarmöten, konferenser och lärarlag) och uppföljning (kursutvärdering).

Reflektion

Samverkan och kommunikation mellan kollegor och lärare är nödvändigt för att säkerställa progressionen mellan kurserna samt att helheten av kurserna uppfyller på ett meningsfullt sätt helheten i programmet. Dessutom bidrar samverkan och kommunikation mellan lärare till pedagogisk utveckling.

Att arbeta med kursutvärdering som kursutveckling, däremot, känns bakvänt. Funktionen med kursvärdering är att säkerställa att och mäta huruvida studenterna uppnått lärandemålen för kursen i enlighet med kursplanen. Det är därför som det är rekommendabelt att i kursutvärderingen ha med frågor kring studenternas (upplevda) uppfyllande av sina lärandemål i kursen såsom de beskrivs i kursplanen.

Problemet är att vi inte har med några aktiviteter kring att revidera kursplanerna i listan som togs fram under konferensen! Visserligen kunde vi lyft detta under konferensen men det var inte med i de framröstade diskussionspunkterna (och vi föreslog detta som en punkt att rösta på inför konferensen).

Nedan kommer vi argumentera för att 1) detta behövs och 2) arbete med kursplanerna kommer att inkludera aktiviteter i listan ovan samt bidra till att uppfylla aktiviteternas mål.

Revidering av kursplanerna

I detta stycke kommer vi först argumentera för att kursplanerna är i behov av uppdatering, sedan att detta arbete bör ses som en process för kollegialt samarbete, kursutveckling, progression i programmet och kvalitetssäkring av utbildningen.

Uppdateringsbehov i kursplanerna

När vi gått igenom de kursplaner som gäller för de kurser vi är lärare i, så har vi funnit en rad problem. Språkligt och formmässigt finns det brister som torde vara lätta att rätta till (men som samtidigt det är lite pinsamt att de dels smugit sig in i kursplaner som fastslagits av IT-fakultetsnämnden, dels fått ligga kvar under så lång tid utan att någon gjort något åt dem).

Det handlar om språkriktighet, hur upprepningar i listor och så vidare ser ut och i vissa fall ren layoutmässig inkonsekvens. Även om det är lite pinsamt så är det ganska små saker och därför lätt att rätta till.

Men det handlar också om innehållsmässiga och semantiska problem. En del formuleringar och termer är för oss lärare svåra att begripa. När det gäller kursinnehåll så känns det i vissa kurser som om det blandas högt och lågt i det att vissa kursers innehåll beskrivs i väldigt generella termer samtidigt som extremt specifika inslag finns med. Ett närbesläktat problem är att kursernas namn inte återspeglar kursinnehållet, vilket är svårare att rätta till på kort sikt men väl måste upplevas förvirrande för studenterna (oavsett om de läser kursplanen eller inte).

Det som vi dock ser som det största uppdateringsbehovet hos “våra” kursplaner är nog listan på lärandemål. Här brister formen i det att den avviker från rekommendationer kring hur lärandemål skall formuleras. I korthet så skall lärandemålen sätta fokus på studentens lärande och vara lätta att förstå samtidigt som de ska vara möjliga att examinera (och i många fall även att gradera med bedömingskriterier för G respektive VG).

Många av lärandemålen brister dessvärre i kvalitet samt bryter mot reglerna och rekommendationerna för kursplaner (inklusive rekommendationer och regler för just lärandemål). Detta går i många fall att justera genom att formulera om lärandemålen så att de blir mer konkreta, tydliga och examinerbara. Dessvärre så känner vi inte igen många av formuleringarna i lärmålen. Här följer några lärandemål vi inte riktigt förstår vad de betyder:

“hur objektorienterade program och system fungerar internt”

Vad menas med “internt”? Vad är det för skillnad på objektorienterade program och system? Fungerar de olika “internt”? Och så vidare.

“redogöra för hur färdiga metoder i programbibliotek kan användas”

Finns det ofärdiga metoder?

“tillämpa enkla grafiska gränssnitt”

Vi förstår inte vad som menas med “tillämpa”. Ska studenterna kunna skriva program med enkla grafiska gränssnitt? Eller ska studenterna kunna använda program med enkla grafiska gränssnitt? Om det senare är fallet, vilka grafiska gränssnitt är enkla och vilka är komplicerade eller komplexa? Och så vidare.

“värdera olika realiseringar av enkla algoritmer”

Det här är för oss otydligt. Värdera hur? Vilka eller vems realiseringar? Vad är en enkel algoritm? Vad avses ens med en algoritm?

Andra lärandemål känns helt enkelt som om de hamnat i fel kursplan (möjligen på grund av att kurser har utvecklats innehållsmässigt under åren utan att kursplanerna ändrats för att återspegla denna utveckling). I kursen TIG058 – Programmeringsteknik och databaser, förekommer lärandemålet “förklara programmeringens grunder och Javas syntax”. Detta är emellertid något som lärs ut och examineras i programmets första kurs TIG015 – Informationsteknologi och informationssystem. Att en förskjutning av innehållet kunnat ske på detta vis (i förhållande till de fastslagna lärandemålen) tror vi beror på att lärandemålen och kursplanerna är alldeles för vaga och otydliga. I senaste iterationen av TIG058 konstruerade studenterna ett Client-Server-system med Java Servlets, JSON och ett grafiskt GUI (skrivet i Swing). Studenterna lärde sig använda och testa HTTP, JSON (parsning och användning) och en del designmönster (bland annat Builder och Factory). Detta är inte möjligt, menar vi, i en kurs vars lärandemål är att kunna “förklara programmeringens grunder och Javas syntax”. Det är snarare en förutsättning för att gå kursen att kunna programmeringens grunder och Javas syntax.

Kursplaneutveckling som process för utveckling av utbildningen

Göteborgs Universitets regler för kursplaner säger bland annat följande om lärandemålen:

Kursens lärandemål ska uttryckas i termer av förväntade studieresultat med avseende på vad som ska uppnås för godkänt betyg på kursen. Målen ska vara examinerbara, väl avvägda och realistiska med tanke på kursens omfattning och förkunskapskrav. Målen ska så lång möjligt preciseras och konkretiseras utifrån kunskapsformerna Kunskap och förståelse, Färdighet och förmåga, samt Värderingsförmåga och förhållningssätt, vilka kan formuleras tillsammans eller under respektive rubrik.

(vår fetstil)

https://medarbetarportalen.gu.se/digitalAssets/1617/1617200_anvisningar_kursplaner_170228.pdf

Det är tydligt att syftet med målen är att sätta fokus på studenternas lärande då de ska uttrycka förväntade studieresultat. Fokuset på studenterna och dessas studieresultat kräver också att lärandemålen är tydliga för studenterna, så att de förstår vad som krävs för att få godkänt på kursen. Det kräver också att vi formulerar dessa studieresultat på ett sätt som går att observera och examinera. För att uppnå dessa krav så behöver vi stöd och kollegiala diskussioner.

Vi kommer här använda oss av det stöd som PIL-enheten rekommenderar för utveckling av lärandemålen som stöd för vår argumentation att arbetet med att förbättra kursplanerna (även arbetet med lärandemålen) faktiskt möter upp mot de aktiviteter som beslutades under konferensen.

http://kursutveckling.se/dok/nshu_Larandemal_061011.pdf

I dokumentet “Att skriva förväntade studieresultat – Stöd för att skriva förväntade studieresultat på kursnivå” som PIL länkar till beskrivs vad lärandemål är och vad de är till för men också vad effekterna av tydliga lärandemål är. T ex sägs i början av dokumentet:

Tydliga lärandemål i form av förväntat studieresultat ger lärarna möjlighet att bygga vidare på tidigare kurser och är därför en förutsättning för progression.

Detta innebär ju, om man håller med dem och det gör vi, att en positiv bieffekt av att ha tydligare lärandemål underlättar arbetet på programnivå med att säkerställa en bättre progression mellan kurserna. Är målen tydligare så gäller ju inte det bara studenternas läsning av målen utan även lärarlagets läsning av målen.

I dokumentet finns också ett avsnitt om varför lärandemålen skall uttryckas i termer av förväntade studieresultat. Den första anledningen som anförs är att fokus sätts på studentens lärande. Detta motiveras i tre punkter som vi finner så relevanta att vi återger dem här:

  • Studenternas lärande blir centralt när man arbetar med formuleringar om vad studenterna ska kunna prestera efter en avslutad kurs.
  • Det är inte lärarna och deras undervisning som är det primära intresset, utan studenternas lärande.
  • Lärarnas viktiga uppgift är att på bästa sätt underlätta och stödja detta lärande.

Dessa är perspektiv som vi fullt delar. De beskriver väldigt väl vår syn på lärarrollen! Lärarens viktigaste uppgift är att underlätta och stödja studenterna i deras arbete med att lära sig kursens innehåll. Arbetsfördelningen är tydlig här. Kursens mål är inte att lärarna ska lyckas lära ut innehållet, utan att studenterna ska nå de krav som ställs för att få godkänt på kursen och dessa krav uttrycks i termer av vad studenterna ska kunna vid examination. Lärarnas uppgift är att stödja och underlätta för studenterna att nå dessa kunskapskrav och studenternas uppgift är att studera det material som kursen innehåller.

Det är glädjande att finna stöd för detta synsätt i dokument som rekommenderas av universitetet. Det är ett steg bort från katederundervisning där läraren från en upphöjd position förmedlar kunskap till studenterna i ett auditorium. Denna en-till-många-undervisning känns inte så modern. Naturligtvis ingår det i lärarens uppgift att i klassrummet förklara och föreläsa men det är inte den viktigaste uppgiften. För att studenterna ska kunna tillgodogöra sig kunskaperna och färdigheterna i kursen krävs också att de gör en insats och studerar. Lärarens viktigaste roll är att underlätta dessa studier och stötta studenterna i denna insats.

Under punkten Tydlighet som sedan följer i dokumentet listas en rad positiva effekter av att arbeta fram tydliga lärandemål. Studenterna ser vad som förväntas av dem under och efter kursen vid examination. En lärare som tar över en kurs får lättare att förstå vad kursen går ut på. Det gör kursen mindre sårbar och mindre personberoende. Med tydligare lärandemål ökar också lärarlagets samsyn om kurserna eftersom det lättare går att förstå vad en kurs leder till om detta uttrycks tydligt i lärandemålen. Relaterat till den förra punkten är att en lärare som håller en senare kurs har en bättre bild av studenternas förkunskaper – de är ju tydligare uttryckta i den tidigare kursens lärandemål. Slutligen finns här en extern dimension. Tydligare lärandemål gör det tydligare för arbetsgivare att förstå vad studenterna kan efter examen. Huruvida detta är positivt beror naturligtvis på om kunskaperna i lärandemålen motsvaras av det som arbetsgivaren efterfrågar, men det är en annan diskussion. Personligen vill vi själva lägga till att tydliga kunskapsbaserade lärandemål gör det lättare för studenterna att beskriva sin examen i CV eller under en anställningsintervju.

Vidare menar man, i dokumentet, att fokuset på studieresultat leder till mer realistiska mål. Om fokus i stället varit på vad läraren avser att lära ut, finns en risk att läraren saltar med lite för många punkter för att verka generös eller bred i sin kunskap. Med fokus på studieresultat förskjuts i stället fokus till att resultatet handlar om krav på såväl studenten som läraren.

Ett studentfokus på målen, menar man vidare, leder också till att det blir tydligare och lättare att se sambandet mellan mål, undervisning och examination. Denna tydlighet gör det lättare att utforma undervisningen och har stor betydelse för studentens lärande.

En annan effekt är, fortsätter man i dokumentet, att en process där man i lärarlaget (kollegiet) arbetar fram målen tillsammans ofta leder till en pedagogisk utveckling såväl som kursutveckling samt leder till insikter om undervisningen.

Uppföljning av kurserna blir, skriver man vidare, lättare och mer fokuserad på studenternas lärande. Det tycker vi låter rimligt och som en bra sak.

Resten av dokumentet ger konkreta förslag och en arbetsordning för hur arbetet med lärandemålen kan gå till. Det är av oss rekommenderad läsning för dem som vill se ett förslag på hur detta arbete rent konkret kan gå till.

Sammanfattningsvis så håller vi med om det som sägs i det länkade dokumentet om effekterna av att arbeta med lärandemålen. Genomför vi detta arbete som lärarlag tror vi att många av syftena med aktiviteterna som togs fram på konferensen uppnås. Progressionen i programmet kan lättare säkerställas, vi får ökad förståelse för varandras kurser och hur de relaterar till våra egna kurser och vi minskar sårbarheten och personberoendet för individuella kurser. Studenterna får en bättre kvalitet i kurserna och lättare att nå sina studieresultat. Diskussionerna kring lärandemålen kommer att stärka vår pedagogiska förmåga och få oss att reflektera över vår roll som lärare och vår undervisning.

När detta arbete är avslutat finns det anledning att ta tag i kursvärderingarna. Uppföljning och undersökning är naturligtvis också viktigt.

Posted in Uncategorized | Leave a comment

Sårbara kurser – TIG058

Bakgrund

Under ett möte med kollegor nyligen diskuterades hur sårbara kurser är vad gäller personberoende. Kursansvarig ombads att lämna in en analys av sina kurser och här kommer en analys av en av våra kurser.

Vi börjar med att analysera TIG058 då detta är den senaste kursen vi har hållit som kursansvariga. Kursen är för övrigt utvärderad och resultatet finns att läsa här:  Kursanalys och -utvärdering

Analys

För att kunna besvara frågan huruvida en kurs är sårbar behöver vi veta vad kursen innehåller, vilka mål den har samt hur den examineras. Det är kursplanen som bestämmer detta. Generellt tycker vi att kursplanerna här på Systemvetenskapliga programmet på Göteborgs Universitetet är i stort behov av revidering. Detta är en fråga vi tar upp separat och även något vi jobbar med just nu. Det är likväl så att det är kursplanerna som styr en kurs.

Innan vi går vidare kanske man skall diskutera på vilken sikt skall vi analysera sårbarheten. Gäller det om vi som lärare meddelar att vi inte vill eller kan hålla kursen en månad innan kursstart, eller om vi i god tid, t ex 1 år, meddelar att vi inte vill eller kan hålla kursen över huvud taget. Vi analyserar här bara utifrån personalbehovet, det vill säga krav på lärare för att kunna hålla aktuell kurs.

Låt oss börja med frågan hur sårbar kursen TIG058 är. Detta gör vi genom att dela upp frågan:

  • Avspeglar kursplanen någon specifik kompetens? Det vill säga, har vi skrivit kursplanen på ett sådant sätt att det “bara” är vi som kan hålla kursen? Detta skulle t ex kunna vara att vi går igenom (i kursplanen) specifikt angivna API:er i Java eller använder Android-miljön för att lära ut Java. Om kursen handlar om att lära ut programmering och vi har krav på Android-kompetens är det en sårbarhet i kursen i det att det ställer specifika krav på lärarens kunskaper. Andra exempel på samma sak skulle kunna vara att det (i kursplanen) listas ämen såsom Client-Server, matematiska begrepp, algoritmer, binära sökträd  eller annat som anses svårt (och fint) men egentligen inte behövs för att nå lärandemålen.
  • Är kursmaterialet (litteratur och så vidare) specificerat i kursplanen inte nog för att hjälpa studenterna att lära sig? Det vill säga är materialet av sådan kvalitet att detta räcker tillsammans med handledning från lärare (eller lärare tillsammans med studenthandledare)?
  • Är examinationsformen sådan att det krävs speciell kunskap?

 

Kursplanen

Kursplanen finns att ladda ner här: TIG058.

Lärandemål för kursen

Kunskap och förståelse

  • förklara programmeringens grunder och Javas syntax,
  • redogöra för hur färdiga metoder i programbibliotek kan användas,
  • beskriva hur utsökningar i SQL kan göras från i ett Javaprogram.

Färdigheter och förmåga

  • konstruera objektorienterade program,
  • använda färdiga metoder i programbibliotek,
  • tillämpa enkla grafiska gränssnitt,
  • använda en relationsdatabas,
  • tillämpa enklare utsökningar med SQL i ett Javaprogram.

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

  • värdera olika realiseringar av enkla algoritmer.

Vår kommentar: Man kan säga en hel del om  målen ovan. Vi tar denna diskussion vid ett annat tillfälle. I dag skall vi analysera sårbarheten.

Former för bedömning / Examination

Kursen examineras genom en individuell salstentamen (7,5 högskolepoäng), skriftlig gruppuppgift 1 (2,5 högskolepoäng), skriftlig gruppuppgift 2 (2 högskolepoäng) och en skriftlig gruppuppgift 3 (3 högskolepoäng).

Genomgång av kursens lärmål och examinationsform

Vi kommer att gå igenom kursens mål och examination utgående från frågorna ovan.

Specifik kompetens

Det finns i kursen TIG058 inga speciella kompetenskrav angivna i kursplanen.

Speciell utbildning eller erfarenhet

Det finns i kursen TIG058 inga speciella krav på utbildning eller erfarenhet (hos läraren) utifrån mål och innehåll angivna i kursplanen.

Kursmaterialet

Kursens material bedömer vi, som själva har skrivit materialet, vara nog för att kunna användas för självstudiekurser tillsammans med handledning. Vi gör denna bedömning utifrån följande:

  • Alla koncept i kursen tas upp i textform (publicerat på en wiki).
  • Alla koncept har filmer som kan användas istället för föreläsning.
  • Det finns övningar i progression i materialet.
  • Det finns lösningsförslag till alla övningar.
  • All källkod till kursen finns publicerad.
  • Allt material (texter, videofilmer, övningar) finns publicerat.

Kursens material är publicerat och licensierat under en sådan licens att användande är tillåtet om man anger källa. Med publicerat menar vi publikt tillgängligt utan kostnad eller inloggning.

Examinationsformen

Kursen examineras via tentamen och inlämningsuppgifter.

Det finns gamla tentor i den lärplattform som används på GU. Alla tentor har lösningsförslag, ibland dessutom i videoform. Gamla tentor samt lösningsförslag gör att det är enkelt att skriva och rätta nya tentor. I dagsläget finns endast en tentamen eftersom kursens innehåll gjordes om helt och hållet i samband med att vi tackade ja till kursansvar. Det finns inget i kursplanen som sätter några ytterligare krav på en lärare än just grundläggande programmering och databaser.

Inlämningsuppgifter finns redan och kan användas direkt. Vi har använt script för att underlätta rättningen av studenternas inlämningar. Även utan dessa går det att rätta inlämnngarna men det kan lite mer tid. Det finns inget i kursplanen som sätter några ytterligare krav på en lärare. Vidare finns det omfattande handledarinstruktioner för inlämningsuppgifterna med beskrivande lösningsförslag.

Slutsats

Kursen TIG058 ställer så klart krav på att läraren skall ha grundläggande kunskaper i programmering och databaser. Men inga ytterligare kunskaper behövs enlig kursplanen.

Materialet är av sådan karaktär att det kan användas i en självstudiekurs, så vi är säkra på att vi kan säga upp oss eller få sparken utan att detta har en negativ effekt på möjligheten att ge kursen.

Om vi tittar på vårt program, Systemvetenskapliga programmet på Göteborg Universitet, så ingår programmering som en del i programmet. Det finns många anställda på avdelningen; vissa som forskare andra som lärare. Om vi utgår ifrån att åtminstone forskare, och förmodligen även flertalet lärare, är utbildade informatiker, och då det inom Informatikutbildning alltid (vad vi kunnat se) ingår programmering och databaser, borde det vara enkelt att hitta någon i befintlig personal som kan hålla kursen TIG058 då den är en grundkurs inom huvudområdet Informatik och ges under första året.

Slutsatsen är att vi inte ser någon sårbarhet med kursen. Vi tror till och med att även en eller ett par framstående studenter (ibland kallat amanuens) skulle kunna hålla kursen med stöd av en lärare. Det senare stärks även av svaren i kursvärderingen, där handledarstudenterna fick högre betyg än lärare och materialet(!).
 

Posted in Uncategorized | Leave a comment

Förslag på övergångslösning

Bakgrund.

Vi skrev härom dagen en post En jämförelse mellan olika Systemvetenskapliga utbildningar i Sverige.

I ovanstående post, som namnet antyder, jämför vi olika systemvetenskapliga utbildningar i Sverige. Vi såg att det program där vi jobbar (på GU) har klart minst andel teknikrelaterade kurser. Utan att lägga värdering i saken, det vill säga vi vill inte uttala oss om huruvida det är bra eller dåligt med få teknikrelaterade kurser, vill vi här presentera ett förslag på hur man skulle kunna erbjuda studenter fler valbara programmeringskurser och därigenom öka andelen teknikkurser.

Förslag på övergångslösning

Följande kurser och kursförändringar föreslås:

  • TIG015 bryts upp i en “data-del” och en informatik del – 7.5 hp vardera
    • Datadelen blir en introduktion till datorer, programmering och “datalogi” – PROG-I (7.5 hp)
  • TIG058 bryts upp i två kurser:
    • Databaser I (7.5 hp) – introduktion till databaser och SQL
    • PROG-I – Programmeringsintroduktion med Java (7.5 hp)
      • Programmeringsintroduktionen motsvarar “gamla TIG015”, Java-delen
  • Ny kurs PROG-III – Klientprogrammering (15 hp) – Klienter mot API (HTML/JS och Android)
  • Ny kurs PROG-IV – Serverprogrammering (7.5 hp) – Server (back-end med exvis Servlets)
  • Ny kurs Databaser II (7.5 hp) – Fördjupning (relationsalgebra, frågeoptimering, normaliseringsgrader mm)
  • Ny kurs PROG-V (7.5 hp) – Klient-server-laboration (projekt)
  • Interaktionsdesignskursen (TIG164) kan innehålla programmering för dem som vill (eftersom förutsättningar nu finnes)

Med det nya förslaget skulle jämförelsen se ut så här:

SysVP-kursinnehåll-II

Fig.2 Poäng (och procent av 180 hp) tekniska kurser i systemvetarprogrammen, dels obligatoriska kurser men också obligatoriska kurser plus max antal tekniska valbara kurser efter vårt förslag.

Det vill säga: Om studenten endast läser obligatoriska kurser (varav 90 hp egentligen är valbara), så kommer vi ligga kvara på minst antal tekniska kurser. Men om förslaget antas, så kommer GU hamna på tredje plats vad gäller antal hp tekniska kurser.

Hur genomföra detta

Nedan följer ett förslag på hur dessa nya kurser kan placeras in i de sex terminerna  som studenterna läser. Vi delar in varje termin i fyra kurser och kallar dessa helt enkelt 1 – 4.

Termin 1

  1. PROG-I (7.5 hp)

Termin 2

  1. Databaser I – introduktion till databaser och SQL
  2. PROG-II (klientprogrammering)

Termin 3

  1. PROG-III – Klientprogrammering (15 hp)
  2. – “” –
  3. PROG-IV – Serverprogrammering (7.5 hp)
  4. Databaser II (7.5 hp)

Termin 4

  1. Interaktionsdesign (UX) (15.p)
  2. – “” –

Termin 5

  1. PROG-V (7.5 hp)
  2. – “” –

Termin 6

Fördelar

Vi ser, utöver att vi med ovanstående kurser erbjuder studenterna fler tekniska kurser, en del fördelar.

Studenter har berättat att de känner att det är för långt mellan programmeringskurserna i programmet. Med ovanstående lösning blir det en röd tråd i programmeringen.

Klient-server, vilket i sig är en viktig teknik, är svårt att lära ut samtidigt i samma kurs. Detta löses genom att lära ut dem separat i olika kurser samt att börja med klient.

Att lära ut databaskunskap och programmering i samma kurs är svårt då dessa ämnen inte nödvändigtvis hör ihop. Genom att separera dessa blir det enklare att lära ut.

Genom att studenterna har så varierande förkunskaper inom “data” får första programmeringskursern till stor del ägnas åt triviala saker som inte direkt hör till programmering. Genom att separera ut denna del i en egen kurs säkerställer vi att alla studenter har erfoderlig kunskap när de skall börja lära sig programmera. Samtidigt kommer man längre i introduktionskursen vad gäller saker som inte direkt har med programmering att göra.

Genom en gedigen introduktion (i PROG-I) kan vi ställa högre krav och öka tempot på programmeringskursen.

Interaktionsdesignskursen kan nu uppgraderas till en teknisk kurs (enligt vår definition) eftersom man nu vet att studenterna har en mööjöighet att kunna lösa en programmeringsuppgift.

Studenterna kan nu välja en mer teknisk inriktning, samtidigt som nuvarande inriktning erbjuds. Ambitiösa studenter kan läsa båda inriktningarna inom vår avdelning.

Studieplanen blir nu tydligare vad gäller valbarheten i år 2 och 3.

Genom att dela upp kurser i mindre sådana får vi en större flexibilitet vad gäller resurser i kurser, t ex kan en lärare hålla en databaskurs och en annan lärare hålla en programmeringskurs. Det medför tydligare kursansvar.

Att beakta på lång sikt

Studenter har för oss uttryckt att det är ett problem att de inte är behöriga att läsa på på master-nivå på tex SEM-programmet då det saknas en (1) kurs i algoritmer och datastrukturer för behörighet. Vi skulle vilja erbjuda en sådan kurs i programmet för att ta bort detta hinder.

En del av de studenter vi pratat med har läst kurser under sommaruppehållen. Detta har de gjort för att bredda sin utbildning med teknikkurser. De har dessutom gjort detta vid sidan om arbete. Sådana kurser borde vi kunna erbjuda här på avdelningen och på sommaren. Dessa kurser skulle kunna ges som så kallade distanskurser för att lättare kunna hantera resursbehovet.

Posted in Uncategorized

En jämförelse mellan olika Systemvetenskapliga utbildningar i Sverige

Vi har känt att det är lite pinsamt gentemot våra arbetskollegor och studenter i det att vi inte har bra kunskap om vad Systemvetenskap och Informatik är. Vi kände att vi måste försöka förstå ämnena. Vi kommer göra detta på en rad olika sätt och vi börjar i dag med att undersöka hur mycket tekniska ämnen olika universitet har på sina systemvetenskapliga program. Vi har spelat in en pod om saken också: En jämförelse mellan olika Systemvetenskapliga utbildningar

En jämförelse mellan olika Systemvetenskapliga utbildningar i Sverige

Utifrån vår roll som data- och programmeringslärare på det Systemvetenskapliga programmet vid Göteborgs Universitet, har vi tittat på programmet och jämfört hur det är utformat med avseende på ingående kurser, på GU och sex andra universitet och högskolor.

En känsla vi hade av programmet vid GU var att det fanns få obligatoriska tekniska kurser. Vi ville veta om detta var signifikant för ämnet eller för programmet på GU. Med “tekniska kurser” menar vi:

  • kurser om datorn, datorer, datorkommunikation (nätverk), operativsystem
  • programmering (men även närliggande kurser så som tillämpad matematik, logik och databaskurser)

Även kurser i systemutvecklingsmetodik har vi räknat, ifall programmering lärs ut och examineras som en del av kurserna. Till de tekniska kurserna har vi också räknat kurser om IT i de fall det ingått tillämpad IT (praktiska moment). Vi har räknat till exempel kurser i IT-säkerhet som en teknisk kurs ifall det enligt kursplan ingår praktiska moment, men inte om det endast varit teori om it-säkerhet. Vi räknar inte kurser om färdiga program och verktyg som tekniska om slutanvändaren inte är en tekniker. Till exempel är en kurs om Word eller Excel inte en teknisk kurs, medan en kurs om brandväggar är en teknisk kurs. Användaren av brandväggar är en tekniker. Användaren av Office-paketet är oftast inte en tekniker.

De universitet och högskolor vi jämfört har varit:

  • GU
  • Linköping
  • Lund
  • Borås
  • Trollhättan – HiV
  • Stockholm
  • Uppsala
    • Systemutvecklingsinrikting
    • Programvaruteknisk inrikting

För att göra jämförelsen rättvis så har vi dels räknat antalet högskolepoäng för tekniska kurser som är obligatoriska men även max antal högskolepoäng om en student väljer tekniska kurser uteslutande bland de valbara kurserna.

Här är ett diagram som visar vilka utbildningar som har flest obligatoriska respektive valbara tekniska kurser i systemvetarprogrammen:

 

SysVP-kursinnehåll-I

Fig.1 Poäng (och procent av 180 hp) tekniska kurser i systemvetarprogrammen, dels obligatoriska kurser men också obligatoriska kurser plus max antal tekniska valbara kurser

Genomsnittet högskolepoäng i obligatoriska tekniska kurser var 62 (34% av programmets 180 poäng). Genomsnittet om man räknar obligatoriska kurser plus max antal valbara tekniska kurser var 74 (41%).

Göteborgs Universitet lägger sig i botten med endast 22.5 hp obligatoriska tekniska kurser (12.5%) och 37.5 hp om man räknar obligatoriska plus max antal valbara tekniska kurser (20.83%).

Göteborgs Universitets Systemvetenskapliga program ligger alltså nästan 40 hp under genomsnittet vad gäller obligatoriska tekniska kurser och nästan 37 hp under snittet vad gäller obligatoriska plus max antal valbara tekniska kurser.

Att skillnaden mellan GUs obligatoriska kursers totala hp och obligatoriska plus max antal valbara kurser endast är 15 hp, beror på att det bara finns två officiella valbara kurser på hela programmet listade i programbeskrivningen varav en är teknisk och den andra icke-teknisk. Bägge är på 15 hp. Med officiella valbara kurser menar vi att i utbildningsplanen och andra dokument som listar kurserna i programmet inte ger alternativ till de kurser som studenterna läser under årskurs 2. Det gör att många studenter inte upplever att kurserna i tvåan är valbara. Hade institutionen (eller avdelningen) haft fler kurser i sin repertoire, så hade dessa kunnat listas som alternativ till kurserna i tvåan, vilket gjort det tydligare att kurserna inte är obligatoriska. Detta öppnar upp för en spännande möjlighet, vilket vi återkommer till i en senare bloggpost.

I topp ligger programmet vid Uppsala Universitet med programvaruteknik som inriktning (Uppsala har även en inriktning för Systemutveckling). Poängfördelningen vad gäller tekniska kurser (enligt vår definition ovan) är där: 105 hp (58% av programmets 180 poäng). Siffrorna gäller oavsett om  man räknar valbara kurser eller inte. På delad andraplats från toppen liger Stockholms universitet och Trollhättan (Högskolan i Väst) om man väljer max antal tekniska valbar kurser; 90 hp (50% av programmets 180 hp).

Slutsatsen från denna helt ovetenskapliga jämförelse är att Systemvetenskapliga programmet på GU är det program av de undersökta som ligger klart lägst vad gäller teknisk utbildning inom data, programmering och tillämpad IT. Vill man läsa Systemvetenskap men så lite som möjligt om IT, programmering och datorer så ska man alltså läsa vid GU. Vill man däremot läsa Systemvetenskap och samtidigt få så mycket data, programmering och tillämpad IT som möjligt, så bör man överväga att läsa vid Uppsala alternativt Stockholm eller Trollhättan.

Tekniska kurser enligt vår bedömning

Här kommer en sammanställning av programmens tekniska kurser (så som vi bedömt kurserna efter att ha studerat kursplanerna och litteraturlistorna).

Göteborgs universitet, obligatoriska

  • TIG015 Informationsteknologi och informationssystem, 15 hp (halva kursen handlar om programmering i Java, så 7.5 hp räknar vi)
  • TIG058 Programmeringsteknik och databaser, 15 hp

Diskussionspunkt: TIG059, systemutvecklingprojekt räknar vi inte som en teknisk kurs, då det inte i kursplanen står att det lärs ut programmering eller att det är krav på detta i projektet. Namnet på kursen antyder dock att detta borde vara en teknisk kurs. Lärmålen i kursen är:

Efter avslutad kurs förväntas studenten kunna: förklara en iterativ objektorienterad systemutvecklingsmodell, förklara hur modeller och metoder för systemutveckling, från de föregående kurserna TIG015, TIG016 och TIG058, passar in i en iterativ objektorienterad systemutvecklingsmodell. Använda metoder och modeller från kursens iterativa objektorienterade systemutvecklingsmodell, skapa en dokumentation över ett systemutvecklingsprojekt, styra ett mindre projekt. Bedöma vilken typ av kunskap som behöver tas fram under ett systemutvecklingsarbete.

Från lärmålen kan man utläsa att det rör sig om främst teoretiska kunskaper om systemutveckling. Det finns inget mål som rör programmering eller systemutvecklingen (i bemärkelsen att man producerar kod som går att exekvera). Vi har svårt att förstå vad kursen går ut på utifrån den information som ges i kursplanen. Därför räknar vi inte kursen som “teknisk” enligt vår definition.

Göteborgs universitet, valbara

  • TIG167 Fördjupning i programmering, 15 hp

Diskussionspunkt: TIG164, interaktionsdesign räknar vi inte som en teknisk kurs men är villiga att diskutera detta. Historiskt sett så har inte implementationsfasen (programmering av grafiska gränssnitt) lärts ut men examinerats ändå – så kallad problembaserad inlärning. Att studenterna lär sig implementation på eget bevåg och inte genom undervisning och handledning, gör att vi inte anser att det är en teknisk kurs. Lärmålen för kursen är:

Efter avslutad kurs förväntas studenten kunna: Identifiera de faktorer som påverkar interaktionen mellan användare och IT-baserade produkter/system, identifiera olika användarperspektiv som påverkar utvecklingen av interaktiva system, redogöra för hur ett tvärvetenskapligt angreppssätt behövs för att skapa användbara gränssnitt. Genomföra analys och design av en interaktiv produkt/system utifrån ett användarcentrerat perspektiv. Utveckla system med användarperspektiv utifrån utförd användar- och uppgiftsanalys. Implementera ett interaktivt system med gränssnittsprogrammering. Argumentera kring för- och nackdelar med olika tillvägagångssätt för att konstruera och utvärdera hållbara interaktiva gränssnitt

Det som gör att vi inte klassar kursen som teknisk, trots lärmålet “Implementera ett interaktivt system med gränssnittsprogrammering.” är att vi har förstahandserfarenhet av att detta inte lärs ut under kursen. Det är naturligtvis möjligt att samma situation gäller för de kurser på andra lärosäten som vi analyserat via kursplaner och litteraturlistor (vilket så klart är en svaghet i vår analys).

Märk väl, att med rätt förkunskaper (i form av tidigare tekniska kurser), så skulle TIG164 kunna bli en mycket mer teknisk kurs. Funnes det kurser i klient- och användargränssnittsprogrammering tidigare i programmet, så skulle kursansvarig med gott samvete kunna kräva att studenterna skapar ett grafiskt gränssnitt enligt de principer för interaktionsdesign som lärs ut. Dock kan det krävas teknisk handledning i att mappa koncept inom interaktionsdesignteorin med tekniker i användargränssnittsprogrammering.

Under denna punkt kan även man notera att “TIG164 Interaktionsdesign” är valbar trots att det står i examensbeskrivnignen att interaktionsdesign är en del av kunskaperna efter examen.

Uppsala – Programvaruteknik, obligatoriska

  • Programvaruteknisk baskurs 7.5 hp
  • Inledande programmering med Java, 7,5 hp (2IS20)
  • Databaser 1, 7,5 hp (2IS222) 7.5
  • Algoritmer och datastrukturer, 7,5 hp (2IS206)
  • Systemutvecklingsmetoder, 7,5 hp (2IS223)
  • Dynamiska webbapplikationer, 7,5 hp (2IS220)
  • Kvalitetssäkring i systemutveckling, 7,5 hp (2IS224)
  • .NET-programmering, 7,5 hp (2IS225)
  • IT-säkerhet, 7,5 hp (2IS229)
  • Arkitektur och designmönster, 7,5 hp (2IS226)
  • Databaser 2, 7,5 hp (2IS227)
  • Applikationsutveckling och mobilitet, 7,5 hp (2IS228)
  • Programvaruprojekt, 15 hp (2IS213)

Uppsala – Systemutveckling, obligatoriska

  • IS A/Informationssystem och systemutveckling, 15 hp (2IS044)
  • Informationssystem A/Objektorienterad programmering I, 7,5 hp (2IS006)
  • Informationssystem A/Databaser, 7,5 hp (2IS007)
  • Grundläggande människa-datorinteraktion, 7,5 hp (2IV061)
  • Algoritmik, 7,5 hp (1MA098)
  • Informationssystem B/Algoritmer och datastrukturer, 7,5 hp (2IS012)
  • Informationssystem B/E-tjänster och webbprogrammering, 7,5 hp (2IS014)
  • Informationssystem C/Objektorienterad programmering II, 7,5 hp (2IS023)
  • IS C/Internetbaserade system 7,5 hp
  • Informationssystem/Informationsinfrastruktur 7,5 hp

Lund, obligatoriska

  • SYSA11, Informatik: Introduktion till informationssystem, varav 8 hp tekniska
  • SYSB13, Informationssystem: IS- och verksamhetsutveckling, varav 7 hp tekniska
  • SYSA14, Informatik: IT-arkitektur och mjukvarusystem, varav 20 hp tekniska

Lund, valbara

  • INFC20, Informatik: Avancerade databassystem 7,5 hp
  • INFC50, Informatik: Content Management Systems 7,5 hp
  • INFC55, Informatik: Webbutveckling 7,5 hp

Borås, obligatoriska

  • Introduktion till programutveckling – från information till tillämpning 7,5 hp
  • Systemanalys och design 7,5 hp
  • Grundläggande programmering med C# 7,5 hp
  • Databasteknik 7,5 hp
  • Objektorienterad systemutveckling I 7,5 hp
  • Test av IT-system 7,5 hp
  • Webbdesign 7,5 hp
  • Objektorienterad systemutveckling II 7,5 hp

Stockholm, obligatoriska

  • Introduktion till data- och systemvetenskap 7,5 hp
  • Objektorienterad analys och design 7,5 hp
  • Programmering 1  7,5 hp
  • Databasmetodik 7,5 hp
  • Programmering 2 7,5 hp
  • Datorsystem 7,5 hp
  • Logik 7,5 hp
  • Projektarbete med programvaruteknik 15 hp

Stockholm, valbara

  • Tjänster för en uppkopplad värld 7,5 hp
  • Information och datasäkerhet 7,5 hp
  • Algoritmer och datastrukturer 7,5 hp

Trollhättan, obligatoriska

  • Databaser och databasdesign, 7.5 hp
  • E-tjänster och XML, 7.5 hp
  • Grundläggande programmering med ett objektorienterat språk, 7.5 hp
  • IT-säkerhet, 7.5 hp
  • Systemutveckling för mobila applikationer, 7.5 hp
  • Tjänsteorienterad systemarkitektur, 7.5 hp
  • UX-design, 7.5 hp
  • Webbprogrammering, 7.5 hp

Trollhättan, valbara

  • Systemutveckling för mobila applikationer II, 7.5 hp
  • Utvecklingsprojekt för mjukvara, 7.5 hp
  • Verksamhetsförlagd informatik med utvecklingsperspektiv, 15 hp

Linköping, obligatoriska

  • Problemlösning och programmering 7.5 hp
  • Informationssystemutveckling 5 hp
  • Objektorienterad programmering i Java 7.5 hp
  • Databaser och datamodellering 7.5 hp

Linköping, valbara

  • Datastrukturer och algoritmer 7.5 hp
  • Programutvecklingsmetodik 12 hp
  • Programmering i C# och .NET Framework 4 hp
  • Datastrukturer och algoritmer 7.5 hp
  • Programmering i C++ 6 hp
  • Interaktionsprogrammering 6 hp

För referens – kurser i Göteborg som vi bedömt “icke-tekniska” (ej tillämpade eller praktiska, eller ej IT-/datarelaterade)

År 1

Informationsteknologi och informationssystem, 15 hp (TIG015) (halva ej teknisk)

Verksamheter och information, 15 hp (TIG016)

Systemutvecklingsprojekt, 15 hp (TIG059)  (se diskussion ovan)

År 2

eBusiness & eGovernment, 15 hp (TIG098)

Affärssystem, 15 hp (TIG162)

Beslutstödsystem, 15 hp (TIG163)

Interaktionsdesign, 15 hp (TIG164) (se diskussion ovan)

År 3

IT – ledning, styrning och strategi, 15 hp (TIG064)

Tillämpad IT Management, 15 hp (TIG166)

Informatik som vetenskap, 15 hp (TIG165)

Examensarbete, 15 hp (TIG067) (har ej räknat examensarbete som teknisk i någon jämförd utbildning)

Examensbeskrivning:

Examensbeskrivning kandidatexamen i informatik (Systemvetenskap)

Diskussion

Ska en systemvetenskaplig utbildning innehålla tekniska (enligt vår definition ovan) kurser? Ska en utbildning inom Informatik göra det? Vi har ingen aning.

Jämförelsen visar dock att de undersökta utbildningarnas lärosäten tycker det i högre utsträckning än Göteborgs universitet.

Kanske är det bra med en stor bredd vad gäller teknisk tyngd i utbildningarna. Vår reflektion är mer åt hållet att det borde finnas fler möjligheter inom de valfria kurserna på GU att välja mer tekniska kurser. Det står naturligtvis varje student fritt att göra detta val inom universitetets utbud i stort men institutionen (i vart fall inom avdelningen Informatik) erbjuder som sagt bara en (eller möjligtvis två om man räknar interaktionsdesignkursen) teknisk kurs som “valbar” på programmets webbsida där kurserna och programmet beskrivs.

Kanske är det också bra om man tydligare marknadsför programmet på ett sätt som reflekterar att det är ett förhållandevis litet fokus på Tillämpad IT, programmering och “datorkunskap” på just GUs program. Det gör det lättare för studenterna att välja mellan programmen och högskolorna. Kanske skapar det också mer korrekta förväntningar på innehållet. Detta borde undersökas, exempelvis genom intervjuer och utvärderingar av studenter som studerat vid de undersökta högskolorna.

Kurser som vi bedömer vore särskilt relevanta att erbjuda

Bland de “tekniska” kurser vi identifierat hos de läroverk vi undersökt, bedömer vi följande som särskilt attraktiva att erbjuda även studenterna vid GU, åtminstone som valbara kurser:

  • Algoritmer och datastrukturer
  • Dynamiska webbapplikationer
  • Kvalitetssäkring i systemutveckling
  • Tjänster för en uppkopplad värld (så kallat IoT)
  • IT- och datasäkerhet 7,5 hp
  • Interaktionsprogrammering (dvs programmering av grafiska gränssnitt)
  • Systemutveckling för mobila applikationer (som en dedikterad kurs)
  • Databaser och datamodellering (som en dedikerad kurs)
  • E-tjänster och XML (kanske bredda med JSON även)
  • Logik (som en dedikerad kurs)
  • Datorsystem (https://daisy.dsv.su.se/servlet/Momentinfo?id=6372 för referens)
  • Objektorienterad analys och design (ja, som en dedikerad kurs med inriktning på programmering och praktik)
  • Designmönster (ej med som kurs bland undersökta program men låter ändå bra i våra öron)
  • Programming languages and paradigms

Further studies

Nej, vi skojade bara. Men det skulle vara intressant att undersöka samtliga systemvetenskapliga utbildningar. Här är en lista från en gammal webbsida. De som undersökts ovan har vi fetstilat.

Blekinge tekniska högskola

Chalmers tekniska högskola

Göteborgs universitet

Högskolan Dalarna

Högskolan i Borås

Högskolan i Gävle

Högskolan i Jönköping

Linnéuniversitet

Högskolan i Halmstad

Högskolan i Skövde

Högskolan Kristianstad

Högskolan på Gotland

Högskolan Väst

Karlstads universitet

Linköpings universitet

Luleå tekniska universitet

Lunds universitet

Mittuniversitetet

Malmö högskola

Mälardalens högskola

Stockholms universitet

Umeå universitet

Uppsala universitet

Örebro universitet

 

 

Fortsättning följer …

[Tillagt i efterhand. Här är uppföljande post: Förslag på övergångslösning]

Posted in Uncategorized | 1 Comment

Intervju med Patrik Willard

Härom dagen snackade vi lite granna med Patrik Willard som jobbar på Ericsson. Som vanligt handlade det om programmering, fördomar mot oss vanliga hederliga programmerare, test och undervisning. Patrik beskrev två lärare han haft som inspirerande och duktiga. Ingen av dessa lärarna var poddens egen Henrik Sandklef som faktiskt hade Patrik som student för hundra år sedan. Touch on you!

Buzzword bingo: emacs, vim, vi, tdd, test, java, erlang, python, utbildning, artikel, kompetens, vetenskap

Kika här: Intervju med Patrik Willard (på pod.juneday.se)

 

Posted in Uncategorized | Tagged , , , , , , , | Leave a comment