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

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

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

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

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

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

لینک گانال تلگرام دوره مهندسی نرم افزار پیشرفته

سرفصل های دوره آموزش جامع مهندسی نرم افزار پیشرفته – بخش اول

  • تعریف مهندسی نرم افزار
  • چرا مهندسی نرم افزار اهمیت دارد؟
  • محصول کار چیست؟
  • ماهیت نرم افزار
  • تعریف نرم افزار
  • منحنی شکست سخت افزار
  • منحنی شکست نرم افزار
  • زمینه های کاربرد نرم افزار
  • لایه های مهندسی نرم افزار
  • تحلیل و روش های صحیح مطالعه ی سیستم
    • تحلیل نیازمندی ها
    • تعیین نیاز های نرم افزار
    • FAST
    • اصول تحلیل
    • میدان اطلاعات
    • پرسش نامه
    • مصاحبه
    • نشست یا سمینار
    • تهیه فرم
    • مدل سازی
    • نمونه سازی نرم افزار
    • شیوه های نمونه سازی
    • بازنمایی
    • فرایند های مهندسی نرم افزار
  • فعالیت های چتری
  • اصول کلی
  • مفهوم افسانه ها در مهندسی نرم افزار
  • شروع به کار
  • تعیین مجموعه وضایف
  • مثالی از سیستم
  • مدل های فرایند تجویزی
    • مدل آبشاری
    • مدل V
    • مدل RAD
    • مدل فرایند افزایشی
  • مدل های فرایند تکمیلی
    • مدل مارپیچ (حلزونی)
    • مدل مارپیچ (حلزونی) Win-Win
    • مدل CBD
  • مدل توسعه همروند
  • مدل روش های رسمی
  • تکنیک های نسل چهارم
  • فرایند یکپارچه
  • فرایند تیمی و شخصی
    • فرایند شخصی
    • فرایند تیمی
  • مسا ئل زمان بندی
  • نمودار خطی زمان بندی
  • پیگیری برنامه زمانی
  • تکنیک های کاهش زمان پروژه
  • مدیریت زمان پروژه
  • وظایف مدیر پروژه هنگام بروز خطا
  • تحلیل مقادیر بدست آمده
  • پیگیری خطا
  • برآورد مالی و تعیین منابع مورد نیاز جهت انجام پروژه
    • هزینه
  • روش های تخمین هزینه
    • روش های قیاسی
    • روش های تجربی
    • روش بالا به پایین
    • روش پایین به بالا
  • طراحی
    • طراحی در حیطه مهندسی نرم افزار
    • فواید طراحی
    • تکامل طراحی نرم افزار
    • مفاهیم طراحی
    • مفاهیم طراحی شی گرا
    • کلاس های طراحی
  • مدل طراحی
    • عناصر طراحی داده
    • عناصر طراحی معماری
    • عناصر طراحی واسط ها
    • عناصر طراحی در سطح مولفه ها
    • عناصر طراحی در سطح استقرار
  • طراحی معماری
    • معماری نرم افزار
    • اهمیت معماری
    • ژانر های معماری
    • سبک های معماری
    • طبقه بندی سبک های معماری
    • الگوهای معماری
    • طراحی معماری
    • توصیف ساخت نمونه ای از سیستم
    • پیچیدگی های معماری
    • زبان های توصیف معماری
    • نگاشت تبدیل
    • مراحل طراحی نگاشت
    • پالایش طراحی معماری
  • تحلیل و طراحی واسط
    • مدل های تحلیل و طراحی و واسط
  • تحلیل واسط
    • تحلیل کاربران
    • مدل سازی و تحلیل وظایف
    • تحلیل محتوای صفحه نمایش
    • تحلیل محیط کار
  • مراحل طراحی واسط
    • الگوهای طراحی واسط کاربری
    • مسائل طراحی
  • طراحی واسط برنامه تحت وب
    • دستورالعمل و اصول طراحی
    • ارزیابی طراحی تحت وب
  • کیفیت طراحی برنامه های تحت وب
  • اهداف طراحی
  • هرم طراحی برنامه تحت وب
  • طراحی واسط برنامه های تحت وب
  • طراحی زیبایی
    • مسائل مهم چیدمان
    • مسائل گرافیکی
  • طراحی محتوا
    • اشیای محتوایی
    • مسائل طراحی محتوا
  • طراحی معماری
    • معماری محتوا
    • معماری برنامه های تحت وب
  • طراحی ابر رسانه ای به روش شی گرا (OOHDM)
  • طراحی مفهمومی ابر رسانه ای به روش شی گرا (OOHDM)
  • کیفیت نرم افزار ؟
  • ابعاد کیفیت نرم افزار
  • فاکتور های کیفیت نرم افزار
  • کیفیت محصول
  • کیفیت فرایند تولید محصول
    • کنترل کیفیت
    • تضمین کیفیت
    • هدف از تضمین
  • FTR
  • پیاده سازی
    • برنامه نویسی گروهی با نرم افزار های مدیریت سورس کنترل
  • معرفی نرم افزار های مدیریت سورس کنترل
    • Github
    • SVN
    • TFS
  • ابزار های TFS
  • TFS و نحوه کنترل پروژه از طریق آن
    • نصب و راه اندازی
    • ایجاد یک پروژه TFS
    • ارتباط با Visual Studio
    • آپلود سورس کد
    • چک کردن برنامه
    • ارتباط بین اعضا
  • GIT و نحوه کنترل پروژه از طریق آن
    • تعریف
    • چه کسانی باید از Git استفاده کنند
    • نصب و دانلود Git
    • پیکربندی Git
    • راهنمای Git
    • Initialize Repository
    • معماری Git
    • روند کار
    • ویرایش فایل
    • نمایش تغییرات
    • پاک کردن فایل از Repository
    • انتقال و تغییر نام
  • تست
    • تست آلفای یک پروژه تعریف شده
    • تست بتای یک پروژه ی تعریف شده
    • تست پیکربندی
    • Recovery Test
    • Security Test
    • Stress Test
    • Performance Test
    • Load Test
    • Installation Test
    • Black Box Test, White Box Test
    • Unit Test
    • مدیریت تغییرات
    • موارد تغییر
    • Load Test
    • Basis Path Test
    • فرایند اشکال زدایی (Debuging)
    • روش های اشکال زدایی
    • تصحیح خطا
  • توسعه
  • ساختار ورژن های یک نرم افزار
  • تعریف
  • ساختار SemVer
  • نحوه کار با SemVer
  • نام گداری صحیح ورژن ها
  • نسخه های مختلف نرم افزار
    • Pre-Alpha
    • Alpha
    • Beta
    • RC
    • RTM
    • Final
  • کنترل ورژن های نرم افزار
    • فرایند کنترل ورژن ها