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
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