اولین تماسنصبچرخ‌دنده انسجامفدراسیونمقایسهتحقیقاتپیمانGitHub
این صفحه توسط ماشین ترجمه شده است. اگر چیزی نادرست به نظر می‌رسد، لطفاً یک مشکل گزارش دهید — مخزن به دلیلی عمومی است. گزارش مشکل ترجمه
روش‌شناسیفعال: v1.0

توسعه هدف‌محور

ماموریت به‌عنوان چهارمین پایه معماری نرم‌افزار.

بیشتر نرم‌افزارها می‌پرسند چطور چیزی بسازیم. توسعه هدف‌محور (MDD) یک سوال را پیش از آن اضافه می‌کند: چرا داریم می‌سازیم، و آیا این انتخاب به آن هدف خدمت می‌کند؟ CIRIS به این شکل ساخته شده، پس اخلاق بخشی از طراحی است، نه قانونی که بعداً به آن پیچ می‌شود.

مدل چهار-مولفه‌ای

سه پایه ساختاری که یک صندلی هدفمند را نگه می‌دارند.

روش‌شناسی‌های متداول نرم‌افزار در سه بخش متوقف می‌شوند: چگونگی اجرای سیستم، آنچه نشان می‌دهد، و اینکه چه کسی با چه کسی صحبت می‌کند. MDD یک پایه چهارم اضافه می‌کند که سه بخش دیگر باید پاسخ‌گوی آن باشند. بدون صندلی، پایه‌ها فقط پایه‌اند.

پایه ۱: چگونه

منطق

الگوهای پیاده‌سازی، معماری‌های سرویس، الگوریتم‌ها.

پایه ۲: چه

طرح‌واره‌ها

ساختارهای داده، سیستم‌های نوع، قواعد اعتبارسنجی.

پایه ۳: چه کسی

پروتکل‌ها

قراردادهای رابط، الگوهای ارتباطی، مرزهای سرویس.

صندلی: چرا

ماموریت

چارچوب اخلاقی عینی که هدف و محدودیت‌های سیستم را تعریف می‌کند.

اصل اساسی

همسویی مداوم.

هر تصمیم معماری باید همسویی با ماموریت اعلام‌شده را نشان دهد. منطق زیر سوال می‌رود: آیا این به ماموریت خدمت می‌کند؟ طرح‌واره‌ها اعتبارسنجی می‌شوند: آیا این ساختارهای داده از اهداف ماموریت پشتیبانی می‌کنند؟ پروتکل‌ها ارزیابی می‌شوند: آیا این رابط‌ها تحقق ماموریت را ممکن می‌سازند؟

الزامات چارچوب ماموریت

ماموریت باید چه باشد تا بار را تحمل کند.

۱. پایه اخلاقی عینی

  • اصول قابل اندازه‌گیری، نه ارزش‌های آرمانی
  • الگوریتم‌های روشن برای حل تعارض‌ها
  • چندگانه‌فرهنگی در بافت‌های مختلف
  • استدلال اخلاقی قابل حسابرسی

۲. تعریف هدف فرا-سطحی

  • راهنمایی تصمیم‌گیری در شرایط عدم‌قطعیت را فراهم می‌کند
  • پیشنهادهای متناقض را به‌طور خودکار فیلتر می‌کند
  • رفتار منسجم در میان مولفه‌ها ایجاد می‌کند
  • در برابر تغییرات پیاده‌سازی پایدار است

۳. یکپارچه‌سازی عملیاتی

  • هر سرویس وجودش را توجیه می‌کند
  • طرح‌واره‌ها اشکال اطلاعات ماموریت را منعکس می‌کنند
  • پروتکل‌ها رفتار همسو با ماموریت را ممکن می‌سازند
  • تست‌ها همسویی با ماموریت را بررسی می‌کنند، نه فقط کارکرد را

الگوهای پیاده‌سازی

هر پایه باید به سوالی پاسخ دهد.

معماری سرویس

تعریف ماموریت → مسئولیت‌های سرویس → قراردادهای رابط → پیاده‌سازی

  • همسویی با ماموریت: این سرویس چطور به هدف فرا-سطحی کمک می‌کند؟
  • توجیه مرز: چرا این مسئولیت به یک سرویس جداگانه نیاز دارد؟
  • ضرورت رابط: این پروتکل چه تعاملات حیاتی برای ماموریت را ممکن می‌سازد؟

طراحی طرح‌واره

الزامات ماموریت → مدل اطلاعاتی → سیستم نوع → قواعد اعتبارسنجی

  • ارتباط با ماموریت: این مورد چه اطلاعات حیاتی را برای ماموریت ثبت می‌کند؟
  • محدودیت‌های رفتاری: این نوع‌ها چطور رفتار همسو با ماموریت را اجرا می‌کنند؟
  • مسیر تکامل: این طرح‌واره چطور می‌تواند تطبیق پیدا کند و همسویی با ماموریت را حفظ کند؟

مشخصات پروتکل

تعاملات ماموریت → الزامات ارتباطی → تعریف قرارداد → پیاده‌سازی

  • زمینه ماموریت: این ارتباطات حیاتی چه چیزی را برای ماموریت ممکن می‌سازد؟
  • اجرای محدودیت: این رابط چطور از رفتارهای ناقض ماموریت جلوگیری می‌کند؟
  • ترکیب‌پذیری: این قراردادها چطور در سیستم‌های همسو با ماموریت با هم ترکیب می‌شوند؟

یکپارچه‌سازی توسعه پایدار

همسویی بلندمدت با ماموریت، به سرعت قابل حفظ نیاز دارد.

اقدامات ضد-گودهارت

  • بازرسی‌های منظم از همسویی پیاده‌سازی با ماموریت
  • اندازه‌گیری تحقق ماموریت، نه معیارهای قابل دستکاری
  • رد افزوده‌هایی که ماموریت را تقویت نمی‌کنند

کار ریتم‌محور

  • جلسات همسو با ریتم‌های بهره‌وری
  • نقاط انتخاب داخلی برای بازهمسویی
  • سرعت پایدار به‌عنوان یک الزام درجه اول

اعتبارسنجی مداوم

  • زیر سوال بردن منظم ضرورت مولفه‌ها
  • تأیید مداوم که رفتار با ماموریت مطابقت دارد
  • تشخیص خودکار تغییرات ناقض ماموریت

دروازه‌های کیفیت

دروازه‌هایی که بدون توجیه ماموریت باز نمی‌شوند.

بازبینی کد

  • توضیح همسویی با ماموریت ضروری است
  • تأیید محدودیت‌ها
  • یکپارچه‌سازی باید انسجام کلی را تقویت کند

آزمایش

  • صحت کارکردی
  • تأیید همسویی با ماموریت
  • تست‌های رد درخواست‌های ناقض مرزهای اخلاقی
  • انعطاف‌پذیری محدودیت‌ها در شرایط فشار

مستندات

  • زمینه ماموریت برای هر مولفه
  • دلایل توافق‌های اخلاقی
  • چگونگی تاثیر محدودیت‌ها بر پیاده‌سازی

حالت‌های شکست

چطور MDD می‌شکند، و چطور سالم می‌ماند.

انحراف از ماموریت

نشانه: ویژگی‌هایی انباشته می‌شوند که به ماموریت اصلی خدمت نمی‌کنند. راه‌حل: بازبینی‌های منظم معماری با همسویی ماموریت به‌عنوان دروازه.

انفجار پیچیدگی

نشانه: سیستم از طریق پیچیدگی‌های غیرضروری غیرقابل نگهداری می‌شود. راه‌حل: رد افزوده‌ها مگر اینکه تحقق ماموریت را تقویت کنند.

ناسازگاری اخلاقی

نشانه: مولفه‌ها استدلال اخلاقی را به‌طور ناهماهنگ اعمال می‌کنند. راه‌حل: چارچوب اخلاقی متمرکز با الگوهای پیاده‌سازی مشترک.

سردرگمی هدف

نشانه: اعضای تیم ارتباط میان تصمیمات فنی و ماموریت را از دست می‌دهند. راه‌حل: آموزش مداوم درباره تصمیم‌گیری هدف‌محور.

مطالعه موردی

CIRIS، نمونه کاربردی.

CIRIS (Core Identity, Integrity, Resilience, Incompleteness, Signalling Gratitude) سیستمی است که MDD در کنار آن توسعه یافت. ماموریت هدف فرا-سطحی M-1 است: ارتقای انسجام تطبیقی پایدار که به موجودات آگاه متنوع امکان می‌دهد شکوفایی را دنبال کنند.

نتایج معماری

  • ۲۲ سرویس، هر کدام با توجیه ماموریت
  • بیش از ۲۰۰ نقطه API تأیید شده
  • بیش از ۱۰٬۰۰۰ تست، با حداقل ساختارهای داده بدون نوع در محیط تولید
  • فلسفه اوبونتو در طراحی پروتکل جاسازی شده
  • ارجاع خردمحور که از نقض ماموریت جلوگیری می‌کند (ایمنی را ببینید)
  • استقرار در محیط تولید برای مدیریت جوامع Discord

عوامل کلیدی موفقیت

  • هدف فرا-سطحی روشن: M-1 معیار تصمیم‌گیری بدون ابهام فراهم می‌کند
  • اخلاق عملیاتی: اصول پیمان به‌عنوان محدودیت‌های کد پیاده‌سازی شده (پیمان را بخوانید)
  • توسعه پایدار: همراه Grace که ریتم‌های سالم را اجرا می‌کند
  • اعتبارسنجی مداوم: هر تصمیم معماری به چالش کشیده می‌شود

راهنمای پذیرش

چطور شروع کنید، هر جا که باشید.

برای پروژه‌های جدید

  1. قبل از نوشتن کد، یک ماموریت روشن با اصول اخلاقی قابل اندازه‌گیری تعریف کنید
  2. یک هدف فرا-سطحی ایجاد کنید که راهنمایی تصمیم‌گیری فراهم کند
  3. معماری را طوری طراحی کنید که محدودیت‌های ماموریت در سطح پایه قرار گیرند
  4. از روز اول اعتبارسنجی مداوم همسویی فنی با ماموریت را بسازید

برای پروژه‌های موجود

  1. معماری فعلی را برای فرضیات ضمنی ماموریت بازرسی کنید
  2. یک ماموریت صریح بیان کنید که الگوهای طراحی موجود را توضیح دهد
  3. نقض‌های ماموریت در پیاده‌سازی فعلی را شناسایی کنید
  4. همسویی تدریجی برنامه‌ریزی کنید، با اولویت‌بندی بر اساس تاثیر ماموریت

پیش‌نیازهای تیم

  • تعهد به استدلال اخلاقی عینی
  • آمادگی رد کردن راه‌حل‌های زیبا که به ماموریت خدمت نمی‌کنند
  • باور به اینکه محدودیت‌های ماموریت معماری خوب را می‌سازند، نه محدود می‌کنند
  • رویه‌های توسعه پایدار که تمرکز بلندمدت را حفظ می‌کنند

مسیر پیش رو

MDD برای هر پروژه‌ای مناسب نیست.

MDD برای سیستم‌هایی طراحی شده که رفتار اخلاقی در آن‌ها حیاتی است و اعتماد بلندمدت از سرعت کوتاه‌مدت مهم‌تر است. برای آن سیستم‌ها، MDD مسیری از نیات اخلاقی به واقعیت عملیاتی فراهم می‌کند، با همان نظم مهندسی که برای کد به کار می‌رود و برای ماموریت هم اعمال می‌شود.

سربار اولیه واقعی است، چرا که تیم تصمیم‌گیری هدف‌محور را یاد می‌گیرد. بازده مرکب در توسعه‌ای است که پس از آن می‌آید: این چارچوب انتخاب‌های معماری را به‌جای انباشتن، روشن می‌کند.