TIE-20200 Ohjelmistojen suunnittelu



Samankaltaiset tiedostot
ONKO ORGANISAATIOSI KYPSÄ DEVOPSIIN?

Työkalut ohjelmistokehityksen tukena

IoT-platformien vertailu ja valinta erilaisiin sovelluksiin / Jarkko Paavola

Kuinka helpottaa suurten projektien tuskaa pilvipalveluilla?

Case: Ydinvoimalan käyttöautomaation allianssi

Projektityö

statbeatmobile PROJECT REVIEW iteration 1

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2016

Lakki. Lisää ot sik k o osoit t am alla. Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi 2010

S11-09 Control System for an. Autonomous Household Robot Platform

Amazon Web Services Case Fonecta. TIE Palvelupohjaiset järjestelmät

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

Pienen pankin matka DevOpsiin

Avointen ohjelmistojen käyttö ohjelmistokehityksessä

TERVETULOA AAMIAISELLE

Testausta vai määrittelyä? Hyväksymistestaus ja jatkuva integraatio ketterässä ohjelmistokehityksessä

Konesali ilman rajoja Kongressi A

CMMI CMMI CMM -> CMMI. CMM Capability Maturity Model. Sami Kollanus TJTA330 Ohjelmistotuotanto

TIE Ohjelmistojen suunnittelu. Luento 2: protot sun muut

Chess Action Game (Shakkiseikkailu)

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

statbeatmobile FINAL PROJECT REVIEW

OP Banking Event. Jan 2018 ACCENTURE SECURITY ENTER

SOA SIG SOA Tuotetoimittajan näkökulma

Uusi Polku. Microsoft Tampere. Microsoft mobile, Pirkanmaan ELY ja TEtoimisto,

JIRA (& muut Atlassian -työkalut) Insta Response -tuotekehityksessä

SIJOITUSMESSUT Toimitusjohtaja Timur tjkarki

CMM Capability Maturity Model. Software Engineering Institute (SEI) Perustettu vuonna 1984 Carnegie Mellon University

CMMI CMM -> CMMI. CMM Capability Maturity Model. Sami Kollanus TJTA330 Ohjelmistotuotanto Software Engineering Institute (SEI)

Käytännön haasteita ja ratkaisuja integraation toteutuksessa. Jukka Jääheimo Teknologiajohtaja Solita Oy

Kokonaisvaltainen mittaaminen ohjelmistokehityksen tukena

HOJ J2EE & EJB & SOAP &...

Valtionhallinnon käyttäjäpäivä - IBM Cognosin tulevaisuuskatsaus ja nykypäivä

Ohjelmistotuotanto. Luento

Ketterä kehitys yhteistyöhankkeessa Sami Hautakangas, OTM-hanke

Collaborative & Co-Creative Design in the Semogen -projects

Onnistunut ohjelmistoprojekti

Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely)

Automaatiotestausprosessin kehittäminen. Pekka Pönkänen

TIE Ohjelmistojen suunnittelu

Testausoppeja toimialavaihdoksesta

Ketteryys pähkinänkuoressa. Kokopäivän Scrum-kurssin sisältö tislattuna ja tiivistettynä kolmeen varttiin

Amazon Web Services Case Fonecta. Palvelupohjaiset järjestelmät TIE-23600

ACCOUNTOR ICT Digitaalinen työympäristö Markkinatutkimus joulukuu 2018

An Assessment of DevOps Maturity in. a Software Project

EXAM-pilottikäytön kokemuksia TTY:llä Marjut Anderson

Ubicom tulosseminaari

Ohjelmistotestaus -09

T Loppukatselmus

Laatukustannukset. Laadun hallinta. Laadun kustannuksista

VALTAKUNNALLINEN YLIOPISTOKESKUSSEMINAARI Tulevaisuuden innovaatioiden, oppimisen ja osaamisen ekosysteemejä

Power BI Tech Conference Power BI. #TechConfFI. Johdanto

Vaatimusmäärittely- ja hallinta. Peruskäsitteet. Syyt aikataulun ja budjetin ylitykseen. TJTA330 Ohjelmistotuotanto

Skosmos 0.6 esittely. Osma Suominen ONKI-projektin laajennetun projektiryhmän kokous

Prosessien kehittäminen. Prosessien parantaminen. Eri mallien vertailua. Useita eri malleja. Mitä kehitetään?

Vaatimusmäärittely- ja hallinta

Risto Kauppi, CEO. Rugged Tooling Subject to change

JATKUVA INTEGRAATIO, JULKAISU JA TOIMITUS MOBIILISOVELLUSKEHITYKSESSÄ CASE OBSERVIS OY

Millainen on menestyvä digitaalinen palvelu?

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

Ketterä vaatimustenhallinta

TIE Ohjelmistojen suunnittelu

Flexbright Oy Embedded software/hardware engineer

Ohjelmistoalan pk-yrityksen mobiilikehityksen jatkuva integraatio

7. Product-line architectures

AKKREDITOITU TESTAUSLABORATORIO ACCREDITED TESTING LABORATORY GRANT4COM OY

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Digitalisaatio pelialalla -kokemuksia Rovion pelipalveluista

Ylläpitäjät, järjestelmäarkkitehdit ja muut, jotka huolehtivat VMwareinfrastruktuurin

SAS & Cloud Computing. antti.hiltunen@sas.com

Prosessiajattelu. Organisaation prosessikuvaus - CMMI. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessien määritys CMMI käytänteet

Takki. Lisää ot sik k o osoit t am alla. Nyt se sopii, tai sitten ei. Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi

5. Luento: Rinnakkaisuus ja reaaliaika. Tommi Mikkonen,

DI Studion käyttökokemuksia. Kaisu Ikonen, Tilastokeskus

Digia Oyj Näkemyksellinen kumppani ja muutoksen mahdollistaja. Digian OpenEdge pohjaisten tuotteiden modernisointi

Lean MITEN POISTAA TURHA, OPPIA JA KESKITTYÄ OLENNAISEEN

Laadun hallinta. Laatukustannukset. Laadun kustannuksista. Sami Kollanus TJTA330 Ohjelmistotuotanto

Laadun hallinta. Laatukustannukset. Sami Kollanus TJTA330 Ohjelmistotuotanto

Ohjelmistotekniikka - Luento 3 Jouni Lappalainen

JulkICTLab Eteneminen Mikael Vakkari, VM

TIE Ohjelmistojen suunnittelu

Prosessiajattelu. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessikuvaus - CMMI. Sami Kollanus TJTA330 Ohjelmistotuotanto 3.4.

FLOSS. Terhi Kilamo, assistentti

ADVANCED MOBILE NETWORK MONITORING SOLUTIONS. Made in EXFO Oulu site

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

DEVOPS-KÄYTÄNNÖT OPETUSJÄRJESTELMIEN KEHITYKSESSÄ JA YLLÄPIDOSSA

Testauksen tuki nopealle tuotekehitykselle. Antti Jääskeläinen Matti Vuori

Jatkuva integrointi ja pilvipalvelut Metropolian opetuksessa

Ohje kehitysympäristöstä. Dokumentti: Ohje kehitysympäristöstä.doc Päiväys: Projekti : AgileElephant

Visualisointi informaatioverkostojen Opintoneuvoja Pekka Siika-aho (päivitys mm. Janne Käen visualisoinnin pohjalta)

IT Service Desk palvelun käyttöönotto palvelukeskuksissa

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara

Perinteisesti käytettävät tiedon (datan) tyypit

HSMT J2EE & EJB & SOAP &...

Tosi elävä virtuaalimalli Mika Karaila Tutkimuspäällikkö Valmet Automation

Ohjelmistotekniikka - Luento 3

Testausautomaation mahdollisuudet käyttöliittymän testauksessa. Anssi Pekkarinen

Mammutti vai elefantti?

Transkriptio:

TIE-20200 Ohjelmistojen suunnittelu Luento 14: Työkaluja Marko Leppänen, Samuel Lahtinen TIE-20200 Samuel Lahtinen 1

Ajankohtaista Harjoitustyön dedis 7.12. klo 06:00 Demoilusessiot samalla/seuraavalla viikolla Harjoitustyön neuvontapäivystystä TO15-16 TE116 (Samuel), muulloinkin sopii tulla jos oon va Arvostelukristeeristöä

Ohjelmassa tänään Lyhyesti CI- & CD-työkaluista ja suunnittelusta Pikakertaus kurssin aihealueesta Tentin rakennetta, kysymyksien tyyliä Sananen harjoitustyön arvioinnista jne.

Nykyinen näkemys prosessista Palaute ja mittaukset Backlog Kehitystyö CI Deploy DEV TIE-20200 Samuel Lahtinen Versionhallinta Staging/QA

CD-putkea TIE-20200 Samuel Lahtinen

Tavoite Continuous Deployment Nopea arvonlisä asiakkaalle JIT Nopea palaute Aina ehjä build Hyötyjä saatavissa vaikkei asennuksia tehdäkään jatk A/B testaus, käyttäjän seuraaminen?

Oikean maailman esimerkki TIE-20200 Samuel Lahtinen

Työkaluja eri vaiheisiin Vaatimusten kerääminen ja hallinta Versionhallinta Kehitystyökalut Backlogin hallinta Koodikatselmointi Bugiseuranta Buildaus Testaus Yksikkötestaus Käyttöliittymätestaus Hyväksymistestaus Laatutestaus Suorituskykytestaus CI Deployment Kommunikaatio Virtualisointi

Miksi työkaluja ja automaatiota? Automaatio nopeuttaa toistuvia tehtäviä Vähemmän mahdollisuuksia tehdä inhimillisiä virheitä Kunnon työkaluputken pystyttäminen ei ole triviaalia Yleisesti 2 vko setup aika Matala truck number Lean SW & DevOps

Miten valita työkalut? Tiettyjen toimittajien työkalupinot (esim. Atlassian) Integraatio sujuvaa Tuttuus aina plussaa Mitä muut ovat kokeneet hyväksi Blogit Yritysten väliset koulutustilaisuudet

Domain Requireme nts Elicitation Version Artifact Control Backlog Repository Management Provisioning Build & Environments Continuous Unit Integration Testing UI Testing Bug Tracking Quality & Code Performance Review Acceptance Testing Deployment Feedback Consulting / IT Products Consulting / IT Products Consulting / IT Services Telecom Products Telecom Products Telecom Products Web Platform Development Platform Mobile Games Mobile Games Mobile Games B2B Services B2B Services Industrial Automation Embedded Systems UI Framework

Kehitystyökalut Vaatimukset: Jira, Trello Versionhallinta: Git, SVN, Mercurial Kommunikaatio: IRC, Slack, Skype, Hipchat, Github, F Koodikatselmointi: Gerrit

Reaalimaailman dokumentointiputk TIE-20200 Samuel Lahtinen

Staattinen analyysi ja dokumentointi Javadocs Schemaspy Swagger Checkmarx, Findbugs, SonarQube, Clang, Bullseye, C

CI/testaus Jenkins, TeamCity, CircleCI, Bamboo, Buildbot Robot framework Chai, Expect.js, Mockito, Jasmine, Cucumber, Mocha Junit Load tests: Gatling, flood.io Monitorointi: New Relic, Zabbix, Pingdom, AWS Cloud Selenium, Capybara, Browserstack, Webdriver

Virtualisointi/asennus/IT infra Virtuaaliympäristöjä: Virtualbox, Vmware, Docker Pilviympäristö: AWS, Rackspace konfiguraationhallinta: Chef/Puppet Servereiden elinkaarenhallinta: Foreman Etäserveriautomaatio: Capistrano, Rake Mobiilialustat: Hockeyapp

Analytiikka SiteCatalyst Snoobi Clickview A/B testaus: Optimizely Splunk

Työkalujen vertailu Työkalu-/teknologiavalinnat voivat olla myös suunnitte Teknologiavertailu Toistetaan esim. vuoden välein Dokumentoi samalla päätöksen syyt

Vertailumatriisi TIE-20200 Samuel Lahtinen

Työkalujen heikkouksia Jotkut työkalut vaativat tiettyjä muita osia työkaluketjus Kieliriippuvuus Saattaa pakottaa tietyt ajatusmallit Vendor lock-in Osaamisen puute

Suunnittelu vs. CI/CD Ohjaa myös ohjelman rakennetta, pienempiä selkeitä osakokonaisuuksia Päivitykset rakenteeseen, refaktoroinnit Testattavuuden korostuminen, rajapinnat Tilattomuutta, sama toiminta samoilla parametreilla Mikropalvelutyyppiset arkkitehtuuriratkaisut

Loppusanat Työkalujen käyttö, konfigurointi, yhdistely tullut lähemmäksi ohjelmiston kehitystyötä Dev.ops. CI/CD-putken työkalut hallitseville tilausta työelämässä Dedis työlle 7.12. klo 06:00. Dokumenttipohja ja palautusohje löytyvät täältä: http://www.cs.tut.fi/~ohjsuun/harjoitustyo.sh tml