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

2024-03-29T09:25:00Z موضوع علم دانش تکنولوژی زمان مطالعه 18 دقیقهدرجه کیفی A

طبقه بندی نرم افزار – بر اساس برنامه(زمان مطالعه 5 دقیقه)

نرم افزار را می توان بر اساس معیارهای مختلفی طبقه بندی کرد، از جمله:

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


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

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

انواع نرم افزار

 نرم افزار به طور گسترده در چندین حوزه از جمله بیمارستان ها، بانک ها، مدارس، دفاع، مالی، بازارهای سهام و غیره استفاده می شود.

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

  • بر اساس برنامه
  • بر اساس حق چاپ


انواع نرم افزار بر اساس برنامه

نرم افزار را می توان بر اساس برنامه طبقه بندی کرد. بر این اساس قرار است اینها انجام شود.

1. نرم افزار سیستم:

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

2. نرم افزار کاربردی:

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

3. نرم افزار شبکه و برنامه های کاربردی وب:
نرم افزار شبکه پشتیبانی لازم برای تعامل کامپیوترها با یکدیگر و امکانات ذخیره سازی داده را فراهم می کند. نرم افزار شبکه همچنین زمانی استفاده می شود که نرم افزار در شبکه ای از رایانه ها (مانند شبکه جهانی وب) در حال اجرا باشد. این شامل کلیه نرم افزارهای مدیریت شبکه، نرم افزار سرور، نرم افزارهای امنیتی و رمزگذاری، و نرم افزارهای توسعه برنامه های کاربردی مبتنی بر وب مانند HTML، PHP، XML و غیره می باشد.

4. نرم افزار تعبیه شده:
این نوع نرم افزار به طور معمول در حافظه فقط خواندنی (ROM) به عنوان بخشی از یک سیستم بزرگ در سخت افزار تعبیه شده است و برای پشتیبانی از عملکردهای خاص تحت شرایط کنترل استفاده می شود. به عنوان مثال می توان به نرم افزارهای مورد استفاده در ابزار دقیق و برنامه های کنترل مانند ماشین لباسشویی، ماهواره، مایکروویو و غیره اشاره کرد.

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

6. نرم افزار کسب و کار:
این دسته از نرم افزارها برای پشتیبانی از برنامه های کاربردی تجاری استفاده می شوند و پرکاربردترین دسته نرم افزارها هستند. به عنوان مثال می توان به نرم افزاری برای مدیریت موجودی، حساب ها، بانک ها، بیمارستان ها، مدارس، بازارهای سهام و غیره اشاره کرد.

7. نرم افزار سرگرمی:
نرم افزار Education and Entertainment ابزار قدرتمندی برای آژانس های آموزشی به ویژه آنهایی که با آموزش کودکان خردسال سروکار دارند فراهم می کند. طیف گسترده ای از نرم افزارهای سرگرمی مانند بازی های رایانه ای، بازی های آموزشی، نرم افزارهای ترجمه، نرم افزارهای نقشه برداری و ... وجود دارد.

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

9. نرم افزار علمی:
نرم افزار علمی و مهندسی نیازهای یک کاربر علمی یا مهندسی را برای انجام وظایف خاص سازمانی برآورده می کند. چنین نرم‌افزاری برای کاربردهای خاص با استفاده از اصول، تکنیک‌ها و فرمول‌های خاص در آن زمینه نوشته شده است. به عنوان مثال می توان به نرم افزارهایی مانند MATLAB، AUTOCAD، PSPICE، ORCAD و غیره اشاره کرد.

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

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

مطالب مشابه

پرینتر سه بعدی چیست و چگونه کار می کند؟
پرینتر سه بعدی چیست و چگونه کار می کند؟
Alternate Text Nazila77
موضوع علم دانش تکنولوژی|زمان مطالعه 21 دقیقه
بهترین ابزار و نرم افزار سئو هوش مصنوعی در سال 2023(بخش اول)
بهترین ابزار و نرم افزار سئو هوش مصنوعی در سال 2023(بخش اول)
Alternate Text Nazila77
موضوع علم دانش تکنولوژی|زمان مطالعه 5 دقیقه
جایگزین های برتر ChatGPT برای سال 2023
جایگزین های برتر ChatGPT برای سال 2023
Alternate Text Nazila77
موضوع علم دانش تکنولوژی|زمان مطالعه 5 دقیقه
چرا داشتن عزت نفس بالا مهم است؟
چرا داشتن عزت نفس بالا مهم است؟
Alternate Text Nazila77
موضوع علم دانش تکنولوژی|زمان مطالعه 6 دقیقه