1. Överlevnad i en komplex
mjukvaruvärld
Tomas Samuelsson
Varje år bjuder vi in våra kunder till tre inspirationsdagar där vi lyfter fram de mest
intressanta IT-frågorna med fokus på strategi, teknik eller kommunikation. Dagarna
inleds med en intressant och aktuell huvudföreläsare. Därefter bjuder vi på vår
specialistkompetens i block med parallella seminarier som hör till dagens tema.
2. Om mig
Tomas Samuelsson
– tomas.samuelsson@sigma.se
– Jobbar på Sigma Göteborg
– Jobbat i IT-branschen sedan 1994
– Jobbar numera mest som IT-arkitekt
• Enterprise Java
• Integration
– Uppdrag inom telekom, retail och fordonsindustri
Varje år bjuder vi in våra kunder till tre inspirationsdagar där vi lyfter fram de mest
intressanta IT-frågorna med fokus på strategi, teknik eller kommunikation. Dagarna
inleds med en intressant och aktuell huvudföreläsare. Därefter bjuder vi på vår
specialistkompetens i block med parallella seminarier som hör till dagens tema.
3. Problem
Kravändringar
– Förutsättningar förändras hela tiden
Bräcklig arkitektur
– Ändringar och buggfixar i befintlig programvara som på ytan fungerar tillfredställande skapar
oväntade problem även vid små förändringar
DÃ¥lig fokusering
– Oklara ansvarsområden för moduler.
För många interna beroenden
– Program-modul beror på andra program-moduler i allt för stor grad
4. Exempel på åtgärder
Kravändringar
– Kortare utvecklingscykler (Agile)
Bräcklig arkitektur
– Enhetstest, kod och design review, standardiserad utveckling
DÃ¥lig fokusering
– Fokuserade komponenter med ett anvarsområde
För många interna beroenden
– Enkla och stabila gränssnitt, begränsat ansvar
5. Time-to-market
Snabbare än konkurrenterna
– Kortare utvecklingstid – Mindre och klara beroenden
Ta vara på tillfället
– Release när det behövs – Bara de påverkade komponenterna
– Patch – Endast den komponent som ändrats
Med kvalitet
– Testat – Koll på vad som ändrats
6. Önskemål
Isolerade komponenter
Explicit exponerade gränssnitt
Tänka i termer av tjänster även internt i program
– Internal SOA?
Kan köra samma olika version av samma komponent
Installera nya komponenter utan att stoppa
8. Moduler i en JVM
A
1.0
B C D
1.0 1.0 1.0
E F
1.0 1.0
G G
1.0 1.1
9. Moduler i en JVM
A
1.0
B C D
1.0 1.0 1.0
E F
1.0 1.0
G G
1.0 1.1
10. Moduler i en JVM
A
1.0
B C D
1.0 1.0 1.0
E F
1.0 1.0
G G
1.0 1.1
11. Moduler i en JVM
Service- A
registry 1.0
B C D
1.0 1.0 1.0
E F
1.0 1.0
G G
1.0 1.1
12. Deployment options
Java EE
– WebSphere, Jboss, WebLogic, Tomcat
OSGi Bundle Repository OBR (RFC-0112)
– Hanterar beroenden, kan skapas / hanteras med tex Maven
OSGi Enterprise
OSGi Mobile
– Android, Windows Mobile, Ej Iphone, Enheter baserade på Java ME
Andra färdiga moduler
13. OSGi i daglig användning?
Eclipse, RAD
– Används för pluginhantering
Java EE
– WebSphere, Jboss, WebLogic
Telematik
– Fjärrdiagnostik
– Fleet management
Smarta hem (och kök!)
Routers och switchar
– Cisco AXP (Application Extension Platform)
14. Frågor?
Varje år bjuder vi in våra kunder till tre inspirationsdagar där vi lyfter fram de mest
intressanta IT-frågorna med fokus på strategi, teknik eller kommunikation. Dagarna
inleds med en intressant och aktuell huvudföreläsare. Därefter bjuder vi på vår
specialistkompetens i block med parallella seminarier som hör till dagens tema.
15. Information
www.osgi.org
Specifications: http://www.osgi.org/Specifications/HomePage
Eclipse Equinox http://eclipse.org/equinox/
Apache Felix http://felix.apache.org/site/index.html