SlideShare a Scribd company logo
1 of 19
Download to read offline
Open Source erfaringer i Norwegian

                 Håvard Haug Hanssen
         Sjefsarkitekt, Kommersielle og Operative systemer i Norwegian
Hvem snakker...


•   Håvard Haug Hanssen
     –   Sjefsarkitekt, Kommersielle og Operative systemer
     –   Ansvarlig for Norwegians internettportaler
     –   Forretningsutvikling og Interaksjonsdesign
     –   Prosjektleder med 40 leveranser i Norwegian
     –   Siden 2003, startet ny E-handel plattform


•   Bakgrunn generelt
     –   20 år med IT og internettutvikling
     –   15 år innen reiseliv og luftfart
     –   Løsninger innen E-handel, Luftfart, Nettbank, Telekom,
         Dokumenthåndtering, Utdanning
Spørreundersøkelse...




?
    •   Hvem har reist med Norwegian?


    •   Hvem har brukt Lavpriskalenderen?


    •   Hvem vil ha internett ombord når de flyr?
Mer enn 200 ruter til 90 destinasjoner
Norwegian tall og fakta 1/4


  •     4. største lavprisselskap i Europa
  •     1600 ansatte og 47 fly
  •     150 ruter til 82 destinasjoner
  •     Over 10 millioner passasjerer i 2009
  •     Gjentatt høy % vekst i omsetning og trafikk


                              % vekst i forhold til 2003
      1800

      1600

      1400

      1200

      1000

       800

       600

       400

       200

        0
             2003   2004   2005   2006    2007   2008      2009   2010   2011
Norwegian tall og fakta 2/4


  •   Internettrafikk
       –   90% av salget på internett
       –   opptil 4,5 millioner besøk per dag
       –   opptil 3 millioner prissøk per dag
Norwegian tall og fakta 3/4


  •   IT Systemavdeling
       –   40 personer, 5 faste ansatte + innleide konsulenter
       –   Kun Senior/Sjef nivå, flere konsulenthus, ulike miljøer
       –   Organisert i team på ca 5 personer
             • 2 team bruker .NET
             • 2 team bruker J2EE
             • Resten tilpasser ferdige løsninger
Norwegian tall og fakta 4/4


  •   Løsningene
       –   Standard hyllevare og egenutviklede systemer
       –   Forretningsbasert, kommersielt styrt
       –   Iterativ utvikling, ”Scrum but...”
       –   Tjenesteorientert arkitektur
       –   Fleksibel arkitektur, raske leveranser
       –   Kunder er Kommersiell, Operativ og Teknisk avdeling
Arkitekturen




    Privat              Bedrift        Agent/Reisebyrå   Flyplass/Stasjon        Privat/Mobil     Eksterne partnere

Internettportal     Bedriftsportal     Agentportal       Stasjonsportal         Mobilportal         B2B API
     .NET              .NET              .NET                .NET                 .NET            Web services
                                                                                                  J2EE/JBoss


                  Buss Transaksjoner                                              Buss Kø
                     Web services                                           BizTalk, SQL Server
                     J2EE/JBoss                                             IBM Websphere MQ



                    Sentraltjenester                                          Sentraltjenester
                     Web services                                              Web services
                         .NET                                                  J2EE/JBoss
Teamerfaringer
           Portalene

•   Vurderinger                                •   Eksempler
     –   Bruker ikke Open Source                    –   Publisering plugins
     –   .NET dekker behovet                              • EPIServer EPICode
     –   .NET er etablert hos                       –   Logging
         driftsleverandør og                              • log4net
         utviklingsressurser er lett                –
         tilgjengelig                                   Patterns
                                                          • MVC
                                                          • Localisation
•   Erfaringer                                            • Cache Manager
     –   Raskt å utvikle, krever rutiner for              • ...
         å vedlikeholde kode over tid               –   Bygging
     –   Server Controller og eventer kan                 • Nant/CruiseControl
         være vanskelige å debugge
     –   Grafisk presentasjon i Server
         Controller kan unntaksvis være
         vanskelig å overstyre


•   Bidrag/Forum
     –   Søker kjente feil
     –   Poster få spørsmål


•   Livet er godt
Teamerfaringer
           Integrasjon

•   Vurderinger                              •   Eksempler
     –   Billig i oppstarten                      –   Dependency Injection
     –   Friheten til velge/bytte verktøy                • Guice
     –   Ingen lisensbinding på servere           –   Caching
         etc                                             • OSCache
     –   Enkle å jobbe med                        –   Validering
     –   Oppgradere når man vil                          • OVal
     –   Debug muligheter (brukes                 –   Logging
         unntaksvis)                                     • log4j
             • finne feilkilde i egen kode        –   Web Service
                  eller rammeverk
     –                                                   • Apache CXF
         Åpenhet rundt feil
             • søke på nett                       –   AppServer
                                                         • JBoss
                                                  –   Bygging
•   Bidrag/Forum                                         • Maven
     –   Søker kjente feil                        –   Testing
     –   Poster lite spørsmål                            • TestNG, Mockito,
     –   Poster ikke feilrettinger                           Cucumber, SoapUI
                                                  –   Scripting, Admin
                                                         • Ruby
•   Erfaringer                                    –   Utviklingsverktøy
     –   Byttet WS rammeverk                             • Eclipse
           • Raskere, enklere kode,               –   Versjonskontroll
                billigere(minne)                         • SubVersion, Git
     –   Brukte umoden versjon av                 –   Operativsystem
         rammeverk                                       • Linux
           • Medførte begrensninger
     –   Har ikke hatt behov for å inngå
         supportavtaler


•   Livet er godt
Teamerfaringer
    Sentraltjenester 1/2


•   Vurderinger (J2EE)                 •   Eksempler
     –   Slipper lisenser                   –   Rammeverk
            • Rask oppgradering                    • Spring
            • Billig i oppstarten           –   JMS (Java Messaging Service)
     –   Bruker standarder                         • ActiveMQ
            • God dokumentasjon             –   WebApp
     –   Lett å finne bugs                         • Struts 2
            • Kan debugge kildekoden        –   Logging
                 selv                              • log4j
     –   Aktivt miljø                       –   SQL Mapping
            • Finne kjente feil                    • Hibernate
            • Åpent roadmap                 –   SQL Driver
                                                   • JTDS
                                            –   Web Service rammeverk
•   Erfaringer
                                                   • Apache CXF
     –   Droppet MySQL
                                            –   Appserver
           • Hadde SQLServer/ønsket
              å standardisere                      • JBoss
                                            –   Bygging
                                                   • Maven
•   Bidrag/Forum                            –   Utviklingsverktøy
     –   Søker kjente feil                         • Eclipse
     –   Poster lite spørsmål                      • Idea
     –   Poster ikke feilrettinger          –   Operativsystem
                                                   • Linux

•   Livet er godt
Teamerfaringer
    Sentraltjenester 2/2


•   Vurderinger (.NET)                    •   Eksempler
     –   Bruker ikke Open Source               –   Web Service rammeverk
     –   .NET 3.5 dekker behovet                     • Web Service Factory
     –   Utviklingen går riktig vei            –   Logging
                                                     • log4net
•   Erfaringer                                 –   Bygging
     –   Tidligere brukte vi flere                   • Nant/CruiseControl
         rammeverk, erstattet av senere        –   Mocking
         versjoner av .NET                           • Rhino

•   Bidrag/Forum
     –   Søker ofte feil
     –   Poster lite spørsmål

•   Livet er godt
Teamerfaringer
         Støttesystemer


•   Vurderinger                        •   Eksempler
     –   Billig og bra nok                  –   Informasjon/Planlegning
     –   Mantis tungt å tilpasse                   • Confluence
     –   Confluence lisensiert              –   Bugtracker/Oppgave
                                                   • Mantis
•   Erfaringer
     –   Kildekode har vært styrt av
         teamene
            • ønsker samordning
Oppsummering


•   Våre systemer er forretningskritiske og leverer bra mht ytelse
    og stabilitet


•   Både lukkede rammeverk (.NET) og Open Source
    rammeverk (J2EE) fungerer


•   Teamene har vært selvstendige
     –   fått lov til å styre intern teknisk arkitektur


•   Etterhvert ser vi behov for koordinering/samkjøring
     –   valg av løsninger
     –   valg av rammeverk
     –   kildekodestyring, integrert i både .NET og J2EE team
     –   integrert oppgavesystem
Forretningsstrategi og Åpenhet


    •   Flytransport er ekstremt konkurranseutsatt




$
         –   IT er strategisk viktig for Norwegian
         –   Forretningshemmeligheter må skjermes


    •   IT-utviklingen er kommersielt drevet
         –   Vi må være kosteffektiv og kan bare kjøre lønnsomme
             prosjekter
         –   Lite/ingen penger til å bidra til Open Source prosjekter


    •   Konsekvens
         –   Vi er nok mest brukere, ikke bidragsytere 
         –   Vi bruker standard rammeverk og lager få generelle løsninger
             som andre kan bruke
         –   Egenutviklet kildekode beskriver forretning og kan ikke
             distribueres
         –   Feks Lavpriskalenderen er patentert
         –   Feks B2B API leveres kun kompilert, men har eget forum 
Totalkostnader


    •   I en famlende oppstart var det billig og fleksibelt å prøve seg




$
        fram med Open Source rammeverk


    •   Som etablert selskap er ikke kostnadsbildet like tydelig
         –   Både lukkede rammeverk og Open Source modeller leverer
         –   Men sparte Open Source lisenskostnader er forsvinnende små i




$
             forhold til kostnader knyttet til utviklingstimer, maskinvare, drift-
             og supportavtaler


    •   Levetid
         –   Både systemer basert på lukkede rammeverk og Open Source




$
             er justert eller reimplementert flere ganger
         –   Skyldes ikke rammeverk, men nye forretningskrav og nye
             løsningsvalg
Noen suksessfaktorer...


     •   Forretningssiden er med på utviklingen




!
     •   Tynn spec og mange iterasjoner


     •   Arkitekturvalg viser vei


     •   Leverer løsninger som er ”bra nok”


     •   Krav til forretning, fleksibilitet og leveranseevne viktigere enn
         tekniske diskusjoner


     •   Lære opp utviklerne til å tenke kommersielt
          –   Mulighetene og begrensningene sitter i hodene, ikke i
              rammeverkene...
Takk for oppmerksomheten!

More Related Content

Similar to GoOpen 2010: Håvard Haug Hanssen

Hvordan lage spennende webapplikasjoner med arc gis server
Hvordan lage spennende webapplikasjoner med arc gis serverHvordan lage spennende webapplikasjoner med arc gis server
Hvordan lage spennende webapplikasjoner med arc gis server
Geodata AS
 
20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar
Sturla Grelland
 
BK2011 Utvikling av lette webapplikasjoner i java script og html
BK2011 Utvikling av lette webapplikasjoner i java script og htmlBK2011 Utvikling av lette webapplikasjoner i java script og html
BK2011 Utvikling av lette webapplikasjoner i java script og html
Geodata AS
 
HTML5 - en int teori
HTML5 - en int teoriHTML5 - en int teori
HTML5 - en int teori
Dag Tjemsland
 
BK2011 Workflow manager i ArcGIS Desktop
BK2011 Workflow manager i ArcGIS DesktopBK2011 Workflow manager i ArcGIS Desktop
BK2011 Workflow manager i ArcGIS Desktop
Geodata AS
 
WebGIS tilpasset norske forhold - GENT
WebGIS tilpasset norske forhold - GENTWebGIS tilpasset norske forhold - GENT
WebGIS tilpasset norske forhold - GENT
Geodata AS
 
Skalering av store enterprise-systmer med API-first
Skalering av store enterprise-systmer med API-firstSkalering av store enterprise-systmer med API-first
Skalering av store enterprise-systmer med API-first
Jan Henrik Gundelsby
 

Similar to GoOpen 2010: Håvard Haug Hanssen (20)

Hele butikken i skyen
Hele butikken i skyenHele butikken i skyen
Hele butikken i skyen
 
Hva er Koha? - Versjon 2
Hva er Koha? - Versjon 2Hva er Koha? - Versjon 2
Hva er Koha? - Versjon 2
 
Hvordan lage spennende webapplikasjoner med arc gis server
Hvordan lage spennende webapplikasjoner med arc gis serverHvordan lage spennende webapplikasjoner med arc gis server
Hvordan lage spennende webapplikasjoner med arc gis server
 
20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar
 
Monolitter og byggeklosser jon erik solheim - stacc
Monolitter og byggeklosser   jon erik solheim - staccMonolitter og byggeklosser   jon erik solheim - stacc
Monolitter og byggeklosser jon erik solheim - stacc
 
Skalerbare systemer
Skalerbare systemerSkalerbare systemer
Skalerbare systemer
 
Responsiv design og Bootstrap 3
Responsiv design og Bootstrap 3Responsiv design og Bootstrap 3
Responsiv design og Bootstrap 3
 
Oslo Software Architecture: Skatteetatens målarkitektur og PoC
Oslo Software Architecture: Skatteetatens målarkitektur og PoCOslo Software Architecture: Skatteetatens målarkitektur og PoC
Oslo Software Architecture: Skatteetatens målarkitektur og PoC
 
BK2011 Utvikling av lette webapplikasjoner i java script og html
BK2011 Utvikling av lette webapplikasjoner i java script og htmlBK2011 Utvikling av lette webapplikasjoner i java script og html
BK2011 Utvikling av lette webapplikasjoner i java script og html
 
Revolusjon kamerater! Softwaredesign i "skyen"
Revolusjon kamerater! Softwaredesign i "skyen"Revolusjon kamerater! Softwaredesign i "skyen"
Revolusjon kamerater! Softwaredesign i "skyen"
 
HTML5 - en int teori
HTML5 - en int teoriHTML5 - en int teori
HTML5 - en int teori
 
20140128 Firstpoint seminar - Tid For Oppgradering
20140128   Firstpoint seminar - Tid For Oppgradering20140128   Firstpoint seminar - Tid For Oppgradering
20140128 Firstpoint seminar - Tid For Oppgradering
 
Manus Scom Ljs
Manus Scom LjsManus Scom Ljs
Manus Scom Ljs
 
Enkelhet, testbarhet og skalerbarhet med grid bakgrunn
Enkelhet, testbarhet og skalerbarhet med grid   bakgrunnEnkelhet, testbarhet og skalerbarhet med grid   bakgrunn
Enkelhet, testbarhet og skalerbarhet med grid bakgrunn
 
Flexible, scalable self-service provisioning using Office PnP
Flexible, scalable self-service provisioning using Office PnPFlexible, scalable self-service provisioning using Office PnP
Flexible, scalable self-service provisioning using Office PnP
 
Core trek 2015
Core trek 2015Core trek 2015
Core trek 2015
 
BK2011 Workflow manager i ArcGIS Desktop
BK2011 Workflow manager i ArcGIS DesktopBK2011 Workflow manager i ArcGIS Desktop
BK2011 Workflow manager i ArcGIS Desktop
 
WebGIS tilpasset norske forhold - GENT
WebGIS tilpasset norske forhold - GENTWebGIS tilpasset norske forhold - GENT
WebGIS tilpasset norske forhold - GENT
 
Intranett i NSB-konsernet
Intranett i NSB-konsernetIntranett i NSB-konsernet
Intranett i NSB-konsernet
 
Skalering av store enterprise-systmer med API-first
Skalering av store enterprise-systmer med API-firstSkalering av store enterprise-systmer med API-first
Skalering av store enterprise-systmer med API-first
 

More from Friprogsenteret

GoOpen Roadshow Trondheim - Innledning ved Friprogsenteret
GoOpen Roadshow Trondheim - Innledning ved FriprogsenteretGoOpen Roadshow Trondheim - Innledning ved Friprogsenteret
GoOpen Roadshow Trondheim - Innledning ved Friprogsenteret
Friprogsenteret
 
Åpning av MSc ved UiA og HiT
Åpning av MSc ved UiA og HiTÅpning av MSc ved UiA og HiT
Åpning av MSc ved UiA og HiT
Friprogsenteret
 
GoOpen 2010: David Elboth
GoOpen 2010: David ElbothGoOpen 2010: David Elboth
GoOpen 2010: David Elboth
Friprogsenteret
 
GoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'EliaGoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'Elia
Friprogsenteret
 
GoOpen 2010: Roger Bivand
GoOpen 2010: Roger BivandGoOpen 2010: Roger Bivand
GoOpen 2010: Roger Bivand
Friprogsenteret
 
GoOpen 2010: Reidar Conradi
GoOpen 2010: Reidar ConradiGoOpen 2010: Reidar Conradi
GoOpen 2010: Reidar Conradi
Friprogsenteret
 
GoOpen 2010: Lisbeth Bergholt
GoOpen 2010: Lisbeth BergholtGoOpen 2010: Lisbeth Bergholt
GoOpen 2010: Lisbeth Bergholt
Friprogsenteret
 
GoOpen 2010: Jan Rasmus Sulebak
GoOpen 2010: Jan Rasmus SulebakGoOpen 2010: Jan Rasmus Sulebak
GoOpen 2010: Jan Rasmus Sulebak
Friprogsenteret
 
GoOpen 2010: Erlend Øverby
GoOpen 2010: Erlend ØverbyGoOpen 2010: Erlend Øverby
GoOpen 2010: Erlend Øverby
Friprogsenteret
 
GoOpen 2010: Ann Therese Lotherington
GoOpen 2010: Ann Therese LotheringtonGoOpen 2010: Ann Therese Lotherington
GoOpen 2010: Ann Therese Lotherington
Friprogsenteret
 
GoOpen 2010: Olav Torvund
GoOpen 2010: Olav TorvundGoOpen 2010: Olav Torvund
GoOpen 2010: Olav Torvund
Friprogsenteret
 
GoOpen 2010: Arne Magnus
GoOpen 2010: Arne MagnusGoOpen 2010: Arne Magnus
GoOpen 2010: Arne Magnus
Friprogsenteret
 
GoOpen 2010: Anne Cathrine Frøstrup
GoOpen 2010: Anne Cathrine FrøstrupGoOpen 2010: Anne Cathrine Frøstrup
GoOpen 2010: Anne Cathrine Frøstrup
Friprogsenteret
 
GoOpen 2010: Rein Amund Schultz
GoOpen 2010: Rein Amund SchultzGoOpen 2010: Rein Amund Schultz
GoOpen 2010: Rein Amund Schultz
Friprogsenteret
 

More from Friprogsenteret (20)

Fri programvare + Åpne data = Hånd i hanske
Fri programvare + Åpne data = Hånd i hanskeFri programvare + Åpne data = Hånd i hanske
Fri programvare + Åpne data = Hånd i hanske
 
Hvorfor — og hvordan satser BEKK på fri programvare?
Hvorfor — og hvordan satser BEKK på fri programvare?Hvorfor — og hvordan satser BEKK på fri programvare?
Hvorfor — og hvordan satser BEKK på fri programvare?
 
GoOpen Roadshow Trondheim - Innledning ved Friprogsenteret
GoOpen Roadshow Trondheim - Innledning ved FriprogsenteretGoOpen Roadshow Trondheim - Innledning ved Friprogsenteret
GoOpen Roadshow Trondheim - Innledning ved Friprogsenteret
 
The Norwegian approach to open source in the public sector
The Norwegian approach to open source in the public sectorThe Norwegian approach to open source in the public sector
The Norwegian approach to open source in the public sector
 
Åpning av MSc ved UiA og HiT
Åpning av MSc ved UiA og HiTÅpning av MSc ved UiA og HiT
Åpning av MSc ved UiA og HiT
 
Overalt, alltid
Overalt, alltidOveralt, alltid
Overalt, alltid
 
GoOpen 2010: David Elboth
GoOpen 2010: David ElbothGoOpen 2010: David Elboth
GoOpen 2010: David Elboth
 
Fri programvare og utfordringer i anskaffelsesprosessen
Fri programvare og utfordringer i anskaffelsesprosessenFri programvare og utfordringer i anskaffelsesprosessen
Fri programvare og utfordringer i anskaffelsesprosessen
 
GoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'EliaGoOpen 2010: Sandro D'Elia
GoOpen 2010: Sandro D'Elia
 
GoOpen 2010: Roger Bivand
GoOpen 2010: Roger BivandGoOpen 2010: Roger Bivand
GoOpen 2010: Roger Bivand
 
GoOpen 2010: Reidar Conradi
GoOpen 2010: Reidar ConradiGoOpen 2010: Reidar Conradi
GoOpen 2010: Reidar Conradi
 
GoOpen 2010: Lisbeth Bergholt
GoOpen 2010: Lisbeth BergholtGoOpen 2010: Lisbeth Bergholt
GoOpen 2010: Lisbeth Bergholt
 
GoOpen 2010: Jan Rasmus Sulebak
GoOpen 2010: Jan Rasmus SulebakGoOpen 2010: Jan Rasmus Sulebak
GoOpen 2010: Jan Rasmus Sulebak
 
GoOpen 2010: Erlend Øverby
GoOpen 2010: Erlend ØverbyGoOpen 2010: Erlend Øverby
GoOpen 2010: Erlend Øverby
 
GoOpen 2010: Ann Therese Lotherington
GoOpen 2010: Ann Therese LotheringtonGoOpen 2010: Ann Therese Lotherington
GoOpen 2010: Ann Therese Lotherington
 
GoOpen 2010: Olav Torvund
GoOpen 2010: Olav TorvundGoOpen 2010: Olav Torvund
GoOpen 2010: Olav Torvund
 
GoOpen 2010: Arne Magnus
GoOpen 2010: Arne MagnusGoOpen 2010: Arne Magnus
GoOpen 2010: Arne Magnus
 
GoOpen 2010: Anne Cathrine Frøstrup
GoOpen 2010: Anne Cathrine FrøstrupGoOpen 2010: Anne Cathrine Frøstrup
GoOpen 2010: Anne Cathrine Frøstrup
 
GoOpen 2010: Tom Orvei
GoOpen 2010: Tom OrveiGoOpen 2010: Tom Orvei
GoOpen 2010: Tom Orvei
 
GoOpen 2010: Rein Amund Schultz
GoOpen 2010: Rein Amund SchultzGoOpen 2010: Rein Amund Schultz
GoOpen 2010: Rein Amund Schultz
 

GoOpen 2010: Håvard Haug Hanssen

  • 1. Open Source erfaringer i Norwegian Håvard Haug Hanssen Sjefsarkitekt, Kommersielle og Operative systemer i Norwegian
  • 2. Hvem snakker... • Håvard Haug Hanssen – Sjefsarkitekt, Kommersielle og Operative systemer – Ansvarlig for Norwegians internettportaler – Forretningsutvikling og Interaksjonsdesign – Prosjektleder med 40 leveranser i Norwegian – Siden 2003, startet ny E-handel plattform • Bakgrunn generelt – 20 år med IT og internettutvikling – 15 år innen reiseliv og luftfart – Løsninger innen E-handel, Luftfart, Nettbank, Telekom, Dokumenthåndtering, Utdanning
  • 3. Spørreundersøkelse... ? • Hvem har reist med Norwegian? • Hvem har brukt Lavpriskalenderen? • Hvem vil ha internett ombord når de flyr?
  • 4. Mer enn 200 ruter til 90 destinasjoner
  • 5. Norwegian tall og fakta 1/4 • 4. største lavprisselskap i Europa • 1600 ansatte og 47 fly • 150 ruter til 82 destinasjoner • Over 10 millioner passasjerer i 2009 • Gjentatt høy % vekst i omsetning og trafikk % vekst i forhold til 2003 1800 1600 1400 1200 1000 800 600 400 200 0 2003 2004 2005 2006 2007 2008 2009 2010 2011
  • 6. Norwegian tall og fakta 2/4 • Internettrafikk – 90% av salget på internett – opptil 4,5 millioner besøk per dag – opptil 3 millioner prissøk per dag
  • 7. Norwegian tall og fakta 3/4 • IT Systemavdeling – 40 personer, 5 faste ansatte + innleide konsulenter – Kun Senior/Sjef nivå, flere konsulenthus, ulike miljøer – Organisert i team på ca 5 personer • 2 team bruker .NET • 2 team bruker J2EE • Resten tilpasser ferdige løsninger
  • 8. Norwegian tall og fakta 4/4 • Løsningene – Standard hyllevare og egenutviklede systemer – Forretningsbasert, kommersielt styrt – Iterativ utvikling, ”Scrum but...” – Tjenesteorientert arkitektur – Fleksibel arkitektur, raske leveranser – Kunder er Kommersiell, Operativ og Teknisk avdeling
  • 9. Arkitekturen Privat Bedrift Agent/Reisebyrå Flyplass/Stasjon Privat/Mobil Eksterne partnere Internettportal Bedriftsportal Agentportal Stasjonsportal Mobilportal B2B API .NET .NET .NET .NET .NET Web services J2EE/JBoss Buss Transaksjoner Buss Kø Web services BizTalk, SQL Server J2EE/JBoss IBM Websphere MQ Sentraltjenester Sentraltjenester Web services Web services .NET J2EE/JBoss
  • 10. Teamerfaringer Portalene • Vurderinger • Eksempler – Bruker ikke Open Source – Publisering plugins – .NET dekker behovet • EPIServer EPICode – .NET er etablert hos – Logging driftsleverandør og • log4net utviklingsressurser er lett – tilgjengelig Patterns • MVC • Localisation • Erfaringer • Cache Manager – Raskt å utvikle, krever rutiner for • ... å vedlikeholde kode over tid – Bygging – Server Controller og eventer kan • Nant/CruiseControl være vanskelige å debugge – Grafisk presentasjon i Server Controller kan unntaksvis være vanskelig å overstyre • Bidrag/Forum – Søker kjente feil – Poster få spørsmål • Livet er godt
  • 11. Teamerfaringer Integrasjon • Vurderinger • Eksempler – Billig i oppstarten – Dependency Injection – Friheten til velge/bytte verktøy • Guice – Ingen lisensbinding på servere – Caching etc • OSCache – Enkle å jobbe med – Validering – Oppgradere når man vil • OVal – Debug muligheter (brukes – Logging unntaksvis) • log4j • finne feilkilde i egen kode – Web Service eller rammeverk – • Apache CXF Åpenhet rundt feil • søke på nett – AppServer • JBoss – Bygging • Bidrag/Forum • Maven – Søker kjente feil – Testing – Poster lite spørsmål • TestNG, Mockito, – Poster ikke feilrettinger Cucumber, SoapUI – Scripting, Admin • Ruby • Erfaringer – Utviklingsverktøy – Byttet WS rammeverk • Eclipse • Raskere, enklere kode, – Versjonskontroll billigere(minne) • SubVersion, Git – Brukte umoden versjon av – Operativsystem rammeverk • Linux • Medførte begrensninger – Har ikke hatt behov for å inngå supportavtaler • Livet er godt
  • 12. Teamerfaringer Sentraltjenester 1/2 • Vurderinger (J2EE) • Eksempler – Slipper lisenser – Rammeverk • Rask oppgradering • Spring • Billig i oppstarten – JMS (Java Messaging Service) – Bruker standarder • ActiveMQ • God dokumentasjon – WebApp – Lett å finne bugs • Struts 2 • Kan debugge kildekoden – Logging selv • log4j – Aktivt miljø – SQL Mapping • Finne kjente feil • Hibernate • Åpent roadmap – SQL Driver • JTDS – Web Service rammeverk • Erfaringer • Apache CXF – Droppet MySQL – Appserver • Hadde SQLServer/ønsket å standardisere • JBoss – Bygging • Maven • Bidrag/Forum – Utviklingsverktøy – Søker kjente feil • Eclipse – Poster lite spørsmål • Idea – Poster ikke feilrettinger – Operativsystem • Linux • Livet er godt
  • 13. Teamerfaringer Sentraltjenester 2/2 • Vurderinger (.NET) • Eksempler – Bruker ikke Open Source – Web Service rammeverk – .NET 3.5 dekker behovet • Web Service Factory – Utviklingen går riktig vei – Logging • log4net • Erfaringer – Bygging – Tidligere brukte vi flere • Nant/CruiseControl rammeverk, erstattet av senere – Mocking versjoner av .NET • Rhino • Bidrag/Forum – Søker ofte feil – Poster lite spørsmål • Livet er godt
  • 14. Teamerfaringer Støttesystemer • Vurderinger • Eksempler – Billig og bra nok – Informasjon/Planlegning – Mantis tungt å tilpasse • Confluence – Confluence lisensiert – Bugtracker/Oppgave • Mantis • Erfaringer – Kildekode har vært styrt av teamene • ønsker samordning
  • 15. Oppsummering • Våre systemer er forretningskritiske og leverer bra mht ytelse og stabilitet • Både lukkede rammeverk (.NET) og Open Source rammeverk (J2EE) fungerer • Teamene har vært selvstendige – fått lov til å styre intern teknisk arkitektur • Etterhvert ser vi behov for koordinering/samkjøring – valg av løsninger – valg av rammeverk – kildekodestyring, integrert i både .NET og J2EE team – integrert oppgavesystem
  • 16. Forretningsstrategi og Åpenhet • Flytransport er ekstremt konkurranseutsatt $ – IT er strategisk viktig for Norwegian – Forretningshemmeligheter må skjermes • IT-utviklingen er kommersielt drevet – Vi må være kosteffektiv og kan bare kjøre lønnsomme prosjekter – Lite/ingen penger til å bidra til Open Source prosjekter • Konsekvens – Vi er nok mest brukere, ikke bidragsytere  – Vi bruker standard rammeverk og lager få generelle løsninger som andre kan bruke – Egenutviklet kildekode beskriver forretning og kan ikke distribueres – Feks Lavpriskalenderen er patentert – Feks B2B API leveres kun kompilert, men har eget forum 
  • 17. Totalkostnader • I en famlende oppstart var det billig og fleksibelt å prøve seg $ fram med Open Source rammeverk • Som etablert selskap er ikke kostnadsbildet like tydelig – Både lukkede rammeverk og Open Source modeller leverer – Men sparte Open Source lisenskostnader er forsvinnende små i $ forhold til kostnader knyttet til utviklingstimer, maskinvare, drift- og supportavtaler • Levetid – Både systemer basert på lukkede rammeverk og Open Source $ er justert eller reimplementert flere ganger – Skyldes ikke rammeverk, men nye forretningskrav og nye løsningsvalg
  • 18. Noen suksessfaktorer... • Forretningssiden er med på utviklingen ! • Tynn spec og mange iterasjoner • Arkitekturvalg viser vei • Leverer løsninger som er ”bra nok” • Krav til forretning, fleksibilitet og leveranseevne viktigere enn tekniske diskusjoner • Lære opp utviklerne til å tenke kommersielt – Mulighetene og begrensningene sitter i hodene, ikke i rammeverkene...