Dependency Constraint Language

En informatique, le Dependency Constraint Language (DCL) est un langage qui permet de localiser dans le code source d'un logiciel des décisions d'implémentation qui représentent des violations à l'architecture décrite au départ[1].

Pour les articles homonymes, voir DCL.

Il permet de contrôler deux types de violations :

  • les divergences (quand une dépendance existante dans le code n'est pas prévue dans l'architecture de départ) ;
  • les absences (quand une dépendance existante dans l'architecture de départ n'existe pas dans le code source).

Utilisation

Le langage DCL spécifie quatre primitives pour définir les contraintes :

  • only can (divergence)
only Factory can-create Product
  • can only (divergence)
Util can-only-depend $java, Util
  • cannot (divergence)
View cannot-access Model
  • must (absence)
Product must-implement Serializable

Il se complète par d’autres primitives pour des besoins spécifiques : access, declare, create, extend, implement, throw, annotate.

Références

Voir aussi

Bibliographie

  • (en) Ricardo Terra, Marco Tulio Valente, Krzysztof Czarnecki et Roberto S. Bigonha, « Recommending Refactorings to Reverse Software Architecture Erosion », 16th European Conference on Software Maintenance and Reengineering, , p. 335-340 (ISBN 978-0-7695-4666-7, DOI 10.1109/CSMR.2012.40)
  • Portail de l’informatique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.