مدیریت پیچیدگی
اعمال شیوه‌های مدیریتی با محوریت اشیاء در مطالعه، طراحی، ایجاد، و اجراء پروژه‌های مهندسی نرم‌افزار و مهندسی دانش.





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




ویژگی ها ومفاهیم معمولی

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




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





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




شبه سنجه‌ها

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

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





قانون برابری، شکست برابری

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

خطای دامنه وضعیتی است که در آن کد خارج از دامنهٔ برابری اجرا می‌شود، که این دامنه ایست که در آن مفهوم و پیاده‌سازی منطبق می‌شوند سرریز عدد حسابی مثالی از خطای دامنه است.
قالب مفهوم (همچنین قالب بندی دوباره مفهوم یا مفهوم را دوباره قالب بندی کردن) بازنویسی یک مفهوم به صورت مفهومی دیگر است بدین سبب که مفهوم اصلی را نمی‌توان به وسیله ابزارها پیاده‌سازی نمود در زبان C به کار بردن اشاره گرها برای آرگومان‌های خروجی به این دلیل که زبان C از آرگومان‌های خروجی به صورت صریح پشتیبانی نمی‌کند، مثالی از قالب مفهوم است.
وارونگی اولویت صورتی از اعوجاج نحوی یا معنایی است که به وسیله برخی قوانین عمومی دیکته شده از سوی زبان به وجود می‌آید. از این رو وارونگی اولویت نامیده می‌شود که زبان تقدم را بر مفهوم حاکم می‌سازد. در Smalltalk هر چیزی یک شی است و این قانون به این دستاورد ناخواسته منجر می‌شود که عبارتی شبیه به ۲+۳*۵ از توالی مرسوم عملیات پیروی نمی‌کند (در Smalltalk ابتدا ۲ با ۳ جمع شده، حاصل آن در ۵ ضرب می‌شود که در نهایت عدد ۲۵ به جای ۱۷ بدست می‌آید.)




روش شناسی

برای نوشتن کد برنامه نویسی مفهوم این گام‌ها را پیشنهاد می‌دهد:

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

ابزارهای برنامه نویسی بسیاری اغلب فاقد قابلیت‌های نمادی هستند. بنابراین برنامه نویسی مفهوم در برخی موارد نیازمند استفاده از پیش پردازنده‌ها، زبان‌های مختص به دامنه یا روش‌های فرا برنامه نویسی است.




زبان‌ها

زبان برنامه نویسی XL تنها زبان شناخته شده ایست که تا به امروز به طور واضح برای برنامه نویسی مفهوم ایجاد شده است. اما برنامه نویسی مفهوم تقریباً در هر زبانی با درجات متفاوتی از موفقیت قابل اجراست. زبان‌های برنامه نویسی Lisp و Forth و مشتقات آنها نمونه‎هایی از زبان‌های از قبل موجود هستند که به خوبی قابلیت استفاده به عنوان برنامه نویسی مفهوم را دارند.




کارهای مشابه

پروژه‌هایی هستند که از ایده‌های مشابه بهره‌برداری کرده‌اند تا با سطح بالایی از انتزاع کد تولید کنند. دربین آنها این موارد را می‌توان نام برد:

برنامه نویسی هدفی
برنامه نویسی زبان گرا
برنامه نویسی ادیبانه
معماری مدل- محور






برنامه‌نویسی منطقی
برنامه‌نویسی منطقی در کلی‌ترین مفهوم آن، کاربرد منطق ریاضی در برنامه‌نویسی رایانه است.




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



نمونه‌های مهم

برنامه‌نویسی دستوری در تضاد با برنامه‌نویسی تابعی
برنامه‌نویسی رویه‌ای در تضاد با برنامه‌نویسی شئ‌گرا
برنامه‌نویسی منطقی







مدل برنامه‌نویسی موازی

مدل برنامه‌نویسی موازی (به انگلیسی: Parallel programming model) مفهومی است که عبارت‌های برنامه‌های موازی را قادر می‌سازد ترجمه و اجرا شوند. ارزش یک مدل برنامه‌نویسی معمولاً بر اساس فراگیری آن (اینکه چند مسئلۀ متفاوت می‌توانند توسط آن بیان شوند و با چند معماری مختلف می‌توان آن‌ها را اجرا کرد) تعیین می‌شود. ایجاد یک مدل برنامه‌نویسی می‌تواند چندین حالت بگیرد مانند الهام گرفتن کتابخانه‌ها از زبان‌های متوالی قدیمی، ضمیمه‌های زبان و یا مدل‌های اجرایی کاملاً جدید.

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




طبقه‌بندی و الگوهای اصلی

طبقه‌بندی‌های مدل‌های برنامه‌نویسی موازی را می‌توان به دو محدودۀ کلی تقسیم کرد: تعامل فرایند و تجزیۀ مسئله.




تعامل فرایند

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




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

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




موازی‌سازی تلویحی

در مدل موازی‌سازی مطلق، هیچ یک از فعل و انفعالات فرایند برای برنامه‌نویس قابل مشاهده نیست و به جای آن مترجم و یا ران‌تایم برای اجرای آن مسئول است. این مدل بین زبان‌های با دامنۀ اختصاصی متداول‌تر می‌باشد.




تجزیۀ مسئله

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




موازی‌سازی وظیفه

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




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






مهندسی نرم‌افزار

مهندسی نرم افزار (به انگلیسی: Software engineering) یعنی استفاده از اصول مهندسی بجا و مناسب برای تولید و ارائه محصول نرم افزاری با کیفیت که قابل اطمینان و با صرفه بوده و برروی ماشین های واقعی به طور کارآمدی عمل کند.

مهندسی نرم افزار یک روش سیستماتیک، منظم و دقیق برای ساخت و ارائه محصولی نرم افزاری با کیفیت است.

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

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

فناوری‌ها و خدمات مهندسی نرم‌افزار به کاربران برای بهبود بهره‌وری و کیفیت یاری میرساند. نمونه‌هایی از زمینه‌های بهبود: پایگاه داده‌ها، زبان‌ها، کتابخانه‌ها، الگوها، فرآیندها و ابزار.




مهم ترین شاخص مهندسی نرم‌افزار

مهم ترین شاخص در مهندسی نرم افزار تولید نرم افزار با کیفیت مناسب در جهت «نیازهای مشتری» است.




پیشینه مهندسی نرم‌افزار

اصطلاح مهندسی نرم‌افزار پس از سال ۱۹۶۸ میلادی شناخته شد. این اصطلاح طی نشست «مهندسی نرم‌افزار ناتو ۱۹۶۸» (که در گارمیش-پارتنکیرشن، آلمان برگزار شد) توسط ریاست نشست فریدریش ال باوئر معرفی شد و از آن پس به‌طور گسترده مورد استفاده قرار گرفت.

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

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

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



مطالعه روش‌های موجود در استاندارد IEEE

محدوده مهندسی نرم‌افزار و تمرکز آن

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

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

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




نیاز به مهندسی نرم‌افزار

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

با توجه به گسترش روزافزون دنیای رایانه امروزه بیش از هر زمان دیگری نیاز به متخصصان رایانه احساس می شود. متاسفانه این رشته در ایران بازار کار خوبی ندارد طبق آمارها ۶۳٫۲۷ درصد از فارغ‌التحصیلان در سال ۹۰ مشغول به کار در سایر مشاغل هستند. اما برای مهندسان سخت افزار هم امكان كار در شركت‌های تولیدكننده قطعات و دستگاه‌ها و مراكز صنعتی – تولیدی بسیار فراهم است و از نظر سطح درآمدی هم با توجه به دانش و پشتكار شخصی در حد متوسط قرار دارند. به طور کلی این رشته در ایران با استقبال چندانی رو به رو نیست؛ این نیز حاکی از نبود برخی از زیرساخت‌ها در ایران هست.




تکنولوژی‌ها و روش‌های عملی

مهندسان نرم‌افزار طرفدار تکنولوژی‌ها و روشهای عملی بسیار متفاوت و مختلفی هستند، که با هم ناسازگار هستند. این بحث در سال‌های دهه ۶۰ میلادی شروع شد و ممکن است برای همیشه ادامه پیدا کند. مهندسان نرم‌افزار از تکنولوژی‌ها و روش‌های عملی بسیار متنوعی استفاده می‌کنند. کسانی که کار عملی می‌کنند از تکنولوژی‌های متنوعی استفاده می‌کنند: کامپایلرها، منابع کد، پردازشگرهای متن. کسانی که کار عملی می‌کنند از روش‌های عملی بسیار متنوعی استفاده می‌کنند تا تلاش‌هایشان را اجرا و هماهنگ کنند: برنامه‌نویسی در دسته‌های دونفری، بازبینی کد، و جلسات روزانه. هدف هر مهندس نرم‌افزار بایستی رسیدن به ایده‌های جدید خارج از الگوهای طراحی شده قبلی باشد، که باید شفاف بوده و به‌خوبی مستند شده باشد.

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




ماهیت مهندسی نرم‌افزار

دیوید پارناس گفته‌است که مهندسی نرم‌افزار یک شکل از مهندسی است. استیو مک‌کانل گفته‌است که هنوز اینطور نیست، ولی مهندسی نرم‌افزار باید یک شکل از مهندسی شود. دونالد کنوت گفته‌است که برنامه‌نویسی یک هنر است.

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






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




مهندس دانش کیست؟

مهندسان دانش (Knowledge Engineer) نقشی است که در فرآیند مهندسی دانش یا (Knowledge Engineering) تبحر دارد؛ وی می تواند سه فعالیت استخراج، تحلیل و مدلسازی دانش را انجام دهد. این سه فعالیت منجر به تولید یک پایگاه دانش ساخت یافته مبتنی بر مدل های دانش با قابلیت استفاده مجدد می شود که می تواند به عنوان محتوای ورودی در یک سیستم مبتنی بر دانش استفاده شود. در نگاه های غیرحرفه ای تر مهندس دانش به عنوان نقشی برای اجرای برخی فرآیندهای ساده مدیریت دانش تنزل پیدا می کند.





سیستم‌های مدیریت دانش

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

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




تعریف مدیریت دانش

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




آفرینش و ربایش دانش

سازمان باید به خوبی بتواند دانش مورد نیاز خود را شناسایی کند، در صورت نیازآن را بیافریند، یا اینکه از منابع دانش خارج از سازمان بدست آورد.




ذخیره سازی

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




انتشار و به اشتراک گذاری

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



به کارگیری دانش

پس از انجام گامه های فوق مدیریت دانش در سطح سازمان پیاده سازی می‌شود و مورد استفاده قرار می‌گیرد.




انواع دانش

چهار نوع دانش مشخص شده‌است:

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

از سوی دیگر دانش را به دو نوع نهفته یا ضمنی و آشکار تقسیم بندی می‌کنند: دانش نهفته معمولاً در قلمرو دانش شخصی، شناختی وتجربی قرار می¬گیرد. فرآوردۀ تجربیات افراد می-باشد و از همین رو در جایی ثبت نمی‌گردد بلکه با گفتگو، بحث، مشورت و ... به اشتراک گذاشته می‌شود. دانش آشکار بیشتر به دانشی گفته می شود که جنبه عینی تر -عقلانی تر و فنی تر دارد (داده‌ها، خط مشی‌ها، روش‌ها، نرم‌افزارها، اسناد و ...). دانش آشکار به طور معمول قابل ثبت می‌باشد و به صورت نوشته به آسانی در دسترسی افراد قرار می‌گیرد.




تبدیل دانش

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

گروه افزار



سامانه های مکان یابی

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

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

سامانه های خودکارسازی اداری
سامانه های مدیریت مدارک الکترونیکی
سامانه های هوش تجاری
سامانه های دانش مدار
انبارهای داده
کتابخانه‌های مجازی
کارگزاران خودکار
نقشه‌های دانش، رده بندی ها و غیره
درگاههای دانش
فناوریهای کاوش

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

ابزارهای مورد استفاده در این قسمت عبارتند از:

ابزارهای پشتیبان نوآوری
نرم‌افزار یادگیری سازمانی

مراحل پیاده سازی نظام مدیریت دانش در سازمان

پیاده سازی یک نظام مدیریت دانش همچون سایر نظام ها و به تناسب موارد خاص آن در شش گامه صورت می‌گیرد:




گام نخست - امکان سنجی طرح

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




مرحله دوم- طراحی خام نظام

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




مرحله سوم- طراحی تفصیلی سیستم

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




مرحله چهارم- پیاده سازی

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




مرحله پنجم- نگهداری

جهت جاگیر شدن، تثبیت و ماندگاری سیستم در سازمان باید به یک سری موارد توجه داشت که عبارت است از مشاوره جهت رفع عیوب و نواقص، قرار دادن یک نمایندگی از طرف گروه طراح سیستم در دستگاه اجرایی، و تلاش برای جلوگیری از بازگشت دستگاه به سیستم قبلی_که معمولاً شش ماه مراقبت را لازم دارد_ و ... .





مرحله ششم- ارزشیابی سیستم

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




سیستمهای کار- دانش

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




دانشگران

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




وظایف دانشگران

۱)وظیفه به روز رسانی دانش سازمان که در ارتباط با محیط خارج است را به عهده دارند.

۲)این افراد به عنوان مشاورین داخل سازمان به ارائه خدمات می‌پردازند.

۳)در راستای تغییر، ایجاد خلاقیت و ارتقا در داخل سازمان فعالیت می‌کنند.
نیازمندیهای سیستم کار دانش

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

عزیمت حسین به کوفه

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





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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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




واقعه کربلا

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

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

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

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

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

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

نبرد به پایان رسید و سربازان ابن زیاد رو به غارت آوردند. لباس‌های حسین، شمشیر و اثاثیه‌اش، کفشها و روپوش یمانی‌اش همگی غارت گردیدند. همچنین زیورآلات و چادر زنان نیز غارت گردید. زین العابدین علی بن حسین که بیمار بود در یکی از خیمه‌ها بود و شمر می‌خواست او را بکشد. اما ابن سعد مانع شد و اجازه نداد کسی به خیمهٔ وی وارد شود. صفوف عزاداران حسین به خاطر وجود علی بن حسین است و نام «شهدای کربلا و طف» با نام وی عجین شده‌است. ۷۲ تن یاران حسین که ۱۷ تن از آنان هاشمی بودند و بر طبق محسن الامین، از لشکریان ابن زیاد ۸۸ تن کشته شدند. حر بن زیاد ریاحی، ۴۰ نفر و بریر بن خضیر ۳۰ نفر، نافع ۱۲ یا ۱۳ نفر و حسین تعداد زیادی از لشکریان ابن زیاد را کشتند. سن حسین را هنگام کشته شدن، ۵۶ سال پنج ماه، ۵۷ سال و چند ماه یا ۵۸ سال نوشته‌اند. روز عاشورا را در تاریخ روز جمعه، شنبه یا دوشنبه دانسته‌اند که در این میان روز جمعه صحیح تر به نظر می‌رسد و ابوالفرج اصفهانی روز دوشنبه را از لحاظ تقویمی رد می‌کند. تاریخ کشته شدن حسین را نیز به غیر از ۱۰ محرم ۶۱، در ماه صفر یا سال ۶۰ نیز ذکر کرده‌اند.




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

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




خانواده حسین

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

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

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

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