Ohjeet ja aikataulu
Syksyn 2025 periodin 1 aikataulu on seuraava:
ti 2.9.2025 | Aloitusluento klo 16–18 (Exactum D123) |
su 7.9.2025 | Välipalautus 1 |
su 21.9.2025 | Välipalautus 2 |
pe 26.9.2025 | Vertaisarvioinnin deadline |
su 5.10.2025 | Välipalautus 3 |
pe 10.10.2025 | Vertaisarvioinnin deadline |
su 19.10.2025 | Lopullinen palautus |
Voit keskustella kurssiin liittyvistä asioista kurssin Discord-ryhmässä, jossa on paikalla kurssin ohjaajia ja opiskelijoita. Lisäksi järjestetään pajaohjausta Exactumin salissa BK107 tiistaisin klo 12–16, keskiviikkoisin klo 14–18 sekä torstaisin klo 12–16.
Tärkeät deadlinet
- Välipalautuksen 1 deadlineen mennessä sinun tulee kirjautua Labtooliin ja ilmoittaa siellä linkki sovelluksesi GitHub-repositorioon.
- Välipalautuksen 2 deadlineen mennessä repositoriossasi tulee olla koodia, jossa on toteutettu joitakin sovelluksen ominaisuuksia.
- Vertaisarvioinnit ovat pakollisia, ja sinun tulee tehdä kumpikin arviointi deadlineen mennessä.
- Sovelluksen tulee olla valmis lopullisen palautuksen deadlineen mennessä.
Kurssin yleiskuva
Kurssilla toteutetaan tietokantaa käyttävä web-sovellus. Kurssilla käytetään Python-kieltä, Flask-kirjastoa ja SQLite-tietokantaa sovelluksen toteuttamiseen.
Aloitussivu antaa ohjeet aiheen valintaan ja kuvaa sovellukseen liittyvät perusvaatimukset. Sivulla on joitakin sovelluksen esimerkkiaiheita.
Esimerkkisovellus on malli siitä, millainen lopullisen sovelluksen tulisi olla. Esimerkkisovellukseen liittyy videosarja, joka näyttää sovelluksen luontiprosessin.
Arvostelusivu kuvaa tarkemmin kurssin vaatimukset ja arvostelutavan.
Kurssilla on sallittua käyttää vapaasti tekoälyä CurreChatin (yliopiston ChatGPT-käyttöliittymä) kautta, myös koodin tuottamiseen. Huomaa kuitenkin, että sovelluksen tulee olla kurssin vaatimusten mukainen ja saman tyylinen kuin kurssimateriaalissa. Muut tavat käyttää tekoälyä eivät ole sallittuja kurssilla.
Kurssin eteneminen
Kurssiin kuuluu kolme välipalautusta ja lopullinen palautus. Kaikkien palautusten deadline on klo 23:59 sunnuntaina.
Välipalautuksen ja palautuksen tekemiseen riittää, että repositoriosi on ajan tasalla. Sinun ei tarvitse tehdä mitään erityistä Labtoolissa palautusta varten.
Välipalautus 1
- Luo GitHubiin julkinen repositorio harjoitustyötä varten. Nimeä repositoriosi kuvaavasti.
- Valitse projektille aihe ja kirjoita
README.md
-tiedostoon kuvaus, joka esittelee sovelluksen keskeiset toiminnot. Kirjoita kuvaus samassa muodossa kuin aloitussivun esimerkkiaiheissa ja esimerkkisovelluksessa. - Kirjaudu Labtooliin ja ilmoita siellä projektisi GitHub-osoite.
- Saat seuraavan viikon alussa ohjaajalta palautteen aiheesta Labtooliin.
- Vinkkejä palautukseen:
- Valitse repositorion nimi niin, että se kuvaa hyvin sovellustasi. Esimerkiksi jos teet reseptisovelluksen, voit valita esimerkiksi nimen
reseptit
.
- Valitse repositorion nimi niin, että se kuvaa hyvin sovellustasi. Esimerkiksi jos teet reseptisovelluksen, voit valita esimerkiksi nimen
Välipalautus 2
- Tavoitteena on, että sovelluksessa on ainakin seuraavat toiminnot:
- Käyttäjä pystyy luomaan tunnuksen ja kirjautumaan sisään sovellukseen.
- Käyttäjä pystyy lisäämään, muokkaamaan ja poistamaan tietokohteita.
- Käyttäjä näkee sovellukseen lisätyt tietokohteet.
- Käyttäjä pystyy etsimään tietokohteita hakusanalla tai muulla perusteella.
README.md
-tiedoston tulee kuvata, millainen sovellus on ja miten sitä voi testata.- Saat seuraavan viikon alussa ohjaajalta palautteen sovelluksesta Labtooliin.
- Vinkkejä palautukseen:
- Muista antaa
README.md
-tiedostossa ohjeet siihen, miten sovelluksen testaaja saa käynnistettyä sovelluksen omalla koneellaan. - Tiedosto
database.db
ei kuulu repositorioon. Sovelluksen testaajan pitäisi pystyä luomaan tietokanta.sql
-tiedostojen perusteella.
- Muista antaa
Välipalautus 3
- Tavoitteena on, että sovelluksessa on ainakin seuraavat toiminnot:
- Sovelluksessa on käyttäjäsivut, jotka näyttävät tilastoja ja käyttäjän lisäämät tietokohteet.
- Käyttäjä pystyy valitsemaan tietokohteelle yhden tai useamman luokittelun. Mahdolliset luokat ovat tietokannassa.
- Käyttäjä pystyy lähettämään toisen käyttäjän tietokohteeseen liittyen jotain lisätietoa, joka tulee näkyviin sovelluksessa.
README.md
-tiedoston tulee kuvata, millainen sovellus on ja miten sitä voi testata.- Saat seuraavan viikon alussa ohjaajalta palautteen sovelluksesta Labtooliin.
- Vinkkejä palautukseen:
- Muista estää sovelluksessasi CSRF-aukko kurssimateriaalin mukaisesti.
- Pylint on hyödyllinen työkalu, jonka avulla voit saada ehdotuksia koodisi parantamiseksi.
Vertaisarviointi
Kurssiin kuuluu kaksi vertaisarviointia, joissa annetaan palautetta toisen opiskelijan työstä. Saat ohjeet vertaisarviointiin sähköpostitse välipalautusten 2 ja 3 jälkeen.
Lopullinen palautus
- Kurssi arvostellaan tämän sovelluksen version perusteella.
README.md
-tiedoston tulee kuvata, millainen sovellus on ja miten sitä voi testata.- Ohjaaja arvostelee työn ja antaa palautetta Labtooliin. Ohjaaja arvostelee työn kuukauden kuluessa deadlinesta.
Kurssipalaute
Anna kurssipalaute viimeistään seuraavana päivänä lopullisen palautuksen deadlinen jälkeen. Palaute on anonyymia ja vaikuttaa kurssin kehitykseen.
Kurssipalaute ja vastuuhenkilön kommentit kootaan palauteyhteenvetoon.
Ohjeita
- Ennen sovelluksen toteuttamisen aloittamista sinun kannattaa tutustua kurssimateriaaliin ja tehdä pieniä kokeiluja, jotta saat harjoiteltua kurssilla käytettyjä tekniikoita.
- Neuvoja tietokannan suunnitteluun löydät kurssin Tietokantojen perusteet materiaalista. Erityisesti kurssin materiaalin luku 6 on hyödyllinen.
- Sovellus ja tietokanta rakentuvat pikkuhiljaa ja niihin tulee muutoksia. Kannattaa aloittaa yksinkertaisesta ja muuttaa rakennetta tarvittaessa myöhemmin.
- Palautuksissa ohjaaja tutustuu projektisi uusimpaan versioon GitHubissa. Pidä huoli siitä, että GitHubissa on sovelluksesi ajantasainen versio.
- Sovelluksen dokumentaatio luodaan tiedostoon
README.md
, joka näkyy GitHubissa projektin etusivulla. Kirjoita dokumentaatio sellaista henkilöä varten, joka haluaa saada käsityksen sovelluksesta ja mahdollisesti ottaa sen käyttöön itse tai kehittää sovellusta. - Oleellinen asia kurssilla on sovelluksen toimivuus: millainen käyttökokemus tulee testaajalle, joka käyttää sovellusta. Jos sovellus ei toimi, muut osa-alueet eivät voi pelastaa sitä.
- Jos jokin asia kurssilla on epäselvä, niin otathan yhteyttä ohjaajaan tai kurssin vastuuhenkilöön.