Överlevnad i en komplex mjukvaruvärld

17
Ö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

description

Presentation av Tomas Samuelsson den 11 maj 2012

Transcript of Överlevnad i en komplex mjukvaruvärld

Page 1: Överlevnad i en komplex mjukvaruvärld

Ö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.

Page 2: Överlevnad i en komplex mjukvaruvärld

Om mig

Tomas Samuelsson– [email protected]– 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.

Page 3: Överlevnad i en komplex mjukvaruvärld

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

Page 4: Överlevnad i en komplex mjukvaruvärld

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

Page 5: Överlevnad i en komplex mjukvaruvärld

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

Page 6: Överlevnad i en komplex mjukvaruvärld

Önskemål

Isolerade komponenterExplicit exponerade gränssnittTänka i termer av tjänster även internt i program– Internal SOA?

Kan köra samma olika version av samma komponentInstallera nya komponenter utan att stoppa

Page 7: Överlevnad i en komplex mjukvaruvärld

OSGi

Page 8: Överlevnad i en komplex mjukvaruvärld

Moduler i en JVM

B1.0

A1.0

E1.0

D1.0

F1.0

G1.0

C1.0

G1.1

Page 9: Överlevnad i en komplex mjukvaruvärld

Moduler i en JVM

B1.0

A1.0

E1.0

D1.0

F1.0

G1.0

C1.0

G1.1

Page 10: Överlevnad i en komplex mjukvaruvärld

Moduler i en JVM

B1.0

A1.0

E1.0

D1.0

F1.0

G1.0

C1.0

G1.1

Page 11: Överlevnad i en komplex mjukvaruvärld

Moduler i en JVM

B1.0

A1.0

E1.0

D1.0

F1.0

G1.0

C1.0

G1.1

Service-registry

Page 12: Överlevnad i en komplex mjukvaruvärld

Deployment options

Java EE– WebSphere, Jboss, WebLogic, Tomcat

OSGi Bundle Repository OBR (RFC-0112)– Hanterar beroenden, kan skapas / hanteras med tex Maven

OSGi EnterpriseOSGi Mobile– Android, Windows Mobile, Ej Iphone, Enheter baserade på Java ME

Andra färdiga moduler

Page 13: Överlevnad i en komplex mjukvaruvärld

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)

Page 14: Överlevnad i en komplex mjukvaruvärld

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.

Page 15: Överlevnad i en komplex mjukvaruvärld

Information

www.osgi.orgSpecifications: http://www.osgi.org/Specifications/HomePageEclipse Equinox http://eclipse.org/equinox/Apache Felix http://felix.apache.org/site/index.html

Page 16: Överlevnad i en komplex mjukvaruvärld
Page 17: Överlevnad i en komplex mjukvaruvärld