Papers by Mahsa Panahandeh
Automated Software Engineering
To identify defects and security risks in many real-world applications structured test cases, inc... more To identify defects and security risks in many real-world applications structured test cases, including test cases structured as trees are required. A simple approach is to generate random trees as test cases [random testing (RT)]; however, the RT approach is not very effective. In this work, we investigate and extend the black-box tree test case generation approaches. We introduce a novel model to produce superior test case generation based around the idea of measuring the diversity of a tree test set. This initial approach is further extended by adding a second model which describes the distribution of tree sizes. Both models are realized via a multi-objective optimization algorithm. An empirical study is performed with four real-world programs indicating that the generated tree test cases outperform test cases generated by other methods.

International Journal of Information Technologies and Systems Approach, 2017
Transformation patterns optimize transformations and improve their internal structure. This paper... more Transformation patterns optimize transformations and improve their internal structure. This paper presents an automatic method for pattern proposition in transformation life cycles. Our approach combines the transformation engineering by the idea of transformation patterns and proposes appropriate patterns in the design and implementation phases of transformation life cycle. We evaluate the impact of proposed patterns on generated transformations based on several metrics, automatically. The proposed patterns in the design phase are based on the structure of transformation, and implementation patterns are proposed according to the result of the evaluation. Our method is presented as a semi-automatic process for using the transformation patterns in transformation life cycles. The results of applying suggested patterns include decreasing the complexity, memory usage, execution time, as well as increasing the quality, efficiency, and modularity.

Software and Systems Modeling
Model transformation plays an important role in developing software systems using the Model-Drive... more Model transformation plays an important role in developing software systems using the Model-Driven Engineering paradigm. Examples of applications of model transformation include forward engineering, reverse engineering of code into models, and refactoring. Poor-quality model transformation code is costly and hard to maintain. There is a need to develop techniques and tools that can support transformation engineers in designing high-quality model transformations. Objective: The goal of this paper is to present a process, called MUPPIT (Method for Using Proper Patterns in Model Transformations), which can be used by transformation engineers to improve the quality of model transformations by detecting anti-patterns in the transformations and automatically applying pattern solutions. Method: MUPPIT consists of four phases: (1) identifying a transformation antipattern, (2) proposing a pattern-solution, (3) applying the pattern-solution, and (4) evaluating the transformation model. MUPPIT takes a transformation design model (TDM), which is a representation of the given transformation, to search for the presence of an anti-pattern of interest. If found, MUPPIT proposes a pat
Automated Software Engineering, 2018
To identify defects and security risks in many real-world applications structured test cases, inc... more To identify defects and security risks in many real-world applications structured test cases, including test cases structured as trees are required. A simple approach is to generate random trees as test cases (RT (Random Testing)); however, the RT approach is not very effective. In this work, we investigate and extend the black-box tree test case generation approaches. We introduce a novel model to produce superior test case generation based around the idea of measuring the diversity of a tree test set. This initial approach is further extended by adding a second model which describes the distribution of tree sizes. Both models are realized via a multi-objective optimization algorithm. An empirical study is performed with four real-world programs indicating that the generated tree test cases outperform test cases generated by other methods.

Software and System Modeling 2021, 2021
Context: Model transformation plays an important role in developing software systems using the Mo... more Context: Model transformation plays an important role in developing software systems using the Model-Driven Engineering paradigm. Examples of applications of model transformation include forward engineering, reverse engineering of code into models, and refactoring. Poor-quality model transformation code is costly and hard to maintain. There is a need to develop techniques and tools that can support transformation engineers in designing high-quality model transformations. Objective: The goal of this paper is to present a process, called MUPPIT (Method for Using Proper Patterns in Model Transformations), which can be used by transformation engineers to improve the quality of model transformations by detecting anti-patterns in the transformations and automatically applying pattern solutions. Method: MUPPIT consists of four phases: (1) identifying a transformation anti-pattern, (2) proposing a pattern-solution, (3) applying the pattern-solution, and (4) evaluating the transformation model. MUPPIT takes a transformation design model (TDM), which is a representation of the given transformation, to search for the presence of an anti-pattern of interest. If found, MUPPIT proposes a pat-Mahsa Panahandeh 2 Mahsa Panahandeh et al. tern solution from a catalogue of patterns to the transformation engineer. The application of the pattern solution results in the restructuring of the TDM. While MUPPIT, as a process, is independent of any transformation language and transformation engineering framework, we have implemented an instance of it as a tool using transML and MeTAGeM, which support exogenous transformations using rule-based transformation and OCL based languages such as ATL and ETL. Results:We evaluate MUPPIT through a number of case studies in which we show how MUPPIT can detect four anti-patterns and propose the corresponding pattern solutions. We also evaluate MUPPIT by collecting a number of metrics to assess the quality of the resulting transformations. The results show that MUPPIT optimizes the transformations by improving reusability, modularity, simplicity, and maintainability, as well as decreasing the complexity. Conclusion: MUPPIT can help transformation engineers to produce high-quality transformations using a pattern-based approach. An immediate future direction would be to experiment with more anti-patterns and pattern solutions. Moreover, we need to implement MUPPIT using other transformation engineering frameworks .

A pattern is an idea that has been useful in one practical context and will probably be useful in... more A pattern is an idea that has been useful in one practical context and will probably be useful in others (Fowler, 1997). Transformation patterns identify the correct and reusable solution in transformation implementation and optimize the transformations, too. Similar to patterns such as design and analysis patterns in software engineering, transformation patterns can be used in transformation engineering to improve the quality and efficiency of transformations. Transformation engineering means applying the sound principles of engineering in the implementation of a model transformation (Guerra et al. , 2013). Several life cycles are presented in recent research (Bézivin), for building the transformation based on engineering methods. These life cycles, that two of the best ones (Andrea Bollati et al., 2013; Guerra et al., 2013) are explained in this paper, create a transformation using a methodology that includes several steps, spanning from the specification of transformation to the implementation. However, we can use design, architectural, or specification patterns that are called transformation patterns in different phases of these life cycles, in the same way the software patterns use in the life cycles of software engineering. One important part in using a pattern is recognition of the appropriate pattern based on the structure of the problem. The main goal of this paper is automatic proposition of applicable patterns in the transformation life cycle. The transformation patterns presented in the past (e.g., (Bezivin et al., 2003) or (Iacob et al., 2008)), have introduced only the specification of several patterns. Some of these patterns are formally described in a few papers, but these are not usable in an automatic manner. In fact, developers must use them manually, based on their understanding of the pattern. In addition, these presented patterns are not applied to transformation life cycles; they are just related to one phase of the transformation implementation, e.g., transformation specification or transformation architecture. In this paper, we present a practical method for automatic pattern proposition in transformation life cycle. The method automatically suggests proper patterns in two phases, i.e., design and implementation phases, of transformation life cycle to the developer of transformation. Proposition of design patterns is based on the structure of transformations while implementation patterns are conducted from the result of applying the other patterns. At each stage, in addition to the proposing the implementation patterns, evaluation of applying suggested patterns can be shown to the developer. As it is demonstrated in the evaluation section, this evaluation is measured based on several metrics, automatically. Evaluation of our method has shown that, for using the patterns in transformation life cycles, it improves the quality of transformation specification and design, modularity, simplicity of transformation, efficiency, as well as decreasing redundancy, duplication, complexity, execution time and memory usage (in many cases). This paper is organized as follows. Next section is dedicated to the related work. Then we explain about the necessity of using the transformation life cycle and introduce two transformation life cycles that are the most complete life cycles which are used in this paper. Subsequently

مشهد فردوسی دانشگاه -21 الی 21 اسفند 2131 کنفرانس دبیر دکتر نقیب محمود زاده... more مشهد فردوسی دانشگاه -21 الی 21 اسفند 2131 کنفرانس دبیر دکتر نقیب محمود زاده مشهد فردوسی دانشگاه علمی کمیته دبیر دکتر یغمائی محمدحسین مقدم مشهد فردوسی دانشگاه برگزارکنندگان دانشگ مشهد فردوسی اه -انجمن کامپیوتر ایران ردیف عنوان نام خانوادگی نام دانشگاه 2 دکتر سعید ابریشمی مشهد فردوسی دانشگاه 1 دکتر محمدرضا توتونچی اکبرزاده مشهد فردوسی دانشگاه 1 دکتر محمدکاظم اکبری امیرکبیر صنعتی دانشگاه 1 دکتر مهدی آبادی مدرس تربیت دانشگاه 5 دکتر علی محمد آبام شریف صنعتی دانشگاه 6 دکتر مرتضی آنالویی ایران صنعت و علم دانشگاه 3 دکتر مرتضی بابامیر دانشگاه کاشان 8 دکتر ابراهیم باقری کانادا تورنتو رایرسون دانشگاه 3 دکتر میرمحسن پدرام خوارزمی دانشگاه 21 دکتر بهروز ترک الدانی اصفهان دانشگاه 22 دکتر محمد تشنه لب خواجه صنعتی دانشگاه طوسی نصیر 21 دکتر مهرداد جاللی مشهد واحد اسالمی آزاد دانشگاه 21 دکتر علی جه انیان بهشتی شهید دانشگاه 21 دکتر سیدامین حسینی سنو مشهد فردوسی دانشگاه 25 دکتر حسین دلداری مشهد فردوسی دانشگاه 26 دکتر مهدی دهقان امیرکبیر صنعتی دانشگاه 23 دکتر عباس رسول زادگان مشهد فردوسی دانشگاه 28 دکتر کامران زمانی فر اصفهان دانشگاه 23 دکتر محسن شریفی ایران صنعت و علم دانشگاه 11 دکتر مرتضی صاحب الزمانی امیرکبیر صنعتی دانشگاه 21 ردیف عنوان نام خانوادگی نام دانشگاه 12 دکتر بابک صادقیان امیرکبیر صنعتی دانشگاه 11 دکتر مسعود صبایی امیرکبیر صنعتی دانشگاه 11 دکتر سیدمصطفی صفوی امیرکبیر صنعتی دانشگاه 11 دکتر حمید ضرابی زاده صنعتی دانشگاه شریف 15 دکتر احمد عبداله بارفروش زاده امیرکبیر صنعتی دانشگاه 16 دکتر محمد ازگمی عبدالهی ایران صنعت و علم دانشگاه 13 دکتر محمود فتحی ایران صنعت و علم دانشگاه 18 دکتر عباس بافقی قائمی مشهد فردوسی دانشگاه 13 دکتر محمد قدسی شریف صنعتی دانشگاه 11 دکتر مح سن کاهانی مشهد فردوسی دانشگاه 12 دکتر مازیار گودرزی شریف صنعتی دانشگاه 11 دکتر محمدباقر منهاج امیرکبیر صنعتی دانشگاه 11 دکتر فرهاد مهدی پور ژاپن کیوشو دانشگاه 11 دکتر سیدحسن میریان شریف صنعتی دانشگاه 15 دکتر بابک نجاراعرابی تهران دانشگاه 16 دکتر محمو د نقیب زاده مشهد فردوسی دانشگاه 13 دکتر حمید نوری مشهد فردوسی دانشگاه 18 دکتر مصطفی بایگی نوری مشهد فردوسی دانشگاه 13 دکتر محمودرضا هاشمی تهران دانشگاه 11 دکتر شیوا وفادار گلستان دانشگاه 12 دکتر محمدحسین مقدم یغمایی مشهد فردوسی دانشگاه 22 کمیته داوران ایران کامپیوتر انجمن ساالنه ملی کنفرانس بیستمین ردیف خانوادگی نام و نام دانشگاه 2 آبادی مهدی مدرس تربیت دانشگاه 1 آبام محمدعلی شریف صنعتی دانشگاه 1 آسایش مهرزاد خرد عالی آموزش موسسه 1 آصف کیوان وکیلیان پور تهران دانشگاه 5 بنادکو آقایی مهدی کی مشهد فردوسی دانشگاه 6 شیخ آل اهلل روح نور پیام دانشگاه 3 آنالویی مرتضی ایران صنعت و علم دانشگاه 8 آیت سعید نور پیام دانشگاه 3 ابراهیم حسین کومله پور کاشان دانشگاه 21 آتانی ابراهیمی رضا گیالن دانشگاه 22 ابریشمی سعید مشهد فردوسی دانشگاه 21 سیدابراه ابطحی یم شریف صنعتی دانشگاه 21 احسانی سعید سیدمحمد اصفهان دانشگاه 21 کمرپشتی احمدی مهرداد جویبار واحد اسالمی آزاد دانشگاه 25 احمدی علی طوسی نصیرالدین خواجه دانشگاه 26 آبکناری احمدی فاطمه رشت مرکز نور پیام دانشگاه 23 رمکی احمدیان علی مشه فردوسی دانشگاه د 28 ادیبی پیمان اصفهان دانشگاه 23 نیا ادیب اهلل فضل یزد دانشگاه 11 اردشیر غالمرضا بابل نوشیروانی صنعتی دانشگاه 12 ارسطویی نرگس امیرکبیر صنعتی دانشگاه 11 استادزاده سیدآرش 11 اسدی محسن 11 اسکندری زهرا مشهد فردوسی دانشگاه ردیف خانوادگی نام و نام دانشگاه 15 اصدقی فائزه ش دانشگاه اهرود 16 روحانی افخمی حسین مشهد فردوسی دانشگاه 13 اقوامی سارا تهران دانشگاه 18 توتونچی اکبرزاده محمدرضا مشهد فردوسی دانشگاه 13 فتیدهی اکبری محمدکاظم امیرکبیر صنعتی دانشگاه 11 زاده اکبری غالمرضا اهواز چمران شهید دانشگاه 12 اکبری حسین پور صنعتی دانشگاه شریف 11 اهلل محمد بخش زابل دانشگاه 11 گنج الماس فرشاد امیرکبیر صنعتی دانشگاه 11 امین هاله طوسی مشهد فردوسی دانشگاه 15 امین محمود طوسی سبزواری حکیم دانشگاه 16 امینی محسن کلرادو دانشگاه 13 داور امین حمیدرضا امیرکبیر صنعتی دانشگاه 18 ایزدخواه حبیب دان تبریز شگاه 13 بابامیر مرتضی کاشان دانشگاه 11 باحکمت ملیحه مشهد فردوسی دانشگاه 12 باغبانی فهیمه مشهد فردوسی دانشگاه 11 باقری ابراهیم کانادا تورنتو رایرسون دانشگاه 11 باقری نصور رجایی شهید دانشگاه 11 بختیاری بهزاد مشهد فردوسی دانشگاه 15 سرا بخشی بهادر سکاترود امیرکبیر صنعتی دانشگاه 16 شکوهی برادران شهریار ایران صنعت و علم دانشگاه 13 برهانی مصطفی مدرس تربیت دانشگاه 18 بستام مصطفی امیرکبیر صنعتی دانشگاه 13 بشری مهدی 51 بشری مسعود مشهد فردوسی دانشگاه 52 نیک بلوچزهی محمد ایران صنعت و علم دانشگاه ردیف خانوادگی نام و نام دانشگاه 51 بنائی توکا مشهد درمانی خدمات و پزشکی علوم دانشگاه 51 بنائی فاطمه مشهد فردوسی دانشگاه 51 بویر عسگرعلی آذربایجان شهیدمدنی دانشگاه 55 علی شیرازی بهشتی اصغر ایران صنعت و علم دانشگاه 56 بهکمال بهشید مشهد فردوسی دانشگاه 53 بهکمال بهاره مشهد فردوسی دانشگاه 58 بهلولی علی اصفهان دانشگاه 53 بیگی حمید شریف صنعتی دانشگاه 61 پاسبان پیمان دوبلین شهر دانشگاه 62 پالهنگ مازیار اصفهان صنعتی دانشگاه 61 پایدار صمد مشهد فردوسی دانشگاه 61 پدرام میرمحسن معلم تربیت دانشگاه 61 پدرام حسین امیرکبیر صنعتی دانشگاه 65 سید پیغمبر پور بابک امیرکبیر صنعتی دانشگاه 66 پوررضا حمیدرضا مشهد فردوسی دانشگاه 63 پورمحی مریم آبادی کرمان باهنر شهید دانشگاه 68 پورمظفری سعادت امیرکبیر صنعتی دانشگاه 63 پورمعصومی آصف مشهد فردوسی دانشگاه 31 پهلوان بهاره زاده علو رسانی اطالع ای منطقه مرکز فناوری و م 32 پیرمرادی سعید 31 پیروی فرزاد یزد دانشگاه 31 الدانی ترک بهروز اصفهان دانشگاه 31 آذر ترکمنی فرح بهشتی شهید دانشگاه 35 تشتریان فرزاد مشهد فردوسی دانشگاه 36 لب تشنه محمد خواجه صنعتی دانشگاه طوسی نصیر ردیف خانوادگی نام و نام دانشگاه 33 تفضلی طال امیرکبیر صنعتی دانشگاه 38 تقی علیرضا زاده ادیبان عالی آموزش مؤسسه 33 جانوسپاه صفورا امیرکبیر صنعتی دانشگاه 81 جاللی مهرداد مشهد واحد اسالمی آزاد دانشگاه 82 جهانیان علی بهشتی شهید دانشگاه 81 بگلو حاجی محمد مشهد فردوسی دانشگاه 81 حججی فضیلت اصفهان دانشگاه 81 حسینی سیدعابد دا مشهد فردوسی نشگاه 85 حسینی مجتبی اشتر مالک صنعتی دانشگاه 86 سنو حسینی امین سید مشهد فردوسی دانشگاه 83 حمیدزاده جواد سجاد صنعتی دانشگاه 88 شهری حیدریان حمید مریلند دانشگاه 83 حیدرنوری عباس شریف صنعتی دانشگاه 31 درح خادمی مرتضی مشهد فردوسی دانشگاه 32 ده خانی مهدی نویی مشهد فردوسی دانشگاه 31 ختن حسن لو بوعلی دانشگاه همدان سینا 31 خجسته غزاله 31 رشخواری خسروی حسین مشهد فردوسی دانشگاه 35 فارمد خسروی مسعود مشهد فردوسی دانشگاه 36 خلیلیان علیرضا اصفهان دانشگاه 33 خیامی رئوف شیراز صنعتی دانشگاه 38 شر پژوه دانش وین شریف صنعتی دانشگاه 33 دانشپور نگین 211 فراهانی درمنکی الهام شریف صنعتی دانشگاه 212 درهمی ولی یزد دانشگاه 211 دلدار فاطمه مدرس تربیت دانشگاه ردیف خانوادگی نام و نام دانشگاه 211 دلداری حسین مشهد فردوسی دانشگاه 211 دلیری محمدرضا ایران صنعت و علم دانشگاه 215 دهقا مطهره ن 216 دهقانی تکتم مشهد فردوسی دانشگاه 213 دی محمود پیر پارسیان عالی آموزش موسسه 218 ذبیحی داوود زاده مشهد فردوسی دانشگاه 213 راحتی سعید مشهد واحد اسالمی آزاد دانشگاه 221 راستی مهدی امیرکبیر صنعتی دانشگاه 222 مشهدی رجبی حبیب مشهد فردوسی دانشگاه 221 رحمانی امیرمسعود و علوم واحد اسالمی آزاد دانشگاه 221 رحمتی محمد امیرکبیر صنعتی دانشگاه 221 رستمی حبیب بوشهر فارس خلیج دانشگاه 225 رسولزادگان عباس مشهد فردوسی دانشگاه 226 نژاد رشادی محمدرضا اصفهان دانشگاه 223 رضائیان امین مشهد فردوسی دانشگاه 228 عباس رضایی علی مشهد مرکز نور پیام دانشگاه 223 صالح رضایی راضیه مشهد فردوسی دانشگاه 211 رضایی محمد مشهد فردوسی دانشگاه 212 رضوانیان علیرضا امیرکبیر صنعتی دانشگاه 211 رمضانی امین مدرس تربیت دانشگاه 211 روحانی مجتبی گناباد واحد اسالمی آزاد دانشگاه 211 علیرضا روحانی منش نیشابور دانشگاه 215 روحانی شاهین دانش پژوهشگاه بنیادی های 216 رهگذر مسعود تهران دانشگاه 213 رهنما علی امیرکبیر صنعتی دانشگاه 218 زارع محمدرضا یزد دانشگاه ردیف خانوادگی نام و نام دانشگاه 213 زارع هدی مشهد درمانی خدمات و پزشکی علوم دانشگاه 211 زارعی علیرضا ش صنعتی دانشگاه ریف 212 زرین فتانه کالم مشهد فردوسی دانشگاه 211 زمانی کامران فر اصفهان دانشگاه 211 زنجیره یوسف امیرکبیر صنعتی دانشگاه 211 ساجدی هدیه تهران دانشگاه 215 حقیقی سالخورده مهدی محمد سجاد صنعتی دانشگاه 216 سبزه مصطفی کار مشهد فردوسی دانشگاه 213 سپهی رضا 218 سعادت حمید فر مشهد فردوسی دانشگاه 213 سعیدی سعید مدرس تربیت دانشگاه 211 سلطانی آزاده بجنورد دانشگاه 212 فالح سلیمان مهران امیرکبیر صنعتی دانشگاه 211 سوادی عبدالرضا مشهد فردوسی دانشگاه 211 سودخواه مهدی مشهد فردوسی دانشگاه...

csicc2014 (Computer Society of Iran)
Modeling is one of the basic concepts in software engineering and this is critical in model drive... more Modeling is one of the basic concepts in software engineering and this is critical in model driven approaches. Model transformation is even more important than model in model driven engineering (MDE). The increasing complexity of systems and modeling languages has raised the complexity and size of model transformation. According to the complexity transformations will be done harder. So transformations should be built using sound principle engineering- just like as any other kind of software product. The purpose of this paper is increasing of automation in model transformation engineering that causes detection of requirements in other phases of process. In this paper we propose one approach for creation of cohesion between all of phases in the most complete life cycle of model transformation (transML). This paper provide one automate life cycle which covers requirements, analysis, architecture, design, implementation and test phases. Cohesion and relation between the all phases of this life cycle that created by this paper increases the automation, ease of generation one transformation and causes detection of requirements in the other phases of life cycle.
Conference Presentations by Mahsa Panahandeh
Uploads
Papers by Mahsa Panahandeh
Conference Presentations by Mahsa Panahandeh