Der TFS in der Praxis

Transcription

Der TFS in der Praxis
Der TFS in der Praxis
Erfolgreiches Projektmanagement bei Zühlke
Der TFS in der Praxis
© Zühlke 2008
Agenda
•
Warm-Up
– Kennenlernen, Zielsetzung
•
Motivation
– Was bedeutet Projektmanagement eigentlich?
•
Der TFS in der Praxis
– Wie unterstützt der TFS das Projektmanagement und die
Entwickler?
•
Wrap-Up
– Zusammenfassung und Fragen
Der TFS in der Praxis
Folie 2
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Warm-Up
Der TFS in der Praxis
Folie 3
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Vorstellung Teilnehmer
•
Ihr Name
•
Ihr Unternehmen / Ihre Branche
•
Ihre Aufgaben
•
Ihre Erfahrungen in Bezug auf TFS
•
Ihre persönlichen Erwartungen an den Workshop
Der TFS in der Praxis
Folie 4
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Consulting Development Integration
Wir beraten,
entwickeln und
integrieren
aufgabengerecht –
mit überzeugender
Qualität und
Wirtschaftlichkeit.
•
Mehr als 5000 Projekte in
Europa realisiert
•
CHF 62 Mio. Umsatz
•
300 Mitarbeiter
•
In Zürich, Bern, Frankfurt,
Hannover, München und
London
•
Gründung 1968,
im Besitz von Partnern
•
ISO 9000 und 13485 zertifiziert
Der TFS in der Praxis
Folie 5
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Der TFS bei Zühlke
12/2008,
9/2006,
7/2006,
2005,
TechEd
Zühlke
Camp
Erstes
Projekt
Vielzahl
interner und
KundenProjekte
Der TFS in der Praxis
Folie 6
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Viele Einsatzgebiete bei Zühlke
EntwicklungsProjekte
Embedded
Software
Unterstützung
Spezielle
Projekte
Installation
Adaption
V-Modell XT (DE)
.NET
Testframework
Prozessdefinition
Testfallerstellung
Webanwendung
Training,
Coaching
Zühlke ProzessDefinition
Der TFS in der Praxis
Folie 7
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Ziele & Aufbau
Der Workshop hat das Ziel, zu vermitteln,
•
wie der TFS das tägliche Geschäft im
Projektmanagement und in der Entwicklung
unterstützen kann,
•
wie der TFS auf die eigenen Bedürfnisse angepasst
werden kann.
Aufbau des Workshops
•
Einleitung in Themengebiete durch Präsentation
•
Demonstration der Praxis direkt am TFS
•
Hands-On Übung in kleinen Gruppen
Der TFS in der Praxis
Folie 8
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Motivation
Der TFS in der Praxis
Folie 9
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übung 1: PL Aufgaben Brainstorming
•
Was sind die 10 wichtigsten Aufgaben eines
Projektleiters?
Der TFS in der Praxis
Folie 10
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übersicht TFS
Was bietet der TFS?
•
Zentrale Datenhaltung
•
Anpassbarkeit
•
Integrierter Prozess
•
•
Integriertes Tracking
Projektleitung eng
verzahnt mit Team
„Der Team Foundation Server stellt eine Plattform zur Verfügung,
die alle relevanten Daten für die effiziente Abwicklung von
Entwicklungsprojekten aufnehmen und aufbereiten kann. Es gibt
unterschiedliche Front-Ends, die auf die Daten zugreifen können.
Die einzelnen Projekt-Rollen werden dabei in Ihrer gewohnten ToolUmgebung optimal unterstützt. Die prominentesten Front-Ends sind
das Visual Studio und der Team System Web Access.“
Matthias Seeland, Zühlke
Der TFS in der Praxis
Folie 11
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übersicht TFS
…
Sharepoint
TFS
Rep. Services
Der TFS in der Praxis
Folie 12
SQL Server
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übersicht TFS
Visual Studio 2005/2008
Office System
MS Excel
Plug-in
VS Packages
MS Project
Plug-in
Command
Line
…
IE
…
Team Foundation Object Model (Managed API)
ASP.NET WS 2003/2008
SOAP / HTTP(S)
Team Foundation Integration Services
Eventing and
Notification Service
Linking Service
Registration
Service
Team Foundation Data Services
Work Item Service
WSS 3.0
Team
Portal
Web Parts
RepSvcs
Source Code
Control Service
Build Data Services
Reports
MSSQL/TCP
SQL2005/2008
Der TFS in der Praxis
Folie 13
Team Foundation Data-Tier
Work Items
SCC
Methodology
Build Data
Build Results
Test Results
Code Coverage
Static Analysis
Warehouse
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Der TFS in der Praxis
Der TFS in der Praxis
Folie 14
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Der TFS in der Praxis
•
Installation und Deployment
•
Teamprojekte bereitstellen
•
Source Control
•
Work Items & Work Item Types, Prozess
•
Share Point Portal
•
Reporting
•
Build & Test Management
•
Alerts
•
Tools und Gadgets
Der TFS in der Praxis
Folie 15
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Installation und Deployment
•
Zeitbedarf ca. 1 Tag
•
Trennung IIS und SQL-Server empfohlen
•
Installation von 2 Systemen empfohlen (Test /
Produktiv)
•
Backup & Restore einrichten und proben
– IIS (TFS, WSS)
– SQL-Server
•
Tipp: Streng nach Anleitung vorgehen.
Der TFS in der Praxis
Folie 16
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Installation und Deployment
Single Server Deployment
Dual Server Deployment
Der TFS in der Praxis
Folie 17
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Installation und Deployment
TFS Deployment Struktur (mit TFS Proxy Server)
Der TFS in der Praxis
Folie 18
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Teamprojekte bereitstellen
Das Team-Projekt ist die zentrale Schaltstelle des
Entwicklungsprozesses.
•
Anlegen eines Team-Projekts
•
Security und Group Membership
•
Areas und Iterations
Der TFS in der Praxis
Folie 19
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übung 2: Team Projekt administrieren
•
Einrichten von Benutzern
•
Definieren von Areas und Iterationen
Der TFS in der Praxis
Folie 20
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Source Control
TFS Source Control ist:
•
Die Ablösung von Visual Source Safe
•
Versionsverwaltung für Dateien
•
Merge Funktionalitäten für Text Dateien
Der TFS in der Praxis
Folie 21
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Source Control
Migration VSS auf TFS
Beispiel: Visual Source Safe Migration (Quellcode)
•
VSSConverter.exe von Microsoft
– 2 Modis für Analyse und Migration
– Migration inkl. Check-In History  Change Sets Erkennung
– User Mapping
Der TFS in der Praxis
Folie 22
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Source Control
Source Verwaltung im TFS
•
Source Control Explorer
•
Work Spaces
•
Check-In/Out und Merging
•
Changesets und Shelvesets
•
Source Control Explorer Settings
•
Checkin Policies
•
Labels
•
Branching und Merging
Der TFS in der Praxis
Folie 23
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übung 5: Source Control
•
Workspace kreieren
•
New Solution zum Source Code hinzufügen
•
Check-in / Check-out mit Work-Item Tracking
•
Check-in Policies einschalten
•
Branch & Merge
Der TFS in der Praxis
Folie 24
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Workitems & Template
Ein Work Item besteht aus
•
einer Menge von Datenfeldern
•
einer Benutzeroberfläche
•
einem Workflow
Der TFS in der Praxis
Folie 25
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Workitems & Template
Tracking
•z. B. Bug, Task, Change Request
Historie
•z. B. Meilenstein, Liefergegenstand
Traceability
•z. B. zu Anforderungen, Testfällen, Change Sets
Reporting
•z. B. Issues, Tasks, Goals,
Der TFS in der Praxis
Folie 26
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
SRCUM Crash-Course
Bild verfügbar auf
www.mountaingoatsoftware.com/scrum
Der TFS in der Praxis
Folie 27
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Workitems & Template
Am Beispiel von Scrum
Product
backlog item
Sprint
(Iteration)
BUG
Sprint
Retrospective
Weitere mögliche WIT
Sprint
backlog item
Der TFS in der Praxis
Folie 28
Test Case
…
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Workitems & Template
•
Verschiedene TFS Prozess Templates sind verfügbar
(MSF Agil, MSF CMMI, SCRUM, RUP etc.)
•
Ein Template ist eine Ordnerstruktur mit XML Dateien
•
Prozess Templates können angepasst werden
– Als Template (XML) mit Template Editor
– Als Instanz mit Process Template Editor pro Projekt
Der TFS in der Praxis
Folie 29
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übung 3: Work Item Playground
•
Basierend auf dem SCRUM Prozess sollen die
folgenden Elemente erstellt werden:
– 4 Product Backlogs
– Bestehendes Ressourcefile laden und anpassen
– Basierend auf bestehenden Ressourcefile neues
Ressourcefile für eine Sprache kreieren
– Übersetzungsvorschlag von Onlinedienst beziehen
– Differenzen bereinigen
– 3 Sprints a 2 Wochen Dauer
•
Start Sprint 1 mit 4 Sprint Backlogs Items
•
Sprint 1 durchspielen (Restaufwand etc.)
•
Hinzufügen eines Review-Feldes auf dem
Sprintbacklog Item
Der TFS in der Praxis
Folie 30
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Share Point Portal
Das Share Point Portal bietet
•
Zentrale Ablage von Dokumenten
•
Einfacher Check-In/Check-Out Menchanismus
Der TFS in der Praxis
Folie 31
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Share Point Portal
Dokumentenablage
Dokumenten Management (pro/contra)
WSS 3.0 (Windows Sharepoint Services)
+ Zugriff via Webbrowser (Kein VS erforderlich)
+ Versionierung mit WSS
+ Dokumenten Properties darstellen
- Integration mit Label und Branches
Version Control
+ Gleiche CM Basis wie Source Merging/Branching
+ Direkte Links zu Work Items möglich
- Nur read only Zugriff via Web
+ Mit TFS Powertools auch aus dem Fileexplorer
~ Abgleich mit WSS möglich
(TFS Migration and Synchronization Toolkit)
Der TFS in der Praxis
Folie 32
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Reporting
Reports
•
Können alle Daten aus den TFS-Datenbanken verwenden
•
Queries für das Tagesgeschäft
•
Excel für schnelle Auswertung
•
Reporting Services für standardisierte Reports
•
Tools von Drittherstellern
Der TFS in der Praxis
Folie 33
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Reporting
Quelle: MSDN
Der TFS in der Praxis
Folie 34
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Reporting
Flexibel eingesetzt
Queries
•Schnell erstellt, flache Listen, keine komplexen Abfragen  Tagesgeschäft
MS Excel
•Schnell erstellt, flache Listen, komplexere Abfragen, Grafiken  Tagesgeschäft
MS Project
•Schnell synchronisiert, zeitliche Darstellung  Tagesgeschäft
Reporting Services
•Zeitaufwändig, komplexe Reports  Informationsmanagement
Der TFS in der Praxis
Tools von Drittherstellern
•…
Folie 35
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übung 4: Reporting
•
Erstellen eines Reports der alle „Done“ Sprint
Backlog Items. Die Informationen „ID“, „Title“ und
„Review Note“ sollen dargestellt werden.
•
Exportieren eins Reports nach Excel für ein ReviewMeeting
Der TFS in der Praxis
Folie 36
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Build & Test Management
Die Build Automation diagnostiziert regelmässig den
Gesundheitszustand des Projekts
•
Team Build basiert auf MS Build
•
Die Datei TFSBuild.proj enthält alle wesentlichen
Einstellungen
•
Assistenten unterstützen bei der Erstellung von
Builds
•
Team Build integriert mit Work Items, Code
Coverage, Code Analysis und Test Cases
Der TFS in der Praxis
Folie 37
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Build & Test Management
Installation eines Build-Servers
•
Enthalten auf dem
TFS-Installationsmedium
(Optional)
•
Test Edition für Test während
eines Builds
•
Developer Edition für Code-Analyse
während eines Builds
Der TFS in der Praxis
Folie 38
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Build & Test Management
Anlegen von Builds
•
Build-Definitionen
•
Trigger
•
Build Agents
Continous Integration
•
Inklusive Tests und Code-Analyse
Der TFS in der Praxis
Folie 39
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Build & Test Management
Testautomation und -management sind die Basis für
die kontinuierliche Qualitätssicherung
Testarten
•
Unit Tests und Code Coverage
•
Web Tests
•
Load Tests
•
Ordered Tests
•
Manual Tests
Test Management
Der TFS in der Praxis
Folie 40
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Übung 5: Automatisierungen
•
Einrichten eines automatisierten Builds (optional mit
UnitTests) für Localizer Solution.
Der TFS in der Praxis
Folie 41
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Alerts
Alerts können u.a. auf die folgenden Ereignisse
definiert werden.
•
Work Item Mutationen
•
Check In Notifikationen
– Check In allgemein
– Policiy overrides
•
Build Events (Fail, Success etc)
•
Portal Notifikationen
Der TFS in der Praxis
Folie 42
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Tools und Gadgets
•
TFS Admin Tool 1.3
– Team Projekt Rollenzuweisung (TFS, WSS, Reporting Services)
– www.codeplex.com/tfsadmin
•
TFS Powertools
–
–
–
–
–
–
Alert Editor
Windows Shell Integration
Build Notification
Process Template Editor
Check-In Policy Pack
uvm.
Der TFS in der Praxis
Folie 43
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Tools und Gadgets
•
TFS Migration and Synchronization Toolkit
– WI und SourceControll synchronisieren (bidirektional)
– www.codeplex.com/MigrationSyncToolkit
•
TFS Migration Tool for Rational® ClearCase®
– Basierend auf dem TFS Migration and Synchronization Toolkit
•
Team Foundation Sidekicks 2.2
– Code Review
– Shelveset, Labels, History, Workspace, Status
•
TeamCompanion 2.0
– Outlook Integration für Reports und WIQ
– Offlinefähig
Der TFS in der Praxis
Folie 44
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Wrap-Up
Der TFS in der Praxis
Folie 45
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Warp-Up
Source Control
Best Practices
•
Verknüpfung von Changesets mit Work Items über
Policies empfehlenswert
•
Branch-/Merge-Strategie festlegen und befolgen
•
Disziplin im Offline-Modus walten lassen –
Vermeiden von Umbenennungen und
Verschiebungen
•
Baseless Merges sind nur von der Kommandozeile
möglich und sparsam zu verwenden
Der TFS in der Praxis
Folie 46
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Wrap Up
Work Item & Templates
Best Practices: Evaluation von Process Templates
•
Analyse eigenes Vorgehen
•
Analyse der verfügbaren Prozess-Templates
•
Auswahl eines geeigneten Prozess-Templates
•
Identifikation von Quickwins
•
Moderate Anpassung des Templates (WIT-Feldern /
Prozess)
•
Projekt durchführen
•
Review / Lessons learned
Der TFS in der Praxis
Folie 47
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Wrap Up
Work Item & Templates
Best Practices beim definieren von Work Item Types
•
Eindeutige Feldnamen / Ref-Namen (Namen können nachträglich nicht
geändert werden!)
•
Festlegung des Reportings gut überlegen, kann nicht mehr geändert
werden!
•
Nicht (mehr) genutzte Felder in Formular ausblenden
•
Custom Controls nicht in Web-Access verfügbar
•
Keine Formatierung von „Description“-Feldern
•
WITs nicht auf dem Server bearbeiten, besser in SourceControl halten
•
Statusmaschine übersichtlich halten!
•
„Batch“-Bearbeitung über (XML-) Editor, Einzelbearbeitung mit Process
Editor
•
Der TFS in der Praxis
Folie 48
Hochladen des XMLmit Process Editor wegen Validierung
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Wrap Up
Share Point Portal
Best Practices für die Dokumentenablage
•
Einfache Möglichkeit ein Projekt Portal zu erstellen.
•
Wenn Offline Verfügbarkeit gefordert ist, können die
Dokumente im SourceControl abgelegt werden.
•
Abhängig von Projektart und Mitarbeitern
Der TFS in der Praxis
Folie 49
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Wrap Up
Reporting
•
Weitreichende Möglichkeiten für komplexe Reports
•
Einfache Reports sind schnell zu erstellen
•
Komplexe Reports erfordern Know-How der
Reporting Services
•
„Einfache“ Reporting Möglichkeiten
•
Technologie wird nicht verborgen
•
Datawarehousing-Wissen sehr hilfreich
•
In grossen Projekten ist ein dedizierter „Toolsmith“
empfehlenswert
Der TFS in der Praxis
Folie 50
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Wrap Up
Build & Test Management
Best Practices Testing
•
Sehr gute Integration ins Team System
•
Umfangreiche Testmöglichkeiten nutzen!
•
Tester Edition für viele Testarten erforderlich, auch
auf dem Build Server
•
Strukturierung von Tests in der Tester Edition für
Testmanagement nutzbar
Der TFS in der Praxis
Folie 51
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008
Quellen
Brian Harry
•http://blogs.msdn.com/bharry/default.aspx
Rob Caron
•http://blogs.msdn.com/robcaron/default.aspx
Team WIT Tools
•http://blogs.msdn.com/teams_wit_tools/default.aspx
Patterns & Practices
Der TFS in der Praxis
Folie 52
•http://www.codeplex.com/VSTSGuidance
Hansjörg Scherer
Marco Balzarini
© Zühlke 2008