دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۸
  • دی

جلسه ۰۴-۰۱ : نیازمندی های نرم افزار

  • دسته‌بندی‌ها :
جلسه ۰۴-۰۱ : نیازمندی های نرم افزار
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      عرض سلام خدمت همراهان گرامی وب سایت آموزشی پی وی لرن. با موضوع آموزش مهندسی نرم افزار (Software Engineering) در خدمتتون خواهیم بود. مبحث نیازمندی های نرم افزار (Software Requirements) در مهندسی نرم افزار رو در سه جلسه بیان خواهیم نمود.

      نیازمندی های نرم افزار (Software Requirements)

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

      مهندسی نیازمندی ها

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

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

      فرآیند مهندسی نيازمندی

      این یک فرآیند چهار مرحله ای است ، که شامل موارد زیر می شود.

      • امکان سنجی
      • جمع آوری نيازمندی
      • مشخصات نيازمندی نرم افزار
      • اعتبارسنجی نيازمندی نرم افزار

      حال بگذارید به طور خلاصه روند را ببینیم.

      امکان سنجی

      هنگامی که کلاینت برای دستیابی به محصول مورد نظر خود، رویکرد سازمان را توسعه می دهد ، ایده کاملی در مورد این که باید چه عملکردی نرم افزار انجام دهد و این که چه ویژگی هایی از نرم افزار انتظار می رود ، ارائه می شود.

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

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

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

      جمع آوری نیازمندی

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

      مشخصات نيازمندی نرم افزار (Software Requirement Specification)

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

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

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

      SRS باید دارای ویژگی های زیر باشد:

      • نیازهای کاربر به زبان طبیعی بیان شده است.
      • الزامات فنی به زبان ساختاری بیان می شود ، که در داخل سازمان استفاده می شود.
      • شرح طراحی باید با کد Pseudo نوشته شود.
      • فرمت فرم ها و چاپ صفحه GUI.
      • نمادهای شرطی و ریاضی برای DFD و غیره

      اعتبارسنجی نيازمندی نرم افزار

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

      • در صورت عملی شدن آن ها
      • در صورت صحت و طبق عملکرد و دامنه نرم افزار
      • در صورت وجود هرگونه ابهام
      • در صورت کامل بودن
      • در صورتی که بتوان آن ها را نشان داد.

      فرآیند استخراج نیازمندی (Requirement Elicitation Process)

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

       

      نیازمندی های نرم افزار (Software Requirements) در مهندسی نرم افزار

      نیازمندی های نرم افزار (Software Requirements) در مهندسی نرم افزار

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

      نیازهای مربوط به ذینفعان مختلف است. برای رفع ابهام و تضاد و برای شفافیت و صحت و سقم بحث می شود.

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

      این بخش از نیازمندی های نرم افزار (Software Requirements) رو به پایان می رسونیم.

      کلام پایانی

      با نیازمندی های نرم افزار (Software Requirements) در جلسات آینده نیز همراه خواهیم داد و ابعاد دیگری از آن را در نظر خواهیم گرفت.

      QR:  جلسه ۰۴-۰۱ : نیازمندی های نرم افزار
      به اشتراک بگذارید