{"id":5003365,"date":"2015-12-17T00:15:27","date_gmt":"2015-12-17T08:15:27","guid":{"rendered":"https:\/\/aadev22.local\/?post_type=aa_glossary&#038;p=5003365"},"modified":"2022-08-30T12:11:04","modified_gmt":"2022-08-30T19:11:04","slug":"ubiquitous-language","status":"publish","type":"aa_glossary","link":"https:\/\/agilealliance.org\/glossary\/ubiquitous-language\/","title":{"rendered":"Ubiquitous Language"},"content":{"rendered":"<div>\n<div>\n<p>A design approach described in Eric Evans\u2019\u00a0<a href=\"http:\/\/www.amazon.com\/dp\/0321125215\">\u201cDomain Driven Design\u201d<\/a> (2003), consists notably of striving to use the vocabulary of a given business domain, not only in discussions about the requirements for a software product but in discussions of design as well and all the way into \u201cthe product\u2019s source code itself\u201d.<\/p>\n<p>(Evans\u2019 book details other complementary techniques, but the name \u201cubiquitous language\u201d conveys the main intention.)<\/p>\n<h2>Expected Benefits<\/h2>\n<p>One of the problems many software development efforts face is the constant friction introduced by translation between two technical vocabularies, that of the business domain on the one hand and that of the developers on the other.<\/p>\n<p>To some extent this duality is inevitable: developers must frame their work in terms of algorithms and computation, which generally have no direct equivalent in the business vocabulary.<\/p>\n<p>However, the technical vocabulary often tends to \u201cleak\u201d out from reasonable boundaries and take over design conversations to the point where business experts start feeling alienated and disengaged from crucial conversations.<\/p>\n<p>Deliberately and explicitly adopting a \u201cubiquitous language\u201d policy mitigates these difficulties and is therefore a success factor in Agile projects.<\/p>\n<h2>Origins<\/h2>\n<ul>\n<li>1999: early on in the elaboration of\u00a0<a href=\"https:\/\/agilealliance.org\/glossary\/xp\/\">Extreme Programming<\/a>, the \u201cSystem Metaphor\u201d practice is proposed to address the issues of business-technical translation and cognitive friction, however, the practice is poorly understood and fails to catch on<\/li>\n<li>2003: the term \u201cdomain-driven design\u201d is coined by Eric Evans and described in a <a href=\"http:\/\/www.amazon.com\/dp\/0321125215\">book<\/a>\u00a0of the same name, eventually emerging as a viable alternative to the \u201cSystem Metaphor\u201d<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div>\n<div><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Teams use a ubiquitous language to use the vocabulary of a business in the requirements, design discussions and source code for a software product.<\/p>\n","protected":false},"author":8027401,"featured_media":8067461,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","categories":[908],"tags":[],"class_list":["post-5003365","aa_glossary","type-aa_glossary","status-publish","has-post-thumbnail","hentry","category-process"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/aa_glossary\/5003365","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/aa_glossary"}],"about":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/types\/aa_glossary"}],"author":[{"embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/users\/8027401"}],"replies":[{"embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/comments?post=5003365"}],"version-history":[{"count":0,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/aa_glossary\/5003365\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/media\/8067461"}],"wp:attachment":[{"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/media?parent=5003365"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/categories?post=5003365"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/agilealliance.org\/wp-json\/wp\/v2\/tags?post=5003365"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}