🔍 معرفی مختصر Exploratory Domain Discovery (EDD)
رویکرد EDD روشی است برای کشف و درک عمیقتر مسئله، پیش از آنکه وارد طراحی یا توسعه نرمافزار شویم. برخلاف بسیاری از روشهای رایج که از ابتدا به دنبال جزئیات میروند، EDD از پایان آغاز میکند — جایی که نتیجه یا خروجی مورد انتظار سیستم قرار دارد — و با نگاهی معکوس، به عقب بازمیگردد تا مفاهیم پنهان و ساختارهای بنیادین دامنه را آشکار کند.
این رویکرد، ریشه در تفکر سیستماتیک و روایتمحور دارد. درست مثل یک فیلم یا رمان که همهی اتفاقات برای انتقال یک پیام اصلی طراحی شدهاند، در دامنهی یک نرمافزار هم بیشتر اجزای سیستم در خدمت یک «مفهوم کلیدی» یا همان Main Point هستند؛ چیزی که بدون آن، کل ساختار بیمعنا میشود. در EDD ما تلاش میکنیم این نقطهی مرکزی را پیدا کرده و روابط علّی و ساختارهای اطراف آن را کشف کنیم.
🌀 فرآیند اکتشاف در EDD بهصورت چرخشی (Iterative) و عرضی (Breadth-First) انجام میشود. فرض کنید Main Point در مرکز یکسری دایرهی هممرکز قرار دارد. در دور اول، تصویری کلی و انتزاعی از دامنه ساخته میشود. در دورهای بعدی، این دایره تنگتر شده و وارد جزئیات بیشتری میشویم. این مدلسازی لایهلایه، کمک میکند پیچیدگیها را بهتر درک کرده و رفتارهای تکرارشونده را بشناسیم.
✨ یکی از ویژگیهای کلیدی EDD، روایت معکوس (Backward Storytelling) است — یعنی بهجای اینکه با «از کجا شروع کنیم؟» آغاز کنیم، میپرسیم: «ته داستان چیست؟». این دیدگاه باعث میشود روابط علت و معلولی واضحتر و دقیقتر دیده شوند.
🧩 در EDD ما با سه ابزار اصلی کار میکنیم:
🟦 مفهوم Domain Concept: هر مفهوم کلیدی که در دامنه وجود دارد را روی یک کارت مینویسیم.
🔄 مفهوم Relation : رابطهی بین این مفاهیم را مشخص میکنیم، از انتها به ابتدا.
📝 مفهوم Example : برای هر مفهوم، یک نمونه واقعی و قابل لمس مینویسیم تا فهم مشترک بین افراد تیم شکل بگیرد.
🎯 مثال کاربردی:
فرض کنید در حال تحلیل یک سیستم حقوق و دستمزد هستید.
از سؤال «ته داستان چیست؟» شروع میکنیم: مثلاً صدور فیش حقوقی خروجی نهایی است. آن را روی یک کارت مفهومی (domain concept) یادداشت میکنیم. سپس یک گام به عقب: فیش حقوقی حاصل محاسبهی فرمولهای حقوق است. این فرمولها هم بر اساس کارکرد ماهانهی کارمند محاسبه میشوند.
با همین روال، مفاهیم را از پایان به ابتدا کشف و یادداشت میکنیم. سپس روابط میان آنها را (باز هم از انتها به ابتدا) ثبت میکنیم. در پایان، برای هر مفهوم یک مثال واقعی (concrete example) مینویسیم تا از درستی و شفافیت مدل اطمینان حاصل شود.
🧠 فلسفهی EDD:
• بهرهگیری از تفکر سیستماتیک و روایتمحور
• تمرکز بر کشف تدریجی و دید کلنگر به دامنه
• مدلسازی چرخشی برای کشف رفتارهای تکرارشونده دامنه
🔁 الگوهای رایج (Patterns):
• چرخههای زمانی مثل حقوق ماهیانه یا فرایند رزرو
• مفهوم کلیدی (Main Point) که سایر اجزای دامنه حول آن شکل میگیرند
• روایت معکوس برای کشف روابط علت و معلولی
✅ در نهایت اینکه:
EDD ابزارهای سادهای داره — مثل کارتهای مفهومی و مثال — اما قدرتش در طرز فکر پشتشه: اینکه قبل از ورود به طراحی یا کدنویسی، دقیقاً بفهمیم چه چیزی را طراحی میکنیم و چرا.
📎 اطلاعات بیشتر:
https://exploratorydomaindiscovery.com
-انجمن DDD ایران
@DDD_Iran
>>Click here to continue<<
