ارائه روشی جدید برای تبدیل مدل دوسویه بر اساس چارچوب اپسیلون و تکنیک‌های ردیابی‌پذیری

نویسندگان

دانشگاه اصفهان - دانشکده مهندسی کامپیوتر - گروه پژوهشی مهندسی نرم‌افزار مدل‌رانده

چکیده

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

کلیدواژه‌ها


عنوان مقاله [English]

A New Approach for Bidirectional Model Transformation Based on the Epsilon Framework and Traceability Techniques

نویسندگان [English]

  • L. Samimi-Dehkordi
  • B. Zamani
  • S. Kolahdouz-Rahimi
MDSE Research Group, Faculty of Computer Engineering, University of Isfahan, Isfahan, Iran
چکیده [English]

Model-driven development is a new paradigm in software development in which the implementation code is automatically\semi-automatically generated from the model, using a set of techniques named model transformations. All activities in model-driven approaches are performed via the application of transformations. One of such activities is model-to-model transformation, which defines a unidirectional relation between the source and target models in the simplest case studies. In this case, the only possibility is to produce the target model from the source model. However, in general, the source and target models are evolved independently. Therefore, a more advanced transformation called bidirectional transformation (Bx) is required to restore consistency. Bx approaches have several challanges such as ambiguities in transformation language, special notation, and expensive formalization. In order to cope with such challenges, in this paper, a new Bx approach is proposed based on the Epsilon model-driven framework and traceability techniques. In this approach, the relation between the source and target models is formalized, and then is implemented on a well-known benchmark. The proposed Bx approach is compared with three bidirectional approaches based on ten criteria. The result of comparison demonstrates the superiority of the proposed approach in terms of portability, preservation, reconciliation, and operation support.

کلیدواژه‌ها [English]

  • Model-driven development
  • bidirectional transformation (Bx)
  • traceability
  • Epsilon framework