ohjelmistoarkkitehtuurit, tty vierailuluento...• sopivan kokoinen (43 henkeä) • kannattavan...

66
Ohjelmistoarkkitehtuurit, TTY Vierailuluento Mika Siikarla, 31.1.2012

Upload: others

Post on 17-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Ohjelmistoarkkitehtuurit, TTY

Vierailuluento

Mika Siikarla, 31.1.2012

Page 2: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Jotain IHAN muuta...

Tamperelainen ohjelmistotalo

Page 3: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •
Page 4: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Bitwise pähkinänkuoressa

Page 5: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

• Sopivan kokoinen (43 henkeä)

• Kannattavan kasvava, AAA

• Koko tuplaantui laman aikana

• Vuonna 2012 palkattu 12 henkeä

• Hyvässä paikassa (Viinikan ympyrässä)

Page 6: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Bitwise valittiin Suomen parhaaksi työpaikaksi 2012

Page 7: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Bitwiserit hoitavat projektit, joihin kukaan muu pysty

• haasteita• mielenkiintoisia pulmia• vaihtelevia tehtäviä• jatkuvaa uuden oppimista• yhdessä tekemistä

onnistumisia sankaritarinoita tyytyväiset asiakkaat

Page 8: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

• Kaikki on helppoa (=lean)

• Ketterät menetelmät

• Markkinoiden parhaat välineet ja työkalut

• Jokaisella mahdollisuus vaikuttaa

• Kaikki mukana asiakasrajapinnassa

• Projektikierto

• Mukana koko elinkaaressa

• Tiimi istuu samassa huoneessa

• Mentori valmentaa

• Illaksi kotiin

Page 9: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

» .NET, C#, C++

» JavaEE, Spring 3, EJB3, GWT, JSF2, PrimeFaces, JPA2, JTA, JCA, JMS, OSGi, Play 2.0...

» sulautetut järjestelmät, C

» Python, Django

» JavaScript, node.js, CoffeeScript

» HTML5, CSS3, LESS, Jquery

» PHP, Perl, TCL

» Web Services, REST, SOAP, CORBA, Remoting, RMI

» SOA, ESB

» PostgreSQL, Oracle, SQLServer, MySQL, MongoDB, CouchDB, light-tietokannat, ORM-kehykset

» WPF, Qt, Java FX2, Swing, AWT, Windows Forms...

» Linux, Windows, Unix, Solaris, reaaliaikaytimet

» Scrum, Kanban, CI, TDD, BDD

» Git, SVN, Jenkins, Bamboo, JIRA, Trac

Mm. näillä teknologioilla

Page 10: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •
Page 11: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •
Page 12: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •
Page 13: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •
Page 14: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Bitwise etsii ihmisiä,

joilla on

Page 15: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

• Halu oppia

• Kyky oppia

• Rohkeutta hypätä uuteen

• Maalaisjärkeä

• Ammattiylpeyttä

• Input ja output

• Tiimipelitaitoja

• Pohojalaanen tekemisen meininki

• Rohkeutta olla oma itsensä

Page 16: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Bitwise houkuttelee opiskelijaa

Page 17: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Kukaan ei ole guru syntyessään

– meillä voit kasvaa sellaiseksi

Page 18: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Tarjolla

• Osa-aikaisia töitä

• Kesätöitä

• Lopputyöaiheita

Bonuksena palkallinen päivä viikossa kirjoittamiseen

Page 19: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Hyvät kaverit vakinaistetaan, poikkeuksetta

Page 20: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Ryhdy bitwiseriksi!

Lue lisää www.bitwise.fi

Lähetä hakemus [email protected]

Page 21: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Vastuuvapauslauseke

Page 22: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

MIELIPIDE

Omia henkilökohtaisia mielipiteitäni.

Tietysti ovat ainoita oikeita!

Ehkä joku muukin on joskus ollut samaa mieltä joistakin kohdista.

”These are my principles. If you don’t like them I have others.”

- Groucho Marx (ilmeisesti ei)

Aivot päälle.

RIIPPUU VASTAAJASTA JA KYSYJÄSTÄ(ja ehkä aiheestakin)

Page 23: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Arkkitehtuuri

Page 24: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

ARKKITEHTUURI

Suunnittelijan näkökulmasta joukko suunnittelua rajoittavia sääntöjä.

Se mitä suunnittelija mielestään saa tehdä.

Se mitä arkkitehdin mielestä suunnittelija saa tehdä.

Subjektiivisia! Ei ole olemassa ”todellista” arkkitehtuuria.

Ei RTFC, ei takaisinmallinnettavissa.

ON (ja vaatii) KOMMUNIKOINTIA(dokumentointi, keskustelu, … ?)

Page 25: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

ARKKITEHTUURI

Teknisessä mielessä koodista voidaan löytää komponentteja ja niiden välisiä suhteita, mutta mitkä ovat säännöt?

Vrt. pelinappulat ja lauta ilman pelin sääntöjä.

Tai pelinappulalta vaikuttavia osia...

ON (ja vaatii) KOMMUNIKOINTIA

Page 26: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Arkkitehti

Page 27: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •
Page 28: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

ARKKITEHTI

En ole ammatiltani arkkitehti. Minun ammattini on ohjelmistosuunnittelija.

Bitwisellä ei ole töissä ketään, jonka ammatti on arkkitehti.

EI ASU TÄÄLLÄ

Page 29: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

ARKKITEHTI

Hän, joka tekee arkkitehtuurin (osan)...

sillä hetkellä, kun hän tekee {}...

siltä osin kuin hänen tekemisensä liittyy {}.

Rooli, tietyssä suhteessa ja tietyssä kontekstissa.

Kuten kuuntelija, puhuja, veli, opettaja, oppilas, ajaja, ...

ON ARKKITEHTI TOIMIESSAAN ARKKITEHTINA(da Vinci)

Page 30: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

ARKKITEHTI

ArchitectAlsoImplementshttp://orgpatterns.wikispaces.com/ArchitectAlsoImplements

”The Architect [...] should himself or herself write code.”

”[...] it is crucial that the architect have a strong feel for the application needs. It is by understanding recurring application needs that the architect can build long-term robust frameworks. If architects work only on infrastructure […] there will be a disconnect between the infrastructure (framework, middleware) and the application.”

OSS: Eat your own dog food.

TOIMII MYÖS TOTEUTTAJANA

Page 31: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Vaatimukset → Arkkitehtuuri

Page 32: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

VAATIMUKSET

PERUSTELEVAT ARKKITEHTUURIN

(Erityisesti ei-toiminnalliset) vaatimukset rajoittavat arkkitehtuuria.

Arkkitehtuuripäätösten perustelut vaatimuksista.

Vaatimukset

Arkkitehtuuri

toteuttaa

Page 33: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

VAATIMUKSET

ELÄVÄT(elääkö arkkitehtuuri?)

Vaatimusten muutosten pitäisi näkyä arkkitehtuurin muutoksina.

Ehkä otettu huomioon?

Ehkä vanha kelpaa?

Ehkä kohta palataan takaisin?

Massa: uutta vai parempaa?

Vaatimukset

Arkkitehtuuri

toteuttaa

Vaatimukset

Arkkitehtuuri

toteuttaa

Vaatimukset

Arkkitehtuuri

toteuttaa

Page 34: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

VAATIMUKSET

EIVÄT AINA TIEDOSSA

Jos Kun vaatimuksia ei tunneta kokonaisuudessaan, onko arkkitehtuurille kokonaisuudessaan perusteita?

Esim. suorituskyky, suoritustapa.

Lukitaanko vastaus?

?a??im?k?e?

Ar??it?h??uri

toteuttaa??

Page 35: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Kurkistus oikeaan maailmaan

Page 36: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

TYHJIÖSSÄ

J

Asiakas

Page 37: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

YMPÄRISTÖSSÄÄN(muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 38: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

YMPÄRISTÖSSÄÄN(laitteiden ja muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 39: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

YMPÄRISTÖSSÄÄN(prosessien, laitteiden ja muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 40: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

YMPÄRISTÖSSÄÄN(integrointien, prosessien, laitteiden ja muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 41: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Ekskursio ympäristöön

Page 42: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

TOIMINTAYMPÄRISTÖ

Ohjelmistoja: ohjaus, turvallisuus, tarkkailu

Koneita: autom., ajettuja, etäohjattuja, autom.+etä

Tilaa: 3D, jaettua, neuvoteltua

Esineitä: siirrettäviä

Esteitä: pysyviä, tilapäisiä

Rajoitteita: kulku, käyttö; loogisia, osittaisia

Infraa: antureita, kytkimiä, verkkoja

Ihmisiä

Suurin osa operaattorin hallinnassa, pieni osa ei...

ON MONIMUOTOINEN

Page 43: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

MITÄ EI VAADITA

Ei (suoranaista) (yksin)vastuuta ihmisten hengestä tai terveydestä.

Ei kovia reaaliaikavaatimuksia.

Suurin osa toiminnallisuudesta ei vaadi resursseihin nähden intensiivistä laskentaa, muistia tai tallennusta.

ON OSA VAATIMUKSIA(ja siksi vaikuttaa arkkitehtuurin prioriteetteihin)

Page 44: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Backtrack palluroihin

Page 45: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OperaattoriOperaattoriOperaattoriOperaattori

OHJELMISTO

MONESSA YMPÄRISTÖSSÄ

Toimittaja

Page 46: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

YHDESSÄ YMPÄRISTÖSSÄ(integrointien, prosessien, laitteiden ja muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 47: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

OHJELMISTO

TOISESSA YMPÄRISTÖSSÄ(integrointien, prosessien, laitteiden ja muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 48: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

? ? ? ?

? ? ? ? ?? ? ?

?

OHJELMISTO

TULEVASSA YMPÄRISTÖSSÄ(integrointien, prosessien, laitteiden ja muiden ohjelmistojen kanssa)

J +

Toimittaja Operaattori

Page 49: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

TOIMINTAYMPÄRISTÖ

Toimitukset eri laajuisia: toimittajan ja operaattorin järjestelmien osuus vaihtelee

Toimitukset eri vaiheissa: määrittely, osatoimitus, lopputoimitus, ylläpito.

Tuotteet eri vaiheissa.

Opitaan ympäristöstä lisää; vaatimukset muuttuvat.

Simulaatio kokeilu aito ympäristö↔ ↔

VAIHTELEE

Page 50: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

MONTA TUOTETTA

Prototyyppi

Kypsä tuote ==> arkkitehtuuri??

Tuoterunko

Suuri kannuste yhtenäistää.

MONTAKO ARKKITEHTUURIA?

Page 51: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Tekninen ympäristö

Page 52: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

KOMPONENTTIEN UUDELLEENKÄYTTÖ

Ympäristö

J+K

J

J'

Bitwise

~200 kloc C#

Page 53: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

VAATIMUSTEN KYPSYYS

Prototyyppi: vaatimukset ovat arvauksia, arkkitehtuuri on arvaus

Kypsä tuote: vaatimukset (melko hyvin) tiedossa, arkkitehtuuri (melko) vakaa

Tuoterunko: vaatimukset olemassaolevista ja ennakoiduista tuotteista

RAJOITTAA ARKKITEHTUURIN KYPSYYTTÄ

Page 54: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

VAATIMUSTEN KYPSYYS

Prototyyppi:

arvaus (kehitys kokeilu oppiminen)+ OK→ → → →

Syklin nopeus tärkein ei-toiminnallinen vaatimus!

Ymmärrettävyys ja muunneltavuus erittäin tärkeitä.

Muilta osin arkkitehtuuriin panostaminen menee hukkaan.

Kypsä tuote:

Uudelleenkäytön mahdollistamiseksi olisi kiva olla lähellä muiden tuotteiden arkkitehtuuria.

MÄÄRÄÄ ARKKITEHTUURIN KYPSYYTTÄ

Page 55: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

HYVIN TEHTY ARKKITEHTUURI

Ensin ominaisuuden kehityssykli. Kun OK ja ETV tiedossa, tehdään arkkitehtuuri kunnolla, kun päätökset perusteltavissa. Ei hätäillä arkkitehtuurin kanssa.

Arkkitehtuuri laahaa perässä, ei täysin yhtenäinen.

Ryhdin parantaminen perustellusti: roi, hidastavuus, yhtenäistys (J, J*, J+K, ...)...

Kevyet analyysit: takaraivossa todo-list, wtf/min, pelkokerroin, jne.

ON TEHTY HYVIEN TIETOJEN PERUSTEELLA(garbage in, garbage out)

Page 56: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

HYVIN TEHTY ARKKITEHTUURI

Poikkeuksia: muutokset ytimeen, liikaa hidasteita

Viivästetään? Häkätään silti?

Ei lupa luopua arkkitehtuurisuunnittelusta.

Ei vähennetä arkkitehtuurin tärkeyttä – kasvatetaan sitä!

ON TEHTY HYVIEN TIETOJEN PERUSTEELLA(garbage in, garbage out)

Page 57: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

ARKKITEHTUURI

Ei lupa luopua arkkitehtuurisuunnittelusta.

Ei vähennetä arkkitehtuurin tärkeyttä – kasvatetaan sitä!

Poikkeuksia: muutokset ytimeen, liikaa hidasteita

Viivästetään? Häkätään silti?

Poikkeuksia: keskeiset, esim. käynnistys, failover, toipuminen, tiedon pysyvyys, ...

HALLITUSSA KAAOKSESSA(how and why to fake it)

Page 58: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

PELASTA YDIN

Tuoterunko ja yhtenäistys vs. (?) muokattavuus.

Suojele ydintä! Keskeinen sovellusalalogiikka.

Suojele pikkuytimiä!

”Kypsyyskerrokset”: muutoksille alttiit ulompana. Aika kypsyttää.

Abstrahointi, ryhmittely, sovittimet, sillat, samaistus, rajapinnat,

PELASTAT ARKKITEHTUURIN

Page 59: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Oikeahko esimerkki

Page 60: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

J

J ja M neuvottelevat suoraan resurssin R käytöstä

M L

Page 61: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Olipa kerran väylä

HÄK HÄK HÄK

MJ

L

BUS

M-kanava

Page 62: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

”Joku muukin voisi käyttää väylää”

Erotetaan väylän ja M:n käsittely

MJ

Lkanava

protokolla

M-proxy

BUS

Uudelleenkäytettävä

Page 63: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

J, M ja N neuvottelevat...

HÄK HÄK HÄK

MJ

Lkanava

protokolla

M-proxy

BUS N

Uudelleenkäytettävä

Page 64: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

”Voisi varmaan olla muitakin kuin J, M, N...”

Välittäjä hoitaa skeduloinnin.(mikä tahansa määrä neuvottelijoita; mille tahansa resurssille)

MJ

Lkanava

protokolla

M-proxy

BUS

välittäjä

N

Uudelleenkäytettävä

Page 65: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Loppuisipa jo!

Page 66: Ohjelmistoarkkitehtuurit, TTY Vierailuluento...• Sopivan kokoinen (43 henkeä) • Kannattavan kasvava, AAA • Koko tuplaantui laman aikana • Vuonna 2012 palkattu 12 henkeä •

Kysymyksiä?