dahcon.de Implements Business-IT

ALM im Detail

Unsere Anwendungsentwicklung

Sie haben so viele Visionen, wie Sie in Ihrem wachsenden Unternehmen IT-Strukturen schaffen wollen?
Sie erkennen Ausbaumöglichkeiten in Ihrer IT-Organisation?
Dann sprechen Sie uns an.
Wir konzipieren für Sie eine optimierte IT-Organisation, so dass Sie Ihre Unternehmensziele endlich verwirklichen können.

Individuelle Anwendungsentwicklung für Ihr Business

Unser Ziel ist es, praxisorientierte und kundenfreundliche Individuallösungen zu entwickeln, die Ihre individuellen Bedürfnisse absichern.

Unsere Professionalität zeichnet sich dadurch aus, dass wir über ein starkes Netzwerk vieler Entwickler aus allen möglichen Branchen verfügen. Deshalb können wir auf excellente Qualität unserer Leistungen setzen.

Application Lifecycle Management

Für Sie organisieren wir uns nach den bestmöglichen Prinzipien im Projektmanagement, welche sich aus vielen Grundprinzipien zusammensetzen. Hierzu zählen die bekannten Methodiken wie BPMN, Agile und SCRUM. Aus Erfahrung vereinen wir diese; abhängig von allen individuellen Aufgaben und der allgemeinen Umgebung. Dies sieht schaubildlich wie folgt aus:
ALM Allgemein der dahcon GmbH

ALM

Als die drei Säulen des Application Lifecycle Managements sind die Nachverfolgbarkeit von Änderungen, die Ablaufautomatisierung sowie die Kontrolle und Auswertung des Projektfortschritts zu sehen. Da ALM kein eigenes Vorgehensmodell mit sich bringt, kümmert es sich um die Koordination der einzelnen Teil-Workflows und Aktivitäten innerhalb eines Projektes. Daneben unterstützt es die Einhaltung des Vorgehensmodells aktiv und fordert sie, wo nötig, auch ein. ALM stellt außerdem einen Bezug zwischen verschiedenen Artefakten eines Projektes her, gleichzeitig werden diese auch verwaltet. Zusammen mit der automatischen Erhebung von Kennzahlen wird so ein umfassendes Reporting über den aktuellen Status eines Projektes möglich. Mithilfe dieser drei Säulen soll es zukünftig einfacher werden, Geschäftsanforderungen, Entwicklung und Betrieb von Software besser aufeinander abzustimmen.
Quelle: Microsoft

Details zum Projektmanagement

ALM vereinfacht das Project Management durch eine bessere Nachverfolgbarkeit von Änderungen, Anforderungen und Arbeitspaketen. Zusätzlich stellt die Workflow-automatisierung die Einhaltung der definierten Vorgehensweise sicher, und das Reporting ermöglicht eine fortlaufende, auf objektive Zahlen gestützte Verfolgung des Projektfortschrittes.

Während des gesamten Projektes wird der Kunde oder Auftraggeber aktiv in das Projekt einbezogen. Er bewertet lauffähige Zwischenstände der Software und kann bereits während des Projektes steuernd eingreifen. Der regelmäßige Austausch mit dem Kunden verhindert Konflikte, die bei der Abnahme einer entwickelten Software auftreten können.

Die häufige Unsicherheit in Projekten, dass Hürden bei der Integration in eine bestehende Produktlandschaft auftreten, nimmt durch das regelmäßige automatische Bauen, Testen und Ausrollen einer Software ab. Mögliche Probleme werden schon während der Entwicklung erkannt und können sofort behoben werden.
Quelle: Microsoft

Details zum Requirements-Management

Das zentrale Erfassen und Verwalten von Anforderungen ist einer der Schwerpunkte von ALM. Neben dem Herstellen von Beziehungen zwischen verschiedenen Requirements und anderen Artefakten erleichtert vor allem die Unterstützung bei der Verfolgung des Realisierungsgrades die alltägliche Arbeit innerhalb dieser Disziplin.

Einer Anforderung können die zur Umsetzung notwendigen Arbeitspakete zugeordnet werden. Beim nächtlichen Bauen der Software werden alle Änderungen in der Versionskontrolle und alle mit ihnen verknüpften Arbeitspakete aufgelistet. Die Buildnummer eines Builds wird in allen verknüpften Artefakten vermerkt. Über die ursprüngliche Anforderung und ihre verknüpften Arbeitspakete kann verfolgt werden, in welchem Build eine bestimmte Anforderung realisiert wurde, um diese zu testen oder dem Kunden zu präsentieren.

Diese Informationen können ohne zusätzlichen Kommunikationsaufwand aus der ALM Plattform gewonnen werden.
Quelle: Microsoft

Details zum Design & Architecture

Die zentrale Verwaltung der Anforderungen und Artefakte erleichtert auch hier die Arbeit. Eine nahtlose Integration der Modellierungswerkzeuge in die ALM-Plattform vereinfacht die Kommunikation mit den anderen Disziplinen. Alle Architektur- und Designdokumente werden innerhalb einer ALM Plattform zentral abgelegt - für jeden Beteiligten einfach zugänglich.

Durch die Schaffung verschiedener Abstraktionslevel können komplexe Gesamtsysteme in kleinere und weniger komplexe Teilsysteme herunter gebrochen werden. Bei dieser Arbeit werden Softwarearchitekten und Designer von verschiedenen Werkzeugen innerhalb ihrer ALM Plattform unterstützt.
Quelle: Microsoft

Details zum Development

Der hohe Grad der Integration verschiedener Softwaretools in die ALM-Plattform unterstützt die Entwickler bei der Implementierung und Qualitätskontrolle. Die zentrale Verwaltung aller Anforderungen, Arbeitspakete und gefundenen Fehler, ein integrierter Testrahmen und automatisierte Build-Workflows - all diese Punkte erlauben es, mehr Zeit in die eigentliche Aufgabe zu investieren: die Entwicklung hochwertiger Software.

Eine ganze Reihe von Funktionalitäten innerhalb von ALM-Plattformen unterstützt Softwareentwickler bei ihrer täglichen Arbeit. Beispielsweise die syntaktischen Analyse des Codes, bei der neben der Einhaltung von Namenskonventionen auch auf die Performance und Sicherheit des Codes geachtet wird. Desweiteren gibt es automatische Unit-Tests, die sicherstellen, dass einmal vorhandene Funktionalität nicht wieder verloren geht.

Die graphische Darstellung der Codezeilen, die von einem Unit Test bei dessen Ausführung durchlaufen wurden, erleichtert es sicherzustellen, dass alle relevanten Codestellen durch einen Test abgedeckt sind.
Quelle: Microsoft

Details zum Commit & Communication-Management

In der agilen Softwareentwicklung und dem -engineering stellt das Commit & Communication-Management eine tragende Kommunikationsplattform zwischen aktiven Kunden und uns dar.

Durch diese Plattform erreichen wir alleine durch das Erfassen der täglichen Leistungen und sämtliche Meetings, Risiken, Dokumentationen uvm. ein chronologisches Protokoll zum Software-Fortschritt.

Hier findet eine Kollaboration im direkten Kontakt mit allen Stakeholdern statt. So können wir gewährleisten, dass alle Informationen zentral auf einer gemeinsamen Plattform im strukturierten Rahmen gesammelt und strukturiert verwaltet werden.

Details zum QA & Test-Management

Durch den Einsatz von ALM Werkzeugen wird dem Test von Software und der Kontrolle deren Qualität ein sehr viel höheres Maß an Aufmerksamkeit geschenkt. Qualitätssichernde Maßnahmen können fest in den Entwicklungsjob verankert werden. Der integrierte Testrahmen und die zentrale Verwaltung aller Anforderungen und gefundenen Fehler erlauben auch dem Testteam ein effizienteres Arbeiten.

Immer wenn eine Veränderung am Code durchgeführt wurde, stellen so genannte Richtlinien sicher, dass bestimmte Qualitätsmerkmale erfüllt werden. Eine solche Richtlinie, auch Policy genannt, kann beispielsweise die Ausführung von Unit Tests oder die Durchführung einer syntaktischen Analyse einfordern - mit dem Ziel, dass sich keine vermeidbaren Fehler in die Versionskontrolle und ins Projekt einschleichen können.

Eine ALM-Plattform bietet nicht nur die Möglichkeit zur Durchführung und Verwaltung von Unit Tests, sondern auch anderen Tests. Dazu zählen manuelle Tests, bei denen der Tester eine Anwendung bedient oder Web & Load Tests, bei denen das Verhalten von webbasierten Anwendungen getestet wird.
Quelle: Microsoft

Details zum Release-Management

Im Rahmen von ALM wird frühzeitig und regelmäßig eine lauffähige Version der in der Entwicklung befindlichen Software erstellt und in den Testbetrieb überführt. Ein automatisierter Build-Job zeigt dabei täglich - auf Wunsch auch kontinuierlich -, ob sich der Code nach den vollzogenen Änderungen noch bauen lässt. Zu jeder neu implementierten Funktionalität können entsprechende Tests geschrieben und in die Liste der bei jedem Build durchzuführenden Tests aufgenommen werden. Diese werden fortan bei jedem Build ausgeführt. Sie stellen sicher, dass die ursprünglich gewünschte Funktionalität nicht verloren geht.

Nach Ausführung von Build und Tests wird der aktuelle Stand in der Testumgebung vom Entwickler getestet. Die Erkenntnisse über Schwierigkeiten und Hindernisse fließen so kontinuierlich in die laufende Entwicklung ein. Die Integration einer Versionskontrolle in ALM-Plattformen, in Kombination mit der Möglichkeit, Codeänderungen mit zentral verwalteten Artefakten zu verknüpfen, erleichtert die Verwaltung verschiedener Versionsstände.

Vorgenommene Änderungen werden nachvollziehbar. Eine große Rolle spielt dabei auch die Einsatzmöglichkeit verschiedener Branching- und Merging-Strategien. Das Schaffen paralleler Entwicklungszweige ist gerade im Zusammenspiel von Build-und Deployment-Worfkflows wichtig.
Quelle: Microsoft

Details zu Business Prozesse & Modelle Notation (BPMN)

Eine integrierte Unterstützung verschiedener, auch eigener Vorgehensmodelle unterstützt bei der Einhaltung eines definierten Worfkflows. Automatismen und Auswertungen ermöglichen zukünftig die Projektsteuerung. Über eine gemeinsame ALM Plattform ist es möglich, dem Zusammenspiel der verschiedenen Projektgruppen, einen Worfkflow zu hinterlegen. Dieser kann sowohl einem gängigen Vorgehensmodell entsprechen, als auch eigene Elemente und Best Practices enthalten.

Die Flexibilität bei der Gestaltung und Anpassung der Worfkflows erhöht sich deren Akzeptanzgrad. Die Automatisierung minimiert den Mehraufwand zur Einhaltung der Worfkflows.
Quelle: Microsoft