KR20060069576A - Software integration tool for configuration management system - Google Patents

Software integration tool for configuration management system Download PDF

Info

Publication number
KR20060069576A
KR20060069576A KR1020040108079A KR20040108079A KR20060069576A KR 20060069576 A KR20060069576 A KR 20060069576A KR 1020040108079 A KR1020040108079 A KR 1020040108079A KR 20040108079 A KR20040108079 A KR 20040108079A KR 20060069576 A KR20060069576 A KR 20060069576A
Authority
KR
South Korea
Prior art keywords
software
change
source code
scm
shape
Prior art date
Application number
KR1020040108079A
Other languages
Korean (ko)
Other versions
KR100669604B1 (en
Inventor
김기륭
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020040108079A priority Critical patent/KR100669604B1/en
Publication of KR20060069576A publication Critical patent/KR20060069576A/en
Application granted granted Critical
Publication of KR100669604B1 publication Critical patent/KR100669604B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Abstract

본 발명의 사상에 따른 형상 관리 시스템의 소프트웨어 통합 도구는 내부적인 소프트웨어의 변경을 감지하여 개발자에게 상기 변경된 내용을 통지하는 SCM, 외부 개발사로 부터 입수한 소스 코드가 변경되는 경우 상기 개발사에서 발생한 변경 사항을 개발자에 통지하여 소프트웨어의 개발에 참고할 수 있도록 하는 SIT가 포함된다.The software integration tool of the configuration management system according to the spirit of the present invention detects a change in the internal software and SCM for notifying the developer of the change, the change occurred in the developer when source code obtained from an external developer is changed It includes a SIT that informs the developer that the software will be referenced for development.

본 발명을 적용한 시스템을 사용할 경우, 통합 관리자는 외부 소스 코드의 변경에 대해 직접 관리하지 않더라도 시스템에 의해 담당 개발자에게 자동으로 외부변경 내용이 전달되므로, 소프트웨어 통합에 소요되는 시간과 노력이 줄어들게 된다. 더욱 중요하게는, 자동화된 툴에 의해 외부의 형상 변경을 내부 SCM에서 추적하도록 강제하게 되므로, 소프트웨어의 품질을 향상시킬 수 있다. In the case of using the system to which the present invention is applied, the external manager automatically delivers the external change contents to the developer in charge by the system even if the integrated manager does not directly manage the change of the external source code, thereby reducing the time and effort required for software integration. More importantly, automated tools are forced to track external shape changes in the internal SCM, thus improving the quality of the software.

소프트웨어 형상관리, 소프트웨어 통합Software configuration management, software integration

Description

형상 관리 시스템의 소프트웨어 통합 도구{Software Integration Tool for Configuration Management System}Software Integration Tool for Configuration Management System

도 1은 본 발명의 사상에 따른 SCM 과정을 표현한 도면.1 is a diagram representing an SCM process according to the spirit of the present invention.

도 2는 본 발명의 사상에 따른 SIT의 동작 과정을 표현한 도면.2 is a view showing the operation of the SIT according to the spirit of the present invention.

도 3은 본 발명의 사상에 따른 SCM과 SIT의 동작 과정을 표현한 도면.3 is a view showing the operation of the SCM and SIT in accordance with the spirit of the present invention.

도 4는 본 발명의 사상에 따른 형상 관리 시스템의 소프트웨어 통합 도구를 구현하는 방법을 표현한 플로우 차트.4 is a flow chart representing a method of implementing a software integration tool of a configuration management system according to the spirit of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

200: SIT 201: 형상 변경 추적기200: SIT 201: Geometry Change Tracker

202: 통합기 240: SCM202: integrator 240: SCM

241: 활동 리스트 250: 내부 조직 통합 스트림241: Activity List 250: Internal Organization Integration Stream

260: N차 베이스라인 270: N+1차 베이스 라인260: Nth baseline 270: N + 1st baseline

본 발명은 종래의 소프트웨어 형상 관리 시스템(Software Configuration Management System, 이하 SCM)을 보완하여, 다수의 조직이 참여하는 소프트웨어 개 발 과정을 관리하기 위한 SCM의 서브 시스템으로서 소프트웨어 형상 관리 시스템의 소프트웨어 통합 도구에 관한 것이다.The present invention complements the conventional Software Configuration Management System (SCM), and is a sub-system of the SCM for managing software development processes involving a large number of organizations. It is about.

종래의 SCM은 하나의 시스템을 공유하는 조직 내에서의 관리에 대해서 정의하고 있으나, 서로 다른 개발사와 같이 시스템을 공유 할 수 없는 조직 사이에서는 이러한 SCM을 사용할 수가 없다. 본 발명은 이러한 단점을 보완하기 위해, 종래의 SCM을 보완할 수 있는 서브 시스템으로서 소프트웨어 통합 도구의 원리와 구현방법을 정의한다.Conventional SCM defines management in an organization that shares one system, but such an SCM cannot be used between organizations that cannot share a system such as different developers. The present invention defines the principle and implementation method of the software integration tool as a subsystem that can complement the conventional SCM to complement this disadvantage.

종래의 SCM은 하나의 조직 내에서 발생하는 변경에 대한 관리에 중점을 두고 있다. 그러나 소프트웨어 개발 환경의 변화가 과거에 비해 급격하게 변화함에 따라 소프트웨어의 변경이 조직 외부에서 발생하는 경우가 빈번하다. 즉, 다른 개발사로부터 입수한 소스 코드를 변경하는 경우, 기업과 기업 사이에서 동일한 SCM을 공유하는 것은 현실적으로 불가능하므로, 다른 개발사에서 발생하는 변경 사항은 SCM으로 관리가 불가능하다.Traditional SCM focuses on managing changes that occur within an organization. However, as changes in the software development environment change more rapidly than in the past, software changes frequently occur outside the organization. In other words, if the source code obtained from other developers is changed, it is not practical to share the same SCM between the company and the company, and thus changes made by other developers cannot be managed by the SCM.

예를 들어, A사가 B사로부터 소스 코드를 공급 받아 개발을 진행하는 경우를 가정하면, B사에서 상위 버전의 소프트웨어를 배포할 때, A사의 개발자들은 B사에서 발생한 변경 사항이 A사 내부에서 발생한 변경 사항과 충돌하지 않는지의 여부를 SCM의 도움 없이 파악해야 한다. 대규모의 프로젝트에서 이 작업은 매우 많은 시간을 소비하게 하므로, 개발자들이 향상된 기능개발에 주력하기보다, 외부의 변경 사항을 내부로 적용하는데 주력하게 만들며, 또한 외부에서의 형상 변경을 추적하지 못하여, 소프트웨어의 품질을 저하시키는 원인이 된다.For example, suppose that Company A develops with source code from Company B. When Company B distributes a higher version of the software, the developers of Company A will not be able to Whether or not there is a conflict with the changes that occurred has to be determined without the assistance of the SCM. In large projects this can be very time consuming, allowing developers to focus on applying external changes internally, rather than focusing on developing enhanced features, and also failing to track geometry changes from outside. This may cause deterioration of the quality.

본 발명은 SCM으로 관리가 불가능한 외부 조직에서의 형상 변경을 검색하여 문서화하고, 이를 내부 조직에서 발생한 형상 변경과 통합할 수 있도록 개발자에 대한 지원 기능을 제공할 수 있는 소프트웨어 통합도구(Software Integration Tool, 이하 SIT)를 제안하는 것을 목적으로 한다.The present invention is a software integration tool (Software Integration Tool, which can provide a support function for developers to search and document the shape change in the external organization that can not be managed by the SCM, and integrate it with the shape change occurred in the internal organization It aims to propose the following SIT).

본 발명의 사상에 따른 형상 관리 시스템의 소프트웨어 통합 도구는 내부적인 소프트웨어의 변경을 감지하여 개발자에게 상기 변경된 내용을 통지하는 SCM, 외부 개발사로 부터 입수한 소스 코드가 변경되는 경우 상기 개발사에서 발생한 변경 사항을 개발자에 통지하여 소프트웨어의 개발에 참고할 수 있도록 하는 SIT가 포함된다.The software integration tool of the configuration management system according to the spirit of the present invention detects a change in the internal software and SCM for notifying the developer of the change, the change occurred in the developer when source code obtained from an external developer is changed It includes a SIT that informs the developer that the software will be referenced for development.

본 발명을 적용한 시스템을 사용할 경우, 통합 관리자는 외부 소스 코드의 변경에 대해 직접 관리하지 않더라도 시스템에 의해 담당 개발자에게 자동으로 외부변경 내용이 전달되므로, 소프트웨어 통합에 소요되는 시간과 노력이 줄어들게 된다. 더욱 중요하게는, 자동화된 툴에 의해 외부의 형상 변경을 내부 SCM에서 추적하도록 강제하게 되므로, 소프트웨어의 품질을 향상시킬 수 있다. In the case of using the system to which the present invention is applied, the external manager automatically delivers the external change contents to the developer in charge by the system even if the integrated manager does not directly manage the change of the external source code, thereby reducing the time and effort required for software integration. More importantly, automated tools are forced to track external shape changes in the internal SCM, thus improving the quality of the software.

한편, 소프트웨어 형상 관리 시스템(Software Configuration Management System)이란, 소프트웨어 형상관리 표준절차(Software Configuration Management Standard Procedure)와 소프트웨어 형상관리 계획서(Software Configuration Management plans, SCMP)의 모델을 정의하고, 이를 지원하는 관리 도구를 말한다. On the other hand, Software Configuration Management System is a management tool that defines and supports models of Software Configuration Management Standard Procedures and Software Configuration Management plans (SCMP). Say.

즉, 소프트웨어 개발 과정에서 발생하는 소스 코드, 설정, 관리문서, 인증 등의 각종 결과물에 대한 형상을 관리하여, 소프트웨어에 가해지는 변경을 제어하고 관리하는 것이다. In other words, it manages the shape of various outputs such as source code, setting, management document, authentication, etc. generated in the software development process, and controls and manages the changes made to the software.

이는 소프트웨어의 품질보증을 위한 중요한 기본요소로서, 변경 사항을 감독, 제어하여 개발 과정에서 발생하는 혼란을 최소화하고, 유지보수의 용이성과 생산성을 향상시키는 것을 목적으로 한다.This is an important element of software quality assurance, which aims to supervise and control changes to minimize confusion in development process and to improve maintenance and productivity.

상용화된 SCM 시스템으로서는 Microsoft사의 Visual Source Safe와 IBM사의 Rational ClearCase 등이 있다. 이 시스템들은 개발자들이 소스 코드를 공유하며, 각종 변경 사항을 기록, 관리하고, 문서화하는 기능을 가지고 있다. 특히 Rational ClearCase는 하나의 프로젝트로부터 다수의 개발팀이 각자의 개발 스트림(stream)을 사용하여 분화된 프로젝트를 진행할 수 있도록 하는 UCM(Unified Change Management)를 지원한다.Commercially available SCM systems include Microsoft's Visual Source Safe and IBM's Rational ClearCase. These systems have the ability for developers to share source code, record, manage, and document changes. In particular, Rational ClearCase supports Unified Change Management (UCM), which allows multiple development teams from one project to work on their own development streams.

이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세히 설명한다. 본 발명은 이하 제시되는 실시예에 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진자에게 자명한 범위 내에서 구성요소의 부가, 한정, 삭제, 추가 등에 의하여 동일 범위의 발명이 제시될 수 있을 것이다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. The present invention is not limited to the embodiments presented below, and the same scope of the invention will be presented by the addition, limitation, deletion, addition, etc. of components within the scope obvious to those skilled in the art. Could be.

도 1은 본 발명의 사상에 따른 SCM 과정을 표현한 도면이다.1 is a diagram representing an SCM process according to the spirit of the present invention.

상기 도 1에 도시된 바와 같이, 상기 SCM 과정(100)은 형상 식별(Configuration Identification)과정(110), 형상 제어(Configuration Control)과정(120), 형상 감사(Configuration Auditing)과정(130), 형상 상태 기록 (Configuration Status Accounting)과정(140)으로 구성된다.As shown in FIG. 1, the SCM process 100 includes a configuration identification process 110, a configuration control process 120, a configuration auditing process 130, and a shape. Configuration Status Accounting (140).

상기 형상 식별 과정(110)은 어떤 항목을 제어해야 하는지에 대하여 결정하는 것으로서, 상기 항목에는 프로젝트 계획문서, 요구사항 명세서, 설계 명세서, 소스 코드, 시험용 데이터 등이 포함된다.The shape identification process 110 determines which items are to be controlled. The items include a project plan document, a requirements specification, a design specification, a source code, test data, and the like.

상기 형상 제어 과정(120)은 소프트웨어의 생명주기에 걸쳐 발생하는 변경 사항에 대한 제어로서, 변경 사항이 발생하였을 때, 이를 정식 절차를 거쳐 다음 개발 주기의 기준으로 인증하는 변경 제어(121)와 변경의 내용을 추적하는 버전 제어(122)로 구성된다.The shape control process 120 is a control on changes occurring over the life cycle of the software. When a change occurs, the change control 121 and the change are authenticated based on the next development cycle through a formal procedure. It consists of a version control 122 to track the contents of.

상기 형상 감사 과정(130)은 상기 형상제어 과정에서 고려되지 않았던 특성들을 포함하여 형상 객체를 평가하는 품질 관리 활동을 의미한다.The shape audit process 130 refers to a quality control activity for evaluating a shape object including characteristics not considered in the shape control process.

상기 형상 상태 기록 과정(140)은 변경의 내용을 기록하므로써, 개발주체간의 의사 소통을 개선하기 위한 과정이다.The shape state recording process 140 is a process for improving communication between developers by recording the contents of the change.

상기 과정을 통하여 하나의 조직에서 발생하는 변경 사항을 제어하고 관리하므로써, 개발 과정에서 발생할 수 있는 혼란을 줄이고, 작업의 효율을 높일 수 있다.By controlling and managing changes occurring in one organization through the above process, it is possible to reduce the confusion that may occur in the development process and to increase the work efficiency.

도 2는 본 발명의 사상에 따른 SIT의 동작 과정을 표현한 도면이다.2 is a view illustrating an operation process of the SIT according to the spirit of the present invention.

상기 도 2에 도시된 바와 같이, 상기 SIT(200)는 외부 조직의 소프트웨어가 구 버전에서 신 버전으로 업그레이드 될 경우, 상기 버전간 차이 정보를 SIT(200)에서 수집하고 상기 수집된 정보를 개발자에 전달함으로써 상기 변경 사항을 내부 조직에서 개발 중인 소프트웨어에 반영할 수 있도록 한다.As shown in FIG. 2, when the software of an external organization is upgraded from an old version to a new version, the SIT 200 collects the difference information between the versions in the SIT 200 and sends the collected information to a developer. This change is then reflected in the software under development by the internal organization.

보다 상세히, 외부 조직에서 개발중인 구 버전의 소프트웨어(210)와 상기 구 버전의 소프트웨어(210)를 업그레이드한 신 버전의 소프트웨어(211)를 상기 SIT(200)의 형상 변경 추적기(201)에서 검색한다. 상기 형상 변경 추적기(201)에서는 상기 검색된 신(211), 구 버전(210)의 소프트웨어를 비교 판단하여 구 버전의 소프트웨어(210)와 비교하여 신 버전의 소프트웨어(211)에서 개량된 점을 찾아낸다.In more detail, the shape change tracker 201 of the SIT 200 searches for an older version of the software 210 being developed by an external organization and a new version of the software 211 that upgrades the old version of the software 210. . The shape change tracker 201 compares and determines the searched software of the scene 211 and the old version 210, and finds an improvement in the new version of the software 211 by comparing the software with the old version 210. .

상기 형상 변경 추적기(201)를 통하여 신(211), 구 버전(210) 소프트웨어의 차이점을 파악하고, 상기 차이점을 통합기(202)에 전달한다. 상기 통합기(202) 역시 상기 SIT(200)의 일 구성요소로서, 상기 신(211), 구 버전(210) 소프트웨어의 차이점을 개발자의 활동 스트림에 전달한다. 즉, 상기 통합기(202)에서는 상기 소스 코드의 차이점을 분석하고, 상기 차이점과 관련이 있는 활동 스트림을 찾아내 상기 스트림에 상기 소스 코드의 차이점을 전달하게 된다. 상기 스트림의 활동을 하고 있는 개발자는 상기 차이점을 감안하여 새로운 소프트웨어를 제작하게 된다. 상기 활동은 특정한 개발자에 의해 SCM(240) 상에서 진행중인 작업의 단위를 의미한다. 상기 스트림에서 이루어 지는 각각의 활동은 형상 변경의 집합을 추적하는 단위가 된다.The shape change tracker 201 identifies the differences between the scene 211 and the old version 210 software and communicates the differences to the integrator 202. The integrator 202 is also a component of the SIT 200, which communicates the differences between the new 211 and old 210 software to the developer's activity stream. That is, the integrator 202 analyzes the difference of the source code, finds an activity stream related to the difference, and delivers the difference of the source code to the stream. A developer working on the stream will produce new software in view of the difference. Activity refers to a unit of work in progress on SCM 240 by a particular developer. Each activity in the stream is a unit for tracking a set of shape changes.

상기 차이점을 이미 활동 중인 스트림 내에 통합하기 위하여 개발자는 통합 도구(Merging Tool)를 사용한다. 상기 통합 도구는 통합을 하고자 하는 두 파일의 차이점을 분석하여, 개발자의 지정에 따라 하나의 형상으로 통합하도록 지원하는 응용 프로그램을 의미한다. To integrate the difference into an already active stream, the developer uses a merging tool. The integration tool refers to an application program that analyzes differences between two files to be integrated and integrates them into a single shape according to a developer's designation.

상기 형상 변경 추적기(201)는 소스 코드 저장소(Repository)에 구 버전의 소프트웨어(210) 소스 코드를 저장하고, 신 버전의 소스 코드(211)가 외부로 부터 입수될 때, 상기 신 버전의 소스 코드(211)를 구 버전의 소스 코드(210)와 비교하여 디렉토리의 구조 변경 내용 목록과 변경 파일 목록을 추출한다.The shape change tracker 201 stores the old version of the software 210 source code in a source code repository, and when the new version of the source code 211 is obtained from the outside, the new version of the source code. 211 is compared with an older version of the source code 210 to extract a directory structure change list and a list of change files.

상기 형상 변경 추적기(201)는 외부로부터 이루어진 형상 변경을 내부 SCM(240)에서 추적 가능하도록 문서화하는 응용프로그램과, 상기 문서를 조회할 수 있는 UI를 구현한다.The shape change tracker 201 implements an application program for documenting the shape change made from the outside so that the internal SCM 240 can be tracked, and a UI for querying the document.

상기 통합 도구는 활동 중인 각각의 개별 스트림에 적용된다. 예를 들어 통합 스트림(250)으로 부터 분리되어 개발 중인 A와 B 스트림(251,252)에, 상기 형상 변경 추적기(201)를 통하여 검색된 신(211), 구 버전(210) 소프트웨어의 차이점을 통합하고자 할 때 사용된다. 상기 A, B 스트림(251,252)은 N차 베이스라인(260) 이후 통합 스트림(250)으로부터 분리되어 N+1차 베이스라인(270) 형성 이전에 다시 통합 스트림(250)으로 통합된다.The integration tool is applied to each individual stream in action. For example, the A and B streams 251 and 252, which are separated from the integrated stream 250 and are being developed, are intended to integrate the differences between the scene 211 and the old version 210 software retrieved through the shape change tracker 201. When used. The A and B streams 251 and 252 are separated from the integrated stream 250 after the Nth baseline 260 and merged back into the integrated stream 250 before the N + 1st baseline 270 is formed.

상기 베이스라인은 개발 과정에서 소프트웨어의 형상을 나타내는 기준이나 산출물로서, 모든 변화의 평가와 조정, 처리가 이루어지는 기술적인 통제시점(Technical Control Point)을 의미한다. 즉, 개발에 참여하는 주체들이 개발의 기준으로 삼을 수 있는 특정한 시점을 말한다.The baseline is a standard or output representing the shape of the software during the development process, and means a technical control point at which all changes are evaluated, adjusted, and processed. In other words, it refers to a specific point in time that can be used as the basis for development by the actors involved in the development.

도 3은 본 발명의 사상에 따른 SCM과 SIT의 동작 과정을 표현한 도면이다.3 is a view illustrating an operation process of the SCM and the SIT according to the spirit of the present invention.

상기 도 3을 참조하면, 하나의 조직 내에서 발생하는 변경을 관리하는데 중점을 두는 SCM(240)과 상기 SCM(240)으로 관리가 불가능한 외부 조직에서의 형상 변경을 검색하고 문서화하는 SIT(200)의 상호 관계를 파악할 수 있다. Referring to FIG. 3, an SCM 240 focusing on managing changes occurring within an organization and an SIT 200 for searching and documenting shape changes in external tissues that cannot be managed by the SCM 240 are described. To understand the relationship between

보다 상세히, 내부적인 소프트웨어의 변경을 감지하여 개발자에게 상기 변경된 내용을 통지하는 SCM(240)과 외부 개발사로 부터 입수한 소스 코드가 변경되는 경우 상기 개발사에서 발생한 변경 사항을 개발자에 통지하여 소프트웨어의 개발에 참고할 수 있도록 하는 SIT(200) 사이의 데이터 이동 과정을 파악할 수 있다.More specifically, when the source code obtained from the SCM 240 and the external developer to detect the change of the internal software and notify the developer to change the development of the software by notifying the developer of the change occurred in the developer It is possible to grasp the data movement process between the SIT (200) to be referred to.

상기 SIT(200)는 외부 조직에서 발생한 형상 변경을 내부 조직에서 발생한 형상 변경과 통합할 수 있도록 개발자에 대한 지원 기능을 제공한다.The SIT 200 provides a support function for a developer to integrate a shape change occurring in an external organization with a shape change occurring in an internal organization.

상기 SCM(240)은 내부적으로 종래 소스 코드를 개량하여 새로운 버전의 소스 코드를 만드는 과정에서 사용된다. 새로운 소스 코드를 개발하기 위하여 각 개발자들은 자신이 담당하는 분야의 소스 코드를 통합 스트림(250)에서 분리된 개별 스트림에서 개발한다.The SCM 240 is used in the process of making a new version of the source code by internally improving the conventional source code. In order to develop new source code, each developer develops source code of a field that he or she is responsible for in a separate stream separated from the integrated stream 250.

상기 활동 중인 스트림의 목록은 SCM(240) 내부의 활동 리스트(241)에 저장되며, 상기 활동 리스트(241)에 저장된 활동 스트림의 목록은 SIT(200)로 부터 검색된 외부의 소스 코드 변경 항목을 내부 조직의 소스 코드와 통합하는 과정에서 사용된다.The list of active streams is stored in the activity list 241 inside the SCM 240, and the list of activity streams stored in the activity list 241 contains an external source code change item retrieved from the SIT 200. It is used during integration with the organization's source code.

보다 상세히, 상기 SCM(240)과 SIT(200)의 동작 과정을 살펴보면, 상기 형상 변경 추적기(201)를 통하여 외부에서 변경된 소스 코드를 검색하고, 상기 검색된 변경 소스 코드 목록을 통합기(202)에 전달하게 된다.In more detail, referring to the operation process of the SCM 240 and the SIT 200, through the shape change tracker 201 retrieves the changed source code from the outside, and the list of the retrieved change source code to the integrator 202 Will be delivered.

상기 통합기(202)는 상기 형상 변경 추적기(201)에서 파악된, 외부에서의 형상 변경 내용을 추적하여, 상기 변경된 소스 코드 중 SCM(240)에서 추적중인 형상 변경이 있는 소스 코드의 목록을 추출하는 기능을 구현하는 응용프로그램 엔진이다. 이때, 내부 조직에서 형상 변경이 있는 소스 코드의 목록은 SCM(240) 내의 활동 리스트(241)에서 제공받게 된다.The integrator 202 tracks the shape change from the outside identified by the shape change tracker 201 and extracts a list of the source code having the shape change being tracked by the SCM 240 among the changed source codes. It is an application engine that implements the function. At this time, a list of source codes having a shape change in the internal organization is provided in the activity list 241 in the SCM 240.

상기 활동 리스트(241)에서 제공 받은 변경 중인 소스 코드의 목록과 상기 형상 변경 추적기(201)를 통하여 검색된 변경 소스 코드 목록을 서로 비교하여 상호 연관된 소스 코드를 분석하게 된다. The list of change source codes provided in the activity list 241 and the change source code list retrieved through the shape change tracker 201 are compared with each other to analyze the correlated source codes.

상기 과정을 통하여 내부에서 활동 중인 소스 코드 A,B와 연관이 있는 외부에서 변경된 소스 코드 A',B'을 걸러내게 된다. 이후 상기 SCM(240)에서 활동 중인 소스 코드 A와 B는 상기 SIT(200)에서 검색된 소스 코드 A', B'과 통합된다.Through the above process, externally changed source codes A 'and B' associated with active source codes A and B are filtered out. Thereafter, the source codes A and B active in the SCM 240 are integrated with the source codes A 'and B' retrieved by the SIT 200.

상기 통합과정이 수행되기 위하여 상기 SCM(240) 내의 개별 스트림으로부터 상기 소스 코드 A와 B는 체크 아웃(Check-Out)되어 외부에서 변경된 소스 코드 A', B'과 통합된다. 상기 체크 아웃은 특정한 파일을 특정한 활동에 할당하여, 다른 활동을 위해 형상 변경을 만드는 것을 금지하도록 잠그는 작업을 의미한다.In order to perform the integration process, the source codes A and B are checked out from the individual streams in the SCM 240 and integrated with externally changed source codes A 'and B'. The check out refers to the task of assigning a particular file to a particular activity and locking it to prohibit making a shape change for another activity.

상기 체크 아웃 후에 통합이 이루어진 새로운 소스 코드는 다시 SCM(240) 내부의 개별 스트림으로 체크 인(Check-In)하게 된다. 상기 체크 인은 형상 변경이 끝난 파일을 다시 스트림 상의 다른 활동에 의해 체크 아웃될 수 있는 상태로 되돌리는 작업을 의미한다.After the checkout, the new source code that is integrated is checked back into the individual stream inside the SCM 240. The check-in refers to a task of returning a file whose shape has been changed to a state that can be checked out again by another activity on the stream.

도 4는 본 발명의 사상에 따른 형상 관리 시스템의 소프트웨어 통합 도구를 구현하는 방법을 표현한 플로우 차트이다.4 is a flowchart illustrating a method of implementing a software integration tool of a configuration management system according to the spirit of the present invention.

상기 도 4를 참조하면, 본 발명의 소프트웨어 통합 도구(SIT:200)는 다음과 같은 단계를 거쳐, SCM(240) 외부에서 이루어진 형상 변경을 내부의 SCM(240)에 통합한다Referring to FIG. 4, the software integration tool (SIT) 200 of the present invention integrates the shape change made outside the SCM 240 into the internal SCM 240 through the following steps.

먼저, 조직 내의 SCM(240)에서 새로운 N차 베이스라인(Baseline:260)이 배포된다(S100). 상기 조직 내에서는 N차 베이스라인(260) 동안 소스 코드에 대한 형상 변경이 이루어진다(S110).First, a new Nth baseline (Baseline: 260) is distributed in the SCM 240 in the organization (S100). In the organization, the shape change of the source code is made during the Nth baseline 260 (S110).

상기 기간 동안 외부 조직에서도 소프트웨어를 변경하게 되며(S120), 상기 기간 경과 후, 외부 조직으로부터 변경된 소스 코드가 SIT(200)에 입수된다(S130).The software is also changed in the external organization during the period (S120), and after the period elapses, the source code changed from the external organization is obtained in the SIT 200 (S130).

상기 SIT(200)의 형상 변경 추적기(201)는 외부로부터 입수된 소스 코드를 상기 외부 조직에서 상기 소스 코드를 변경하기 이전 버전의 소스 코드와 비교한다(S140). 상기 SIT(200)의 형상 변경 추적기(201)에서 추출된 소스 변경 내역은 조직 내부의 SCM(240)에 문서화되어 저장된다.The shape change tracker 201 of the SIT 200 compares the source code obtained from the outside with the source code of the version before changing the source code in the external organization (S140). The source change history extracted by the shape change tracker 201 of the SIT 200 is documented and stored in the SCM 240 inside the organization.

상기 SCM(240)의 활동 리스트(241)를 통하여, 개별 스트림의 활동 상황을 판단하게 된다(S150).Through the activity list 241 of the SCM 240, it is determined the activity of the individual stream (S150).

상기 단계를 통하여 활동 중인 스트림에는 통합기(202)를 통하여 소스의 변경 내용을 통지하게 된다(S160).The active stream through the above step is notified of the change of the source through the integrator 202 (S160).

보다 상세히, 상기 통합기(202)는 형상 변경 추적기(201)에서 생성된 변경 소스 코드 목록 중, SCM(240)에서 관리되고 있는 소스 코드와 비교하여, 해당 소스 코드에 대해 활동이 있는 개발 스트림(Stream)에 알림신호(Notification)를 보낸다. 상기 스트림은 관련된 일련의 활동을 추적하는 단위를 의미한다. 하나의 스트림에서는 한번에 한가지의 활동이 이루어지게 된다. In more detail, the integrator 202 may compare the source code managed by the SCM 240 among the change source code list generated by the shape change tracker 201 with a development stream having activity on the corresponding source code. Send a notification to the stream. The stream refers to a unit for tracking a series of related activities. In one stream, one activity occurs at a time.

상기 S150 단계에서 활동이 없는 소스 코드는 정상적인 형상 변경으로 간주하고 알림 신호 없이 이전 버전을 새로운 버전으로 덮어쓴다(S170).In step S150, the source code without activity is regarded as a normal shape change and overwrites the previous version with the new version without the notification signal (S170).

즉, 상기 통합기(202)는 외부에서 형상 변경이 이루어졌고, SCM(240) 내에서 형상 변경이 있는 소스 코드를 추적하여, 해당 형상 변경에 해당하는 활동을 소유하는 스트림에 알림 신호를 보내고, 해당 소스 코드를 해당 스트림에서 자동으로 체크 아웃 하는 기능을 구현한다. 이때, 체크 아웃의 활동은 상기 통합기(202)에 의해 자동으로 생성된다. 상기 체크 아웃된 소스 코드와 외부에서 변경이 이루어진 소스 코드는 통합기(202) 상에서 통합이 이루어 진다(S180).That is, the integrator 202 is a shape change is made from the outside, the source code with the shape change in the SCM 240, and sends a notification signal to the stream owning the activity corresponding to the shape change, Implement the function to automatically check out the source code from the stream. At this time, the checkout activity is automatically generated by the integrator 202. The checked out source code and the source code that has been changed externally are integrated on the integrator 202 (S180).

상기 단계에서, 개발자에 의해 소스 코드의 통합이 완료되어 승인되면, 체크 인이 가능하도록 UI(User Interface)를 제공한다. 상기 UI를 바탕으로 새로운 소스 코드는 개별 스트림에 체크 인 된다(S190).In this step, when the integration of the source code is completed and approved by the developer, a UI (User Interface) is provided to enable check-in. Based on the UI, the new source code is checked in to the individual stream (S190).

상기 단계를 통하여 개발이 이루어 지는 개별 스트림은 통합 스트림(250)에 통합되고(S200), 통합 관리자(Integration Manager)에 의해 N+1차 베이스라인(270)이 생성된다. 상기 통합 스트림은 각각의 개별 스트림에서 전송된 활동의 변경 사항을 통합하여 베이스라인을 생성하는 스트림을 의미한다.The individual streams that are developed through the above steps are integrated into the integration stream 250 (S200), and an N + 1st baseline 270 is generated by an integration manager. The integrated stream refers to a stream that generates a baseline by integrating changes in the activity transmitted from each individual stream.

상기 과정을 통해 외부에서 이루어진 형상 변경은 내부 SCM(240)으로 통합된다. The shape change made externally through the above process is integrated into the internal SCM 240.

본 발명을 적용한 시스템을 사용할 경우, 통합 관리자(Integration Manager)는 외부 소스 코드의 변경에 대해 직접 관리하지 않더라도 시스템에 의해 담당 개 발자에게 자동으로 외부변경 내용이 전달되므로, 소프트웨어 통합에 소요되는 시간과 노력이 줄어들게 된다. 더욱 중요하게는, 자동화된 툴에 의해 외부의 형상 변경을 내부 SCM에서 추적하도록 강제하게 되므로, 소프트웨어의 품질을 향상시킬 수 있다. When using the system to which the present invention is applied, the integration manager (Integration Manager) is automatically delivered to the responsible developer by the system, even if you do not directly manage the change of the external source code, so the time required for software integration and The effort is reduced. More importantly, automated tools are forced to track external shape changes in the internal SCM, thus improving the quality of the software.

특히 본 발명은 외부 조직으로부터 구입한 소프트웨어를 자사의 플랫폼에 맞게 가공하는 성격의 프로젝트에 적용될 수 있다.In particular, the present invention can be applied to a project that processes software purchased from an external organization for its platform.

Claims (11)

내부적인 소프트웨어의 변경을 감지하여 개발자에게 상기 변경된 내용을 통지하는 SCM; SCM for detecting a change in the internal software to notify the developer of the change; 외부 개발사로 부터 입수한 소스 코드가 변경되는 경우 상기 개발사에서 발생한 변경 사항을 내부 조직의 개발자에 통지하여 소프트웨어의 개발에 참고할 수 있도록 하는 SIT;가 포함되는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.If the source code obtained from an external developer is changed, SIT for notifying the developer of the internal organization of the change occurred in the developer to refer to the development of the software; software integration tool of the configuration management system comprising a . 제 1항에 있어서,The method of claim 1, 상기 SCM에서 소프트웨어 형상관리 표준절차와, 소프트웨어 형상관리 계획서의 모델을 정의하고, 이를 지원하는 과정이 이루어지는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.In the SCM, a software configuration management standard procedure, a model of a software configuration management plan, a process of defining and supporting the software integration tool, characterized in that the process is made. 프로젝트 계획문서, 요구사항 명세서, 설계 명세서, 소스 코드, 시험용 데이터 등 제어해야할 항목을 결정하는 형상 식별 과정;Shape identification to determine items to be controlled, such as project plan documents, requirements specifications, design specifications, source code, and test data; 소프트웨어 생명주기를 걸쳐 발생하는 변경 사항에 대한 제어를 수행하는 형상 제어 과정;Shape control process for performing control over changes occurring throughout the software life cycle; 상기 형상 제어 과정에서 고려되지 않았던 특성들을 포함하여 형상 객체를 평가하는 형상 감사 과정; 및A shape audit process of evaluating a shape object including characteristics not considered in the shape control process; And 상기 변경 사항을 기록하여 개발 주체간의 의사 소통을 개선하기 위한 형상 상태 기록 과정;이 수행되는 SCM을 포함하는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.And a configuration state recording process for recording the changes to improve communication between development agents. The integrated software tool of the configuration management system comprising the SCM is performed. 제 3항에 있어서,The method of claim 3, wherein 상기 형상 제어 과정으로 변경 사항이 발생하였을 때, 이를 정식 절차를 거쳐 다음 개발 주기를 기준으로 인증하는 변경 제어 과정과,When a change occurs in the shape control process, a change control process for authenticating it based on the next development cycle through a formal procedure; 상기 변경의 내용을 추적하는 버전 제어 과정이 수행되는 SCM을 포함하는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.And a SCM in which a version control process for tracking the contents of the change is performed. 외부 조직에서 개발한 구 버전의 소프트웨어와 상기 구 버전의 소프트웨어를 업그레이드한 신 버전의 소프트웨어를 추적하여 상기 신, 구 버전 소프트웨어의 차이점을 검색하는 형상 변경 추적기;A shape change tracker for tracking the difference between the new and old version software by tracking an old version of the software developed by an external organization and a new version of the software upgraded from the old version of the software; 상기 소프트웨어의 차이점을 분석하고, 상기 차이점과 관련이 있는 활동 스트림을 찾아내 상기 스트림에 상기 소프트웨어의 차이점을 전달하는 통합기;로 구성되는 SIT가 포함되는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.A software integration tool of the configuration management system comprising: an SIT configured to analyze differences of the software, find an activity stream related to the differences, and deliver the differences of the software to the stream. . 제 5항에 있어서,The method of claim 5, 상기 형상 변경 추적기는 소스 코드 저장소에 구 버전의 소프트웨어 소스 코 드를 저장하고, 신 버전의 소스 코드가 외부로부터 입수될 때, 상기 신 버전의 소스 코드를 구 버전의 소스 코드와 비교하여 디렉토리의 구조 변경 내용 목록과 변경 파일 목록을 추출하는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.The shape change tracker stores the old version of the software source code in a source code repository, and when the new version of the source code is obtained from outside, the structure of the directory is compared by comparing the new version of the source code with the old version of the source code. Software integration tool for the configuration management system characterized by extracting a list of changes and a list of changes. 제 5항에 있어서,The method of claim 5, 상기 형상 변경 추적기는 외부로부터 이루어진 형상 변경을 내부 SCM에서 추적 가능하도록 문서화하는 응용프로그램과, 이 문서를 조회할 수 있는 UI를 구현하는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.The shape change tracker implements an application program for documenting the shape change made from the outside to be traceable in the internal SCM, and a UI for viewing the document. 제 5항에 있어서,The method of claim 5, 상기 통합기는 외부에서의 형상 변경 내용을 추적하여, 변경된 소스 코드 중 SCM에서 형상 변경이 있는 소스 코드의 목록을 추출하는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.The integrator tracks the shape change from the outside, and extracts a list of the source code with the shape change in the SCM among the changed source code. 제 8항에 있어서,The method of claim 8, 상기 SCM에서 형상 변경이 있는 소스 코드의 목록은 SCM내의 활동들이 추적하고 있는 변경 집합을 통해 추출하는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.And the list of source codes with shape changes in the SCM is extracted through a set of changes being tracked by activities in the SCM. 제 5항에 있어서,The method of claim 5, 상기 통합기는 외부에서 변경이 이루어졌고, SCM내에서 형상 변경이 있는 소스 코드를 추적하여, 해당 형상 변경에 해당하는 활동을 소유하는 스트림에 알림신호를 보내고, The integrator made a change externally, tracks the source code with the shape change in the SCM, sends a notification signal to the stream owning the activity corresponding to the shape change, 해당 소스 코드를 해당 스트림에서 자동으로 체크 아웃(Check-Out)하는 기능이 구현되는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.Software integration tool of the configuration management system, characterized in that the function to automatically check-out the source code from the stream. 제 10항에 있어서,The method of claim 10, 상기 통합기에 의해 발생한 상기 체크 아웃은 취소될 수 없으며, 통합 도구를 통해 외부에서의 형상 변경과 통합이 완료되어야만 체크 인 할 수 있는 것을 특징으로 하는 형상 관리 시스템의 소프트웨어 통합 도구.The checkout generated by the integrator cannot be canceled, and the software integration tool of the configuration management system, characterized in that the check-in can only be completed after the shape change and integration from the outside through the integration tool.
KR1020040108079A 2004-12-17 2004-12-17 Software Integration Tool System for Configuration Management System KR100669604B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040108079A KR100669604B1 (en) 2004-12-17 2004-12-17 Software Integration Tool System for Configuration Management System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040108079A KR100669604B1 (en) 2004-12-17 2004-12-17 Software Integration Tool System for Configuration Management System

Publications (2)

Publication Number Publication Date
KR20060069576A true KR20060069576A (en) 2006-06-21
KR100669604B1 KR100669604B1 (en) 2007-01-15

Family

ID=37163509

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040108079A KR100669604B1 (en) 2004-12-17 2004-12-17 Software Integration Tool System for Configuration Management System

Country Status (1)

Country Link
KR (1) KR100669604B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101139871B1 (en) * 2009-05-22 2012-05-02 삼성에스디에스 주식회사 Integration system and method of perforce server and clearquest server
WO2014133512A1 (en) * 2013-02-28 2014-09-04 Hewlett-Packard Development Company, L.P. Providing code change job sets of different sizes to validators
KR101579493B1 (en) * 2015-01-08 2015-12-23 주식회사 파수닷컴 Staging control method for source code, Computer program for the same, Recording medium storing computer program for the same
KR101722392B1 (en) 2015-10-06 2017-04-05 숭실대학교산학협력단 System and Method for Managing Configuration
US9684505B2 (en) 2013-06-12 2017-06-20 Mitsubishi Electric Corporation Development environment system, development environment apparatus, development environment providing method, and program

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100990091B1 (en) 2008-12-05 2010-10-29 한국항공우주연구원 Method and apparatus for the requirement management
KR100976420B1 (en) 2010-02-05 2010-08-17 장준용 Software configuration management system and method therefore

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08297570A (en) * 1995-04-25 1996-11-12 Fujitsu Ltd Method and device for program development
KR0155272B1 (en) * 1995-08-16 1998-11-16 김광호 S/w management method using computer system
JP2000215038A (en) 1998-11-20 2000-08-04 Nippon Steel Corp Information management device and recording medium
JP2000250742A (en) 1999-03-02 2000-09-14 Mitsubishi Electric Corp Software configuration managing device and software configuration managing method
JP2002182908A (en) 2000-12-15 2002-06-28 Mitsubishi Electric Corp Traceability device among s/w development processes
US7735080B2 (en) 2001-08-30 2010-06-08 International Business Machines Corporation Integrated system and method for the management of a complete end-to-end software delivery process

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101139871B1 (en) * 2009-05-22 2012-05-02 삼성에스디에스 주식회사 Integration system and method of perforce server and clearquest server
WO2014133512A1 (en) * 2013-02-28 2014-09-04 Hewlett-Packard Development Company, L.P. Providing code change job sets of different sizes to validators
US9870221B2 (en) 2013-02-28 2018-01-16 Entit Software Llc Providing code change job sets of different sizes to validators
US9684505B2 (en) 2013-06-12 2017-06-20 Mitsubishi Electric Corporation Development environment system, development environment apparatus, development environment providing method, and program
KR101579493B1 (en) * 2015-01-08 2015-12-23 주식회사 파수닷컴 Staging control method for source code, Computer program for the same, Recording medium storing computer program for the same
WO2016111525A1 (en) * 2015-01-08 2016-07-14 주식회사 파수닷컴 Source code transfer control method, computer program therefor, and recording medium therefor
US10331439B2 (en) 2015-01-08 2019-06-25 Sparrow Co., Ltd. Source code transfer control method, computer program therefor, and recording medium therefor
KR101722392B1 (en) 2015-10-06 2017-04-05 숭실대학교산학협력단 System and Method for Managing Configuration

Also Published As

Publication number Publication date
KR100669604B1 (en) 2007-01-15

Similar Documents

Publication Publication Date Title
US9575752B2 (en) Inferring a defect&#39;s cause in updated source code
US7418453B2 (en) Updating a data warehouse schema based on changes in an observation model
LaToza et al. Hard-to-answer questions about code
US7624394B1 (en) Software installation verification
US8548947B2 (en) Systems and methods for file maintenance
US7707007B2 (en) Autonomic client migration system for service engagements
Curbera et al. Business provenance–a technology to increase traceability of end-to-end operations
JP2008518295A5 (en)
US20060026570A1 (en) Approach to monitor application states for self-managing systems
JP4735030B2 (en) Information management system
RU2005128122A (en) METHOD, SYSTEM AND DEVICE FOR CREATING AN ARCHITECTURE MODEL FOR GENERATING RELIABLE AND EASY TO MANAGE DATA PROTECTION APPLICATIONS IN DATA PROTECTION SYSTEM
CN105229601A (en) Software building is optimized
US9535687B2 (en) Audited builds based upon separate class dependency records
JP5614843B2 (en) Integrated software design and operation management system
KR100669604B1 (en) Software Integration Tool System for Configuration Management System
O’Reilly et al. Improving conflict detection in optimistic concurrency control models
Johanssen et al. Towards a Systematic Approach to Integrate Usage and Decision Knowledge in Continuous Software Engineering.
US20080033846A1 (en) Audited Builds as an Extension to Build Tools
JP4535906B2 (en) UML model creation support method and apparatus
Mahmoud et al. Evaluating software clustering algorithms in the context of program comprehension
Chondamrongkul et al. Software architectural migration: an automated planning approach
Rose et al. Concordance: A framework for managing model integrity
Huyen et al. Toward inconsistency awareness in collaborative software development
Ziegenhagen et al. Capturing Tracing Data Life Cycles for Supporting Traceability.
Benitez Database schema migrationin highly available services

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091230

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee