WELTOFFEN EINSATZ DES TFS IN HETEROGENEN UMGEBUNGEN (.NET UND JAVA) - WIE MAN DEN TEAM FOUNDATION SERVER IN BEIDEN WELTEN NUTZEN KANN
AGENDA Motivation TFS Überblick TFS Architektur & Clients Planung Entwicklung Build Test Fazit 2
MOTIVATION 3
MOTIVATION 4
MOTIVATION Beide haben ihre Vorteile Kein technischer Konflikt 5
MOTIVATION Wer ist betroffen? Entwickler Konfigurations- und Buildmanager Tester DevOps Projektleiter 6
TFS ÜBERBLICK 7
APPLICATION LIFECYCLE MANAGEMENT PROCESS OVERVIEW 8
APPLICATION LIFECYCLE MANAGEMENT SOFTWARE DEVELOPMENT CYCLE Business Analyst (1) Specify Project Manager (5) Deploy (2) Plan Architect Administrator (4) Test (3) Implement Tester Developer 9
APPLICATION LIFECYCLE MANAGEMENT SOFTWARE DEVELOPMENT CYCLE (5) Deploy (1) Specify (2) Plan (4) Test (3) Implement 10
TFS ÜBERBLICK Version Control Requirements Management Project Management Analytics Customizable Processes Build Automation Test Case Management End-to-End Traceability Lab Management E X T E N S I B L E A P I s 11
TFS ÜBERBLICK Team Foundation Server 12
TFS ARCHITEKTUR & CLIENTS 13
14 ARCHITEKTUR Quelle: http://msdn.microsoft.com/de-de/library/vstudio/gg413285.aspx
ARCHITEKTUR Team Foundation Client Tier Version Control Proxy Build Machine Compiler Windows / Mac OS X / Linux Microsoft Office 2010 / 2013 Web Browser Visual Studio / Team Explorer (Everywhere) Windows 7, 8 Windows Server 2008 SP2, 2008 R2 SP1, 2012 Linux / Mac OS X Team Foundation App Tier Windows Server 2008 SP2, 2008 R2 SP1, 2012 64 Bit, IIS 7.0 App Tier Standby Server Report Client Team Foundation Data Tier Windows Server 2008 R2 SP1, 2012 Database Engine, Full-Text Search Database Mirror 15
CLIENTS VISUAL STUDIO 16
CLIENTS TEE Plugin for Eclipse Originally developed by Teamprise Acquired by Microsoft Provides Team Explorer Functionality for Eclipse based IDEs Examples of Functionality Checkin / Checkout / Shelvesets / Checkin Policies Work Items (incl. Hierarchies) Build Process Management (Ant / Maven) 17
ECLIPSE VS. VISUAL STUDIO 18
ECLIPSE VS. VISUAL STUDIO 19
WEITERE CLIENTS Command Line (tf.exe, ) Power Tools (tfpt.exe) Team Foundation Sidekicks Web Access Microsoft Test Manager Weitere IDEs (Visual Studio 20XX; Legacy Support, ) Microsoft Office (MS Excel, MS Project, AIT WordToTFS, ) Phone Apps 20
PLANUNG 21
PLANUNG Seit TFS 2012 Fokus auf Web Access Technologieunabhängig Basierend auf Work Items Business Object, in der TFS Datenbank gespeichert Anpassbar, eigener Lebenszyklus Beispiele User Story Requirement Bug Task 22
PLANUNG - EINSTIEG 23
BACKLOG 24
TASK BOARD 25
ENTWICKLUNG 27
SOURCE CONTROL - KONZEPTE Workspaces Changesets History / Labels Policies Shelvesets Branches 28
WORKSPACES Visual Studio / Eclipse TFS Workspace Database Get Check-in Check-out / Lock C:\TeamProject\MyApp $/TeamProject/MyApp/ Workspace Mapping 29
BUILD 31
BUILD INFRASTRUCTURE SINGLE MACHINE CONFIGURATION (DEMO) Team Project Collection Build Controller Build Agent(s) 32
BUILD INFRASTRUCTURE FARM CONFIGURATION Team Project Collection Build Controller Symbol Server Drop Server [ ] Team Project Collection Build Controller Build Agent Build AgentBuild Agent Build AgentBuild Agent 33
BUILD AUSFÜHRUNG Trigger Queue Select Manual Team Project Collection Build Controller Report Gated Checkin Schedule Publish Build Agent Publish Checkin Drop Server Symbol Server 34
BUILD WORKFLOW Clean build directory Prepare Workspace Get Sources Extract and Set Version Numbers Create Label Parallel Thread 1: For Each Configuation For Each Project Compile solutions/projects End For Each Project Run Tests Parallel Thread 1: End For Each Configuration Parallel Thread 2: Find Last Good Build Label Parallel Thread 2: Associate WIs Publish to drop location Gated Checkin 35
LINUX Clean build directory Prepare Workspace Get Sources Extract and Set Version Numbers Create Label Parallel Thread 1: For Each Configuation Linux Configuration? For Each Project Run Linux Build Compile solutions/projects End For Each Project Run Tests Parallel Thread 1: End For Each Configuration Parallel Thread 2: Find Last Good Build Label Parallel Thread 2: Associate WIs Publish to drop location Gated Checkin 36
TEST 38
TEST TOOLS Testplanung Work Item Basiert Microsoft Test Manager (Windows Client) Testausführung Microsoft Test Manager (Windows Client) Web Test Runner (Plattformübergreifend) 39
RICH BUGS Log Files ADDITIONAL INFO Automatic Transparent Reliable System Info WITHOUT ADDITIONAL EFFORTS FOR TESTERS! VM Snapshot Rich Bugs Code Coverage Record / Playback nur für.net Anwendungen! Intelli- Trace Screen Shots & Video Debug- Info System Events 40
FAZIT 42
ZUSAMMENFASSUNG Windows Systeme erforderlich Serveradministration unter Windows Web Tools (Planung, Testausführung, Reports, ) plattformübergreifend Mehrere IDEs auf verschiedenen Betriebssystemen unterstützt (Visual Studio, Eclipse, ) Größter Anpassungsbedarf im Build Management 43
AUSBLICK TFS 2013 Git Support on Premise Integration InRelease für Deployment Erweiterte Planungsfeatures Features weitgehend einsetzbar für mehrere Zielplattformen 44
WEITERE RESSOURCEN Brian Harry s Blog: http://blogs.msdn.com/b/bharry/archive/2013/07/04/team-explorer-everywhere-2012- update-available.aspx Community TFS Build Extensions: http://tfsbuildextensions.codeplex.com/ Microsoft Visual Studio Team Foundation Server 2012 Build Extensions: http://visualstudiogallery.msdn.microsoft.com/45b4e378-5b81-4186-9b7f-21cc5c2f743d Setting up an Ant or Maven build in TFS: http://msdn.microsoft.com/de-de/library/jj155784.aspx Visual Studio Team Foundation Server Team Project and Collection Guidance: http://msdn.microsoft.com/magazine/gg983486.aspx Team Foundation Build Customization Guide Supported Configurations and Platforms for Coded UI Tests and Action Recordings: http://msdn.microsoft.com/en-us/library/dd380742.aspx 45
WIR SUCHEN VERSTÄRKUNG! WIR SUCHEN Entwickler Berater 46
WIR UNTERSTÜTZEN SIE KONTAKT Thomas.Ruemmler@aitgmbh.de +49 151 55052628 AIT GmbH & Co. KG Leitzstr. 45, 70469 Stuttgart www.aitgmbh.de BERATUNG Agile ALM und TFS.NET und Architektur ENTWICKLUNG Dienstleister für individuelle Lösungen mit.net und Azure AIT GmbH & Co. KG Alle genannten und gezeigten Marken oder Warenzeichen sind eingetragene Marken oder eingetragene Warenzeichen ihrer jeweiligen Eigentümer und ggf. nicht gesondert gekennzeichnet. Aus dem Fehlen der Kennzeichnung kann nicht geschlossen werden, daß es sich bei einem Begriff oder einem Bild nicht um eine eingetragene Marke oder ein eingetragenes Warenzeichen handelt. AIT GmbH & Co. KG Ihre Software effizienter entwickelt 48