نام پژوهشگر: امین رضائی

روشی جدید جهت تولید بهینه ی موارد آزمون بر اساس ماشین حالت uml
thesis وزارت علوم، تحقیقات و فناوری - دانشگاه اصفهان - دانشکده کامپیوتر و فناوری اطلاعات 1392
  امین رضائی   بهمن زمانی

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