28.02.2013 Aufrufe

Scrum Agile Produktentwicklung mit Scrum Nearshoring ...

Scrum Agile Produktentwicklung mit Scrum Nearshoring ...

Scrum Agile Produktentwicklung mit Scrum Nearshoring ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Experience Nr. 47 Juli 2010<br />

© by ERNI Consulting AG<br />

Experience<br />

ERNI Erfahrungsberichte rund um Management-, Prozess- und Technologiethemen<br />

<strong>Scrum</strong><br />

<strong>Agile</strong> <strong>Produktentwicklung</strong><br />

<strong>mit</strong> <strong>Scrum</strong><br />

<strong>Nearshoring</strong><br />

Outsourcing bringt Flexibilität<br />

Outtasking<br />

<strong>Nearshoring</strong> senkt Kosten<br />

Architekturreview<br />

Ein Architekturreview sorgt für Durchblick


ERNI Experience | Editorial<br />

Titelseite: Reto Tschudi<br />

Business Area Manager<br />

in der Firma ERNI Consulting AG.<br />

Beratertätigkeit: Testmanagement<br />

und Prozessoptimierung.<br />

Impressum<br />

Herausgeber<br />

ERNI Consulting AG<br />

Zürich · Baar · Bern<br />

ERNI (Deutschland) GmbH, München<br />

ERNI (Slovakia) s.r.o., Bratislava<br />

Redaktion<br />

Maria Holla<br />

ERNI (Slovakia) s.r.o.<br />

Tel. +421 2 3255 37 37<br />

E-Mail leserservice@erni.ch<br />

Internet www.erni.ch/experience<br />

Editorial<br />

Reto Tschudi<br />

<strong>Scrum</strong><br />

Roland Oehen Kanzow<br />

<strong>Nearshoring</strong><br />

Philipp Rey<br />

Christoph Krauer<br />

Outtasking<br />

Martin Sand<br />

Heinz Schlatter<br />

Architekturreview<br />

Oliver Blindenbacher<br />

Lektorat<br />

Stefan Kyora,<br />

Mediacontact GmbH, Luzern<br />

Ruedi Häuptli, Sprachagentur Bahia,<br />

Salvador BR<br />

Konzept/Layout<br />

Katarina Beinrohrova<br />

Produktion<br />

von Ah Druck AG, Sarnen<br />

Auflage<br />

10 000 Exemplare<br />

Erscheint quartalsweise<br />

Copyright © 2010<br />

by ERNI Management Services AG<br />

Alle Rechte vorbehalten.<br />

2<br />

Agilität<br />

als Erfolgsrezept<br />

Kürzere Time-to-Market, bessere Qualität, höhere Flexibilität und stärker motivierte Mitarbeitende<br />

– dies sind die Vorteile agiler <strong>Produktentwicklung</strong>smethoden. Kein Wunder, nutzen<br />

immer mehr Unternehmen <strong>Scrum</strong> oder ähnliche Modelle. Das Konzept der Agilität<br />

lässt sich allerdings nicht nur in der <strong>Produktentwicklung</strong> <strong>mit</strong> Gewinn anwenden. Auch agile<br />

Organisationen besitzen gewichtige Vorteile. Zudem können auch Produkte dem Grundgedanken<br />

der Agilität entsprechen, wenn sie nur so viel Komplexität aufweisen wie unbedingt<br />

notwendig und daher einfach gewartet und weiterentwickelt werden können. In diesem<br />

ERNI Experience zeigen wir Ihnen anhand konkreter Praxisbeispiele, wie Sie Prozesse, Produkte<br />

und Ihre Organisation agil gestalten können und wo der konkrete Nutzen liegt.<br />

Der erste Artikel widmet sich dem Thema <strong>Scrum</strong>. Sie erfahren, wie sich die agile Methodik in<br />

Organisationen <strong>mit</strong> ganz unterschiedlichen Voraussetzungen zielgerichtet einführen lässt.<br />

Die beiden darauf folgenden Erfahrungsberichte geben Beispiele, wie <strong>Nearshoring</strong> die Agilität<br />

Ihrer Organisation steigert. Die geschilderten Erfahrungen beruhen auf der Praxis von<br />

ERNI als Begleiter von Outsourcing-Projekten, aber auch als <strong>Nearshoring</strong>-Partner. Bereits<br />

seit mehreren Jahren betreibt ERNI zu diesem Zweck einen Standort in der Slowakei.<br />

Abgeschlossen wird das Magazin <strong>mit</strong> einem Beitrag über Architekturreviews. Sie sind ein<br />

probates Mittel, um die Qualität von IT-Systemen bedarfsgerecht zu optimieren, ohne die<br />

Komplexität unnötig zu erhöhen. Da<strong>mit</strong> entsprechen sie ebenfalls dem Grundgedanken der<br />

Agilität.<br />

Ich wünsche Ihnen eine anregende Lektüre und freue mich auf Ihr Feedback.<br />

Herzlich<br />

Reto Tschudi


Inhalt<br />

<strong>Scrum</strong><br />

<strong>Nearshoring</strong><br />

Outtasking<br />

Architekturreview<br />

Schneller und besser durch Agilität 4<br />

<strong>Agile</strong> <strong>Produktentwicklung</strong> <strong>mit</strong> <strong>Scrum</strong><br />

Die rasante technologische Entwicklung, schnelle Änderungen bei den Kundenwünschen und<br />

wachsendes Qualitätsbewusstsein stellen die Softwareentwicklung vor neue Herausforderungen.<br />

Mit agiler Entwicklung lassen sie sich meistern. Bei der Einführung von <strong>Scrum</strong> hat sich ein behutsames<br />

Vorgehen bewährt, das <strong>mit</strong> einem Pilotprojekt beginnt.<br />

Mit <strong>Nearshoring</strong> den Aufschwung nutzen 8<br />

Outsourcing bringt Flexibilität und zusätzliches Know-how<br />

Der sich abzeichnende Aufschwung bietet Chancen für innovative Produkte. Für die Entwicklung<br />

neuer Geräte und neuer Software ist Outsourcing eine attraktive Option. Notwendig für das<br />

Gelingen der Auslagerung sind klar definierte Prozesse, eine intensive Kommunikation <strong>mit</strong> dem<br />

externen Team und eine klare Unterstützung durch das Management.<br />

Betrieb und Wartung reibungslos verlagern 12<br />

<strong>Nearshoring</strong> senkt Kosten und erlaubt Konzentration auf Kernkompetenzen<br />

Bei Wartung und Betrieb von IT-Applikationen ist Outsourcing attraktiv. Da<strong>mit</strong> lässt sich einer der<br />

grössten Kostenblöcke in der IT reduzieren. Gleichzeitig kann sich das eigene Personal wieder auf<br />

die wertschöpfenden kreativen Tätigkeiten konzentrieren. Mit der richtigen Vorbereitung verlaufen<br />

die Übergabe und der weitere Betrieb reibungslos.<br />

Wie viel Qualität braucht ein IT-System? 16<br />

Ein Architekturreview sorgt für Durchblick<br />

Ein IT-System muss die gestellten Anforderungen erfüllen. Alles, was darüber hinausgeht, erhöht<br />

neben dem Aufwand auch die Komplexität, ohne einen zusätzlichen Mehrwert zu bieten. Während<br />

dies beim Funktionsumfang meist berücksichtigt wird, werden im Bereich der qualitativen<br />

Anforderungen wie Performance, Sicherheit oder Wartbarkeit – im Widerspruch zu einem agilen<br />

Vorgehen – häufig Dinge umgesetzt, die so gar nicht benötigt werden. Ein Architekturreview kann<br />

überflüssige, aber natürlich auch ungenügend berücksichtigte Anforderungen aufdecken.<br />

Alle Artikel online:<br />

www.erni.ch/experience<br />

Inhalt | ERNI Experience<br />

3


<strong>Scrum</strong> | Schneller und besser durch Agilität<br />

Schneller und besser durch Agilität<br />

<strong>Agile</strong> <strong>Produktentwicklung</strong> <strong>mit</strong> <strong>Scrum</strong><br />

Die rasante technologische Entwicklung, schnelle Änderungen bei den Kundenwünschen und wachsendes Qualitätsbewusstsein<br />

stellen die Softwareentwicklung vor neue Herausforderungen. Mit einer agilen Vorgehensweise wie <strong>Scrum</strong> lassen sich diese meistern.<br />

Bei der Einführung von <strong>Scrum</strong> hat sich ein behutsames Vorgehen bewährt, das <strong>mit</strong> einem Pilotprojekt beginnt. Von Roland Oehen Kanzow<br />

<strong>Agile</strong> <strong>Produktentwicklung</strong>smethoden sind<br />

dabei, sich durchzusetzen. Eine dieser Methoden<br />

ist <strong>Scrum</strong>. Auf <strong>Scrum</strong> setzen heute<br />

viele Grosskonzerne aus der Industrie und<br />

dem Dienstleistungssektor. Das Vorgehensmodell<br />

bietet einen Prozessrahmen für<br />

agile <strong>Produktentwicklung</strong>en, in dem sich<br />

die Flexibilität, das Tempo und die Qualität<br />

von Entwicklungsprojekten verbessern<br />

sollen. Der Unterschied von <strong>Scrum</strong> zu traditionellen<br />

Vorgehensweisen, wie sie etwa<br />

vom Wasserfall-Modell oder vom V-Modell<br />

beschrieben werden, ist tiefgreifend. Im<br />

Grunde geht es darum, eine Praxis, die nach<br />

dem Motto «command and control» funktioniert,<br />

durch selbstbestimmtes Arbeiten zu<br />

ersetzen.<br />

<strong>Scrum</strong> setzt grundsätzlich auf einen<br />

anderen Prozess und auf andere Rollen<br />

als traditionelle Vorgehensmodelle.<br />

Ein wichtiges Element von <strong>Scrum</strong><br />

ist der sogenannte Sprint (siehe Abb. 1).<br />

Da<strong>mit</strong> werden zwei- bis vierwöchige Iterationen<br />

bezeichnet, an deren Ende ein funk-<br />

4<br />

tionsfähiges Produktinkrement steht (siehe<br />

Abb. 2). Ein Sprint beginnt <strong>mit</strong> der Auswahl<br />

von Aufgaben durch das Entwicklungsteam<br />

im Rahmen einer Planungssitzung. Während<br />

der Entwicklung arbeitet das Team die<br />

Aufgaben selbstorganisiert ab. Ein tägliches<br />

Kurzmeet ing, das «Daily <strong>Scrum</strong> Meeting»,<br />

dient der Koordination und dem Wissenstransfer<br />

im Team. Jeden Tag stellen sich<br />

die Mitglieder ihre Arbeitsergebnisse, ihre<br />

Aufgaben und ihre Herausforderungen gegenseitig<br />

vor (siehe Abb. 3). Da am Ende ein<br />

lauffähiges Inkrement stehen soll, wird innerhalb<br />

des Sprints auch getestet. Die Phase<br />

endet <strong>mit</strong> einem Review und einer Retrospektive<br />

(siehe Abb. 4). In Letzterer wird der<br />

Sprint reflektiert und nach Verbesserungsmöglichkeiten<br />

gesucht. <strong>Scrum</strong> ist da<strong>mit</strong><br />

auch durch einen kontinuierlichen Verbesserungsprozess<br />

gekennzeichnet.<br />

Neben den Team<strong>mit</strong>gliedern existieren<br />

zwei weitere Rollen: der Product Owner<br />

und der <strong>Scrum</strong>Master. Der Product Owner<br />

ist für die Strategie des Entwicklungspro-<br />

jekts zuständig. Zu seiner Arbeit gehören<br />

die Releaseplanung sowie die Formulierung<br />

und die Priorisierung von Aufgaben,<br />

aus denen sich das Team je Sprint einige<br />

zur Bearbeitung auswählt. Die Basis dafür<br />

bilden sein Domänenwissen und seine<br />

Kenntnisse über die Wünsche der Stakeholder.<br />

Der Product Owner kommuniziert<br />

direkt <strong>mit</strong> den Stakeholdern, aber auch <strong>mit</strong><br />

dem Team. Er nimmt an den Planungs- und<br />

Reviewmeetings teil. Gegenüber dem Team<br />

repräsentiert er da<strong>mit</strong> die Stakeholder.<br />

Der <strong>Scrum</strong>Master bearbeitet die taktische<br />

Ebene eines Projekts. Er schafft ein<br />

optimales Umfeld für das Team. Konkret<br />

macht er Vorschläge, wie sich bestimmte<br />

Herausforderungen meistern lassen. Er<br />

motiviert, unterstützt die Kommunikation<br />

im Team und greift bei Konflikten ein.<br />

Gleichzeitig schützt er das Team vor regelwidrigen<br />

Interventionen von aussen und<br />

sorgt dafür, dass es in Ruhe arbeiten kann.<br />

Das Team selbst besteht bei <strong>Scrum</strong> aus


Der <strong>Scrum</strong>Master bearbeitet die taktische Ebene eines Projekts. Er schafft ein optimales<br />

Umfeld für das Team und achtet darauf, dass die Regeln von <strong>Scrum</strong> eingehalten<br />

werden.<br />

Sprint<br />

• Iteration <strong>mit</strong> fixer<br />

Länge<br />

• Geschützt<br />

• Pull statt Push<br />

• Inspect – Adapt<br />

Product<br />

Vision<br />

Product<br />

Backlog<br />

Meetings<br />

• Sprint Planning<br />

• Sprint Review<br />

• Retrospective<br />

• Daily <strong>Scrum</strong><br />

Selected Product<br />

Backlog<br />

fünf bis neun Mitgliedern. In der Gruppe<br />

müssen sämtliche Kompetenzen zur<br />

Bearbeitung der ausgewählten Aufgaben<br />

vorhanden sein, vom Entwerfen der Architektur<br />

über das Entwickeln bis zum<br />

Testen. Wie das Team diese Unteraufgaben<br />

verteilt, bleibt ihm überlassen. In jedem<br />

Fall ist das ganze Team verantwortlich<br />

für die Erledigung der ausgewählten<br />

Arbeiten (siehe Abb. 5).<br />

Wie gross der Wandel ist, den <strong>Scrum</strong> erfordert,<br />

hängt von der Kultur und der Praxis<br />

der Zusammenarbeit im betroffenen Unternehmen<br />

ab. Deswegen muss der entsprechende<br />

Prozess auf das jeweilige Un-<br />

Dokumente<br />

• Product Backlog<br />

• Sprint Backlog<br />

• Burn Down Chart<br />

• Release Plan<br />

Sprint<br />

Backlog<br />

Daily <strong>Scrum</strong><br />

Meeting<br />

Rollen<br />

• Product Owner<br />

• <strong>Scrum</strong>Master<br />

• Team<br />

Product<br />

Increment<br />

ternehmen angepasst werden. Am grössten<br />

ist der Schritt für Organisationen, deren<br />

Kultur zu Vorgehensmodellen passt, die<br />

auf «command and control» setzen. Für die<br />

Mitarbeitenden solcher Firmen ist sowohl<br />

der Wissenstransfer im Team als auch die<br />

Übernahme der Verantwortung durch die<br />

Entwickler neu. Der Wandel löst deswegen<br />

zu Beginn durchaus auch Vorbehalte aus.<br />

Unterschätzt man den Wandlungsprozess<br />

nicht und widmet man ihm genügend<br />

Aufmerksamkeit, lässt sich <strong>Scrum</strong> aber<br />

auch gewinnbringend in hierarchisch<br />

strukturierten Unternehmen einführen.<br />

Bewährt hat sich beim Umbau solcher<br />

Schneller und besser durch Agilität | <strong>Scrum</strong><br />

Abbildung 1:<br />

Elemente von <strong>Scrum</strong><br />

Abbildung 2:<br />

Von der Vision zum<br />

Product Increment<br />

Organisationen neben einer engen Begleitung<br />

der betroffenen Mitarbeitenden vor<br />

allem die Pilotierung, das heisst eine erste<br />

Einführung von <strong>Scrum</strong> in einer Keimzelle,<br />

die dann zum Ausgangspunkt des Wandels<br />

im gesamten Unternehmen wird.<br />

Beispiel 1<br />

Grundlegender Wandel<br />

bei einem IT-Unternehmen<br />

Ein IT-Unternehmen betreibt eine Internetplattform.<br />

Es steht unter grossem<br />

Marktdruck, da die Kunden <strong>mit</strong> einem<br />

Mausklick zur Konkurrenz wechseln können.<br />

Die Firma entwickelt neue Releases<br />

nach einem Phasenmodell. Dem Projekt-<br />

5


<strong>Scrum</strong> | Schneller und besser durch Agilität<br />

leiter kommt dabei die zentrale Bedeutung<br />

zu. Er plant die Projekte, definiert<br />

Arbeitspakete und legt die Dauer für ihre<br />

Erledigung fest.<br />

Um die Time-to-Market zu beschleunigen,<br />

beschliesst das Unternehmen, <strong>Scrum</strong><br />

einzuführen. Dieses Ziel wurde erreicht.<br />

Die Umstellung bewirkte, dass das Unternehmen<br />

schneller auf die aktuelle Marktsituation<br />

reagieren kann. Neuartige Funktionalitäten<br />

vergleichbarer Plattformen<br />

können wesentlich schneller auch für das<br />

eigene Angebot realisiert werden.<br />

Der Wandlungsprozess hat rund ein Jahr in<br />

Anspruch genommen. In dieser Zeit wurden<br />

die Mitarbeitenden zum Teil intensiv<br />

gecoacht und betreut. So gab es etwa Vieraugengespräche,<br />

in denen das neue Modell<br />

und die Gründe der Einführung vorgestellt<br />

wurden. Darüber hinaus wurde die Teambildung<br />

unterstützt, beispielsweise <strong>mit</strong><br />

einem Wochenende in einem Sporthotel.<br />

Nicht zuletzt konnten die Mitarbeitenden<br />

den Wandlungsprozess <strong>mit</strong>gestalten. Die<br />

<strong>Scrum</strong>-Teams wählten sich zum Beispiel<br />

ihre Mitglieder selbst aus.<br />

Da der Einführungsprozess von <strong>Scrum</strong><br />

eine Organisation grundlegend verändern<br />

kann, sind die Anforderungen an das<br />

Projektteam entsprechend hoch. Es muss<br />

<strong>Scrum</strong> beherrschen und sollte zudem über<br />

Erfahrung <strong>mit</strong> Veränderungsprozessen verfügen.<br />

Denn der Prozess muss nicht nur<br />

massgeschneidert werden, die während der<br />

6<br />

Abbildung 3:<br />

Daily <strong>Scrum</strong> Meeting<br />

Wie gross der Wandel ist, den <strong>Scrum</strong> erfordert, hängt von der Kultur und der Praxis<br />

der Zusammenarbeit im betroffenen Unternehmen ab. Deswegen muss der<br />

entsprechende Prozess auf das jeweilige Unternehmen angepasst werden.<br />

Fragen<br />

• Daily <strong>Scrum</strong> Meeting,<br />

15 Minuten jeden<br />

Tag zur gleichen Zeit<br />

am gleichen Ort<br />

• Es werden drei<br />

Fragen beantwortet,<br />

reihum durch die<br />

Team<strong>mit</strong>glieder<br />

Einführung immer wieder auftauchenden<br />

Herausforderungen lassen sich <strong>mit</strong> Erfahrung<br />

auch besser und schneller meistern.<br />

Da <strong>Scrum</strong> neue Rollen in eine Organisation<br />

einführt, ist durch die Veränderung auch<br />

das Selbstverständnis der Mitarbeitenden<br />

in Bezug auf ihre Aufgabe und ihre Position<br />

betroffen. Deswegen müssen die Mitglieder<br />

des Einführungsteams nicht zuletzt<br />

auch über ausgeprägte Soft Skills verfügen.<br />

Die besondere Bedeutung des Veränderungsprozesses<br />

für die betroffenen Mitarbeiter<br />

legt den Beizug externer Experten für<br />

das Einführungsteam nahe. Diese können<br />

auftauchende Konflikte wesentlich besser<br />

konstruktiv lösen als Personen <strong>mit</strong> einer<br />

langen Geschichte in der Organisation.<br />

Nicht in jedem Fall sind allerdings die weichen<br />

Faktoren die entscheidende Herausforderung<br />

bei der Einführung von <strong>Scrum</strong>.<br />

Denn es gibt auch Entwickler, welche die<br />

Freiheit, die ihnen das Modell bringt, zu<br />

schätzen wissen. Dennoch sind auch in<br />

solchen Unternehmen vielfach Anpassungen<br />

bei der Einführung notwendig.<br />

Beispiel 2<br />

<strong>Scrum</strong> bei verteilten<br />

Entwicklungsstandorten<br />

Ein IT-Unternehmen entwickelt eine<br />

Standardsoftware in einem Markt <strong>mit</strong> intensivem<br />

Wettbewerb. In diesem Markt<br />

positioniert sich das Unternehmen als<br />

Technologieführer. Um der Herausforderung<br />

des schnellen Innovationsrhythmus<br />

Gibt es dabei irgendwelche Hindernisse?<br />

Was soll bis zum nächsten Treffen erreicht werden?<br />

Was wurde seit dem letzten Treffen gemacht?<br />

• Dient der Abstimmung<br />

des Teams, es<br />

werden dabei keine<br />

Probleme gelöst<br />

• Es darf zusätzlich<br />

zum Team und zum<br />

<strong>Scrum</strong>Master jeder<br />

Interessierte daran<br />

(passiv) teilnehmen<br />

besser gewachsen zu sein, führt die Firma<br />

schrittweise <strong>Scrum</strong> ein.<br />

Das Team war von Beginn an sehr an der<br />

Materie interessiert. Unterstützt wurde<br />

es durch Schulung, die Klärung der neuen<br />

Rollen sowie bei der ersten Erstellung<br />

spezifischer Dokumente. Der Wandel ging<br />

in diesem Fall schnell vor sich. Bereits bei<br />

der ersten Einführung eines Sprints lieferte<br />

das Team beachtliche Ergebnisse. Das neue<br />

Modell steigerte zudem schnell die Aufmerksamkeit,<br />

welche die Mitarbeitenden<br />

dem Testen widmeten. <strong>Scrum</strong> trug so zur<br />

Qualitätssteigerung bei.<br />

Die reibungslose Einführung ist umso bemerkenswerter,<br />

als das Unternehmen an<br />

drei verschiedenen Standorten entwickelt,<br />

während <strong>Scrum</strong> vorsieht, dass das Team in<br />

einem Raum arbeitet, um die Kommunikation<br />

möglichst zu vereinfachen. Trotz<br />

der Distanz wurde aber an den wesentlichen<br />

Punkten des Prozesses festgehalten.<br />

Das Daily <strong>Scrum</strong> Meeting findet auch in<br />

diesem Unternehmen statt, allerdings in<br />

Form einer Telefonkonferenz. Die notwendigen<br />

Sitzungen am Anfang und am Ende<br />

jedes Sprints werden dann als gemeinsame<br />

Meetings durchgeführt. Alle drei Wochen<br />

kommt das gesamte Team so für zwei Tage<br />

an einem Ort zusammen.<br />

Wie die beiden Beispiele zeigen, lässt sich<br />

<strong>Scrum</strong> in sehr verschiedenen Organisationen<br />

nutzbringend einführen. Dennoch ist<br />

das Modell nicht in jedem Fall die beste


Da <strong>Scrum</strong> neue Rollen in eine Organisation einführt, ist durch die Veränderung auch das Selbstverständnis<br />

der Mitarbeitenden in Bezug auf ihre Aufgabe und ihre Position betroffen. Deswegen müssen die Mitglieder<br />

des Einführungsteams nicht zuletzt auch über ausgeprägte Soft Skills verfügen.<br />

35<br />

30<br />

25<br />

20<br />

15<br />

10<br />

5<br />

0<br />

Product<br />

Vision<br />

Product<br />

Backlog<br />

Sprint<br />

Planning 1<br />

01. 01. 2010<br />

02. 01. 2010<br />

03. 01. 2010<br />

04. 01. 2010<br />

05. 01. 2010<br />

06. 01. 2010<br />

07. 01. 2010<br />

08. 01. 2010<br />

09. 01. 2010<br />

10. 01. 2010<br />

11. 01. 2010<br />

12. 01. 2010<br />

13. 01. 2010<br />

14. 01. 2010<br />

15. 01. 2010<br />

16. 01. 2010<br />

17. 01. 2010<br />

18. 01. 2010<br />

19. 01. 2010<br />

20. 01. 2010<br />

21. 01. 2010<br />

22. 01. 2010<br />

23. 01. 2010<br />

24. 01. 2010<br />

25. 01. 2010<br />

26. 01. 2010<br />

27. 01. 2010<br />

28. 01. 2010<br />

29. 01. 2010<br />

30. 01. 2010<br />

Wahl. Vor allem bei der Entwicklung von<br />

Produkten, die einer strengen Regulierung<br />

unterworfen sind, ist das unbürokratische<br />

Vorgehen, das Dokumenten keinen zentralen<br />

Platz einräumt, nicht optimal. Auf<br />

der anderen Seite existieren auch Märkte,<br />

in denen <strong>Scrum</strong> seine Vorteile voll ausspielen<br />

kann. Dies ist vor allem dann möglich,<br />

wenn sich die Technologie im Markt schnell<br />

weiterentwickelt oder neue Geschäftsfelder<br />

beschritten werden. In einem solchen Umfeld<br />

ist die Flexibilität der Methode und die<br />

<strong>mit</strong> ihr möglichen Tempo- und Qualitätssteigerungen<br />

besonders wertvoll.<br />

Sprint<br />

Backlog<br />

Sprint<br />

Planning 2<br />

Selected Product<br />

Backlog<br />

Daily <strong>Scrum</strong><br />

Meeting<br />

Review<br />

Product Increment<br />

Retrospective<br />

Ideal<br />

Tatsächlich<br />

Roland Oehen Kanzow<br />

Kontakt: roland.oehenkanzow@erni-deutschland.de<br />

Senior Consultant in der Firma ERNI (Deutschland) GmbH.<br />

Beratertätigkeit: <strong>Agile</strong>s Projektmanagement <strong>mit</strong> <strong>Scrum</strong>,<br />

Projektleitung, Requirements Engineering<br />

Schneller und besser durch Agilität | <strong>Scrum</strong><br />

Abbildung 4:<br />

Der <strong>Scrum</strong> Fluss<br />

Abbildung 5:<br />

Sprint Burndown Diagramm<br />

für die Gegenüberstellung<br />

der geplanten und der tatsächlichen<br />

Geschwindigkeit<br />

des Teams<br />

7


<strong>Nearshoring</strong> | Mit <strong>Nearshoring</strong> den Aufschwung nutzen<br />

Mit <strong>Nearshoring</strong> den Aufschwung nutzen<br />

Outsourcing bringt Flexibilität und zusätzliches Know-how<br />

Der sich abzeichnende Aufschwung bietet Chancen für innovative Produkte. Für die Entwicklung neuer Geräte und neuer Soft-<br />

ware ist Outsourcing eine attraktive Option. Notwendig für das Gelingen der Auslagerung sind klar definierte Prozesse, eine inten-<br />

sive Kommunikation <strong>mit</strong> dem externen Team und eine klare Unterstützung durch das Management. Von Philipp Rey und Christoph Krauer<br />

8


Das Outsourcing von Entwicklungsaufgaben<br />

ist für westeuropäische Unternehmen<br />

beileibe nichts Neues. Geringere<br />

Kosten und Agilität sind die Gründe für<br />

eine Auslagerung. Doch die anziehende<br />

Konjunktur macht die Option noch einmal<br />

interessanter. Denn dadurch steigt<br />

nicht nur das Interesse an neuen Produkten,<br />

auch der Mangel an qualifizierten IT-<br />

Fachleuten in westeuropäischen Ländern<br />

verschärft sich bereits wieder.<br />

Doch so naheliegend die Auslagerung von<br />

Entwicklungsaufgaben momentan ist und<br />

so alltäglich sie bereits zu sein scheint: Für<br />

die Unternehmen stellt die Zusammenarbeit<br />

<strong>mit</strong> externen Partnern in der Regel<br />

einen grossen Schritt dar. Dies vor allem,<br />

weil das eigene IT-Personal plötzlich Wissen<br />

<strong>mit</strong> externen Dienstleistern teilen<br />

muss, die sogar noch aus einem anderen<br />

Land kommen. Dieses Wissen ist oft über<br />

Jahrzehnte gewachsen und häufig durch<br />

gezielte Geheimhaltung vor Nachahmern<br />

geschützt worden.<br />

Wegen dieses Kulturwandels dürfen Auslagerungsprojekte<br />

nicht unterschätzt<br />

werden. Sie sollten immer auch eine<br />

Management-Angelegenheit sein. Insbesondere<br />

muss entschieden werden, was<br />

in Übereinstimmung <strong>mit</strong> der Strategie des<br />

Unternehmens ausgelagert werden kann<br />

und welches Know-how auf jeden Fall im<br />

Unternehmen bleiben muss.<br />

Darüber hinaus lässt sich der Einstieg ins<br />

Outsourcing durch <strong>Nearshoring</strong> erleichtern.<br />

Dies zum einen, weil das Rechtssystem<br />

in Ländern wie Polen, Tschechien oder<br />

der Slowakei dem EU-Standard entspricht.<br />

Das geistige Eigentum ist von daher bes-<br />

Mit <strong>Nearshoring</strong> den Aufschwung nutzen | <strong>Nearshoring</strong><br />

ser geschützt als in den meisten Ländern<br />

Asiens. Hinzu kommt die ähnliche Kultur.<br />

Sie bewahrt nicht nur vor bösen Überraschungen,<br />

sondern erleichtert auch den<br />

Aufbau der Kooperation und die Koordination<br />

markant. Nicht zuletzt erleichtert aber<br />

auch die geografische Nähe die Kooperation.<br />

Da das externe Team nur wenige Flugstunden<br />

entfernt arbeitet, kann man in der<br />

Startphase oder auch bei Krisen schnell<br />

Treffen anberaumen, um Missverständnisse<br />

zu vermeiden oder zu beseitigen.<br />

Beispiel 1<br />

Entwicklung einer Plattform-Software<br />

Ein Industrieunternehmen entwickelt<br />

eine neue Generation einer Gerätefamilie<br />

im <strong>mit</strong>tleren Preissegment. Der Innovationszyklus<br />

für die Produkte liegt bei mehreren<br />

Jahren, so dass die Entwicklungskapazitäten<br />

nur zeitlich begrenzt gebraucht<br />

9


<strong>Nearshoring</strong> | Mit <strong>Nearshoring</strong> den Aufschwung nutzen<br />

werden. Wegen der höheren Flexibilität,<br />

aber auch aufgrund der geringeren Kosten,<br />

entscheidet das Management, Teile der<br />

Entwicklung in ein osteuropäisches Land<br />

outzusourcen. Das kleine externe Team<br />

wird für die Entwicklung der neuen Plattform-Software<br />

herangezogen. Die zentrale<br />

Einheit des Gerätes und das Betriebssystem<br />

werden dagegen bewusst nicht outgesourct.<br />

So ist sichergestellt, dass das Knowhow<br />

im Bereich der Kernfunktionen der<br />

Produkte inhouse bleibt. Das Projekt wurde<br />

unterdessen erfolgreich abgeschlossen.<br />

Zwei Faktoren waren für den Erfolg entscheidend:<br />

die intensive Kommunikation<br />

und die Definition des Prozesses.<br />

Um die externen Entwickler <strong>mit</strong> dem notwendigen<br />

Domänenwissen auszustatten,<br />

holte das Unternehmen das gesamte Team<br />

für eine Woche an den Firmensitz in die<br />

Schweiz. Während des gesamten Projektverlaufs<br />

wurde eine intensive Kommunikation<br />

aufrechterhalten. So gab es täglich<br />

Telefonate zwischen dem Hauptsitz und<br />

dem Team in Osteuropa.<br />

Neben der intensiven Kommunikation<br />

war die saubere Definition der Kooperationsprozesse<br />

von grosser Bedeutung. Um<br />

eine reibungslose Kooperation zu gewährleisten,<br />

wurden die Prozesse für die Zusammenarbeit<br />

beschrieben sowie auf Deutsch<br />

10<br />

Die Requirements bilden bei agiler Arbeitsteilung die wichtigste Schnittstelle zwischen<br />

dem Auftraggeber und dem externen Team. Ihre Qualität ist deswegen bei<br />

<strong>Nearshoring</strong> Projekten matchentscheidend.<br />

und Englisch dokumentiert. Zudem wurden<br />

Qualitätsstandards definiert. Sie umfassten<br />

auch die Festlegung von vorgeschriebenen<br />

Tests samt der notwendigen<br />

Protokolle und der Fehlerdokumentation.<br />

Wie Beispiel 1 zeigt, sollten externe Entwickler<br />

nur für einige Schritte des Projekts<br />

zugezogen werden. Der Auftraggeber<br />

selbst erarbeitet die Requirements und<br />

legt die Architektur fest. Der Outsourcing-<br />

Partner übernimmt die Arbeit vom Design<br />

über die Implementation bis zu den<br />

Unit-Tests. System- und Akzeptanztests<br />

werden jedoch beim Auftraggeber selbst<br />

durchgeführt. Dieser stellt dann auch den<br />

Projektleiter, den Architekten, den Requirements-Manager<br />

und den Testmanager.<br />

Die Requirements bilden bei dieser Arbeitsteilung<br />

die wichtigste Schnittstelle zwischen<br />

dem Auftraggeber und dem externen<br />

Team. Ihre Qualität ist deswegen matchentscheidend.<br />

Unternehmen, die zum<br />

ersten Mal auslagern, müssen auf diesen<br />

Punkt entsprechend viel Gewicht legen.<br />

Gerade auch sehr erfolgreiche Firmen aus<br />

der Industrie verfügen oft über eingespielte<br />

Teams und ein informelles Vorgehen, das<br />

bei Inhouse-Entwicklungen zwar sehr effizient<br />

sein kann, beim Outsourcing aber<br />

schnell an Grenzen stösst. Denn das grosse<br />

implizite Wissen, das für die internen Mit-<br />

arbeitenden selbstverständlich ist, kennen<br />

die externen Entwickler nicht. Um diese Herausforderung<br />

zu meistern, kann man zum<br />

Beispiel für jede Iteration einen Require-<br />

ments-Workshop veranstalten, während<br />

dem die externen Entwickler ihr Verständnis<br />

der dokumentierten Anforderungen<br />

vorstellen. So können Missverständnisse<br />

erkannt und sofort ausgeräumt werden.<br />

Gleichzeitig stärken die Workshops auch<br />

das Vertrauen zwischen den Teams.<br />

Eine höhere Prozessreife erleichtert die<br />

Definition der Schnittstellen und der Kooperationsprozesse.<br />

Doch in jedem Fall<br />

existiert implizites Wissen, welches bei<br />

Beginn der Kooperation explizit gemacht<br />

werden muss. Kommunikation spielt<br />

deswegen immer eine wichtige Rolle, wie<br />

auch das folgende Beispiel zeigt.<br />

Beispiel 2<br />

Entwicklung<br />

eines Informationssystems<br />

Ein IT-Unternehmen entscheidet sich, ein<br />

Informationssystem für das Management<br />

zu entwickeln. Ziel ist die Entlastung der<br />

Führungspersonen von administrativem<br />

Aufwand. Man entscheidet sich aus Kostengründen<br />

für <strong>Nearshoring</strong>.<br />

Die Prozessreife der Firma ist hoch. Der Entwicklungsprozess<br />

ist detailliert beschrieben,


und sämtliche Dokumente existieren in<br />

englischer Sprache. Dennoch wird grosser<br />

Wert auf die Schulung der externen Mitarbeitenden<br />

gelegt. So besuchen diese ein<br />

Training zum Entwicklungsprozess, den das<br />

Unternehmen selbst aufgebaut hat. Zudem<br />

existiert in diesem Fall wie auch beim ersten<br />

Beispiel implizites Wissen. Für die Mitarbeitenden<br />

der Firma ist selbstverständlich, wie<br />

welche Dokumente ausgefüllt werden sollen.<br />

Werden entsprechende Aufgaben an<br />

andere Teams ausgelagert, muss man dieses<br />

Wissen ebenfalls explizit machen, um nicht<br />

im Verlauf des Projekts immer wieder Überraschungen<br />

zu erleben.<br />

Die Zusammenarbeit zwischen internen<br />

und externen Mitarbeitenden war deshalb<br />

in der Startphase entsprechend eng.<br />

Das ERNI Team in der Slowakei<br />

Die Texte zum Thema <strong>Nearshoring</strong><br />

in diesem ERNI Experience basieren<br />

auf den Erfahrungen von ERNI als<br />

Begleiter von <strong>Nearshoring</strong>-Projekten,<br />

aber auch als Outsourcing-Partner.<br />

Bereits seit einigen Jahren betreibt<br />

ERNI einen Standort in Bratislava,<br />

der Hauptstadt der Slowakei.<br />

In Bratislava arbeiten hochqualifizierte<br />

IT-Spezialisten – allesamt <strong>mit</strong><br />

Hochschulabschluss – vom Junior-<br />

Entwickler bis hin zu sehr erfahrenen<br />

und versierten Seniors. Sie befassen<br />

sich sowohl <strong>mit</strong> der Entwicklung<br />

neuer Produkte als auch <strong>mit</strong> derjenigen<br />

von Softwaresystemen. Hinzu<br />

kommt der Unterhalt von IT-Applikationen.<br />

Die Projekte werden jeweils<br />

in enger Zusammenarbeit <strong>mit</strong><br />

anderen ERNI Standorten oder direkt<br />

beim Kunden tätigen ERNI Mitarbeitenden<br />

abgewickelt. Die bewährten<br />

Kompetenzen des <strong>Nearshoring</strong>-Centers<br />

umfassen:<br />

Gemeinsam legte man Prozesse und Qualitätsstandards<br />

fest. Insbesondere wurden<br />

auch die vorgeschriebenen Tests im Detail<br />

definiert. Bei der eigentlichen Entwicklung<br />

der Informationssoftware waren die<br />

Verantwortlichkeiten klar aufgeteilt. Die<br />

Spezifikationen wurden in der Schweiz<br />

entwickelt. Für das Design, die Implementation<br />

und die Tests bis zu den Systemtests<br />

war das externe Team verantwortlich.<br />

Beachtet man die Bedeutung der Definition<br />

von Prozessen und Schnittstellen<br />

sowie der Kommunikation, geht<br />

die Einarbeitung der osteuropäischen<br />

IT-Spezialisten meist schnell vor sich.<br />

Denn sie verfügen meist über jahrelange<br />

Erfahrung aus verschiedensten Projekten.<br />

Sie arbeiten nicht nur zuverlässig an<br />

• Architektur, Design, Implementation<br />

und Testen von Software<br />

• Überwachung, Wartung und Deployment<br />

von operativen Applikationen<br />

• Bereitstellung von IT-Services<br />

• Project Management der Projekte<br />

und Aufträge.<br />

Erfahrungen bestehen darüber hinaus<br />

in der flexiblen Reaktion auf Kapazitätsschwankungen,<br />

unter anderem<br />

durch die Möglichkeit, rasch am Arbeitsmarkt<br />

und über das Netzwerk qualifizierte<br />

Ressourcen zu rekrutieren. Zudem<br />

ist der zügige Start neuer Projekte<br />

für das Team Alltag. Dies nicht zuletzt<br />

dank moderner Infrastruktur und etablierter,<br />

agiler Prozesse.<br />

Mit <strong>Nearshoring</strong> den Aufschwung nutzen | <strong>Nearshoring</strong><br />

ihren Aufgaben, sondern haben oft auch<br />

noch Ideen zur Optimierung einer Neuentwicklung.<br />

Wer dank intensiver Kommunikation<br />

eine stabile Vertrauensbasis<br />

zwischen diesen externen Spezialisten<br />

und dem eigenen Team geschaffen hat,<br />

wird auch diese Ideen nutzen können.<br />

Das <strong>Nearshoring</strong> wird da<strong>mit</strong> noch einmal<br />

attraktiver.<br />

Philipp Rey<br />

Kontakt: philipp.rey@erni.ch<br />

Business Unit Leader in der Firma ERNI Consulting AG.<br />

Beratertätigkeit: Projektmanagement und SW-Architektur.<br />

Christoph Krauer<br />

Kontakt: christoph.krauer@erni.ch<br />

Head Shared Service Center Bratislava & Business Unit Leader<br />

in der Firma ERNI Management Services AG.<br />

Beratertätigkeit: <strong>Nearshoring</strong>, Projektmanagement<br />

und Business Integration.<br />

11


Outtasking | Betrieb und Wartung reibungslos verlagern<br />

Betrieb und Wartung reibungslos verlagern<br />

<strong>Nearshoring</strong> senkt Kosten und erlaubt Konzentration auf Kernkompetenzen<br />

Bei Wartung und Betrieb von IT-Applikationen ist Outsourcing attraktiv. Da<strong>mit</strong> lässt sich einer der grössten Kostenblöcke in<br />

der IT reduzieren. Gleichzeitig kann sich das eigene Personal wieder auf die wertschöpfenden kreativen Tätigkeiten konzentrieren.<br />

Mit der richtigen Vorbereitung verlaufen die Übergabe und der weitere Betrieb reibungslos. Von Martin Sand und Heinz Schlatter<br />

12<br />

Agil zu sein, bedeutet, über Prozesse, Produkte<br />

und eine Organisation zu verfügen,<br />

die durch keine überflüssigen Elemente<br />

gebremst werden und die sich schnell an<br />

wechselnde Bedürfnisse und Lasten anpassen<br />

können. Ein kostenoptimaler Betrieb<br />

und eine entsprechende Wartung scheinen<br />

sich nur schwer in dieses Konzept einfügen<br />

zu lassen. Betrieb und Wartung stellen eine<br />

Grundlast dar, die nicht stark schwankt<br />

und schlicht getragen werden muss.<br />

Dennoch: In der konkreten Situation vieler<br />

IT-Organisationen kann die Auslagerung<br />

die Agilität eines Unternehmens verbessern.<br />

Dann nämlich, wenn die Entwickler<br />

durch Routinearbeiten so sehr ausgelastet<br />

sind, dass sich ihre Möglichkeiten, spontan<br />

auf Anfragen und Spitzenbelastungen<br />

zu reagieren, markant reduzieren.<br />

Beispiel 1<br />

<strong>Nearshoring</strong> von nächtlicher<br />

Überwachungstätigkeit<br />

Ein grosses Dienstleistungsunternehmen<br />

verfügt über eine komplexe IT-Landschaft.<br />

In der Nacht werden Batch-Jobs abgearbeitet.<br />

Die Abarbeitung und der erfolgreiche<br />

Abschluss der Batch-Jobs müssen<br />

permanent überwacht werden, da einige<br />

Jobs nur einmal pro Woche laufen. Tritt<br />

ein Problem auf, muss sichergestellt werden,<br />

dass die Jobs noch in der gleichen<br />

Nacht erledigt werden. Zudem müssen<br />

Fehler dokumentiert und weitergemeldet<br />

werden, so dass Massnahmen zu ihrer<br />

Behebung eingeleitet werden können.<br />

Die Überwachung wird von Entwicklern<br />

übernommen. Die Doppelbelastung durch<br />

die Routinearbeiten und die nächtliche<br />

Überwachung ist <strong>mit</strong> der Zeit gewachsen<br />

und relativ hoch.<br />

Um die Entwickler von den Routineaufgaben<br />

zu entlasten und gleichzeitig die<br />

Kosten zu reduzieren, beschloss das<br />

Management, die Überwachung per<br />

<strong>Nearshoring</strong> outzusourcen. Bei der Auslagerung<br />

in ein osteuropäisches EU-<br />

Mitgliedsland ging man planmässig vor.<br />

Gemeinsam <strong>mit</strong> einem kompetenten<br />

Outsourcing-Partner ergänzte man die<br />

Definitionen und die Dokumentationen<br />

der Überwachungsprozesse. Besonders<br />

viel Wert wurde zudem auf das Training<br />

der externen Mitarbeitenden gelegt.<br />

Nicht zuletzt musste man sicherstellen,<br />

dass ihr Wissen über das System und<br />

ihre Aufgaben immer <strong>mit</strong> den neuesten<br />

Erkenntnissen ergänzt wurden. Man hat<br />

die externen Mitarbeitenden deshalb in<br />

die interne Kommunikation der Organisation<br />

integriert.<br />

Zusammen <strong>mit</strong> einem Partner konnte<br />

das Unternehmen die Herausforderungen<br />

meistern. Innerhalb weniger Wochen wurde<br />

die Überwachung ausgelagert. Ein erster<br />

Review drei Monate nach dem operativen<br />

Start ergab ein positives Ergebnis. Veränderungsbedarf<br />

sah man nur bei einem Punkt:<br />

Die externen Mitarbeitenden sollten mehr<br />

Zahlen für das Reporting liefern.<br />

Ein erster Schlüssel zum Erfolg bei Outsourcing-Aktivitäten<br />

ist, wie im geschilderten<br />

Beispiel, das Training der neuen<br />

externen Mitarbeitenden. Sie sollten einige<br />

Zeit vor Ort beim auslagernden Unternehmen<br />

arbeiten. Auf diese Weise sind sie<br />

in den täglichen Ablauf eingebunden und<br />

lernen das System sowie ihre Aufgabe im<br />

täglichen Betrieb kennen. Da<strong>mit</strong> können<br />

sie sich optimal <strong>mit</strong> ihrer zukünftigen Arbeit<br />

vertraut machen.


Betrieb und Wartung reibungslos verlagern | Outtasking<br />

Agil zu sein, bedeutet, über Prozesse, Produkte und eine Organisation zu verfügen,<br />

die durch keine überflüssigen Elemente gebremst werden und die sich<br />

schnell an wechselnde Bedürfnisse und Lasten anpassen können.<br />

13


Outtasking | Betrieb und Wartung reibungslos verlagern<br />

Wegen der grossen Bedeutung der Kommunikation ist <strong>Nearshoring</strong> häufig der Auslagerung nach Fernost überlegen. Die<br />

kürzeren Distanzen erlauben häufigere Treffen. Zudem befindet man sich in der gleichen Zeitzone. Die ähnliche Kultur<br />

erleichtert die Kommunikation und den Vertrauensaufbau. Kommt hinzu, dass gerade in Osteuropa viele kompetente IT-<br />

Mitarbeitende sogar deutsch sprechen.<br />

14<br />

Das Training vor Ort ist zudem von Bedeutung,<br />

weil es Vertrauen aufbaut zwischen<br />

den externen Mitarbeitenden und<br />

der auslagernden IT-Organisation. Solche<br />

Massnahmen zur Teambildung erleichtern<br />

später die Zusammenarbeit zwischen den<br />

räumlich getrennten Personen markant.<br />

Wegen der grossen Bedeutung der Kommunikation<br />

ist <strong>Nearshoring</strong> häufig der<br />

Auslagerung nach Fernost überlegen.<br />

Die kürzeren Distanzen erlauben häufigere<br />

Treffen. Zudem befindet man sich<br />

in der gleichen Zeitzone. Die ähnliche<br />

Kultur erleichtert die Kommunikation<br />

und den Vertrauensaufbau. Kommt hinzu,<br />

dass gerade in Osteuropa viele kompetente<br />

IT-Mitarbeitende sogar deutsch<br />

sprechen. Trotz der räumlichen und kulturellen<br />

Nähe empfiehlt es sich, als Leiter<br />

für das Auslagerungsprojekt eine Person<br />

zu wählen, welche die IT-Branche sowohl<br />

in westlichen Ländern wie auch im ausgewählten<br />

osteuropäischen Staat kennt.<br />

Einschlägige Erfahrungen helfen vor allem<br />

bei der Auswahl des Teams, das letztendlich<br />

<strong>mit</strong> den Arbeiten betraut wird.<br />

Der dritte Schlüssel zum Erfolg neben der<br />

Kommunikation und der Auswahl des externen<br />

Teams ist die klare Definition der<br />

Prozesse, bei denen man kooperieren will.<br />

Für die Auslagerung von Wartung und<br />

Betrieb ist wie bei der Auslagerung von<br />

Entwicklungsarbeiten entscheidend, dass<br />

die Prozesse und die Schnittstellen sauber<br />

definiert und dokumentiert sind. Fast immer<br />

besteht in dieser Hinsicht am Anfang<br />

des Projekts Optimierungsbedarf. Deswegen<br />

beginnen Auslagerungsprojekte in<br />

der Regel <strong>mit</strong> einer Prozessverbesserung,<br />

wie das folgende Beispiel zeigt.<br />

Beispiel 2<br />

Auslagerung des Service Desks<br />

Ein schnell wachsendes Dienstleistungsunternehmen<br />

hat beschlossen, sein internes<br />

Service Desk auszulagern. Man entschied<br />

sich in diesem Fall für <strong>Nearshoring</strong>.<br />

Übernommen wurden die Aufgaben von<br />

einem kleinen Team in der Slowakei. Das<br />

Service Desk soll als zentrale Anlaufstelle<br />

zum einen vordefinierte Service Requests<br />

abarbeiten, etwa beim Eintritt neuer Mitarbeitender<br />

oder bei einem Wechsel von<br />

Rechnern. Zum anderen hat es die Aufgabe,<br />

auf bestimmte Vorfälle im IT-Netzwerk<br />

des Unternehmens zu reagieren, etwa auf<br />

den Ausfall eines Druckers.<br />

Die Firma musste in diesem Fall die Prozesse<br />

beschreiben und gut dokumentieren.<br />

Dabei wurde insbesondere darauf<br />

geachtet, dass wenig Overhead entsteht.<br />

Insbesondere galt es, den Aufwand der<br />

Kommunikation zwischen den betroffenen<br />

Mitarbeitenden und dem Service<br />

Desk zu begrenzen. Zudem ist es aufgrund<br />

des schnellen Wachstums des Unternehmens<br />

von Bedeutung, dass die Prozesse<br />

gut skalieren. In Service Level Agreements<br />

(SLA) wurden die Leistungen des Service<br />

Desks im Detail vereinbart.<br />

Dank der gezielten Definition der Prozesse<br />

ging die Auslagerung reibungslos vor<br />

sich. Das Service Desk ist seit längerer Zeit<br />

operativ und hat sich gut bewährt. Eher<br />

noch komplexer war die Ausgangssituation<br />

in Beispiel 1. Viel Wissen über die<br />

komplexe IT-Landschaft steckte in den<br />

Köpfen der Mitarbeitenden. Man musste<br />

die Dokumentation ergänzen und darauf<br />

aufbauend Prozesse für die externen Mitarbeitenden<br />

definieren. Bei einer solchen<br />

Prozessverbesserung ist es wichtig, dass<br />

man pragmatisch vorgeht und nur so weit<br />

optimiert, wie es für das Ziel der Auslagerung<br />

notwendig ist. In Auslagerungsprojekten<br />

sind deswegen Know-how und Erfahrung<br />

in Prozessverbesserungen gefragt.<br />

Momentan ist der richtige Zeitpunkt für Auslagerungen.<br />

Wer jetzt Routinearbeiten an<br />

günstige Drittanbieter vergibt, kann nicht<br />

nur die Betriebs- und Wartungskosten seiner<br />

IT reduzieren. Er setzt auch Mittel und interne<br />

Ressourcen frei, die für die Entwicklung<br />

neuer Produkte oder Angebote eingesetzt<br />

werden können. Mit dieser Strategie lässt<br />

sich der Schwung der Konjunkturerholung<br />

voll für die eigene Organisation nutzen.


Momentan ist der richtige Zeitpunkt für Auslagerungen. Wer jetzt Routinearbeiten an<br />

günstige Drittanbieter vergibt, kann nicht nur die Betriebs- und Wartungskosten seiner<br />

IT reduzieren. Er setzt auch Mittel und interne Ressourcen frei, die für die Entwicklung<br />

neuer Produkte oder Angebote eingesetzt werden können.<br />

Martin Sand<br />

Kontakt: martin.sand@erni.ch<br />

Senior Consultant in der Firma ERNI<br />

Consulting AG.<br />

Beratertätigkeit: Projekt-/Produktmanagement<br />

und Business Analysis.<br />

Heinz Schlatter<br />

Kontakt: heinz.schlatter@erni.ch<br />

Corporate Unit Leader in der Firma<br />

ERNI Consulting AG.<br />

Beratertätigkeit: IT-Service-Management<br />

und Process Improvement.<br />

Betrieb und Wartung reibungslos verlagern | Outtasking<br />

15


Architekturreview | Wie viel Qualität braucht ein IT-System?<br />

Wie viel Qualität braucht ein IT-System?<br />

Ein Architekturreview sorgt für Durchblick<br />

Ein IT-System muss die gestellten Anforderungen erfüllen. Alles, was darüber hinausgeht, erhöht neben dem Aufwand auch<br />

die Komplexität, ohne einen zusätzlichen Mehrwert zu bieten. Während dies beim Funktionsumfang meist berücksichtigt<br />

wird, werden im Bereich der qualitativen Anforderungen wie Performance, Sicherheit oder Wartbarkeit – im Widerspruch<br />

zu einem agilen Vorgehen – häufig Dinge umgesetzt, die so gar nicht benötigt werden. Ein Architekturreview kann überflüssige,<br />

aber natürlich auch ungenügend berücksichtigte Anforderungen aufdecken. Von Oliver Blindenbacher<br />

16<br />

Je mehr Qualität, desto besser! Klingt<br />

einfach und einleuchtend. Doch bei IT-<br />

Lösungen geht diese Formel oft nicht<br />

auf. Denn je höher die Performance, die<br />

Ausfallsicherheit oder der Schutz vor Eindringlingen<br />

ist, desto komplexer wird das<br />

System. Das bedeutet mehr Aufwand bei<br />

der Dokumentation, der Wartung und bei<br />

allfälligen Erweiterungen. Mit anderen<br />

Worten: ein teurer Spass. Die sinnvolle<br />

Alternative dazu ist ein agiles Vorgehen<br />

beim Aufbau der Softwarearchitektur.<br />

Dabei lautet die Devise: So viel Qualität<br />

wie nötig – aber nicht mehr.<br />

Die Entscheide, die während der Erstellung<br />

der Softwarearchitektur gefällt werden,<br />

bestimmen darüber, welche qualitativen<br />

Anforderungen erfüllt werden und<br />

inwieweit eine Lösung bedarfsgerecht ist.<br />

Fehler und falsche Entscheide haben oft<br />

gravierende Auswirkungen und können<br />

ein System sogar unbrauchbar machen.<br />

Im Zweifelsfall lohnt es sich deshalb, die<br />

Architektur einer Prüfung zu unterziehen,<br />

am besten durch unabhängige Spezialisten<br />

von aussen. Denn intern sind<br />

Probleme oft blinde Flecken – oder sie<br />

sind bekannt, können aber nicht glaubhaft<br />

ans Management ver<strong>mit</strong>telt werden.<br />

Das Mittel zur Prüfung – der Architekturreview<br />

– verursacht wenig Aufwand,<br />

wirkt sich aber langfristig positiv auf die<br />

Kosten eines Systems aus.<br />

Ein Architekturreview dient zur Evaluation<br />

von Architekturentscheiden bei neu<br />

zu entwickelnden Applikationen, aber<br />

auch bei Erweiterungen von bisherigen<br />

Anwendungen. Zudem kann er relevante<br />

Lücken in der bestehenden Dokumentation<br />

aufzeigen.


Vorgehen<br />

Architecture Tradeoff Analysis Method<br />

oder kurz ATAM – so nennt sich eine bei<br />

Architekturreviews häufig angewandte<br />

Evaluationsmethode. Es ist ein Vorgehen<br />

in vier Schritten:<br />

1. Festlegung der Qualitätsziele<br />

Dabei spielen Szenarien die zentrale<br />

Rolle, sie konkretisieren die qualitativen<br />

Anforderungen (siehe Abb. 2).<br />

In Bezug auf die Performance eines<br />

neuen IT-Systems könnte ein solches<br />

Szenario zum Beispiel lauten: «Das<br />

Öffnen eines umfangreichen Dokuments<br />

darf nicht länger dauern als<br />

bisher.» Die durch die Szenarien präzisierten<br />

Ziele werden bewertet sowie<br />

nach Wichtigkeit (aus Businesssicht)<br />

und nach Komplexität (aus technischer<br />

Sicht) priorisiert. Es geht grundsätzlich<br />

um die Frage: Was ist wichtig, was ist<br />

weniger wichtig?<br />

2. Analyse der Architektur<br />

Als Basis dazu dienen hauptsächlich<br />

die Dokumentation sowie Interviews<br />

und Gespräche <strong>mit</strong> dem Architekten<br />

und weiteren Stakeholdern. Je nach<br />

Situation wird auch der Source-Code<br />

herangezogen. Dies hat sich in der<br />

Praxis als hilfreich herausgestellt.<br />

Denn geschulte Architekten oder Entwickler<br />

können so schnell beurteilen,<br />

ob die Applikation nach Best Practices<br />

entwickelt wurde. Ein weiterer Bestandteil<br />

der Analyse sind sogenannte<br />

«Walkthroughs»: Ein bestimmtes<br />

Szenario wird gedanklich durchgespielt.<br />

Dabei wird geprüft, ob die involvierten<br />

Komponenten die notwendigen<br />

Eigenschaften erfüllen.<br />

3. Identifikation von Risiken, Nicht-Risiken<br />

und Trade-offs<br />

Sind die Risiken bekannt, weiss man<br />

auch, wie <strong>mit</strong> ihnen umgehen. So<br />

Wie viel Qualität braucht ein IT-System? | Architekturreview<br />

lassen sich Vorschläge für Massnahmen<br />

erarbeiten: Wie können wir das<br />

Risiko reduzieren oder eliminieren?<br />

Wie hoch ist die Eintretenswahrscheinlichkeit?<br />

Doch auch die Nicht-Risiken wollen<br />

aufgezeigt sein. Das erspart unnötige<br />

Sorgen. Unter «Trade-offs» versteht<br />

man Qualitätsziele, die sich<br />

widersprechen, also z.B. hohe Performance<br />

vs. hohe Sicherheit. Tradeoffs<br />

erfordern stets Entscheide und<br />

Kompromisse.<br />

4. Bewertung der Architektur<br />

Die Ergebnisse, ergänzt <strong>mit</strong> Vorschlägen<br />

für konkrete Massnahmen, werden<br />

in einer abstrahierten und auch<br />

für Nicht-Techniker verständlichen<br />

Form präsentiert.<br />

17


Architekturreview | Wie viel Qualität braucht ein IT-System?<br />

18<br />

Abbildung 1:<br />

Allgemeines Vorgehen<br />

zur Architekturbewertung<br />

Abbildung 2:<br />

Ausschnitt aus<br />

einem Qualitätsbaum<br />

<strong>mit</strong> zwei Szenarien<br />

Ein Architekturreview soll mögliche Gefahrenherde identifizieren und Gegenmassnahmen<br />

vorschlagen.<br />

Qualitätsmerkmale<br />

1. Geschäftsziele<br />

präsentieren<br />

2. Architektur<br />

präsentieren<br />

Performance<br />

3. Qualitätsbaum<br />

erstellen<br />

4. Qualitätsattribute<br />

bewerten<br />

5. Szenarien<br />

identifizieren<br />

und priorisieren<br />

6. Architekturansätze<br />

identifizieren<br />

Latenz<br />

Durchsatz<br />

Beispiel 1<br />

Entscheidungsgrundlage<br />

für Weiterentwicklungen<br />

Ein Medizintechnikunternehmen verfügt<br />

über zwei Produktlinien, eine neue für ein<br />

vorerst kleines System und eine etwas ältere<br />

für grosse Systeme. Es stellt sich die Frage,<br />

auf welcher Basis neue Produkte entwickelt<br />

werden sollen. Nimmt man das Alter als Kriterium,<br />

spricht alles für die neue Software.<br />

Doch herrscht im Unternehmen allgemein<br />

ein ungutes Gefühl: Die neuen Geräte erweisen<br />

sich in der Praxis immer wieder als<br />

fehleranfällig und sind zudem schlecht<br />

erweiterbar. Die Bedienoberfläche der älteren<br />

Produkte ist zwar optisch etwas aus der<br />

Mode gekommen, aber die Produkte selbst<br />

sind sehr robust und sauber aufgebaut. Um<br />

der Sache auf den Grund zu gehen und die<br />

richtige Entscheidung zu treffen, lässt das<br />

Unternehmen von externen Spezialisten einen<br />

Architekturreview durchführen.<br />

Die Spezialisten analysieren die Dokumentationen<br />

der beiden Systeme, aber auch<br />

den Code selbst. Zudem führen sie Inter-<br />

Relevanz Kosten<br />

(M, L) Antwortzeit < 1s<br />

(M, H) > 1000 Benutzer<br />

Sensitive<br />

Punkte und<br />

Kompromisse<br />

7. Analyse Nicht-Risiken<br />

Risiken<br />

Aktivitäten<br />

Artefakte<br />

views <strong>mit</strong> mehreren Stakeholdern, darunter<br />

Architekten, Entwickler, Produktmanager<br />

und Mitarbeitende, die für die Wartung<br />

zuständig sind. Das Ergebnis bestätigt den<br />

ersten Eindruck: Das ältere System ist die<br />

bessere Basis für Weiterentwicklungen.<br />

Der Architekturreview hat dem Unternehmen<br />

eine Strategie für die Zukunft aufgezeigt:<br />

die Entwicklung eines neuen User-<br />

Interface-Layers und ein schrittweises<br />

Reengineering der älteren Technologie.<br />

Beispiel 2<br />

Architekturreview<br />

vor globalem Rollout<br />

Ein global tätiges Dienstleistungsunternehmen<br />

plant, eine regional verwendete<br />

Software global auszurollen. Das Management<br />

weiss, dass dies neue Risiken <strong>mit</strong> sich<br />

bringt. Ein Architekturreview soll deshalb<br />

die möglichen Gefahrenherde identifizieren<br />

und Gegenmassnahmen vorschlagen.<br />

Als Risiken erweisen sich insbesondere die<br />

geringe Dokumentationstiefe und kom-


plexe, nicht nach gängigen Standards umgesetzte<br />

Komponenten. Letztere führen<br />

zwar zu einer leicht besseren Performance,<br />

doch im System ist dies weder spür- noch<br />

nutzbar. Erstere ist eine Quelle von Fehlern<br />

und Missverständnissen: Was von den Entwicklern<br />

falsch verstanden wird, führt zu<br />

redundantem oder falsch angewandtem<br />

Code. Gleichzeitig wird durch den Review<br />

aber auch klar, welche Qualitätsziele keine<br />

Risiken bergen. Dass die Netzwerkperformance<br />

für die Benutzer nur während<br />

bestimmten Operationen von Bedeutung<br />

ist, ist für die Akzeptanz des Systems von<br />

grosser Bedeutung. Die Ergebnisse werden<br />

grafisch dargestellt. Das Management<br />

kann sie problemlos nachvollziehen. Zudem<br />

werden konkrete Empfehlungen abgegeben,<br />

wie die identifizierten Risiken<br />

entschärft werden können.<br />

Der Architekturreview hat konkrete Probleme<br />

und Massnahmen aufgezeigt sowie<br />

Unsicherheiten beseitigt. Der zeitliche<br />

Aufwand dafür betrug nur gerade drei<br />

Wochen.<br />

Fazit<br />

Architekturentscheide haben weitreichende<br />

Folgen. Dabei ist möglichst schnell, sicher<br />

oder erweiterbar nicht immer wünschenswert,<br />

da die da<strong>mit</strong> verbundene<br />

Systemkomplexität zu mehr Aufwand bei<br />

späterer Weiterentwicklung oder Fehlersuche<br />

führt. Stattdessen empfiehlt sich<br />

ein agiles Vorgehen: Man setzt nur diejenigen<br />

Anforderungen um, die man wirklich<br />

benötigt. Ein Architekturreview hilft<br />

dabei, die richtigen Entscheide zu treffen,<br />

und liefert einem Unternehmen wichtige<br />

Hinweise für das Erreichen von Qualitätszielen.<br />

Zudem verursacht eine solche Prüfung<br />

verhältnismässig wenig Aufwand,<br />

wie die Beispiele gezeigt haben.<br />

Voraussetzung für schnelle und gehaltvolle<br />

Ergebnisse ist ein kompetentes Review-<br />

Team, das über die nötigen Soft Skills<br />

verfügt. Denn einerseits muss es auf einer<br />

vertrauensvollen Basis <strong>mit</strong> dem betreffenden<br />

Architekten zusammenarbeiten können.<br />

Andererseits existieren in Unternehmen<br />

oft unterschiedliche Meinungen über<br />

die Risiken bestimmter IT-Lösungen. Da<br />

muss das Review-Team in der Lage sein,<br />

<strong>mit</strong> allen Beteiligten zielführend zu kommunizieren<br />

und zu einem unparteiischen<br />

Urteil zu kommen. In der Regel erfüllt ein<br />

externes Team diese Voraussetzungen besser<br />

als ein Team von Mitarbeitenden des<br />

betreffenden Unternehmens.<br />

Oliver Blindenbacher<br />

Kontakt: oliver.blindenbacher@erni.ch<br />

Senior Consultant in der Firma ERNI Consulting AG.<br />

Beratertätigkeit: Architektur, Design<br />

und Development sowie Requirements Engineering.<br />

Wie viel Qualität braucht ein IT-System? | Architekturreview<br />

Architekturentscheide haben weitreichende<br />

Folgen. Dabei ist möglichst<br />

schnell, sicher oder erweiterbar nicht<br />

immer wünschenswert, da die da<strong>mit</strong><br />

verbundene Systemkomplexität zu mehr<br />

Aufwand bei späterer Weiterentwicklung<br />

oder Fehlersuche führt.<br />

19


ERNI Consulting AG<br />

Casinoplatz 2 · CH-3011 Bern · Tel. +41 31 381 76 11<br />

Talstrasse 82 · CH-8001 Zürich · Tel. +41 44 215 42 00<br />

Bahnhofstrasse 4 · CH-6340 Baar · Tel. +41 41 227 35 00<br />

ERNI (Deutschland) GmbH<br />

Orleansstrasse 34 · D-81667 München · Tel. +49 89 6228 6788 0<br />

ERNI (Slovakia) s.r.o.<br />

Ševcenkova 34 · SK-851 01 Bratislava · Tel. +421 2 3255 37 37<br />

www.erni.ch · info@erni.ch<br />

www.erni.ch/experience

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!