الگو اسکرام


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








الگوهای بهبودسازی

الگوی تکامل قابلیت یکپارچه سازی (CMMI)

الگوی تکامل قابلیت یکپارچه‌سازی (CMMI) یکی از الگوهای پیشنهادی و تکنیک‌های پیشتاز است. ارزیابی سازمان‌های مستقل و رتبه‌بندی در مورد کیفیت چگونگی تعریف فرایندهای آن سازمان‌ها را دنبال می‌کند، نه بر کیفیت خود فرایندها یا نرم‌افزار تهیه شده است. الگوی CMMI جایگزین الگوی CMM شده است.








ایزو ۹۰۰۰

ایزو ۹۰۰۰ یک استاندارد رسمی سازماندهی فراینده ساخت محصولات و روشی برای مدیریت و نظارت پیشرفت کارهاست. در اصل این استاندارد برای بخش تولید وساخت(صنعتی) ایجاد شد.ایزو ۹۰۰۰ همچنین برای فرایند تولید نرم‌افزار نیز به خوبی استفاده شده.مانند الگو CMMI مدرک ایزو ۹۰۰۰ هیچ تضمینی راجع به کیفیت نتایج نهایی ندارد و فقط فرایندهای کاری را فرموله و قالب استاندارد رسمی می دهد.








ایزو ۱۵۵۰۴

ایزو ۱۵۵۰۴ که با عنوان فرایند تشخیص و تعیین بهبود قابلیت نرم‌افزار (به انگلیسی: Software Process Improvement and Capability Determination)(مخفف انگلیسی: SPICE) نیز شناخته می‌شود، چارچوبی برای ارزیابی فرایندهای نرم‌افزار است. این استاندارد تنظیمات قالب روشنی برای مقایسه فرایندها به شمار می‌رود. SPICE خیلی شبیه CMMI استفاده می‌شود. فرایندهای این الگو برای مدیریت، کنترل، راهنمایی و نظارت تولید نرم‌افزار است. این الگو جهت سنجش سازماندهی تولید و توسعه یا تیم پروژه بصورت واقعی در طول مدت تولید نرم‌افزار استفاده می‌شود. تجزیه و تحلیل این اطلاعات برای شناسایی نقاط ضعف و حرکت به سمت بهبود پروژه استفاه می‌شود. همچنین برای تشخیص نقاط قوت پروژه که می تواند برای سازمان یا تیم پروژه ادامه پیدا کند یا برای امور مشترک یکپارچه شود.







برنامه‌ریزی

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

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

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

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






مدیران، برنامه ریزی و تصمیم گیری

تصمیم گیری، رکن اساسی تمام وظایف مدیریتی و در عین حال، مبنای برنامه ریزی است چرا که نمی توان گفت برنامه ای وجود دارد مگر اینکه تصمیمی اتخاذ شده باشد. به عبارت بهتر، تصمیم گیری، هسته مرکزی مدیریت است که در تمامی وظایف دیگر، نموددارد، به همین دلیل برخی (مانند هربرت سایمون) مدیریت و تصمیم گیری را دو واژه مترادف می دانند!

به جرأت می توان گفت برنامه ریزی و تصمیم گیری، برای نیل به اهداف سازمان مکمل اند اما نوع اتخاذ تصمیم نیز نقش به سزایی ایفا می کند با وجودی که تصمیم گیری به کلیه وظایف مدیریتی مربوط می شود، اما اساس برنامه ریزی به شمار می آید و نمی توان گفت برنامه ای وجود دارد بدون اینکه تصمیمی گرفته شده باشد. از این رو، تصمیم گیری از ارکان اساسی فعالیت های مدیریتی به شمار می رود چرا که هر مدیری برای اجرای هریک از وظایف خود، همواره با مواردی مواجه می شود که نیاز به تصمیم گیری دارد.






برنامه ریزی به عنوان وظیفه مدیران

برنامه ریزی از وظایف بسیار مهم مدیران است و با سایر وظایف آنها ارتباطی تنگاتنگ دارد. اگر نگرش مبتنی بر برنامه ریزی در سراسر زندگی فردی و سازمانی تسری یابد، نوعی تعهد به عمل بر مبنای تعقل و تفکر آینده نگر و عزم راسخ بر استمرار آن ایجاد می شود. به نوعی، تحقق اهداف فردی و سازمانی، مستلزم برنامه ریزی است. نیاز به برنامه ریزی از آنجا است که همه سازمان ها با فعالیت در محیطی پویا، مترصد آن هستند که منابع محدودشان را برای رفع نیازهای متنوع و فزاینده خود صرف نمایند و این پویایی محیط و وجود تلاطم و عدم اطمینان ناشی از تغییرات محیطی، بر ضرورت انکار ناپذیر برنامه ریزی می افزاید.

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






تعریف برنامه ریزی

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

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

متخصصین ، برنامه ریزی را با توجه به حوزه ی فعالیت خود تعریف نموده اند. این واژه، در زمینه علوم و فنون بیشتر با واژه طراحی (designing) عجین شده. هر چند که:این برداشت تقلیل گرایانه و البته این واژه در متون مدیریتی جایگاهی ندارد!






مزایای برنامه ریزی

برخی از مزایای برنامه ریزی عبارتند از:

افزایش احتمال تحقق اهداف سازمان
ایجاد فرصتِ اجرای منظم تصمیم ها
صرفه اقتصادی
انطباق با شرایط متغیر محیطی
استفاده صحیح از منابع
فراهم شدن ابزارهای کنترل
امکان سنجش میزان پیشرفت
آگاهی کارکنان از اهداف سازمان و نقش خود
تقویت کار گروهی
رسیدن به اهداف شخصی

چالش های برنامه ریزی:

چالش های عمده برنامه ریزی از دید برخی منتقدان این امر عبارتند از:

1. حوادث غیر منتظره ای که می تواند تمام پیش بینی ها را نقش بر آب کند! 2.عوض شدن فکر

تغییر رویه هایی که ممکن است مقاومت ایجاد نماید.

1. صرف هزینه و وقت. 2. محدودیت های کوتاه مدت و مقطعی.






تصمیم گیری

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






گونه شناسی تصمیم گیری

گونه های مختلفی از تصمیم گیری را از دیدگاه های مختلف می توان شناسایی نمود. برخی از این گو نه ها عبارتند از:

تصمیم گیری به اعتبار برنامه (برنامه ریزی شده و برنامه ریزی نشده)
تصمیم گیری به اعتبار میزان اطلاعات
تصمیم گیری به اعتبار تصمیم گیرنده (فردی و گروهی)
تصمیم گیری به اعتبار درجه استقلال
تصمیم گیری به اعتبار میزان ساختار یافتگی
سایر موارد







مراحل تصمیم گیری

برآیند نسبتاً کلی از مراحلی که برای فرایند تصمیم گیری در متون مختلف طرح شده است را می توان در موارد زیر خلاصه نمود:

اطمینان از وجود نیاز به تصمیم
تعیین معیارهای تصمیم گیری
تشخیص میزان اهمیت معیارها
کشف راه حل ها
ارزیابی راه حل ها
انتخاب بهترین راه حل








برنامه‌سازی مفرط
برنامه‌سازی مفرط (به انگلیسی: extreme programming) که به اختصار XP نیز خوانده می‌شود، یک متدولوژی توسعه نرم‌افزار است که در آن هدف افزایش کیفیت نرم‌افزار و پاسخ‌گویی به نیازمندی‌های در حال تغییر کاربر است. به عنوان گونه‌ای از توسعه چابک نرم‌افزار (agile software development) از انتشار (release)های متناوب در چرخه‌های کوتاه توسعه با هدف بهبود قابلیت تولید و معرفی نقاط کنترلی (Check Point) برای تطابق با نیازمندی‌های جدید کاربر، دفاع می‌کند.








اسکرام
چارچوب یا فرایند مدل اسکرام یک چارچوب تکرارپذیر و افزایشی برای کنترل پروژه (مدیریت نرم‌افزار) است که معمولاً در زیر شاخه مدل فرایند تولید نرم‌افزار چابک و سریع است. و یک نوع مدل تولید نرم‌افزار در مهندسی نرم‌افزار بحساب می‌رود.اسکرام یک چارچوب تولید نرم‌افزار از سری روشهای تفکر چابک (Agile) می‌باشد. اسکرام یک چارچوب یا فرایند؟ مسئله این است، دراین موضوع کاملاً بین متخصصان اسکرام دوگانگی وجود دارد. اشخاصی مانند کن شوئبر (مبدع اسکرام) دائماً از لفظ چارچوب(framework) استفاده می‌کنند و تاکید می‌نمایند که همه باید این مورد را قبول داشته باشند ولی بعضی دیگر از دوستان از لفظ فرایند و یا متدولوژی برای اسکرام استفاده می‌کنند.






تاریخچه

این روش در سال ۱۹۸۶ توسط هیروتاکا تاکوچی و ایکوجیرو نوناکا بعنوان یک خط مشی جدید برای تولید نرم‌افزارهای تجاری که باید قابلیت سرعت در تولید و انعطاف پذیری را داشته باشند، عرضه شده گردید. اسم اسکرام از یک نوع بازی در فوتبال راگبی آمده است

اسکرام (Scurm) یک متدولوژی افزایشی (Incremental) برای مدیریت پروژه‌های نرم‌افزاری است و از رده متدولوژی‌های Agile محسوب می‌شود. این متدولوژی اولین بار در ژاپن اختراع شد و بعدها در سال ۱۹۹۱ توسط Stahl و Degrace توسعه داده شد. درسال ۱۹۹۵ این متدولوژی توسط Ken Schwober و Jeff Stherland بعنوان یک متدولوژی رسمی برای تولید نرم‌افزار بکار گرفته شد.






مشخصات

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

اسکرام دربردارنده مجموعه‌ای از روش (Practice)ها و نقش‌های از قبل تعریف شده است اما سه ویژگی است که پایه‌های وجودی اسکرام هستند:

۱- شفافیت و روشنی Transparency: یعنی اینکه تمام جنبه‌های مختلف فرایند که بر خروجی آن اثر می‌گذارد بایستی برای آنهایی که فرایند را کنترل می‌کنند مشهود و قابل دید باشد. نه فقط این جنبه‌ها باید شفاف باشد بلکه بایستی مشخص و معلوم هم باشند یعنی اگر کسی که فرایند را ممیزی می‌کند تشخیص دهد که چه چیزی انجام شده، این باید مطابق با تعریف انجام شده Done از دید تمام افراد درگیر در پروژه باشد. اگر توافقی بین همه طرف‌های درگیر در پروژه بر سر معانی و مفاهیم نباشد، مشهود بودن اینکه یک قابلیت یا ویژگی انجام شده یا خیر، دیگر محلی از اعراب ندارند.

۲- ممیزی و وارسی Inspection: جنبه‌های مختلف فرایند تولید نرم‌افزار بایستی مدام به اندازه‌ای در حال وارسی و چک باشند که انحرافات فرایند قابل تشخیص باشد.

۳- انطباق Adaption: اگر بازرس و ممیز فرایند پس از بازرسی فرایند، تشخیص داد که یک یا چند جنبه از فرایند خارج از حدود قابل قبول است و باعث غیر قابل پذیرش شدن محصول تولیدی می‌شود، آن شخص باید فرایند یا آنچه که فرایند بر روی آن انجام می‌شود را تنظیم و تعدیل کند. این کار باید در سریعترین زمان ممکنه انجام شود تا از انحرافات بیشتر جلوگیری شود.






نقشها

نقش‌های عمده در اسکرام عبارتند از:

ScrumMaster که وظیفه نگهداری و حفظ فرایند را برعهده دارد.
Product Owner که نماینده ذینفعان (Stakeholders)های پروژه و business است.
Team Member عضوی از یک گروه cross-function است که معمولاً بیش از ۷ نفر نیستند. این افراد عملیات تحلیل٫ طراحی٫ پیاده سازی، تست و... را انجام می‌دهند.

تعریف هر نوع نقش یا سمت به جز سه نقش گفته شده در اسکرام ممنوع است. به عنوان مثال اعضای تیم نمی‌توانند سمت‌های متفاوتی داشته باشند.
روند کار اسکرام

مثل تمام متدولوژی‌های Incremental و Iterative اینجا هم ما دوره‌های زمانی یا iteration داریم که در طی آنها محصول نهایی پروژه بتدریج تکمیل می‌شود. این دوره‌های زمانی را در اسکرام اصطلاحاً sprint نامیده می‌شوند.

در طی یک Sprint که معمولاً یک دوره دو تا چهار هفته است (طول دوره را تیم مشخص می‌کند) اعضاء تیم یک محصول بالقوه قابل ارائه و قابل استفاده را تدریجاً تولید می‌کنند. بطور رسمی دوره هر sprint یک ماه یا سی روز در نظر می‌گیرند.

مجموعه ویژگی‌هایی از محصول نهایی پروژه که در یک sprint محقق می‌شود از یک Requirements Repository بنام Sprint Backlog استخراج می‌شود.

اصطلاح Product Backlog نامی است که به بانک اطلاعاتی نیازمندهای عملیاتی و غیر عملیاتی کل یک پروژه اطلاق می‌شود و در حقیقت مجموعه‌ای اولویت بندی شده از نیازمندی‌های سطح بالای سیستمی است که در نهایت بایستی تحویل داده شود.







Sprint Planning Meeting

مواردی از Product Backlog که در طی یک sprint بایستی انجام شود در طول جلسه برنامه ریزی sprint مشخص می‌شود. اصطلاحاً این جلسه را Sprint Planning Meeting می‌نامند.

در طول این جلسه، Product Owner اعضاء تیم را دربارهٔ مواردی از Product Backlog محصولی که می‌خواهند تکمیل شود، آگاه می‌کند. سپس اعضاء تیم مشخص می‌کنند که چه مقدار از موارد مشخص شده توسط Product Owner را می‌توانند در این sprint انجام دهند و چه میزان از آنرا در sprintهای بعدی.

مواردی از Product Backlog که قرار است در یک Sprint انجام شود را اصطلاجاْ Sprint Backlog می‌نامند. مفاد Sprint Backlog در واقع توافقی است بین اعضاء تیم و Product Owner برای انجام بخشی از نیازمندی‌های پروژه در طول sprint جاری و بهرحال طبیعی است که بعد از تصویب شدن مفاد یک sprint، هیچکس نمی‌تواند آنرا در طول sprint تغییر دهد. در طول دوره، نیازمندی‌های لحاظ شده در Sprint Backlog از Product Backlog بر داشته می‌شوند. اما امکان دارد به دلایلی که در ادامه می‌آید این نیازمندی‌های دوباره به Product Backlog برگردد.

مانند تمام متدولوژی‌های iterative توسعه نرم‌افزار در اسکرام نیز Time Boxed است، به این معنی که sprint بایستی دقیقاً سروقت تمام شود و اگر نیازمندی‌های اشاره شده در Spring Backlog به هر علتی تکمیل نشده باشند آنها را کنار گذاشته و دوباره وارد Product Backlog می‌کنند.

بعد از خاتمه یک sprint، اعضاء تیم طی جلسه‌ای به Product Owner و سایر ذینفعان پروژه نشان می‌دهند که چکار کرده‌اند و چطور از نسخه جاری نرم‌افزار می‌شود استفاده کرد.

در ساده‌ترین روش معمولاً از نرم‌افزارهای صفحه گستره (Spread Sheet) همچون LibreOffice Calc یا Microsoft Excel برای ساختن و نگهداری Product Backlog و Sprint Backlog استفاده می‌شود، اما می‌توان از طیف وسیعی از ابزارهای نرم‌افزاری که برای استفاده در تیمهای Agile نوشته شده‌اند نیز استفاده کرد.








توسعه‌دهنده نرم‌افزار

تولیدکننده نرم‌افزار یا توسعه‌دهنده نرم‌افزار (به انگلیسی: Software developer) در مبحث توسعهٔ نرم‌افزار به هر کسی اطلاق می‌شود که بخشی از فرایند تولید نرم‌افزار را برعهده داشته باشد. یعنی هر یک از موقعیت‌های زیر جزو توسعه‌دهندگان محسوب می‌شوند:

مدیر پروژهٔ نرم‌افزار
تحلیل‌گر کسب و کار نرم‌افزار
طراح نرم‌افزار
برنامه‌نویس
آزمون‌گر نرم‌افزار

برای هر برنامه یا نرم‌افزاری ممکن است تمام یا بخشی از اعضای این تیم حاضر باشند.







توسعه نرم‌افزاری چابک

توسعه چابک نرم‌افزار یا توسعه نرم‌افزاری چابک گروهی از متدهای توسعهٔ نرم‌افزار مبتنی بر تکرار و به شکل تدریجی است که در آنها، راه‌حل‌ها از طریق خودسازمان‌دهی و همکاری بین تیم‌های مختلف کاری، انجام می‌شوند. این روش برنامه‌ریزی تطبیقی، توسعه و تحویل تکاملی و رویکرد زمان بسته‌بندیِ تکرارشونده را ارتقا می‌بخشد و پاسخ‌های سریع و انعطاف‌پذیر برای انجام تغییرات را تقویت می‌کند. در واقع چابک‌سازی یک چارچوب مفهومی است که پیش‌بینی تعاملات در سراسر چرخهٔ توسعه را بهبود می‌بخشد. مانیفست چابک در سال ۲۰۰۱ این اصطلاح را معرفی کرد.






تاریخچه
سوابق

متدهای توسعهٔ افزایشی نرم‌افزار به سال ۱۹۵۷ برمی‌گردند. در سال 1974، E.A. Edmonds در مقاله‌ای فرایند توسعهٔ تطبیقی نرم‌افزار را معرفی کرد. هم‌زمان و به طور مستقل متدهای مشابه توسعه یافت و توسط مرکز توسعهٔ سیستم‌های شرکت تلفن نیویورک زیر نظر Dan Gielan گسترش یافت. اوایل دههٔ 1970، Tom Gilb شروع به انتشار مفاهیمی در مورد کنترل تحولی پروژه (EVO) کرد، که به مهندسی رقابتی توسعه یافت. در طول نیمه تا انتهای دههٔ 1970 Gielan به طور گسترده در ایالات متحده در مورد این متدولوژی، تجارب و فواید آن سخنرانی‌هایی ارائه داد.

متدهای توسعهٔ به اصطلاح چالاک و چابک نرم‌افزار اواسط دههٔ ۱۹۹۰ به صورت یک عکس‌العمل در مقابل متدهای سنگین آبشاری مطرح شد، که توسط منتقدان آن به صورت یک مدل توسعهٔ به شدت منظم، دسته‌بندی‌شده، میکرو مدیریتی و آبشاری توصیف شده است. استدلال‌کنندگان متدهای چالاک و چابک ادعا می‌کنند، این متدها به منزلهٔ بازگشت به تجارب توسعهٔ نرم‌افزار در اوایل تاریخ هستند. پیاده‌سازی‌های اولیهٔ متدهای چابک، شامل Rational Unified Process (1994)، Scrum (1995)، Crystal Clear، برنامه‌نویسیExtreme (1996)، توسعهٔ تطبیقی نرم‌افزار، توسعهٔ ویژگی‌محور و متد توسعهٔ سیستم‌های دینامیک (DSDM، 1995) می‌شود. بعد از انتشار مانیفست چابک در سال ۲۰۰۱، اکنون این‌ها به طور معمول به متدولوژی‌های چابک برمی‌گردند.






مانیفست چابک

در فوریهٔ ۲۰۰۱، تعداد ۱۷ توسعه‌دهنده‌ی نرم‌افزار، در Snowbird یوتا ملاقاتی داشتند تا در مورد متدهای توسعه‌ی چالاک گفتگو کنند.

آنها برای توصیف رویکردی که اکنون به عنوان «توسعه‌ی چابک نرم‌افزار» شناخته می‌شود، مانیفستی برای توسعه‌ی چابک نرم‌افزار منتشر کردند. بعضی از نویسندگان این مانیفست اتحاد Agile را ایجاد کردند ، یک سازمان غیرانتفاعی که توسعه‌ی نرم‌افزار را بر اساس اصول مانیفست ترویج می‌دهند.







تمام مانیفست چابک به شرح زیر است:

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

۱- افراد و تعاملات بالاتر از فرایندها و ابزارها

۲- نرم‌افزار کار کننده بالاتر از مستندات جامع

۳- مشارکت مشتری بالاتر از قرارداد کاری

۴- پاسخگویی به تغییرات بالاتر از پیروی از یک برنامه
با آنکه موارد سمت چپ ارزشمند هستند ولی ما برای موارد سمت راست ارزش بیشتری قائل هستیم.

معنی آیتم‌های سمت راست مانیفست در مفهوم توسعه‌ی چابک نرم‌افزار در زیر توضیح داده شده است:






افراد و تعاملات بالاتر از فرایندها و ابزارها

افراد مهمترین نقش را در پیروزی یک پروژه دارند. یک فرایند عالی بدون نیروی مناسب منجر به شکست می­گردد و بر عکس افراد قوی تحت فرایند ضعیت ناکارآمد خواهند بود.

یک نیروی قوی لازم نیست که برنامه نویسی عالی باشد، بلکه کافیست که یک برنامه نویسی معمولی با قابلیت همکاری مناسب با سایر اعضای تیم باشد. کار کردن با دیگران، تعامل درست و سازنده با سایر اعضای تیم خیلی مهمتر از این که یک برنامه نویس با هوش باشد. برنامه نویسان معمولی که تعامل درستی با یکدیگر دارند به مراتب موفقتر هستند از تعداد برنامه نویسی عالی که قدرت تعامل مناسب با یکدیگر را ندارند.

در انتخاب ابزارها آنقدر وقت نگذارید که کار اصلی و تیم را فراموش کنید. به عنوان مثال می­توانید در شروع به جای بانک اطلاعاتی از فایل استفاده کنید، به جای ابزار کنترل کد گرانقیمت از برنامه رایگان کد باز استفاده کنید. باید به هیچ ابزاری عادت نکنید و صرفاً به آنها به عنوان امکانی جهت تسهیل فرایندها نگاه کنید.






نرم‌افزار کار کننده بالاتر از مستندات جامع

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

با این حال، مستندات زیاد از مستندات کم بدتر است. ساخت مستندات زیاد نیاز به وقت زیادی دارد و وقت بیشتری را می گیرد تا آن را با کد برنامه به روز نمایید. اگر آنها با یکدیگر به روز نباشند باعث درک اشتباه از سیستم می شوند.

بهتر است که همیشه مستندات کم حجمی از منطق و ساختار برنامه داشته باشید و آن را به روز نماید. البته آنها باید کوتاه و برجسته باشند. کوتاه به این معنی که ۱۰ تا ۲۰ صفحه بیشتر نباشد و برجسته به این معنی که طراحی کلی و ساختار سطح بالای سیستم را بیان نماید.

اگر فقط مستندات کوتاه از ساختار و منطق سیستم داشته باشیم چگونه می توانیم اعضای جدید تیم را آموزش دهیم؟ پاسخ کار نزدیک شدن به آنها است. ما دانش خود را با نشستن در کنار آنها و کمک کردن به آنها انتقال می­دهیم. ما آنها را بخشی از تیم می­کنیم و با تعامل نزدیک و رو در رو به آنها آموزش می­دهیم.






مشارکت مشتری بالاتر از قرارداد کاری

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

این قابل تصور است که مدیران شرکت به اعضای تیم توسعه بگویند که نیازهای آنها چیست، سپس اعضای تیم بروند و بعد از مدتی برگردند و یک سیستمی که نیازهای آنها را برآورده می کند، بسازند. اما این تعامل به کیفیت پایین نرم‌افزار و در نهایت شکست آن می انجامد. پروژه های موفق بر اساس دریافت بازخورد مشتری در بازه های زمانی کوتاه و مداوم است. به جای وابستگی به قرارداد یا دستور کار، مشتری به طور تنگاتنگ با تیم توسعه کار کرده و مرتباً اعمال نظر می­کند.

قراردادی که مشخص کننده نیازمندیها، زمانبندی و قیمت پروژه است، اساساً نقص دارد. بهترین قرارداد این است که تیم توسعه و مشتری با یکدیگر کار کنند.
پاسخگویی به تغییرات بالاتر از پیروی از یک برنامه

توانایی پاسخ به تغییرات اغلب تعیین کننده موفقیت یا شکست یک پروژه نرم‌افزاری است. وقتی که طرحی را می­ریزیم باید مطمئن شویم که به اندازه کافی انعطاف پذیر است و آمادگی پذیرش تغییرات در سطح بیزنس و تکنولوژی را دارد.

مسیر یک پروژه نرم‌افزاری نمی­تواند برای بازه زمانی طولانی برنامه ریزی شود. اولاً احتمالاً محیط تغییر می­کند و باعث تغییر در نیازمندی ها می­شود. ثانیاً همین که سیستم شروع به کار کند مشتریان نیازمندی­های خود را تغییر می دهند. بنابراین اگر بدانیم که نیازها چیست و مطمئن شویم که تغییر نمی­کنند، قادر به برآورد مناسب خواهیم بود، که این شرایط بعید است.

یک استراتژی خوب برای برنامه ریزی این است که یک برنامه ریزی دقیق برای یک هفته بعد داشته باشیم و یک برنامه ریزی کلی برای سه ماه بعد.






اصول چابک

بر اساس نظرات Kent Beck، مانیفست چابک، بر ۱۲ اصل استوار است:

رضایت مشتری از طریق تحویل سریع نرم‌افزار مفید؛
استقبال از تغییرات نیازمندی‌ها، حتی در اواخر توسعه؛
نرم‌افزار کار زود به زود تحویل می‌شود (هفتگی به جای ماهانه)؛
نرم‌افزار کار مقیاس اصلی پیشرفت است؛
توسعه‌ی پایدار، قادر به حفظ سرعت ثابت است؛
همکاری نزدیک و روزانه بین افراد کسب‌وکار و تیم توسعه؛
مکالمه‌ی رو در رو بهترین شکل ارتباطات است (محل مشترک)؛
پروژه‌ها در اطراف افراد باانگیزه، که باید به آنها اعتماد کرد، شکل می‌گیرند؛
توجه مستمر به برتری فنی و طراحی خوب؛
سادگی- هنر به حداکثر رساندن کارهای انجام‌نشده- ضروری است؛
تیم‌های خودسازمان‌دهی؛
انطباق با تغییرات محدودیت‌ها به طور منظم.

در سال ۲۰۰۵، گروهی به ریاست Alistair Cockburn و Jim Highsmith ضمیمه‌ای تحت عنوان «اعلامیه‌ی وابستگی» برای اصول مدیریت پروژه نوشتند، که مدیریت پروژه‌های نرم‌افزاری را بر اساس متدهای توسعه‌ی نرم‌افزار پیش ببرد..






مشخصات

متدهای توسعه‌ی چابک مشخص زیادی وجود دارند، که بیشترشان توسعه، کار تیمی، همکاری و سازگاری فرایند در چرخه‌ی حیات پروژه را ترفیع می‌دهند. متدهای چابک وظایف را به گام‌های کوچک با کمترین میزان برنامه‌ریزی می‌شکنند که به طور مستقیم با برنامه‌ریزی‌های طولانی‌مدت درگیر نیستند. تکرارها فریم‌های (بسته‌های زمانی) کوتاه‌مدتی هستند که معمولاً بین یک تا چهار هفته طول می‌کشند. هر تکرار دارای یک تیم متقابل عملکردی در تمام مأموریت‌ها است: تحلیل نیازمندی‌ها، طراحی، کدنویسی، واحد تست، و قبولی در تست. در پایان هر تکرار یک محصول کاری به ذی‌نفعان نشان داده می‌شود. این، ریسک کلی را به حداقل رسانده و اجازه می‌دهد پروژه خیلی سریع با تغییرات منطبق شود. ممکن است یک تکرار قابلیت کافی برای تضمین پخش در بازار را نیفزاید، اما هدف، انتشار در دسترس (با حداقل شکاف) در پایان هر تکرار است. شاید تکراهای چندگانه نیاز به انتشار یک محصول یا ویژگی‌های جدید داشته باشند. ترکیب تیم در یک پروژه‌ی چابک معمولاً عملکردی متقابل و خودسازمان‌دهی است، بدون توجه به هرگونه سلسله‌مراتب شرکتی یا نقش‌های شرکتی اعضای تیم. اعضای تیم به طور معمول مسئولیت وظایفی را که قابلیت نیازهای تکرار را ارائه می‌دهد، بر عهده می‌گیرند. آنها به صورت جداگانه تصمیم می‌گیرند که چگونه با نیازمندی‌های یک تکرار مواجه شوند.

متدهای چابک، وقتی تیم‌ها با هم در یک مکان هستند، بر ارتباطات رو در رو برای تمام مستندات نوشته‌شده تأکید دارد. بیشتر تیم‌های چابک در یک دفتر تک‌واحدی (به نام bullpen) کار می‌کنند، که چنین ارتباطاتی را تسهیل می‌کند. به منظور ساده کردن ارتباطات و همکاری تیمی، گروه معمولاً کوچک (بین 5 تا 9 نفره) است. پروژه‌های بزرگ توسعه می‌توانند توسط تیم‌های کاری چندگانه در راستای یک هدف رایج یا در بخش‌های متفاوت یک پروژه تحویل شوند. ممکن است این امر نیاز به هماهنگی اولویت‌های تمام تیم‌ها داشته باشد. وقتی تیمی در مکان‌های مختلفی کار می‌کند، افراد ارتباط روزانه‌شان را از طریق ویدئو کنفرانس، صدا، ایمیل و... حفظ می‌کنند.

مهم نیست چه دیسیپلین‌های توسعه‌ای لازم است، هر تیم چابک، یک پاسخگوی مشتری دارد. این شخص توسط ذی‌نفعان به نمایندگی انتخاب می‌شود و یک تعهد فردی ایجاد می‌کند که برای پاسخگویی به سؤالات اواسط تکرار، در دسترس توسعه‌دهندگان باشد. در انتهای هر تکرار، ذی‌نفعان و نماینده‌ی مشتریان پیشرفت را بررسی می‌کنند، اولویت‌ها را با دید بهینه‌سازی بازگشت سرمایه (ROI) مجدداً می‌سنجند و از انطباق نیازهای مشتری با اهداف شرکت اطمینان حاصل می‌کنند. بیشتر پیاده‌سازی‌های چابک از ارتباطات غیر رسمی، روزانه و رو در رو در میان اعضای تیم بهره می‌گیرند. این به طور خاص شامل نماینده‌ی مشتری و هر کدام از ذی‌نفعان علاقه‌مند به عنوان ناظر می‌شود. در یک جلسه‌ی مختصر، هر کدام از اعضای تیم گزارش می‌دهند که در روز گذشته چه کرده‌اند، قصد دارند در روز جاری چه کارهایی انجام دهند و موانع پیش روی‌شان کدامند. این ارتباطات رو در رو مشکلات را به محض بروز، افشا می‌کند. «این جلسات روزانه، گاهی به صورت ایستاده یا نشست‌های اسکرام هر روز در یک زمان و مکان ثابت بر‌گزار می‌شوند و نباید بیش از 15 دقیقه طول بکشند. معمولاً جلسات ایستاده این نقش را دارند.»

توسعه‌ی چابک بر کار نرم‌افزار به عنوان مقیاس اصلی پیشرفت تأکید دارد، که با مزیت ارتباطات رو در رو در هم آمیخته شده، و نسبت به سایر متدها مستندات مکتوب کمتری تولید می‌شود. متد چابک ذی‌نفعان را به اولویت‌بندی «خواسته‌ها» با نتایج حاصل از سایر تکرارها، بر اساس ارزش کسب‌وکار مشاهده‌شده در ابتدای تکرار (که با عنوان ارزش‌محور شناخته می‌شود) ترغیب می‌کند.

ابزارها و تکنیک‌های خاص، مانند یکپارچه‌سازی مستمر، تست اتوماتیک یا xUnit، برنامه‌نویسی دوجزئی، توسعه‌ی آزمون‌محور، الگوهای طراحی، طراحی دامنه‌محور، code refactoring و دیگر تکنیک‌ها اغلب برای بهبود کیفیت و افزایش چابکی پروژه به کار می‌روند.

توسعه‌ی کمی‌چابک (LAD) چاشنی متدولوژی چابک است که تکنیک‌های دست‌چین را (از طیف وسیع‌تری از پروژه‌های چابک) برای شرکت‌های مناسب مختلف، تیم‌ها، موقعیت‌ها و محیط‌های توسعه به کار می‌بندد. یکی دیگر از جنبه‌های کلیدی LAD متمایل به کاربرمحور بودن است، در درجه‌ی اول بر تجارب کاربر و واسط‌های نرم‌افزاری قابل‌استفاده تمرکز می‌کند و برای تحویل آنها متدولوژی‌های چابک را به کار می‌بندد. بیشتر پیاده‌سازی‌های چابک دنیای واقعی در عمل واقعاً LAD هستند، چون ارزش اصلی متدولوژی به انعطاف‌پذیری، معقول بودن و تمرکز بر کارهایی که انجام شده، است.

در توسعه‌ی چابک نرم‌افزار، یک رادیاتور اطلاعات، صفحه‌نمایشی فیزیکی (معمولاً بزرگ) واقع در صدر دفتر کار است، جایی که رهگذران بتوانند آن را ببینند. این صفحه‌نمایش خلاصه‌ای از آخرین وضعیت محصول(های) نرم‌افزاری را نمایش می‌دهد. این نام توسط Alistair Cockburn ابداع و در کتاب «توسعه‌ی چابک نرم‌افزار» در سال 2002 توصیف شد. ممکن است یک نشانگر نوری برای آگاه کردن اعضای تیم در مورد وضعیت فعلی پروژه‌شان به کار رود.
5:16 am

حسین بن علی

حسین بن علی بن ابی‌طالب (۳ شعبان ۴ هجری قمری در مدینه — ۱۰ محرم ۶۱ در کربلا) امام سوم شیعیان است. او با کنیه‌اش ابوعبدالله نیز شناخته می‌شود. او فرزند علی بن ابی طالب و فاطمه و نوهٔ محمد بن عبدالله، پیامبر اسلام است. سجاد، چهارمین امام شیعیان فرزند وی است. او در روز عاشورا در نبرد کربلا کشته شد و به همین دلیل شیعیان او را سیدالشهداء می‌نامند. اکثر مسلمانان حسین را به علت نوهٔ محمد بودن و این عقیده که وی خود را در راه حق قربانی کرده، گرامی می شمارند.





حسین هفت سال اول عمرش را با محمد پدربزرگش گذراند. روایاتی از علاقه محمد نسبت به وی و برادرش حسن مجتبی نقل شده‌است؛ مانند: «حسن و حسین سید جوانان اهل بهشت اند». مهمترین واقعه دوران کودکی حسین رویداد مباهله و اینکه این دو نفر مصداق کلمه «ابناءَنا» در آیه مباهله گردیدند است. در جوانی، در فتح طبرستان و دفاع از خانهٔ عثمان شرکت داشت. در دوران خلافت علی، حسین در رکاب پدرش بود و در جنگ‌های او شرکت داشت. حسین جزو کسانی از پیروان علی بود که معاویه علی و آنان را در ملاء عام لعنت می‌کرد. در دوران برادرش حسن، به پیمان صلح او با معاویه پایبند ماند و اقدامی علیه وی انجام نداد. در زمان حکومت معاویه دو عمل مهم از او در منابع تاریخی ثبت شده‌است: یکی هنگامی که در مقابل چندی از بزرگان بنی امیه در مورد حق مالکیت خود بر یک سری زمین‌ها ایستاد و دیگر آنکه از تقاضای معاویه برای پذیرش یزید بعنوان ولیعهد معاویه با این دیدگاه که تعیین ولیعهد بدعتی است در اسلام سرباز زد.

بلافاصله پس از مرگ معاویه در سال ۶۰ هجری به فرمان یزید حاکم مدینه حسین را به قصر حکومتی فرا خواند تا آنان را مجبور به بیعت با یزید کند. اما حسین با یزید بیعت نکرد و به همراه خانواده‌اش به مکه گریخت و چهار ماه در آنجا ماند. اهالی کوفه که اکثراً شیعه بودند از مرگ معاویه خوشحال شده و به حسین نامه نوشتند و گفتند که دیگر حکومت بنی‌امیه را تحمل نخواهند کرد. حسین نیز صلاح را آن دید که پسرعمویش مسلم بن عقیل را به آنجا فرستاده تا شرایط آنجا را بررسی کند. مردم کوفه به سرعت با مسلم بیعت نموده و حتی مسلم به منبر مسجد کوفه رفت و در آنجا مردم را مدیریت نمود. این ناآرامی‌ها به یزید گزارش داده شد و او عبیدالله بن زیاد را حاکم کوفه کرد و به او فرمان داد تا سریعاً به کوفه رفته و آشوب‌ها را بخواباند. عبیدالله بن زیاد اقدامات شدیدی در برخورد با هواداران حسین انجام داد که آنان را وحشت زده کرد و مسلم را، در حالی که نامه‌ای خوشبینانه از بیعت کوفیان به حسین فرستاده بود، گردن زد. حسین که از وقایع کوفه خبر نداشت، برخلاف اصرارهای دوستانش در تاریخ ۸ یا ۱۰ ذی الحجه ۶۰ آماده عزیمت به سمت کوفه گردید.

عبیدالله بن زیاد سربازانش را در جای جای مسیر حجاز تا کوفه گماشته بود و به هیچ کس اجازه نمی‌داد که از محدوده قلمروهای مسدود شده خارج شود یا به قلمرویی دیگر وارد گردد. حسین در میانه راه دریافت که قاصدش که به کوفه فرستاده شده بود کشته شده‌است و از یارانش خواست که اگر خواستند می‌توانند از کاروان جدا شوند اما کسانی که از حجاز با وی بودند وی را ترک نکردند. در میانهٔ راه، سوارانی به سرکردگی حر بن یزید ریاحی کاروان را متوقف نمود؛ او فرمان داشت که حسین و همراهانش را بدون جنگ پیش ابن زیاد ببرد اما حسین پیشنهاد حر را نپذیرفت و در منطقه‌ای به نام کربلا از توابع نینوا خیمه زد. در روز سوم ماه محرم، لشکری ۴۰۰۰ نفری به سرکردگی عمر بن سعد بن ابی وقاص به منطقه وارد شد. عمر بن سعد به عنوان فرزند یکی از صحابیون محمد، تمایلی به جنگیدن با حسین نداشت اما عبیدالله به او وعدهٔ حکومت ری را داد لذا عمر از او اطاعت کرد و از ترس توبیخ و تنبیه ابن زیاد پیشنهاد صلح حسین را نپذیرفت؛ اگرچه در مورد پیشنهاد صلح از طرف حسین در منابع اولیه اختلاف وجود دارد.

صبح روز دهم محرم، حسین لشکریانش را که ۳۰ اسب سوار و ۴۲ پیاده بودند را آماده کرد. حسین سوار بر اسب خطابه‌ای را به لشکریان ابن سعد ایراد کرد و مقامش را برای آنان شرح داد. اما دوباره به وی گفته شد که اول از همه باید تسلیم یزید گردد و حسین در پاسخ گفت که هیچگاه خودش را همانند یک برده تسلیم نمی‌کند. جنگ شروع شد در یک حمله، سپاهیان ابن زیاد، خیمه‌های حسین را آتش زدند.. بعد از ظهر، سپاهیان حسین، به شدت تحت محاصره قرار گرفتند. سربازان حسین پیش رویش کشته می‌شدند و کشتار هاشمیان که تا به حال راهشان برای ترک میدان جنگ باز بود نیز شروع گردید. از یاران حسین، ۳ یا ۴ تن بیشتر نمانده بودند که حسین به سپاهیان ابن زیاد حمله برد. حسین شجاعانه می‌جنگید و یعقوبی و چند منبع شیعی دیگر می‌گویند که دهها تن را کشت. سرانجام حسین از ناحیه سر و بازو آسیب دیده و بر صورت به زمین افتاد و سنان بن انس نخعی بعد از اینکه ضربتی دیگر به حسین زد، سر وی را از بدن جدا نمود. نبرد به پایان رسید و سربازان ابن زیاد رو به غارت آوردند. بعد از اینکه ابن سعد محل جنگ را ترک کرد، اسدیان روستای القاظریه بدن حسین را به همراه دیگر کشتگان، در همان محل وقوع کشتار دفن نمودند. سر حسین به همراه سر دیگر هاشمیان به کوفه و دمشق برده شد.

شیعیان در سالگرد واقعهٔ کربلا مراسم سوگواری بر‌گزار می‌کنند اما تاثیر واقعهٔ کربلا بر وجدان و ضمیر دینی مسلمانان بسیار عمیق و فراتر از یادبود آن توسط شیعیان بوده است. مسلماً حسین تنها یک شورشی خودسر نبود که جان خود و خانواده‌اش را به خاطر آرزوهای شخصی فدا کند؛ او کسی بود که از شکستن پیمان صلح با معاویه سرباز زد ولی حاضر به بیعت با یزید به دلیل تعارض با پیمان‌شان نشد. او همانند پدرش قاطعانه معتقد بود که اهل‌بیت از جانب خدا برای حکومت بر امت محمد انتخاب شده‌اند و با رسیدن نامه‌های کوفیان، بر خلاف توصیهٔ دوست‌دارانش، احساس وظیفه برای رهبری کرد. در درازمدت، کشتار وحشیانه در کربلا مثالی برای وحشیگری امویان شد و الهام‌بخش حرکت‌های بعدی شیعیان شد.




کنیه و القاب
کنیه حسین در تمام منابع ابوعبدالله آمده اما در نزد خواص لقب ابوعلی را نیز داشته است. حسین بسیاری القاب دارد که با القاب حسن یکی است. حسین القاب خاصی مانند زکی، طیب، وفیّ، سید، مبارک، نافع، الدلیل علی ذات‌اللّه، رشید، و التابع لمرضاةاللّه داشته است. ابن طلحه مشهورترین لقب حسین را زکی و مهمترین آنان را سید شباب أهل‌الجنه می داند. در برخی احادیث منسوب به امامان شیعه، حسین با لقب شهید یا سیدالشهداء یاد می شده است. در برخی متون ادبی و تاریخی قرن چهارم هجری و پس از آن، با وجود اینکه وی خلافتی نداشته است، از وی با لقب امیرالمؤمنین یاد می‌گردد.
منابع برای تاریخ نگاری قیام حسین و سرنوشت وی

به غیر از نسخه خطی از کتاب ابومخنف که در برلین نگهداری می‌شود و لارا وسیا وگلییری آن را تماماً معتبر نمی‌داند، مهمترین منابع در این زمینه، طبری و بلاذری هستند. روایات طبری در این زمینه به سه دسته تقسیم می‌شوند:

روایاتی که در کتاب ابومخنف (مرگ ۱۵۷ هجری/ ۷۷۴ میلادی) و از شاهدان عینی واقعه نقل شده‌اند.
روایات متعددی که هشام بن محمد کلبی نقل شده که اکثراً از ابومخنف (استادش) نقل شده‌اند.
روایاتی دیگر از محدثان دیگر که اکثر اطلاع مهمی به دست نمی‌دهند.

بلاذری همان منابع طبری را به کار گرفته اما آنها را خلاصه کرده و آن روایت‌ها را بزرگنمایی می‌داند و علاوه بر آنان روایت‌های دیگری نیز دارد. لارا وسیا وگلییری بر این باور است که تاریخ نگاران دیگر مانند دینوری، یعقوبی، ابن عبد ربیحه و غیره، اطلاع خاص دیگری به ما نمی‌دهند چون روایت هایشان را از ابو مخنف گرفته‌اند. شیعیان این آثار که مولفانشان گرایش‌های شیعی دارند را معتبر می‌دانند که بیشتر این روایت‌ها از روایت‌های شیخ مفید سرچشمه گرفته‌اند. برخی دیگر از این آثار به نقد روایت‌های ساختگی می‌پردازند. در قرن ۷ هجری/ ۱۳ میلادی، روایت‌های ساختگی و رمانتیک اضافه شد (مانند نبردهای تک نفره حسین که دهها نفر را می‌کشد و مانند شیری از خود دفاع می‌کند و افسانه‌های دیگر). این اغراق‌ها و روایت‌های ساختگی توسط ابن کثیر مورد نکوهش تندی قرار گرفت.




دوران کودکی

محمد حائری می‌نویسد سال تولد حسین را سال ۳، ۴ یا ۵ هجری، روز تولدش را اکثراً ۳ شعبان، آخر ربیع‌الاول، اوایل شعبان، ۵ شعبان و زمانش را غروب پنج شنبه ذکر کرده‌اند. فاصله زمانی تولد حسن و حسین را ۶ ماه و ۱۰ روز، ۱۰ ماه و ۲۲ روز یا یک سال و دو ماه نوشته‌اند. اما مادلونگ معتقد است بنا به اکثر روایات، حسین در ۵ شعبان ۴ هجری/۱۰ ژانویه ۶۲۶ میلادی متولد شد. روایاتی هم وجود دارند که تاریخ تولدش را در جمادی‌الاول ۶ هجری/اوایل اکتبر ۶۲۷ میلادی ذکر می‌کنند.

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

حسین ۷ سال اول عمرش را با محمد پدربزرگش گذراند. محمد، پیامبر مسلمانان و پدربزرگ او، در همان سالهای کودکی حسین درگذشت بنابراین حسین خاطره چندانی از وی نداشت. روایاتی از علاقه محمد نسبت به وی و برادرش حسن مجتبی نقل شده‌است. مانند «هر کس آنها را دوست داشته باشد مرا دوست دارد و هر کس از آنها متنفر باشد از من منتفر است» یا «حسن و حسین سید جوانان اهل بهشت اند». حدیث دوم از دیدگاه شیعه اهمیت زیادی دارد و به اعتقاد آن گواهی بر حقانیت حسن و حسین بر امامت است. محمد دو نوه‌اش را بر زانوان، بازوها قرار می‌داد و حتی در حال نماز و سجده اجازه می‌داد بر پشتش قرار گیرند. محمدحسن و حسین را در آغوش می‌گرفت و در همان وضعیت با مردم سخن می‌کرد. حسن به عنوان نوه بزرگتر به نظر می‌رسد که بیشتر مورد توجه محمد بوده‌است و بیشتر از حسین، از محمد خاطره داشته‌است. حسن و حسین شبیه به محمد بودند اما حسن شباهت بیشتری داشته اشت. مهمترین واقعه دوران کودکی حسن و حسین رویداد مباهله و اینکه این دو نفر مصداق کلمه «ابناءَنا» در آیه مباهله گردیدند می‌باشد.




دوران خلافت عمر و عثمان

بر طبق روایتی، حسین زمانی که عمر خلیفهٔ دوم بر منبر محمد نشسته بود و در حال سخنرانی بود به دلیل نشستن بر منبر محمد اعتراض کرد و عمر نیز خطبه خود را نیمه کاره رها کرد و از منبر فرود آمد. همچنین عمر سهم حسن و حسین از بیت المال را به سبب نزدیکی با محمد، همانند سهم علی و اهل بدر معین کرده بود. بگفته برخی منابع تاریخی، حسن و حسین در سال ۲۹ هجری در فتح طبرستان شرکت داشتند.

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




دوران خلافت علی بن ابیطالب

در دوران خلافت علی، حسین در رکاب پدرش بود و در جنگ‌های او بطور فعال شرکت داشت.

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




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




دوران خلافت معاویه بن ابوسفیان

حسین در زمان معاویه اقدامی علیه وی انجام نداد. گرچه حسن را به خاطر انتقال قدرت به معاویه مورد سرزنش قرار داد ولی معاویه سالی یک یا دو میلیون درهم به حسین می‌فرستاد و حسین مکرر به شام سفر می‌کرد و در آنجا نیز هدایای دیگری از معاویه دریافت می‌نمود. گزارش‌ها نشان می‌دهد که شیعیانی مانند حجر بن عدی حتی پیش از کشته شدن حسن بسیار به دیدن او می‌آمدند و از او تقاضا می‌کردند تا علیه معاویه قیام کند. اما بنا بر نوشته البلاذری پاسخ او همیشه این بود که «تا زمانی که معاویه هست کاری نمی‌توان کرد... امر این است که در همیشه در فکر انتقام باشید... اما در مورد آن چیزی نگویید.»

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

در همین سالها حسین با لیلا دختر ابومره بن عروه بن مسعود ثقفی و میمونه دختر ابوسفیان، خواهر پدری معاویه ازدواج کرد که علی اکبر از لیلا متولد شد. ابومره هم پیمان امویان بود. این ازدواج برای حسین نفع مادی داشت. ابن سعد می‌نویسد که معاویه به حسین ۳۰۰٬۰۰۰ درهم هدیه کرد اما به نظر نمی‌رسد که این دوستی‌ها ادامه پیدا کرده باشد. چون معاویه علی را بدنام می‌کرد و علویان را شکنجه می‌داد. در مدینه، مروان بن حکم تصمیم گرفت هیچ جایی برای آشتی و مصالحه بنی هاشم و بنی امیه، باقی نگذارد. وقتی که حسن خواستگار دختر عثمان، عایشه بود، مروان مداخله کرد و نگذاشت این وصلت شکل بگیرد و عایشه به عقد عبدالله بن زبیر آمد. این بی اعتنایی‌ها به بنی هاشم، حسین را بیش از حسن خشمگین می‌کرد. البته حسین، تلافی این اقدام مروان را در آورد و وقتی که یزید پسر معاویه خواهان ام کلثوم دختر عبدالله بن جعفر بود، مانع از این وصلت شده و ام کلثوم را به عقد قاسم بن محمد بن ابوبکر درآورد. همچنین حسین بر خلاف حسن، وقتی که مروان در اولین امارتش بر مدینه، علی را لعنت می‌کرد، واکنش شدیدی نشان داده و مروان و پدرش حکم را که قبلاً از سوی محمد پیامبر اسلام طرد شده بودند، لعنت نمود.

وقتی که حسن آن طور که گفته می‌شود بر اثر مسمویت در بستر مرگ بود، شک خود به معاویه را در این مسمومیت به حسین ابراز نداشت تا حسین اقدامی تلافی جویانه انجام ندهد. حسن وصیت کرد که در کنار پدربزرگش محمد دفن شود و اگر بر سر این مسئله اختلاف و خونریزی بوجود آید، وی در کنار مادرش فاطمه دفن شود. وقتی مروان بن حکم مانع از دفن حسن در کنار محمد به تلافی اینکه عثمان را نگذاشته بودند در بقیع دفن شود، شد، حسین به اتحادیهٔ قریش به نام حلف الفضول شکایت نموده و خواستار احقاق حقوق بنی هاشم در برابر بنی امیه گردید. اما محمد بن حنفیه و دیگران سرانجام حسین را متقاعد کردند که حسن را در کنار مادرش به خاک بسپارند. در همین زمان شیعیان کوفه شروع به بیعت با حسین کردند و با پسران جعده بن هبیره بن ابی الوهب مخزومی که نوه‌های ام هانی خواهر علی بن ابی طالب بودند در خانه سلیمان بن صرد خزاعی دیدار نموده و به حسین نامه‌ای نوشتند و مرگ حسن را به وی تسلیت گفته، وفاداری خود را به حسین اعلام داشته، از علاقه‌شان به حسین و نفرتشان از معاویه سخن گفته و از اشتیاقشان به پیوستن حسین به آنان خبر دادند. حسین در پاسخ به آنان نوشت که موظف است شرایط صلح حسن را رعایت کند و از آنان خواست که احساساتشان را بروز ندهند و اگر حسین تا زمان بعد از مرگ معاویه زنده ماند، آن وقت دیدگاهش را به شیعیان خواهد گفت.

عمرو پسر عثمان (خلیفه سوم) به مروان در مورد دیدارهای بسیاری از شیعیان با حسین در مدینه هشدار داد و مروان این را به معاویه نوشت. معاویه توسط مروان بن حکم حاکم مدینه از رفت‌وآمدهای شیعیان با حسین مطلع می‌گشت اما واکنشی نشان نمی‌داد. معاویه می‌گفت که هرگاه دسته‌ای در مسجد النبی دیدید که سخن بیهوده‌ای در آن گفته نمی‌شود، بدانید که آن گروه، گروه حسین است. در این زمان معاویه از مروان حاکم مدینه خواسته بود تا با حسین برخوردی نداشته باشد و عملی تحریک آمیز انجام ندهد. عمادی حائری می‌نویسد که حسین نسبت به حسن در مقابل امویان برخورد تندتر و علنی تری داشت. حسین یک بار با مروان به خاطر توهین به فاطمه برخورد سختی کرد و همچنین در برابر دشنام دادن به علی از سوی امویان واکنش شدیدی نشان می‌داد. اما عمادی حائری در عین حال با استناد به مفهوم امامت در شیعه و همچنین از نظر تاریخی معتقد است که این دو برادر به طور کلی دارای موضع گیری یکسانی بوده‌اند و برای اثبات این مدعا به قضیه کفن و دفن حسن و تبعیت حسین از وصیت حسن اشاره می‌کند. یک بار مروان نامه‌ای تهدید آمیز به حسین نوشت و به وی در مورد بروز تفرقه در امت اسلامی هشدار داد که با پاسخ قاطعی از سوی حسین مواجه شد و حسین معاویه را به خاطر اینکه به زیاد بن ابیه به خاطر همبستر شدن مادر زیاد با ابوسفیان لقب برادر را داده بود مورد نکوهش قرار داده و به خاطر اعدام حجر بن عدی به معاویه اعتراض نمود و به تهدیدها اعتنایی نکرد. معاویه به اطرافیان و دوستانش از حسین شکایت کرد اما از تهدید بیشتر خود داری نموده و هدیه فرستادن‌ها به حسین را ادامه داد. در زمان حکومت معاویه دو عمل مهم از او در منابع تاریخی ثبت شده‌است. یکی هنگامی که در مقابل چندی از بزرگان بنی امیه در مورد حق مالکیت خود بر یک سری زمین‌ها ایستاد و دیگر آنکه از تقاضای معاویه برای پذیرش یزید بعنوان ولی عهد معاویه با این دیدگاه که تعیین ولی عهد بدعتی است در اسلام سرباز زد. حسین به همراه دیگر فرزندان صحابه مشهور محمد، این عمل را به خاطر اینکه خلاف صلح نامه حسن و خلاف اصل شورای عمر در تعیین خلیفه بود را رد نمود. بعد از مرگ حسن، حسین صاحب بیشترین احترام در بنی هاشم بود و با وجود اینکه افرادی مانند ابن‌عباس از لحاظ سنی از وی بزرگتر بودند، با وی مشورت می کرده و نظر او را به کار می‌بستند.

در هنگامی که معاویه برای یزید بیعت جمع می‌کرد حسین از معدود کسانی بود که بیعت را رد کرد و معاویه را محکوم کرد. سید محمد عمادی حائری بر این باور است که در این برهه وی هدایای معاویه را قبول نمی‌کرد. معاویه به یزید توصیه کرد که با حسین با نرمش برخورد کند و او را به بیعت مجبور نکند.




دوران خلافت یزید بن معاویه
بیعت نکردن با یزید و حوادث در پی آن
بلافاصله پس از مرگ معاویه (۱۵ رجب ۶۰/ ۲۲ آوریل ۶۸۰) به فرمان یزید، ولید بن عتبه بن ابوسفیان حاکم مدینه، حسین و عبدالله بن زبیر و عبدالله بن عمر را در ساعت غیر معمول به قصر حکومتی فرا خواند تا آنان را مجبور به بیعت با یزید کند. هر دو می‌دانستند که معاویه درگذشته‌است و می‌خواستند بیعت با یزید را رد کنند، اما از جان خود بیم داشتند. عبدالله شبانه به مکه گریخت. حسین به همراه پیروانش به قصر آمد و مرگ معاویه را تسلیت گفت و بیعت با یزید را به بهانه اینکه باید در ملاء عام باشد، دو روز به تعویق انداخت و سرانجام در شب به همراه خاندانش به مکه گریخت اما با این وجود از راه فرعی نرفت و از راه اصلی به مکه رفت. در این سفر، زنان و فرزندان، برادران حسین و پسران حسن، با وی بودند. محمد حنفیه با وی نیامد و به حسین مکرراً تذکر داد که قبل از اینکه از بیعت اهل عراق با خودش مطمئن نشود، به آنجا نرود. دانشنامه ایرانیکا روایت واقدی در مورد گریختن حسین و عبدالله بن زبیر به همراه هم را رد می‌کند. مروان، ولید بن عتبه بن ابوسفیان را به توسل به زور فرا می‌خواند اما ولید مایل نبود که با نوه محمد برخورد جدی کند که این مهم باعث عزلش شد. شرایطی که به خاطر وجود حسین و عبدالله در مکه به وجود آمده بود، یک وضعیت عادی نبود. مردم مکه به حسین گرایش داشتند و عبدالله به خاطر این موضوع به حسین حسادت می‌کرد. حسین در مکه در خانه عباس بن عبدالمطلب به سر می‌برد و چهار ماه آنجا بود.
دعوت مردم کوفه از حسین و فرستادن مسلم بن عقیل

خبر مرگ معاویه با خوشحالی کوفیان که اکثر شیعی بودند مواجه شد. سران شیعیان کوفه در خانه سلیمان بن صرد خزاعی جمع شده و خدا را به خاطر پایان یافتن حکومت معاویه شکر کرده، وی را خلیفه‌ای نا حق و غصب کننده آن بدون شایستگی نامیده و شروع به نوشتن نامه و فرستادن قاصد به حسین کرده و اذعان داشتند که دیگر حکومت بنی امیه را تحمل نکرده و بنی امیه را غارت‌گر اموال فیء و توزیع کننده اموال خدا بین ثروتمندان و کشندهٔ بهترین مسلمانان (اشاره به کشتار حجر بن عدی و پیروانش) و زنده باقی نگهدارندهٔ بدترین مردمان نامیدند. کوفیان بیان داشتند که نماز جمعه این هفته را به اقامت نعمان بن بشیر (والی کوفه که از سوی معاویه گماشته شده بود) بر‌گزار نخواهند کرد و اگر حسین راغب به آمدن باشد، نعمان را از کوفه بیرون خواهند نمود. ساکنین کوفه و سران قبایل آن، به حسین، هفت قاصد با کیسه‌های فراوان از نامه فرستادند که دو تای اولش در ۱۰ رمضان ۶۰/ ۱۳ ژوئن ۶۸۰ به مکه رسید. حسین در پاسخ به آنها نوشت که حس اتحاد آنها را درک کرده و بیان داشت که امام امت باید بر طبق کتاب خدا عمل کرده و اموال را با صداقت تقسیم کرده و خود را وقف خدمت به خداوند نماید. با این وجود، قبل از هر کاری، صلاح را آن دید که پسرعمویش مسلم بن عقیل را به آنجا فرستاده تا شرایط آنجا را بررسی کند. رسول جعفریان با برشمردن سابقه بد کوفیان در زمان علی و حسن، استدلال می‌کند که با این وجود با توجه به اطلاع حسین از نقشه یزید در قتل وی، در آن زمان برای حسین راه بهتری وجود نداشت. چرا که به عنوان مثال احتمال رفتن به یمن نیز به دلیل نفوذ حکومت موفقیت آمیز نبود. وی به این نکته اشاره می‌کند که همه کسانی که معترض خروج حسین بودند، وی را به پذیرش حکومت یزید ولو به طور موقت نصیحت می‌کردند و اینکه حسین ابن علی به هیچ وجه نمی‌خواست موافقتی با یزید و حاکمیت او داشته باشد حتّی اگر این مخالفت به کشته‌شدن او منجر شود.

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

خداوند محمد را بهترین بندگان خود قرار داد و خانواده و اهل بیتش را وصی و وارث خود نمود، اما قریش این حق را که به اهل بیت منحصراً تعلق داشت را از آن خود دانست. اما اهل بیت به خاطر وحدت امت با این امر موافقت نمود. آنانی که حق خلافت را غصب نمودند، با این حال حق را به پا داشتند و درود خدا بر آنان و اهل بیت محمد باد. قرآن و سنت محمد را به یاد شما امت می‌آورم. دین خدا نابود شده و بدعتها در دین گسترش یافته‌است. اگر از من اطاعت کنید شما را به راه حق رهنمون خواهم شد.

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

مردم کوفه به سرعت با مسلم بیعت نموده و حتی مسلم به منبر مسجد کوفه رفت و در آنجا مردم را مدیریت نمود. گفته می‌شود ۱۸۰۰۰ تن برای یاری حسین با مسلم بیعت نمودند. این ناآرامی‌ها به یزید گزارش داده شد و یزید که دیگر اعتمادی به نعمان بن بشیر انصاری حاکم وقت کوفه نداشت، به جایش عبیدالله بن زیاد را که والی بصره بود گماشت. عبیدالله فرمان یافت تا سریعاً به کوفه رفته و آشوب‌ها را بخواباند و با مسلم بن عقیل برخورد شدید کند. وی با لباس مبدل و تغییر قیافه به کوفه وارد شد و اقدامات شدیدی در برخورد با هواداران حسین انجام داد که آنان را وحشت زده کرد. وی همچنین سران قبایل کوفه را با ارعاب مطیع خود کرد. پس از اینکه اقدامات کوفیان در شورش و تصرف قصر کوفه به جایی نرسید، مسلم مخفی شده اما سرانجام مکانش لو رفته و در تاریخ (۹ ذی الحجه ۶۰/ ۱۱ سپتامبر ۶۸۰) پس از آنکه گردنش را زدند، از بام قصر کوفه و در ملاء عام به پایین انداخته شد. هانی بن عروه رهبر قبیله مراد نیز به خاطر اینکه مسلم را پناه داده بود، مصلوب گردید. یزید طی نامه‌ای ابن زیاد را به خاطر برخورد شدیدش مورد تقدیر قرار داد و به وی فرمان داد که مراقب حسین و پیروانش باشد و اگر قصد جنگ داشتند، آنان را بکشد. این در حالی بود که وی، نامه‌ای بسیار خوشبینانه حاکی از موفقیت آمیز بودن تبلیغاتش و هزاران بیعت از سوی مردم کوفه، به سوی حسین فرستاده بود.

ساعت : 5:16 am | نویسنده : admin | مطلب بعدی
نوای علمدار | next page | next page