SlideShare a Scribd company logo
1 of 18
Download to read offline
1
Sponsors & Organizers
getlatestversion.it
3
Gaetano Paternò
tanopaterno@gmail.com
@tanopaterno
Continuos Integration for
Xamarin with Visual Studio
Team Services
Overview
• E’ comune per gli sviluppatori di lavorare in
parallelo a progetti software.
Ad un certo punto, è necessario integrare tutti
questi flussi di lavoro paralleli in una base.
• Continuous Integration (CI) ci aiuta ad evitare le
complessità di integrazione attraverso la fusione
dei cambiamenti, apportati al codice da ogni
sviluppatore, su una base code comune continua.
• Ciò risulta in una base di codice coeso e stabile.
Components
• Version Control
Consolida tutto il codice di un
progetto in un unico repository
condiviso e mantiene una
cronologia completa di tutte le
modifiche apportate ai file.
• Continuous Integration Server
Il CI è responsabile della raccolta
tutti i manufatti di un progetto
(codice sorgente, immagini, video,
database, test automatizzati, etc.),
della compilazione
dell'applicazione e dell'esecuzione
dei test automatizzati.
CI Flow
• Ogni sviluppatore mantiene una copia del
codice sorgente sulla propria macchina.
• Una volta che le modifiche sono pronte,
vengono “committate” sul repository
centrale, così che possano essere
condivise con il resto del team.
• Si parla di unit test in quanto le funzionalità del
programma vengono scomposte in
comportamenti che possono essere testati come
singole unità.
• È possibile generare rapidamente progetti di test
e metodi di test dal codice oppure creare
manualmente i test necessari.
• Con lo sviluppo basato su test, gli unit test
vengono creati prima di scrivere il codice e
quindi vengono usati sia come
documentazione di progettazione
sia come specifiche funzionali.
Unit Test
Version Control
Visual Studio Team Service
and Team Foundation Server
Git
SVN
Components
Continuous Integration
Visual Studio Team Service
and Team Foundation Server
Visual Studio Team Services
and Jenkins
Git And Jenkins
• Visual Studio Team Services (VSTS) e Team
Foundation Server (TFS) sono gli strumenti di
Microsoft per la continuous integration, il
monitoraggio delle attività, la pianificazione Agile
e include strumenti di reporting e di controllo delle
versioni.
• VSTS fornisce servizi via cloud.
Non richiede hardware o infrastrutture dedicate e
si può accedere da qualsiasi luogo attraverso i
browser.
• TFS è progettato per server Windows locali e vi si
accede attraverso una rete locale o una
connessione VPN.
VSTS and TFS
• Utilizzare l'IDE di vostro gradimento
sfruttando il plug-in per Eclipse,
IntelliJ, Android Studio, Visual Studio,
Visual Studio Code e altro ancora.
• Sviluppare in Java, C #, PHP o
qualsiasi altro linguaggio moderno e
costruire per applicazioni per Linux,
Mac, Windows, iOS e Android.
VSTS and TFS
DEMO
Extensions
• Supporto per app Android,
Cordova, iOS, OS X, Unity,
Windows e Xamarin
• Report sugli arresti anomali, live e
affidabili
• Commenti e suggerimenti in app
da utenti reali
• SDK open source in grado di
riconoscere il codice in esecuzione
nelle tue app
• Integrazione con la soluzione di
gestione degli elementi di lavoro e
il sistema di compilazione esistenti
HockeyApp
Xamarin Test Cloud
DEMO
Extended CI
Domande?
18

More Related Content

What's hot

Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017Codemotion
 
What's new in Visual Studio 2019
What's new in Visual Studio 2019What's new in Visual Studio 2019
What's new in Visual Studio 2019Alessio Iafrate
 
ASP.NET AND Azure Function
ASP.NET AND Azure FunctionASP.NET AND Azure Function
ASP.NET AND Azure FunctionLuca Congiu
 
Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker dotnetcode
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOpsdotnetcode
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
 
Docker Workshop - Coretech Summit 2018
Docker Workshop - Coretech Summit 2018Docker Workshop - Coretech Summit 2018
Docker Workshop - Coretech Summit 2018Yefry Figueroa
 
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1dotnetcode
 

What's hot (14)

Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017
 
What's new in Visual Studio 2019
What's new in Visual Studio 2019What's new in Visual Studio 2019
What's new in Visual Studio 2019
 
Azure dev ops meetup one
Azure dev ops meetup oneAzure dev ops meetup one
Azure dev ops meetup one
 
ASP.NET AND Azure Function
ASP.NET AND Azure FunctionASP.NET AND Azure Function
ASP.NET AND Azure Function
 
Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker Meetup ASP.NET Core 2 e Docker
Meetup ASP.NET Core 2 e Docker
 
Webinar: "DevOps e Orchestrazione Bimodale dei Processi IT"
Webinar: "DevOps e Orchestrazione Bimodale dei Processi IT"Webinar: "DevOps e Orchestrazione Bimodale dei Processi IT"
Webinar: "DevOps e Orchestrazione Bimodale dei Processi IT"
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOps
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
 
Anatomia di un progetto open-source
Anatomia di un progetto open-sourceAnatomia di un progetto open-source
Anatomia di un progetto open-source
 
Docker Workshop - Coretech Summit 2018
Docker Workshop - Coretech Summit 2018Docker Workshop - Coretech Summit 2018
Docker Workshop - Coretech Summit 2018
 
Introduzione a .Net Core
Introduzione a .Net CoreIntroduzione a .Net Core
Introduzione a .Net Core
 
OpenDevSecOps 2019 - Open devsecops un caso di studio
OpenDevSecOps 2019 - Open devsecops un caso di studioOpenDevSecOps 2019 - Open devsecops un caso di studio
OpenDevSecOps 2019 - Open devsecops un caso di studio
 
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
 
LARUS 10th - Rampado Omar
LARUS 10th - Rampado OmarLARUS 10th - Rampado Omar
LARUS 10th - Rampado Omar
 

Similar to DevOpsHerous 2016 - 29/10/2016

Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDaniele Mondello
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOpsdotnetcode
 
CI/CD - Presentazione Introduttiva
CI/CD - Presentazione IntroduttivaCI/CD - Presentazione Introduttiva
CI/CD - Presentazione IntroduttivaMatteo Di Carlo
 
Service Fabric: la potenza dei micro servizi
Service Fabric:  la potenza dei micro serviziService Fabric:  la potenza dei micro servizi
Service Fabric: la potenza dei micro serviziMassimo Bonanni
 
Writing apps for android with .net
Writing apps for android with .net Writing apps for android with .net
Writing apps for android with .net Leonardo Alario
 
DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017Giulio Vian
 
Azure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET FrameworkAzure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET FrameworkNicolò Carandini
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineDavide Benvegnù
 
Progetto e implementazione di una pipeline di sviluppo software con tecnologi...
Progetto e implementazione di una pipeline di sviluppo software con tecnologi...Progetto e implementazione di una pipeline di sviluppo software con tecnologi...
Progetto e implementazione di una pipeline di sviluppo software con tecnologi...Mattia Milleri
 
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013Luca Zulian
 
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaMulti-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaAndrea Dottor
 
Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...
Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...
Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...Pipeline Srl
 
Sviluppare Azure Web Apps
Sviluppare Azure Web AppsSviluppare Azure Web Apps
Sviluppare Azure Web AppsAndrea Dottor
 
Continuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineContinuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineDavide Benvegnù
 
Qualità del Software
Qualità del SoftwareQualità del Software
Qualità del SoftwareYeser Rema
 
Slide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfSlide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfFlorence Consulting
 
Androidsdk appinventor
Androidsdk appinventorAndroidsdk appinventor
Androidsdk appinventorfdizazzo
 
Smau milano 2012 arena social media davide-senatore
Smau milano 2012   arena social media davide-senatoreSmau milano 2012   arena social media davide-senatore
Smau milano 2012 arena social media davide-senatoreSMAU
 

Similar to DevOpsHerous 2016 - 29/10/2016 (20)

Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOps
 
Continuos Integration
Continuos IntegrationContinuos Integration
Continuos Integration
 
CI/CD - Presentazione Introduttiva
CI/CD - Presentazione IntroduttivaCI/CD - Presentazione Introduttiva
CI/CD - Presentazione Introduttiva
 
Service Fabric: la potenza dei micro servizi
Service Fabric:  la potenza dei micro serviziService Fabric:  la potenza dei micro servizi
Service Fabric: la potenza dei micro servizi
 
Writing apps for android with .net
Writing apps for android with .net Writing apps for android with .net
Writing apps for android with .net
 
DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017DevOps by examples - Agile O'Day 2017
DevOps by examples - Agile O'Day 2017
 
Azure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET FrameworkAzure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET Framework
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
 
Progetto e implementazione di una pipeline di sviluppo software con tecnologi...
Progetto e implementazione di una pipeline di sviluppo software con tecnologi...Progetto e implementazione di una pipeline di sviluppo software con tecnologi...
Progetto e implementazione di una pipeline di sviluppo software con tecnologi...
 
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
Costruire applicazioni-cross-platform-con-xamarin-visual-studio-2013
 
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaMulti-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
 
Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...
Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...
Software Virtualization & Streaming: eliminare intere fasi dell’ IMAC (Instal...
 
Sviluppare Azure Web Apps
Sviluppare Azure Web AppsSviluppare Azure Web Apps
Sviluppare Azure Web Apps
 
Continuous Integration con Visual Studio Online
Continuous Integration con Visual Studio OnlineContinuous Integration con Visual Studio Online
Continuous Integration con Visual Studio Online
 
Qualità del Software
Qualità del SoftwareQualità del Software
Qualità del Software
 
Slide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfSlide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdf
 
Androidsdk appinventor
Androidsdk appinventorAndroidsdk appinventor
Androidsdk appinventor
 
Smau milano 2012 arena social media davide-senatore
Smau milano 2012   arena social media davide-senatoreSmau milano 2012   arena social media davide-senatore
Smau milano 2012 arena social media davide-senatore
 
Introduzione ad Android
Introduzione ad AndroidIntroduzione ad Android
Introduzione ad Android
 

More from Gaetano Paternò

Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...Gaetano Paternò
 
Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Gaetano Paternò
 
OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016Gaetano Paternò
 
Microsoft Azure for DreamSpark Academic Tour - 22/01/2016
Microsoft Azure for DreamSpark Academic Tour - 22/01/2016Microsoft Azure for DreamSpark Academic Tour - 22/01/2016
Microsoft Azure for DreamSpark Academic Tour - 22/01/2016Gaetano Paternò
 
Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Gaetano Paternò
 
Unofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetUnofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetGaetano Paternò
 
EtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows BridgeEtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows BridgeGaetano Paternò
 

More from Gaetano Paternò (8)

Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
 
Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016
 
OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016
 
Microsoft Azure for DreamSpark Academic Tour - 22/01/2016
Microsoft Azure for DreamSpark Academic Tour - 22/01/2016Microsoft Azure for DreamSpark Academic Tour - 22/01/2016
Microsoft Azure for DreamSpark Academic Tour - 22/01/2016
 
Hour of Code - 13/01/2016
Hour of Code - 13/01/2016Hour of Code - 13/01/2016
Hour of Code - 13/01/2016
 
Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015
 
Unofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetUnofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNet
 
EtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows BridgeEtnaDev 2015 - Windows Bridge
EtnaDev 2015 - Windows Bridge
 

DevOpsHerous 2016 - 29/10/2016

  • 1. 1
  • 4. Overview • E’ comune per gli sviluppatori di lavorare in parallelo a progetti software. Ad un certo punto, è necessario integrare tutti questi flussi di lavoro paralleli in una base. • Continuous Integration (CI) ci aiuta ad evitare le complessità di integrazione attraverso la fusione dei cambiamenti, apportati al codice da ogni sviluppatore, su una base code comune continua. • Ciò risulta in una base di codice coeso e stabile.
  • 5. Components • Version Control Consolida tutto il codice di un progetto in un unico repository condiviso e mantiene una cronologia completa di tutte le modifiche apportate ai file. • Continuous Integration Server Il CI è responsabile della raccolta tutti i manufatti di un progetto (codice sorgente, immagini, video, database, test automatizzati, etc.), della compilazione dell'applicazione e dell'esecuzione dei test automatizzati.
  • 6. CI Flow • Ogni sviluppatore mantiene una copia del codice sorgente sulla propria macchina. • Una volta che le modifiche sono pronte, vengono “committate” sul repository centrale, così che possano essere condivise con il resto del team.
  • 7. • Si parla di unit test in quanto le funzionalità del programma vengono scomposte in comportamenti che possono essere testati come singole unità. • È possibile generare rapidamente progetti di test e metodi di test dal codice oppure creare manualmente i test necessari. • Con lo sviluppo basato su test, gli unit test vengono creati prima di scrivere il codice e quindi vengono usati sia come documentazione di progettazione sia come specifiche funzionali. Unit Test
  • 8. Version Control Visual Studio Team Service and Team Foundation Server Git SVN Components Continuous Integration Visual Studio Team Service and Team Foundation Server Visual Studio Team Services and Jenkins Git And Jenkins
  • 9. • Visual Studio Team Services (VSTS) e Team Foundation Server (TFS) sono gli strumenti di Microsoft per la continuous integration, il monitoraggio delle attività, la pianificazione Agile e include strumenti di reporting e di controllo delle versioni. • VSTS fornisce servizi via cloud. Non richiede hardware o infrastrutture dedicate e si può accedere da qualsiasi luogo attraverso i browser. • TFS è progettato per server Windows locali e vi si accede attraverso una rete locale o una connessione VPN. VSTS and TFS
  • 10. • Utilizzare l'IDE di vostro gradimento sfruttando il plug-in per Eclipse, IntelliJ, Android Studio, Visual Studio, Visual Studio Code e altro ancora. • Sviluppare in Java, C #, PHP o qualsiasi altro linguaggio moderno e costruire per applicazioni per Linux, Mac, Windows, iOS e Android. VSTS and TFS
  • 11. DEMO
  • 13. • Supporto per app Android, Cordova, iOS, OS X, Unity, Windows e Xamarin • Report sugli arresti anomali, live e affidabili • Commenti e suggerimenti in app da utenti reali • SDK open source in grado di riconoscere il codice in esecuzione nelle tue app • Integrazione con la soluzione di gestione degli elementi di lavoro e il sistema di compilazione esistenti HockeyApp
  • 15. DEMO
  • 18. 18