Mission Driven Development
مشن کو سافٹ ویئر آرکیٹیکچر کی چوتھی بنیاد کے طور پر۔
زیادہ تر سافٹ ویئر یہ پوچھتا ہے کہ کوئی چیز کیسے بنائی جائے۔ Mission Driven Development (MDD) پہلے ایک سوال اور جوڑتا ہے: ہم یہ کیوں بنا رہے ہیں، اور کیا یہ انتخاب اس مقصد کی خدمت کرتا ہے؟ CIRIS اسی طریقے سے بنایا گیا، اس لیے اخلاقیات ڈیزائن کا حصہ ہے، نہ کہ بعد میں لگایا گیا کوئی اصول۔
چار جزو والا ماڈل
ایک مقصدی نشست کو سہارا دینے والی تین ڈھانچاتی ٹانگیں۔
روایتی سافٹ ویئر طریقہ کار تین پر رک جاتے ہیں: نظام کیسے چلتا ہے، وہ کیا ظاہر کرتا ہے، اور کون کس سے بات کرتا ہے۔ MDD ایک چوتھی بنیاد جوڑتا ہے جس کے سامنے باقی تینوں جوابدہ ہیں۔ نشست کے بغیر، ٹانگیں صرف ٹانگیں ہیں۔
ٹانگ 1: کیسے
منطق
نفاذ کے نمونے، سروس آرکیٹیکچر، الگورتھم۔
ٹانگ 2: کیا
اسکیمے
ڈیٹا کے ڈھانچے، ٹائپ سسٹم، توثیق کے اصول۔
ٹانگ 3: کون
پروٹوکول
انٹرفیس معاہدے، مواصلاتی نمونے، سروس کی حدود۔
نشست: کیوں
مشن
نظام کے مقصد اور حدود کا تعین کرنے والا معروضی اخلاقی ڈھانچہ۔
بنیادی اصول
مسلسل ہم آہنگی۔
ہر آرکیٹیکچرل فیصلے کو مشن کے ساتھ ہم آہنگی ظاہر کرنی ہوگی۔ منطق پر سوال اٹھایا جاتا ہے: کیا یہ مشن کی خدمت کرتا ہے؟ اسکیموں کی توثیق ہوتی ہے: کیا یہ ڈیٹا کے ڈھانچے مشن کے اہداف کی مدد کرتے ہیں؟ پروٹوکولز کا جائزہ لیا جاتا ہے: کیا یہ انٹرفیس مشن کی تکمیل کو ممکن بناتے ہیں؟
مشن کے ڈھانچے کی ضروریات
مشن کو بوجھ اٹھانے کے قابل بنانے کے لیے کیا ہونا چاہیے۔
1. معروضی اخلاقی بنیاد
- آرزومندانہ اقدار کے بجائے قابل پیمائش اصول
- تصفیے کی سمجھوتہ پذیری کے لیے واضح الگورتھم
- ثقافتی سیاق و سباق میں کثرت پسندانہ
- قابل آڈٹ اخلاقی استدلال
2. میٹا ہدف کی تعریف
- غیر یقینی صورت حال میں فیصلہ سازی کی رہنمائی فراہم کرتا ہے
- متضاد تجاویز کو خودکار طور پر فلٹر کرتا ہے
- اجزاء میں مربوط رویہ پیدا کرتا ہے
- نفاذ کی تبدیلیوں میں مستحکم
3. عملیاتی انضمام
- ہر سروس اپنے وجود کا جواز پیش کرتی ہے
- اسکیمے مشن کی معلوماتی شکلوں کو ظاہر کرتے ہیں
- پروٹوکول مشن کے مطابق رویے کو ممکن بناتے ہیں
- ٹیسٹ صرف کام نہیں بلکہ مشن سے ہم آہنگی کی جانچ کرتے ہیں
نفاذ کے نمونے
ہر ٹانگ کو ایک سوال کا جواب دینا ہوتا ہے۔
سروس آرکیٹیکچر
مشن کی تعریف ← سروس ذمہ داریاں ← انٹرفیس معاہدے ← نفاذ
- مشن سے ہم آہنگی: یہ سروس میٹا ہدف کو کیسے آگے بڑھاتی ہے؟
- حد کا جواز: اس ذمہ داری کو ایک علیحدہ سروس کی ضرورت کیوں ہے؟
- انٹرفیس کی ضرورت: یہ پروٹوکول کون سے مشن کے لیے اہم تعاملات کو ممکن بناتا ہے؟
اسکیما ڈیزائن
مشن کی ضروریات ← معلوماتی ماڈل ← ٹائپ سسٹم ← توثیق کے اصول
- مشن سے مطابقت: یہ کون سی مشن کے لیے اہم معلومات محفوظ کرتا ہے؟
- رویاتی پابندیاں: یہ اقسام مشن کے مطابق رویے کو کیسے نافذ کرتی ہیں؟
- ارتقائی راستہ: یہ اسکیما مشن کی ہم آہنگی برقرار رکھتے ہوئے کیسے ڈھل سکتا ہے؟
پروٹوکول کی وضاحت
مشن کے تعاملات ← مواصلاتی ضروریات ← معاہدے کی تعریف ← نفاذ
- مشن کا سیاق و سباق: یہ کون سی مشن کے لیے اہم مواصلت کو ممکن بناتا ہے؟
- پابندی کا نفاذ: یہ انٹرفیس مشن کی خلاف ورزی کرنے والے رویوں کو کیسے روکتا ہے؟
- ترکیب پذیری: یہ معاہدے مشن کے مطابق نظاموں میں کیسے مل کر کام کرتے ہیں؟
پائیدار ترقی کا انضمام
طویل مدتی مشن کی ہم آہنگی کے لیے قابل برقراری رفتار ضروری ہے۔
Anti-Goodhart اقدامات
- نفاذ اور مشن کی ہم آہنگی کے باقاعدہ آڈٹ
- مشن کی تکمیل کی پیمائش کریں، نہ کہ ہیرا پھیری کے قابل نمائندگی اشاریوں کی
- ایسے اضافے مسترد کریں جو مشن کو مضبوط نہ کریں
تال پر مبنی کام
- پیداواری تال کے ساتھ ہم آہنگ سیشن
- دوبارہ ہم آہنگی کے لیے اندرونی انتخاب کے مقامات
- پائیدار رفتار ایک اولین درجے کی ضرورت کے طور پر
مسلسل توثیق
- جزو کی ضرورت پر باقاعدہ سوال
- جاری تصدیق کہ رویہ مشن سے مطابقت رکھتا ہے
- مشن کی خلاف ورزی کرنے والی تبدیلیوں کا خودکار سراغ
معیار کے دروازے
ایسے دروازے جو مشن کا جواز دیے بغیر نہیں کھلتے۔
کوڈ کا جائزہ
- مشن سے ہم آہنگی کی وضاحت لازمی
- پابندی کی توثیق
- انضمام سے مجموعی ہم آہنگی مضبوط ہونی چاہیے
ٹیسٹنگ
- فعال درستگی
- مشن سے ہم آہنگی کی توثیق
- اخلاقی حد سے انکار کے ٹیسٹ
- دباؤ میں پابندی کی لچک
دستاویز سازی
- ہر جزو کے لیے مشن کا سیاق و سباق
- اخلاقی تصفیوں کا جواز
- پابندیاں نفاذ کو کیسے شکل دیتی ہیں
ناکامی کے طریقے
MDD کیسے ٹوٹتا ہے، اور کیسے ناقابل شکست رہتا ہے۔
مشن کا انحراف
علامت: ایسی خصوصیات جمع ہو جاتی ہیں جو مرکزی مشن کی خدمت نہیں کرتیں۔ تدارک: مشن کی ہم آہنگی کو دروازے کے طور پر رکھتے ہوئے باقاعدہ آرکیٹیکچرل جائزے۔
پیچیدگی کا دھماکہ
علامت: غیر ضروری پیچیدگی کی وجہ سے نظام ناقابل انتظام ہو جاتا ہے۔ تدارک: ایسے اضافے مسترد کریں جب تک کہ وہ مشن کی تکمیل کو مضبوط نہ کریں۔
اخلاقی عدم مطابقت
علامت: اجزاء اخلاقی استدلال کو غیر مستقل طریقے سے لاگو کرتے ہیں۔ تدارک: مشترک نفاذ کے نمونوں کے ساتھ مرکزی اخلاقی ڈھانچہ۔
مقصد کا ابہام
علامت: ٹیم کے ارکان تکنیکی فیصلوں اور مشن کے درمیان رابطہ کھو دیتے ہیں۔ تدارک: مشن پر مبنی فیصلہ سازی پر مسلسل تربیت۔
کیس اسٹڈی
CIRIS، ایک عملی مثال۔
CIRIS (Core Identity, Integrity, Resilience, Incompleteness, Signalling Gratitude) وہ نظام ہے جس کے ساتھ MDD تیار کیا گیا۔ مشن ہے Meta-Goal M-1: متنوع شعور رکھنے والی مخلوقات کو پھلنے پھولنے کا موقع دیتے ہوئے پائیدار موافق ہم آہنگی کو فروغ دینا۔
آرکیٹیکچر کے نتائج
- 22 سروسز، ہر ایک مشن کی ضروریات کے مطابق جائز
- 200+ API اینڈپوائنٹس کی تصدیق
- 10,000+ ٹیسٹ، پروڈکشن میں کم سے کم بے قسم ڈیٹا کے ڈھانچے
- Ubuntu فلسفہ پروٹوکول ڈیزائن میں سمویا گیا
- Wisdom-Based Deferral مشن کی خلاف ورزیوں کو روکتا ہے (Safety دیکھیں)
- Discord برادریوں کی نگرانی کرنے والی پروڈکشن تعیناتی
اہم کامیابی کے عوامل
- واضح میٹا ہدف: M-1 غیر مبہم فیصلہ سازی کا معیار فراہم کرتا ہے
- عملیاتی اخلاقیات: ACCORD کے اصول کوڈ کی پابندیوں کے طور پر نافذ (Accord پڑھیں)
- پائیدار ترقی: Grace ساتھی صحت مند تال نافذ کرتا ہے
- مسلسل توثیق: ہر آرکیٹیکچرل فیصلے کو چیلنج کیا جاتا ہے
اپنانے کی رہنمائی
جہاں ہیں وہاں سے کیسے شروع کریں۔
نئے منصوبوں کے لیے
- کوڈ لکھنے سے پہلے قابل پیمائش اخلاقی اصولوں کے ساتھ واضح مشن متعین کریں
- ایک میٹا ہدف قائم کریں جو فیصلہ سازی میں رہنمائی فراہم کرے
- آرکیٹیکچر اس طرح ڈیزائن کریں کہ مشن کی پابندیاں بنیادی سطح پر ہوں
- پہلے دن سے مشن اور تکنیکی ہم آہنگی کی مسلسل توثیق بنائیں
موجودہ منصوبوں کے لیے
- ضمنی مشن مفروضوں کے لیے موجودہ آرکیٹیکچر کا آڈٹ کریں
- ایک واضح مشن بیان کریں جو موجودہ ڈیزائن کے نمونوں کی وضاحت کرے
- موجودہ نفاذ میں مشن کی خلاف ورزیوں کی نشاندہی کریں
- مشن کے اثر کو ترجیح دیتے ہوئے بتدریج ہم آہنگی کا منصوبہ بنائیں
ٹیم کی بنیادی شرائط
- معروضی اخلاقی استدلال کے لیے عزم
- ایسے شاندار حل مسترد کرنے کی آمادگی جو مشن کی خدمت نہ کریں
- یہ یقین کہ مشن کی پابندیاں اچھا آرکیٹیکچر بناتی ہیں، محدود نہیں کرتیں
- پائیدار ترقی کے طریقے جو طویل مدتی توجہ برقرار رکھتے ہیں
یہ کہاں جاتا ہے
MDD ہر منصوبے کے لیے موزوں نہیں ہے۔
MDD ان نظاموں کے لیے بنایا گیا ہے جہاں اخلاقی رویہ مشن کے لیے اہم ہو اور طویل مدتی قابل اعتمادی قلیل مدتی خصوصیات کی رفتار سے زیادہ اہم ہو۔ ان نظاموں کے لیے، MDD اخلاقی ارادوں سے عملیاتی حقیقت تک ایک راستہ فراہم کرتا ہے، کوڈ پر جتنا انجینئرنگ ضبط لاگو ہوتا ہے اتنا ہی مشن پر بھی۔
ابتدائی اضافی بوجھ حقیقی ہے جب ٹیم مشن پر مبنی فیصلہ سازی سیکھتی ہے۔ جو مرکب منافع ملتا ہے وہ اس کے بعد کی ترقی میں ہے: ڈھانچہ آرکیٹیکچرل انتخابات کو بڑھانے کے بجائے واضح کرتا ہے۔