Skip to main content

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

نام "واژه" را وارد کنید.
Term شرح
مهندسی نرم‌افزار

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

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

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

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

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

مهم‌ترین شاخص در مهندسی نرم‌افزار تولید(طراحی و پیاده سازی) نرم‌افزار با کیفیت متناسب با «نیازهای مشتری» است.

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

مهندسی نرم‌افزار را می‌توان به ۱۵ زیر رشته تقسیم کرد:


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

تست نرم‌افزار چیست؟

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

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

کلیک ها - 10
Synonyms: مهندسی نرم‌افزار