26
Dr. Alexander Schwartz JIRA und Crowd im Cluster bei mobile.international Integration von Atlassian-Tools Zoo oder Puzzle? Donnerstag, 23. September 2010

Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Embed Size (px)

DESCRIPTION

presented at Confluence & JIRA Community Day 2010 (http://www.communardo.de/home/communardo/technologien/atlassian-confluence-wiki/atlassian-community-day-2010-2)

Citation preview

Page 1: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Dr. Alexander Schwartz

JIRA und Crowd im Clusterbei mobile.international

Integration von Atlassian-Tools

Zoo oder P

uzzle?

Donnerstag, 23. September 2010

Page 2: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Über mobile.international

• mobile.de - Deutschlands größter Fahrzeugmarkt63 Milliarden Besuche pro Monat (Quelle: IVW März 2010)

• gehört zur eBay Classifieds Group

• Marktplätze in Frankreich, Italien, Polen und Rumanien

Donnerstag, 23. September 2010

Page 3: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Zu meiner Person & Rolle• Ausbildung: Mathematiker

• 20 Jahre IT-Branche in diversen Rollen: Entwickler, Consultant, Projekt-Manager,

Team-Leiter etc.

• Scrum Master

• meine Rolle bei mobile.international:

Leiter “Engineering Support Group”

- Release Management- Test Automation- Build Management- Tools- Konfigurations-Management

Dr. Alexander Schwartz

www.xing.com/profile/Alexander_Schwartz7

holis

tisch

Donnerstag, 23. September 2010

Page 4: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Agile Entwicklung bei mobile

3 Jahre Scrum 1 Jahr Kanban für Maintenance

70+ Personen6+ Teams, 2 verteilte Teamsparallele Entwicklung am gleichen Produkt

Donnerstag, 23. September 2010

Page 5: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Hilft JIRA bei der Agilen Entwicklung?

Achtung:Der Einsatz eines Ticketsystems kann viele Nachteile haben.

Beispiel: “Ticket-Ping-Pong”

Unser Lieblings-Tool:das Story-Bord

(aka Kanban-Bord)

Donnerstag, 23. September 2010

Page 6: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

JIRA bei mobile

Regel: Jedes Commit in der Versionsverwaltung referenziert ein JIRA-Ticket.

Anforderung: Nachvollziehbarkeit für SOXAls ein SOX-Reviewer kann ich in einem Report die Veränderung des gesamten Quellcodes einsehen und analysieren.

JIRA-Ticket

VCS-Commit

Wir verwenden JIRA.- 50+ JIRA-Projekte- komplexe Modellierung

Donnerstag, 23. September 2010

Page 7: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Unser Tool-Zoo für Agile Entwicklung

JIRATicket System

SubversionVersion Control

EclipseIDE

MavenBuild Tool

Donnerstag, 23. September 2010

Page 8: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Unser Tool-Zoo für Agile Entwicklung

SonarCode Metriken

NexusMaven Repository Proxy

JIRATicket System

ConfluenceWiki System

SubversionVersion Control

Git/GitoriousVersion Control

Active Directory

FishEyeVersion Control Browsing

CrucibleCode Review Tools

TeamCityContinuous Integration

HudsonContinuous Integration

EclipseIDE

IntelliJIDE

CloverCode Coverage

MavenBuild Tool

Donnerstag, 23. September 2010

Page 9: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Unser Tool-Zoo für Agile Entwicklung

SonarCode Metriken

NexusMaven Repository Proxy

JIRATicket System

ConfluenceWiki System

SubversionVersion Control

Git/GitoriousVersion Control

Active Directory

FishEyeVersion Control Browsing

CrucibleCode Review Tools

TeamCityContinuous Integration

HudsonContinuous Integration

EclipseIDE

IntelliJIDE

CloverCode Coverage

MavenBuild Tool

Anforderung: schnelle BenutzerverwaltungAls ein Tool-Admin kann ich einen neuen Benutzer für alle Tools innerhalb von 3 Minuten anlegen (mit einheitlichen Zugangsdaten).

Verwandte Anforderungen: - User deaktivieren - E-Mail-Adresse ändern - Zugangsberechtigungen verändern

Donnerstag, 23. September 2010

Page 10: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Unser Tool-Zoo für Agile Entwicklung

SonarCode Metriken

NexusMaven Repository Proxy

JIRATicket System

ConfluenceWiki System

SubversionVersion Control

Git/GitoriousVersion Control

CrowdID Management

Active Directory

FishEyeVersion Control Browsing

CrucibleCode Review Tools

TeamCityContinuous Integration

HudsonContinuous Integration

EclipseIDE

IntelliJIDE

CloverCode Coverage

MavenBuild Tool

Donnerstag, 23. September 2010

Page 11: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd-Tipp: Umstellung eines Tools auf Crowd

Gegeben:Verzeichnis A in Crowd, verwendet von Confluence

Schritte: • JIRA-Benutzer in neues Crowd-

Verzeichnis B importieren• JIRA mit Crowd-Verzeichnis B

verbinden• Verzeichnisse A und B mischen

und als neues Verzeichnis C importieren• JIRA und Confl. mit C

verbinden.

Crowd

Confluence JIRA

A

Donnerstag, 23. September 2010

Page 12: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd-Tipp: Umstellung eines Tools auf Crowd

Gegeben:Verzeichnis A in Crowd, verwendet von Confluence

Schritte: • JIRA-Benutzer in neues Crowd-

Verzeichnis B importieren• JIRA mit Crowd-Verzeichnis B

verbinden• Verzeichnisse A und B mischen

und als neues Verzeichnis C importieren• JIRA und Confl. mit C

verbinden.

Crowd

Confluence JIRA

A B

Donnerstag, 23. September 2010

Page 13: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd-Tipp: Umstellung eines Tools auf Crowd

Gegeben:Verzeichnis A in Crowd, verwendet von Confluence

Schritte: • JIRA-Benutzer in neues Crowd-

Verzeichnis B importieren• JIRA mit Crowd-Verzeichnis B

verbinden• Verzeichnisse A und B mischen

und als neues Verzeichnis C importieren• JIRA und Confl. mit C

verbinden.

Crowd

Confluence JIRA

A B

Donnerstag, 23. September 2010

Page 14: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd-Tipp: Umstellung eines Tools auf Crowd

Gegeben:Verzeichnis A in Crowd, verwendet von Confluence

Schritte: • JIRA-Benutzer in neues Crowd-

Verzeichnis B importieren• JIRA mit Crowd-Verzeichnis B

verbinden• Verzeichnisse A und B mischen

und als neues Verzeichnis C importieren• JIRA und Confl. mit C

verbinden.

Crowd

Confluence JIRA

A B C

Donnerstag, 23. September 2010

Page 15: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd-Tipp: Umstellung eines Tools auf Crowd

Gegeben:Verzeichnis A in Crowd, verwendet von Confluence

Schritte: • JIRA-Benutzer in neues Crowd-

Verzeichnis B importieren• JIRA mit Crowd-Verzeichnis B

verbinden• Verzeichnisse A und B mischen

und als neues Verzeichnis C importieren• JIRA und Confl. mit C

verbinden.

Crowd

Confluence JIRA

C

Donnerstag, 23. September 2010

Page 16: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd

Crowd-Tipp: eingeschränkter Zugriff

• Situation: Sie eine Usergruppe, die Zugriff auf ein Tool, aber niemals andere

externer CSMitarbeiter

ConfluenceJIRA

Subversion

.........

• Beispiel: externe Customer-Support-Gruppe bei mobile

• Lösung:- separates Directory in Crowd für

dieses Gruppe anlegen- Directory für nur Confluence

freischalten, nicht für die weiteren Applikationen

• eingeschränkter Zugriff auf Confluence

• kein Zugriff auf andere Tools

Donnerstag, 23. September 2010

Page 17: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Server 1

Crowd-Tipp: Betriebsvariante Cold-Standby

CrowdInstanz 1

Server 2

CrowdInstanz 2

Server 0

Apache Load Balancer

MySQL-DBMySQL-

Replikation

aktiv passiv

• Anzahl Lizenzen: eine• nicht offiziell unterstützt

durch Atlassian• unterstützt durch

Communardo

passiv

Donnerstag, 23. September 2010

Page 18: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Crowd-Tipp: Synchronization

• Situation: Sie wollen ein Tool an Crowd anbinden, für welches kein Connector existiert.

• Beispiel: - TeamCity von JetBrains- Gitorious

• Lösung:- Authentifizierung via Plug-in- Authorisierung via automatischen

Sync von Crowd (API) zu Zielsystem-DB

Crowd

TeamCity Sync-Prozess

API

Plug-In

Donnerstag, 23. September 2010

Page 19: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Erfahrungen mit Crowd

Positiv

• Passwort-Reset unsicher• Integration in Atlassian-Tools

uneinheitlich (Password-Reset usw.)

• unklare Fehlermeldungen bei Verwendung einer Password-Policy

• Bugs mit verschachtelten Gruppen (z.B. Apahe)

• Import/Mischen von Verzeichnissen fehlerhaft.

Negativ

• verschachtelte Gruppen erleichtern die Modellierung (und verringern den Aufwand)

• Integration vieler Java-Tools einfach

Donnerstag, 23. September 2010

Page 20: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Erfahrungen mit Crowd (2)

• keine Verwaltung für Teilstrukturen

• keine AuditsAnforderung: Nachvollziehbarkeit für SOXAls ein SOX-Reviewer kann ich in einem Report die Veränderung der Nutzerbasis und ihrer Berechtigungen einsehen.

Anforderung: NachvollziehbarkeitAls ein Tool-Admin kann zwecks Analyse einer aktuellen Störung ein Protokoll der letzten Änderungen

Positiv NegativKontext:Wir wollen einen zentralistischen Ansatz für Konfigurations-management vermeiden.

Donnerstag, 23. September 2010

Page 21: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Erfahrungen mit Crowd (2)

• keine Verwaltung für Teilstrukturen

• keine AuditsAnforderung: Nachvollziehbarkeit für SOXAls ein SOX-Reviewer kann ich in einem Report die Veränderung der Nutzerbasis und ihrer Berechtigungen einsehen.

Anforderung: NachvollziehbarkeitAls ein Tool-Admin kann zwecks Analyse einer aktuellen Störung ein Protokoll der letzten Änderungen

Positiv NegativKontext:Wir wollen einen zentralistischen Ansatz für Konfigurations-management vermeiden.

Gutes Beispiel für ein Change-Audit: TeamCity von JetBrains

Donnerstag, 23. September 2010

Page 22: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Genügt ein Tool-Zoo unseren Anforderungen?

SonarCode Metriken

NexusMaven Repository Proxy

JIRATicket System

ConfluenceWiki System

SubversionVersion Control

Git/GitoriousVersion Control

CrowdID Management

Active Directory

FishEyeVersion Control Browsing

CrucibleCode Review Tools

TeamCityContinuous Integration

HudsonContinuous Integration

EclipseIDE

IntelliJIDE

CloverCode Coverage

MavenBuild Tool

Donnerstag, 23. September 2010

Page 23: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Genügt ein Tool-Zoo unseren Anforderungen?

SonarCode Metriken

NexusMaven Repository Proxy

JIRATicket System

ConfluenceWiki System

SubversionVersion Control

Git/GitoriousVersion Control

CrowdID Management

Active Directory

FishEyeVersion Control Browsing

CrucibleCode Review Tools

TeamCityContinuous Integration

HudsonContinuous Integration

EclipseIDE

IntelliJIDE

CloverCode Coverage

MavenBuild Tool

Anforderung: neues Projekt anlegenAls ein Tool-Admin (von Communardo) kann ich für ein neues Kundenprojekt alle Ressourcen in allen Tools anlegen innerhalb 30 Minuten.

Verwandte Anforderungen: - Zweig (Branch) in Versionsverwaltung erstellen - ...

Donnerstag, 23. September 2010

Page 24: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Genügt ein Tool-Zoo unseren Anforderungen?

SonarCode Metriken

NexusMaven Repository Proxy

JIRATicket System

ConfluenceWiki System

SubversionVersion Control

Git/GitoriousVersion Control

CrowdID Management

Active Directory

FishEyeVersion Control Browsing

CrucibleCode Review Tools

TeamCityContinuous Integration

HudsonContinuous Integration

EclipseIDE

IntelliJIDE

CloverCode Coverage

MavenBuild Tool

Zoo oder P

uzzle?

Donnerstag, 23. September 2010

Page 25: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Fragen & Antworten

Donnerstag, 23. September 2010

Page 26: Integration von Atlassian-Produkten: JIRA & CROWD im Cluster bei mobile.international

Vielen Dank für Ihre Aufmerksamkeit

Donnerstag, 23. September 2010