علوم مهندسی کامپیوتر و IT و اینترنت

مقدمه ای بر مهندسی نیازمندی ها

moghadameyi_bar_mohandesiye_niyazmandiha

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






  • جزئیات
  • امتیاز و نظرات
  • متن پاورپوینت

امتیاز

درحال ارسال
امتیاز کاربر [0 رای]

نقد و بررسی ها

هیچ نظری برای این پاورپوینت نوشته نشده است.

اولین کسی باشید که نظری می نویسد “مقدمه ای بر مهندسی نیازمندی ها”

مقدمه ای بر مهندسی نیازمندی ها

اسلاید 1: مقدمه اي بر مهندسي نيازمنديها فصل دوم: دسته بندی نيازمنديهاتوسط: رضا گرگان محمدياستاد راهنما: آقاي دکتر احمد عبدا.. زاده

اسلاید 2: فهرست مطالبدسته بندی نیازمندیهانیازمندیهای کارکردینیازمندیهای غیرکارکردینیازمندیهای فرآینددسته بندی نیازمندیهای غیرکارکردیبررسی مدل FRUPS+روش های اندازه گیری نیازمندی( متریک، ...)جمع بندی مراجع

اسلاید 3: مقدمهنیازمندیها به طور کلی به سه دسته تقسیم میشوند:نیازمندیهای کارکردی (Functional)نیازمندیهای غیرکارکردی (Non-Functional)نیازمندیهای فرآیند (Process Requirement)

اسلاید 4: دسته بندی نیازمندیها

اسلاید 5: نیازمندی محصولنیازمندیهای کارکردیآنچه سیستم باید انجام دهد را بیان میکند. نظیر عملیات لازم در یک سیستم بانکداری نیازمندیهای غیرکارکردی ( کیفی)بیان کننده محدودیتهایی برای فضای راه حل است. نظیر کارآیی، امنیتنیازمندیهای فرآیندقیودی را تعیین میکند که برای فرآیند توسعه در نظر گرفته شده است نظیر اینکه سیستم باید براساس پلتفرم J2EE توسعه یابد. دسته بندی نیازمندیها (ادامه)

اسلاید 6: نيازمنديهاي كاركردي (Functional)نيازمنديهاي كمي و قابل اندازه گيري است که به بيان سرويسهايي که سيستم بايد ارائه دهد ميپردازد. اين نيازمنديها نحوه واکنش سيستم در برابر وروديهاي خاص، و اينکه سيستم در موقعيتهاي خاص چه کاري بايد انجام دهد را نشان ميدهد. در واقع عملياتي را که سيستم بدون در نظر گرفتن قيود فيزيکي بايد قادر به انجام آن باشد را بيان ميکند.

اسلاید 7: نيازمنديهاي كاركردي (Functional) (ادامه)اين نوع نيازمندي تعيين کننده موارد زير است:وروديهايي که سيستم بايد بپذيرد. خروجيهايي که سيستم بايد توليد کند.داده هايي که سيستم بايد ذخيره کند که ساير سيستمها ممکن است از آن استفاده کنند.محاسباتي که سيستم بايد انجام دهد زمانبندي و همگام سازي موارد فوق.

اسلاید 8: نیازمندیهای غیرکارکردی (Non-Functional) نیازمندیهای غیرکارکردی قيودي را تعریف میکنند که براي سرويسها و عملياتي که توسط سيستم ارائه ميشود اعمال ميگردد. نظير قيود زماني، قيود مربوط به فرآيند توسعه، استانداردها، و غيره را توصيف ميکند. اين نيازمنديها براي بيان موارد زير استفاده ميشود:نيازمنديهاي كيفي و نه الزاماً قابل اندازه گيري بيان كيفيت مورد انتظار از نيازهاي كاركردي بيان محدوديتها مانند محدوديتهاي زماني، مالي، استانداردها و غيره.

اسلاید 9: نیازمندیهای غیرکارکردی (ادامه)نیازمندیهای غیرکارکردی کیفیت یا خصوصیات عمومی سیستم نهایی را تعریف میکندنیازمندیهای غیرکارکردی محدودیتهایی را بر محصول مورد تولید و فرآیند تولید اعمال میکند و قیود خارجی که در محصول باید رعایت شود را تعیین میکند. مثالهایی از نیازمندیهای غیرکارکردی شامل ایمنی، امنیت، قابلیت استفاده، کارآیی، ...

اسلاید 10: دسته بندی نیازمندیهای غیرکارکردی

اسلاید 11: دسته بندی نیازمندیهای غیرکارکردی (ادامه)نيازمنديهاي محصولنيازمنديهايي كه مشخص كند محصول ارائه شده بايد بگونه اي خاص رفتار كند، بعنوان مثال سرعت اجرا، قابليت اطمينان و غيرهخصوصیات مطلوبی که سیستم یا زیرسیستمها باید داشته باشد را تعیین میکند. اغلب NFRها قیود مربوط به رفتار سیستم اجرایی را مشخص میکند. نيازمنديهاي سازماني (فرآیند)نيازمنديهايي كه نشأت گرفته از سياستها و رويه هاي بنگاه تجاري باشد مانند استانداردهاي فرايند مورد استفاده، نيازمنديهاي پياده سازي و غيره. مثال : تحویل، پیاده سازی، استانداردها.

اسلاید 12: دسته بندی نیازمندیهای غیرکارکردی (ادامه)نيازمنديهاي خارجي نيازمندي هاي كه برخاسته از فاكتورهايي خارج از سيستم و فرايند توسعه آن باشند. مانند نيازمنديهاي ارتباطی سيستم مورد نظر با يك سيستم خارجي، نيازمنديهاي قانوني و غيره. مثال ( قیود اقتصادی، قانونی، همکاری با سایر سیستمها)این نوع نیازمندی هم برای محصول و هم برای فرآیند قابل تعریف است. از محیطی که سیستم در آن توسعه مییابد مشتق میشود. این نیازمندی برمبنای موارد زیر است:اطلاعات دامنه کاربردملاحضات سازمانینیاز به سیستم برای کار با سایر سیستمهاقوانین سلامت، امنیت، حفاظت داده ها

اسلاید 13: مثالی از نیازمندیهای محصولسرویس X از سیستم مورد نظر باید 99% دردسترس باشد. سیستم Y باید 8 تراکنش در ثانیه پردازش کند. (یک نیازمندی کارآیی)برخی نیازمندیهای محصول به کد منبع سیستم مربوط میشود. مثال: سیستم باید برای کامپیوترهای مکینتاش تهیه شود. یک نیازمندی جابه جایی پذیری.

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

اسلاید 15: مثالهایی از نیازمندیهای سازمانینیازمندیهای فرآیند تعیین کننده قیود برای فرآیند توسعه سیستم است. نیازمندیهای فرآیند شامل:نیازمندیها برای استانداردهای توسعه و روشهایی که باید دنبال شود.ابزارهای CASE مورد استفادهگزارش مدیریتی که باید فراهم شود.

اسلاید 16: مثالهایی از نیازمندیهای خارجینیازمندیهای خارجی کمتر در قالب ” سیستم باید ...“ یا ”سیستم نباید ...“ بیان میشوند. بلکه به صورت توصیفی از محیطی هستند که سیستم در آن توسعه مییابد و باید مد نظر قرار بگیرد.

اسلاید 17: مدل FRUPS+يكي از روشهاي طبقه بندي نیازمندیها مدل FRUPS+ است كه شامل:Functionality (كاركرد) Reliability (قابليت اطمينان) Usability (قابليت استفاده) Performance (كارايي) Supportability (قابليت پشتيباني) “+” در FURPS+ شامل نيازمنديهاي:Design Constraints (محدوديتهاي طراحي) Implementation Requirements (نيازمنديهاي پياده سازي ) Interface Requirements (نيازمنديهاي واسط) Physical Requirements (نيازمنديهاي فيزيكي) در این مدل RUPS بیانکننده Quality Requirement و + بیان کننده Constraint requirements است.

اسلاید 18: کارکرد (Functionality)برازندگي (Suitability)كارها يا عمليات بايد رضايت بخش باشند يعني عملیات مطابق توصيفات نيازمنديها عمل كنند و يك خروجي معقول، منطقي و قابل قبول جهت برآورد يك هدف خاص مورد نظر كاربر توليد نمايد. دقت (Accuracy)عدم دقت و صحت شامل موارد زير است:نتيجه غير دقيق و ناصحيح ناشي از داده ناقصناسازگاري بين رويه هاي عملياتي واقعي و موارد تعريف شده در راهنماي عملياتي تفاوت بين نتايج واقعي و نتايج منطقي مورد انتظار در حين اجراي عمليات

اسلاید 19: کارکرد (Functionality) – (ادامه) همكاري با سيستم هاي ديگر (Interoperability)سيستم بايد قابليت همکاري با ساير سيستمها را داشته باشد. امنيت (Security)عدم وجود امنيت شامل موارد زير است: ناتواني در جلوگيري از فاش شدن داده ها و اطلاعات خروجي امنناتواني در جلوگيري از نابودي داده هاي مهمناتواني در جلوگيري از دسترسيها و عمليات غيرمجاز

اسلاید 20: قابليت اطمينان (Reliability)توانایی سیستم برای انجام عملیات مورد نیاز تحت شرایط عنوان شده است. در واقع قیودی برای رفتار زمان اجرای سیستم تعریف میکند. دسترسی پذیری (Availability): آیا سیستم در هنگام درخواست کاربر نهایی موجود است. نرخ خرابی (Failure rate): چند وقت یکبار سیستم در ارائه سرویس مورد انتظار کاربر شکست میخورد.بلوغ و كمال (Maturity): خالي بودن نرم افزار از خطا و اشكالتحمل پذيري خطا (Fault Tolerance): قابليت نرم افزار در حفظ يك سطح ثابت و مشخص از كارايي در هنگام بروز خطاهاي عملياتي. قابليت ترميم (Recoverability): قابلیت سیستم در دوباره برقرار کردن سطح مناسبی از کارآیی.

اسلاید 21: قابليت استفاده (Usability)سهولت استفاده یا یادگیری کار با سیستم توسط کاربر و مربوط به واسط کاربری و تعامل کاربر نهایی با سیستم است. قابليت درك (Understandability): آيا كاربران جديد مي توانند درك كنند كه نرم افزار مناسب هست يا خير و از چگونگي استفاده از آن در موارد خاص اطلاع دارند. قابليت يادگيري (Learnability)جذابيت (Attractiveness)عملياتي بودن (Operability)عملياتي بودن نرم افزار بر موارد زير تاکيد دارد: تناسب نرم افزار با وظيفه محولهخود توصيفگري نرم افزارقابليت كنترل نرم افزارمطابقت نرم افزار با انتظارات كاربر تحمل پذيري نرم افزار در برابر خطادستورالعمل مناسب برای کاربر نهایی، پیامهای خطای حاوی اطلاعات مفید، امکانات help، واسطهای سازگار باعث ارتقای قابلیت استفاده میشود. بحث قراردادههای واسط کاربر.

اسلاید 22: کارآیی (Performance)خصوصیات قابل کمی سازی سیستم است که سرعت عملیات سیستم را مقید میکند.انواع نیازمندیهای کارآیی: Response timeThroughputsRecovery TimeResource usage

اسلاید 23: قابلیت پشتیبانیSupportabilityمیزان سهولت تغییر سیستم بعد از نصب. TestabilityAdaptability maintainability compatibility configurabilityChangeabilityinstallabilityscalability LocalizabilityEase of installation

اسلاید 24: -+ نیازمندیهای طراحی (Design requirement)مقید کردن طراحی ( به عنوان مثال: نیاز به پایگاه داده رابطه ای)نیازمندیهای پیاده سازی ( Implementation requirement)مقید کردن کد و ساخت نرم افزار ( به عنوان مثال: استانداردهای کد نویسی، زبان پیاده سازی، تکنولوژی مورد استفاده، ...)نیازمندیهای واسطه ( Interface requirement)یک نیازمندی برای تعامل با موارد خارجی.نیازمندیهای فیزیکی ( Physical requirement)قیود فیزیکی که برای سخت افزار مورد استفاده در سیستم تعیین میشود. مثال اندازه، شکل، وزن.

اسلاید 25: دشواریهای نیازمندیهای غیرکارکردیبیان NFRها دشوار است. برخی دلایل این مسئله:قیود معین به راهکار طراحی مرتبط است که در مرحله نیازمندیها شناخته شده نیست. قیود معین بسیار ذهنی هستند که فقط از طریق ارزیابیهای تجربی پیچیده قابل تعیین هستند. نیازمندیهای غیروظیفه ای به یک یا چند نیازمندی وظیفه ای مرتبط هستند. نیازمندهای غیروظیفه ای ممکن است تناقض یا تضاد داشته باشند. هیچ قانون سراسری و راهنمایی وجود ندارد که تعیین کند چه زمانی نیازمندیهای غیرکارکردی به شکل بهینه برآورده شده است.

اسلاید 26: اندازه گیری نیازمندیهاهدف از انجام اندازه گيري براي : شناساييارزيابي پيش بيني توسعه و بهبودامكان دستيابي به اهداف فوق با اندازه گيري برآورده مي‌شود.

اسلاید 27: هدف از انجام اندازه گيري (ادامه)ارزيابي وضعيت پروژه جاريردگيري ريسك‌هاي بالقوه كشف موضوعات مشكل زا قبل از اينكه دچار وضعيت بحراني شوند. بهبود فرايند كاري يا وظايفارزيابي توانايي تيم نرم افزار به منظور كنترل كيفيت محصولات كاري نرم افزار

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

اسلاید 29: مقیاس، متریک، شاخصمقیاس (Measure): یک نشانه کمی از مقدار، میزان، بعد، ظرفیت، یا اندازه یک خصوصیت از یک محصول یا فرآیند را فراهم میکند.متریک (Metric): یک رابطه کمی بین مقیاسها است که با توجه به نیاز و شرایط مسئله تعریف میشود.شاخص (indicator) : یک متریک یا ترکیبی از متریکها است که بینش خاصی در مورد فرآیند، پروژه، یا محصول نرم افزاری فراهم میکند.

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

اسلاید 31: متریک هایی برای کیفیت نیازمندیهافرض کنید nr = nf + nnf و داشته باشیم:nr : تعداد کل نیازمندیها nf : تعداد نیازمندیهای کارکردیnnf : تعداد نیازمندیهای غیرکارکردی

اسلاید 32: متریک هایی برای کیفیت نیازمندیها (ادامه)عدم ابهام (Specificity)Q = nui/nrnui : تعداد نیازمندیهایی که همه مرورکنندها تفسیر یکسانی نسبت به آن دارند. کامل بودن (Completeness)Q = nu/(ni ns)nu : تعداد نیازمندهای کارکردی یکتا ni : تعداد ورودیهای تعیین شدهns : تعداد وضعیتهای تعیین شده

اسلاید 33: متریک هایی برای کیفیت توصیف نیازمندیهاQ3= nc/ [nc +nnv]nc : تعداد نیازمندیهایی که اعتبارسنجی شده است.nnv : تعداد نیازمندیهایی که تا کنون اعتبارسنجی نشده است.

اسلاید 34: مراجعThe ISO/IEC 9126 software product quality standards (Jung et al. 2004)Software Engineering (8th edition), Summervile.Software Engineering: A Practitioners Approach (6th edition), Pressma

15,900 تومان

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

در صورت عدم رضایت سفارش برگشت و وجه به حساب شما برگشت داده خواهد شد.

در صورت نیاز با شماره 09353405883 در واتساپ، ایتا و روبیکا تماس بگیرید.

افزودن به سبد خرید