Software Engineering and Modelling (5 op)
Toteutuksen tunnus: TE00BR84-3005
Toteutuksen perustiedot
- Ilmoittautumisaika
-
01.06.2025 - 08.09.2025
Ilmoittautuminen toteutukselle ei ole vielä alkanut.
- Ajoitus
-
08.09.2025 - 19.12.2025
Toteutus ei ole vielä alkanut.
- Opintopistemäärä
- 5 op
- Lähiosuus
- 5 op
- Toteutustapa
- Lähiopetus
- Yksikkö
- Tekniikka ja liiketoiminta
- Toimipiste
- Kupittaan kampus
- Opetuskielet
- suomi
- englanti
- Paikat
- 0 - 60
- Koulutus
- Tieto- ja viestintätekniikan koulutus
- Tietojenkäsittelyn koulutus
- Degree Programme in Information and Communications Technology
- Opettajat
- Tuomo Helo
- Ryhmät
-
PTIVIS23OSoftware Engineering and Project Management
-
PTIETS23sepmSoftware Engineering and Project Management
- Opintojakso
- TE00BR84
Arviointiasteikko
H-5
Sisällön jaksotus
Opintojaksolla kehitetään sovellus tunnistetuille ja kerätyille toiminnallisille ja ei-toiminnallisille vaatimuksille. Kurssi keskittyy erityisesti ohjelmistoarkkitehtuuriin ja siihen, miten se liittyy ohjelmistokehityksen eri vaiheisiin.
Sisältö:
- Ohjelmistokehityksen elinkaari
- Projektinhallinta ja sen työkalut
- Mitä on ohjelmistoarkkitehtuuri?
- Ohjelmistoarkkitehtuurin ominaisuudet (tietoturva, ylläpidettävyys, siirrettävyys,...) ja niiden hallinta
- Ohjelmistoarkkitehtuuri ja ohjelmointiparadigmat
- Ohjelmistoarkkitehtuurin tyylit
- Ohjelmistoarkkitehtuurin tyylin valinta
- Ohjelmistoarkkitehtuurin mallintaminen, dokumentointi ja viestintä
- SOLID-periaatteet- Moduulit ja komponentit
- Sovellusohjelmointirajapinta (API) ja sen suunnittelu
- Ohjelmistosuunnittelumallit
- Ohjelmiston käyttöönotto
10 henkilökohtaista harjoitusta
Ryhmätyö: Ohjelmistoprojekti, jossa keskitytään käytännön ohjelmistoarkkitehtuuriin. Ryhmätyö aloitetaan jo opintojakson toisella tai kolmannella viikolla.
Tavoitteet
After completing the course the student can:
Describe different software development methodologies and evaluate their feasibility to software projects
Describe software development project phases
Understand and draw UML diagrams
Understand the importance of specification and planning to software development
Work in different phases of a software project
Sisältö
Software development project
Specification, planning, programming, testing, deployment, and maintenance of a software project
UML modelling
Oppimateriaalit
Opintomateriaali: (Voi tulla vielä muutoksia ennen opintojakson alkua)
Clean Architecture: A Craftsman's Guide to Software Structure and Design (Robert C. Martin Series) 1st Edition
by Robert Martin (Author)
2017
Fundamentals of Software Architecture: A Modern Engineering Approach
by Mark Richards and Neal Ford
2nd edition
2025
Muuta opintojakson aikana ilmoitettavaa materiaalia.
Opetusmenetelmät
- kirjallisuuden ja muun oppimismateriaalin lukeminen
- osallistuminen luennoille
- mallintamista
- osallistuminen ohjelmointiryhmätyön tekemiseen: Tietojen keruuta ja kehittämistä "asikastapaamisissa", suunnittelu, toteutus, käyttöönotto
- soveltuvien työkalujen käyttöä
Tenttien ajankohdat ja uusintamahdollisuudet
Ei tenttiä
Toteutuksen valinnaiset suoritustavat
Opiskelija voi suorittaa opintojakson osoittamalla osaamisensa opintojakson aiheista esimerkiksi tekemillään työnäytteillä. Osoittamisesta täytyy sopia opettajan kanssa opintojakson 4 ensimmäisen viikon aikana.
Opiskelija voi myös ahotoida opintojakson vastaavalla muualla oppilaitoksemme hyväksymässä oppilaitoksessa suoritetulla kurssilla. Asia kannattaa laittaa vireille heti opintojakson alkaessa.
Opiskelijan ajankäyttö ja kuormitus
31 h kontaktiluentoja (Sisältäen 4 demokertaa)
4 h harjoistustöiden esitystä ja seurantaa
40 h harjoitustyön valmistelu
60 h henkilökohtaiset harjoitustehtävät
Arviointimenetelmät ja arvioinnin perusteet
Opintojakson kokonaismaksimipistemäärä on 120.
Maksimissaan 50 pistettä 10 henkilökohtaisesta harjoitustehtävästä, 50 pistettä harjoitustyöstä ja 20 pistettä läsnäoloista.
Opintojakson arviointiskaala on seuraava:
Pisteitä vähintään -> Arvosana
0 -> 0
40 -> 1
56 -> 2
72 -> 3
88 -> 4
104 -> 5
Huomaa seuraava lisäehto: hyväksyttävään suoritukseen tarvitaan vähintään 20 pistettä henkilökohtaisista harjoitustehtävistä ja 20 pistettä harjoitustyöstä.
Läsnäolopisteet annetaan seuraavan skaalan perusteella:
Läsnäoloprosentti käytännön- ja teorialuennoilla sekä "asiakastapaamisissa" -> pisteitä
20% -> 5
40% ->10
60%->15
80%->20
Osa henkilökohtaisista harjoitustehtävistä tehdään käytännöntunneilla yhdessä opettajan kanssa. Näin läsnäolo niillä karruttaa myös harjoitustehtäväpisteitä.
Demokerroilla ja harjoitustyön esityksessä on oltava läsnä. Läsnäolot demoissa ja harjoitustyön esittämisessä eivät karruta läsnäolopisteitä. Poissaolo demoista aiheuttaa 25 % vähennyksen opiskelijan näihin demoihin palauttamien tehtävien pisteisiin. Tehtävien palauttaminen myöhässä aiheuttaa myös 25 prosentin vähennyksen. Poissaolo harjoitustyön esittämisestä aiheuttaa pisteisiin 25 prosentin vähennyksen. Harjoitustyön myöhästymisestä seuraa myös 25 prosentin vähennys pisteisiin. Tehtäviä ei oteta enää vastaan opintojakson päättymispäivän jälkeen. Opintojakson päättymispäivän jälkeen ei myöskään anneta korvaavia tai täydentäviä tehtäviä. Opiskelija täytyy huolehtia siis siitä, että hän saa kerättyä eri suorituksista riittävästi pisteitä opintojakson aikana.
Hylätty (0)
Opiskelija ei ole opintojakson aikana onnistunut keräämään läpäisyyn riittävää pistemäärää. Näin ollen hän ei ole pystynyt osoittamaan sellaista osaamista, jonka perusteella voitaisiin antaa hyväksyttävä arvosana.
Arviointikriteerit, tyydyttävä (1-2)
Opiskelija tuntee ohjelmistonkehityksen elinkaaren eri vaiheet.
Opiskelija ymmärtää ohjelmointiprojektin hallinnan merkityksen ja käyttää jonkin verran siihen sopivia työkaluja.
Opiskelija ymmärtää ohjelmistoarkkitehtuurin tavoitteita ja merkitystä.
Opiskelija tuntee ohjelmistoarkkitehtuurin keskeisiä periaatteita.
Opiskelija tuntee arkkitehtuurityylejä.
Opiskelija tuntee ohjelmiston kehittämisen elinkaaren ja ohjelmistoarkkitehtuurin välisiä suhteita.
Opiskelija ymmärtää ohjelmointirajapintoja ja osaa hyödyntää niitä..
Opiskelija ymmärtää ohjelmistomoduulien sekä -komponenttien periaatteet ja merkityksen.
Opiskelija tuntee joitakin suunnittelumalleja.
Opiskelija osaa johonkin mittaan asti soveltaa sovellusarkkitehtuurin periaatteita käytännössä..
Opiskeija osaa tulkita ohjelmistoarkkitehtuurin liittyviä malleja ja muuta dokumentaatiota.
Opiskelija tuntee ja osaa hieman käyttää sovellusarkkitehtuurin laadun parantamiseen ja sen ylläpitämiseen soveltuvia työkaluja.
Arviointikriteerit, hyvä (3-4)
Opiskelija hallitsee ohjelmistonkehityksen elinkaaren eri vaiheet.
Opiskelija osaa hallita ohjelmointiprojektia ja käyttää siihen sopivia työkaluja.
Opiskelija ymmärtää ohjelmistoarkkitehtuurin tavoitteet ja merkityksen.
Opiskelija tuntee ohjelmistoarkkitehtuurin keskeisiä periaatteita ja osaa soveltaa niitä käytännössä.
Opiskelija ymmärtää arkkitehtuurityylejä ja osaa soveltaa niitä käytännössä.
Opiskelija ymmärtää ohjelmiston kehittämisen elinkaaren ja ohjelmistoarkkitehtuurin välisiä suhteita.
Opiskelija osaa toteuttaa ohjelmointirajapintoja.
Opiskelija osaa suunnitella ja toteuttaa ohjelmistomoduuleja sekä -komponentteja.
Opiskelija osaa tulkita ja soveltaa joitakin suunnittelumalleja.
Opiskelija osaa toteuttaa ohjelmistoarkkitehtuuriltaan harkittuja sovelluksia.
Opiskeija osaa laatia ja lukea ohjelmistoarkkitehtuurin liittyviä malleja ja muuta dokumentaatiota.
Opiskelija osaa valmistella sovelluksen tuotantoon.
Opiskelijalla on valmius ottaa osaa ohjelmistonkehitysprojekteihin.
Opiskelija osaa hyödyntää työkaluja sovellusarkkitehtuurin laadun parantamiseen ja sen ylläpitämiseen.
Arviointikriteerit, kiitettävä (5)
Opiskelija hallitsee ohjelmistonkehityksen elinkaaren eri vaiheet.
Opiskelija osaa hallita ohjelmointiprojektia ja käyttää monipuolisesti siihen sopivia työkaluja.
Opiskelija ymmärtää ohjelmistoarkkitehtuurin tavoitteet ja merkityksen.
Opiskelija tuntee ohjelmistoarkkitehtuurin periaatteita ja osaa soveltaa niitä kriittisesti arvioiden käytännössä.
Opiskelija ymmärtää arkkitehtuurityylejä ja osaa soveltaa niitä kriittisesti arvioiden käytännössä.
Opiskelija ymmärtää laajasti ohjelmiston kehittämisen elinkaaren ja ohjelmistoarkkitehtuurin välisiä suhteita.
Opiskelija osaa toteuttaa ja testata korkealaatuisia ohjelmointirajapintoja.
Opiskelija osaa suunnitella ja toteuttaa korkealaatuisia ohjelmistomoduuleja sekä -komponentteja.
Opiskelija ymmärtää ja osaa soveltaa suunnittelumalleja.
Opiskelija osaa toteuttaa ohjelmistoarkkitehtuuriltaan korkealaatuisia sovelluksia.
Opiskeija osaa laatia ja lukea ohjelmistoarkkitehtuurin liittyviä malleja ja muuta dokumentaatiota.
Opiskelija osaa valmistella ja siirtää sovelluksen tuotantoon.
Opiskelijalla on valmius osallistua haastaviin ohjelmistonkehitysprojekteihin.
Opiskelija osaa hyödyntää monipuolisesti työkaluja sovellusarkkitehtuurin laadun parantamiseen ja sen ylläpitämiseen.
Lisätiedot
Opintojakson viestintä tapahtuu ja materiaali jaetaan ItsLearning-oppimisympäristössä.