۲۰ فروردین

SRS یا شرح نیازمندی مشتری چیست؟

SRS) Software Requirement Specification) یک مستند برای بیان راه حل هایی است که با استفاده از آن ها می توانیم به نیازمندیهای مطرح شده کارفرما که در قالب مستند CSR مطرح شده است، پاسخ مناسب دهیم. در این مستند بیان جزیئات بخش های پروژه، امکانات و ویژگی های هر بخش به تفکیک و سطوح دسترسی آن از نظر انواع کاربرانی که در آینده باید از پروژه مدنظر استفاده نمایند، الزامی است. در نهایت این مستند با بیان دقیق ارتباط بین بخش ها با استفاده از تنظیم انواع فلوچارت ها، USE Caseها، Class Diagramها و هرگونه نمودار دیگری که عملکرد هر بخش و ارتباطات آنها را بهتر بیان میکند، تمام خواهد شد.

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

بخش اول: معرفی پروژه

۱) هدف

در این قسمت هدف تهیه مستند و مخاطبان مستند شرح داده خواهد شد.

۲) محدوده پروژه

در این بخش نام سامانه به همراه کاربرد و هدف کلی سامانه و همچنین مزایا و اهداف که مشخص کننده اندازه پروژه و اندازه جامعه کاربری سامانه هست شرح داده خواهد شد

۳) تعاريف، اصطلاحات و اختصارات

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

۴) منابع و مراجع

در این بخش مراجعی که در هر جایی از مستند به ارجاع داده شده و یا از آن‌ها استفاده شده ذکر می‌گردد.

۵) نگاه اجمالی

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

بخش دوم: شرح کلی

در اين بخش عواملي را كه روي نیازمندی‌های پروژه تأثیر گذار هستند توضيح داده می‌شوند البته این بدان معنی نیست که نيازمندي­ها را  در اين بخش تعريف كنيم زیرا در ادامه بخش مربوط به شرح نیازمندی‌ها در مستند خواهیم داشت. به عبارتی در این قسمت باید صرفاً به‌صورت تیتر وار به نیازمندی‌ها اشاره شود تا عملاً خواننده مستند یک دید کلی نسبت به پروژه و امکانات آن داشته باشد.

۱) دورنمای محصول یا محیط سیستم

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

در واقع یک چشم انداز بیرونی از سیستم ارائه می‌شود. و رابط‌های استفاده از سیستم مشخص می‌گردند. این بخش را می‌توان صرفاً با یک توضیح متنی کامل نمود و یا آنکه در قالب موارد نیز مورد بررسی قرار گیرد:

۲) رابط­های کاربری: در این بخش توضیحی در خصوص راه‌های ارتباطی کاربر و سامانه ارائه می‌شود(مانند پنل مدیریتی و بخش پرتال یا سایت، نسخه موبایل) و همچنین جوانب استفاده از سایت و موارد سهولت در استفاده

۳) رابط­های سخت افزاری: مثال این مورد می‌تواند ارتباط با یک GSM Modem باشد.

۴) رابط­های نرم افزاری: منظور ارتباط با سایر برنامه‌های نرم افزاری هست.

۵) رابط­های ارتباطی: منظور استفاده از پروتکل‌های شبکه‌ای هست. مثلاً ممکن است در یک پروژه نیازمند ارتباط با FTP یا MailServer باشیم. موارد ایمیلی، SMS و مشابه در این بخش ذکر می‌گردد.

۶) فعالیت‌ها و کارکردهای سامانه

اين بخش خلاصه­ايي از كاركردها و عمليات اصلي ايي كه در پروژه، مدنظر است را در بر خواهد گرفت. مثلاً اگر يک سيستم حسابداري مدنظر ما باشد بايد در اين بخش ” نگهداري حساب‌های مشتري” و “آماده سازي صورتحساب مشتري ” را در كاركردهاي اصلي درج کرده و به جزييات موارد اشاره نكنيم. بايد در حدي واضح بنويسيم كه هر شخصي كه براي اولين بار اين مستند را مي­خواند كاركردهاي سيستم برايش قابل درك باشد. مثلاً بخش محصولات، فروشگاه و …

۷) ویژگی‌های كاربران سيستم

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

۸) محدودیت‌ها

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

۹) فرضيات و وابستگی‌ها

فاكتورها و مواردی كه روي سيستم تأثیرگذار هستند مشخص می‌کنیم. فرضياتي را بيان می‌کنیم كه تغيير  آن‌ها در عملکرد نیازمندی‌های ما تأثیر بگذارد مثلاً فرض اينكه در صورتی که ارتباط با وب سرویس خاصی برقرار نبود برخی امکانات نیز در دسترس نخواهد بود و یا نحوه سرویس دهی متفاوت خواهد بود.

بخش سوم: مشخصه نیازها

۱) رابطه‌های بیرونی

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

۲) امکانات سامانه

در این قسمت به شرح ریز و دقیق بخش‌های هر نیازمندی می‌پردازیم. جهت آشنایی با فرمت شرح هر نیازمندی چند مورد به‌صورت نمونه در این قسمت درج شده است.

۲٫۱) سؤالات متداول

شرح: در این قسمت لیست سؤالات متداولی که کاربران می‌پرسند به تفکیک و دسته بندی قابل‌مشاهده خواهد بود.

ویژگی‌های این قسمت

  • تعریف سؤال
  • تعریف پاسخ سؤالات
  • تصویر فلوچارت

فیلدهای قابل‌مشاهده در این قسمت عبارت‌اند از

  • تعریف سؤالات و پاسخ آن‌ها: با استفاده از فیلدهای زیر می‌توان اقدام تعریف سؤالات و پاسخ آن‌ها کرد.
  • شرح سؤال: یک فیلد ویرایشگر که شرح سؤال در آن درج خواهد شد.
  • شرح پاسخ: یک فیلد ویرایشگر که شرح پاسخ در آن درج خواهد شد.
  • گروه: یک لیست بازشو که نام دسته بندی‌ها در آن قرار دارد.

۳) نیازمندی‌های طراحی و استانداردها

  • زبان برنامه نویسی هسته سیستم:
  • زبان برنامه نویسی رابط کاربری سیستم:
  • محیط برنامه نویسی:
  • سیستم عامل:
  • پایگاه داده مورد استفاده:

۴) ویژگی‌های سامانه

۴٫۱) امنيت

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

۴٫۲) سئو

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

۴٫۳) بهینه سازی نمایش در مرورگرهای مختلف

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


اجرا شده در: داده پرداز پویای شریف

FacebookTwitterGoogle+
مدیریت پروژه,مستندات پروژه های نرم افزاری,انواع مستندات کاری
به اشتراک گذاری این مطلب:
  • facebook
  • twitter
  • gplus

درباره محمدرضا اسماعیل طهرانی

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