Как вы обсуждаете модель домена со своими экспертами по домену? - PullRequest
2 голосов
/ 01 января 2009

Предположим, вы работаете с экспертами домена клиента. Вы понимаете (или, по крайней мере, имеете разумное убеждение), что ваша модель их проблемы яснее, чем их. Как ты убедил их, что они должны идти по твоему пути?

В моем случае достаточно ясно, каковы основные требования (например, торговая система для продукта). Исходя из моего опыта и моих исследований, я бы порекомендовал TradeContract, у которого есть две TraderParties. Каждая TraderParty покупает один продукт и продает один продукт. Если бы мне пришлось моделировать композит в XML, я мог бы моделировать его как:

<tradeContract>
    <id>1234</id>
    <tradeParty>
       <id>1</id>
       <name>Ann</name>
       <long type="money" value="20.00"/>
       <short reference="book.123"/>
    </tradeParty>
    <tradeParty>
       <id>2</id>
       <name>Bob</name>
       <long reference="book.123"/>
       <short type="money" value="20.00"/>
    </tradeParty>
    <product>
       <id key="book.123">123</id>
       <type>book</type>
       <title>Harry Potter and the Prisoner of Azkaban</title>
    </product>
</tradeContract>

Вышеуказанные простые модели, которые Энн купила Гарри Поттер и Узник Азкабана у Боба за 20,00 долларов. Более абстрактно, это моделирует двухстороннюю, четырехногую торговлю. Давайте просто предположим, что система, которая использует XML, проверяет tradeContract и организует сделку.

Что если ваши эксперты по доменам сочтут это слишком сложным для них? В то время как вы можете легко признать некоторые промежуточные шаги, чтобы добраться до вышеуказанной доменной модели, как вы можете убедить их в том, что лучше «кусать пулю» и использовать вышеуказанную доменную модель раньше, чем позже?

ДОПОЛНЕНИЕ: предлагаемая модель МСП ...

Эксперты в области продолжают говорить о модели, которую я придумал, но, похоже, они еще не верят, что их бизнес-процесс к этому готов. (Тем не менее, я думаю, что есть способы, чтобы сделать сейчас).

Модель, которую они хотят немедленно :

<tradeParty>
   <id>1</id>
   <name>Ann</name>
   <transaction type="long" product="money" value="20.00"/>
</tradeParty>

Это модели, которые Энн подарила 20,00 $. Затем необходимо ввести отдельную транзакцию:

<tradeParty>
   <id>1</id>
   <name>Ann</name>
   <transaction type="short" product="book" reference="book.123"/>
</tradeParty>

Чтобы смоделировать, что она приобрела книгу о Гарри Поттере. На мой взгляд, довольно громоздко, потому что мы не можем смоделировать, обманет ли наша система Энн. Аналогичным образом фрагментация транзакций происходит аналогично со стороны Боба в торговом контракте.

Ответы [ 2 ]

2 голосов
/ 01 января 2009

Я никогда не пытаюсь изменить ментальную модель домена экспертами домена ... они все-таки эксперты. Однако, если я смоделирую его немного по сравнению с их моделью, я позабочусь о том, чтобы он все же давал тот же эффект. Поэтому я принимаю их точку зрения, моделирую их по-своему, а затем представляю им так, как они это понимают.

Всегда будет такой перевод с вашей технической точки зрения на их бизнес-ориентированную перспективу. Это роль вашего бизнес-аналитика.

Какую модель придумал ваш эксперт в области? Если, как вы говорите, ваша модель соответствует требованиям, тогда используйте вашу модель, но представьте эксперту по домену менее техническое представление ... вместо этого используйте диаграммы. Им не нужно знать XML, сгенерированный на диаграмме.

1 голос
/ 01 января 2009

Я никогда не пытаюсь изменить ментальную модель домена экспертами ... они все-таки эксперты.

Я думаю, что это в основном верно. Тем не менее, я чувствую, что эксперты в области не «понимают» это так хорошо, как я. В то время как это легко просто объяснить, что они не понимают технические аспекты, зачастую это признак того, что общение между разработчиком и экспертами в области не на должном уровне. Это может быть довольно опасно.

Если существует огромный разрыв между тем, что, по вашему мнению, будет работать лучше всего, и тем, чего хотят эксперты домена, возможно, именно вам не хватает ключевой части домена, которую они могут принять как должное. Попробуйте спросить о проблеме с разных сторон. Иногда вы получите другой результат, следуя другому пути рассуждения. Лампочки могут загореться, и вдруг у вас будет гораздо лучшее понимание проблемы, чем раньше, и благодаря этому вы сможете лучше общаться с экспертами в области.

Какую модель придумал ваш эксперт по доменам?

Думаю, это было бы очень интересно увидеть.

...