Blog

Archiv der Kategorie: Blog

Core Scrum Project Management

Core Scrum ist ein Ansatz, die Grundprinzipien von Scrum für den Einsatz in sehr kleinen Teams zu nutzen. Dabei soll durch gezielten Einsatz von Ritualen und Werkzeugen ein strukturiertes Arbeiten ermöglicht werden, ohne aber dabei die Flexibilität einzuschränken.

Am Anfang war das Team

Wir treffen uns regelmäßig einmal wöchentlich, um gemeinsam an Projekten zu arbeiten und uns über Ideen und Probleme auszutauschen. Nicht selten bearbeiten ein halbes Dutzend Projekte gleichzeitig. Hinzukommen Querschnittsthemen wie Infrastruktur, Build Prozesse und Dokumentation. Regelmäßig kommen neue Ideen auf, die die Menge an parallelen Projekten weiter vergrößern. Soweit, so chaotisch.

Flexibilität als Fluch und Segen

Durch den hohen Grad an Flexibilität und die Möglichkeit, Ideen ohne Druck realisierten oder auch wieder verwerfen zu können, kommt es regelmäßig dazu, dass angefangene Projekte entweder gar nicht oder erst sehr spät sichtbare Ergebnisse zeigen. Das Wechseln zwischen vielen Projekten stellt eine zusätzliche organisatorische Belastung dar.

Das Chaos bändigen

Die Rollen und Rituale von Scrum sind nicht ohne weiteres auf den von uns gesteckten kleinen Rahmen anwendbar. Daher müssen wir die entscheidenden Punkte an unsere Bedürfnisse anpassen.

Tickets

Sämtliche Aufgaben werden von uns als Tickets erfasst. Neben der Aufgabenbeschreibung und der Kategorisierung enthält jedes Ticket eine Beschreibung des Zielzustands – die Definition of Done. Weiterhin wird der Aufwand bis zur Fertigstellung in Stunden geschätzt. Dabei sollte der Aufwand eines Tickets das Pensum nicht überschreiten. Stattdessen sollte die Aufgabe in mehrere Untertickets geteilt werden. Tickets können jederzeit erstellt werden, um Ideen oder Pläne festzuhalten.

Sprint

Im Mittelpunkt der Aufgabenplanung steht der Sprint, dessen Länge auf die Dauer zwischen unseren Treffen – also genau eine Woche – festgelegt wird. Während des Sprints werden die Tickets bearbeitet, die zu Beginn eines Sprints ausgewählt wurden.

Sprint Meeting

Das Sprint Meeting stellt den letzten Tag eines Sprints dar und dient zum einen dem persönlichen Austausch und dem gemeinsamen Arbeiten.
Zum anderen werden aktuelle Tickets besprochen und neue zugewiesen.

Die Tickets des aktuellen Sprints werden im Laufe des Treffens durchgesehen und der jeweilige Verantwortliche präsentiert kurz das Resultat. Abgeschlossene Tickets werden geschlossen, nicht fertiggestellte wieder in das Backlog getan. Noch nicht abgeschlossene Tickets können während des Meetings noch bearbeitet werden.

Bis zum Ende eines Treffens legt jedes Teammitglied für sich selbst fest, welche Tickets es innerhalb der nächsten Woche bearbeiten will. Dabei soll geschätzt werden welche Aufgaben realistisch abgeschlossen werden können. Während des Sprints dürfen keine als die gewählten Tickets bearbeitet werden. Durch diese Beschränkung soll verhindert werden, dass neue Aufgaben zugunsten von bereits abgefangenen begonnen werden.

Übung macht den Meister

Anhand der Aufwände für die tatsächlich nach einer Woche fertiggestellten Tickets lässt sich ablesen, welches Pensum realistisch geschafft werden kann. Erfahrungswerte sind nützlich, um die Anzahl von Tickets für zukünftige Wochen besser abschätzen zu können.

Toolunterstützung

Unser Ticketsystem Redmine haben wir um ein Agile Plugin erweitert, das die Sprintplanung durch eine praktische Darstellung unterstützt. Burndown Charts geben zusätzlich einen Überblick über Restaufwände und den aktuellen Fortschritt innerhalb eines Sprints.
Die Ticketbeschreibung haben wir um das Pflichtfeld Definition of Done erweitert.

Winterschlaf Interoberlin

In Berlin regiert die kalte Jahreszeit und Interoberlin legt in dieser Zeit eine achtwöchige Pause ein, in der es keine wöchentlichen Treffen geben wird. Pünktlich am 19. März starten wir dann mit der ersten offiziellen #tt Session des Jahres.

Bis dahin herrscht aber keineswegs Stillstand im Kopf : es gilt Ideen zu sammeln, wohin die Reise 2015 gehen soll. Viele Ansätze zu neuen spannenden Projekten sind insbesondere gegen Ende letzten Jahres entstanden.

Nichtsdestotrotz liegt es in der Natur dieses Thinktanks, dass weitaus mehr Pläne geschmiedet und Ideen entwickelt werden, als wir in unserer  begrenzten Zeit umsetzen können. Daher wird es nach wie vor eine der größten Herausforderungen sein, zu selektieren und zu filtern.

Weiterhin sollte der Fokus darauf liegen, die Erkenntnisse und Erfolge des letzten Jahres zu nutzen und auf ihnen aufzubauen.

Nach wie vor stehen aber der Spaß am kreativen Schaffen, der Wissensaustausch, die Auslebung unseres Erfindergeistes im Mittelpunkt. In diesem Sinne : auf ein spannendes Jahr 2015

Kämpfen gegen das Kältemonster Support

Wir freuen uns, Rise against the Kältemonster mit einem Platz auf unserem Server unterstützen zu können.

Rise against the Kältemonster ist Festival dessen Erlös an den Berliner Obdachlosen e.V. geht. Die Einnahmen werden verwendet, um Berliner Mitbürgern in Not in der kalten Jahreszeit zu helfen.

Am 3. und 4. Januar findet zu diesem Zweck in der Revaler Strasse 99 ein Festival statt, bei dem auf insgesamt Floors Livemusik, Poetry, Theater, Kino, Essen, Workshops, Ausstellungen, Spiele geboten werden.

Google Cardboard Test

In der letzten Woche ist endlich das lange erwartete Do It Yourself Kit von Googles Interpretation einer VR Brille angekommen. Soviel vorweg : die Investition von rund 10 Euro hat sich gelohnt.

Hardware

Die gesamte Konstruktion besteht aus einem Stück Pappkarton, es sind für den Aufbau weder Schere noch Klebeband notwendig. Das Falten des Kartons ist dank einer Anleitung innerhalb von einer Minute erledigt.

Ein Gummiband sorgt dafür, dass die Konstruktion nicht so leicht wieder auseinander fällt. Ebenfalls hilfreich sind kleine Aussparungen im Karton, die die Verbindungsteile an der richtigen Stelle halten.

Um die Brille freihändig tragen zu können, sind zwei Streifen selbstklebendes Klettband mitgeliefert, die seitlich angebracht werden müssen. Hierfür mussten wir doch zur Schere greifen, denn das Band überragte das Loch, in das der Magnet eingelassen wird. Das Kopfband, das beim Tragen an den beiden Klettstreifen befestigt wird, finden wir nicht wirklich nützlich. Vermutlich lohnt es sich erst bei längerem Einsatz.

Testgerät

Als Testgerät verwendeten wir ein Galaxy Nexus von Samsung. Durch einen Klappe an der Vorderseite kann ein einfach eingelegt werden und sitzt anschließend ausreichend fest.

Software

Die Demo App gibt es kostenlos bei Google Play. Sie veranschaulicht anhand von rund einem halben Dutzend Szenarien die Möglichkeiten der VR Brille. So kann man mit einem Google Streetview Auto für Straßen von Paris erkunden, per Google Earth durch Städte und Gebirge fliegen oder sich in einer Tour durch die Räumlichkeiten von Schloss Versailles bewegen. Besonders hat uns die Darstellung von selbst aufgenommenen 360 Grad Panoramen überzeugt. In jedem Szenarien richtet sich das Bild nach der derzeitigen Kopfhaltung.

Die Darstellung wirkt auf den ersten Blick überzeugend, es ist jedoch etwas Verzögerung zu spüren. Bei genauem Hinsehen kann man einzelne Pixel erkennen.

Bedienung

Die Steuerung der App erfolgt über einen Magneten, der am linken Gehäuserand angebracht ist. Diesen kann man nach unten ziehen und wieder nach oben schnellen lassen. Das funktioniert, weil im inneren des Gehäuses ein weiterer Magnet angebracht ist, der äußeren in seine Ursprungsposition zurückzieht. Jedes Zurückschnellen lassen des Magneten wird als Klick interpretiert und erlaubt die Navigation durch die App. Das funktioniert in den meisten Fällen zuverlässig.
Durch das kippen des Kopfes um 90 Grad nach rechts gelangt man von einer ausgewählten Demo zurück ins Hauptmenü.

Fazit

Alles in allem macht die Pappbrille einen guten Eindruck, vor allem wenn man den niedrigen Preis von 10 Euro bedenkt. Qualitativ werden die Unterschiede zur höherpreisigen Konkurrenz vor allem bei der Bildqualität und der Reaktionszeit deutlich. Nichts desto trotz zeigt Google mit Cardboard, dass man für das Thema Virtual Reality nicht zwingend tief in die Tasche greifen muss. Der Gegenentwurf zu High-End Produkten wie der Oculus Rift macht Spaß und reicht für die ersten Gehversuche im Bereich VR Entwicklung vollkommen aus. Ein entsprechendes SDK stellt Google bereit.

Tools : Android Studio // Gradle #tt Session 2014/09/25

Dem aktuellen Trend folgend stellen wir unsere Entwicklungsumgebung von ADT (Eclipse) auf Android Studio (IntelliJ Idea) um. Damit einher geht die Verwendung des Build Tools Gradle, welches auf Groovy basiert.

Damit entscheiden wir uns bewusst gegen Maven und setzen auf das historisch gesehen neuere und aus unserer Sicht vielversprechendere Build Tool.

Vorteile

Dafür spricht zum einen, dass die Entwicklungsumgebung Android Studio von Google forciert und weiterentwickelt wird. Auf der anderen Seite verspricht gradle alle Vorzüge von Maven bei gleichzeitig deutlich höherer Flexibilität. Gradle unterstützt Maven Repositories um Dependencies aufzulösen. Tasks aus bestehenden Ant Skripten können problemlos eingebunden werden.

Fahrplan

Wir werden uns in den nächsten Wochen darauf konzentrieren, unsere bestehenden Android Projekte auf gradle umzustellen. Dabei stehen zunächst folgende Aspekte im Vordergrund :

Bauen eines Projektes aus Android Studio heraus.
Einbinden von eigenen Android Bibliotheksprojekten
Bauen mit Jenkins
Veröffentlichen mit Jenkins in Fdroid

Von den Fortschritten und Herausforderungen werden wir in den nächsten Wochen berichten.

Bolyde : Schönes Boot ahoi #tt Session 2014/09/18

Neuer Donnerstag neues Glück. Nachdem wir letzte Woche das Fluppy zu Wasser gelassen haben, sollte in dieser Woche die Steuerung per App folgen. Auch diesmal hat uns die Technik einen Strich durch die Rechnung gemacht.

Der neue Absatz sieht vor, das Signal der Fernbedienung zu reverse engineeren. Auf diese Weise sind wir von der gekauften Fernbedienung größtenteils unabhängig.

Sauvignon : Parallaxe #tt Session 2014/08/14

Da soll noch einer sagen wir starten ständig Projekte und bringen keins zu Ende. Der Auslöser für unser Android SVG Projekt Sauvignon gehört seit heute nicht mehr dazu.

Aber der Reihe nach : Um dem (zukünftigen) Anwender unserer Apps langweilige Wartezeiten beim Laden zu ersparen, kam uns Idee, den Splash Screen einer App während des Ladens zu animieren. Mittels Bewegung des Smartphones sollte durch Parallaxe der Eindruck von räumlicher Tiefe entstehen. Soweit die Theorie.

Lass uns doch dafür SVG verwenden …

-Matthias

Nach mindererfolgreicher Suche nach einer passenden Bibliothek für Android begann der steinige Weg zu Sauvignon, einer SVG Bibliothek, die neben einem Parser und einen Renderer mittlerweile auch eine rudimentäre Animationsengine beinhaltet.

Zurück ins jetzt : eben diese Engine ermöglicht es uns heute, SMIL basierte Animationen zu realisieren. Die Ursprungsgrafik stammt wie gehabt aus einer SVG Datei, die Animation wird zur Laufzeit hinzugefügt sodass zum Beispiel der Beschleunigungssensor oder Touch Eingaben für interaktive Animationen verwendet werden können.

Ersteres nutzen wir um grafische Elemente abhängig von ihrem z-Index um einen bestimmten Wert zu verschieben. Et voilà, ein parallaktischer 3D Effekt.

Sauvignon : Falsch positiv #tt Session 2014/07/10

In dieser Session mussten wir schmerzhaft feststellen, dass Anwendungen mit rein grafischem Output nur schwer automatisch zu testen sind.

Einige Fehler in unserer SVG Engine sind uns erst aufgefallen, nachdem wir die Ausgabe auf verschiedenen Geräten und damit mit unterschiedlichen Auflösungen getestet haben.

Hinzu gekommenen sind kleinere Features wie die Integration von Polygon und Polyline Elementen, die Interpretation von verschiedenen Line Caps bei Path Elementen und die Unterstützung von verschiedenen Farbformaten.