Suomeksi

Målen för huvudämnet

 Click here to expand...

Huvudämnet datateknik ger den studerande en bred kännedom om grunderna i datateknik. Innehållet motsvarar det internationellt kända området computer science. Genom kandidatstudierna lär sig den studerande att kontinuerligt skaffa fram information om, och kreativt använda, den senaste tekniken i varierande uppgifter inom databehandling. Kandidatstudierna bildar även en grund för diplomingenjörsstudier inom datateknik genom vilka den studerande fördjupar sig i ett valfritt specialområde.

Centralt inom datatekniken är programvara, behandling av digital information och människan som användare och utvecklare av datatekniska tjänster. Det främsta målet för huvudämnet är att den studerande utvecklar solida färdigheter i programmering. Den studerande kan beskriva uppgifter inom databehandling som abstrakta problem och hitta algoritmiska lösningar för dem samt verkställa lösningar i form av dataprogram. I studierna bekantar sig den studerande med begrepp, fenomen och lagbundenheter inom databehandling samt de centrala byggstenarna för programvarusystem såsom databaser, nätverkstjänster, digitala medier, användargränssnitt, hantering av data och datasäkerhetsteknik. Behärskning av dessa grunder ger möjlighet till både systematisk problemlösning och användning av kreativitet i skapandet av datasystem. Samtidigt lär sig den studerande att analysera användarens och kundens behov, förstå livscykeln hos produkter och tjänster samt hantera metoder för produktion av programvara.

Inom ett område under snabb utveckling är det viktigt att huvudämnet ger den studerande långlivade kunskaper och färdigheter som hen har nytta av under hela sin yrkeskarriär. Abstraktioner, metoder och kritiskt tänkande är viktigare än produkter och teknologier. I huvudämnet ingår exempelvis inga kurser i programmeringsspråk, utan målet är en bred uppfattning om modeller och stilar inom programmering. Mångsidiga färdigheter i programmering är en utgångspunkt för databehandling, och en mångsidig utveckling av dessa färdigheter står i fokus redan i början av studierna. Även matematiken har en central roll i databehandling: olika delområden inom datatekniken använder olika matematiska metoder, och en behärskning av dessa öppnar dörrar till tekniska expertuppdrag av mer krävande slag. Det lönar sig att studera mera matematik än vad som ingår i de obligatoriska studierna. Betoningen på fasta principer innebär trots allt inte att huvudämnesstudierna inom datatekniken är särskilt teoretiska, utan studierna innehåller många tillämpade övningar, varmed den studerande får bekanta sig med den senaste teknologin och stärka sin yrkesskicklighet.

Datateknik, med alla dess tillämpningar, utgör ett brett och mångsidigt fält. Därför har det gjorts noggranna överväganden i planeringen av huvudämnet. I undervisningen ligger fokus på sådana ämnesområden som är föremål för forskning vid Aalto-universitetet. I grundkurserna syns forskningen på så sätt att de hålls av lärare som bedriver forskning inom sina respektive ämnesområden. I takt med att studierna framskrider får den studerande bekanta sig med vetenskapliga metoder och informationskällor. I huvudämnet ligger fokus på utveckling av högklassiga tillämpningar och tjänster samt behandling av information. I huvudämnet ingår färre studier i datorteknik än tidigare, medan elektrotekniken helt har uteslutits. En studerande som är intresserad av dessa ämnesområden kan inkludera dem i sina valbara studier och på så sätt komplettera sitt kunnande.

I kandidatprogrammet ingår varje termin en studio- eller projektbaserad kurs. I denna kurs utvecklar den studerande sin kreativa problemlösningsförmåga samt sina färdigheter i grupparbete och projekthantering. Därtill bekantar sig den studerande med produktutveckling och affärsverksamhet samt får erfarenhet av branschövergripande samarbete. Under studiernas gång får den studerande öva sin muntliga och skriftliga kommunikation i både finska och engelska. Den studerande vänjer sig vid att använda engelska som arbetsspråk vid behov samt får försmak på hur det är att arbeta i en internationell arbetsmiljö.

Kandidatstudierna innehåller utöver huvudämnet datateknik även studier i matematik, naturvetenskap och ekonomi samt ett biämne och övriga valbara studier. Detta gör det möjligt för den studerande att avlägga en examen som kännetecknas av mångvetenskaplighet och där datateknik och något av dess tillämpningsområden kombineras med exempelvis företagsekonomi.

Rekommenderad ordningsföljd för studierna

År 1, höst

År 1, vår

År 2, höstÅr 2, vårÅr 3, höstÅr 3, vår
Johdatus opiskeluun (2 op)2. kotimainen kieli (2 op)Differentiaali- ja integraalilaskenta 2Aalto-kurssi (3 op)

SCI-projektikurssi (5 op) ja pääaineen valinnainen (5 op) tai

kandidaatintyö ja seminaari (10 op)

SCI-projektikurssi (5 op) ja pääaineen valinnainen (5 op) tai

kandidaatintyö ja seminaari (10 op)

Diskreetin matematiikan perusteetSähkömagnetismiTodennäköisyyslaskennan ja tilastotieteen peruskurssiVieras kieli (3 op)
Differentiaali- ja integraalilaskenta 1Aineen rakenneData Structures and AlgorithmsTietokoneverkotVapaasti valittava / sivuainekurssiVapaasti valittava / sivuainekurssi
Tuotantotalous 1MatriisilaskentaSoftware Project 1Software Project 2Vapaasti valittava / sivuainekurssiVapaasti valittava / sivuainekurssi
Ohjelmointi 1Programming 2Pääaineen valinnainenTheoretical Computer ScienceVapaasti valittava / sivuainekurssiVapaasti valittava / sivuainekurssi
Ohjelmointistudio 1Ohjelmointistudio 2Vapaasti valittava / sivuainekurssiPääaineen valinnainenVapaasti valittava / sivuainekurssiVapaasti valittava / sivuainekurssi

Tietokannat
Vapaasti valittava / sivuainekurssi

Kurssit 5 op, jos ei muuta ilmoiteta.

Grundstudier

Laajuus: 65 op
Vastuuprofessori: prof. Tuomas Aura
Koodi: SCI3027.A

Koodi

Kurssin nimi

Op

Periodi

Suoritus-
vuosi

Tietotekniikka 15 op:

CS-A1110

Ohjelmointi 1

Kurssin suoritettuasi ohjelmointi on sinusta hyödyllistä ja hauskaa.

Osaat itse kirjoittaa uusia tietokoneohjelmia ja tutkia ja muokata toisten kirjoittamia ohjelmia. Tunnet ohjelmoinnin keskeisimmät käsitteet, ja osaat keskustella niistä ja opetella itse lisää. Kurssi on työläs mutta palkitseva.

5

I-II

1.

CS-A1120

Programming 2

Johdatus tietokoneen toimintaan porttitasolta korkean tason ohjelmointikieliin. Ohjelmoinnin abstraktiot ja suorituskykyanalyysi. Funktionaalinen ohjelmointi, mm. rekursiiviset määritelmät ja rekursio. Johdatus algoritmiseen ongelmanratkaisuun, tietojenkäsittelytieteen ajattelutapa. Kurssin pääkieli on englanti; ohjausta saa myös suomeksi ja ruotsiksi.

5

IV-V

1.

CS-A1140

Data Structures and Algorithms

Kurssin suoritettuasi osaat tunnistaa, määritellä, esitellä, vertailla ja toteuttaa tietorakenteita ja algoritmeja sekä valita niitä mm. hakurakenteiksi ja järjestämisongelmaan. Pystyt myös keskustelemaan keskeisistä tietorakenteista ja algoritmeista käyttäen alan tyypillistä terminologiaa. Kurssin pääkieli on englanti; ohjausta saa myös suomeksi ja ruotsiksi.

5

I-II

2.

Matematiikka 25 op. Valitse joko suomen- tai ruotsinkieliset kurssit:

MS-A0401 *

Diskreetin matematiikan perusteet

5

I

1.

MS-A0409

Grundkurs i diskret matematik


I

2.

MS-A0102

Differentiaali- ja integraalilaskenta 1 (SCI)

5

II

1.

MS-A0109

Differential- och integralkalkyl 1


I


MS-A0002

Matriisilaskenta (SCI)

5

III

1.

MS-A0009

Matrisräkning


II


MS-A0202

Differentiaali- ja integraalilaskenta 2 (SCI)

5

I

2.

MS-A0209

Differential- och integralkalkyl 2


III

1.

MS-A0502 *

Todennäköisyyslaskennan ja tilastotieteen peruskurssi

5

II

2.

MS-A0509

Grundkurs i sannolikhetskalkyl och statistik


III


Fysiikka 10 op. Valitse joko suomen- tai ruotsinkieliset kurssit:

PHYS-A1130

Sähkömagnetismi (SCI)

5

III

1.

PHYS-A5130

Elektromagnetism


III


PHYS-A1140

Aineen rakenne (SCI)

5

IV

1.

PHYS-A5140

Materiens struktur


I


Tuotantotalous 5 op. Valitse joko suomen- tai ruotsinkielinen kurssi:

TU-A1100

Tuotantotalous 1

5

I-II

1.

TU-A1200

Grundkurs i Produktionsekonomi

5

I-II

1.

Yleis-, kieli-, ja Aalto-opinnot 10 op:

SCI-A0000

Johdatus opiskeluun

2

I-V

1.

 

Aalto-opinnot

3

 

2.

LC-5001 **

Toisen kotimaisen kielen (ruotsi) kokeen kirjallinen osio

1

 

1.

LC-7001**

Toisen kotimaisen kielen (suomi) kokeen kirjallinen osio




LC-5002 **

Toisen kotimaisen kielen (ruotsi) kokeen suullinen osio

1

 

1.

LC-7002**

Toisen kotimaisen kielen (suomi) kokeen suullinen osio




**

Vieras kieli

3

 

2.

* Kurssista on useita rinnakkaisia versioita eri periodeilla. Mikä tahansa rinnakkaisista versioista käy perusopintoihin, mutta tässä mainittu kurssikoodi on ensisijainen, tietotekniikan malliohjelman mukainen kurssi.

** Lisätietoja kieliopinnoista ja kielitaidon osoittamiseen kelpaavista kursseista oppaan luku Tutkintoon kuuluvat kieliopinnot ja https://into.aalto.fi/display/filc/Etusivu.

Huvudämne

Laajuus: 65 op
Vastuuprofessori: prof. Tuomas Aura
Koodi: SCI3027

Koodi

Kurssin nimi

Op

Periodi

Suoritusvuosi

Pakolliset kurssit 55 op:

CS-A1150

Tietokannat

Tietokantoja tarvitaan kaikkialla: opiskelijarekistereissä, verkkokaupoissa, terveydenhuollon tietojärjestelmissä jne. Tällä kurssilla opit suunnittelemaan tietokantoja ja tekemään erilaisia tietokantakyselyjä SQL-kielellä. Kurssilla käsitellään lyhyesti myös muita tietokantatyyppejä.

5

III-V

1.

CS-C2100

Ohjelmointistudio 1

Kurssilla opiskellaan ongelmalähtöisesti digitaalisen median peruskäsitteitä ja syvennetään ohjelmointiosaamista mediaohjelmoinnin avulla. Pääset harjoittelemaan ohjelmointia tehtävissä, joiden aiheena on esim. kuvan ja äänen esitys, pakkaus ja suodatus. Kurssilla opitaan myös ryhmässä toimimista sekä avointen ongelmien ratkaisua.

Huom! Kurssi suoritetaan yhdessä kurssin CS-A1110 Ohjelmointi 1 kanssa.

5

I-II

1.

CS-C2120

Ohjelmointistudio 2: projekti

Kurssilla opetellaan laajempien ohjelmien suunnittelua ja toteutustekniikoita yksilöllisen ohjelmointiprojektin ja harjoitusten kautta. Kurssi myös esittelee uusia ohjelmoinnin abstraktioita ja rakenteita sekä työkaluja koodin hallintaan ja jatkokehityksen helpottamiseen.

5

III-V

1.

CS-C2130

Software Project 1

In Software Project 1-2, students carry out a large software development project in teams for a real client from industry or academia. The students become familiar with the problem domain and implementation technologies of the chosen project. They also get an understanding of the structure and technical and non-technical challenges of software development projects
and learn to apply the Scrum process framework. The two project courses should be completed in the same academic year.

5

I-II

2.-3.

CS-C2140

Software Project 2

5

III-IV

2.-3.

CS-C2150

Theoretical Computer Science

In this course you will learn the basic models of computation and to build and use such computing machines. Finite automata, regular languages, pushdown automata, context-free grammars, Turing machines and computability, basics of computational complexity. You will also learn about the foundations behind the science of software, which are formal logic and theorem proving.

5

III-IV

2.

ELEC-C7241

Tietokoneverkot

Kurssilla tutustutaan verkkosovellusten ja tietokoneverkkojen toimintaan. Ymmärrät, kuinka Internet toimii, ja miten sen palveluita käytetään ohjelmistoissa. Osaat kirjoittaa verkon yli toimivia sovelluksia.

5

III-IV

2.

SCI-Cxxxx

SCI-projektikurssi

Kurssilla toteutetaan tuotekehitysprojekti monialaisessa ryhmässä, jossa toimit tietotekniikan asiantuntijana. Opit tyypillisen innovaatioprosessin vaiheet, ongelmanratkaisua, omien ajatusten esittämistä, liiketoimintanäkökohtien huomioimista ja projektinhallintaa.

5

I-II
tai
III-V

Aikaisintaan 2. kevät

SCI3027.kand

Kandidaatintyö ja -seminaari

Kandidatarbete och seminarium

10

I-II
tai
III-IV

3.

SCI.kyps

Kypsyysnäyte

0

 

3.

Valitse kolme seuraavista kursseista (yhteensä 15 op). Opiskelija voi halutessaan suorittaa enemmänkin pääaineen valinnaisia kursseja ja sisällyttää ylimääräiset vapaasti valittaviin opintoihin:

CS-C3100

Computer Graphics

Three-dimensional computer graphics denotes the techniques that draw everything on your screen when you play a game or watch an effects-heavy movie. The course covers the fundamentals of 3D graphics from a modern perspective, from geometric modeling to animation and to efficient rendering.

5

I-II

2.-3.

CS-C3120

Human-Computer Interaction

This course covers the foundations of Human-Computer Interaction - how computer systems are designed to support the needs of the people who will use them. We introduce UI and UX design with focus on a user-centered design process, from understanding user requirements to prototyping and testing designs, as part of the software development process. We also look into how the relationship between computers and humans is evolving, and how we might interact with computer systems in the future.

5

I-II

2.-3.

CS-C3160

Data Science

The goal of data science is to extract useful and insightful knowledge from digital data. This course introduces students to data-science methodology and tools. You will learn to represent natural data in digital form and to apply elementary statistical and algorithmic methods to process the digital data, leading to actionable results. Statistical estimation of parametric distributions, classification, prediction, clustering, pattern mining and network analysis. The course serves as a basis for subsequent studies in data analysis and machine learning.

5

II

2.-3.

CS-C3140

Operating Systems

Operating systems provide basic services and abstractions on which most computing applications and services are built. This course covers the fundamental components and functions of a complex operating system from process and memory management to file systems, networking and device drivers. Linux is used as a practical example.

5

I

2.-3.

CS-C3170

Web Software Development

The distributed architecture of web software differs fundamentally from traditional desltop software. This course provides a software development viewpoint to the web, covering both the client and server sides through exercises and a group project on web service development.

5

II-III

2.-3.

CS-C3130

Information Security

Fundamental concepts and models of computer security, common security mechanisms and their limitations, threat analysis, data privacy, secure programming. Learn to think like the attacker.

5

I

2.-3.

CS-C3150

Software Engineering

The course provides a broad, but practical view of the major areas in software engineering, including requirements, design, implementation, testing, and delivery as well as software processes, including traditional and agile development. The course is delivered in moodle and consists of a fixed schedule of video lectures and assignments.

5

I-II,

III-IV

2.-3.

CS-E4580

Programming Parallel Computers

This is a practical hands-on course on algorithm
engineering for modern parallel computers. The
students will learn how to design programs that make the best possible use of the computing power of multicore CPUs and GPUs.

5

V

2.-3.


Tietotekniikan opiskelijoille, jotka haluavat laajentaa matemaattista tai menetelmällistä osaamistaan pääainetta tukevilla opinnoilla, suositellaan esimerkiksi seuraavia vapaavalintaisia kursseja:

Koodi

Kurssin nimi

Op

Periodi

MS-C1081

Abstract algebra

5III

MS-C1342/

MS-C1343

Lineaarialgebra/

Linear algebra

5

V

I

MS-C1620 Statistical inference5III-IV

MS-C2105

Introduction to optimization

5IV

MS-C2111

Stochastic processes

5II

ELEC-A7100

C-ohjelmoinnin peruskurssi

5III-V

ELEC-A7151

Object oriented programming with C++

5I-II
CS-E3190Principles of Algorithmic Techniques5I-II

CS-E4600

Algorithmic Methods of Data Mining

5I-II

CS-E4800

Artificial Intelligence

5III-IV

CS-E4840

Information Visualization

5IV