Trello, was ist das?
Mit Trello, einer Applikation in der Cloud lassen sich kleinere Projekte sehr einfach strukturieren und managen. Der Umgang mit Trello ist schnell erlernt, gibt es doch in Trello nur drei Grundelemente:
- Boards
- Listen
- Karten
Doch dazu später mehr.
Das Wort „Trello“ stammt von „trellis“, das Gitter ab. Ein Trello-Board ähnelt im Aussehen auch einem Gitter, mit seinen Listen und Karten.
Trello wurde von Mitarbeitern der amerikanischen Firma „Fog Creek Software“ entwickelt. Technisch basiert es auf der Serverseite auf einer Mongo-Datenbank (dokumentenorientierte NoSQL-Datenbank) und Node.js, mit dem sich Netzwerkapplikationen in JavaScript auf einem Server entwickeln lassen. HAProxy kommt zum Einsatz, um die Last auf die Trello-Webserver zu verteilen. Die hauptspeicherresidente Key-Value-Datenbank REDIS wird als Cache benutzt.
Auf der Webclient-Seite kommt Backbone.js zum Einsatz. Backbone.js ist besonders für die Entwicklung von Single-Page-Applikationen geeignet, bei denen die Inhalte der Webseite dynamisch via AJAX nachgeladen wird.
Die Kommunikation zwischen Client und Server erfolgt über die RESTful API von Trello, bzw. das Pushen von Informationen zum Webclient erfolgt über WebSockets und ersatzweise über AJAX-Polling, falls WebSockets nicht verfügbar ist.
Eine sehr schöne Übersicht über die Architektur von Trello erhält man mit der Prezi-Präsentation „Trello Architecture 2013“.
Die Einsatzmöglichkeiten von Trello
Trello ist jedoch nicht nur als Projektmanagement-Tool geeignet, sondern kann allgemein als Organisationswerkzeug dienen. Egal, ob man Ideen in einem Trello-Board sammeln möchte, ob man seine Blogplanung damit durchführt oder generell alle anstehenden beruflichen und privaten Aufgaben damit verwaltet, Trello ist dafür ein gut geeignetes Werkzeug. Auch ein Wochenplan lässt sich sehr gut in Trello abbilden.
Neben der Web-Oberfläche gibt es auch für alle gängigen mobilen Geräte entsprechende Trello-Apps.
Seit Juni 2015 ist Trello auch in Deutsch verfügbar.
Doch nun kurz einige Informationen zu den drei Grundelementen von Trello.
Trello-Boards
Ein Board in Trello entspricht einem Projekt oder Thema und stellt damit die oberste Ebene der Trello-Struktur dar. Nach dem Anlegen auf Knopfdruck kann ein Boardtitel vergeben und festgelegt werden, ob das Board öffentlich oder privat ist. Ein öffentliches Board ist für jedermann einsehbar. Ein Beispiel für ein öffentliches Trello-Board ist das Entwickler-Board von Trello selbst: https://trello.com/b/nC8QJJoZ/trello-development. In diesem Board werden u.a. Funktionserweiterungen angekündigt, wie z.B. ein Trello Kanal, der über IFTTT (IF This Then That) mit anderen Kanälen, wie z.B. Twitter verbunden werden kann. So könnte z.B. über IFTTT eine Trello-Aktivität einen Post in Twitter generieren.
Listen in einem Trello-Board
Jedes Board enthält eine oder mehrere Listen. Eine Liste könnte ein Thema repräsentieren oder einen Workflow-Status. So könnte ein Board z.B. drei Listen enthalten mit den Titeln „Zu erledigen“, „In Arbeit“, „Erledigt“. Diese entsprechen dann Abarbeitungsstati für die verschiedenen Aufgaben. Bei einem Board als Ideensammlung würden die Listen den verschiedenen Ideenthemen entsprechen. Jede Liste kann mehrere Karten enthalten.
Karten in einer Trello-Liste
Eine Karte stellt als Organisationselement der untersten Stufe im Sinne des Projektmanagements eine Aufgabe dar. Oder eine Idee im Rahmen des Ideenmanagements.
Jede Karte verfügt über die folgenden Elemente:
- Titel
- Beschreibung
- Einen Termin
- Mitglieder
- Labels
- Checklisten
- Aktivitäten
- Anhänge
- Verlaufsprotokoll
Für die Formatierung der Texte in den Elementen „Beschreibung“ und „Aktivität“ kommen Elemente der Auszeichnungssprache „Markdown“ zum Einsatz. So wird z.B. ein Wort, das in jeweils 2 Sternen eingeschlossen ist in fetter Schrift dargestellt: **Fett** führt zur Darstellung Fett.
Befinden sich in den Anhängen Bilder, dann kann eines davon auch als Titelbild für die betreffende Karte festgelegt werden.
Beispiel:
Projekte und Vorgänge in DOCUframe
Auch mit DOCUframe der Fa. GSD läst sich eine Projektverwaltung aufbauen, gibt es doch die Klassen „Projekt / Project“ und „Vorgang / Incident“.
Die Schnittstellen von Trello
Trello stellt neben einer RESTful Web API auch eine Email-Schnittstelle zur Verfügung. Jedes Board in Trello hat eine eindeutige Email-Adresse. In den Eigenschaften eines Trello-Boards lässt sich nun definieren, in welcher Liste des Boards automatisch eine neue Karte erstellt werden soll, sobald eine Email an das Board eintrifft.
Übrigens, wer die RESTful API einmal ausprobieren möchte nutzt am besten den Trello API Explorer von Harald Wartig.
Ein Beispiel:
DOCUframe übermittelt eine Aufgabe an Trello
Mit dieser Email-Schnittstelle besteht eine einfache Möglichkeit aus DOCUframe heraus eine Aufgabe an ein Trello-Board zu übermitteln. Aus DOCUframe wird über die DOCUcontrol-Funktion „DBEMailSend“ eine Email an das Trello-Board geschickt. Nach einigen Minuten, immer abhängig von der aktuellen Belastung der Trello-Server erscheint im Trello-Board in der festgelegten Liste eine neue Karte. Der Betreff aus der DOCUframe-Email wird zum Karten-Titel und der Inhalt des Mail-Body zur Beschreibung der Karte. Email-Anhänge werden ebenfalls als Anhänge zu der Karte hinzugefügt.
Labels, also farbige Markierungen der Karten lassen sich auch emailgesteuert zuordnen. Z.B. fügt „#DOCUframe“ in der Betreffzeile der Karte das Label „DOCUframe“ hinzu. Ebenso kann der Verantwortliche für die Karte auf diesem Weg eingetragen werden. Hier genügt die Ergänzung „@Benutzername_in_Trello“, also z.B. „@oliverfischer1“. Mein Benutzername in Trello lautet „oliverfischer1“.
Beim Klick auf den Button „An Trello senden“ im DOCUframe-Dialog wird ein Email-Dokument erstellt und zusammen mit den Dokumenten (im Beispiel nur ein Bild-Dokument), die mit dem Vorgang verbunden sind als Email an das Trello-Board geschickt:
VOID Click( HANDLE Dialog, Vorgang &Object ) EMail Mail; DBOBJECTSET Dokumente; STRING Anhang; INT i; DBSearchDocs( Object.Dokumentordner, "", TRUE, Dokumente ); FOR ( i = 1; i <= DBObSetGetCount( Dokumente ); i++ ) IF( i > 1 ) Anhang += "|"; ENDIF Anhang += "<" + DBOGetOID( Dokumente[ i ] ) + ">"; NEXT DBEMailSend( "absender@musterdomain.de", "boardemailadresse@boards.trello.com", Object.Name, Object.Beschreibung, Anhang, Mail ); RETURN();
Wie schon beschrieben erscheint nach einigen Minuten ein neuer Eintrag mit den Inhalten aus der DOCUframe-Email:
Und nun viel Spass mit Trello und DOCUframe!
[of_autor]
Hallo Oliver, kennst du Stackfield (stackfield.com)? Wir haben früher Trello benutzt und sind vor Kurzem geswitched.
Hallo Hans,
nein, habe ich noch nicht gekannt. Vielen Dank für den wertvollen Hinweis. Ich werde mir auf jeden Fall Stackfield anschauen.
Hallo,
ich bin Neuling auf dem Gebiet Docuframe.
Gibt es vielleicht auch die Möglichkeit von Docuframe via REST auf Trello oder anderen (eigenes System) zuzugreifen?
Kann Docuframe ggf. auch JSON verstehen?
Hallo Thomas,
out-of-the-box gibt es keinen REST-Client (auch keinen SOAP-Client – DOCUframe kann aber SOAP-Server sein) oder JSON-Unterstützung in DOCUframe. Aktuell wird nur das Erzeugen und Parsen von Daten im XML-Format unterstützt.
Man müsste mit Hilfe der Programmiersprache DOCUcontrol und der DOCUcontrol-Funktion HTTPGetResponse selbst etwas programmieren. Ich bin im Oktober bei GSD und werde das Thema ansprechen. Evtl. ist ja etwas in Planung.
Viele Grüße,
Oliver.