Business
Par sa structure, Ada permet une nouvelle activité qui est la commercialisation de composants logiciels, plus particulièrement grâce à la généricité. Les composants logiciels sont des modules fournis pour être réutilisés tels quels autant de fois que nécessaire. La généricité est une fonctionnalité du langage donnant la possibilité de créer des paquetages ou sous-programmes en laissant certaines définitions "ouvertes" (couramment des types de données). Par exemple, la logique de fonctionnement d'une file d'attente reste la même que ce soit une file de nombres entiers, de chaînes de caractères ou d'enregistrements regroupant les informations d'une fiche. Il faut pouvoir placer une donnée à l'entrée, extraire à la sortie la première ayant été présentée, savoir si la file est vide, etc. Au début d'une unité générique, des "paramètres" sont déclarés, indiquant ses possibilités de variation. L'opération de créer une unité effective par une déclaration appropriée (fixant tous les "paramètres") est appelée instanciation générique.
Des composants logiciels destinés à des applications tout à fait quelconques peuvent être commercialisés (c'est une capacité entièrement intégrée au langage). Il est bien sûr économiquement intéressant de disposer d'éléments préfabriqués et déjà fiabilisés. Il suffit d'inclure une garantie au cas où un problème serait repéré. Mis à part la répartition des coûts de conception, un avantage non négligeable est qu'une erreur a beaucoup plus de chance d'être trouvée dans un composant utilisé de nombreuses fois pour toute sorte de cas de figure que dans une partie de programme écrite spécifiquement sans être réemployé. Une société travaillant dans un domaine spécialisé peut aussi choisir de revendre certains de ses éléments de base afin d'amortir le travail fourni.