Archiv für den Monat Oktober 2013

Agiler Scrumtisch Heilbronn

Gestern waren mein Kollege aus der Webentwicklung und ich beim Agilen Scrumtisch in Heilbronn.

CIMG4644

 

Die Truppe vor Ort ist ein lockerer, gut gemischter Haufen. Logischerweise wurde der Scrumtisch auch Scrum-like organisiert, d.h. jeder Teilnehmer konnte Backlog Items einreichen. Dabei profitierte ich auch prompt, da sogenannte Stattys Notes verwendet wurden, die es hier gibt. Dabei handelt es sich um eine besondere Art von PostIts. Einfach auf der Webseite nachschauen. Die Seite ist übrigens nach dem Why How What Prinzip von Simon Sinek (“People don’t buy what you do they buy why you do it”) aufgebaut. Das ist umso lustiger, als ich genau darauf gestern im Kontext von Motivation und Produktmarketing zu sprechen kam. Das entsprechende Video, welches ich jedem nur ans Herz legen kann, gibt es hier.

Aber zurück zum Thema: Nachdem alle Backlog Items (Themen) gesammelt wurden, erhielt jeder ein 3-Punkte-Konto, aus welchem er die Items voten konnte. Daraus entstand der Business Value, nach welchem die Items priorisiert wurden. Danach zogen wir ein Item nach dem anderen heraus und diskutierten es. Dabei standen immer initial 10 Minuten zur Verfügung. Benutzt wurde eine Time Timer Uhr. Im Anschluss wurde in die Gruppe gefragt, ob das Thema weiter besprochen oder zum nächsten gewechselt werden soll. Per Handzeichen (Daumen hoch oder runter) entschied die Gruppenmajorität. Fiel die Entscheidung  zur Weiterführung der Diskussion, so gab es weitere 5 Minuten. Dies wiederholte sich dann bis ein Votum gegen das Thema fiel. An dieser Stelle sei mein vorheriger Blogbeitrag Wir arbeiten time boxed erwähnt, der den Vorteil von festen Zeitabschnitten aufgreift. Für mich eine tolle Art den Abend zu gestalten.

Die Gespräche verliefen konstruktiv und vielschichtig. Es gab unterschiedliche Betrachtungsweisen und Lösungsansätze. Einen speziellen Punkt habe ich mir herausgegriffen und in der Xing Scrum Gruppe als Frage eingestellt. Dabei geht es um sogenannte Evaluierungsstories, welche Boris Gloger in einem seiner Bücher erwähnt. Der geneigte Leser ist dazu angehalten sich an dem Gespräch zu beteiligen.

3 interessante Punkte, die ich mitgenommen habe, seien noch in aller Kürze erwähnt:

Advertisements

Wir arbeiten time boxed

Es vergeht selten eine Arbeitswoche ohne eine Besprechung. Die Regel sind mehrere wöchentlich. Umso wichtiger ist es, dass ein Rahmen gefunden wird, der effektive Meetings gewährleistet. Die Chefs von Google hatten in ihrer Anfangszeit z.B. das parallele Arbeiten am Smartphone eingeführt. Diesen Schritt haben sie selbst erst kürzlich wieder rückgängig gemacht, d.h. beim Suchmaschinenriesen herrscht jetzt Handyverbot während den Sitzungen.

Ich möchte an dieser Stelle auf feste Anfangs- und Endzeiten eingehen, englisch ‘time boxed’ genannt, und erklären, warum wir inzwischen ausschließlich auf diese Art Besprechungen führen:

  • Die Konzentration ist höher, da in der gegebenen Zeit der Inhalt durchgesprochen werden muss. Der Moderator (bzw. Scrum Master in entsprechenden Teams) sollte darauf achten die besonders redseligen immer wieder zurück in die Spur zu bringen. Bei massiven Problemen können Redezeiten oder Sprechbälle als Werkzeuge helfen. Bei uns klappt es allerdings recht gut, wenn die Person direkt mit dem Hinweis adressiert wird, dass uns die Zeit ausgeht. Ich habe eine deutlich stärkere Fokussierung und somit bessere Effizienz bei uns festgestellt.
  • Es werden weniger unnötige Informationen ausgetauscht. Unnötig im Sinne von nicht für alle relevant. In diesem Punkt ist ebenfalls der Moderator gefragt. Einfach die Bitte an die betroffenen Teilnehmer richten sich im Anschluss zusammenzusetzen.
  • Die Zeitersparnis, die mit Warten regelrecht verbraten wird, ist enorm. Je häufiger Meetings stattfinden und desto mehr Mitarbeiter daran beteiligt sind, desto höher ist die Ausbeute. Früher war es bei uns häufig der Fall, dass ein Teil der Gruppe durch ihr Warten kostbare Arbeitszeit verlor. Auf die Personalkosten möchte ich erst gar nicht eingehen.
  • Pünktlich zu kommen ist auch ein Zeichen des Respekts bzw. der Höflichkeit.
  • Für mich ist Pünktlichkeit auch ein Anzeichen für die Qualität des Selbstmanagements. Wenn wir externe Berater zu Gast haben und diese sich häufig oder besonders lange verspäten, dann stellt sich für mich immer die Frage wie zuverlässig sie beim Abliefern der Ergebnisse sind.
  • Durch fest definierte Endzeiten wird es überhaupt erst möglich verlässlich zu planen. Wenn ich beispielsweise beim Kollegen, der mir seinen Kalender freigegeben habe, sehe, dass sein Meeting bis 15 Uhr dauert, er dann aber 30 Minuten später immer noch nicht wieder am Platz sitzt, dann ist das für mich, der um 15.30 Uhr eine Besprechung hat, gelinde gesagt ungünstig. Mir wäre es dann auch nie möglich mit ihm direkt im Anschluss einen weiteren Termin zu vereinbaren, da ich immer damit rechnen muss, dass er nicht pünktlich sein kann.
  • Besprechungsräume sind bei uns wie vermutlich auch in anderen Unternehmen eine begrenzte Ressource. Wir arbeiten mit der in Outlook verfügbaren Verwaltung, um diese effektiv auszulasten. Das kann nur funktionieren, wenn time boxed vorgegangen wird.

Gerne würde ich noch weitere Punkte aufnehmen. Einfach in die Kommentare schreiben.

 

Als Hinweis sei noch mitgegeben, was bei der Umsetzung hilft:130618 141116 DSCI2486

  • Eine gewisse Unzufriedenheit mit dem aktuellen Ablauf
  • Disziplin
  • Einen guten Moderator (Scrum Master)
  • Eine Uhr (z.B. Time Timer wie im Bild)

Developer Open Space 2013 – Live aus den Sessions

In dem unten stehenden Video zeige ich euch Aufnahmen aus den Sessions. Generell ist es so, dass die Person, die ein Session-Thema vorschlägt, gleichzeitig als Session Hoster fungiert. Dazu ist es nicht notwendig, dass der Session-Hoster sich besonders gut mit der Materie auskennt. Seine Funktion zielt darauf ab einen offen Dialog zu gewährleisten und das sogenannte Kapern von Sessions, d.h. das Abdriften vom Thema, zu verhindern.

Erfahrungsgemäß laufen Sessions oft in 2 Formen ab:

  • Sehr rege Beteiligung aller Teilnehmer bei Themen, zu denen jeder etwas sagen kann. Ein Beispiel hierzu wäre Scrum.
  • Bei Randthemen oder komplexen Dingen ist es meistens so, dass 1-3 Personen über die eigenen Erfahrungen berichten. Das waren in diesem Jahr beispielswese die Sessions “Werteunterschiede” und “Psychologie bei Softwareentwicklung”.

Mir scheint es auch, dass v.a. in den letzten 2 Jahren immer mehr Sessions außerhalb des Technologie-Stacks aufkommen. Persönlichkeitstypen und Selbstständigkeit / Freelancing um zwei Vertreter zu nennen. Zumindest ich persönlich begrüße dies sehr!

Hier nun zum Video (Direktlink auf YouTube):

Developer Open Space 2013 – Sessionplanung

Damit der ein oder andere eine konkrete Vorstellung davon bekommt, wie eine Agenda auf einem Open Space entsteht, habe ich das live aufgenommen und publiziert.

In Leipzig findet in der Regel Freitagabends ein sogenanntes World-Café statt. Dabei sind alle Beteiligten dazu angehalten Sessionthemen vorzuschlagen, konstruktiv zu diskutieren und für den Folgetag aufzuschreiben. Die Teilnehmer können die Ergebnisse als Vorschläge und Inspiration in den nächsten Tag mitnehmen.

Samstags und Sonntags findet dann das gemeinsame Erstellen der Agenda (öfters auch Product Backlog genannt) statt. Vom World-Café können, müssen aber nicht dann Sessions vorgeschlagen werden. Der Teilnehmer, der das Thema anregt, ist immer auch der Session Hoster. Ihm obliegt die Entscheidung wann und wo die Session stattfindet. Darüber hinaus nimmt der die Moderatorenrolle ein und verhindert ggf. das “Kapern” einer Session, d.h. das Abdriften in nicht Session-relevante Themen.

Nach der Sessionvorstellung holt sich der Hoster kurzes Feedback per Handzeichen ein, wie viel Interesse besteht. Eventuell melden sich auch Teilnehmer, die das Thema gerne erweitern bzw. konkretisieren möchten, um eigene Schwerpunkte einzubringen und eine gemeinsame Session zu halten.

So viel in aller Kürze zur Agendafindung. Hier nun das Video:

Developer Open Space – Interview mit Janek Fellien

In meinem Interview am Developer Open Space in Leipzig (#devspace) spreche ich mit Janek über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz.

Den Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

 

PHP Experten als Consultant gesucht

Wir suchen für unsere Abteilung einen Web Consultant, der sich hervorragend in PHP und JavaScript auskennt. Der Fokus liegt klar auf Clean Code, d.h. leicht anpassbare, wiederverwendbare und skalierbare Lösungen. Testautomatisierung setzen wir dabei voraus. Idealerweise, aber nicht obligatorisch, bringt derjenige noch Kenntnisse in Typo3 und Ext JS mit.

In einem gemeinsamen Projekt bei uns im Haus, später dann ggf. auch remote, sollen die internen Entwickler im Durchlauf von Problemanalyse bis hin zu Deployment unterstützt werden. Ziel ist, dass unsere Mitarbeiter im Anschluss einen dedizierten Worfklow an der Hand haben, angefangen mit der richtigen IDE (z.B. PHPStorm) über die Versionskontrolle bis hin zum automatisierten Deployment.

Update Mechanismus für meine Anwendung

Unser ERP-System soll einen neuen Updater erhalten. Der Prozess macht es notwendig, dass bei einem Update Admin-Rechte benötigt werden, beispielsweise weil in die Registry geschrieben wird. Als Client Betriebssystem kommt Windows 7 zum Einsatz.

Unsere Überlegung war es den Update-Prozess als Dienst oder Aufgabe lokal mit Adminrechten laufen zu lassen. Der angemeldete User hingegen arbeitet mit eingeschränkten Rechten. Für ein optimales Benutzererlebnis stellen wir uns vor, dass das ERP dem Anwender meldet, dass es aktualisiert werden muss, d.h. der Dienst müsste an die lokale Anwendung, die in einem anderen Benutzerkontext läuft, eine entsprechende Nachricht schicken. Sobald die Applikation geschlossen wird, muss diese dann melden, dass das Update durchgeführt werden kann. Während des Prozessablaufs sollte darüber hinaus dem Anwender noch visuell der Fortschrittsstatus angezeigt werden.

Das ähnelt stark dem Verhalten von Browsern wie Chrome oder Anwendungen wie Flash. Meine Frage ist, ob der gewählte Lösungsansatz mit Aufgaben/Diensten der Passende ist und wie die Visualisierung über Benutzerkontexte hinweg sinnvoll zu implementieren ist. Für Hinweise und Lösungsansätze wäre ich dankbar.

 

//Erste Rückmeldung von Hans-Peter:

Im ERP mit einem Timer arbeiten, der prüft, ob eine Datei vorhanden ist und dann die Meldung an den Anwender ausgeben. Für die Fortschritts-Anzeige dann im Service einen separaten Thread starten, welchen man im Kontext des Anwenders laufen lässt.

%d Bloggern gefällt das: