عنوان پایاننامه
آزمون مبتنی بر مدل خط محصول نرم افزار
- رشته تحصیلی
- مهندسی کامپیوتر -نرم افزار
- مقطع تحصیلی
- کارشناسی ارشد
- محل دفاع
- کتابخانه مرکزی پردیس 2 فنی شماره ثبت: E 2222;کتابخانه مرکزی -تالار اطلاع رسانی شماره ثبت: 57656
- تاریخ دفاع
- ۲۵ مرداد ۱۳۹۱
- دانشجو
- آیرین غفاری
- استاد راهنما
- رامتین خسروی
- چکیده
- امروزه در صنایع مختلف، نیازهای گوناگون مشتریان منجر به سفارشی سازی انبوه شده است. فراهم آوردن محصولات سفارشی با هزینه ی معقول، صنعتگران را به سمت مهندسی خط محصول سوق می دهد. مهندسی خط محصول، هزینه های توسعه و زمان ارائه محصول به بازار را کاهش می دهد و موجب افزایش کیفیت محصول نسبت به توسعه ی تک سیستم می شود. آزمون خط محصول، به علت تنوع زیاد محصولات، امری پیچیده و هزینه بر می باشد. همچنین به علت کاهش هزینه ی توسعه ی هر محصول، سهم هزینه ی آزمون نسبت به کل هزینه در مهندسی خط محصول، افزایش یافته و مسئله ی آزمون را بحرانی تر کرده است. با افزایش پیچیدگی نرم افزارها در سال های اخیر، آزمون مبتنی بر مدل در صنعت و پژوهش مورد توجه بیشتری قرار گرفته است. در آزمون مبتنی بر مدل، موارد آزمون بطور خودکار برای بررسی درستی پیاده سازی یک سیستم با توجه به مدلی که رفتار مورد انتظار آن سیستم را توصیف می کند، تولید می شوند. در این پژوهش یک روش آزمون مبتنی بر مدل برای آزمون کارکردی خط محصول نرم افزارهای واکنشی ارئه می شود. سیستم های واکنشی از طریق رویدادهای قابل مشاهده، با محیط بیرون در تعامل هستند و رفتار خاتمه نیافتنی دارند. در روش پیشنهادی، مدل مشخصات سیستم به وسیله ی گسترشی از ماشین حالت متناهی توصیف می شود. به عبارت دیگر یک روش صوری برای وارد کردن تغییرپذیری در ماشین حالت متناهی ارائه شده است. با ایجاد تغییرات لازم و اعمال مفهوم استفاده ی مجدد به روش آزمون W، آن را برای آزمون خط محصول ویرایش می کنیم. آزمایش های انجام شده نشان داده است که روش بدست آمده، زمان تولید موارد آزمون مورد نیاز را نسبت به روش اصلی کاهش می دهد.
- Abstract
- Various customers’ needs in different industries, has caused the use of mass customization. The aim of producing customized products within reasonable price, led the industrialists to product line engineering. Product line engineering enables organizations to develop products with less effort, in shorter time and within higher quality, compared to single-system engineering. Testing of a software product line is a complex and costly task, since the variety of products derived from the product line is huge. Moreover, since the share of testing costs increases as the development costs for each product decreases, the issue of testing becomes more crucial in software product line engineering. Due to the increasing complexity of software systems, model-based testing has recently attracted attentions in both fields of academy and industry. In model-based testing, test cases are automatically generated to test the compliance of implementation under test with a model describing the required behavior of the implementation. This research presents a model-based method for functional testing of reactive software product lines. Reactive systems, interact with their environment through visible events and also have a non-terminating behavior. System specification in the proposed method, is described by an extension of the finite state machine. In fact, a formal method is presented for applying variability to the finite state machine. Then one of the efficient testing methods of finite state machines is chosen and refined to be used for product line testing. The obtained method, reduces the time of generating test cases by reusing them.