ارائه الگوریتم ادغام سه‌طرفه برای مدل‌های یوام‌ال بر اساس مفروضات ذهنی طراحان

نویسندگان

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

چکیده

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

کلیدواژه‌ها


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

A Three-way Merging Algorithm for UML Models Based on Developers’ Subjective Assumptions

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

  • M. Sharbaf
  • B. Zamani
Department of Software Engineering, Faculty of Computer Engineering, University of Isfahan, Isfahan, Iran
چکیده [English]

A model is an abstract representation of software system and is an appropriate solution to cope with the complexity of software. Utilizing from this fact, Model-Driven Development is an approach to software development that employs models as main artifacts for building software systems. With the increase in the number of designers in a team, different versions of model arise at any time during the development process, especially in the design phase. To manage these versions it is necessary to be able to identify differences and reconcile them in a single, integrated model. As a consequence, there is a need for tools and techniques to support model merging with less user interference. In this paper, an algorithm and tool for three-way merging of UML models is presented. Before merging, subjective assumptions of each developer is received and at the end, a consistent merged model is provided. According to the evaluations, user and modeling environment independency with less running time than the existing approaches, shows the superiority of this work.

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

  • Model-driven development
  • version control
  • three-way merging
  • UML models