Ohjelmistoarkkitehtuurit 2016. Kevät 2016 -käytäntöjä



Samankaltaiset tiedostot
Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit Kevät käytäntöjä

Ohjelmistoarkkitehtuurit. Syksy 2010

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Ohjelmistoarkkitehtuurit. Syksy 2008

Ohjelmistoarkkitehtuurit. Syksy 2007

Suunnitteluratkaisut ja niiden arviointi sulautetuissa järjestelmissä

TIE Ohjelmistojen suunnittelu

Ohjelmistoarkkitehtuurit Kevät 2016 Suunnittelumallit

Ohjelmistotekniikan menetelmät, kesä 2008

Ohjelmistotekniikan menetelmät, kevät 2008

Ohjelmistojen mallintaminen, kesä 2009

Ohjelmistoarkkitehtuurit, syksy

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistojen mallintaminen, kesä 2010

Ohjelmistojen suunnittelu

Sisällys. Ratkaisumallien historia. Ratkaisumalli. Ratkaisumalli [2] Esimerkki: Composite [2] Esimerkki: Composite. Jaakko Vuolasto 25.1.


Vastuuopettaja. Kurssiesite Olio-ohjelmoinnin perusteet Kevät Olio-ohjelmoinnin perusteet (5 op) Tavoitteena

TIE Ohjelmistojen suunnittelu

Digitaalisen median tekniikat Luento 1: Intro

7 Viestipohjaisten yritysjärjestelmien suunnittelumallit

Computing Curricula raportin vertailu kolmeen suomalaiseen koulutusohjelmaan

AS Automaation käyttöliittymät L Opetussuunnitelma

Tietokoneverkot. T Tietokoneverkot (4 op) viimeistä kertaa CSE-C2400 Tietokoneverkot (5 op) ensimmäistä kertaa

OHJ-7400 Graafisen käyttöliittymän ohjelmointi 4/6op

AS Automaation käyttöliittymät L Opetussuunnitelma

Ohjelmistoprosessit ja ohjelmistojen laatu Ohjelmistoprosessit ja ohjelmistojen laatu (4op)

Graafisen käyttöliittymän ohjelmointi Syksy 2013

DEE Aurinkosähkön perusteet (Foundations of Solar Power) Sali SE211 Keskiviikkoisin ja perjantaisin klo

TIE Ohjelmistojen suunnittelu

Ohjelmistoarkkitehtuurit. Kevät

Yleisiä asioita. Harkat alkavat ensi viikolla Vierailuluentoa. Slackin #luennot-kanava taas käytössä. Ensi viikon perjantaina, Janne Viitala, Sandvik

Tietojärjestelmä uusiksi? Toimijaverkostot, niiden haasteet ja ratkaisut

Kurssin aloitus. AS XML-kuvauskielten perusteet Janne Kalliola

Vastuuopettaja. Kurssiesite Olio-ohjelmoinnin perusteet Kevät Olio-ohjelmoinnin perusteet (TIEA2.1)

Kurssiesite Olio-ohjelmoinnin perusteet Kevät Jorma Laurikkala Tietojenkäsittelytieteet Luonnontieteiden tiedekunta Tampereen yliopisto

Ohjelmistoarkkitehtuurin suunnittelu

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

Hallintotieteiden opinto-opas lkv , Yleisopinnot ok Yleisopinnot

Harjoitustehtävät ja ratkaisut viikolle 48

Tik Ohjelmistoprojektien Hallinta

1.3 Katsaus ohjelmistotuotannon kehittymiseen

2 Ohjelmistoarkkitehtuurien kuvaus

T Johdatus tietoliikenteeseen 5 op. Kevät 2013

T Ohjelmistojen määrittely- ja suunnittelumenetelmät

Arkkitehtuurityylit ohjelmarakenteen perustana

Ohjelmistoarkkitehtuurit Harjoitustyö 2014

Kurssiesite Olio-ohjelmoinnin perusteet Kevät Jorma Laurikkala Tietojenkäsittelytieteet Informaatiotieteiden yksikkö Tampereen yliopisto

Näin järjestän ohjelmointikurssin, vaikka en ole koskaan ohjelmoinut

hyväksymispäivä arvosana

Ohjelmistoarkkitehtuurit. Kevät 2014

2 Description of Software Architectures

Ajankohta Johdatus WP7-sovelluskehitykseen: WP7-sovelluskehityksen perusteet:

Tietokonearkkitehtuuri 2 TKT-3201 (5 op)

Turvallisen tekniikan seminaari 2015 Työpajapäivä, keskiviikko 3.6.

Ohjelmiston toteutussuunnitelma

Standardi IEC Ohjelmisto

Arkkitehti?

TU-C3010 Projektien suunnittelu ja ohjaus (5 op.)

OHJELMISTOARKKITEHTUURIT

SAS-ohjelmiston perusteet 2010

T Johdatus tietoliikenteeseen 5 op

Hirviö. Design Patterns

Arkkitehtuurinen reflektio

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Ohjelmistoarkkitehtuurit kevät

Digitaalinen portfolio oppimisen tukena (4op)

T Harjoitustyöluento

Ohjelmistojen mallintaminen, mallintaminen ja UML

1 Johdanto. TTY Ohjelmistotekniikka. Ohjelmistoarkkitehtuurit Syksy 2008

Korkealämpötilakemia

1 Johdanto! Arkkitehti?!

1 Johdanto. Ohjelmistoarkkitehtuurit Syksy 2010 TTY Ohjelmistotekniikka 1

Mika Vanhala 36 la la pe muutos la la

KOKOS-seminaari Ohjelmistoarkkitehtuuri osana käyttäjäkeskeistä suunnittelua

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science

Korkealämpötilakemia

Kirjastoinfo TY KTMT Porin tiedekirjasto

LIIKENNEDATA HYÖTYKÄYTTÖÖN

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Lyhyt johdatus ketterään testaukseen

Talousmatematiikan perusteet: Johdanto. Kurssin tavoitteet Käytännön järjestelyt Suosituksia suorittamiseen

Kokemuksia yliopisto-opetuksen monimuotoisuudesta - Case TTY, Porin laitos. Seminaari Itä-Suomen yliopisto, Kuopio

Hirviö. Design Patterns

SOA SIG SOA Tuotetoimittajan näkökulma


Suorituksen ja palkitsemisen johtaminen (TU-E3140) Kevät 2016

TIE Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely

Tietokoneen rakenne (2 ov / 4 op) Syksy 2007 Liisa Marttinen. Helsingin yliopisto Tietojenkäsittelytieteen laitos

9. Muunneltavuuden hallinta

VESIELÄIMISTÖN TUNTEMUS JA EKOLOGIA (751307A)

Ohjelmistoprojektien hallinta Vaihejakomallit

Online-kurssien pikaopas Adobe Connect -yhteyden käyttämiseen

Ohjelmistoarkkitehtuurit harjoitustyö Johdanto. 2 Harjoitustyön käytännönjärjestelyt ja aikataulu. Versio

Tietojärjestelmäarkkitehtuurit

Tietokone työvälineenä

Kurssiesite Olio-ohjelmoinnin perusteet (TIEA2.1) Kevät 2018

Laskentatoimen teoria ja tutkimus YLA S920 Järvenpään osuus

Transkriptio:

Ohjelmistoarkkitehtuurit Kevät 2016 -käytäntöjä Samuel Lahtinen http://www.cs.tut.fi/~ohar/ 13.1.2016 1

Tervetuloa Tampereen teknillinen yliopisto, Oulun yliopisto, Turun yliopisto 13.1.2016 2

Tiedonvälitys kurssilla Kurssin kotisivut (TTY): http://www.cs.tut.fi/~ohar/ Tiedotus, kysymyksien esittäminen, niihin vastaaminen: Slack http://ohar2016.slack.com/ Luennoilla: http://ohar2016.slack.com/luennot Slackin käyttö, selain tai sovellukset https://slack.com/downloads, IRC https://ohar2016.slack.com/account/gateways) Google Forms (linkit kurssin myös kurssin kotisivuilla, jatkossa vain Slackin #luennot kanavalla) Harjoitustyön tekeminen, oman ryhmän perustaminen Slackiin kannattaa Adobe Connect, urli näkyy videolta

Kurssin tavoitteet Arkkitehtuurin roolin ymmärtäminen Arkkitehtuurien kuvaamisen hallitseminen Arkkitehtuurityylien ja suunnittelumallien tunteminen Tuoterunko-ohjelmistojen luonteen ymmärtäminen, valmiudet niiden rakentamiseen ja käyttämiseen Arkkitehtuurien arvioinnin ymmärtäminen ja valmiudet arkkitehtuurin käytännön arviointiin Täydentää yleistä tietämystä ohjelmistokehitysprosessista arkkitehtuurisuunnittelun osalta Hyvä arkkitehtuuri vaatii: sovellusaluetuntemus, yleisien toimivien ratkaisujen tunteminen (ja potentiaalisten ongelmakohtien tunteminen), vaatimusten ymmärtäminen 13.1.2016 4

Kurssiin liittyviä kirjoja Koskimies K., Mikkonen T.: Ohjelmistoarkkitehtuurit. Talentum 2005. Pattern-juttuihin toimiva itseopiskeluteos: Pattern-Oriented Software Architecture For Dummies Fairbanks, George: Just Enough Software Architecture - A Risk-Driven Approach http://rhinoresearch.com/book Riskiosuus-kirjasta pitkälti skipattavissa kurssin näkökulmasta Software Architecture A Comprehensive Framework and Guide for Practitioners http://link.springer.com/book/10.1007%2f978-3-642-19736-9 Tenttiin tarvittava osaaminen: teoria : luentokalvot, videot, lähdemateriaali, linkit luentokalvoissa jne. http://www.cs.tut.fi/~ohar/kurssikirjallisuus.shtml soveltaminen: viikkoharjoitukset Tentti on mahdollista suorittaa ilman kirjallisuutta, jos perehtyy luentomateriaaliin (kalvot) ja käy viikkoharjoituksissa. 13.1.2016 5

Lisää kirjallisuutta Kirjoja yleisemmin: Bosch J.: Design & Use of Software Architectures - Adopting and Evolving a Product-Line Approach. Addison-Wesley 2000. Bass L., Clements P., Kazman R.: Software Architecture in Practice. Addison-Wesley 2003. Clements P. et al.: Documenting Software Architectures. Addison-Wesley 2003. Clements P., Kazman R., Klein M.: Evaluating Software Architectures. Addison-Wesley 2002. Yleistä arkkitehtuuri- ja arkkitehtuurinkuvausasiaa Viewpoints and Views in Software Architecture: http://www.viewpoints-and-perspectives.info/vpandp/wpcontent/themes/secondedition/doc/vpandv_whitepaper.pdf Suunnittelumalleja patterns.cs.tut.fi: Tietotekniikan laitoksen tutkimusta aiheesta (koneenohjausta, automaatiojärjestelmiä jne.) Designing Distributed Control Systems: A Pattern Language Approach Veli-Pekka Eloranta, Johannes Koskinen, Marko Leppanen, Ville Reijonen a Wileyn sivut kirjalle Suunnittelumallien puolivirallinen kotisivu (suunnittelumalliluettelot, pattern-kielet ym.) LegalityPatterns.pdf Open Source Legality Patterns: Architectural Design Decisions Motivated by Legal Concerns PLoP Conference Proceedings: 2007, 2008, 2009. EuroPLoP Conference Proceedings: PLoP-sivut Viking PLoP (http://www.vikingplop.org/) Buschmann et al.: A System of Patterns - Pattern-Oriented Software Architecture. Wiley 1996. Douglass B.: Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems. Addison-Wesley 2003. Gamma E. et al.: Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley 1995. Hohpe G., Woolf B.: Enterprise Integration Patterns. Addison-Wesley 2004. Allan Kelly: Business Patterns for Software Developers 2012 (ebrary/tut-kirjasto), kaikkea markkinoinnista jakeluun 13.1.2016 6

Esitietovaatimukset Jonkinlainen käsitys ohjelmistokehitysprosessista ja sen vaiheista (TTY: Johdatus ohjelmistotuotantoon) Koodaustaustaa, luokat, rajapinnat, perintä, moduulijaot jne. UML:n perusteita, kaavio vs. koodi perusajatus Kurssin suoritus Pisterajat TTY:llä: Viikkoharjoitukset 0-10, läpipääsyraja 0 pistettä Harjoitustyö 0-15, läpipääsyraja 3 pistettä Vierailuluennot 0-5, läpipääsyraja 2 pistettä Tentti 0-20, läpipääsyraja 9 pistettä Yhteensä 0-50, läpipääsyraja 14 pistettä http://www.cs.tut.fi/~ohar/arvostelu/ 13.1.2016 7

Ensimmäinen tentti Ensimmäisen tentin ajankohta maanantai 9.5.2015 klo 13-, paikka (TTY:llä ja varmasti muuallakin) vielä hakusessa 13.1.2016 8

Viikkoharjoitukset Alkavat ensi viikolla (18.1.-) Ilmoittautuminen POPissa TTY:llä, spämmiä kun aukeaa/tilavaraukset varmistuvat (tod.näk. Ti, Ke klo 14:15) Ei tenttiviikolla (29.2.-4.3.2016), ei arkkitehtuuriarviotien kanssa samaan aikaan Jakautuu kotitehtäviin ja harjoituksissa tehtäviin tehtäviin (usein ryhmissä) puoli pistettä molemmista Kotitehtävät viimeistään edellisen viikon torstaina kurssin sivulla/slackissä Palauttaminen Harjoitukset olennainen osa kurssin suoritusta! Kannattaa tehdä heti alusta alkaen Tukee harjoitustyötä Keskustelut harjoituksissa olennaisia 13.1.2016 9

Viikkoharjoitukset Jos viikkoharjoituksiin ei pääse, mutta haluaa kuitenkin viikkoharjoituspisteitä, tarjolla on mahdollisuus tehdä rästitehtäviä joilla voi korvata puuttuvia viikkoharjoitussuorituksia 13.1.2016 10

Harjoitustyö Tehdään 3-5 opiskelijan ryhmissä Kaikki ryhmän osallistujat saavat saman pistemäärän harjoitustyöstä (mahdollisuus pisteiden jakoon epätasaisesti?) Työn aihe: arkkitehtuurin suunnittelu, dokumentointi ja arviointi Arkkitehtuuriin liittyy aina aihealuetietämys ja tekniikat, joten työhön kuuluu myös perehtymistä näihin (esim. toissa vuoden työnä taudin ennustamiseen liittynyt sairaalajärjestelmä-mukaelma alan määräyksiä/lainsäädäntöä, palvelimet, salaustekniikat, käyttäjien autentikoinnit) Vaiheita: Välipalautus (oman ratkaisun esittely) Arkkitehtuurin suunnitteludokumentti Arkkitehtuurin arviointi Arviointidokumentti Päivitetty arkkitehtuuridokumentti Yksityiskohdat tulevat 18.1.-- viikolla kurssin sivuille. 13.1.2016 11

Harjoitustyö, alustava aikataulu Työn esittely 27.1. Ryhmien muodostamisen deadline 22.1. klo 12 Välipalautus (oman ratkaisun esittely) ~20.2. Arkkitehtuurin suunnitteludokumentin palautus ~1.3. Korjauksia palautteen perusteella, parannellun version palautus arvioijaporukalle Arkkitehtuurin arviointi ~25.3.-- Arviointidokumentti: viimeistään viikko arviointitilaisuuden jälkeen Päivitetty arkkitehtuuridokumentti: 8.5. 13.1.2016 12

Luennot ja luentoaikataulu 13.1. Johdanto, käytännön jutut 15.1. Johdanto jatkuu 20.1. Arkkitehtuurin kuvaus, erilaiset kaaviot jne. kuvauksessa Suunnittelumalleista, Komponenttien vuorovaikutus komponentit ja rajapinnat, arkkitehtuurityylit Harjoitustyön tehtävänanto, jatkoa Ketterä arkkitehtuuri Arkkitehtuurien arviointi (ATAM DCAR, jne. arkkitehtuuriarviointimenetelmät) Arkkitehtuuritietämys, laatu ja arkkitehtuuri (sisäinen, ulkoinen) Viestipohjaisten yritystietojärjestelmien arkkitehtuurit Muunneltavuuden hallinta Referenssiarkkitehtuurit, arkkitehtuurit ja eri ympäristöt/toteutuskalut Ekosysteemit (miten vaikuttavat toteutustyöhön tietyssä ekosysteemissä/entä ekosysteemin suunnittelu?) Tuoterunkoarkkitehtuurit, Kehysohjelmistot Ohjelmistojen ylläpitoa ja arkkitehtuurien refaktorointia Kertaus, mitä tenttiin Ensimmäinen vierailuluento perjantaina 22.1. klo 14:15- Janne Viitala, Sandvik Potentiaalisia vierailuluentojen aihealueita: monikielijärjestelmät/ funktionaalisuus, avoin data, liikkuvat koneet, mikropalveluarkkitehtuurit. 13.1.2016 13

Kysyttävää?

Jokaisen yliopiston omat jutut/käytännöt

Käytännönjuttuja TTY:llä Henkilökunta: Samuel Lahtinen & Sampo Suonsyrjä Sähköposti: ohar@cs.tut.fi Yleisesti kaikki viestintä, Slack Harjoitustyöhön rekisteröityminen Harjoitustyön seuranhaku: https://ohar2016.slack.com/messages/harkkatyoseuranhaku/ 13.1.2016 16