Team Foundation Server

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Team Foundation Server
Basisdaten

Entwickler Microsoft
Erscheinungsjahr 2006[1]
Aktuelle Version 2018 Update 2
(7. Mai 2018[2])
Aktuelle Vorabversion 2018 Update 3 RC
(7. August 2018[3])
Betriebssystem Microsoft Windows
Programmiersprache C++
Kategorie Softwareentwicklung
Lizenz proprietär
deutschsprachig ja
visualstudio.com/de/tfs/

Der Team Foundation Server (TFS) von Microsoft ist eine Windows-Plattform für kollaborative Softwareprojekte. Über den TFS können Projekte geplant, erstellt und verwaltet werden. Er kann dabei bis zu 2000 Entwickler und 500 Projekte verwalten.[4][5] Für kleine Projekte gibt es die Express-Edition, welche für maximal fünf Benutzer kostenlos erhältlich ist.[6] TFS stellt sich in der Geschichte der Quelltext-Verwaltungssysteme von Microsoft als der Nachfolger von Microsoft Visual SourceSafe dar.

Unterstützung des Entwicklungsprozesses[Bearbeiten | Quelltext bearbeiten]

Auf Basis der Prozessvorlagen unterstützt der TFS verschiedene Entwicklungsverfahren. Vorlagen für die Standardverfahren CMMI, Agile Softwareentwicklung oder Scrum werden mitgeliefert. Andere Hersteller bieten weitere Prozessvorlagen an.[7] 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.[8]

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

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 externe Datenquellen.[10]

Features[Bearbeiten | Quelltext bearbeiten]

Versionskontrolle[Bearbeiten | Quelltext bearbeiten]

TFS integriert eine eigene Versionskontrolle für den Quellcode der verwalteten Projekte. Die gängigen Operationen eines Versionskontrollsystems werden unterstützt.

Build[Bearbeiten | Quelltext bearbeiten]

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.

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.[11] 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[Bearbeiten | Quelltext bearbeiten]

Über ein integriertes Data-Warehouse werden automatisch Berichte (“reports”) erstellt (unter anderem mit Metriken, Fehlerstatistik, Leistungsanalyse)[12]. 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.[13]

Benutzerverwaltung[Bearbeiten | Quelltext bearbeiten]

Der TFS kann entweder als Server in einem Active Directory oder einzeln 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.[14]

Serveraufbau[Bearbeiten | Quelltext bearbeiten]

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:

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[Bearbeiten | Quelltext bearbeiten]

Es gibt ein Hilfsprogramm, das Interoperabilität zwischen TFS und anderen Versionskontrollsystemen 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.[15]

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Literatur[Bearbeiten | Quelltext bearbeiten]

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

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Teamwork mit Visual Studio 2005 (heise.de)
  2. Team Foundation Server 2018 Update 2: Anmerkungen zu dieser Version, abgerufen am 20. August 2018
  3. Team Foundation Server 2018 Update 3 RC Release Notes, abgerufen am 20. August 2018
  4. Übersicht über Team Foundation
  5. Team Foundation Server – Planungsroadmap
  6. Team Foundation Server Express 2013 (heise.de)
  7. Process Templates and Tools
  8. Customizing MSF Process Guidance
  9. Team Foundation-Prozessleitfäden
  10. Work with VSTS (or TFS) Work Items from Excel without installing Team Explorer, veröffentlicht 7. August 2017, abgerufen 20. August 2018
  11. 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.
  12. Team Foundation Server-Berichterstellung
  13. Verwenden von Berichten und Metriken
  14. Verwalten von Berechtigungen
  15. Modellbasierte Tool-Integrations- und Datenaustauschplattform agosense.symphony (agosense.com)