Your SlideShare is downloading. ×
GoOpen 2010: Håvard Haug Hanssen
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

GoOpen 2010: Håvard Haug Hanssen

636
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
636
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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...
  • 19. Takk for oppmerksomheten!

×