class ChecklistDefinitionStatusService
{
public function setVisible($checklistDefinitionId, $visible)
{
$this->visible = $visible;
}
}
$checklistDefinitionStatusService->setVisible(false);Gerson Sunyé gerson.sunye@univ-nantes.fr
— I want to disable checklists
Example by Nic Wortel

Ok, I will open an improvement ticket
class ChecklistDefinitionStatusService
{
public function setVisible($checklistDefinitionId, $visible)
{
$this->visible = $visible;
}
}
$checklistDefinitionStatusService->setVisible(false);
Constant need to translate from the problem (domain) language to the technical language
people use the same term differently without realizing
information is lost in translation, misaligned concepts are used
developed software misses the point
users will have to compensate
Adjective: present, appearing, or found everywhere. Synonyms: omnipresent
A shared language developed by the team - a team composed of both domain experts and software developers.
used everywhere:
in user stories (post-its, Jira)
during discussions, backlog refinements, etc.
in documentation
in automated tests
used by everyone on the team: developers and domain experts
evolves over time as new concepts are discovered

When discussing the domain, and a developer uses a term, and the domain expert uses exactly the same term, they mean precisely the same thing.



discuss and agree on terminology as a team
use one word for a specific concept, and only one concept per word
point out imprecision and contradictions
update the code as the language evolves
avoid the use of acronyms and abbreviations


a list of terms in a particular domain of knowledge with the definitions for those terms
Feature: Disabling a checklist
In order to quickly find the right checklist
As an inspector
I want to disable checklists that are no longer used
Scenario: Disabling an active checklist
Given an active checklist
When I disable the checklist
Then the checklist should no longer be visible
Scenario: Disabling a checklist that is already disabled
Given a disabled checklist
When I disable the checklist
Then I should get an errorBehat, an open source Behavior Driven Development framework



class Checklist
{
public function disable()
{
$this->enabled = false;
}
}
$checklist->disable();

Give meaning to your software model
Put your all relational models in same linguistic boundary
Define a ubiquitous language