Agile Entwicklung.

Scrum, Kanban und Lean liegen im Trend und sind als agile Methoden in der Projektarbeit mittlerweile etabliert. Agile Softwareentwicklung ist hierbei eine Entwicklungsmethode die schnell auf veränderte Anforderungen reagieren kann, da die Entwicklung in vielen kleinen und abgeschlossen Zyklen abläuft und eine erhöhte Kommunikation zwischen den Entwicklern stattfindet. Im Artikel gebe ich ein Kurzüberblick über Funktionen und Rollen des IBM Enterprise Lifecycle Management (ELM).

Agile Leitsätze

Das Fundament der agilen Entwicklung bilden vier Leitsätze. Im Februar 2001 wurden sie von 17 Erstunterzeichnern als Agiles Manifest folgendermaßen formuliert:

Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt:

  • Individuen und Interaktionen stehen über Prozessen und Werkzeugen
  • Funktionierende Software steht über einer umfassenden Dokumentation
  • Zusammenarbeit mit dem Kunden steht über der Vertragsverhandlung
  • Reagieren auf Veränderung steht über dem Befolgen eines Plans

Wasserfallmethode

In der klassischen Softwareentwicklung wird oft die Wasserfallmethode eingesetzt. Diese Methode mit ihren linearen Stufen eignet sich am besten für Projekte mit festen und stabilen Anforderungen und einer Produktdefinition, die sich nicht ändert.

Wasserfallmethode

Agile Methode

Die Agilität steht für Flexibilität und Anpassungsfähigkeit an Projektänderungen. Der Fokus liegt auf dem zu erstellenden System. Das Projekt wird in seiner Gesamtheit angegangen, anstatt es in sequenzielle, eigenständige Phasen aufzuteilen. Die Anforderungsbeschreibungen sind kurz und knapp aus Anwendersicht formuliert und im Rahmen eines Backlogs priorisiert. Ein hohen Stellenwert hat die Verbesserung der Zusammenarbeit und Kommunikation zwischen Teams, die normalerweise nicht zusammenarbeiten. Vorteil ist ein Verkürzen von Release-Zyklen und ein schnelleres Time-to-Market. Frühzeitig wird das Feedback der Kunden in den Entwicklungsprozess integriert.

Agile Methode mit Incremental Delivery
weiter

Enterprise Lifecycle Management Plattform und OSLC

Im Artikel betrachte ich näher die IBM Engineering Management Lösung (ELM). Sie basiert auf einer skalierbaren und erweiterbaren Plattform, die unter jazz.net beheimatet ist. Die Plattform beinhaltet eine Integrationsarchitektur, die die Teilnahme von nicht auf der plattformbasierenden Produkten oder auch von Dritthersteller-Produkten ermöglicht.

Open Services for Lifecycle Collaboration (OSLC)

Die Plattform verwendet die Open Services for Lifecycle Collaboration (OSLC). Der Industriestandard unter https://open-services.net beinhaltet die Spezifikationen für die Interoperabilität von ALM, PLM und DevOps.

OSLC ist inspiriert von der Internetarchitektur. Durch die Schnittstellen können Lifecycle-Tools auf Ressourcen zugreifen und auf Ressourcen verweisen, auf denen sich die Daten befinden.

Mit IBM ELM können verschiedene Entwicklungsmethoden verwendet werden. Dazu zählen traditionelle, agile und hybride Methoden, wie auch Scaled Agile (SAFe).

Enterprise Lifecycle Management – Look & Feel

Das IBM Enterprise Lifecycle Management beinhaltet Requirements Management, Workflow Management, Test Management, System Design, Software Configuration Management und Build Management.

Ein sogenanntes Lifecycle Project kann aufgebaut werden und beinhaltet folgende Verbindungen.

Open Services for Lifecycle Collaboration (OSLC)
weiter

Rollen und ihre Ansichten

Jede Rolle in der agilen Entwicklung benötigt im Projekt eine bestimmte Ansicht bzw. eine Arbeitsoberfläche. Ich stelle die einzelnen Rollen und die jeweiligen Ansichten im IBM Engineering Lifecycle Management Tool vor.

Stakeholder

Der Stakeholder beauftragt die Umsetzung des Projekts und gibt Requests im Formular ein. Daneben verfolgt der Stakeholder die Backlog Stories und die Arbeiten des Teams.

Stories

Product Owner

Der Product Owner vertritt den Auftraggeber. Er teilt die Produkt-Vision mit dem Scrum-Team, damit alle Teammitglieder jederzeit darauf verweisen können. Daneben füllt er das Backlog, indem er Epics und Storys aus vorhandenen Quellen importiert und Storys einzeln hinzufügt. Das Backlog wird ebenfalls vom Product Owner verfeinert und priorisiert.

Backlog

Der Product Owner plant die Releases, so dass die Zeitpläne klar sind und Sprints ganze, überschaubare Arbeiten hervorbringen. Er überprüft die Arbeitsfortschritte des Teams.

Arbeitsansicht für den Product Owner

Scrum Master

Der Scrum Master sorgt dafür, dass die Scrum-Regeln im Projekt eingehalten werden. Er hilft dem Team bei der Erreichung seiner Lieferziele, sucht ständig nach möglichen Verbesserungen und ist verantwortlich für die Beseitigung von Hindernissen für den Teamfortschritt. Für die tägliche Scrum Besprechung benötigt er Informationen über die aufgetretenen Hindernisse, wie auch den Status der geplanten Items in der Taskboard-Ansicht.

Scrum Master Sprint Backlog und Impediment

Infos über den Entwicklungsfortschritt kann der Scrum Master im Dashboard sehen.

Dashboard für den Scrum Master

Überprüfungen für jeden Sprint am Ende jedes Sprints reflektieren, was funktioniert hat und was nicht.

Retrospective und Snapshot-Compare für Scrum Master

Developer

In der Ansicht „Meine Arbeit/Inbox“ kann der Entwickler nachverfolgen, wofür er verantwortlich ist und wann er mit anderen zusammenarbeiten muss. Er kann die eingebauten Funktionalitäten für Source Control Management (SCM) verwenden oder hat eine Integrationsmöglichkeit zu anderen Entwicklungswerkzeugen wie GIT oder SVN. Daneben kann der Entwickler in seinem gewohnten IDE arbeiten, wie beispielsweise eclipse oder Visual Studio. Im Werkzeug können auch Regeln festgelegt werden, die dem Entwickler bei seiner Arbeit unterstützen.

Entwickler Inbox und Build

Tester

Der Tester kann den Testplan an spezifische Prozess- oder Qualifikationsstandards anpassen. Daneben ist auch ein schneller manueller Test möglich. Das Werkzeug bietet eine Gesamtübersicht über Testpläne und einen detaillierten Ausführungsstatus.

Testcase und Test Excecution

Das Team bekommt den Fortschritt in Echtzeit dargestellt.

Dashboard für Tester

Fazit

Die IBM Engineering Lifecycle Management Lösung besticht dadurch, dass sie skalierbar und integriert ist und auf einer offenen Softwareentwicklungsplattform basiert. Es können Dritthersteller-Produkte, wie auch Open-Source-Lösungen (z.B. GIT oder Subversion) angebunden werden. Daneben werden agile Ansätze wie Scrum, Kanban und Scaled Agile Framework (SAFe) unterstützt. Die Lösung kann on-premise und auch in der Cloud laufen. Besonders positiv sehe ich die jeweiligen Dashboards, die für die Beteiligten einen sehr guten Einstieg und auch Transparenz für das Projekt bieten.

Was beachtet werden sollte: Die Application Lifecycle Management (ALM)-Lösung ist eine Enterprise Lösung und bedarf etwas Aufwandes für die Installation und Konfiguration. Auch sollte eine gewisse Lernzeit in der Kick-off-Phase eingeplant werden, um die wichtigen Funktionalitäten bestmöglichst kennenzulernen und zu verwenden.

weiter

Impressum

Hubert Spieß
Reventlowstraße 5
80805 München
Tel. 0175 7281914
Internet: www.hubert-spiess.de
E-Mail: mail@hubert-spiess.de

Datenschutzhinweis

Erhebung und Speicherung personenbezogener Daten sowie Art und Zweck von deren Verwendung beim Besuch der Website. Beim Aufrufen der Website hubert-spiess.de werden durch den auf Ihrem Endgerät zum Einsatz kommenden Browser automatisch Informationen an den Server unserer Website gesendet. Diese Informationen werden temporär in einem sog. Logfile gespeichert. Folgende Informationen werden dabei ohne Ihr Zutun erfasst und bis zur automatisierten Löschung gespeichert:

IP-Adresse des anfragenden Rechners, Datum und Uhrzeit des Zugriffs, Name und URL der abgerufenen Datei, Website, von der aus der Zugriff erfolgt (Referrer-URL), verwendeter Browser und ggf. das Betriebssystem Ihres Rechners sowie der Name Ihres Access-Providers.

Die genannten Daten werden durch uns zu folgenden Zwecken verarbeitet: Gewährleistung eines reibungslosen Verbindungsaufbaus der Website, Gewährleistung einer komfortablen Nutzung unserer Website, Auswertung der Systemsicherheit und -stabilität sowie zu weiteren administrativen Zwecken.

Die Rechtsgrundlage für die Datenverarbeitung ist Art. 6 Abs. 1 S. 1 lit. f DSGVO. Unser berechtigtes Interesse folgt aus oben aufgelisteten Zwecken zur Datenerhebung. In keinem Fall verwenden wir die erhobenen Daten zu dem Zweck, Rückschlüsse auf Ihre Person zu ziehen.

Weitergabe von Daten

Eine Übermittlung Ihrer persönlichen Daten an Dritte zu anderen als den im Folgenden aufgeführten Zwecken findet nicht statt. Wir geben Ihre persönlichen Daten nur an Dritte weiter, wenn: Sie Ihre nach Art. 6 Abs. 1 S. 1 lit. a DSGVO ausdrückliche Einwilligung dazu erteilt haben, die Weitergabe nach Art. 6 Abs. 1 S. 1 lit. f DSGVO zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen erforderlich ist und kein Grund zur Annahme besteht, dass Sie ein überwiegendes schutzwürdiges Interesse an der Nichtweitergabe Ihrer Daten haben, für den Fall, dass für die Weitergabe nach Art. 6 Abs. 1 S. 1 lit. c DSGVO eine gesetzliche Verpflichtung besteht, sowie dies gesetzlich zulässig und nach Art. 6 Abs. 1 S. 1 lit. b DSGVO für die Abwicklung von Vertragsverhältnissen mit Ihnen erforderlich ist.

Betroffenenrechte

Sie haben das Recht:

gemäß Art. 15 DSGVO Auskunft über Ihre von uns verarbeiteten personenbezogenen Daten zu verlangen. Insbesondere können Sie Auskunft über die Verarbeitungszwecke, die Kategorie der personenbezogenen Daten, die Kategorien von Empfängern, gegenüber denen Ihre Daten offengelegt wurden oder werden, die geplante Speicherdauer, das Bestehen eines Rechts auf Berichtigung, Löschung, Einschränkung der Verarbeitung oder Widerspruch, das Bestehen eines Beschwerderechts, die Herkunft ihrer Daten, sofern diese nicht bei uns erhoben wurden, sowie über das Bestehen einer automatisierten Entscheidungsfindung einschließlich Profiling und ggf. aussagekräftigen Informationen zu deren Einzelheiten verlangen;

gemäß Art. 16 DSGVO unverzüglich die Berichtigung unrichtiger oder Vervollständigung Ihrer bei uns gespeicherten personenbezogenen Daten zu verlangen;

gemäß Art. 17 DSGVO die Löschung Ihrer bei uns gespeicherten personenbezogenen Daten zu verlangen, soweit nicht die Verarbeitung zur Ausübung des Rechts auf freie Meinungsäußerung und Information, zur Erfüllung einer rechtlichen Verpflichtung, aus Gründen des öffentlichen Interesses oder zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen erforderlich ist;

gemäß Art. 18 DSGVO die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen, soweit die Richtigkeit der Daten von Ihnen bestritten wird, die Verarbeitung unrechtmäßig ist, Sie aber deren Löschung ablehnen und wir die Daten nicht mehr benötigen, Sie jedoch diese zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen benötigen oder Sie gemäß Art. 21 DSGVO Widerspruch gegen die Verarbeitung eingelegt haben;

gemäß Art. 20 DSGVO Ihre personenbezogenen Daten, die Sie uns bereitgestellt haben, in einem strukturierten, gängigen und maschinenlesebaren Format zu erhalten oder die Übermittlung an einen anderen Verantwortlichen zu verlangen;

gemäß Art. 7 Abs. 3 DSGVO Ihre einmal erteilte Einwilligung jederzeit gegenüber uns zu widerrufen. Dies hat zur Folge, dass wir die Datenverarbeitung, die auf dieser Einwilligung beruhte, für die Zukunft nicht mehr fortführen dürfen und

gemäß Art. 77 DSGVO sich bei einer Aufsichtsbehörde zu beschweren. In der Regel können Sie sich hierfür an die Aufsichtsbehörde Ihres üblichen Aufenthaltsortes oder Arbeitsplatzes oder unseres Firmensitzes wenden.

Widerspruchsrecht

Sofern Ihre personenbezogenen Daten auf Grundlage von berechtigten Interessen gemäß Art. 6 Abs. 1 S. 1 lit. f DSGVO verarbeitet werden, haben Sie das Recht, gemäß Art. 21 DSGVO Widerspruch gegen die Verarbeitung Ihrer personenbezogenen Daten einzulegen, soweit dafür Gründe vorliegen, die sich aus Ihrer besonderen Situation ergeben oder sich der Widerspruch gegen Direktwerbung richtet. Im letzteren Fall haben Sie ein generelles Widerspruchsrecht, das ohne Angabe einer besonderen Situation von uns umgesetzt wird.

Möchten Sie von Ihrem Widerrufs- oder Widerspruchsrecht Gebrauch machen, genügt eine E-Mail mail@hubert-spiess.de

Datensicherheit

Wir bedienen uns geeigneter technischer und organisatorischer Sicherheitsmaßnahmen, um Ihre Daten gegen zufällige oder vorsätzliche Manipulationen, teilweisen oder vollständigen Verlust, Zerstörung oder gegen den unbefugten Zugriff Dritter zu schützen. Unsere Sicherheitsmaßnahmen werden entsprechend der technologischen Entwicklung fortlaufend verbessert.

Aktualität und Änderung dieser Datenschutzerklärung

Diese Datenschutzerklärung ist aktuell gültig und hat den Stand Mai 2018. Durch die Weiterentwicklung unserer Website und Angebote darüber oder aufgrund geänderter gesetzlicher beziehungsweise behördlicher Vorgaben kann es notwendig werden, diese Datenschutzerklärung zu ändern. Die jeweils aktuelle Datenschutzerklärung kann jederzeit auf der Website unter Datenschutzhinweis von Ihnen abgerufen und ausgedruckt werden.

Hinweis: Basistemplate ist von HTML5 UP und lizenziert unter Creative Commons Attribution 3.0 License.