Liferay Road Show Helsinki, Case Innokylä, 2012-09-13
Upcoming SlideShare
Loading in...5
×
 

Liferay Road Show Helsinki, Case Innokylä, 2012-09-13

on

  • 879 views

Henri Leisma, Ambientia, Liferay Road Show Helsinki 13.09.2012, Case Innokylä

Henri Leisma, Ambientia, Liferay Road Show Helsinki 13.09.2012, Case Innokylä

Statistics

Views

Total Views
879
Views on SlideShare
699
Embed Views
180

Actions

Likes
0
Downloads
1
Comments
0

5 Embeds 180

http://blog.ambientia.fi 172
http://blog.ambientia.dev 4
http://blog.ambientia.fi.production.ambientia.fi 2
https://twitter.com 1
http://blog.ambientia.local 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Ja tältä näyttää Innokylän etusivu (kolmasosa, alempaa löytyy vielä: ) nostoja kuvagalleriasta Rakenteellisella web artikkelilla tehtyjä linkkilistoja Asset julkaisijalla tehtyjä listauksia uutisista, tapahtumista, hankkeista
  • Kuvassa näkyy useita portletteja (web-sisällön esitys, räätälöity kuvakaruselli, luonti josta aukeaa tapahtumien luonti portlet, asset julkaisijalla ajankohtaista)
  • - Toteutettu tapahtumia vastaavalla tavalla yhteisöinä. hankkeet versioidaan. Aikaisemmat versiot hankkeista on palautettavissa, muokattavissa yms. kaikki mikä versiointiin yleensä kuluu Liferay Workflowtakin kokeiltiin (vain tilasiirtymiä, vain uusimmasta versiosta) Lisäksi hankkeille tarjotaan kuvagalleria toiminnallisuus hyödyntäen Liferayn kuvagalleria portlettia. Ominaisuuden avulla hankkeiden etusivulle voidaan nostaa kuvia, sekä tarjotaan hankkeiden ylläpitäjille kuvien muokkaus/poisto toiminnallisuus julkiselle puolelle.
  • Luoneesta käyttäjästä tulee hankkeen ylläpitäjä Voi päästää muita kehittäjiksi tai ylläpitäjiksi Innokylä toteutettu LR 6.0 6.1:ssa tullut mahdollisuus säilyttää liitos sivupohjan ja luodun sivun välillä
  • Ajatus samankaltaisten näyttämisessä on kannustaa yhteistyöhön ja vähentää saman “ pyörän keksimistä ” uudestaan eri tahoilla Tähän tulossa jatkona parhaat käytännöt ja verstaat
  • Kuvassa näkyy suodattimet (ja osumia näillä ehdoilla), haku, tuloksia erityisvaatimuksia, ei voitu käyttää OpenSearch Taustatoteutuksessa käytössä AOP:ta
  • Asiasanojen lähteenä TERO-ontologia Verkkopalvelun ylläpitäjä pystyy päivittämään palvelun ontologiat hallintapaneelin kautta
  • Kategorioille voidaan asettaa ominaisuuksia Kuvassa mm. käännökset ja järjestysluku (käytetään hakusuodatinten esittämisessä) Verkkopalvelun ylläpitäjän hallittavissa (helpommin kuin properties-tiedostossa tai koodin seassa – tässä ollaan vähän siinä rajoilla tehdäkö räätälöitynä) - LR 6.1:ssa dynamic data lists ominaisuus

Liferay Road Show Helsinki, Case Innokylä, 2012-09-13 Liferay Road Show Helsinki, Case Innokylä, 2012-09-13 Presentation Transcript

  • Innokylän verkkopalvelun toteuttaminen Liferay Road Show, Helsinki13.9.2012 www.ambientia.fi 1
  • Projektin osapuolet• Terveyden ja hyvinvoinnin laitos (THL) • THL tekee vä estö terveyteen ja hyvinvointiin n liittyvä ä tutkimusta ja kehittä mistä . Tutkimus liittyy terveyden ja hyvinvoinnin edistä miseen sekä sairauksien ja vajaakuntoisuuden ehkä isyyn.• Ambientia • Ambientia on sä hkö iseen liiketoimintaan ja viestintä ä n sekä yhteisö llisiin ratkaisuihin erikoistunut asiantuntijayritys.• Henri Leisma • Senior Software Developer, yksi Innokylän sovelluskehittäjistä13.9.2012 www.ambientia.fi 2
  • Taustaa• Julkinen tarjouskilpailu• Palvelu toteutus aloitettiin maaliskuussa 2011, ensimmä inen vaihe julkaistiin 15.12.2011• Toteutus tehtiin scrum kehystä mukaillen, iteraation pituus oli 3 viikkoa• Palvelun lä hdekoodi, saavutettavuus ja kä ytettä vyys testautettiin kolmannella osapuolella13.9.2012 www.ambientia.fi 3
  • Innokylä-projektin tavoitteet “Innokylä tarjoaa sosiaali- ja terveysalan toimijoille ympä ristö jossa nä mä voivat lö n, ytä ä toisensa, kehittä ä yhdessä sekä levittä ä uusia ideoita ja innovaatioita. Innokylä ssä ihmiset ja ideat kohtaavat.” -Mahdollistaa kehittämisen ja ideoinnin yhdessä -Keskussivusto menneille ja nykyisille hankkeille -Tapahtumien jakaminen alan keskeisten toimijoiden kesken -Samankaltaisten projektien parissa toimivien löytäminen13.9.2012 www.ambientia.fi 4
  • Haasteet / määrittelyt- Loppukäyttäjät voivat jakaa hankkeiden ja tapahtumien muokkausoikeuksia- Loppukäyttäjiä ei päästetä Liferayn hallintapaneeliin - LR Groups, permissions- Nostoja voitava tehdä lähes mistä tahansa sisällöistä - LR Asset Publisher, AssetEntry, indexing- Saavutettavuus ja käytettävyys - Sulautetut ohjeet tageilla, joissa näytetään web artikkeleita - Rakenteen ja teeman korostettu yksinkertaisuus (monilla käyttäjillä rajoitteita ja apuvälineitä)13.9.2012 www.ambientia.fi 5
  • Ratkaisut / Keskeiset toiminnot- Julkinen tiedon jakaminen - Hankkeet - Tapahtumat - Käytännöt (tulossa) - Verstaat (tulossa)- Osallistuminen ja kehittäminen - Rekisteröidy palveluun - Ota yhteyttä muihin käyttäjiin - Kehitä muiden hankkeita ja osallistu tapahtumiin - Luo omia hankkeita ja tapahtumia13.9.2012 www.ambientia.fi 6
  • www.innokyla.fi13.9.2012 www.ambientia.fi 7
  • Haasteita ja miten ne ratkaistiin• Sivuston hallinta ilman hallintapaneelia • Vaatimusmä ä rittely esittä ä varsin paljon erilaisia hallintavaatimuksia, joiden tulee olla helposti kä ytettä vissä julkiselta puolelta ja vielä pä tapahtuma-/hankekohtaisesti.• Ratkaisu • Tapahtumat ja hankkeet pä ä tettiin toteuttaa omina Liferay yhteisö inä ä n (Group), jolloin kä yttöoikeudet nä ille saatiin toimimaan vaatimusten mukaisesti ilman rä ä tä löintejä . Ominaisuuksien tuominen julkipuolelle kä yttö n hoidettiin toteuttamalla rä ä tä lö ö ityjä portletteja, jotka lukevat Liferayn tarjoamia yhteisö ja muita tietoja. -13.9.2012 www.ambientia.fi 8
  • Haasteita ja miten ne ratkaistiin• Oikeuksien jakaminen resurssikohtaisesti • Vaadittiin, että loppukä yttä jien pitä ä pystyä myöntä mä ä n eritasoisia kä yttö oikeuksia palvelussa tapahtuma-/hankekohtaisesti. Kä yttö oikeuksien jakaminen tapahtuu kä yttä jien kesken ja yksinkertaisesti julkiselta puolelta.• Ratkaisu • Ongelma ratkaistiin toteuttamalla tapahtumat ja hankkeet Liferayn omina yhteisö inä , jolloin kä yttöoikeuksien jakaminen yksittä in eri tapahtumille/hankkeille voitiin toteuttaa yhteisö kohtaisesti. Lisä haasteena oli toteuttaa kutsuminen yhteisö n, eli oikeuksien antamisen toisille ö kä yttä jille tuli kulkea kutsutun kä yttä jä n oman hyvä ksynnä n kautta.13.9.2012 www.ambientia.fi 9
  • Tapahtumakalenteri Nä kymä tapahtumakalenterin etusivusta(web sisä ltö kuvakaruselli, luonti, asset , listaus)13.9.2012 www.ambientia.fi 10
  • Ominaisuudet: TapahtumakalenteriTapahtumakalenteri on yhdistelmä erilaisia portletteja.Tapahtumien kuvien esittä minen tapahtuu Javascript-karusellilla,muuten tapahtumanostoihin kä ytettä ä n Liferayn Asset julkaisijaa.http://www.innokyla.fi/web/guest/ajankohtaistaVarsinaisista tapahtumista muodostuu omia Liferay yhteisö . Tä mä jäon toteutettu Liferayn sivustopohjana, jossa on mä ä ritelty mistäasetteluista, portleteista ja niiden asetuksista se koostuu.•Ominaisuuksia: • Ilmoittautumisen aktivointi • Aktivointi kuvakaruselliin • Yllä pitä jien mä ä rittä minen tapahtumalle • Alisivujen luominen • Kommentointi • Kaikki nä mä tuotu kä ytettä vä ksi julkiselle puolelle13.9.2012 www.ambientia.fi 11
  • Hankepankki Nä kymä hankkeen julkisesta sivusta (murupolku, toiminnot, sisä llö vä lilehdittä in) t13.9.2012 www.ambientia.fi 12
  • Hankkeen luonti• Joka hankkeelle luodaan oma yhteisö (Group)• Hankkeen luoneelle käyttäjälle lisätään oikeuksia (Permissions)• Hankkeen yhteisön sivuston asettelu ja portletit (Layout) tulevat sivustopohjalta (Site Template)• Asettelu päivitettävissä startup action:lla (6.0 vs. 6.1)• Hankkeen sisältö versioidaan tallennettaessa13.9.2012 www.ambientia.fi 13
  • Samankaltaiset hankkeet Nä kymä samankaltaisten hankkeiden listauksesta luonnoksen tallentamisen jä lkeen13.9.2012 www.ambientia.fi 14
  • Samankaltaiset hankkeet• Uutta hanketta luotaessa • Sanasto käytettävissä oman sisällön asiasanoitukseen • Kategorisointi tulee valituista tageista • Lisätään portaalin yhteiseen hakuindeksiin • Luodaan AssetEntry portaalin listauksia varten• Hankeluonnosta tallennettaessa • Perustietojen täytön lisäksi valittuna asiasanoja • Samankaltaisia hankkeita haetaan hakuindeksistä • Hankkeiden tiivistelmiä näytetään13.9.2012 www.ambientia.fi 15
  • Käyttäjäprofiilisivu Nä kymä kä yttä jä profiilista (alisivut, perustiedot, Asset-listauksia)13.9.2012 www.ambientia.fi 16
  • Ominaisuudet: Käyttäjäprofiili• Jokaiselle kä yttä jä lle muodostuu automaattisesti oma profiilisivu. Kä yttä jä voi pä ivittä ä ja hallita oman profiilin tietoja julkisen kä yttö liittymä n kautta.• Profiilista löytyy: • Kä yttä jä n oma palvelun sisä inen postilaatikko • Kä yttä jä n asetukset (sä hköpostimuistutusten vastaanotto, onko kutsuttavissa yhteisö ihin jne.) • Profiiliin listataan yhteisö joihin kä yttä jä kuuluu, t tapahtumailmoittautumiset, suosikit ja kiinnostuksen kohteet13.9.2012 www.ambientia.fi 17
  • Haasteita ja miten ne ratkaistiin• Nostot • Vaatimuksena oli erilaisten nostojen lä hes vapaa tekeminen mihin tahansa kohtaan palvelua.• Ratkaisu • Ongelma ratkaistiin Liferayn tarjoaman Asset Framework:n avulla. Esim. jokaisesta julkaistusta hankkeesta luodaan tallennuksen yhteydessä myö AssetEntry. Tä mä tallentuu s portaalin puolelle ja mahdollistaa rä ä tä löityjen portlettien sisä llö esittä misen/listaamisen asset julkaisijan avulla. n• Muutamia esimerkkejä siitä mitä tä mä n avulla mahdollistettiin: • Tykkä ysten listaaminen • Suosituimman sisä llö listaaminen n • Hankkeiden listaaminen erilaisten metatietojen perusteella • Tapahtumien listaaminen erilaisten metatietojen perusteella13.9.2012 www.ambientia.fi 18
  • Asset FrameworkRäätälöidyn portletin sisällön näyttäminen portaalissa•Jokainen portlet-app “elää omassa galaksissaan”•Asset Publisher elää itse portaalissa•Portlet-app:n omien entiteettien näyttäminen jalistaaminen (vain portlet-app)•Portlet-app:n omien entiteettien “korvikkeiden”näyttäminen ja listaaminen (myös portal) • Tallennetuista AssetEntry:ista•AssetEntry:jen tallentaminen mahdollistaaAssetEntryQuery-kyselyiden käyttämisen13.9.2012 www.ambientia.fi 19
  • Haasteita ja miten ne ratkaistiinAnonyymit toiminnot•Kommentointi (kirjautumatta)•Kutsutoiminnallisuus (nimimerkin kutsuminen)•Haastavia toteutettavia, kun pyrkimys käyttäämahdollisimman paljon Liferayn mukana tuleviaportletteja ja tagi-kirjastoja•Kyseessä portaali (kohdentaminen sivuun vs.kohdentaminen sivulle nostettuun sisältöön)13.9.2012 www.ambientia.fi 20
  • Ominaisuudet: Kutsutoiminnallisuus• Kutsutoiminnallisuus• Palveluun on toteutettu toiminto, jonka avulla kä yttä jä voidaan kutsua hankkeen kehittä jä ksi tai yllä pitä jä ksi.• Ominaisuudet: • Sisä isen kutsun lä hettä minen, jolla kutsutaan kä yttä jä kehittä jä ksi tai yllä pitä jä ksi yhteisö n ö • Kutsu voidaan hyvä ksyä tai hylä tä • Kutsu kulkee palvelun sisä isen postin kautta • Ennustava kä yttä jä n valinta kä yttä jä n nimimerkin13.9.2012 mukaan www.ambientia.fi 21
  • Ominaisuudet: KommentointiToteutettu rä ä tä löitynä portlettina•Sivun kommentointi (kommentti kuuluu oikeasti jollekinsivulle, tä tä voidaan ja hyödynnetä ä n muissa palvelunosissa)•Kommentit muodostavat puuhierarkian, kommentoikommenttia•Kirjautunut kä yttä jä voi valita kommentoikonimimerkillä vai omalla nimellä ä n•Vierailijoiden kommentointimahdollisuus•IP-sulkulista•Verkkopalvelun yllä pitä jä t voi muokata kaikkiakommentteja, yhteisö yllä pitä jä voi muokata oman nyhteisö laajuudessa n•Kieltosanalista13.9.2012 www.ambientia.fi 22
  • Esteettömyys ja käytettävyys •Korostetun yksinkertainen rakenne ja siirtymä t •Huomioitu myö kontrasteja s •Toteutettu kustomoituja nä ppä intoimintoja ja esteettömyys huomioitu mahdollisuuksien mukaan teemojen ja layouttien teossa.13.9.2012 www.ambientia.fi 23
  • Ominaisuudet: Laajat hakutoiminnallisuudetMonipuoliset haun rajausmahdollisuudet eritietosisä ltö mukaan, lisä ksi piti pystyä jennä yttä mä ä n tulokset (kuinka moneen vaihtoehtoonrajaus vaikuttaa) etukä teen ennen kä yttä jä n omanhaun suorittamista.RatkaisuVarsin haasteelliselta kuulostanut vaatimus ratkaistiinsuhteellisen yksinkertaisesti hyö dyntä mä llä Lucene-hakumoottorin ominaisuuksia.•Rä ä tä löidyistä portleteista tarjotaan entiteettien tiedottallennettavaksi portaalin yhteiseen hakuindeksiin.•Hakutulosten suodattamiseen kä ytetä ä n Liferaynkategorisointi-toiminnallisuutta.13.9.2012 www.ambientia.fi 24
  • Haku ja suodatukset Nä kymä hakusivulta (suodattimet, haku, tulokset)13.9.2012 www.ambientia.fi 25
  • Haku, kategoriat ja tagit• Käytettävissä olevat asiasanat parsittu ontologiasta• Tagit luokiteltu aihealueiden kategorioihin• Hanketta ja tapahtumaa luotaessa käyttäjä valitsee sille asiasanoja• Haettaessa , käyttäjä voi suodattaa tuloksia aihealueiden kategorioilla• Lopputuloksena (adminien) muokattavissa olevat hakusuodattimet13.9.2012 www.ambientia.fi 26
  • Haku ja suodatukset Nä kymä aihealueiden hallinnasta (LR kategoriat)13.9.2012 www.ambientia.fi 27
  • Haku ja suodatukset Nä kymä aihealueiden ja asiasanojen linkitysten hallinnasta (LR hallintapaneeli)13.9.2012 www.ambientia.fi 28
  • Haku ja suodatukset Nä kymä Liferayn kategorioiden ominaisuuksista13.9.2012 www.ambientia.fi 29
  • Haasteita ja miten ne ratkaistiin: IntegroitavuusVaadittiin dokumentoitu (wsdl) rajapinta erihankelä hteiden integroimiseen palveluun. Hankkeidentuonnissa integraation kautta pitä ä , samoin kuinkä yttöliittymä n kautta uusia luotaessa, luoda yhteisöja sivusto sekä antaa oikeuksia.RatkaisuToteutamme nykyä ä n omat portletit Liferayn ServiceBuilder -koodin generointityökalua hyödyntä en, jolloinweb servicet saadaan luotua helposti. Toteutustapanaon palvelukerroksen etä rajapinnan paljastaminen.13.9.2012 www.ambientia.fi 30
  • Haasteita ja miten ne ratkaistiin: Yhdenaikaisten muokkausten hallintaPalvelun tulee tarjota tieto siitä , mikä li toinenkä yttä jä muokkaa samaa tietosisä ltö . äRatkaisuTutkimisen jä lkeen lö ysimme Liferaystadokumentoimattoman poller-toiminnallisuuden. Tä mämahdollistaa hyvin monipuolisten tilantarkastelu-toiminnallisuuksien toteuttaminen. Ominaisuudenavulla toteuteltiin pollaus, jolla tarkastellaankä siteltä vä n aineiston tilaa ja varoitetaankä yttä jä ä mahdollisesta pä ä llekkä isestämuokkauksesta.13.9.2012 www.ambientia.fi 31
  • Yhteenveto• Mitä tehtiin hyvin • Arkkitehtuuri (uudelleenkäytettävyys, kehysten valmiit ominaisuudet) • Käyttöoikeudet ja tietoturvan taso (haavoittuvuuksia skannattu) • Koodin laatu (kolmannen osapuolen audiotoima)• Mitä tehtäisiin toisin • Yksinkertaisempaa Asset Framework:n käyttöä (suositaan enemmän AssetRenderer:ia) • Ohitetaan Liferayn oman hakutoteutuksen rajoitukset esim. suoralla SOLR hakumoottorin käytöllä • Core+näytöt vs. ketjutetut portlet-app:t13.9.2012 www.ambientia.fi 32
  • Mitä tehtiin hyvin: Tietoturva13.9.2012 www.ambientia.fi 33
  • Mitä tehtiin hyvin: Koodin laatuOhjelmakoodi auditoitiin kolmannen tahon toimestajokaisen sprintin pä ä tteeksi. Emme tiedä kukatä mä kolmasosapuoli oli, mutta koodimmetodettiin olevan parasta THL:lle ikinä toimitettuaohjelmakoodia.13.9.2012 www.ambientia.fi 34
  • Henri Leisma Puhelin: 0290 010 500Sä hköposti: henri.leisma@ambientia.fi Twitter: @ambientia