Sovellusohjelmointi (5 op)
Toteutuksen tunnus: 5000BL73-3018
Toteutuksen perustiedot
Ilmoittautumisaika
01.06.2024 - 04.09.2024
Ajoitus
02.09.2024 - 18.12.2024
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Suomi
Paikat
75 - 105
Koulutus
- Tieto- ja viestintätekniikan koulutus
Opettaja
- Sami Pyöttiälä
Ryhmät
-
PTIVIS23APTIVIS23A
-
PTIVIS23BPTIVIS23B
-
PTIVIS23CPTIVIS23C
- 02.09.2024 14:00 - 16:00, PERUUTETTU 2.9 osalta (Teoria, Sovellusohjelmointi 5000BL73-3018)
- 04.09.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 04.09.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 05.09.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 09.09.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 11.09.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 11.09.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 12.09.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 16.09.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 18.09.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 18.09.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 19.09.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 23.09.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 25.09.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 25.09.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 26.09.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 30.09.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 02.10.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 02.10.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 03.10.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 07.10.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 09.10.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 09.10.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 10.10.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 21.10.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 23.10.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 23.10.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 24.10.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 28.10.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 30.10.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 30.10.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 31.10.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 04.11.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 06.11.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 06.11.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 07.11.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 11.11.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 13.11.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 13.11.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 14.11.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 18.11.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 20.11.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 20.11.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 21.11.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 25.11.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 27.11.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 27.11.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 28.11.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 02.12.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 04.12.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 04.12.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 05.12.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 09.12.2024 14:00 - 16:00, Teoria, Sovellusohjelmointi 5000BL73-3018
- 11.12.2024 08:00 - 10:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 11.12.2024 10:00 - 12:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
- 12.12.2024 14:00 - 16:00, Harjoitukset, Sovellusohjelmointi 5000BL73-3018
Tavoitteet
Opintojakson suoritettuaan opiskelija osaa:
* ohjelmoida toimivan sovelluksen ryhmän jäsenenä
* hyödyntää olemassa olevaa koodia ja kirjastoja sekä lukea kaavioita
* ymmärtää ja soveltaa joitakin suunnittelumalleja
* käyttää sovelluskehitintä koodaustyökaluna
* käyttää versionhallintajärjestelmää
Sisältö
* sovelluksen vaatimat ohjelmointikielen piirteet
* joihinkin suunnittelumalleihin tutustuminen
* sovelluskehittimen käyttö ohjelmointityökaluna
* versionhallintajärjestelmän käyttö sovelluksen kehityksessä
* projektityö: sovelluksen toteuttaminen ryhmätyönä
Oppimateriaalit
Opintojaksolla on käytössä oppikirja, mutta myös opettajan itse laatima materiaali, jonka varassa pärjännee ilman oppikirjaakin. Muita materiaaleja ovat tehtävänannot, jotka julkaistaan kurssin kuluessa.
Oppikirjan tiedot ovat seuraavat:
Python Crash Course
3rd Edition
A Hands-On, Project-Based Introduction to Programming
Eric Matthes
January 10, 2023
ISBN-10 : 1718502702
ISBN-13 : 978-1718502703
Kirjan 3. painos on luettavissa sähköisessä muodossa eBook Central -ympäristössämme.
Opetusmenetelmät
Oppimateriaalin lukeminen, ongelmanratkaisu kautta oppiminen, oppiminen käytännön ohjelmointitehtävien kautta tekemällä esimerkki- ja ongelmalähtöisesti, ryhmissä oppiminen, oppiminen ryhmätyötä tekemällä
Tenttien ajankohdat ja uusintamahdollisuudet
Opintojakson toteutuksella ei ole tenttiä.
Pedagogiset toimintatavat ja kestävä kehitys
Pedagogiikka noudattaa perinteistä opettajajohtoista menetelmää sekä aktiviteettiorientoitunutta tehtävien tekemistä ja luovaa ongelmanratkaisua. Kestävä kehitys huomioidaan käyttämällä olemassa olevaa infrastruktuuria lisärakentamisen tai laitehankintojen sijaan. Virtualisointia soveltamalla voidaan käyttää heterogeenista laitekantaa ilman tarvetta uusia laitteita. Opetus tapahtuu koulurakennuksessa, jossa opiskelijat ovat keskimäärin muutoinkin paljon, mikä vähentää matkustamista eri paikkojen välillä.
Toteutuksen valinnaiset suoritustavat
Opintojakso tarjotaan vain yhdessä muodossa, mutta huomioidaan tutkintosäännön asettamat mahdollisuudet.
Opiskelijan ajankäyttö ja kuormitus
Oppitunnilla kuunteleminen ja seuraaminen, oppimateriaalin opiskelu, harjoitustehtävät, ryhmätyönä tehtävä harjoitustyö, yhteensä 135 tuntia
Sisällön jaksotus
Esitietovaatimukset: Ensimmäisen vuosikurssin opintojen oppisisältöjen hallinta tai vastaavat tiedot.
Sisältö:
Kurssin aikana rakennetaan verkkosivusto käyttäen Pythonia ja Django web-sovelluksen ohjelmointi-frameworkia. Verkkosivusto noudattaa erästä MVC-arkkitehtuuri-patternin versiota.
Opiskelijat harjoittelevat verkkosivuston tekoa syventäen osaamistaan tekemällä ryhmätyön.
Oppitunnit: Teoria, ohjelmointi yhdessä, demotehtävät ja ryhmätyö, joka voi koostua yhdestä tai kahdesta osiosta. Mahdolliset puhtaat teoriatunnit ja käytännön ohjelmointitunnit etenevät kurssin aikana rinta rinnan.
Oppitunteja tarjotaan 56 tuntia syyslukukauden kuluessa. Näistä puolet on kolmen ryhmän yhdistetylle ryhmälle ja puolet pienille ryhmille erikseen.
Viestintäkanava ja lisätietoja
Opintojaksolla on käytössä suullinen viestintä oppitunneilla. Kirjallinen viestiminen toteutuu Itslearningin ja sähköpostin välityksellä.
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
Tehtäväksi annetaan:
Arviolta 7 henkilökohtaista harjoitustehtäväkokonaisuutta: 70 pistettä max
Ryhmätyö: 30 pistettä max
Läsnäolo: 20 pistettä max
Tehtävät on palautettava erikseen annettuun aikarajaan mennessä, jotta niistä voi saada pisteitä. Aikarajan jälkeen palautetuista tehtävistä voi saada enintään puolet tavallisista maksimipisteistä. Opettaja voi huomauttaa kurssin alkupuolella opiskelijalle, jos näyttää siltä, ettei opiskelijan nykyaktiivisuus opintojaksolla ennusta hyväksyttyä suoritusta. Kaikki opintojakson osasuoritukset on palautettava kuitenkin opintojakson meneillään olevan toteutuksen kuluessa silloinkin, kun niitä palautetaan myöhässä.
(i) Opiskelijan on saatava vähintään 10 pistettä ryhmätyöstä saadakseen hyväksytyn arvosanan opintojaksosta.
(ii) Opiskelijan on saatava yhteensä vähintään 40 pistettä henkilökohtaisista tehtävistä ja ryhmätyöstä saadakseen hyväksytyn arvosanan opintojaksosta.
(iii) Opiskelija voi saada alimpaan arvosaan oikeuttaviin pisteisiin arvosanaa korottavia pisteitä kaikista kolmesta pistelähteestä, joita ovat siis harjoitustyö, viikoittaiset tehtävät sekä läsnäolo.
Läsnäolot kerätään paperiseen rastilistaan, joka kiertää oppitunnilla luokassa. Näistä lasketaan kokonaisläsnäolon suhde, jonka mukaan saadaan ansaittu osuus 20 läsnäolopisteestä. Läsnäolopisteet annetaan seuraavan skaalan perusteella:
Läsnäoloprosentti käytännön- ja teorialuennoilla -> pisteitä:
alle 20% -> 0
20% -> 5
40% ->10
60%->15
80%->20
Arviointiasteikko (pisteet --> arvosana):
alle 40 -> 0
40 -> 1
56 -> 2
72 -> 3
88 -> 4
104 -> 5
Hylätty (0)
Opiskelija ei ole palauttanut riittävästi pyydettyjä tehtävien oikeaksi arvioitavissa olevia ratkaisuja kurssilla määritellyillä tavoilla annettuihin aikarajoihin mennessä tai ei osaa uskottavasti ja osaamista osoittavalla tavalla tehdä selkoa palauttamistaan ratkaisuista sekä pyydettäessä demota laatimiaan ratkaisuja, luomiaan järjestelmiä tai vastata opettajan esittämiin kysymyksiin, jotka koskevat tehtävien ratkaisuja, kurssin keskeisiä oppeja ja opittaviksi asetettuja periaatteita, näiden oppien soveltamista tai käytännön menetelmiä. Kysymyksiin vastaamisella tarkoitetaan joko välitöntä suullista vastaamista tai valvottua kirjallisen vastauksen laatimista opettajan määräämästä tavasta riippuen tai muuta erikseen tilannetta varten määriteltyä ja tarpeelliseksi perustelvissa olevaa tapaa. Demoamisella tarkoitetaan kurssilla määritellyn tekniikan varassa suoritettua itse kirjoitetun ohjelmallisen ratkaisun tai useista sellaisista muodostuvien kokonaisuuksien toimintaan saattamista valvotusti ja tapahtumia selostaen. Vilppi tai muu perusteltu selvästi hylkäykseen johtava seikka voi myös aiheuttaa hylkäyksen.
Arviointikriteerit, tyydyttävä (1-2)
Opiskelija osaa opintojakson sisällön keskeisimmät periaatteet ja opit sekä osaa rakentaa Djangolla opintojaksolla käytössä olevaan ympäristöön tehtävänannossa pyydetyn järjestelmän, joka soveltaen mukailee opintojakson pääopintomateriaalissa esitettyä järjestelmää kaikkine toiminnallisuusosioineen, mutta esitettyä laajuutta suppeammin. Osaaminen osoitetaan lisäksi tehtävien hallinnalla ja kurssin oppitunteihin osallistumalla ja niissä aktiivisesti kuuntelemalla ja annettuja tehtäviä tekemällä annetun pisteintervallin arvoisesti.
Arviointikriteerit, hyvä (3-4)
Opiskelija osaa opintojakson sisällön keskeisimmät periaatteet ja opit sekä osaa rakentaa Djangolla opintojaksolla käytössä olevaan ympäristöön tehtävänannossa pyydetyn järjestelmän, joka laajasti soveltaen mukailee opintojakson pääopintomateriaalissa esitettyä järjestelmää kaikkine toiminnallisuusosioineen. Osaaminen osoitetaan lisäksi tehtävien hallinnalla ja kurssin oppitunteihin osallistumalla ja niissä aktiivisesti kuuntelemalla ja annettuja tehtäviä tekemällä annetun pisteintervallin arvoisesti.
Arviointikriteerit, kiitettävä (5)
Opiskelija osaa opintojakson sisällön keskeisimmät periaatteet ja opit sekä osaa rakentaa Djangolla opintojaksolla käytössä olevaan ympäristöön tehtävänannossa pyydetyn järjestelmän, joka laajasti soveltaen mukailee opintojakson pääopintomateriaalissa esitettyä järjestelmää kaikkine toiminnallisuusosioineen ja osin ylittää oppimateriaalissa esitetyn perusversion monipuolisuudellaan. Osaaminen osoitetaan lisäksi tehtävien hallinnalla ja kurssin oppitunteihin osallistumalla ja niissä aktiivisesti kuuntelemalla ja annettuja tehtäviä tekemällä annetun pisteintervallin arvoisesti.