> For the complete documentation index, see [llms.txt](https://book.sovelluskontti.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://book.sovelluskontti.com/scrum-harjoitustyoe-2020-01/harjoitustyon-sisalto.md).

# Harjoitustyön sisältö

## Harjoitustyön toimeksianto

**Lue** [**harjoitustyön toimeksianto täältä**](/scrum-harjoitustyoe-2020-01/harjoitustyoe-matkalasku.md)

Sen jälkeen tutustu alla olevaan ohjeistukseen mitä sinun tulee tehdä.

## Huomiot harjoitustyön tekemisessä

Harjoitustyön avulla on tarkoitus näyttää opittua osaamista sekä myös syventää sitä. Aikaa on rajoitetusta käytössä ja **tavoitteena ei ole suoriutua kaikista** toimeksiannon vaatimuksista.

Tekemisen aikana **sinun tulee priorisoida työntekoasi**. Kuten työelämässä, aina ei ole mahdollista saada kaikkia ominaisuuksia valmiiksi annetussa ajassa. Priorisointi tapahtuu SCRUM mallisesti käyttäen tuotteen- ja sprintin kehitysjonoa.

Kun olet saanut **kehitysjonon (tehtävälista)** valmiiksi, priosioi siis tärkeimmät ominaisuudet ensimmäiseksi ja mieti aina mitä voit saada yhdessä sprintissä aikaiseksi.

**Sprintin tavoitteita pohtiessa,** mieti mikä olisi pienin mahdollinen asia, jonka voit saada valmiiksi ja esitellä asiakkaalle. Sen ei tarvitse olla aina täydellinen vaan tarkoitus on oppia näyttämään myös lyhyet edistykset.

## Harjoitustyön aihealueet&#x20;

[**Projektinhallinta (SCRUM)**](https://www.scrumguides.org/scrum-guide.html)

SRUM soveltamisessa keskitytään toimintamalliin kuinka harjoitustyön tavoitteet ja tehtävät suunnitellaan.

**Lataa suomenkielinen** versio SCRUM oppaasta täältä: [SCRUM opas suomeksi](https://www.scrumguides.org/docs/scrumguide/v2017/2017-Scrum-Guide-Finnish.pdf).

[**Versionhallinta**](/versionhallinta/opas-gitin-perusteisiin.md)

Versionhallinnan käyttöä hyödynnetään lopullisen harjoitustyön palauttamisessa sekä myös ohjelman kehityksen aikana.

[**Yksikkötestaus**](/yksikkoetestaus/ohjelmistotestauksen-periaateet.md)

Yksikkötestien käytössä keskitytään niiden soveltamiseen harjoitustyössä.

## Harjoitustyön palautettavat tuotokset

Ohjaaja tarkistaa seuraavat osa-alueet arvioinnin yhteydessä.

**Githubissa oltava:**

* **README -tiedosto**, jossa tekijöiden nimet ja lyhyt kuvaus ohjelman tarkoituksesta. Lisäksi voit lisätä kaiken oleellisen tiedon mikä auttaa ohjaajaa tarkistamisen yhteydessä. (README tiedosto näkyy oikein tehty Githubin repositoryn etusivulla, esimerkki <https://github.com/nyluntu/hacksummit-forecast>)
* **Tuotteen kehitysjono** (Github Issues on hyvä vaihtoehto)
* **Sprinttien kehitysjonot** (Github Issues ominaisuudella voi vaikka merkitä sprintin tai vaihtoehtoisesti käyttää Projects välilehteä)
* **Ohjelman lähdekoodit** (Kerro README tiedostossa mistä löytää harjoitustyön, jos Github repository sisältää useita eri harjoituksia)

**Ohjelman sisällön osalta ohjaaja tarkastaa:**&#x20;

* Ohjelman toimivuutta.
* Versionhallinnan käyttöä tekemisen aikana.
* Yksikkötestien soveltamista ohjelman tekemisen aikana.

**Lyhyt video (Max 10min),** jossa näytät harjoitustyön aikana syntyneen lopputyön tilanteen. Lisää linkki README tiedostoon, josta videon voi katsoa.

Tuo esille seuraavia asioita:

* Missä onnistuit?
* Mikä oli haastavinta?
* Miten jatkaisit nykyisestä pisteestä ohjelman tekoa, jos käytössä olisi enemmän aikaa?
* Saitko hyödynnettyä testejä ohjelman teossa? Jos kyllä niin miten?

Kuvaruutuvideon tekotavalla ei ole väliä. Jos et tiedä mistä lähteä liikkeelle niin ilmainen versio [Screencast O Matic-ohjelmasta](https://screencast-o-matic.com/) on ihan pätevä.

Videon voit jakaa Onedriven, Dropboxin, Google Driven tai muun vastaavan avulla. Käytä haluamaasi ohjelmaa.

##
