An Operation History Model for Version Management of Software Objects

소프트웨어 객체의 버전 관리를 위한 연산 히스토리 모델

  • Received : 2003.12.14
  • Accepted : 2004.01.15
  • Published : 2004.01.30

Abstract

Software documents consist of a number of objects and relationships between them, and structure of documents can be changed frequently. In the existing software version management models, changes in one object may be propagated to other objects unnecessarily. In this paper, we propose an efficient version management model for software objects based on history of operations applied to software objects. Operations applied to objects are recorded in the operation history, and those are used to retrieve versions of a document. Because versions of objects are stored and retrieved using the operation delta, it is not required to compare versions of a document to extract delta during check-in process. In addition, it can manage changes of structure of objects efficiently because it supports not only object creation, deletion, and update operation but also object move operation.

소프트웨어 문서는 논리적인 객체와 객체간의 관계로 이루어진 구조를 가지고 있으며 그 구조가 빈번하게 변경된다. 기존의 소프트웨어 객체 버전 관리에서는 한 객체의 변경이 불필요하게 다른 객체로 전파되는 문제를 가지고 있다. 본 논문에서는 소프트웨어 편집 과정에서 객체에 적용된 연산의 히스토리를 이용하여 소프트웨어 객체의 버전을 효율적으로 관리할 수 있는 모델을 제안하였다. 소프트웨어 객체 편집 과정에서 객체에 적용된 연산을 연산 히스토리에 기록되고 버전 저장과 검색에 이용된다. 객체의 연산 히스토리를 이용한 델타에 의해 저장되고 검색되므로 체크인 과정에서 델타 추출을 위한 비교 과정이 필요 없다. 또, 이 모델은 객체의 생성, 삭제, 변경 연산뿐만 아니라 객체의 이동 연산을 지원함으로써 효율적으로 객체 구조의 변경을 관리할 수 있다.

Keywords