Code Monkey home page Code Monkey logo

syksy-2020's Introduction

Ohjelmistotekniikka, syksy 2020

Kurssin nimi on muuttunut syksyllä 2018, tätä aiemmin kurssi tunnettiin nimellä Ohjelmistotekniikan menetelmät

Yleistä

Kurssilla tutustutaan ohjelmistokehityksen periaatteisiin sekä menetelmiin ja sovelletaan niitä toteuttamalla pienehkö harjoitustyö.

Kurssin kolmella ensimmäisellä viikolla on muutama ohjauksessa tai omatoimisesti tehtävä harjoitustehtävä. Kurssin pääpainon muodostaa viikolla 2 aloitettava, itsenäisesti tehtävä harjoitustyö. Työtä on tarkoitus edistää pala palalta viikoittaisten tavoitteiden ohjaamana.

Kurssin arvostelu perustuu pääasiassa harjoitustyöstä saataviin pisteisiin. Osa pisteistä kertyy aikatauluun määriteltyjen viikoittaisten välitavoitteiden kautta, osa taas perustuu työn lopulliseen palautukseen.

Kurssilla ei ole koetta. Harjoitustyö tulee tehdä kurssin aikataulujen puitteissa. Kesken jäänyttä harjoitustyötä ei voi jatkaa seuraavalla kurssilla (keväällä 2021), joten muista varata riittävästi aikaa (10-15h viikossa) koko periodin ajaksi!

Tarkemmat arvosteluperusteet täällä.

Kirjoitusvirheitä

Jos huomaat tehtävissä tai muussa materiaalissa kirjoitusvirheitä, kirjaudu GitHubiin ja toimi täällä olevan ohjeen mukaan.

Ajankohtaista

  • Kurssin ainoa luento ma 26.10. klo 14-16 etänä zoomissa
  • Sovellus tehdään käyttämällä Javan versiota 11. Asennusohjeet
  • Kurssista on nyt myös olemassa betatestausvaiheessa oleva Python-versio
    • Python-version suortittaminen omalla vastuulla. Ohjelmoinnin perusteiden suorittaminen Pythonilla ei riitä esitiedoksi! Olio-ohjelmointi on syytä hallita
  • Kurssin Telegram-kanava: https://t.me/tktlotm
    • Huom: kaikki epäasialliset, halventavat ja jotain ihmisryhmää syrjivät kommentit kanavalla ovat kiellettyjä ja tälläisten kommenttien esittäjät poistetaan kanavalta
  • Jos tarvitset kurssiin liittyvää ohjausta, tule zoom-pajaan:
    • ti 14-16 (3.11. alkaen) zoom
    • to 16-18 zoom
    • pe 12-14 zoom
    • Myös Telegramissa voi kysellä erityisesti arkisin klo 9-16
    • Jos kysymys koskee koodia tai siinä esiintyviä virhetilanteita, kannattaa laittaa kysymyksen yhteyteen linkki omaan repositorioosi. Ilman koodin näkemistä ongelman selvittäminen on hankalaa tai jopa mahdotonta.
    • Jos et halua kysyä kysymystä suoraan kurssin kanavalla, voit ottaa yhteyttä suoraan "telegram-vastaavaan" Kalle Ilvekseen. Pääasiassa kysymykset kannattaa kuitenkin esittää kanavalla, sillä samat ongelmat koskevat usein useampaakin opiskelijaa
  • Jos olet jo toteuttaunut isohkoja ohjelmistoja, on kurssi tietyissä tapauksissa mahdollista hyväksilukea

Harjoitustyön toimivuus

  • Harjoitustyö on tehtävä Javan versiolla 11

  • Koneiden konfiguraatioissa on eroja, ja tällä kurssilla ei riitä että hajoitustyössä tekemäsi sovellus toimii vain omalla koneellasi

  • Harjoitustyösi pitää pystyä joka viikko suorittamaan, kääntämään ja testaamaan komentoriviltä käsin laitoksen Linux-koneilla (tai uusimmat päivitykset sisältävällä cubbli-linuxilla), muussa tapauksessa työtä ei tarkasteta ja menetät viikon/loppupalautuksen pisteet.

  • Pääset testaamaan ohjelmaasi laitoksen koneella myös kotoa käsin käyttämällä etätyöpöytää https://helpdesk.it.helsinki.fi/ohjeet/tietokone-ja-tulostaminen/tyoasemapalvelu/etakaytettavat-tyopoydat-vdi-ja-vmware tai kirjautumalla ssh:lla palvelimelle melkki.cs.helsinki.fi

Linkkejä

Pajaohjauksen aikatauluja

Aikataulu

viikko 1

Palautuksen deadline ti 03.11. klo 23:59

  • Maanantaina 26.10. klo 14-16 aloitustilaisuus tallenne
  • Komentorivi- ja Git-harjoittelu (2p)
  • Tehtävien palautus tapahtuu tekemällä repositorio githubiin ja rekisteröitymällä labtooliin

viikko 2

Palautuksen deadline ti 10.11. klo 23:59

  • Harjoitustyön aiheen alustava määrittelydokumentti (1p)
  • JUnit-harjoittelu (2p)
  • Oman projektin koodaus alkaa

viikko 3

Palautuksen deadline ti 17.11. klo 23:59

  • Harjoitustyön koodin runko valmiina (2p)
  • Pajassa tehtävät tai omatoimiset [tehtävät]/tehtavat/viikko3.md) Luokka- ja sekvenssikaaviosta (1p)

viikko 4

Palautuksen deadline ti 24.11. klo 23:59

  • Harjoitustyö (3p)
    • Ohjelman perustoiminnallisuus
    • Testien aloitus
    • Alustava rakenne luokkakaaviona
    • Checkstyle otettu käyttöön
  • Tarkemmat ohjeet täältä

viikko 5

Palautuksen deadline ti 01.12. klo 23:59

  • Harjoitustyö (3p)
    • Release 1
    • Testikattavuus nousee
    • Jotain päätoiminnallisuutta kuvaava sekvenssikaavio
  • Tarkemmat ohjeet täältä
  • Koodikatselmointi (2p)

viikko 6

Palautuksen deadline ti 08.12. klo 23:59

  • Harjoitustyö (3p)
    • Release 2
    • Testikattavuus nousee
    • JavaDoc aloitettu
    • Alustava versio arkkitehtuuridokumentista
  • Tarkemmat ohjeet täältä

viikko 7

Lopullisen palautuksen deadline su 20.12. klo 23:59

syksy-2020's People

Contributors

mluukkai avatar tulma95 avatar kaltsoon avatar marcestus avatar otahontas avatar le0nerdo avatar qzuw avatar roopekole avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.