Vue d'ensemble de la création et du déploiement d'une base de données dans un environnement de travail en équipe
Mise à jour : novembre 2007
Avec Team Edition for Database Professionals, votre équipe de développement peut gérer la modification d'une base de données en utilisant un projet de base de données qui est sous contrôle de version. Si vous assumez le rôle d'administrateur de base de données pour votre équipe, vous créez ce projet, vous importez le schéma à partir d'un serveur de production, vous configurez des paramètres de la base de données et vous établissez un plan pour générer des données de test. Lorsque vous êtes prêt à partager le projet et ses paramètres avec le reste de l'équipe, vous placez les fichiers qui sont associés au projet sous contrôle de version.
Si vous êtes un développeur ou un testeur qui travaille sur la base de données, vous extrayez la version actuelle du schéma de base de données du système de contrôle de version, puis vous apportez les modifications souhaitées dans un environnement de développement isolé, ou bac à sable (sandbox). Vous pouvez ensuite tester ces modifications dans l'environnement isolé sans affecter les autres membres de l'équipe. Une fois les modifications terminées, vous réarchivez les fichiers dans le système de contrôle de version afin qu'ils puissent être générés et déployés sur un serveur de test. D'autres membres de l'équipe peuvent récupérer vos modifications en effectuant une synchronisation avec la version que vous avez archivée dans le contrôle de version.
Configuration d'un projet de base de données
Dans un environnement de travail en équipe, si vous assumez le rôle d'administrateur de base de données, vous configurez le projet pour l'équipe, puis chaque membre de l'équipe peut travailler dans son propre environnement de développement isolé en utilisant le même projet. Pour configurer un projet, vous exécutez généralement la séquence d'actions suivante :
Vous créez le projet de base de données. Vous exécutez généralement cette étape en association avec la suivante.
Vous établissez le schéma pour le projet de base de données. La majeure partie du travail du développement part d'une base de données existante. Dans ce cas, vous pouvez importer le schéma à partir de cette base de données dans le projet de base de données. Pour cette étape, vous devez avoir accès à la base de données source (souvent une base de données de production). Si vous créez une base de données, vous devrez peut-être travailler avec l'architecte de base de données pour développer le schéma de base de données initial.
Vous définissez des propriétés sur le projet de base de données qui contrôle la génération et le déploiement. Cette étape inclut la définition du classement par défaut, la définition du chemin de sortie de la génération, la spécification d'options de connexion et la définition du nom de la base de données cible.
Vous archivez le projet de base de données et son contenu dans le contrôle de version afin que votre équipe puisse y accéder.
Vous définissez un plan de génération de données pour permettre à chaque membre de l'équipe d'utiliser des données de test réalistes qui ne contiennent pas d'informations sensibles. Vous ajoutez le plan au projet de base de données et vous l'archivez dans le contrôle de version.
Vous définissez également des tests unitaires de base de données pour des fonctionnalités de base de données existantes. Vous incluez généralement des tests unitaires dans un projet distinct de la même solution comme projet de base de données et vous archivez l'ensemble de la solution dans le contrôle de version.
L'équipe peut à présent commencer le travail de développement.
Exécution d'un développement itératif dans un environnement de développement isolé
En tant que développeur, vous synchronisez votre environnement de développement local avec le système de contrôle de version. Vous personnalisez la propriété Target connection sur le projet de base de données pour pointer vers le serveur sur lequel vous voulez héberger votre copie de la base de données. Le travail relatif aux fonctionnalités se compose du processus suivant :
Vous identifiez la tâche à exécuter. Cette étape peut impliquer l'identification des éléments de travail qui vous sont assignés dans le suivi des éléments de travail Team Foundation, par exemple.
Vous modifiez le projet de base de données, son contenu et tout code source associé. Vous extrayez les fichiers du contrôle de version, où votre code et le projet de base de données peuvent être maintenus synchronisés.
Si nécessaire, vous créez ou modifiez des tests unitaires et vous mettez à jour le plan de génération de données.
Vous générez et déployez le projet de base de données ainsi que la ou les applications associées sur le serveur sur lequel réside votre copie privée de la base de données.
Vous exécutez des tests unitaires, en utilisant éventuellement un générateur de données pour créer des données de test.
Vous répétez les étapes 2 à 5 jusqu'à ce que tous les tests réussissent et que vous soyez satisfait des résultats.
Vous archivez toutes les modifications apportées à votre projet de base de données, à votre application et à vos tests unitaires lorsque les tests unitaires réussissent et que vous êtes satisfait de la qualité du travail obtenue.
Vous passez à la tâche suivante.
En suivant ce processus, vous pouvez développer et tester les modifications apportées de manière isolée, où elles ne peuvent pas affecter d'autres développeurs avant d'atteindre un niveau de qualité constant. À ce stade, vous archivez votre travail dans le contrôle de version et autorisez d'autres développeurs à accéder aux améliorations que vous avez apportées.
Déploiement de modifications en phase de production
Une fois que l'équipe a apporté toutes les modifications nécessaires, l'étape suivante consiste à mettre à jour le serveur de production. Si vous êtes chargé d'effectuer cette tâche, vous pouvez obtenir la version la plus récente du projet de base de données à partir du contrôle de version, générer le script de déploiement, mettre manuellement à jour ce script si nécessaire, puis exécuter le script pour déployer les modifications de schéma apportées en phase de production.
Certains logiciels de contrôle de version permettent d'étiqueter un ensemble de fichiers tels qu'ils existent à un instant précis. Par exemple, vous pouvez étiqueter un projet de base de données, le code source d'une application, des tests unitaires et d'autres fichiers tels qu'ils existaient pour une version particulière. Même si le développement continue à partir de ce stade, vous pouvez toujours récupérer les versions spécifiques des fichiers compris dans la version. Pour plus d'informations sur le déploiement d'une version précédemment étiquetée de votre projet de base de données, consultez Comment : déployer une version antérieure d'une base de données sous contrôle de version.
Représentations de votre base de données
Si vous suivez ce processus de développement de base de données, vous pouvez avoir jusqu'à trois représentations de votre base de données :
La représentation de serveur de base de données, qui contient la base de données et les données. Si vous êtes développeur de base de données, vous travaillerez essentiellement avec une base de données de développement ou de test. De nombreuses organisations ont un rôle d'administrateur de base de données distinct qui a accès à la base de données de production.
Le projet de base de données, qui est la représentation hors connexion du schéma de base de données. Les projets de base de données incluent également tous les plans de génération de données que vous utilisez pour générer des données et des scripts de test que vous utilisez pour déployer et gérer votre base de données. Pour plus d'informations, consultez Vue d'ensemble des projets de base de données.
Le référentiel de contrôle de version, qui suit toutes les modifications que vous ou tout membre de l'équipe apportez au projet de base de données.
Le serveur de base de données échange des données avec le projet de base de données, qui échange également des données avec le référentiel de contrôle de version. Vous pouvez gérer plus efficacement votre base de données si vous comprenez comment ces représentations échangent des données par rapport au contrôle de version, à l'importation de schéma et au déploiement.
Voir aussi
Tâches
Procédure pas à pas : création d'un environnement de développement de base de données isolé
Concepts
Vue d'ensemble de l'utilisation d'objets de base de données
Vue d'ensemble de la terminologie de Database Edition
Autres ressources
Démarrage avec des projets de base de données
Génération et déploiement de schémas de base de données
Utilisation de scripts de base de données
Utilisation de projets de base de données dans un environnement de travail en équipe