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