Les applications réalisent cette tâche en définissant les différentes versions de chaque composant et les différents environnements que doivent franchir les composants avant le passage en production. De plus, les applications mappent également les hôtes de la structure et les systèmes (dénommés ressources) dont un composant a besoin dans chaque environnement.
Les applications implémentent également des déploiements, des rétromigations et d'autres tâches similaires. Ces tâches sont appelées processus. Toutefois, au niveau de l'application, les processus ne portent que sur les composants et les ressources nécessaires au déploiement et aux tâches associées. En revanche, les processus de composants portent sur l'exécution de commandes et des tâches associées..
Les applications recourent également à des instantanés pour gérer les différentes versions de chaque composant. Un instantané représente l'état actuel d'une application dans l'environnement. Normalement, l'instantané est généré dans un environnement sans portes d'approbation. Ce type d'environnement est dénommé environnement non contrôlé. Pour la plupart des utilisateurs, l'instantané suit le pipeline.
Un environnement est un ensemble de ressources qui hébergent l'application. Les environnements incluent généralement les systèmes hôte et des agents IBM® UrbanCode Deploy. Lorsqu'un déploiement est lancé, il est toujours exécuté dans un environnement. Alors que les environnements sont des collections de ressources, les ressources peuvent varier selon l'environnement.
Par exemple, l'environnement 1 pourrait comprendre un serveur Web unique, un serveur de middleware unique et un serveur de base de données unique. IBM UrbanCode Deploy représente ces systèmes comme trois ressources distinctes s'exécutant dans l'environnement 1. L'environnement 2, par contre, pourrait comporter plusieurs bases de données et serveurs opérant en cluster. Pour déployer les mêmes composants sur ces différents environnements, IBM UrbanCode Deploy organise les éléments de ressources en groupes de ressources. Le serveur conserve également un inventaire de tous les éléments déployés sur chaque environnement. De la sorte, le serveur IBM UrbanCode Deploy gère le contenu de chaque environnement et suit les différences entre ces environnements.