Azure DevOps Server

Azure DevOps Server
Basisdaten

EntwicklerMicrosoft
Erscheinungsjahr2006[1]
Aktuelle Version2020
(6. Oktober 2020)
BetriebssystemMicrosoft Windows
ProgrammierspracheC++
KategorieSoftwareentwicklung
Lizenzproprietär
deutschsprachigja
azure.microsoft.com

Der Azure DevOps Server, vormals Team Foundation Server (TFS), von Microsoft ist eine Plattform für kollaborative Softwareprojekte. Über ihn können Projekte geplant, erstellt und verwaltet werden. Er kann dabei bis zu 2000 Entwickler und 500 Projekte verwalten.[2][3] Für kleine Projekte gibt es die Express-Edition, welche für maximal fünf Benutzer kostenlos erhältlich ist.[4] TFS läuft auf Servern unter Windows und stellt sich in der Geschichte der Quelltext-Verwaltungssysteme von Microsoft als der Nachfolger von Microsoft Visual SourceSafe dar. Mit Version 2019 wurde das Produkt in Azure DevOps Server umbenannt.[5]

Unterstützung des Entwicklungsprozesses

Auf Basis der Prozessvorlagen unterstützt der Azure DevOps Server verschiedene Entwicklungsverfahren. Vorlagen für die Standardverfahren CMMI, Agile Softwareentwicklung oder Scrum werden mitgeliefert. Andere Hersteller bieten weitere Prozessvorlagen an.[6] Alle Prozessvorlagen liegen in Form von XML-Dateien vor, so dass grundsätzlich ein (XML-)Editor für deren Bearbeitung ausreicht. Für eine einfachere und schnellere Anpassung steht allerdings ein Werkzeug zur Verfügung, mit dem die Anpassungen direkt in der Entwicklungsumgebung vorgenommen werden können. Die beim Prozess mitgelieferte Dokumentation („Process Guidance“) liegt statisch vor, kann aber dank verfügbaren Quelldateien angepasst und neu erstellt werden.[7]

Bestandteile einer Prozessvorlage sind Work Items, Reports, Abfragen und diverse Dokumente.[8]

Die involvierten Teammitglieder können mit verschiedenen Werkzeugen (zum Beispiel Microsoft Visual Studio, Microsoft Excel, Microsoft Project, Microsoft InfoPath, Microsoft Word oder Microsoft Outlook) Prozessschritte bearbeiten und die entsprechenden Arbeitsschritte (“workflows”) anstoßen. Die genannten Programme integrieren sich direkt in den TFS, so dass auf einer einheitlichen Plattform gearbeitet werden kann.

Während Entwickler die TFS-Office-Integration gewöhnlich mit Visual Studio installieren, war für Nicht-Entwickler lange die Installation des Team Explorer inklusive Visual Studio Shell notwendig – seit TFS 2015 reicht die leichtgewichtigere Team Foundation Server Office Integration um beispielsweise Excel oder Project zur Zusammenarbeit mit TFS oder Visual Studio Team Services (VSTS) zu nutzen. Alternativ kann die gegenüber früheren Versionen deutlich leistungsfähigere Weboberfläche von TFS und VSTS mittels Browser genutzt werden. Aufgabenabhängig bietet die Verwendung beispielsweise von Excel weiterhin deutliche Vorteile, unter anderem durch die Möglichkeit auch offline zu arbeiten und höhere Arbeitseffizienz bei der Änderung großer Datenmengen oder der Verwendung externer Datenquellen.[9]

Features

Versionsverwaltung

TFS integriert eine eigene Versionsverwaltung für den Quelltext der verwalteten Entwicklungsprojekte. Die gängigen Operationen eines zentralisierten Versionsverwaltungssystems (vergleichbar Apache Subversion) werden unterstützt.

Build

Die Buildengine des TFS heißt TFBuild (auch: Team Foundation Build oder Team Build) und ermöglicht das automatische Erstellen ("build") des entwickelten Produkts, optional auch mit Dokumentation. Dabei kann man auch Unittests ausführen und Statistiken bzw. Berichte (“reports”) generieren lassen. Außerdem ist es möglich, externe Anwendungen zu integrieren, um so beispielsweise erzeugte Assemblies zu analysieren oder Security-Richtlinien zu überprüfen.

Die Versionen 2005 und 2008 von TFBuild basieren nur auf dem Build-Tool MSBuild. Version 2010 nutzt zusätzlich die Windows Workflow Foundation, um Builds zusammen auszuführen.[10] Eine Neuerung von Version 2015 ist es, alternativ zu MSBuild auch andere Build-Engines wie etwa Apache Ant oder Apache Maven für die Builds zu benutzen.

Zumindest die Version 2015 von TFBuild ist nicht nur mit Team Foundation Server, sondern auch unter Visual Studio Online verwendbar.

Reports

Über ein integriertes Data-Warehouse werden automatisch Berichte (reports) erstellt (unter anderem mit Metriken, Fehlerstatistik, Leistungsanalyse).[11] Die Berichte sind für unterschiedliche Zielpersonen zugeschnitten (Kostenverantwortliche, Entwickler, Projektleiter) und geben jeweils einen Überblick über den Projektstand. Technische Grundlage ist ein sogenannter Report Server, der seine Ausgabe über einen Microsoft SharePoint-Server generiert. Dadurch können die Berichte sowohl direkt als auch in Microsoft Project, Excel und innerhalb von Visual Studio benutzt werden.[12]

Benutzerverwaltung

Der TFS kann entweder als Server in einem Active Directory oder einzeln (Standalone) betrieben werden. Für die Benutzerverwaltung kennt der Server die Windows-Benutzer und Gruppen sowie weitere Gruppen im TFS. Beim Anlegen eines Projekts werden vier Gruppen automatisch erstellt: Lesezugriff (Readers), Schreibzugriff (Contributors), Administratoren (Project Administrators) und eine interne Gruppe zum Buildmanagement (Build Services).

Die Berechtigungen für den SharePoint-Server sowie das Reporting System müssen vom Administrator von Hand gesetzt werden. Aus diesem Grund empfiehlt es sich, Windows-Gruppen zu definieren und zu verwenden.[13]

Serveraufbau

Der TFS ist auf dem Prinzip einer Schichtenarchitektur entwickelt worden. Anwendungs- und Datenschicht können auf einem einzelnen Server oder auf separaten Servern installiert werden.

Der TFS benötigt folgende Software:

  • Microsoft SQL Server für die Datenhaltung und das Data-Warehouse (x86 oder x64)
  • Windows Server 2003, Windows Server 2008 oder Windows Server 2012 für die Anwendung (x86 oder x64)
  • TFS-Build entweder integriert oder separat
  • Microsoft Internet Information Server und Windows SharePoint Services
  • Microsoft Report Server

Ab der Version 2010 kann der Team Foundation Server auch auf einem Client-Betriebssystem installiert werden. Hierfür wird eine Basis-Konfiguration angeboten, welche die Express-Version des Microsoft SQL Servers zur Datenhaltung benutzt. Diese Installationsform ist für Einzelentwickler gedacht, die den Team Foundation Server benutzen wollen. Microsoft möchte hierdurch den Team Foundation Server als Nachfolger des Produkts Microsoft Visual SourceSafe etablieren, welches nicht mehr von Microsoft gepflegt wird.

Die einzelnen Komponenten, mit Ausnahme des Windows-Server-Betriebssystems und des SQL Servers, sind Bestandteil des Produkts.

Interoperabilität

Es gibt ein Hilfsprogramm, das Interoperabilität zwischen TFS und anderen Versionsverwaltungssystemen herstellt. Ein solches gibt es für Git als plattformübergreifendes Java-Hilfsprogramm (Git-tf) oder als reines Windows-Programm (Git-tfs). Auch eine Austauschplattform für PTC-Integrity ist verfügbar.[14]

Siehe auch

Literatur

  • Roland Puffer, Markus Wippel: Arbeiten mit dem Teamfoundation Server 2010. Microsoft Press Deutschland 2010, ISBN 978-3-86645-441-5.
  • Steven St. Jean u. a.: Professional Team Foundation Server 2013. John Wiley & Sons, Indianapolis 2014, ISBN 978-1-118-83634-7.

Weblinks

Einzelnachweise

  1. Teamwork mit Visual Studio 2005 (heise.de)
  2. Übersicht über Team Foundation
  3. Team Foundation Server – Planungsroadmap
  4. Team Foundation Server Express 2013 (heise.de)
  5. Holger Schwichtenberg: Azure DevOps ist der Nachfolger von Visual Studio Team Services und Team Foundation Server. In: Heise Online. 10. September 2018, abgerufen am 3. April 2019.
  6. Process Templates and Tools
  7. Customizing MSF Process Guidance
  8. Team Foundation-Prozessleitfäden
  9. Work with VSTS (or TFS) Work Items from Excel without installing Team Explorer, veröffentlicht 7. August 2017, abgerufen 20. August 2018.
  10. Sayed Ibrahim Hashimi, William Bartholomew: Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build. Second Edition, Microsoft Press, Redmond 2010, ISBN 978-0-7356-4524-0, S. xxi.
  11. Team Foundation Server-Berichterstellung
  12. Verwenden von Berichten und Metriken
  13. Verwalten von Berechtigungen
  14. Modellbasierte Tool-Integrations- und Datenaustauschplattform agosense.symphony (agosense.com)