تحقیق آزمایش نرم افزار و متریک های تست نرم افزار

پیشینه تحقیق و پایان نامه و پروژه دانشجویی

پیشینه تحقیق آزمایش نرم افزار و متریک های تست نرم افزار دارای ۶۴ صفحه می باشد فایل پیشینه تحقیق به صورت ورد  word و قابل ویرایش می باشد. بلافاصله بعد از پرداخت و خرید لینک دنلود فایل نمایش داده می شود و قادر خواهید بود  آن را دانلود و دریافت نمایید . ضمناً لینک دانلود فایل همان لحظه به آدرس ایمیل ثبت شده شما ارسال می گردد.

فهرست مطالب

مقدمه    ۶
۱-۱ – یک شیوه استراتژیک برای آزمایش نرم افزار    ۷
۱-۲- اصول آزمایش نرم افزار    ۸
۱-۳- برخی از انواع سطوح تست نرم افزار    ۹
۱-۴- آشنایی با شبکه‌های بیزی    ۱۱
۱-۴-۱-  مقدمه ای بر شبکه‌های بیزی    ۱۲
۱-۵- اندازه گیری و متریک    ۱۳
۱-۷- چالش موجود در تست رگرسیون    ۱۷
۱-۸- راه حل برای چالش موجود در تست رگرسیون    ۱۸
۲-۱-  پیشینه تحقیق    ۱۹
۲-۱-۱-  کارهای مرتبط    ۱۹
۲-۱-۲- بررسی مشکلات موجود در روش‌های مطالعه شده قبلی    ۲۲
– تست نرم افزار ۲-۲    ۲۳
۲-۳- صحت و اعتبار سنجی    ۲۴
۲-۴- اهداف آزمایش    ۲۴
۲-۵- اصول آزمایش    ۲۵
۲-۶-  قانون  Pareto در فرآیند تست نرم افزار    ۲۵
۲-۷-  چند نمونه از انواع تست    ۲۶
۲-۸-  مراحل انجام تست    ۲۶
۲-۹-  ویژگیهای یک نرم‌افزار تست‌ پذیر    ۲۷
۲-۱۰-  ویژگی‌های یک تست خوب    ۲۸
۲-۱۱- طراحی نمونه‌های آزمایش    ۲۹
۲-۱۱-۱  تست جعبه سیاه    ۳۰
۲-۱۱-۲  تست جعبه سفید     ۳۰
۲-۱۱-۳  آزمایش ساختارکنترل    ۳۰
۲-۱۱-۴  آزمایش واحد    ۳۰
۲-۱۱- ۵ خطاهای متداول محاسبه که اغلب مشاهده می‌ شوند    ۳۱
۲-۱۲-  آزمایش یکپارچه سازی    ۳۱
۲-۱۳-  آزمایش رگرسیون  (Regression Testing)    ۳۲
۲-۱۴-  متدولوژی های مربوط به تست رگرسیون    ۳۴
۲-۱۴-۱-  اجرای مجدد همه‌ی تست ها (Retest all)    ۳۴
۲-۱۴-۲-  انتخاب تست رگرسیون (Regression Test Selection)    ۳۴
۲-۱۴-۳-  کاهش مجموعه تست (Test Suite Reduction)    ۳۴
۲-۱۴-۴-  اولویت بندی موارد تست (Test Case Prioritization)    ۳۵
۲-۱۵-  اولویت بندی    ۳۵
۲-۱۵-۱-  مقدمه ای بر اولویت بندی    ۳۵
۲-۱۵-۲-  معیارهای اولویت دهی    ۳۷
۲-۱۵-۳-  اولویت بندی موارد تست    ۳۷
۲-۱۶-  متریک    ۳۷
۲-۱۶-۱-  مقدمه ای برای متریک    ۳۷
۲-۱۷-  متریک های تست نرم افزار    ۳۸
۲-۱۷-۱-  خواص متریک ها در شرایط ایده آل    ۳۸
۲-۱۸-  معیار و متریک در تست نرم افزار    ۴۰
۲-۱۸-۱-  مراحل انجام کار در فرایند اندازه گیری    ۴۱
۲-۱۹-  متریک های آزمون    ۴۱
۲-۲۰-  مزایای استفاده از متریک ها    ۴۲
۲-۲۱-  شبکه‌های بیزی    ۴۲
۲-۲۱-۱- استنتاج با استفاده از توزیع توام کامل    ۴۲
۲-۲۱-۲-  مشکلات استنتاج با توزیع توام کامل و راه ‌حل آنها    ۴۵
۲-۲۱-۳-  مثالی از شبکه‌های بیزی    ۴۵
۲-۲۲-  مفاهیم شبکه‌های بیزی    ۴۷
۲-۲۲-۱-   نمایش توزیع توام کامل    ۴۷
۲-۲۲-۲-  رابطه‌ های استقلال شرطی در شبکه‌های بیزی    ۴۹
۲-۲۲-۳-   نمایش کارآمد توزیع‌های شرطی    ۵۱
۲-۲۳-  یادگیری شبکه‌ های بیزی    ۵۱
۲-۲۴-   استنتاج دقیق در شبکه‌ های بیزی    ۵۲
۲-۲۵-  استنتاج بوسیله محاسبه تک ‌تک عناصر احتمالی    ۵۲
۲-۲۶-  الگوریتم حذف متغیر    ۵۴
۲-۲۷-  استنتاج تقریبی در شبکه‌های بیزی    ۵۵
۲-۲۸-  روش‌های نمونه‌گیری مستقیم    ۵۵
۲-۲۸-۱-  نمونه‌گیری با رد کردن    ۵۶
۲-۲۸-۲-   نمونه‌گیری وزن‌دار    ۵۷
۲-۲۸-۳-  نمونه‌گیری زنجیره مارکوفی    ۵۸
شکل ۸-۲ : الگوریتم نمونه‌گیری وزن‌دار[۲۳]    ۵۹
۲-۲۸-۴-  جمع‌ بندی شبکه‌های بیزی    ۵۹
۲-۲۹-  تحولات انجام شده تا کنون    ۶۰
جدول شماره۲-۲ : سیر تحولات در مورد اولویت بندی موارد تست    ۶۰
۱- منابع و ماخذ    ۶۲

منابع

[۱] Ralph Brettschneider(Motorola). Is your software ready for release? IEEE Software, July 1989.

[۲]H. Do, S. Mirarab, L. Tahvildari, and G. Rothermel, “The effects of time constraints on test case prioritization: A series of controlled experiments,” Software Engineering, IEEE Transactions on, vol. 36, pp. 593-617, 2010.
[۳] R. Torkar، N. M. Awan، A. K. Alvi، and W. Afzal، “Predicting software test effort in iterative development using a dynamic Bayesian network،” in 21st IEEE International Symposium on Software Reliability Engineering، ۲۰۱۰٫

[۴] Cowell. R. 1999، “Introduction to Inference for Bayesian Networks”. In Michael I. Jordan، editor،”Learning in Graphical Models”، pages 9–26.

[۵] Alexey  G.  Malishevsky,  Joseph  R.  Ruthruff, Gregg  Rothermel,  Sebastian  Elbaum,  Cost- cognizant Test Case Prioritization, 2006

[۶] S. Kim and J. Baik، “An effective fault aware test case prioritization by incorporating a fault localization technique،” in Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement، ۲۰۱۰، p. 5.

[۷] W. Jun، Z. Yan، and J. Chen، “Test Case Prioritization Technique Based on Genetic Algorithm،” in Internet Computing & Information Services (ICICIS)، ۲۰۱۱ International Conference on، ۲۰۱۱، pp. 173-175.

[۸]S. Fine and A. Ziv, “Coverage directed test generation for functional verification using bayesian networks,” in Design Automation Conference, 2003. Proceedings, 2003, pp. 286-291.

[۹]H. Ziv and D. J. Richardson, “Constructing Bayesian-network models of software testing and maintenance uncertainties,” in Software Maintenance, 1997. Proceedings., International Conference on, 1997, pp. 100-109.

[۱۰] G.  Rothermel,  R.H.  Untch,  C.  Chu,  and  M.J.Harrold,  “Prioritizing  Test  Cases  for Regression  Testing,”  IEEE  Trans.  Software Eng., vol.  ۲۷, no. 10, pp. 929-948, Oct. 2001.

[۱۱] B. Suri and S. Singhal، “Analyzing test case selection & prioritization using ACO،” ACM SIGSOFT Software Engineering Notes، vol. 36، pp. 1-5، ۲۰۱۱٫
[۱۲] S. Mohanty, A. A. Acharya, and D. P. Mohapatra, “A survey on model based test case prioritization,” International Journal of Computer Science and Information Technologies, vol. 2, pp. 1002-1040, 2011.

[۱۳] C. Titus. B, G. Gheorghio, J.Huggins, “An Introduction to testing web application with twill and selenium” O’Reilly, June 1,2007

مقدمه

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

۱-۱ – یک شیوه استراتژیک برای آزمایش نرم افزار

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

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

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

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

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

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

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

80,000 ریال – خرید

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

مطالب پیشنهادی: برای ثبت نظر خود کلیک کنید ...

به راهنمایی نیاز دارید؟ کلیک کنید

جستجو پیشرفته

دسته‌ها

آخرین بروز رسانی

    شنبه, ۸ اردیبهشت , ۱۴۰۳
اولین پایگاه اینترنتی اشتراک و فروش فایلهای دیجیتال ایران
wpdesign Group طراحی و پشتیبانی سایت توسط digitaliran.ir صورت گرفته است
تمامی حقوق برایpayandaneshjo.irمحفوظ می باشد.