KR100990091B1 - Method and apparatus for the requirement management - Google Patents

Method and apparatus for the requirement management Download PDF

Info

Publication number
KR100990091B1
KR100990091B1 KR1020080123094A KR20080123094A KR100990091B1 KR 100990091 B1 KR100990091 B1 KR 100990091B1 KR 1020080123094 A KR1020080123094 A KR 1020080123094A KR 20080123094 A KR20080123094 A KR 20080123094A KR 100990091 B1 KR100990091 B1 KR 100990091B1
Authority
KR
South Korea
Prior art keywords
source code
requirement
information
requirements
additional information
Prior art date
Application number
KR1020080123094A
Other languages
Korean (ko)
Other versions
KR20100064589A (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 KR1020080123094A priority Critical patent/KR100990091B1/en
Publication of KR20100064589A publication Critical patent/KR20100064589A/en
Application granted granted Critical
Publication of KR100990091B1 publication Critical patent/KR100990091B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register

Abstract

본 발명은 요구 사항 관리 방법 및 장치에 관한 것이다. 본 발명에 따른 요구 사항 관리 장치는, 소스 코드 내의 요구 사항과 관련된 부가 정보를 해석하여 소스 코드와 요구 사항 사이의 관계를 파악하는 전처리부, 그리고 소스 코드와 요구 사항 사이의 파악된 관계를 기초로 요구 사항이 소스 코드에 반영된 현황을 분석하는 요구 사항 관리부를 포함한다. 본 발명에 의하면, 소스 코드 내에 기술되어 있는 부가 정보를 해석하여 소스 코드에 반영된 소프트웨어 요구 사항을 자동으로 분석할 수 있다. 또한 소스 코드와 요구 사항이 변경된 경우에 상호 간에 미치는 영향을 미리 파악할 수 있으므로 효과적으로 소프트웨어 개발을 할 수 있다.The present invention relates to a requirements management method and apparatus. The requirement management apparatus according to the present invention is based on a preprocessor that analyzes additional information related to a requirement in the source code to grasp the relationship between the source code and the requirements, and based on the identified relationship between the source code and the requirements. Includes a requirements management unit that analyzes the status of the requirements reflected in the source code. According to the present invention, additional information described in the source code can be analyzed to automatically analyze the software requirements reflected in the source code. In addition, it is possible to effectively develop software by understanding in advance the influence of each other when source code and requirements change.

소프트웨어 개발, 소스 코드, 요구 사항, 전처리기 Software development, source code, requirements, preprocessor

Description

요구 사항 관리 방법 및 장치{METHOD AND APPARATUS FOR THE REQUIREMENT MANAGEMENT}Requirements Management Method and Apparatus {METHOD AND APPARATUS FOR THE REQUIREMENT MANAGEMENT}

본 발명은 요구 사항 관리 방법 및 장치에 관한 것으로, 보다 상세하게는 요구 사항이 소스 코드에 반영된 현황을 분석하거나 요구 사항 또는 소스 코드의 변경이 상호간에 미치는 영향을 분석할 수 있는 요구 사항 관리 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for managing requirements, and more particularly, a method for managing requirements that can analyze the status of requirements reflected in source code or analyze the effects of changes in requirements or source code on each other. Relates to a device.

일반적으로 소프트웨어 개발은 요구 사항 정의 및 분석, 시스템 설계, 프로그램 설계, 프로그램 구현, 테스트, 유지 보수 등의 단계로 이루어져 있으며, 보통 전 단계가 완료된 후 다음 단계의 과정이 수행되고 있다. 이와 같은 소프트웨어 개발 단계는 각각 독립적으로 수행되나, 서로 유기적인 관계를 맺고 있어서 한 단계가 변경이 되면 다른 단계에도 영향을 미치게 된다. 그러나 소프트웨어 개발 단계의 결과물이 각각 독립적으로 관리되고 있어서 한 단계의 변경이 다른 단계에 어떠한 영향을 미치는 지 파악하는 데 어려움이 있다.In general, software development consists of requirements definition and analysis, system design, program design, program implementation, testing, and maintenance. The process of the next stage is usually performed after the previous stage is completed. These software development stages are performed independently, but they have an organic relationship with each other, so if one stage is changed, the other stages are affected. However, the outcomes of the software development phase are managed independently, making it difficult to understand how changes in one phase affect others.

이러한 문제를 해결하기 위해 다양한 도구들이 개발되고 있으나, 요구 사항 자체에 대한 관리, 변경 추적, 변경 영향 분석 등을 용이하게 할 수 있는 도구에 관한 것이 대부분이고, 요구 사항이 소스 코드에 반영된 현황, 요구 사항 또는 소스 코드의 변경이 상호간에 미치는 영향 등에 대한 분석을 용이하게 할 수 있는 도구는 미비한 실정이다. 다만 요구 사항에 대해 소스 코드를 매트릭스 형태의 문서로 관리하는 방법이 존재하기는 하나, 이는 추가적인 인력, 비용, 시간 등이 소요되고, 변경 이력을 파악하기 어려운 문제점이 존재하며, 시간이 지남에 따라 실제의 요구 사항 또는 소스 코드와 일치하지 않는 문제점이 존재한다.Various tools have been developed to solve these problems, but most of them are about tools that can facilitate the management of requirements, change tracking, and change impact analysis. There are few tools available to facilitate the analysis of the impact of changes or source code changes on each other. However, there is a method of managing the source code in a matrix document for the requirements, but it requires additional manpower, cost, time, etc., and it is difficult to understand the change history. There is a problem that does not match the actual requirements or the source code.

본 발명이 해결하고자 하는 과제는 요구 사항이 소스 코드에 반영된 현황을 분석하거나 요구 사항 또는 소스 코드의 변경이 상호간에 미치는 영향을 분석할 수 있는 요구 사항 관리 방법 및 장치를 제공하는 것이다.An object of the present invention is to provide a requirement management method and apparatus that can analyze the current state of the requirements reflected in the source code, or analyze the effects of changes in the requirements or the source code.

이러한 기술적 과제를 해결하기 위한 본 발명의 실시예에 따른 요구 사항 관리 장치는, 소스 코드 내의 부가 정보를 해석하여 상기 소스 코드와 요구 사항 사이의 관계를 파악하는 전처리부, 그리고 상기 소스 코드와 상기 요구 사항 사이의 관계를 기초로 상기 요구 사항이 상기 소스 코드에 반영된 현황을 분석하는 요구 사항 관리부를 포함하며, 상기 부가 정보는 상기 요구 사항과 관련된 정보를 포함한다.The requirement management apparatus according to the embodiment of the present invention for solving the technical problem, a pre-processing unit for analyzing the additional information in the source code to grasp the relationship between the source code and the requirements, and the source code and the request A requirements management unit for analyzing the status of the requirements reflected in the source code based on the relationship between the requirements, and the additional information includes information related to the requirements.

상기 부가 정보는 상기 소스 코드 내의 주석 부분에 존재할 수 있다.The additional information may be present in a comment portion in the source code.

상기 전처리부는 상기 부가 정보를 해석하여 소스 코드 모듈 정보와 이와 관련된 요구 사항을 식별할 수 있는 정보를 포함하는 요구 사항 해석 정보를 생성하며, 상기 소스 코드 모듈 정보는 소스 코드 파일명, 소스 코드 모듈명 및 소스 코드 모듈 관련 정보를 포함할 수 있다.The preprocessing unit interprets the additional information to generate requirement analysis information including source code module information and information for identifying a related requirement, wherein the source code module information includes a source code file name, a source code module name, and Source code module related information may be included.

상기 요구 사항 관리부는 상기 요구 사항 해석 정보와 요구 사항 명세서를 기초로 요구 사항 분석 정보를 생성하고, 상기 요구 사항 분석 정보는 상기 소스 코드 모듈 정보와 이와 관련된 요구 사항에 대한 정보를 포함할 수 있다.The requirement management unit may generate requirement analysis information based on the requirement analysis information and the requirement specification, and the requirement analysis information may include the source code module information and information on the requirements related thereto.

상기 요구 사항 관리부는 상기 소스 코드가 변경된 경우 영향을 받는 요구 사항을 파악하는 동작 및 상기 요구 사항이 변경된 경우 영향을 받는 소스 코드를 파악하는 동작 중 적어도 하나를 더 수행할 수 있다.The requirement management unit may further perform at least one of an operation of identifying a requirement that is affected when the source code is changed and an operation of identifying an affected source code when the requirement is changed.

본 발명의 다른 실시예에 따른 요구 사항 관리 방법은, 소스 코드 내의 부가 정보를 해석하여 상기 소스 코드와 요구 사항 사이의 관계를 파악하는 단계, 그리고 상기 소스 코드와 상기 요구 사항 사이의 관계를 기초로 상기 요구 사항이 상기 소스 코드에 반영된 현황을 분석하는 단계를 포함하며, 상기 부가 정보는 상기 요구 사항과 관련된 정보를 포함할 수 있다.According to another aspect of the present invention, there is provided a method for managing a requirement, by analyzing additional information in source code to determine a relationship between the source code and a requirement, and based on the relationship between the source code and the requirement. And analyzing the current state of the requirement reflected in the source code, and the additional information may include information related to the requirement.

상기 부가 정보는 상기 소스 코드 내의 주석 부분에 존재할 수 있다.The additional information may be present in a comment portion in the source code.

상기 관계 파악 단계는 상기 부가 정보를 해석하여 소스 코드 모듈 정보와 이와 관련된 요구 사항을 식별할 수 있는 정보를 포함하는 요구 사항 해석 정보를 생성하는 단계를 포함하며, 상기 소스 코드 모듈 정보는 소스 코드 파일명, 소스 코드 모듈명 및 소스 코드 관련 정보를 포함할 수 있다.The determining of the relationship includes interpreting the additional information to generate requirement analysis information including source code module information and information for identifying a related requirement, wherein the source code module information is a source code file name. It may include source code module names and source code related information.

상기 현황 분석 단계는 상기 요구 사항 해석 정보와 요구 사항 명세서를 기초로 요구 사항 분석 정보를 생성하는 단계를 포함하며, 상기 요구 사항 분석 정보는 상기 소스 코드 모듈 정보와 이와 관련된 요구 사항에 대한 정보를 포함할 수 있다.The status analysis step includes generating requirement analysis information based on the requirement analysis information and the requirement specification, and the requirement analysis information includes information about the source code module information and requirements related thereto. can do.

상기 소스 코드가 변경된 경우 영향을 받는 요구 사항을 파악하는 단계 및 상기 요구 사항이 변경된 경우 영향을 받는 소스 코드를 파악하는 단계 중 적어도 하나를 더 포함할 수 있다.The method may further include at least one of identifying requirements affected when the source code is changed and identifying source codes affected when the requirement is changed.

이와 같이 본 발명에 의하면, 소스 코드 내에 기술되어 있는 부가 정보를 해석하여 소스 코드에 반영된 요구 사항을 자동으로 분석할 수 있고, 소스 코드가 변경된 경우에 영향을 받는 요구 사항 또는 요구 사항이 변경된 경우에 영향을 받는 소스 코드를 미리 파악할 수 있으므로 효과적으로 소프트웨어 개발을 할 수 있다.As described above, according to the present invention, the additional information described in the source code can be analyzed to automatically analyze the requirements reflected in the source code, and when the requirements or requirements affected are changed when the source code is changed. Knowing the affected source code in advance allows for effective software development.

그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention.

먼저, 도 1 및 도 2를 참고하여 본 발명의 실시예에 따른 요구 사항 관리 장치에 대하여 상세하게 설명한다.First, a requirement management apparatus according to an embodiment of the present invention will be described in detail with reference to FIGS. 1 and 2.

도 1은 본 발명의 실시예에 따른 요구 사항 관리 장치를 설명하기 위한 블록도이고, 도 2는 소스 코드 내에 존재하는 부가 정보의 일례를 나타내는 도면이다.1 is a block diagram illustrating an apparatus for managing requirements according to an embodiment of the present invention, and FIG. 2 is a diagram illustrating an example of additional information existing in source code.

본 발명의 실시예에 따른 요구 사항 관리 장치(100)는 전처리부(110), 요구 사항 관리부(130) 및 저장부(150)를 포함하며, 소스 코드 내의 부가 정보를 해석하여 요구 사항이 소스 코드에 반영된 현황을 분석한다.The requirement management apparatus 100 according to the embodiment of the present invention includes a preprocessor 110, a requirement manager 130, and a storage 150, and interprets additional information in the source code so that the requirement is source code. Analyze the status reflected in the

요구 사항은 소프트웨어 개발과 관련하여 해당 소프트웨어가 제공해야 하는 서비스와 소프트웨어를 동작하기 위해 또는 소프트웨어가 동작하는 가운데 필요한 제약조건 등을 의미하며, 기타 소프트웨어 개발과 관련된 각종 요구 사항을 포함할 수 있다.The requirements refer to the services provided by the software and the constraints necessary to operate the software or to operate the software in relation to the software development, and may include various requirements related to the software development.

부가 정보는 요구 사항을 식별 할 수 있는 정보 등을 포함할 수 있으며, 요구 사항과 관련된 정보를 의미한다. 그리고 부가 정보는 소스 코드의 컴파일 또는 실행 시에 영향을 미치지 않기 위해 소스 코드 내의 주석 부분에 존재할 수 있으며, 개발 환경, 개발 언어, 전처리기, 컴파일러 등에 따라 다양한 방식으로 표현될 수 있다.The additional information may include information for identifying a requirement, and means information related to a requirement. In addition, the additional information may be present in a comment portion of the source code so as not to affect the compilation or execution of the source code, and may be expressed in various ways according to a development environment, a development language, a preprocessor, and a compiler.

도 2를 참고하여 소스 코드 내에 존재하는 부가 정보의 일례를 이하 설명한다. 도 2는 개발 언어로 C 언어를 사용하는 경우 소스 코드(test.c) 내에 존재하는 부가 정보를 나타내고 있으며, C 언어에서는 '/* ~ */'와 같은 형식으로 주석 부분이 이루어져 있다. 도 2에서 A, C 부분은 부가 정보를 의미하고, B, D 부분은 모듈을 의미한다. 여기서 모듈(B, D)은 독립적인 기능을 수행하는 하나의 단위로서, 함수, 클래스 등을 예로 들 수 있다. 부가 정보(A, C)는 모듈(B, D)이 수행하는 기능과 관련된 요구 사항을 나타내며, 소스 코드(test.c) 내에 해당 모듈(B, D)의 위 또는 아래에 추가되는 방법을 통해 해당 모듈(B, D)과 연계하여 표시될 수 있다. 이하 부가정보(A, C)는 해당 모듈(B, D)의 위에 추가되는 것으로 가정하고 설명한다.An example of additional information present in the source code will be described below with reference to FIG. 2. FIG. 2 shows additional information existing in the source code (test.c) when using the C language as a development language, and in the C language, comments are formed in a format such as '/ * to * /'. In FIG. 2, parts A and C denote additional information, and parts B and D denote modules. In this case, the modules B and D are units that perform independent functions, and examples thereof include functions and classes. The additional information (A, C) represents requirements related to the functions performed by the modules (B, D), and is added in the source code (test.c) by adding them above or below the corresponding modules (B, D). It may be displayed in association with the corresponding module (B, D). Hereinafter, it is assumed that the additional information A and C is added above the corresponding modules B and D.

부가 정보(A)는 method1 모듈(B)이 구현하고 있는 기능과 관련된 요구 사항(3.1.2, 3.1.3, 4.1)을 나타내고 있으며, 부가 정보(B)는 method2 모듈(D)이 구현하고 있는 기능과 관련된 요구 사항(3.1.2, 3.1.5)을 나타내고 있다. 여기서 부가 정보(A, B)에 기술되어 있는 요구 사항(3.1.2, 3.1.3, 3.1.5, 4.1)은 단지 요구 사항을 식별할 수 있는 정보로서, 이러한 요구 사항 식별 정보를 이용하여 해당 요 구 사항에 대한 상세한 정보를 검색할 수 있다.Additional information (A) shows requirements (3.1.2, 3.1.3, 4.1) related to the functions implemented by method1 module (B), and additional information (B) is implemented by method2 module (D). The functional requirements (3.1.2, 3.1.5) are shown. The requirements (3.1.2, 3.1.3, 3.1.5, 4.1) described here in the additional information (A, B) are merely information that can identify the requirements, You can search for detailed information on requirements.

다시 도 1을 참고하면, 전처리부(110)는 소스 코드 내의 부가 정보를 해석하여 소스 코드와 요구 사항 사이의 관계를 파악한다. 즉, 전처리부(110)는 부가 정보를 해석하여 소스 코드 모듈 정보와 이와 관련된 요구 사항을 식별할 수 있는 정보를 포함하는 요구 사항 해석 정보를 생성할 수 있다. 그리고 전처리부(110)는 요구 사항 해석 정보를 요구 사항 관리부(130)로 제공할 수 있다.Referring back to FIG. 1, the preprocessor 110 analyzes additional information in the source code to grasp the relationship between the source code and the requirements. That is, the preprocessor 110 may generate additional requirement analysis information including source code module information and information related to the requirement to interpret the additional information. In addition, the preprocessor 110 may provide the requirement analysis information to the requirement manager 130.

여기서 소스 코드 모듈 정보는 소스 코드 파일명, 모듈명, 관련 정보 등을 포함할 수 있으며, 관련 정보는 모듈의 파라미터(parameter) 값, 결과 값 등에 대한 정보를 의미한다. 예를 들면, 요구 사항 해석 정보는 아래의 표 1과 같이 이루어질 수 있다.Here, the source code module information may include a source code file name, a module name, related information, and the like, and the related information means information about a parameter value, a result value, and the like of the module. For example, requirement analysis information may be made as shown in Table 1 below.

소스 코드 모듈 정보Source code module information 요구 사항 식별 정보Requirements Identification Information test.c/method1/없음test.c / method1 / none 3.1.2/3.1.3/4.13.1.2 / 3.1.3 / 4.1 test.c/method2/없음test.c / method2 / none 3.1.2/3.1.53.1.2 / 3.1.5

위의 표 1에서 보는 바와 같이 요구 사항 해석 정보에는 각 소스 코드 모듈에 따라 해당 소스 코드 모듈과 관련된 요구 사항을 식별할 수 있는 정보가 대응되어 있을 수 있다. 물론, 각 요구 사항에 따라 해당 요구 사항과 관련된 소스 코드 모듈 정보가 대응되게 요구 사항 해석 정보가 이루어질 수도 있다.As shown in Table 1 above, the requirement analysis information may correspond to information for identifying requirements related to the corresponding source code module according to each source code module. Of course, the requirements analysis information may be made to correspond to the source code module information associated with the requirements according to each requirement.

요구 사항 관리부(130)는 소스 코드와 요구 사항 사이의 파악된 관계를 기초로 요구 사항이 소스 코드에 반영된 현황을 분석한다. 즉, 요구 사항 관리부(130)는 전처리부(110)로부터 제공받은 요구 사항 해석 정보와 요구 사항 명세서를 기초로 요구 사항 분석 정보를 생성할 수 있다.The requirement management unit 130 analyzes the status of the requirements reflected in the source code based on the identified relationship between the source code and the requirements. That is, the requirement manager 130 may generate the requirement analysis information based on the requirement analysis information and the requirement specification provided from the preprocessor 110.

여기서 요구 사항 명세서에는 요구 사항 식별 정보와 이에 대응되는 요구 사항에 대한 자세한 정보가 저장되어 있고, 요구 사항 분석 정보는 소스 코드 모듈 정보와 이와 관련된 요구 사항에 대한 자세한 정보를 포함할 수 있다. 예를 들면, 요구 사항 분석 정보는 아래의 표 2와 같이 이루어질 수 있다.In this case, the requirement specification stores detailed information on requirement identification information and corresponding requirements, and the requirement analysis information may include detailed information on source code module information and related requirements. For example, requirement analysis information may be made as shown in Table 2 below.

소스 코드 모듈 정보Source code module information 요구 사항 식별 정보Requirements Identification Information 요구 사항 정보Requirements Information test.c/method1/없음test.c / method1 / none 3.1.23.1.2 C-2 기능C-2 Function 3.1.33.1.3 C-3 기능C-3 Function 4.14.1 D-1 기능D-1 function test.c/method2/없음test.c / method2 / none 3.1.23.1.2 C-2 기능C-2 Function 3.1.53.1.5 C-5 기능C-5 Function

위의 표 2에서 보는 바와 같이 요구 사항 분석 정보에는 각 소스 코드 모듈에 따라 해당 소스 코드 모듈과 관련된 요구 사항을 식별할 수 있는 정보뿐만 아니라 요구 사항에 대한 자세한 정보가 대응되어 있을 수 있다. 물론, 각 요구 사항에 따라 해당 요구 사항과 관련된 소스 코드 모듈 정보가 대응되게 요구 사항 분석 정보가 이루어질 수도 있다. 이와 같은 요구 사항 분석 정보를 통해 사용자는 요구 사항이 소스 코드에 반영된 현황을 파악할 수 있다.As shown in Table 2 above, the requirements analysis information may correspond to detailed information on the requirements as well as information for identifying the requirements related to the corresponding source code module according to each source code module. Of course, the requirements analysis information may be made to correspond to the source code module information associated with the requirements according to each requirement. This requirement analysis information allows the user to understand how requirements are reflected in the source code.

요구 사항 관리부(130)는 요구 사항 분석 정보를 이용하여 소스 코드가 변경된 경우에 영향을 받는 요구 사항을 파악하거나 요구 사항이 변경된 경우에 영향을 받는 소스 코드를 파악할 수 있다. 즉, 요구 사항 관리부(130)는 소스 코드가 변경된 경우 해당 소스 코드 모듈을 판단하고, 상기 소스 코드 모듈과 요구 사항 분석 정보를 이용하여 상기 소스 코드 모듈에서 수행하는 기능과 관련된 요구 사항을 파악할 수 있다. 또한 요구 사항 관리부(130)는 요구 사항이 변경된 경우 해당 요구 사항을 판단하고, 상기 요구 사항을 식별할 수 있는 정보와 요구 사항 분석 정보를 이용하여 상기 요구 사항이 구현되어 있는 소스 코드 모듈을 파악할 수 있다. 이와 같이 요구 사항 또는 소스 코드를 변경하고자 할 때 사용자는 영향을 받는 소스 코드 또는 요구 사항을 미리 확인할 수 있으므로 효과적으로 소프트웨어 개발을 할 수 있다.The requirement management unit 130 may use the requirement analysis information to identify requirements affected when the source code is changed or to identify source codes affected when the requirement is changed. That is, the requirement management unit 130 may determine the corresponding source code module when the source code is changed, and grasp the requirements related to the function performed by the source code module using the source code module and the requirement analysis information. . In addition, the requirements management unit 130 may determine the requirements when the requirements are changed, and may grasp the source code module in which the requirements are implemented by using the information to identify the requirements and requirement analysis information. have. In this way, when the user wants to change the requirements or the source code, the user can check the affected source code or requirements in advance so that the software development can be effective.

그리고 요구 사항 관리부(130)는 요구 사항 분석 정보, 소스 코드 또는 요구 사항이 변경된 경우에 영향을 받는 요구 사항 또는 소스 코드 정보 등을 표시부(도시하지 않음)로 출력하거나 통신부(도시하지 않음)를 통해 외부로 전송할 수 있다.In addition, the requirement management unit 130 outputs the requirements analysis information, source code information, or the like, which are affected when the requirement analysis information, the source code, or the requirement is changed, to the display unit (not shown) or through the communication unit (not shown). Can be sent externally.

저장부(150)는 요구 사항 관리 장치(100)의 동작에 필요한 각종 프로그램, 데이터 등을 저장한다. 특히 본 발명에 따른 저장부(150)는 요구 사항 해석 정보, 요구 사항 분석 정보, 소스 코드 또는 요구 사항이 변경된 경우에 영향을 받는 요구 사항 또는 소스 코드 정보 등을 저장하고 있으며, 전처리부(110) 또는 요구 사항 관리부(130)로부터 제공되는 정보를 저장하거나 전처리부(110) 또는 요구 사항 관리부(130)의 요청에 의해 해당 정보를 제공할 수 있다.The storage unit 150 stores various programs, data, etc. necessary for the operation of the requirement management apparatus 100. In particular, the storage unit 150 according to the present invention stores the requirements analysis information, requirements analysis information, source code or requirements affected when the source code or requirements are changed, and the like, the preprocessor 110 Alternatively, the information provided from the requirement management unit 130 may be stored, or the information may be provided at the request of the preprocessor 110 or the requirement management unit 130.

다음으로, 도 3을 참고하여 본 발명의 실시예에 따른 요구 사항 관리 방법에 대해 설명한다.Next, a requirement management method according to an embodiment of the present invention will be described with reference to FIG. 3.

도 3은 본 발명의 실시예에 따른 요구 사항 관리 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a requirement management method according to an embodiment of the present invention.

먼저, 요구 사항 관리 장치(100)는 소스 코드 내의 부가 정보를 해석하여 소스 코드 모듈 정보와 이와 관련된 요구 사항을 식별할 수 있는 정보를 포함하는 요구 사항 해석 정보를 생성할 수 있다(S300). 이후 요구 사항 관리 장치(100)는 요구 사항 해석 정보와 요구 사항 명세서를 기초로 요구 사항 분석 정보를 생성할 수 있다(S310). 이와 같은 요구 사항 분석 정보를 통해 사용자는 요구 사항이 소스 코드에 반영된 현황을 파악할 수 있다.First, the requirement management apparatus 100 may analyze the additional information in the source code to generate requirement analysis information including source code module information and information for identifying a requirement related thereto (S300). Thereafter, the requirement management apparatus 100 may generate requirement analysis information based on the requirement analysis information and the requirement specification (S310). This requirement analysis information allows the user to understand how requirements are reflected in the source code.

그리고 소스 코드 또는 요구 사항이 변경된 경우(S320-Y), 요구 사항 관리 장치(100)는 요구 사항 분석 정보를 이용하여 소스 코드가 변경된 경우에 영향을 받는 요구 사항을 파악하거나 요구 사항이 변경된 경우에 영향을 받는 소스 코드를 파악할 수 있다(S330). 즉, 요구 사항 관리 장치(100)는 소스 코드가 변경된 경우 해당 소스 코드 모듈을 판단하고, 상기 소스 코드 모듈과 요구 사항 분석 정보를 이용하여 상기 소스 코드 모듈에서 수행하는 기능과 관련된 요구 사항을 파악할 수 있다. 또한 요구 사항 관리 장치(100)는 요구 사항이 변경된 경우 해당 요구 사항을 판단하고, 상기 요구 사항을 식별할 수 있는 정보와 요구 사항 분석 정보를 이용하여 상기 요구 사항이 구현되어 있는 소스 코드 모듈을 파악할 수 있다. 이와 같이 요구 사항 또는 소스 코드를 변경하고자 할 때 사용자는 영향을 받는 소스 코드 또는 요구 사항을 미리 확인할 수 있으므로 효과적으로 소프트웨어 개발을 할 수 있다.When the source code or the requirement is changed (S320-Y), the requirement management apparatus 100 uses the requirement analysis information to identify the requirements affected when the source code is changed or when the requirements are changed. The affected source code can be identified (S330). That is, the requirement management apparatus 100 may determine a corresponding source code module when the source code is changed, and determine a requirement related to a function performed by the source code module using the source code module and requirement analysis information. have. In addition, the requirement management apparatus 100 may determine the requirements when the requirements are changed, and grasp the source code module in which the requirements are implemented by using the information to identify the requirements and requirement analysis information. Can be. In this way, when the user wants to change the requirements or the source code, the user can check the affected source code or requirements in advance so that the software development can be effective.

본 발명의 실시예는 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터로 읽을 수 있는 매체를 포함한다. 이 매체는 지금까지 설명한 요구 사항 관리 방법을 실행시키기 위한 프로그램을 기록한다. 이 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 이러한 매체의 예에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 자기 매체, CD 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(Floptical Disk)와 자기-광 매체, 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치 등이 있다. 또는 이러한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Embodiments of the invention include a computer readable medium containing program instructions for performing various computer-implemented operations. This medium records a program for executing the requirements management method described so far. The media may include, alone or in combination with the program instructions, data files, data structures, and the like. Examples of such media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CDs and DVDs, floppy disks and program commands such as magnetic-optical media, ROM, RAM and flash memory. Hardware devices configured to store and perform such operations. Alternatively, the medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

이상에서 본 발명의 바람직한 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the preferred embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also provided. It belongs to the scope of rights.

도 1은 본 발명의 실시예에 따른 요구 사항 관리 장치를 설명하기 위한 블록도이다.1 is a block diagram illustrating an apparatus for managing requirements according to an embodiment of the present invention.

도 2는 소스 코드 내에 존재하는 부가 정보의 일례를 나타내는 도면이다.2 is a diagram illustrating an example of additional information present in the source code.

도 3은 본 발명의 실시예에 따른 요구 사항 관리 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a requirement management method according to an embodiment of the present invention.

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

100: 요구 사항 관리 장치, 110: 전처리부,100: requirements management device, 110: preprocessing unit,

130: 요구 사항 관리부, 150: 저장부130: requirements management unit, 150: storage unit

Claims (10)

삭제delete 소스 코드 내의 부가 정보를 해석하여 상기 소스 코드와 요구 사항 사이의 관계를 파악하는 전처리부, 그리고A preprocessor for analyzing the additional information in the source code to determine the relationship between the source code and the requirements; and 상기 소스 코드와 상기 요구 사항 사이의 관계를 기초로 상기 요구 사항이 상기 소스 코드에 반영된 현황을 분석하는 요구 사항 관리부Requirements management unit for analyzing the status that the requirements are reflected in the source code based on the relationship between the source code and the requirements 를 포함하며,Including; 상기 부가 정보는 상기 요구 사항과 관련된 정보를 포함하고, 상기 부가 정보는 상기 소스 코드 내의 주석 부분에 존재하는 요구 사항 관리 장치.The additional information includes information related to the requirement, and the additional information is present in a comment portion in the source code. 소스 코드 내의 부가 정보를 해석하여 상기 소스 코드와 요구 사항 사이의 관계를 파악하는 전처리부, 그리고A preprocessor for analyzing the additional information in the source code to determine the relationship between the source code and the requirements; and 상기 소스 코드와 상기 요구 사항 사이의 관계를 기초로 상기 요구 사항이 상기 소스 코드에 반영된 현황을 분석하는 요구 사항 관리부Requirements management unit for analyzing the status that the requirements are reflected in the source code based on the relationship between the source code and the requirements 를 포함하며,Including; 상기 부가 정보는 상기 요구 사항과 관련된 정보를 포함하고, The additional information includes information related to the requirement, 상기 전처리부는 상기 부가 정보를 해석하여 소스 코드 모듈 정보와 이와 관련된 요구 사항을 식별할 수 있는 정보를 포함하는 요구 사항 해석 정보를 생성하며,The preprocessing unit interprets the additional information to generate requirement analysis information including source code module information and information for identifying a related requirement, 상기 소스 코드 모듈 정보는 소스 코드 파일명, 소스 코드 모듈명 및 소스 코드 모듈 관련 정보를 포함하는 요구 사항 관리 장치.The source code module information includes a source code file name, a source code module name, and source code module related information. 제3항에서,4. The method of claim 3, 상기 요구 사항 관리부는 상기 요구 사항 해석 정보와 요구 사항 명세서를 기초로 요구 사항 분석 정보를 생성하고,The requirement management unit generates the requirement analysis information based on the requirement analysis information and the requirements specification, 상기 요구 사항 분석 정보는 상기 소스 코드 모듈 정보와 이와 관련된 요구 사항에 대한 정보를 포함하는 요구 사항 관리 장치.The requirement analysis information comprises the source code module information and information on the requirements associated with the requirements management device. 제2항에서,In claim 2, 상기 요구 사항 관리부는 상기 소스 코드가 변경된 경우 영향을 받는 요구 사항을 파악하는 동작 및 상기 요구 사항이 변경된 경우 영향을 받는 소스 코드를 파악하는 동작 중 적어도 하나를 더 수행하는 요구 사항 관리 장치.And the requirement management unit further performs at least one of an operation for identifying a requirement affected when the source code is changed and an operation for identifying an affected source code when the requirement is changed. 삭제delete 소스 코드 내의 부가 정보를 해석하여 상기 소스 코드와 요구 사항 사이의 관계를 파악하는 단계, 그리고Interpreting additional information in source code to determine a relationship between the source code and requirements, and 상기 소스 코드와 상기 요구 사항 사이의 관계를 기초로 상기 요구 사항이 상기 소스 코드에 반영된 현황을 분석하는 단계Analyzing the status of the requirement reflected in the source code based on the relationship between the source code and the requirement 를 포함하며,Including; 상기 부가 정보는 상기 요구 사항과 관련된 정보를 포함하고, 상기 부가 정보는 상기 소스 코드 내의 주석 부분에 존재하는 요구 사항 관리 방법.The additional information includes information related to the requirement, and the additional information is present in a comment portion in the source code. 제7항에서,In claim 7, 상기 관계 파악 단계는 상기 부가 정보를 해석하여 소스 코드 모듈 정보와 이와 관련된 요구 사항을 식별할 수 있는 정보를 포함하는 요구 사항 해석 정보를 생성하는 단계를 포함하며,The determining of the relationship includes interpreting the additional information to generate requirement analysis information including source code module information and information related to identifying the requirement. 상기 소스 코드 모듈 정보는 소스 코드 파일명, 소스 코드 모듈명 및 소스 코드 관련 정보를 포함하는 요구 사항 관리 방법.The source code module information includes a source code file name, a source code module name, and source code related information. 제8항에서,In claim 8, 상기 현황 분석 단계는 상기 요구 사항 해석 정보와 요구 사항 명세서를 기초로 요구 사항 분석 정보를 생성하는 단계를 포함하며,The status analysis step includes generating requirement analysis information based on the requirement analysis information and the requirement specification. 상기 요구 사항 분석 정보는 상기 소스 코드 모듈 정보와 이와 관련된 요구 사항에 대한 정보를 포함하는 요구 사항 관리 방법.The requirement analysis information comprises the source code module information and information on the requirements associated with the requirements management method. 제7항에서,In claim 7, 상기 소스 코드가 변경된 경우 영향을 받는 요구 사항을 파악하는 단계 및 상기 요구 사항이 변경된 경우 영향을 받는 소스 코드를 파악하는 단계 중 적어도 하나를 더 포함하는 요구 사항 관리 방법.And at least one of identifying requirements affected when the source code is changed and identifying source codes affected when the requirement is changed.
KR1020080123094A 2008-12-05 2008-12-05 Method and apparatus for the requirement management KR100990091B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080123094A KR100990091B1 (en) 2008-12-05 2008-12-05 Method and apparatus for the requirement management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080123094A KR100990091B1 (en) 2008-12-05 2008-12-05 Method and apparatus for the requirement management

Publications (2)

Publication Number Publication Date
KR20100064589A KR20100064589A (en) 2010-06-15
KR100990091B1 true KR100990091B1 (en) 2010-10-29

Family

ID=42364189

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080123094A KR100990091B1 (en) 2008-12-05 2008-12-05 Method and apparatus for the requirement management

Country Status (1)

Country Link
KR (1) KR100990091B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101370973B1 (en) * 2012-12-03 2014-03-14 주식회사 엔에스이 Requirements data management system and requirements management method
KR102018039B1 (en) 2017-11-14 2019-09-04 한국항공우주연구원 Apparatus and Method for tracking and managing code change among multiple projects
KR102158687B1 (en) * 2018-12-28 2020-09-22 아주대학교 산학협력단 Method and apparatus for designing VFB of AUTOSAR using a FBF (Function Block Feature)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100669604B1 (en) 2004-12-17 2007-01-15 엘지전자 주식회사 Software Integration Tool System for Configuration Management System

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100669604B1 (en) 2004-12-17 2007-01-15 엘지전자 주식회사 Software Integration Tool System for Configuration Management System

Also Published As

Publication number Publication date
KR20100064589A (en) 2010-06-15

Similar Documents

Publication Publication Date Title
US20190081985A1 (en) Method and system for rapid accreditation/re-accreditation of agile it environments, for example service oriented architecture (soa)
US8706771B2 (en) Systems and methods for analyzing and transforming an application from a source installation to a target installation
CN103164249B (en) Extension mechanism for script compiler
US8214807B2 (en) Code path tracking
JP5791149B2 (en) Computer-implemented method, computer program, and data processing system for database query optimization
CN101996131A (en) Automatic test method and automatic test platform for graphic user interface (GUI) based on x extensive makeup language (XML) packaging key word
US20120324432A1 (en) Systems and methods to automatically generate classes from api source code
US8676627B2 (en) Vertical process merging by reconstruction of equivalent models and hierarchical process merging
US9959509B2 (en) Computing dependent and conflicting changes of business process models
CN101866315A (en) Test method and system of software development tool
CN103186463B (en) Determine the method and system of the test specification of software
US9715372B2 (en) Executable guidance experiences based on implicitly generated guidance models
KR100990091B1 (en) Method and apparatus for the requirement management
JP2014010699A (en) Update determination program and update determination device
US10656922B2 (en) Systems and methods for providing an application transformation tool
US9507592B2 (en) Analysis of data integration job
US10606569B2 (en) Declarative configuration elements
US20180239603A1 (en) Software Development Estimating Based on Functional Areas
US10740222B2 (en) Intelligent unitizer test plug-in
US9396239B2 (en) Compiling method, storage medium and compiling apparatus
US8479152B2 (en) Representing non-functional requirements (NFRS) in unified modeling language (UML)
US20110145656A1 (en) Analyzing A Distributed Computer System
US10147063B2 (en) Transforming project management representations into business process representations
do Nascimento et al. A method for rewriting legacy systems using business process management technology
KR100916301B1 (en) Device and Method for Executing Kernel API Interactively

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: 20131022

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141021

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151021

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161004

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170920

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181002

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191016

Year of fee payment: 10