Post on 10-Feb-2018
transcript
Marc Müller, 4tecture GmbH | Ognjen Bajic, Ekobit
Software Engineering war nie spannender.
AgendaAlternative Work Item Clients
Word Integration von Work Items
Outlook Integration
Versionsverwaltung
Branching Guidance, GitFlow
Versionsverwaltung der Oracle Datenbankobjekte
Community Build Extensions
Zeiterfassung mit TFS/VSO
Software Engineering war nie spannender.
Nützliche Erweiterungen zum bestehenden Work Item Tracking• Requirements Specification, Test Specification, Test Reporting
• Verarbeitung von Fliesstext, dokumentenbasiertes Arbeiten
• Offline Review / Dokument Review Workflow
• Archivierung der Spezifikation
Integrationspunkte / Anpassbarkeit• WI Felder Tabellen Zellen
• Anpassbare Layouts
• Verschiedene Synchronisationsmodi
Work Item Integration in Word
Software Engineering war nie spannender.
Leichtgewichtiges
Requirements Engineering
mit Word
Download: http://www.aitgmbh.de/nc/downloads/team-
foundation-server-tools/ait-wordtotfs.html
Demo - WordToTfs
Software Engineering war nie spannender.
Ein alternativer Client für TFS/VSO?
Im Produkt:
• Team Explorer oder Visual Studio
• Web Access
Warum nicht die Anwendung die wir alle haben – Outlook?
Software Engineering war nie spannender.
Outlook Objekte und Work Items verbinden
Work Items aus Email erstellen
Verlinkung mit Outlook Terminen, Erinnerungen, usw.
Vollwertiger VSO/TFS Client
Work Items – Abfragen, Volltextsuche, Gruppierung …
Berichte, Feedback, Agile PM Werkzeuge …
VSO/TFS aus Outlook zugreifen
SmartOutlook4TFS™
Software Engineering war nie spannender.
Arbeit mit TFS/VSO
aus Outlook
Demo - TeamCompanion
Software Engineering war nie spannender.
“Your branch distance from main is equal to your level of
insanity”
- anonymous
Branching Guidance
Software Engineering war nie spannender.
Visual Studio ALM Rangers Projekthttp://vsarbranchingguide.codeplex.com
• Branching Guidance
• TFVC
• NuGet Dependency Management
Branching Guidance
Software Engineering war nie spannender.
Branching Strategien
• Stabiler Main Branch
• Dev Branch
• Kurzlebige Feature Branches
• Feature-Toggle in Dev Branch
• Release Branch für Hotfixes
Software Engineering war nie spannender.
Why using Release Isolation 1/2
main release
no branch
Share release with users
fix bug
bug
reported
CI CI CI
testing
workspace
changeset
check-ins
bug fix
?
merge how with what?
1 2
3
4
5
6
Image Source: Branching and Merging Guide v3
Software Engineering war nie spannender.
Why using Release Isolation 2/2
main
release
no branch
Share release with users
bug
reported
CI CI CI
testing
Changeset / check-ins
1 2
3
CI
release bug fix
5
fix bug
4
RI
6
FI
Image Source: Branching and Merging Guide v3
Software Engineering war nie spannender.
Git Flow
VS Extension for Git Flow (Branching Model)• By Jakob Ehn
• https://visualstudiogallery.msdn.microsoft.com/27f6d087-9b6f-46b0-b236-d72907b54683
Software Engineering war nie spannender.
masterdevelopfeature-xfeature-y release-1.0 hotfix
Software Engineering war nie spannender.
Demo – GitFlow with Visual Studio
Software Engineering war nie spannender.
Entwicklungslebenszyklus von Datenbanken richtig behandeln
Datenbankobjekte versionieren
Änderungen in isolierten Umgebungen verwalten und testen
Änderungen in eine andere Umgebung mit Hilfe von dem
Versionsverwaltungssystem übernehmen
Versionsverwaltung der Oracle Datenbankobjekte
Software Engineering war nie spannender.
Versionsverwaltung der Oracle Datenbankobjekte
SQL Developer
VS Tools for Oracle
TOAD for Oracle Source Control for Oracle
Datenbankobjekte werden
versioniert?
nur SQL Skripte
Verlinkung von changesets
mit Work Items?
Unabhängig von der
Client-Anwendung?
TFS VC und/oder GIT? TFS VC und GIT Nur TFS VC TFS VC, GIT in Beta
Software Engineering war nie spannender.
• Entwicklung in der Dev Datenbank
• Übernahme der Änderungen in die
Main Datenbank
Demo – TOAD für Oracle
Software Engineering war nie spannender.
Build / Community Build Extensions
• Workflow Extensions / Activities sind kompliziert
• Community Build Extensions• https://github.com/tfsbuildextensions/CustomActivities
• Pragmatische Build Anpassungen mittels PowerShell• PowerShell ist zukunftssicher
Software Engineering war nie spannender.
Community Activities• AssemblyInfo - Getting started with the AssemblyInfo activity
• AWS
• CatNetScan - Getting started with the CatNetScan activity
• ClickOnce
• Code Coverage - Failing builds based on code coverage percentage
• CodeMetric - Getting started with the CodeMetric and
CodeMetricHistory activity
• CompareLabels
• DateAndTime - Getting started with the DateTime activity
• Email - Getting started with the email activity
• ExecuteWorkflow
• ExpandVariables
• File - Getting started with the file activity
• FileCopyRemote - Getting started with FileCopyRemote
• Ftp – Getting started with Ftp activity
• FxCop - Getting started with the fxcop activity
• Guid - Getting started with the GUID activity
• Hello - A sample to show basic structure of an activity, just writes a
message to the build log
• HyperV - Getting started with the Hyper-V activity
• IIS7
• ILMerge
• InvokePowerShellCommand – Getting started with the
InvokePowerShellCommand activity
• InvokeRemoteScript - Getting started with InvokeRemoteScript
• IsBuildRunning
• IsSourceChanged
• LabManagement• CheckIfEnvironmentIsLocked
• GetEnvironment
• GetEnvironmentLockedByBuildNumber
• ListEnvironments
• ListLabSystems
• LockEnvironment
• PauseEnvironment
• RenameSnapshot
• ShutdownEnvironment
• UnlockEnvironment
• WaitForEnvironmentToBecomeAvailable
• nUnit – Getting started with the nUnit activity
• RoboCop - Getting started with the RoboCop activity
• SetBuildAgentStatus
• SharePointDeployment – Getting started with the
SharePointDeployment activity
• SSH
• Sonar - Getting started with the Sonar activity
• SPDisposeCheck – Getting started with the SPDisposeCheck activity
• SqlExecute
• StatLight
• StyleCop – Getting started with the StyleCop activity
• TFS Activities• AssociateMergedChangesetsAndWorkItems - Getting started with
AssociateMergedChangesetsAndWorkItems
• AgentSettingsTags - Add and remove Tags during the build for Agent Settings
• BuildAgentTags - Add and remove Tags from a build agent
• BuildReport
• BuildStepDuration - Getting Started with BuildStepDuration activity
• BuildWorkspace
• GetBuild
• GetBuildAgentMachineName - Get the physical machine name of and agent
• GetBuildController
• GetBuildDefinition
• GetBuildServer
• GetChangeset
• GetChangesetItem
• GetCodeCoverageTotal - Getting Started GetCodeCoverageTotal activity
• GetLastGoodBuild
• GetLatestBuildDetail
• GetLatestChangeSet
• GetLocalWorkspace
• GetMSBuildProperties
• GetPendingChanges
• GetValueFromRegistry
• GetVersionControlLabel
• GetWebAccessUrl
• QueueBuild
• QueryBuildAgentStatus
• SetBuildAgentStatus
• StopBuild
• TFSSource
• TFSVersion - Getting started with the TfsVersion activity
• VB6 - Getting started with the VB6 activity
• VirtualPC - Getting started with the VirtualPC activity
• VSDevEnv
• Windows Azure - Getting started with the Windows Azure activities
• WriteToFile - Getting started with the writetofile activity
• Wmi
• WorkItemTracking
• XML
• XMLFile
• Zip - Getting started with the Zip activity
Software Engineering war nie spannender.
Build Skript mit VariablenSet-AssemblyVersionNumbers
$env:TF_BUILD_BUILDNUMBER
$env:TF_BUILD_SOURCESDIRECTORY
$digitsSetInAssemblyVersion
Powershell Build Extensions
Software Engineering war nie spannender.
Demo – PowerShell Build Extensions
Software Engineering war nie spannender.
Software Engineering war nie spannender.
Zeiterfassung mit TFS/VSODEFINIEREN
LIEFERN
BETRIEB
MEAN TIME TO REPAIR
CYCLE TIME
Sprint Monitor
Software Engineering war nie spannender.
Imaginet TimeSheet
SSW TIMEPRO
TFS ASAP
TFS TIMETRACKER
Zeiterfassung mit TFS/VSO
Software Engineering war nie spannender.
Zeiterfassung Lösungen für TFS/VSO
Imaginet
TimeSheet
SSW TIMEPRO TFS TIMETRACKER TFS ASAP
Lokaler TFS und
Visual Studio Online nur lokaler TFS Server nur lokaler TFS Server
Eingebettet in Web
Access?
Die Zahlen können
automatisch
ermittelt werden?
Freie Lizenz/Trial?Frei
bis 5 Anwender
Frei
bis 5 Anwender30 Tage Trial 30 Tage Trial
Software Engineering war nie spannender.
Demo – Zeiterfassung mit TFS/VSO
Marc MüllerPrincipal Consultant, MVPmmueller@4tecture.ch@muellermarc
4tecture GmbHAathalstrasse 84CH-8610 Usterwww.4tecture.ch
Ognjen BajicSenior Consultant, VS ALM MVPobajic@ekobit.com@ognjenb
Ekobit d.o.o.Koturaska 69HR-10000 Zagrebwww.ekobit.hr