[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source controlAlessandro Alpi
We are used to see our code under source control. What about our databases? This topic is too often underestimated. Keeping database under our control (source controlled) brings many advantages in terms of organization and quality. The distributed work become rock solid and Continuous integration is simpler to implement. In addition, we can take many advantages from testing, automated deployment and all the stuff that brings the agile methodology available to the team. We will compare also third party tools in order to understand the differences between different vendors.
Doaw2020 - Dalla produzione alla QA, provisioning su SQL ServerAlessandro Alpi
In questa sessione vedremo come portare i dati in ambienti QA direttamente dalla produzione, evitando ogni problema conosciuto ad oggi: spazio, tempo, numero di copie, isolamento e via discorrendo. Un annoso problema che può essere finalmente risolto con pochi click.
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...Alessandro Alpi
In questa serie di slide vedremo come creare i build step su Visual Studio Team Services sfruttando gli add-on forniti da Red Gate, come DLM Automation 2: Build.
DotNetCampus - Continuous Integration con Sql ServerAlessandro Alpi
Continuous Integration con SQL Server. Come automatizzare i processi di build e di test su database SQL Server. Come includere SQL Server nei processi di Application Lifecycle Management (Database Lifecycle Management).
SQL Server 2016 porterà tantissime novità, tra cui, per quanto riguarda la programmabilità, il supporto al formato JSON. vedremo com'è possibile serializzare i risultati delle nostre query tramite la clausola FOR JSON, inclusa negli ultimi rilasci della piattaforma.
PASS Virtual Chapter - SQL Server Continuous DeploymentAlessandro Alpi
Dopo aver visto come effettuare la continuous integration terminiamo il ciclo di vita del nostro database effettuandone il deploy, includendo concetti come DevOps e automazione dei processi
[ITA] Sql Saturday 355 in Parma - New SQL Server databases under source controlAlessandro Alpi
We are used to see our code under source control. What about our databases? This topic is too often underestimated. Keeping database under our control (source controlled) brings many advantages in terms of organization and quality. The distributed work become rock solid and Continuous integration is simpler to implement. In addition, we can take many advantages from testing, automated deployment and all the stuff that brings the agile methodology available to the team. We will compare also third party tools in order to understand the differences between different vendors.
Doaw2020 - Dalla produzione alla QA, provisioning su SQL ServerAlessandro Alpi
In questa sessione vedremo come portare i dati in ambienti QA direttamente dalla produzione, evitando ogni problema conosciuto ad oggi: spazio, tempo, numero di copie, isolamento e via discorrendo. Un annoso problema che può essere finalmente risolto con pochi click.
DevOpsHeroes 2016 - Realizzare Continouous Integration con SQL Server e Visua...Alessandro Alpi
In questa serie di slide vedremo come creare i build step su Visual Studio Team Services sfruttando gli add-on forniti da Red Gate, come DLM Automation 2: Build.
DotNetCampus - Continuous Integration con Sql ServerAlessandro Alpi
Continuous Integration con SQL Server. Come automatizzare i processi di build e di test su database SQL Server. Come includere SQL Server nei processi di Application Lifecycle Management (Database Lifecycle Management).
SQL Server 2016 porterà tantissime novità, tra cui, per quanto riguarda la programmabilità, il supporto al formato JSON. vedremo com'è possibile serializzare i risultati delle nostre query tramite la clausola FOR JSON, inclusa negli ultimi rilasci della piattaforma.
PASS Virtual Chapter - SQL Server Continuous DeploymentAlessandro Alpi
Dopo aver visto come effettuare la continuous integration terminiamo il ciclo di vita del nostro database effettuandone il deploy, includendo concetti come DevOps e automazione dei processi
PASS Virtual Chapter - SQL Server Continuous IntegrationAlessandro Alpi
Build automatizzate, esecuzione di unit test, creazione di un pacchetto nuget, ecco cosa serve per essere pronti con SQL Server e la continuous integration
Slideshare is a website that allows users to upload and share business and educational documents, presentations, and media. It provides teachers with an easy and engaging way to explain, develop, and evaluate academic activities by using features like uploading lecture backdrops, book reports, and sharing learning materials. As an educational tool that utilizes new technologies, Slideshare is important for improving the quality and reach of education.
#DOAW16 - DevOps@work Roma 2016 - Testing your databasesAlessandro Alpi
In these slides we will speak about how to unit test our programmability in SQL Server and how to move from a manual process to an automated one in order to achieve the goals of DevOps
I. O documento discute as formas de relevo da Terra resultantes das forças endógenas e exógenas e a classificação do relevo brasileiro proposta por Aziz Ab'Sáber. II. A alternativa correta é a III e IV, que afirma que a classificação foi proposta por Aroldo de Azevedo com base nos estudos de Aziz Ab'Sáber e do Projeto Radambrasil.
The document discusses how technology can be used to engage with and interpret history. It mentions Archana Saad Akhtar as the Programme Officer for Design and Outreach at the Aga Khan Trust for Culture in New Delhi. The Trust uses technology in exhibitions, signage, and publications to inform people about history.
#DOAW16 - DevOps@work Roma 2016 - Databases under source controlAlessandro Alpi
This document discusses putting databases under source control as part of a DevOps workflow. It begins with defining DevOps and its goals of collaboration, automation, and rapid software delivery. It then discusses using a source control manager and continuous integration practices for databases. This allows development teams to work on database code in separate environments, track changes, automate testing and deployment, and maintain different versions of the database. The document recommends tools like SQL Source Control and Visual Studio Team Services and argues that source control can help development and operations teams work together more efficiently on database changes and releases.
El documento contiene una serie de siglas y abreviaturas sin contexto que no proporcionan información comprensible. No es posible resumir el contenido de este documento de manera significativa en 3 oraciones o menos.
O documento apresenta um trecho da Carta da Terra, que defende a sustentabilidade ambiental e o respeito aos direitos humanos. Em seguida, discute o conceito de desenvolvimento sustentável e importantes conferências sobre o meio ambiente realizadas ao longo dos anos.
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...Alessandro Alpi
We are used to see our code under source control. What about our databases? This topic is too often underestimated. Keeping database under our control (source controlled) brings many advantages in terms of organization and quality. The distributed work become rock solid and Continuous integration is simpler to implement. In addition, we can take many advantages from testing, automated deployment and all the stuff that brings the agile methodology available to the team. We will compare also third party tools in order to understand the differences between different vendors.
Fredy Alexander Saavedra discusses five trends in higher education that are important for developing quality in the 21st century university. These trends include: autonomy, democracy, quality, comprehensive education, and the emergence of the virtual university. Autonomy allows universities to improve educational processes. Democracy means providing quality education for all students and teachers. Quality education forms citizens who can participate in decision making. Comprehensive education stimulates students' emotional, social, and ethical skills. The virtual university is a challenge that requires redefining the current concept of college education.
2 67-1379416025-9. automation nad virtual.fullKier Francisco
This document describes the automation and virtual simulation of a laboratory-based mini thermal power plant. The researchers automated the plant by replacing manually operated valves with motorized valves and adding sensors to measure parameters like liquid level, pressure, and temperature. A virtual simulation model of the entire automated system was created using LabVIEW to allow remote monitoring and control. The automation and virtual simulation improve the efficiency and operation of the mini power plant and provide an educational tool for students to learn about power plant systems.
PASS Virtual Chapter - Unit Testing su SQL ServerAlessandro Alpi
Con quanto segue andremo ad approfondire il concetto di unit test e, nella fattispecie, del testing tramite il framework free tSQLt, utilizzando t-sql e SQL Server Management Studio.
Rosalyn Coleman Williams is an accomplished actor, director, and educator. She has over 30 years of experience teaching acting at prestigious institutions and coaching on film and television sets. As a director, her films have won several awards at film festivals. As an actor, she has performed on Broadway and in films with stars like Halle Berry and Tom Cruise. She runs her own production company, Red Wall Productions, with her husband and continues to teach the next generation of artists through her online programs and workshops.
Il seminario presenta le nuove soluzioni di archiviazione e gestione dei dati disponibili oggi sul mercato, basate su database denominati “noSQL”. Dopo una breve introduzione sui concetti fondamentali dei database relazionali (RDBMS), sarà effettuato un confronto con database basati sui documenti (MongoDB) e Key Value Storage (Redis)
FAST è una raccolta di tecnologie, basate su Web Components e su Web Standards moderni, che ci aiuta ad affrontare in modo efficiente alcune delle sfide più comuni nella progettazione e nello sviluppo di siti ed applicazioni Web.”
FAST ci aiuta a creare interfacce si adattano facilmente a qualunque Design System e che possono essere utilizzate con qualsiasi framework!
La continuous integration, ovvero un insieme di pratiche di sviluppo atte a rilasciare frequentemente le modifiche al nostro codice, può essere applicata anche a SQL Server. In questa sessione andremo a descrivere come mettere sotto controllo del codice sorgente i nostri database in un'ottica di teamwork e, successivamente, a capire come automatizzare il processo di test unitario al fine di prevenire regressioni e correggere quanto prima bug.
PASS Virtual Chapter - SQL Server Continuous IntegrationAlessandro Alpi
Build automatizzate, esecuzione di unit test, creazione di un pacchetto nuget, ecco cosa serve per essere pronti con SQL Server e la continuous integration
Slideshare is a website that allows users to upload and share business and educational documents, presentations, and media. It provides teachers with an easy and engaging way to explain, develop, and evaluate academic activities by using features like uploading lecture backdrops, book reports, and sharing learning materials. As an educational tool that utilizes new technologies, Slideshare is important for improving the quality and reach of education.
#DOAW16 - DevOps@work Roma 2016 - Testing your databasesAlessandro Alpi
In these slides we will speak about how to unit test our programmability in SQL Server and how to move from a manual process to an automated one in order to achieve the goals of DevOps
I. O documento discute as formas de relevo da Terra resultantes das forças endógenas e exógenas e a classificação do relevo brasileiro proposta por Aziz Ab'Sáber. II. A alternativa correta é a III e IV, que afirma que a classificação foi proposta por Aroldo de Azevedo com base nos estudos de Aziz Ab'Sáber e do Projeto Radambrasil.
The document discusses how technology can be used to engage with and interpret history. It mentions Archana Saad Akhtar as the Programme Officer for Design and Outreach at the Aga Khan Trust for Culture in New Delhi. The Trust uses technology in exhibitions, signage, and publications to inform people about history.
#DOAW16 - DevOps@work Roma 2016 - Databases under source controlAlessandro Alpi
This document discusses putting databases under source control as part of a DevOps workflow. It begins with defining DevOps and its goals of collaboration, automation, and rapid software delivery. It then discusses using a source control manager and continuous integration practices for databases. This allows development teams to work on database code in separate environments, track changes, automate testing and deployment, and maintain different versions of the database. The document recommends tools like SQL Source Control and Visual Studio Team Services and argues that source control can help development and operations teams work together more efficiently on database changes and releases.
El documento contiene una serie de siglas y abreviaturas sin contexto que no proporcionan información comprensible. No es posible resumir el contenido de este documento de manera significativa en 3 oraciones o menos.
O documento apresenta um trecho da Carta da Terra, que defende a sustentabilidade ambiental e o respeito aos direitos humanos. Em seguida, discute o conceito de desenvolvimento sustentável e importantes conferências sobre o meio ambiente realizadas ao longo dos anos.
[ENG] Sql Saturday 355 in Parma - New "SQL Server databases under source cont...Alessandro Alpi
We are used to see our code under source control. What about our databases? This topic is too often underestimated. Keeping database under our control (source controlled) brings many advantages in terms of organization and quality. The distributed work become rock solid and Continuous integration is simpler to implement. In addition, we can take many advantages from testing, automated deployment and all the stuff that brings the agile methodology available to the team. We will compare also third party tools in order to understand the differences between different vendors.
Fredy Alexander Saavedra discusses five trends in higher education that are important for developing quality in the 21st century university. These trends include: autonomy, democracy, quality, comprehensive education, and the emergence of the virtual university. Autonomy allows universities to improve educational processes. Democracy means providing quality education for all students and teachers. Quality education forms citizens who can participate in decision making. Comprehensive education stimulates students' emotional, social, and ethical skills. The virtual university is a challenge that requires redefining the current concept of college education.
2 67-1379416025-9. automation nad virtual.fullKier Francisco
This document describes the automation and virtual simulation of a laboratory-based mini thermal power plant. The researchers automated the plant by replacing manually operated valves with motorized valves and adding sensors to measure parameters like liquid level, pressure, and temperature. A virtual simulation model of the entire automated system was created using LabVIEW to allow remote monitoring and control. The automation and virtual simulation improve the efficiency and operation of the mini power plant and provide an educational tool for students to learn about power plant systems.
PASS Virtual Chapter - Unit Testing su SQL ServerAlessandro Alpi
Con quanto segue andremo ad approfondire il concetto di unit test e, nella fattispecie, del testing tramite il framework free tSQLt, utilizzando t-sql e SQL Server Management Studio.
Rosalyn Coleman Williams is an accomplished actor, director, and educator. She has over 30 years of experience teaching acting at prestigious institutions and coaching on film and television sets. As a director, her films have won several awards at film festivals. As an actor, she has performed on Broadway and in films with stars like Halle Berry and Tom Cruise. She runs her own production company, Red Wall Productions, with her husband and continues to teach the next generation of artists through her online programs and workshops.
Il seminario presenta le nuove soluzioni di archiviazione e gestione dei dati disponibili oggi sul mercato, basate su database denominati “noSQL”. Dopo una breve introduzione sui concetti fondamentali dei database relazionali (RDBMS), sarà effettuato un confronto con database basati sui documenti (MongoDB) e Key Value Storage (Redis)
FAST è una raccolta di tecnologie, basate su Web Components e su Web Standards moderni, che ci aiuta ad affrontare in modo efficiente alcune delle sfide più comuni nella progettazione e nello sviluppo di siti ed applicazioni Web.”
FAST ci aiuta a creare interfacce si adattano facilmente a qualunque Design System e che possono essere utilizzate con qualsiasi framework!
La continuous integration, ovvero un insieme di pratiche di sviluppo atte a rilasciare frequentemente le modifiche al nostro codice, può essere applicata anche a SQL Server. In questa sessione andremo a descrivere come mettere sotto controllo del codice sorgente i nostri database in un'ottica di teamwork e, successivamente, a capire come automatizzare il processo di test unitario al fine di prevenire regressioni e correggere quanto prima bug.
Webcast - Introduzione a Visual Studio OnlineDavide Benvegnù
Visual Studio Online è uno strumento che fornisce molte funzionalità per l'ALM (Application Lifecycle management) e ad ogni release diventa sempre più completo, funzionale e davvero utile. Si tratta di una piattaforma completa e gratuita di strumenti per lo sviluppo e servizi utili per creare applicazioni multi-piattaforma, progettata per soddisfare i più alti requistiti a livello di disponibilità, scalabilità e complessità di sviluppo.
In questo webcast introduttivo, primo di una serie, vedremo quali sono le caratteristiche di questo strumento, impareremo come utilizzarlo per gestire il lavoro di ogni giorno e prenderemo confidenza con le sue funzionalità. Andremo infine alla scoperta delle nuove feature aggiunte alla suite.
2014.11.14 Implementare e mantenere un progetto Azure SQL DatabaseEmanuele Zanchettin
Questa sessione affronta come implementare, mantenere e far evolvere soluzioni sviluppate su Azure SQL Database, attraverso l’utilizzo degli strumenti SQL Sever Management Studio e Visual Studio. Attraverso esempi e casi reali, saranno illustrate la versatilità, potenza e affidabilità del database come servizio nel cloud.
Windows azure - abbattere tempi e costi di sviluppoAndrea Dottor
In questa sessione vedremo come utilizzare Windows Azure per velocizzare e semplificare la realizzazione di applicazioni ASP.NET. Dallo sviluppo al deploy, passando per lo storage...andremo in dettaglio su varie funzionalità che ci faranno apprezzare ancora più la piattaforma Windows Azure.
Con Xebialabs affrontiamo il tema della gestione della Toolchain devops e Release/Deploy in modo orchestrato e remotizzato.
XebiaLabs, leader del mercato ARA come riportato da Gartner e
Forrester. Con XebiaLabs gestire i rilasci dal punto di vista di processo e di effettivo deploy delle applicazioni è solo un fatto di configurazione, al resto pensa l’engine di XebiaLabs.
This set of design patterns are related to Enterprise Patterns. In it you can find, J2EE, Presentation, Business & Integration Patterns (such as: ApplicaCon Controller, Data Transfer Object (DTO), Business Object (BO) & Data Access Object (DAO) among others ...)
MongoDB Atlas: il modo migliore per eseguire MongoDB in ambiente cloud 2MongoDB
MongoDB Atlas è il servizio DBaaS (Database-as-a-Service) che ti consente distribuire, gestire e scalare un database MongoDB in ambiente cloud con pochi clic.
Business Intelligence e Business Analytics sono termini che ricorrono ormai quotidianemente. Cosa significano? Che valore portano in una azienda? Come si crea una soluzione di Business Intelligece e di Business Analytics? Che strumenti mette a disposizione la piattaforma Microsoft? In questa sessione andremo ad introdurre tutti gli attori, gli strumenti e le tecnologie che concorrono a realizzare tali soluzioni, vendendone alcune "dal vivo" per capire come si usano ed il grande valore aggiunto che, in una società sempre più affamata di informazioni, ma ricca solo di dati, possono portare.
2014.11.14 Implementare e mantenere un progetto Azure SQL DatabaseEmanuele Zanchettin
Questa sessione affronta come implementare, mantenere e far evolvere soluzioni sviluppate su Azure SQL Database, attraverso l’utilizzo degli strumenti SQL Sever Management Studio e Visual Studio. Attraverso esempi e casi reali, saranno illustrate la versatilità, potenza e affidabilità del database come servizio nel cloud.
Introduzione al Domain Driven Design (DDD)DotNetMarche
In questa sessione si approfondirà il concetto di Domain Driven Design, un principio di progettazione che può essere visto come una “forma-mentis” per aiutare a concepire e modellare applicazioni enterprise che fanno un forte uso del Domain Model. Questa metodologia, introdotta da Eric Evans, mette in risalto il dominio applicativo di un progetto, costituendo quindi il collante tra il modello analitico e il modello implementativo e trovando la sua naturale applicazione in ambienti di sviluppo agili come Extreme Programming. Come completamento della sessione verranno esaminate alcune tecniche di Layering e pattern architetturali che ben si sposano con questa tecnica.
SQL Server Health Check: le slide del webinarDatamaze
Le slide del webinar sul nostro servizio di Health Check per SQL Server, l’attività di check up attraverso la quale effettuiamo un'analisi approfondita della configurazione e dello stato di salute degli ambienti aziendali mission critical.
Similar to [ITA] SQL Saturday 257 - Put databases under source control (20)
Despite the word "DevOps" has been made recently, I've been one of the lucky ones who could work in the way this culture suggests, since 20 years. At that time, no Powershell was available, there was poor internet connection (at least in Italy), there weren't any tools for automation. Anyways my team have understood that mindset before it became mainstream. During my professional experience, I've gathered many scenarios in different businesses and I've learned many lessons. Straight to the point, the problem is focused on "change ourselves". In this session we will try to reply to the following questions:
As a legacy DBA, how to change our way of work? How to forget the bad habits? How to take advantage from our experience and awareness? Just my two cents. Hopefully interesting.
In un mondo in cui il termine smart è ovunque e la coppia smart-working è abusata, meglio concentrarsi sul vero significato del termine. Autonomia, responsabilità, fiducia e flessibilità, unitamente a strumenti tecnologici a supporto.
Sql Wars - SQL the attack of the Clones and the rebellion of the Containers Alessandro Alpi
How to solve three of he most tricky problems:
- isolating and repeating tests on production data without affecting production databases
- debug and resolve bugs using production-like databases
- review deploy scripts before executing them in production databases
It's a matter of Provisioning
The document discusses approaches for provisioning production-like data for testing purposes. It describes classic approaches like restoring production databases or bulk loading data, as well as more modern approaches using native database cloning features, virtual cloning with tools like SQL Clone, or using containers with technologies like Docker. It then demonstrates SQL Clone, which creates isolated clones of production databases in under 30 seconds, and using containers with Docker to run isolated SQL Server instances that share access to the same volume of data. Containers provide benefits like isolation, cross-platform support, and treating infrastructure as code, while SQL Clone is useful for classic virtualized environments that may lack container support. Both approaches help address issues like debugging apps against production data, running performance tests on
Wpc2019 - Distruggere DevOps, la storia di un vero teamAlessandro Alpi
Consigli per evitare la distruzione della migrazione culturale verso DevOps. Vedremo un team con "attori" importanti provare a migrare verso buone pratiche e capiremo quanto è difficile arrivare, ma semplice distruggere tutto.
Sql start!2019 Migliorare la produttività per lo sviluppo su SQL ServerAlessandro Alpi
SQL Server non è un mondo, è un universo ricco di funzionalità, architetture e tecnologie. Può spaventare e può essere difficile muoversi al suo interno con la necessaria fluidità. In questa sessione vedremo quali plugin e strumenti sono disponibili per velocizzare lo sviluppo su SQL Server, da Visual Studio Code a Management Studio, da SQL Operations Studio ai tool di RedGate. Migliorare gestione e scrittura di codice, con un occhio di riguardo alla condivisione e al team working, in un mondo in cui DevOps la fa da padrone.
Configuration e change management con Disciplined Agile FrameworkAlessandro Alpi
How to manage changes and configuration management using the Disciplined Agile Framework for DevOps (classic and prescriptive vs automated and iterative solutions). Software Configuration Management (SCM) summit: http://www.snescm.org/Common/Italian-chapter/Summits/2018/index.html
In questa sessione parleremo delle peggiori pratiche da seguire per infrangere ogni nostro sogno di realizzazione di DevOps. Peggiori e molto comuni e, proprio per questo, estremamente pericolose. Dal non rispettare i principi, al fare eccessive personalizzazioni, fino all'estremizzare tutte le buone pratiche. Non serve chissà cosa, e la tentazione è dietro l'angolo.
Automatizzare il processo di link dei database con redgate source controlAlessandro Alpi
Per chi è abituato a lavorare in ambienti molto distribuiti, casi in cui i database sono molteplici, e per chi usa Red Gate Source Control con VSTS (git o TFS), può diventare oneroso effettuare numerose operazioni manuali di collegamento. Tramite PowerShell, è possibile consumare le API del RedGate DLM Automation tool per velocizzare il processo di link dei nostri database. Alla base di DevOps ci sono infatti i concetti di ripetibilità e automatizzazione. Questo è quello che nel nostro team ci ha portato a ridurre l'errore umano all'osso e a velocizzare il provisioning delle nostre soluzioni distribuite.
Sql saturday parma 2017 (#sqlsat675) - Deep space Cosmos DBAlessandro Alpi
Azure Cosmos DB is a globally distributed database service designed to enable you to elastically and independently scale throughput and storage across any number of geographical regions with a comprehensive SLA. In this session we will discover how Cosmos DB works and what are the key features that enables you to become polyglot in persistency. A single "database" for multiple models.
Sql Saturday a Pordenone - Sql Server journey, da dev a opsAlessandro Alpi
DevOps e SQL Server, l'importanza di automatizzare i processi ripetibili, collaborare, condividere ed integrarsi per velocizzare e rendere più affidabile i nostri processi di deploy per il database.
In this presentation we'll learn about the native JSON support in SQL Server 2016. We will speak about Import/Export features, storage considerations and advantages/limitations on using this format in SQL Server.
4. About me
MVP
MCTS
MCITP
MCP
MCT
Ita blog: http://blogs.dotnethell.it/suxstellino
Eng blog: http://suxstellino.wordpress.com
Twitter: @suxstellino
Linkedin: it.linkedin.com/in/suxstellino/
November 9th, 2013
#sqlsat257
#sqlsatverona
5. Agenda
Concetti di ALM
Source control manager
Database vs Codice
Tools per database
Operazioni sui progetti
Tools per gestire le operazioni
Conclusioni
Q&A
November 9th, 2013
#sqlsat257
#sqlsatverona
6. Che cosa si intende con ALM?
Application Lifecycle Management (ALM) rappresenta
l'unione di attività di gestione di business con attività di
ingegneria del software, resa possibile dall'utilizzo di
strumenti che facilitano la gestione delle fasi di: analisi
dei requisiti, progetto architetturale, sviluppo, testing,
gestione delle release, del change e del deployment.
(fonte Wikipedia)
November 9th, 2013
#sqlsat257
#sqlsatverona
7. Che cosa si intende con ALM?
November 9th, 2013
#sqlsat257
#sqlsatverona
8. Perchè ALM?
Rottura delle barriere tra i team (integrazione)
Rilascio di software di qualità
Rilascio di software in tempi brevi
Soddisfazione del cliente
Migliore organizzazione del lavoro
Monitorizzazione e tracciabilità delle attività
Migliore gestione del codice (più «pulito»)
November 9th, 2013
#sqlsat257
#sqlsatverona
9. ALM e database
La parte di database ha analisi e sviluppo
I database devono poter essere distribuiti
I database devono essere sincronizzati
nell’ambiente di sviluppo
Il database avrà «cambiamenti» da associare
ad «attività»
Il database dovrebbe essere testato
Di certo è una cosa di cui fare deploy
November 9th, 2013
#sqlsat257
#sqlsatverona
10. Soluzioni e tool – development
Management Studio non basta
Visual Studio e Data Tools
Integrazioni di tool di terze parti con SSMS
(esempio: Red-Gate SQL Source Control)
Software di terze parti non integrati con IDE
proprietari
Li vedremo più avanti..
November 9th, 2013
#sqlsat257
#sqlsatverona
11. Source Control Manager
Gestore delle versioni, dei cambiamenti del
nostro codice (e non solo)
Entità condivisa nelle fasi di sviluppo, deploy
e team management
Dotato di interfaccia (anche grafica)
November 9th, 2013
#sqlsat257
#sqlsatverona
12. SCM – Perchè li utilizziamo
Versioni del nostro codice
Salvataggio sicuro dei nostri file
Distribuzione delle linee di sviluppo al team
Creazione di un punto centrale per i deploy
Automatizzare processi di build e di test
I bisogni di ogni team..
November 9th, 2013
#sqlsat257
#sqlsatverona
13. SCM – Parlando di database
Il DB può essere un file «nell’applicazione»
Il DB «sta su server»
Il DB persiste dati utente
Il DB non è tutto e solo codice
Tuttavia i cambiamenti al DB devono riflettersi a
tutto il team
Il source control potrebbe sembrare «scomodo»
November 9th, 2013
#sqlsat257
#sqlsatverona
14. Ma senza un SCM
Come potremmo semplicemente gestire le fix?
Come prevenire regressioni?
Come avere velocemente più ambienti di sviluppo?
Come creare semplicemente una nuova linea dev?
Come utilizzare versioni differenti dello stesso DB?
Come potremmo rendere il DB sincronizzato agli
ultimi cambiamenti dell’applicazione?
November 9th, 2013
#sqlsat257
#sqlsatverona
15. DB vs. codice – così diversi?
Il database è comunque codice
(programmabilità, ddl, grant, ecc.)
Le tabelle di «dominio» sono come tanti
enum (dati statici)
Anche il DB dovrebbe essere trasformato
in più line di sviluppo durante le operazioni
di branch del codice
November 9th, 2013
#sqlsat257
#sqlsatverona
16. DB vs. codice – così diversi?
I puntamenti ai linked server sono
configurazioni (come l’app.config)
Le server login sono configurazioni di
ambiente
Il database persiste i dati. Non è un
problema *da source control*
November 9th, 2013
#sqlsat257
#sqlsatverona
17. Perché mettere il DB sotto SCM
Versioni dei nostri oggetti (DDL) e della
programmabilità su database
Le label comprendono il database, in
modo da poter tornare ad una situazione
precedente
Team sincronizzati sulla get di una
versione (tipicamente l’ultima)
Per fare versioning anche dei dati statici
November 9th, 2013
#sqlsat257
#sqlsatverona
18. E ancora..
Continuous Integration (con test)
Branch (più linee di sviluppo e più contesti)
Ambienti isolati per team dislocati
Atomicità tra applicazione e DB
Salvataggio della documentazione del
database
November 9th, 2013
#sqlsat257
#sqlsatverona
19. SCM – Eccone alcuni
TFS (on-premises e «service»)
Git
Mercurial
Subversion
CVS
Perforce
…
November 9th, 2013
#sqlsat257
#sqlsatverona
20. Tool per la gestione SCM per DB
Visual Studio
SQL Server Data Tools
Red-Gate Source Control
SQL Test (for CI)
ApexSQL Versions
…
November 9th, 2013
#sqlsat257
#sqlsatverona
21. Operazioni possibili con SCM
Alcune delle operazioni sono:
Get
Commit/Checkin
Undo
Save (working folder)
Delete (working folder)
Edit (working folder)
November 9th, 2013
#sqlsat257
#sqlsatverona
22. DEMO
Connessione al TFService tramite VS Team
explorer e Red-Gate Source Control
November 9th, 2013
#sqlsat257
#sqlsatverona
23. Visual Studio + Data Tools
Connected database development
November 9th, 2013
#sqlsat257
#sqlsatverona
24. Visual Studio + Data Tools
Project based development
November 9th, 2013
#sqlsat257
#sqlsatverona
25. Red-Gate SQL Source Control
Integrazione con SQL Server Management Studio
November 9th, 2013
#sqlsat257
#sqlsatverona
26. Red-Gate SQL Source Control
Integrazione con Visual Studio (SQLConnect)
November 9th, 2013
#sqlsat257
#sqlsatverona
27. Red-Gate SQL Source Control
Modello di sviluppo condiviso
Modello di sviluppo dedicato (consigliato)
November 9th, 2013
#sqlsat257
#sqlsatverona
28. Operazioni possibili da SCM
Con Red-Gate SQL Source Control è inoltre
possibile:
Connettersi ad una working folder
ci si muove con il Team Explorer di Visual Studio
Connettersi direttamente al SCM
il tutto è gestito direttamente da Management Studio
Salvare i dati statici sotto source control
Automatizzare il processo di refactor con
migrazione
November 9th, 2013
#sqlsat257
#sqlsatverona
29. Il Team Explorer
Indipendentemente dal tool che si usa Team
Explorer consente:
Migliore gestione dei changeset
Migliore associazione dei changeset ai task
Miglior controllo sulle fasi di commit e di
review
Gestione centralizzata delle policy di checkin
Single point per la gestione del team project
November 9th, 2013
#sqlsat257
#sqlsatverona
30. DEMO
Gestione di un database e di un team project
utilizzando TFService e i tool per la gestione
del SCM
November 9th, 2013
#sqlsat257
#sqlsatverona
31. Conclusioni
Quali tool utilizzare?
Ogni tool ha le sue peculiarità
Red-Gate SQL Source Control consente di gestire i dati in una
maniera molto semplice
Visual Studio garantirà la stessa struttura del progetto database
Visual Studio è più comodo per gli sviluppatori (o SQL Connect)
Quali parametri dovremmo considerare?
Com’è il nostro team
Quali sono i requisiti minimi per la scelta del source control tool
Quanto posso spendere?
Posso permettermi la curva di apprendimento se cambio IDE?
In definitiva però, il Source Control dovrei usarlo
November 9th, 2013
#sqlsat257
#sqlsatverona
32. Resources
http://www.getlatestversion.it/ (ALM community italiana)
http://blog.knodev.com/search/label/ALM (blog di Davide Vernole su ALM)
http://www.codewrecks.com/blog/ (blog di Gian Maria Ricci su ALM)
http://mattvsts.blogspot.it/ (blog di Matteo Emili su ALM)
http://www.codinghorror.com/blog/2006/12/is-your-database-under-version-control.html
http://odetocode.com/blogs/scott/archive/2008/01/30/three-rules-for-database-work.aspx
http://odetocode.com/blogs/scott/archive/2008/01/31/versioning-databases-the-baseline.aspx
http://odetocode.com/blogs/scott/archive/2008/02/02/versioning-databases-changescripts.aspx
http://odetocode.com/blogs/scott/archive/2008/02/02/versioning-databases-views-storedprocedures-and-the-like.aspx
http://odetocode.com/blogs/scott/archive/2008/02/03/versioning-databases-branching-andmerging.aspx
http://www.red-gate.com/products/sql-development/sql-source-control/
http://vsaralmassessment.codeplex.com
http://it.wikipedia.org/wiki/Application_lifecycle_management
November 9th, 2013
#sqlsat257
#sqlsatverona