+ All Categories
Home > Documents > Åpen kildekode og enterprise systemer - når det beste i ...

Åpen kildekode og enterprise systemer - når det beste i ...

Date post: 06-Jul-2015
Category:
Upload: agcristi
View: 134 times
Download: 1 times
Share this document with a friend
Popular Tags:
26
Onsdag 11. juni, 2003 Åpen kildekode og enterprise systemer - når det beste i verden er gratis Proprietary and confidential This material may contain confidential information that is protected under copyright laws where applicable. If you believe you are not the intended audience of this material you must not take part of its content. Any material whitin may not be reproduced, transmitted or shared with other unless this is with the understanding of Conduct AS Olav Hødnebø Conduct AS
Transcript
Page 1: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Åpen kildekode og enterprise systemer- når det beste i verden er gratis

Proprietary and confidential This material may contain confidential information that is protected

under copyright laws where applicable. If you believe you are not the intended audience of this material you must not take part of its content. Any material whitin may not

be reproduced, transmitted or shared with other unless this is with the understanding of Conduct AS

Olav HødnebøConduct AS

Page 2: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Motivasjon

• Vi har alle et forhold til åpen kildekode– Emacs– GNU kompilatorer? Java?– Netscape?

• Du tenker ....– Åpen kildekode? Joda, det var noen obliger på Blindern hvor vi brukte det...– Noe som er gratis kan vel ikke være så bra som <insert your favourite product

here> som tross alt koster flesk• Eller <product> har jo markedsandel på XX%, de er nok best!

– Det finnes jo ingen garantier, ingen support, det er bare et hack...– Mine operasjoner er veldig viktig. Vi kan ikke risikere noe som er viktig på

åpen kildekodeløsningner• Hvem skal jeg skylde på når alt går galt?

• La oss se på den virkelige verden når det gjelder åpen kildekode

• Men først ->

Page 3: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Om meg

• Cand. Scient i databehandling fra Ifi. Ferdig 1992• Hovedfag innen AI og sannhetsbevarende systemer basert på ikkemonotone

logikker• Drøye 10 års erfaring innen dataindustrien

– Seismikk/navigasjon/GIS/sanntidssystemer– Konsulentbransjen

• Jobber per idag for Conduct AS

Page 4: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Om Conduct AS

• Konsulenthus med 8 ansatte med lang erfaring og variert bakgrunn• Primærmål: levere kostnadseffektive løsninger med høy kvalitet basert på åpen

kildekode• Tjenester

– Programvareutvikling– Rådgivning og kvalitetssikring– Prosjektledelse– Kursing

• Teknologier og fokusområder– Java– Applikasjonsservere– Internett– Integrasjon– E-læring

• Eneste JBoss partner i Skandinavia

Page 5: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Kunder

Page 6: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda

Open Source onthe Enterprise

Det er jo dette jeg vilsnakke om

Page 7: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda

Open Source onthe Enterprise

Hva er egentligOpen Source

Men vi må vite littom dette også!

Page 8: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda

Open Source onthe Enterprise

Hva er egentligEnterprise systemer

Hva er egentligOpen Source

Kan jo være litt ullent- dere får min tolkning

Page 9: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda

Open Source onthe Enterprise

Hva er egentligEnterprise systemer

Hva er egentligOpen Source

Krav tilEnterprise systemer

Krav slik jeg ser det

Page 10: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda

Open Source onthe Enterprise

Hva er egentligEnterprise systemer

Hva er egentligOpen Source

Krav tilEnterprise systemer

Hvordan løseskravene?

Vi får se :-)

Page 11: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda

Open Source onthe Enterprise

Hva er egentligEnterprise systemer

Hva er egentligOpen Source

Krav tilEnterprise systemer

Hvordan løseskravene?

Eksempler

Fra virkeligheten

Page 12: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Agenda – en rød tråd

Open Source onthe Enterprise

Hva er egentligEnterprise systemer

Hva er egentligOpen Source

Krav tilEnterprise systemer

Hvordan løseskravene?

Eksempler

Page 13: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Open source

• Open Source– Hovedaspektet: du kan se kildekoden– Ikke nødvendigvis gratis

• FOSS – Free and Open Source Software• Gratis?

– Free as a bird, not as a free lunch• Frihet som forbruker• Gratis som oftest ikke det viktigste aspektet

– Kunne verifisere, optimalisere, utvide, tilpasse, bugfikse oftest viktigere

• Ofte utviklet på dugnad over nettet– Rask sykel for bugfixes og nye versjoner– Motiverte mennesker gir gode systemer– 'Peer reviews' – høyere kvalitet igjennom 'kritisk' samarbeid

Page 14: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Open Source lisenser

• GNU GPL – GNU General Public License– Alle rettigheter til å modifisere, distribuere, selge– Krever at det du distribuerer følger GNU GPL lisensen

• GNU LGPL – GNU Lesser General Public License– Som GPL, men ikke krav at det du distribuerer følger noen lisenser

• Andre 'Free Software' lisenser– BSD license, modified BSD license, X11 license, Sun Public license +++

• Open source, men ikke 'free software' lisenser– Apple Public Source License, Sun Community Source License, Microsoft's

Shared Source License• Se http://www.gnu.org/licenses/license-list.html for en grei oversikt

Page 15: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Support og trygghet

• Forskjellige modeller for de forskjellige prosjektene– Uformell support

• Nyhetsgrupper, maillister etc• Ikke garantert hjelp...• ... men du kan jo alltids fikse det selv :-)• Eller det finnes alltids noen som kan dette bedre enn deg som kan fikse det for

penger

– Formell support• Kommersialisert – det koster penger

– Eksempler: RedHat, Enhydra, JBoss• 'Garantert hjelp'

Page 16: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Noen populære OS prosjekter

• Linux• Java – Sun sin referanseimplementasjon er åpen• Apache – webserver med 60% markedsandel• Jakarta/Tomcat – JSP og Servlet motor• Språk – Perl, Python, Eiffel, Tk/Tcl• Kompilatorer – GNU har en rekke FOSS kompilatorer• Postgres og MySQL – relasjonsdatabaser• JBoss, Zope, Enhydra – applikasjonsservere• Struts, Velocity – rammeverk• Eclipse – IDE for Java

Page 17: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Enterprise systemer – hva er det?

• Store, forretningskritiske systemer• Mange brukere eller store datamengder/mange transaksjoner• Ofte dyrt for bedriften hvis systemet feiler• Store krav

• Oppetid• Redundans (failover)• Skalerbarhet (clustering, load-balancing)• Sikkerhet• Transaksjonsorientert• Integrasjon

– Backend systemer– Web services

• Komponentbasert• Management (monitorering, hot deployment)• Mange typer klienter (web, tykke klienter, WAP, PDA ...)

Page 18: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Enterprise systemer - to typer

• Domenespesifike systemer– Laget for å dekke et gitt behov

• ERP, SFA, CRM, EAI, HR, SCM, Finance, Commerce

– Mange ferdige komponenter– Mulig å tilpasse/utvikle– Eksempler

• SAP, Peoplesoft, Oracle {CRM, ERP++}, BAAN

– Ofte ekstremt kostbare• Generiske utviklingssystemer/mellomvareløsninger/plattformer

– Rene programmeringsspråk– Komponentmodeller/rammeverk finnes– Eksempler

• Java2 Enterprise Edition• M$.NET• CORBA Component Model

Page 19: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

FOSS for enterpriseløsninger• Applikasjonsservere – hva er det?

– An application server serves business logic to application programs through a number of protocols – JavaWorld.com

– Skal gi deg infrastruktur så du kan fokusere på forretningslogikk• Noen eksisterende FOSS applikasjonsservere

– JBoss – støtter J2EE– Zope – skrevet i Python, web/contentsentrisk– Enhydra – servlet/XML engine med mye infrastrukturstøtte

• En applikasjonsserver løser (noen av) kravene til Enterprise Systemer– Oppetid og skalering

• Clustering – flere maskiner deler oppgaven• Failover – en maskin overtar en annens transasksjoner hvis den feiler• Databasepooling, caching, object life-cycle modeller (object pooling)

– Transactions – forskjellige transasksjonsmodeller blir støttet– Sikkerhet

• Protokoller: HTTPS• Rammeverk: Deklarative sikkerhetsmodeller for applikasjonen

– Integrasjon – JCA, Web Services (Axis)

Page 20: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

JBoss

• Eksistert siden 1999• LGPL lisens – OK å bruke i kommersielle sammenhenger• Støtter J2EE 1.3, EJB 2.0, Servlets/JSP 2.3, JDBC 2.0, JCA 1.0, JMX ++• Støtter CMP og CMR (automatisk håndering av persistente data)• Støtter Java Authentication and Authorization Service (JAAS)• Støtter clustering og failover• Hot deployment av tjenester

– Veldig rask utviklingssykel grunnet 'dynamic proxies'• Veldig konfigurerbar og utvidbar

– Komponentene settes sammen av JMX (Java Management Extensions)– Kan boote over nett

• Mikrokjerne design (kan bli mindre enn 7kb)• Mer enn 100.000 nedlastninger i måneden (for tiden 250.000 i mnd)• Valgt som beste applikasjonsserver av JavaWorld i 2002• Neste versjon (4.0 – høsten 2003) bygget rundt Aspect Orientet Programming

– Instrumenter alle dine objekter 'on-the-fly'

Page 21: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Eksempler på bruk av JBoss

• Dow Jones Indexes• Mercant tech (2.000.000 transaksjoner per dag)• American Megatrends (AMI)• Dresdner Bank• United States Dept of Labor• Argentine IRS and stock market• Playboy• Siemens – HR tjenester for sine 70000 ansatte• Posten handel kjører 155 installasjoner• Gyldendal• Aftenposten• Statoil• Norwegian – flyselskapet

Page 22: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Rammeverk og verktøy

• Xdoclet– Genererer kode og descriptorer (XML filer) basert på 'tags' i koden– Automatiserer veldig mye av prosessen med utvikling av EJB løsninger– EJB Home/Remote/Local objekter, descriptorer, findere, dataobjekter,

fasader, primary key klasser, ++

Page 23: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Rammeverk og verktøy 2

• Webwork– Deklarativ arbeidsflyt– Støtter 'Model-View-Controller' paradigmet– Tagbibliotek for å forenkle utvikling av View-komponenten

• Internasjonalisering (i18n)• Skjemavalideringer• Tester, iteratorer, hjelpeklasser (formatteringsobjekter) ++

– Støtter mange teknologier som JSP, Struts, Velocity ++• Ant

– Automatiserer byggeprosessen (en mye bedre make)• JUnit

– Rammeverk for 'automatisk' testing• Log4J

– Veldig fleksibel loggepakke fra Apache-prosjektet

Page 24: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Norwegian – et case studie

• Motivasjon– Skulle overraske markedet ved å komme raskt i gang– Trengte en løsning for billetthåndtering og billettløse reiser på kort tid– Kostnadsbeviste – ikke særlig lystne på å bruke hundretusner i lisenser

• Store krav til rask og fleksibel programvareutvikling– Norwegian trengte systemet på 3 måneders varsel– Norwegian var ikke ferdig med å definere sine operasjonelle variable– Endringsønsker med korte tidsfrister

• Prosess– Lettvekts prosess med korte iterasjoner– Få, kompetente utvikelere– Effektive verktøy– ... gir rask systemutvikling og fleksible løsninger

Page 25: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003

Norwegian – løsningen

• Kjører hele sin 'backoffice' løsning på et lite cluster (2 maskiner x 2 cpuer)• Håndterer all informasjon om

– Bookinger (Amadeus gjør selve bookingen)– Hvilke reiser som faktisk er foretatt– Billettløse reiser– Kundekort og avtaler– Fakturering og debitering– Rapportering

Page 26: Åpen kildekode og enterprise systemer - når det beste i ...

Onsdag 11. juni, 2003


Recommended