回答:
ストーリーごとに1つの役割。それぞれの役割を個別に検討することを強制することにより、違いが自然に現れる場合があります
[例が役立つかもしれません。役割AとBが同じストーリーの多くを共有している場合、役割の混乱が生じる可能性があります。代わりに、共通のストーリーを「所有する」役割Cがある可能性があります]
@Stevenに同意します。ストーリーを壊すか、役割に一般化を導入する必要があります。つまり、ストーリーがAとBの両方で同じであるたびに使用されるAとBの一般化が得られます(一般化がAとBの親であるロール/アクターの継承のようなものです)。
役割を特定して抽象化する必要がある
あなたが提供した例...
As a Role-A or a Role-B
When I perform Action-X
Event-Y should occure.
プログラムが取ることができる組み合わせの指数関数的な数があるため、スケーリングしません。
個々の役割を抽出するには、グローバルな状態を無視しながら、直接的な視点からステップを想像する必要があります。
「一杯のコーヒーを手に入れる方法」をご覧になることを強くお勧めします。状態図を使用してコーヒーショップのREST APIをモデル化する方法を示します。
重要なのは、システムがローカルレベルで機能していることがわかるまで、システムがグローバルにどのように相互作用するかを正確に描写することはできないということです。