Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
SaaSiin pa(i)nostusta
Teatime 2015
• Aiheena Software-as-a-Servicen yleiset hyödyt
• Puhujana Aleksi Häkli, TTY, melkein-DI
• Empiiristä kokemusta modernista...
• SaaS tarjoaa yleensä softapalveluja platformeina
• Versiohallinta, buildit, testaus, jatkuvat palvelut, ...
• GitHub vs....
Tyypillisiä ratkaisuja softatarpeisiin
• Git / SVN / Mercurial versiohallintaan
• Tarvitsee usein erilliset palvelimet ja ...
SaaS-vaihtoehtoja elämää helpottamaan
• GitHub versiohallintaan, katselmointeihin,
projektin dokumentaatioon
• Travis buil...
GitHub - parempi kuin pelkkä Git?
• GitHub tarjoaa julkisia git-repoja web-
käyttöliittymillä ja lisäpalveluilla
• Pull re...
• Tarjoaa Helpon™ käyttöliittymän ja
konffiformaatin stereotyyppisiin softabuildeihin
• Tarjoaa builder imageja erilaisill...
Travis - esimerkki yksikkötestien ajamisesta
• Hostausta servicenä erilaisille web-applikaatioille
• NodeJS, Python, Java, Ruby, …
• Apache / nginx valmiina virtuaalik...
Elastic Beanstalk - esimerkki Travis deplasta
Oikeat hyödyt *aaSista
• Ei kertasitoutumista raudan ja softalisenssien
ostoon - maksut usein pienissä erissä (tunti/kk)
•...
Oikeat haitat *aaSista
• Alustojen valinta on vaikeaa ja vaatii kokemusta
• Alustat tykkäävät joskus naittaa devaajat itse...
Milloin käyttää *aaSia?
• Projektin koko (aluksi) pieni (esim. < 100k€)
• Ei 100% tarkkoja tuotantoympäristöjen speksejä
•...
Kysymyksiä?
KIITOS
Vincit Teatime 2015.2 - Aleksi Häkli: SaaSiin pa(i)nostusta
Upcoming SlideShare
Loading in …5
×

Vincit Teatime 2015.2 - Aleksi Häkli: SaaSiin pa(i)nostusta

720 views

Published on

Aleksi Häkli from Vincit Oy gave a short reflective talk on SaaS.

SaaSiin pa(i)nostusta or Forcing the SaaS

Modernin ohjelmistoprojektin odotetaan olevan yksikkö- ja integraatiotestattu, koodikattavuuden kartoitettu, muutosten katselmoitu, ja koodin siirtyvän automaattisesti versiohallinnasta ajoon beta- ja tuotantoklustereille. Milloin? No versiohallintaan puskettaessa tietysti. Versiohallintalähtöistä, automoitua lähdekoodin ja tuotteenhallintaa GitHubista Traviksen syövereihin ja ajoon Amazonin Elastic Beanstalkiin. Tule kuulemaan hiljaista tietoa tämän vuosituhannen ohjelmistokehityksen perustyökaluista.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Vincit Teatime 2015.2 - Aleksi Häkli: SaaSiin pa(i)nostusta

  1. 1. SaaSiin pa(i)nostusta Teatime 2015
  2. 2. • Aiheena Software-as-a-Servicen yleiset hyödyt • Puhujana Aleksi Häkli, TTY, melkein-DI • Empiiristä kokemusta modernista (F)OSSista, web- proggiksista ja palveluista • HTML5-projektit, CDN-palvelut • RESTful APIt, SOAlike servicet ym. Intternet-APIt • Palveluplättisten pystytys, ylläpito, paketointi • AWS-infrastruktuuri, WebScale™ Puhujasta ja aiheesta
  3. 3. • SaaS tarjoaa yleensä softapalveluja platformeina • Versiohallinta, buildit, testaus, jatkuvat palvelut, ... • GitHub vs. git, Travis vs. Jenkins, EBS vs. Apache • Nopeuttaa setuppeja ja säästää aikaa sekä rahaa • Setuppaustyön deduplikointi • Helppous kehittäjille vs. sysadmin-taitovaatimukset • Hyvä käytettävyys selaimilla vs. SSH-avaimet ja CLI • Melko järkevät (HTTP) APIt ja kirjastot niiden käyttöön Mitä ja miksi SaaS on?
  4. 4. Tyypillisiä ratkaisuja softatarpeisiin • Git / SVN / Mercurial versiohallintaan • Tarvitsee usein erilliset palvelimet ja ylläpidon • Jenkins / OBS buildipalveluita varten • Tarvitsee usein kymmeniä tunteja setuppausta ja paljon rautaa • Apache / nginx boxit deploymentteja varten • Konffaus ja ylläpito työlästä mutatoituvissa setupeissa • Selenium GRID E2E-testausta varten • Vaatii säännöllisiä vierailuja rautakauppaan
  5. 5. SaaS-vaihtoehtoja elämää helpottamaan • GitHub versiohallintaan, katselmointeihin, projektin dokumentaatioon • Travis buildeja ja yksikkötestejä varten • AWS ja Elastic Beanstalk palvelinympäristö(i)ksi • OpBeat monitorointiin ja virheentarkkailuun • Saucelabs integraatio- ja E2E-testaukseen • Vaihtoehtoja on paljon; osa loistavia, osa huonoja
  6. 6. GitHub - parempi kuin pelkkä Git? • GitHub tarjoaa julkisia git-repoja web- käyttöliittymillä ja lisäpalveluilla • Pull requestit code reviewejä varten • Markdown-dokumentaatiot repositoryissa selattavina • Wikit projektidokumentaatiota varten • $projekti.github.io-sivut projektiesittelyjä varten • Monia integraatioita SaaS-palveluihin, paljon valmiita git-hook-taikoja, hyvä dokumentaatio jne.
  7. 7. • Tarjoaa Helpon™ käyttöliittymän ja konffiformaatin stereotyyppisiin softabuildeihin • Tarjoaa builder imageja erilaisille techeille • Node, Python, Java, C++, Ruby, ... • Tarjoaa myös erilaisia deployment-vaihtoehtoja • Virallisesti tuettuina n. 30 deployment provideria • Epävirallisesti tuettuina vielä useampia Travis - helpompia testejä ja buildeja
  8. 8. Travis - esimerkki yksikkötestien ajamisesta
  9. 9. • Hostausta servicenä erilaisille web-applikaatioille • NodeJS, Python, Java, Ruby, … • Apache / nginx valmiina virtuaalikoneissa • Konffataan polut ja env, saadaan takaisin URL • Tuettuna suoraan myös Amazon RDS, eli mm. PostgreSQL, MySQL, Oracle, database-as-a-service • Helppo kytkeä Elasticachea, SESiä ym. AWS-infraa Elastic Beanstalk
  10. 10. Elastic Beanstalk - esimerkki Travis deplasta
  11. 11. Oikeat hyödyt *aaSista • Ei kertasitoutumista raudan ja softalisenssien ostoon - maksut usein pienissä erissä (tunti/kk) • Aikaa ja miehiä* vapautuu ohjelmiston konffauksesta, ylläpidosta ja opiskelusta • Keskittyminen tuotte(id)en tekoon ja myyntiin • Lähes kaikki lähteet väittävät SaaS-ratkaisujen tuovan “competitive & price advantagea” (siistii) * myös naisia vapautuu, mutta ikävä kyllä vain n. 3 kertaa harvemmin (lähde)
  12. 12. Oikeat haitat *aaSista • Alustojen valinta on vaikeaa ja vaatii kokemusta • Alustat tykkäävät joskus naittaa devaajat itseensä • Devaajat eivät opi teknologioitaan niin syvällisesti • Joskus SaaS-alustoilla tai verkoilla downtimejä • Pitkäkestoisissa, raskaissa projekteissa hinnat voivat olla suurempia kuin omassa ympäristössä • Luottokorttilaskujen perkaus ja kirjanpito
  13. 13. Milloin käyttää *aaSia? • Projektin koko (aluksi) pieni (esim. < 100k€) • Ei 100% tarkkoja tuotantoympäristöjen speksejä • Halutaan helpottaa ylläpitoa ja ACL:ää projektissa • Halutaan koodi toimitukseen nopeammin • CI / CD / E2E / user testing pipeline nopeutuu • Halutaan joustavaa kasvuvaraa ilman omiin palvelimiin / saleihin / keskuksiin sitoutumista
  14. 14. Kysymyksiä?
  15. 15. KIITOS

×