Programbeskrivning för Datateknik, 300hp (Chalmers) Peter Lundin och Patrik Jansson Utkast 2011-04-30 1 Programsyfte Civilingenjörsprogrammet i datateknik syftar till att studenten ska utveckla kunskaper, färdighet och förhållningssätt som gör att de: på ett ingenjörsmässigt sätt kan delta i och leda utveckling av generella datorsystem i en internationell omgivning och i samklang med samhälle och miljö. Detta är (men borde inte vara) nästan samma som början av Programmål nedan. kan lösa forskningsmässiga och komplexa datatekniska problem. är väl förberedda för fortsatta studier på forskarnivå inom datateknik. Att arbeta på ett ingenjörsmässigt sätt innebär att tillsammans med andra utvecklare och med användare av systemet inom givna ekonomiska och tidsmässiga ramar utveckla en tillräckligt bra lösning för ett datatekniska problemet. Utbildningen ska även ge goda möjligheter till utveckling av de personliga egenskaper och attityder som bidrar till god ingenjörsetik. Programmet leder till en Civilingenjörsexamen i datateknik. 2 Programmål En civilingenjör i datateknik ska ha en bred kompetens inom datateknik och ska: på ett ingenjörsmässigt sätt, kunna delta i och leda utveckling av komplexa datorsystem bestående av hård- eller mjukvara, såväl för generella som för tekniska system. kunna genomföra utvecklingsarbeten i både nationella och internationella miljöer och i samklang med samhälle och miljö. visa goda teoretiska kunskaper samt praktiska färdigheter. kunna lösa forskningsmässiga och komplexa datatekniska problem. 2.1 Matematiska, naturvetenskapliga och teknikvetenskapliga kunskaper (CDIO 1.0) En civilingenjör i datateknik ska ha en tillräcklig matematisk, naturvetenskaplig och teknisk bas för att kunna arbeta med komplexa ingenjörsmässiga problem samt ha fördjupade kunskaper inom ämnesområdet datateknik och datalogi. Programbeskrivningen är baserad på ett utkast av Peter Lundin 2010-04-11, endast lätt editerat (och konverterat till LA T EX i april 2011 av Patrik Jansson. 1
2.1.1 Kunskaper i grundläggande matematiska och naturvetenskapliga ämnen (CDIO 1.1) Centralt är att: 1. Kunna använda matematik och matematisk statistik som verktyg för att strukturera och lösa problem. 2. Ha kunskaper i diskret matematik i den omfattning som krävs för god förståelse av datavetenskapliga tillämpningar. 3. Visa kunskaper och förståelse inom naturvetenskap, speciellt inom områden som har konsekvenser för datoriserade systems utformning. 4. Kunna modellera linjära fysikaliska system och kunna använda modellen för att beskriva systemets egenskaper. 2.1.2 Kunskaper i teknikvetenskapliga ämnen (CDIO 1.2) En civilingenjör i datateknik ska ha breda och fördjupade kunskaper, färdigheter samt förståelse inom ämnesområdet datateknik och datalogi samt grundläggande kunskaper inom elektroteknik. Detta innebär att de ska: 1. kunna tillämpa några olika programmeringsparadigmer och programmeringsspråk, metoder och verktyg i form av utvecklingsmiljöer och kompilatorer. 2. ha tillräckliga kunskaper inom ett brett område av datalogi och datorteknik för att kunna medverka i utveckling av säkra och pålitliga hård- eller mjukvaror till inbyggda och generella datorsystem enligt vedertagna och professionella utvecklingsmetoder från en given specikation. 3. kunna utarbeta kravspecikationer för ett datorsystem enligt vedertagna metoder. 4. kunna analysera och modellera linjära system samt datatekniska system och processer. 2.1.3 Fördjupade kunskaper i något/några tillämpade ämnen (CDIO 1.3) 1. ha fördjupade kunskaper inom ett avgränsat område av datateknik och eller datalogi i en omfattning som möjliggör fortsatta studier på forskarnivå. 2. kunna på ett ingenjörsmässigt sätt deltaga i och leda utveckling av komplexa datorsystem. 3. kunna medverka i eller initiera utveckling av ny teknik inom ämnesområdet. 2.2 (Individuella och) yrkesmässiga färdigheter och förhållningssätt (CDIO 2.0) 2.2.1 Ingenjörsmässigt tänkande och problemlösande (CDIO 2.1) En civilingenjör i datateknik ska kunna: 1. på ett eektivt sätt sätta sig in i nya områden, tekniska så väl som icketekniska, dvs ha bredd inom matematik och naturvetenskap, men även insikter i andra områden inom tex samhällsvetenskap eller humaniora. 2. utifrån en lös beskrivning eller observerad situation utforma en problemdenition och lösningsförslag för ett datatekniskt problem. 3. lösa öppna datatekniska problem utifrån en problemdenition. 2
2.2.2 Experimenterande och kunskapsbildning (CDIO 2.2) 1. kunna lösa problem genom att formulera hypoteser och utvärdera dessa genom experimentell utveckling av programvara och datorkonstruktion med hjälp av relevant utrustning och metodik. 2. ha förmåga till kontinuerlig breddning och fördjupning av egna kunskaper. 2.2.3 Systemtänkande (CDIO 2.3) 1. kunna modellera, simulera samt förutsäga och utvärdera skeenden för datatekniska system med hjälp av matematiska metoder eller simuleringsverktyg. 2.2.4 Individuella färdigheter och förhållningssätt (CDIO 2.4) En civilingenjör i datateknik ska kunna identiera var hon/han själv kommer till sin rätt utifrån har förståelse för olika roller samt kännedom om sina egna styrkor och svagheter. 2.3 Förmåga att arbeta i grupp och att kommunicera (CDIO 3.0) En civilingenjör i datateknik ska ha tillräckliga färdigheter inom språk, ledarskap, projektledning och kommunikation för ett arbete som ingenjör i ledande befattning eller som ledare i svenska och internationella IT-företag. 2.3.1 Att arbeta i grupp (CDIO 3.1) 1. kunna arbeta i projekt med respekt för tidsplaner och för tekniska, etiska och aärsmässiga begränsningar samt för övriga projektdeltagares roller 2. ha förmåga att leda och samarbeta i projekt med grupper av olika sammansättningar. 3. ska ha en god grund för att kunna initiera, planera, leda och utvärdera tekniska utvecklingsprojekt. 2.3.2 Att kommunicera(cdio 3.2) En D-ingenjör ska ha goda färdigheter i muntlig och skriftlig kommunikation. Detta innebär att hon/han ska kunna presentera resultatet av tekniskt utvecklingsarbete på ett strukturerat sätt och med relevanta tekniska hjälpmedel i såväl tal som skrift. 2.3.3 Att kommunicera på främmande språk (CDIO 3.3) En civilingenjör i datateknik ska 1. kunna tillgodogöra sig engelska texter inom det egna teknikområdet samt kunna presentera projektresultat såväl skriftligt som muntligt på engelska 2. ha förmåga att hantera kulturella skillnader. 3. 3
2.4 Planering, utveckling, realisering och drift av tekniska system med hänsyn till aärsmässiga och samhälleliga behov och krav (CDIO 4.0) Samhälleliga villkor inklusive ekonomiskt, socialt och ekologiskt hållbar utveckling: En D-ingenjör ska ha perspektiv på teknikens betydelse och sin egen roll som ingenjör i samhället, både nationellt och globalt, och beaktar hållbar tillämpning av teknik. 2.4.1 Samhälleliga villkor (CDIO 4.1) En civilingenjör i datateknik ska ha förståelse för att vid systemutveckling beakta möjligheterna till anpassning mot hållbar utveckling, miljötekniska krav och andra samhälleliga villkor. 2.4.2 Företags- och aärsmässiga villkor (CDIO 4.2) En civilingenjör i datateknik ska ha insikt i de aärsmässiga och företagsmässiga villkoren för utveckling och införande av ny teknik. 2.4.3 Att planera system (CDIO 4.3) En civilingenjör i datateknik ska ha tillräckliga kunskaper och färdigheter i att kravsätta system och produkter för att kunna medverka i och snabbt förstå industrins egna processer för detta. 2.4.4 Att utveckla system (CDIO 4.4) 2.4.5 Att realisera system (CDIO 4.5) 2.4.6 Att ta i drift och använda (CDIO 4.6) 3 Programutformning 3.1 Programidé Programmet skall genom sin utformning ge alla studenter på programmet en möjlighet och förmåga att utvecklas kunskapsmässigt inom framförallt ett brett fält av datateknik och datalogi samt individuellt som person inom områden som ger stöd i den kommande yrkesrollen som ledande teknikutvecklare. Programmets ska ge en god grund för att i den kommande yrkesverksamheten, på olika nivåer, aktivt kunna medverka i och leda utveckling av hård- och framförallt mjukvara för både inbyggda och generella datorsystem. Detta kräver teoretiska grundkunskaper inom både datateknik och matematik. 3.2 Programplan Programmet har en struktur enligt Bolognamodellen med en första cykel om tre år på grundläggande nivå (kandidatexamen) samt en efterföljande cykel om 2 år med kurser på avancerad nivå (masterprogram). Den senare cykeln av utbildningen genomförs helt på engelska tillsammans med internationella studenter och syftar till att ge fördjupade kunskaper inom en begränsad del av ämnesområdet datateknik för att skapa möjligheten att kunna leda och medverka i utveckling av mer komplexa datorsystem. 4
Genom att i de första två åren nästan enbart erbjuda obligatoriska kurser följt av ett tredje år med en relativt stor valbarhet ges en tillräcklig gemensam ämnesplattform som karakteriserar en civilingenjör i datateknik samt en valbarhet för att testa olika områden inför den kommande specialiseringen i de avslutande två åren. Det tredje året avslutas med ett kandidatarbete inom vilket man i en projektgrupp genomför en projektuppgift vanligen i form av ett konstruktionsuppdrag. Kandidatarbetet skall ge tillfälle att kombinera kunskaperna från olika tidigare kurser samt ge träning i olika faser av ett utvecklingsprojekt. Programmet är indelat i kurser omfattande 7.5 hp och av vilka man läser två per halvtermin (läsperiod). Fördelningen i tiden för de tre första åren ges av nedan årskurstablå där varje kolumn motsvarar en läsperiod. Årskurs 1 Introduktion till funktionell programmering Inledande diskret matematik Årskurs 2 Objektorienterad programmering Matematisk statistik och diskret matematik Digital- och datorteknik Maskinorienterad programmering Elektriska kretsar och fält Linjär algebra Matematisk analys Bärkraftig resursanvändning Datastrukturer Digitalteknik Datorsystemteknik Fysik för ingenjörer Parallell programmering eller Programmeringsparadigmer Datakommunikation Årskurs 3 Transformer, signaler och system Reglerteknik Kandidatarbete Kandidatarbete forts. Valfri kurs Valfri kurs Valfri kurs Valfri kurs Årskurs 4 och 5 Under de avslutande två åren följer studenterna ett av för närvarande sex möjliga specialiseringar i form av tvååriga masterprogram. Programmen skiljer sig åt avseende förkunskaper och platsgaranti. Samtliga program består av 45 hp obligatoriska kurser som tillsammans med det avslutande masterexamensarbetet om 30 eller 60 hp säkerställer fördjupningen inom den valda specialiseringen. För det övriga innehållet i masterprogrammen erbjuds en stor valfrihet avseende kurser och kursinnehåll i syfte att erbjuda studenten en möjlighet till en personligt styrd breddning/fördjupning av utbildningen. De masterprogram som erbjuds inom datateknik är för närvarande de nedan angivna. För programmen: Computer Systems and Networks Computer Science Algorithms, Languages and Logic gäller att om man antagits till civilingenjörsprogrammet i datateknik och uppfyller de allmänna kraven för att antas till ett masterprogram är man garanterad en plats på något av dessa tre program. Det nns inget krav 1 på att ha läst speciella kurser under de tre första årens studier. För programmen: Software Engineering 1 Patrik: Detta vill jag ändra på. Jag tycker att alla MP skall ha speciella antagningskrav utöver obligatoriet. 5
Interaction Design and Technologies Embedded Electronic System Design har man inte garantiplats. För att bli behörig behöver man dessutom läsa vissa angivna kurser under det tredje läsåret. För information om förkunskapskrav och övrig information hänvisas till respektive masterprograms utbildningsplan som man hittar via Chalmers hemsida under Jag vill bli student. Till masterprogrammen antas även studenter från andra svenska eller internationella högskolor och universitet. Undervisning och examination på masterprogrammens samtliga kurser genomförs på engelska. Regler för fortsatta studier i det avslutande masterprogrammen Studenter som tillhör programmet får påbörja studierna på ett masterprogram om nedanstående grundläggande krav samt eventuella särskilda behörighetskrav avseende masterprogrammet är uppfyllda. Klarat av minst 135 hp kurser (exklusive kandidatarbetet) inom programmets åk 1-3 vid mitten av juni. Klarat av kandidatarbetet innan terminsstarten år 4 Urval till masterprogram kommer att ske vid platsbrist. Urvalet grundas på meriter från studierna på kandidatnivå. Rätten till garantiplats på ett masterprogram kvarstår i tre år efter avslutad åk 3. Information om behörighet till ett visst masterprogram för studenter med annan utbildningsbakgrund än Datateknik vid Chalmers ges via Chalmers hemsida under Jag vill bli student. 4 Koppling mellan programmål och programplan, Programdesignmatris 5 Vision om D-programmets framtid Vi lever i en oerhört spännande tid när datatekniken inltrerar snart sagt varje del av samhället. Vi är alla användare av datatekniska produkter och tjänster och det är svårt att tänka sig vårt moderna samhälle utan mobiltelefoner, Internet och ABS-bromsar. För användare räcker det att tekniken fungerar (och ser bra ut) men i bakgrunden måste någon planera, utveckla, implementera och underhålla (de ofta programvarubaserade) systemen. Det är där som huvudfokus bör vara för D-programmet nu och i framtiden. Samhället (inklusive industrin) behöver dataingenjörer som har koll på god kvalitet, hög produktivitet och låga kostnader. Men en högre utbildning är så mycket mer än såpersonlig utveckling, nykenhet och innovation är också viktiga komponenter. Många kommer inte att jobba just med det de lärt sig på Chalmers men en gedigen bakgrund i teknik och problemlösning kan räcka långt i nästan alla områden. Många går vidare till forskning och utveckling och för dem gäller det att tidigt hitta utmaningar och ingångar som leder dem vidare. Slutligen nns också övergripande utmaningar för mänskligheten i stort som delproblem inom den globala omställningen till en hållbar utveckling. Här känner jag att det nns mycket att göra med datateknik som verktyg och därmed bör det nnas goda chanser att utveckla utbildningen så att detta framgår redan tidigt. Några till punkter jag vill Patrik: Detta är den text jag skrev i ansökan för att bli PA för Datateknik november 2010. utnyttja studenternas egna erfarenheter och intressen genom att erbjuda rejäla möjligheter till valfrihet redan inom de första tre åren. 6
se ett fortsatt nära samarbete med IT och med datavetenskap (på GU), men även med E, Z, samt SE&M (på GU). arbeta i nära samråd med berörda institutioner och lärare. främja datorstödd modellering och högnivåspråk inom alla ämnen: datavetenskap, datorteknik, matematik, teknikbredd,... utveckla kandidatdelen av programmet baserat på vad masterutbildningen behöver (enl. lärare och studenter). utveckla masterprogrammen baserat på vad framtida arbetsgivare (industri, akademi, samhälle) behöver och studenter vill. öka rekryteringen av studenter inom EU särskilt från östeuropa. 6 Övrigt (diverse ej klar text) Aärsmässiga villkor och i samklang med samhälle och miljö betyder att högskoleingenjören kan förvissa sig om att produkten bidrar till hållbar utveckling, socialt, ekonomiskt och miljömässigt, ta hänsyn till resursmässiga begränsningar under utveckling, drift och avveckling Civilingenjör För civilingenjören gäller dessutom följande. Ingenjörsmässigt betyder att civilingenjören kan Driva utveckling betyder att civilingenjören kan följa teknikutvecklingen och medverka i utvärdering och val av teknik eller process såsom utvecklingsmiljöer, plattformar och utvecklingsprocesser.. medverka i utvecklingsfronten inom något specialområde, agera i en internationell miljö med hjälp av god engelska och förmåga att hantera kulturella skillnader, fungera i ett ertal olika roller med förståelse för andras funktioner, tex roller som att leda arbete, styra process eller göra teknikval Aärsmässiga villkor och i samklang med samhälle och miljö betyder att civilingenjören kan utveckla verksamhet med hjälp av kunskaper inom aärsutveckling och entreprenörskap. 7