KR20210035363A - Software reliability test system and method - Google Patents

Software reliability test system and method Download PDF

Info

Publication number
KR20210035363A
KR20210035363A KR1020190116632A KR20190116632A KR20210035363A KR 20210035363 A KR20210035363 A KR 20210035363A KR 1020190116632 A KR1020190116632 A KR 1020190116632A KR 20190116632 A KR20190116632 A KR 20190116632A KR 20210035363 A KR20210035363 A KR 20210035363A
Authority
KR
South Korea
Prior art keywords
function
software
risk level
functions
value
Prior art date
Application number
KR1020190116632A
Other languages
Korean (ko)
Other versions
KR102282382B1 (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 KR1020190116632A priority Critical patent/KR102282382B1/en
Publication of KR20210035363A publication Critical patent/KR20210035363A/en
Application granted granted Critical
Publication of KR102282382B1 publication Critical patent/KR102282382B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

Abstract

According to the present invention, provided is a software reliability test system. The software reliability test system includes: a first database part storing a plurality of first reference values for evaluating a risk grade of new software including at least one function; a second database part storing a plurality of first reference values for evaluating a risk grade of reused software including at least one function; and a calculation part provided to calculate the risk grade of the new software based on the first reference values in the case of the software, and calculate the risk grade of the reused software based on at least one of the first and second reference values in the case of the reused software. The reused software includes at least one of a modified function modified from an existing function and an added new function. The calculation part is provided to calculate each risk grade by function, and the calculation part is provided to calculate the risk grade based on the second reference values in the case of the modified function, and is provided to calculate the risk grade based on the first reference values in the case of the added new function. Therefore, the present invention is capable of more easily conducting a reliability test.

Description

소프트웨어의 신뢰성 시험 시스템 및 시험 방법{SOFTWARE RELIABILITY TEST SYSTEM AND METHOD}Software reliability test system and test method {SOFTWARE RELIABILITY TEST SYSTEM AND METHOD}

본 발명은 위험도 기반의 신규 및 재사용 소프트웨어의 신뢰성 시험 시스템 에 관한 것이다.The present invention relates to a risk-based reliability testing system for new and reused software.

산업과 기술이 발전함에 따라 무기체계에서 소프트웨어가 차지하는 비중이 점차 증가하고, 기능과 역할이 많아지면서 소프트웨어는 날로 복잡해지고 있다.As industries and technologies develop, the proportion of software in weapon systems gradually increases, and as functions and roles increase, software is becoming increasingly complex.

무기체계에서 소프트웨어의 결함(인간이 프로그램 또는 문서를 작성하면서 발생하는 오류 또는 에러, 실수)은 많은 인명과 재산상의 피해를 가져올 수 있기 때문에 소프트웨어의 비중이 증가하는 만큼 소프트웨어 신뢰성 시험에 대한 인식과 중요성이 높아지고 있는 실정이다.Software defects (errors, errors, mistakes that occur while humans write programs or documents) in weapon systems can cause a lot of damage to people and property, so the recognition and importance of software reliability testing as the proportion of software increases. This is the increasing situation.

특히, 개발과 시험평가 단계에서의 소프트웨어 신뢰성과 검증에 대한 중요성이 높아지고 있다.In particular, the importance of software reliability and verification in the development and test evaluation stages is increasing.

소프트웨어 신뢰성 시험은 소프트웨어 코드가 일으킬 수 있는 결함을 사전에 식별하여 제거 하기 위한 시험으로 무기체계 내장형 소프트웨어의 신뢰성 시험은 정적(Static)시험과 동적(Dynamic)시험으로 구분되어 수행되고 있다.The software reliability test is a test to identify and remove defects that may occur in the software code in advance. The reliability test of the weapon system embedded software is divided into a static test and a dynamic test.

소프트웨어 정적시험은 소프트웨어를 실행하지 않은 상태에서 잠재적인 결함을 검출하는 시험으로 코딩규칙 검증, 취약점 점검, 소스코드 메트릭 점검을 수행한다.The software static test is a test that detects potential defects in the state of not executing the software, and performs coding rule verification, vulnerability check, and source code metric check.

또한, 소프트웨어 동적시험은 소프트웨어 요구사항 및 구조를 기반으로 소프트웨어를 실행하면서 기능의 정상 작동 여부를 확인하는 시험이다.In addition, the software dynamic test is a test that checks whether a function works normally while executing the software based on the software requirements and structure.

무기체계 소프트웨어는 개발단계에서 독립적인 조직에 의해 소프트웨어 신뢰성 시험이 충분히 수행되지 않아 잠재적인 결함을 포함한 채 야전 배치 및 운용되고 있는 실정이다. Weapon system software is being deployed and operated in the field, including potential defects, because software reliability tests have not been sufficiently performed by an independent organization during the development stage.

소프트웨어 소스코드 분석을 통해 잠재된 품질결함을 식별 및 제거하여 장비의 신뢰도 제고를 위한 소프트웨어 신뢰성 시험 필요성이 대두되고 있다.The need for software reliability testing to improve the reliability of equipment by identifying and removing potential quality defects through software source code analysis is emerging.

무기체계는 체계개발 및 시험평가를 통해 주요 기능 및 성능은 검증하나, 소스코드 분석을 통한 소프트웨어 품질검증 활동은 미흡한 실정이다. 따라서, 국방 무기체계 소프트웨어 개발에 있어 정적 및 동적 시험은 검증이 필요하다.The weapon system verifies its main functions and performance through system development and test evaluation, but software quality verification activities through source code analysis are insufficient. Therefore, in the development of defense weapon system software, static and dynamic tests need to be verified.

무기체계 소프트웨어 연구개발 단계 즉, 소프트웨어 구현 단계, 개발시험평가(DT) 단계, 규격화 단계에서는 전담부서에서 소프트웨어 신뢰성 시험이 수행되고 있다.In the weapon system software R&D stage, that is, the software implementation stage, the development test and evaluation (DT) stage, and the standardization stage, a software reliability test is performed by a dedicated department.

그러나, 양산 단계에서는 아직까지 소프트웨어 신뢰성 시험 수행이 미흡한 실정이다. 특히, 무기체계 성능이 개량된 장비에서 재사용되는 소프트웨어에 대해서는 소프트웨어 신뢰성 시험 절차와 방법이 확립되지 않은 실정이다.However, in the mass production stage, it is still insufficient to perform software reliability tests. In particular, software reliability test procedures and methods have not been established for software reused in equipment with improved weapon system performance.

일반적으로 성능개량 소프트웨어는 기존의 기능과 성능이 입증된 소프트웨어를 모듈이나 함수 단위로 재사용하고, 이에 추가 요구사항에 대한 기능을 신규 개발하게 된다. In general, performance improvement software reuses existing functions and software with proven performance in units of modules or functions, and develops new functions for additional requirements.

성능 개량 소프트웨어를 신규 개발 소프트웨어로 고려하여 신뢰성 시험을 수행할 경우 시간과 비용이 중복하여 들어가게 되는 문제점이 있다.There is a problem in that time and cost are overlapped when the reliability test is performed by considering the performance improvement software as a newly developed software.

따라서, 성능 개량 소프트웨어의 경우, 재사용 소프트웨어, 개조 소프트웨어 및 신규 소프트웨어를 구분하여 기능과 중요성 등을 종합적으로 고려하여 신뢰성 시험 대상과 범위를 선정하여 시험을 수행할 필요가 있다.Therefore, in the case of performance improvement software, it is necessary to perform the test by selecting a reliability test object and range by comprehensively considering functions and importance by classifying reuse software, remodeling software, and new software.

본 발명은 상기와 같은 문제점을 해결하기 위해, 성능 개량 무기 체계를 위한 위험도 기반 재사용 소프트웨어의 신뢰성 시험 시스템을 제공하는데 그 목적이 있다.An object of the present invention is to provide a reliability test system of risk-based reuse software for a weapon system with improved performance in order to solve the above problems.

본 발명의 일 측면에 따르면, 하나 이상의 함수를 포함하는 신규 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제1 기준값이 저장된 제1 데이터 베이스부; 하나 이상의 함수를 포함하는 재사용 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제2 기준값이 저장된 제2 데이터 베이스부; 신규 소프트웨어인 경우, 제1 기준값에 기초하여 신규 소프트웨어의 위험 등급을 산출하고, 재사용 소프트웨어인 경우, 제1 기준값 및 제2 기준값 중 적어도 하나에 기초하여 재사용 소프트웨어의 위험 등급을 산출하도록 마련된 산출부를 포함하며, 재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함하며, 산출부는 함수 별로 위험 등급을 각각 산출하도록 마련되고, 산출부는 수정 함수인 경우 제2 기준값에 기초하여 위험 등급을 산출하도록 마련되고, 추가된 신규 함수인 경우 제1 기준값에 기초하여 위험 등급을 산출하도록 마련된, 소프트웨어의 신뢰성 시험 시스템.소프트웨어의 신뢰성 시험 시스템을 제공한다.According to an aspect of the present invention, a first database unit storing a plurality of first reference values for evaluating a risk level of new software including one or more functions; A second database unit storing a plurality of second reference values for evaluating a risk level of reused software including one or more functions; In the case of new software, the risk level of the new software is calculated based on the first reference value, and in the case of reused software, the risk level of the reused software is calculated based on at least one of the first reference value and the second reference value. In addition, the reuse software includes at least one of a modified function modified from an existing function and a new function added, and the calculation unit is provided to calculate a risk level for each function, and the calculation unit is based on a second reference value in the case of a modified function. Thus, a software reliability test system and a software reliability test system are provided, which are provided to calculate the risk level and, in the case of an added new function, to calculate the risk level based on a first reference value.

본 발명의 다른 측면에 따르면, 하나 이상의 함수를 포함하는 신규 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제1 기준값이 저장되고, 하나 이상의 함수를 포함하는 재사용 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제2 기준값이 저장된 데이터 베이스부; 재사용 소프트웨어인 경우, 제1 기준값 및 제2 기준값 중 적어도 하나에 기초하여 재사용 소프트웨어의 위험 등급을 산출하도록 마련된 산출부를 포함하며, 재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함하며, 산출부는 함수 별로 위험 등급을 각각 산출하도록 마련되고, 산출부는 수정 함수인 경우, 제2 기준값에 기초하여 위험 등급을 산출하도록 마련되고, 추가된 신규 함수인 경우 제1 기준값에 기초하여 위험 등급을 산출하도록 마련된, 소프트웨어의 신뢰성 시험 시스템을 제공한다.According to another aspect of the present invention, a plurality of first reference values for evaluating the risk level of new software including one or more functions are stored, and a plurality of first reference values for evaluating the risk level of reused software including one or more functions are stored. 2 a database unit in which a reference value is stored; In the case of reused software, it includes a calculation unit provided to calculate a risk level of the reused software based on at least one of a first reference value and a second reference value, and the reused software includes any of a modified function correcting an existing function and an added new function. It includes one or more, and the calculation unit is provided to calculate the risk level for each function, the calculation unit is provided to calculate the risk level based on the second reference value in case of a modified function, and in the case of an added new function, the first reference value is Provides a software reliability test system that is designed to calculate a risk class based on it.

본 발명의 또 다른 측면에 따르면, 전술한 소프트웨어의 신뢰성 시험 시스템을 이용하여, 신규 소프트웨어 및 재사용 소프트웨어의 위험 등급을 산출하는 단계를 포함하는, 소프트웨어의 신뢰성 시험 방법을 제공한다.According to another aspect of the present invention, there is provided a software reliability testing method comprising the step of calculating a risk level of new software and reused software using the above-described software reliability testing system.

본 발명에 따르면, 성능개량 무기체계 소프트웨어의 신뢰성 시험을 수행하기 위해서 신규 소프트웨어와 재사용 소프트웨어의 서로 다른 기준값이 적용된 기술적 위험도를 정량화 하고, 체계 영향도 및 기술적 위험도에 따라서 신뢰성 시험 평가의 범위와 대상을 선정함으로써 보다 용이하게 신뢰성 시험을 수행할 수 있는 효과가 있다.According to the present invention, in order to perform the reliability test of the performance-improved weapon system software, the technical risk to which different reference values of the new software and the reused software are applied is quantified, and the scope and target of the reliability test evaluation are determined according to the system impact and the technical risk. By selecting, there is an effect that the reliability test can be performed more easily.

도 1은 본 발명의 일 실시예에 따른 소프트웨어의 신뢰성 시험 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 제1 데이터 베이스부를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 제2 데이터베이스 부를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 함수의 사용빈도에 대한 제1 기준값(제2 기준값)을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 함수의 결함 제어 가능성에 대한 제1 기준값(제2 기준값)을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 산출부를 설명하기 위해 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 결정부를 설명하기 위해 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 결정부를 통해 나타난 시험 수행 범위 및 시험 대상 수량을 설명하기 위해 나타낸 표이다.
1 is a configuration diagram of a software reliability test system according to an embodiment of the present invention.
2 is a diagram illustrating a first database unit according to an embodiment of the present invention.
3 is a diagram showing a second database unit according to an embodiment of the present invention.
4 is a diagram showing a first reference value (a second reference value) for a frequency of use of a function according to an embodiment of the present invention.
5 is a diagram showing a first reference value (a second reference value) for a defect control possibility of a function according to an embodiment of the present invention.
6 is a diagram illustrating a calculation unit according to an embodiment of the present invention.
7 is a diagram illustrating a determination unit according to an embodiment of the present invention.
8 is a table showing a test execution range and a quantity of a test subject indicated through a determination unit according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예를 상세히 설명하도록 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings. Prior to this, terms or words used in the specification and claims should not be construed as being limited to their usual or dictionary meanings, and the inventors appropriately explain the concept of terms in order to explain their own invention in the best way. Based on the principle that it can be defined, it should be interpreted as a meaning and concept consistent with the technical idea of the present invention.

또한, 도면 부호에 관계없이 동일하거나 대응되는 구성요소는 동일 또는 유사한 참조번호를 부여하고 이에 대한 중복 설명은 생략하기로 하며, 설명의 편의를 위하여 도시된 각 구성 부재의 크기 및 형상은 과장되거나 축소될 수 있다.In addition, regardless of the reference numerals, the same or corresponding components are given the same or similar reference numbers, and redundant descriptions thereof will be omitted, and the size and shape of each component member shown for convenience of explanation are exaggerated or reduced. Can be.

따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.Accordingly, the embodiments described in the present specification and the configurations shown in the drawings are only the most preferred embodiment of the present invention, and do not represent all the technical spirit of the present invention. It should be understood that there may be equivalents and variations.

본 발명은 위험도 기반의 신규 및 재사용 소프트웨어의 신뢰성 시험 시스템 및 시험 방법에 관한 것이다.The present invention relates to a risk-based reliability test system and test method for new and reused software.

먼저, 소프트웨어의 신뢰성 시험이란, 소프트웨어가 일으킬 수 있는 잠재적인 결함을 사전에 식별하기 위한 시험을 말하며, 정적 시험과 동적 시험으로 구분된다.First, the software reliability test refers to a test to identify potential defects that may occur in the software in advance, and is divided into a static test and a dynamic test.

본 발명은, 동적시험이 필요한 소프트웨어 내의 함수의 개수와 시험수행 종류 및 범위를 선정하도록 마련된 신뢰성 시험 시스템 및 시험 방법을 제공한다.The present invention provides a reliability test system and test method provided to select the number of functions in software that require dynamic testing, and the type and range of test execution.

여기서, 소프트웨어 동적(Dynamic) 시험이란, 소프트웨어를 실제 하드웨어에 탑재한 상태에서 소프트웨어 코드 실행률(Coverage)을 점검하는 것을 의미한다.Here, the software dynamic test means checking the software code coverage while the software is actually mounted on the hardware.

도 1은 본 발명의 일 실시예에 따른 신뢰성 시험 시스템(10)의 구성도이다.1 is a configuration diagram of a reliability test system 10 according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 신뢰성 시험 시스템(10)은, 제1 데이터 베이스부(200), 제2 데이터 베이스부(300), 산출부(400) 및 결정부(500)를 포함한다.Referring to FIG. 1, the reliability test system 10 of the present invention includes a first database unit 200, a second database unit 300, a calculation unit 400, and a determination unit 500.

구체적으로, 제1 데이터 베이스부(200)에는, 적어도 하나 이상의 함수를 포함하는 신규 소프트웨어(110)의 위험 등급을 평가하기 위한 복수 개의 제1 기준값이 저장될 수 있다.Specifically, a plurality of first reference values for evaluating the risk level of the new software 110 including at least one function may be stored in the first database unit 200.

여기서, 상기 신규 소프트웨어(110)란, 새로운 기능이나 요구사항을 추가 하기 위해 신규로 구현된 함수를 포함하는 소프트웨어를 의미한다.Here, the new software 110 means software including a newly implemented function to add a new function or requirement.

또한, 제2 데이터 베이스부(300)에는, 적어도 하나 이상의 함수를 포함하는 재사용 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제2 기준값이 저장될 수 있다.In addition, the second database unit 300 may store a plurality of second reference values for evaluating the risk level of reused software including at least one function.

상기 산출부(300)는, 신규 소프트웨어인 경우, 제1 기준값에 기초하여 신규 소프트웨어의 위험 등급을 산출하고, 재사용 소프트웨어인 경우, 제1 기준값 및 제2 기준값 중 적어도 하나에 기초하여 재사용 소프트웨어의 위험 등급을 산출하도록 마련될 수 있다.In the case of new software, the calculation unit 300 calculates a risk level of the new software based on a first reference value, and in the case of reused software, the risk of the reused software is based on at least one of a first reference value and a second reference value. It can be arranged to calculate a grade.

여기서, 상기 재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함할 수 있다.Here, the reuse software may include at least one of a modified function modified from an existing function and a new function added.

상기 산출부(300)는, 함수 별로 위험 등급을 각각 산출하도록 마련된다.The calculation unit 300 is provided to calculate a risk level for each function.

상기 산출부(300)는, 수정 함수인 경우 제2 기준값에 기초하여 위험 등급을 산출하도록 마련되고, 추가된 신규 함수인 경우 제1 기준값에 기초하여 위험 등급을 산출하도록 마련될 수 있다. The calculation unit 300 may be provided to calculate a risk level based on a second reference value in case of a correction function, and may be provided to calculate a risk level based on a first reference value in case of an added new function.

본 문서에서, 상기 재사용 소프트웨어(120)란, 신규 소프트웨어(110)에 포함된 함수가 신뢰성 시험을 통과하여 기능과 성능이 입증된 상태에서 재사용되는 소프트웨어를 의미할 수 있다. 즉, 소정의 시스템에서 사용된 후, 다른 시스템에서 재사용되는 소프트웨어를 의미할 수 있다.In this document, the reuse software 120 may refer to software that is reused in a state in which functions and performances have been proven by passing a reliability test in the new software 110. That is, it may mean software that is used in a predetermined system and then reused in another system.

따라서, 소정의 시스템에서 사용된 신규 소프트웨어 및 신규 소프트웨어에 포함되는 신규 함수들이 소정의 다른 시스템에서 사용되는 경우, 신규 소프트웨어 및 신규 함수는, 기존 소프트웨어 및 기존 함수를 의미할 수 있다.Accordingly, when new software used in a given system and new functions included in the new software are used in other predetermined systems, the new software and new functions may mean existing software and existing functions.

또한, 상기 재사용 소프트웨어(120)란, 개발 프로세스를 거치면서 기능과 성능이 입증된 상태의 기존 소프트웨어에 포함된 기존 함수가 수정되거나, 기존 소프트웨어에 신규 함수가 추가되어 재사용되는 소프트웨어를 의미할 수 있다. 즉, 신규 소프트웨어가 소정의 시스템에서 입증되어 사용된 후, 추가 개발되어 다른 시스템에서 재사용되는 소프트웨어를 의미한다.In addition, the reuse software 120 may mean software that is reused by modifying an existing function included in an existing software whose function and performance are proven through a development process, or adding a new function to the existing software. . That is, after the new software is proven and used in a predetermined system, it means software that is further developed and reused in another system.

다시 말해, 재사용 소프트웨어(120)는, 기존 시험평가를 통해 검증되었으므로, 신규로 작성된 신규 소프트웨어(110)에 비해 낮은 기준의 시험평가를 수행할 수 있고, 신규 소프트웨어는 면밀한 검증이 필요하므로 기준을 엄격하게 수립한 높은 기준의 시험평가를 수행하도록 마련된다.In other words, since the reusable software 120 has been verified through the existing test evaluation, it can perform a test evaluation of a lower standard compared to the newly created new software 110, and the new software requires strict verification. It is prepared to carry out a test evaluation of a high standard that has been established.

또한, 본 문서에서, 신규 소프트웨어는 재사용되기 전 초기 상태의 소프트웨어를 의미할 수 있으며, 신규 함수는 기능과 성능을 입증하기 위한 시험 평가가 필요한 함수를 의미할 수 있다.In addition, in this document, new software may refer to software in an initial state before being reused, and new function may refer to a function that needs test evaluation to prove its function and performance.

또한, 재사용 소프트웨어는 신규 소프트웨어가 재사용된 소프트웨어를 의미할 수 있고, 기존 함수는 신규 함수가 소정의 시험 평가를 거쳐 기능과 성능이 입증되어 시험 평가가 필요 없는 함수를 의미할 수 있으며, 추가된 신규 함수는 신규 소프트웨어에 포함된 신규 함수 이외에 추가된 신규 함수를 의미할 수 있다.In addition, reusable software can mean software in which new software has been reused, and existing functions can mean functions that do not require test evaluation because the new function has been proven to function and performance through a predetermined test evaluation. The function may mean a new function added in addition to the new function included in the new software.

상기 신규 소프트웨어는, 복수 개의 신규 함수를 포함할 수 있다.The new software may include a plurality of new functions.

상기 재사용 소프트웨어는, 기존 함수(신규 소프트웨어에서 사용된 신규 함수), 기존 함수를 수정한 수정 함수 및 추가된 신규 함수를 포함할 수 있다.The reused software may include an existing function (a new function used in new software), a modified function obtained by modifying the existing function, and an added new function.

예를 들어, 재사용 소프트웨어는, 기존 함수 및 수정 함수를 포함하거나, 수정 함수 만을 포함하거나, 수정 함수 및 추가된 신규 함수를 포함할 수 있다.For example, the reuse software may include an existing function and a modification function, only a modification function, or a modification function and an added new function.

따라서, 재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함할 수 있다.Accordingly, the reuse software may include any one or more of a modified function modified from an existing function and a new function added.

본 발명에서는, 효율적인 평가를 위해, 상기 재사용 소프트웨어에서 위험 등급을 평가 받는 대상은 기존 함수를 제외한, 수정 함수 및 추가된 신규 함수이다.In the present invention, for efficient evaluation, targets to be evaluated for risk rating in the reused software are modified functions and added new functions, excluding existing functions.

즉, 기존 함수는 개발 프로세스 단계에서 기능과 성능이 입증된 상태이므로, 신뢰성 시험을 수행할 경우 시간과 비용이 중복하여 들어가게 되므로 이를 제외함으로써, 보다 효율적으로 신뢰성 시험을 수행하기 위한 신뢰성 시험의 대상과 범위를 선정할 수 있게 된다. In other words, since the functions and performance of the existing functions have been proven at the stage of the development process, time and cost overlap when performing a reliability test. You will be able to select a range.

도 2 및 도 3은 본 발명의 일 실시예에 따른 제1 및 제2 데이터베이스 부를 나타낸 도면이다.2 and 3 are diagrams illustrating first and second database units according to an embodiment of the present invention.

도 2 및 도 3을 참조하면, 상기 제1 및 제2 데이터베이스 부는, 위험 등급을 산출하기 위한 복수 개의 위험 요소를 각각 포함하고, 각각의 위험 요소는 복수의 단계로 구분되는 위험 수준을 포함하며, 각각의 위험 수준에는 위험 수준 별로 소정의 제1 및 제2 기준값이 각각 기 설정될 수 있다.2 and 3, the first and second database units each include a plurality of risk factors for calculating a risk level, and each risk factor includes a risk level divided into a plurality of stages, For each risk level, predetermined first and second reference values may be preset for each risk level.

여기서, 상기 제1 및 제2 데이터베이스 부는, 방사청 개발 매뉴얼, 소스코드 메트릭(Code Metrics)을 참고하여 작성될 수 있다.Here, the first and second database units may be created with reference to the radiation agency development manual and source code metrics.

상기 위험 요소는, 소프트웨어의 기술적 위험도를 구성하는 평가지표로는, 함수 간의 상호관계(Number of Called Functions), 함수의 난이도, 함수의 순환 복잡도(Cyclomatic Complexity)를 포함하며, 소프트웨어의 체계 영향도를 구성하는 평가지표로는 함수의 사용빈도 및 함수의 결함 제어 가능성을 포함한다.The risk factors are evaluation indicators constituting the technical risk of the software, including the number of called functions, the difficulty of the function, the cyclic complexity of the function, and the system impact of the software. Constituent evaluation indicators include the frequency of use of the function and the possibility of controlling the defects of the function.

상기 위험 수준은 심각, 높은, 보통, 낮음 및 없음으로 구분될 수 있다.The risk level can be divided into severe, high, moderate, low and none.

상기 각각의 위험 수준은 위험 수준에 따라 기 설정된 기준 점수를 포함한다.Each of the above risk levels includes a reference score preset according to the risk level.

예를 들어, 심각은 9점, 높음은 5점, 보통은 3점, 낮음은 1점, 없음은 0 점으로 차등하여 기준 점수가 설정될 수 있으나, 이에 한정되는 것은 아니다.For example, a criterion score may be set by differentiating 9 points for severity, 5 points for high, 3 points for normal, 1 point for low, and 0 points for none, but is not limited thereto.

여기서, 상기 함수 간의 상호관계는, 특정된 하나의 함수가 다른 함수를 호출하는 함수 개수를 의미하며, 함수 개수에 따라 위험 수준이 구분된다.Here, the correlation between the functions means the number of functions in which one specified function calls another function, and the risk level is classified according to the number of functions.

또한, 상기 함수의 난이도는, 유사과제 수행실적 개수를 의미하며, 수행실적 개수에 따라 위험 수준을 구분한다.In addition, the difficulty level of the function refers to the number of performances of similar tasks, and the risk level is classified according to the number of performances.

여기서, 유사과제란, 유사한 요구사항이나 기능을 가지고 있는 무기체계 사업을 의미하며, 일반적으로 유사한 특성을 가진 무기체계의 경우 많은 기능이나 요구 사항이 동일하기 때문에 유사과제에 기반해서 소프트웨어를 개발할 경우, 그 구현이 용이할 수 있다.Here, a similar task means a weapon system project with similar requirements or functions. In general, in the case of a weapon system with similar characteristics, many functions or requirements are the same, so when developing software based on a similar task, Its implementation can be easy.

또한, 함수의 복잡도는, 함수의 순환복잡도를 의미하며, 순환복잡도의 수치(값)에 따라 위험 수준을 구분한다.In addition, the complexity of the function means the cyclical complexity of the function, and the risk level is classified according to the numerical value (value) of the cyclical complexity.

또한, 함수의 사용빈도는, 함수가 사용되는 빈도를 의미하며 사용 빈도 즉, 함수의 결함 발생 빈도에 따라 위험 수준을 구분하고, 함수의 결함 제어 가능성은 함수에 결함 발생 시, 함수의 제어 수준에 따라 위험 수준을 구분한다.In addition, the frequency of use of a function refers to the frequency of use of the function, and the risk level is classified according to the frequency of use, that is, the frequency of defects in the function. Differentiate the risk level accordingly.

상기 신규 소프트웨어의 신규 함수, 재사용 소프트웨어의 수정 함수 및 추가된 신규 함수는 각각 소정의 분석 도구(tool)을 통해 산출된 제1 및 제2 측정 값 및 제1 내지 제3 지표 값을 가질 수 있다.The new function of the new software, the modified function of the reused software, and the added new function may each have first and second measurement values and first to third index values calculated through a predetermined analysis tool.

여기서, 상기 소정의 분석 도구(tool)는 일반적으로 함수의 상호관계 및 함수의 순환 복잡도를 분석하기 위한 도구라면 사용가능 하다.Here, the predetermined analysis tool may be generally used as long as it is a tool for analyzing interrelationships of functions and cyclical complexity of functions.

특히, 상기 분석 도구는, 상호관계와 복잡도를 편리하게 측정하기 위해 사용될 수 있으며, 전술한 기준 점수는 무기체계 소프트웨어 개발 및 관리 지침 내의 메트릭(metric)을 활용할 수 있다.In particular, the analysis tool may be used to conveniently measure interrelationships and complexity, and the above-described reference score may utilize a metric in the weapon system software development and management guidelines.

이러한 메트릭들을 측정하는 기능은 일반적인 상용 신뢰성 시험도구에서 지원될 수 있다.The ability to measure these metrics can be supported by general commercial reliability testing tools.

상기 사용빈도, 결함 제어 가능성(영향도) 및 난이도는 사업 특성을 고려하여 수정될 수 있다.The frequency of use, defect control possibility (impact level), and difficulty may be modified in consideration of business characteristics.

또한, 상기 난이도는 사업특성을 고려하여 유사과제 외에 다른 특성으로 수정될 수 있다. In addition, the difficulty level may be modified to other characteristics other than similar tasks in consideration of the business characteristics.

상기 각각의 함수(신규 함수, 수정 함수, 추가된 신규 함수)는 제1 지표 값에 따라 함수의 사용빈도에 대한 기준 점수가 부여될 수 있고, 제2 지표 값에 따라 함수의 결함 제어 가능성에 대한 기준 점수가 부여되며, 제3 지표 값에 따라 함수의 난이도에 대한 기준 점수가 부여되고, 제1 측정 값에 따라 함수의 상호관계에 대한 기준 점수가 부여되며, 제2 측정 값에 따라 함수의 순환 복잡도에 대한 기준 점수가 부여되도록 마련될 수 있다.Each of the above functions (new function, modified function, added new function) may be assigned a reference score for the frequency of use of the function according to the first index value, and the defect control possibility of the function may be determined according to the second index value. A reference score is given, a reference score for the difficulty of a function is given according to the third index value, a reference score is given for the interrelationship of the function according to the first measured value, and the function is cycled according to the second measured value. It can be arranged to give a criterion score for complexity.

이 때, 상기 산출부(300)는 각각의 제1 및 제2 측정 값 및 제1 내지 제3 지표 값에 대응하는 각각의 제1 및 제2 기준값을 선택하고, 선택된 제1 및 제2 기준값에 해당하는 각각의 위험 수준의 기준 점수를 합산하여 위험 등급을 산출하도록 마련될 수 있다.At this time, the calculation unit 300 selects each of the first and second measurement values and each of the first and second reference values corresponding to the first to third index values, and the selected first and second reference values It can be arranged to calculate the risk class by summing the reference scores of each of the corresponding risk levels.

보다 구체적으로, 도 4 및 도 5는 함수의 사용빈도 및 함수의 결함 제어 가능성에 대한 제1 기준값(제2 기준값)을 나타낸 도면이다.More specifically, FIGS. 4 and 5 are diagrams showing a first reference value (a second reference value) for the frequency of use of the function and the possibility of controlling defects of the function.

먼저 도 4를 참조하면, 함수의 사용 빈도(함수의 결함 발생 빈도)의 위험 수준을 구분하기 위한 제1 기준값은, 함수의 사용빈도(함수의 결함 발생 빈도)가 작동간 지속적으로 발생인 경우 E4로 설정되고, 작동간 빈번히 발생인 경우 E3로 설정되고, 작동간 드물게 발생인 경우 E2로 설정되고, 작동간 매우 드물게 발생인 경우 E1으로 설정되고, 작동간 발생빈도 거의 없음인 경우 E0로 설정된다.First, referring to FIG. 4, the first reference value for classifying the risk level of the frequency of use of the function (the frequency of occurrence of defects of the function) is E4 when the frequency of use of the function (the frequency of occurrence of defects of the function) is continuously occurring between operations. If it occurs frequently between operations, it is set to E3, if it occurs infrequently between operations, it is set to E2, if it occurs very rarely between operations, it is set to E1, and if it occurs rarely between operations, it is set to E0. .

상기와 같이, E0 내지 E4로 설정된 상태에서, E4는 위험 요소의 위험 수준에서 심각에 해당되는 기준으로 설정될 수 있고, E3는 높음, E2는 보통, E1은 낮음, E0는 없음에 해당하는 기준으로 각각 설정될 수 있다.As described above, in the state set to E0 to E4, E4 may be set as a criterion corresponding to severity in the risk level of the risk factor, and E3 is high, E2 is normal, E1 is low, E0 is not Each can be set to.

이에 따라 기준 점수는 각각 9점, 5점, 3점, 1점, 0점이 부여될 수 있다.Accordingly, 9 points, 5 points, 3 points, 1 point, and 0 points may be assigned to the reference points, respectively.

예를 들어, 소정의 함수의 사용 빈도에 대한 제1 지표 값이 작동간 드물게 발생(E2)인 경우, 위험 수준은 보통으로 기준 점수로서 3점이 부여될 수 있다.For example, if the first index value for the frequency of use of a given function is rarely occurring between operations (E2), the risk level may be usually given 3 points as a reference score.

도 5를 참조하면, 상기 함수의 결함 제어 가능성의 위험 수준을 구분하기 위한 제1 기준값은, 기능 복구 불가능인 경우 C3로 설정되고, 기능수행에 일부 제한됨은 C2로 설정되고, 전원리셋 등으로 기능 복구는 C1으로 설정되고, 기능수행 영향 없음은 C0로 설정된다.Referring to FIG. 5, the first reference value for classifying the risk level of the possibility of defect control of the function is set to C3 when the function is not recoverable, and is set to C2 when the function is partially restricted, and the function is set to C2. Recovery is set to C1, and no effect of function performance is set to C0.

상기와 같이, C0 내지 C3로 설정된 상태에서, C3는 위험 요소의 위험 수준에서 심각에 해당되는 기준으로 설정될 수 있고, C2는 높음, C1은 보통, C0는 낮음에 해당하는 기준으로 각각 설정될 수 있다. 여기서, 없음 수준은 제외된다.As described above, in the state set to C0 to C3, C3 may be set as a criterion corresponding to severity at the risk level of a risk factor, and C2 may be set as a criterion corresponding to high, C1 is normal, and C0 is low. I can. Here, the none level is excluded.

이에 따라 기준 점수는 각각 9점, 5점, 3점, 1점, 0점이 부여될 수 있다.Accordingly, 9 points, 5 points, 3 points, 1 point, and 0 points may be assigned to the reference points, respectively.

예를 들어, 소정의 함수의 결함 제어 가능성에 대한 제2 지표 값이 기능수행 영향 없음(C0)인 경우, 위험 수준은 낮음으로 기준 점수로서 1점이 부여될 수 있다.For example, if the second index value for the defect control possibility of a predetermined function is no effect of function performance (C0), the risk level is low, and 1 point may be given as a reference score.

또한, 함수의 난이도의 위험 수준을 구분하기 위해 설정된 각각의 위험수준 즉, 심각, 높음, 보통, 낮음, 없음에 따른 제1 기준값은, 신규과제, 유사과제 1개, 유사과제 2~3개, 유사과제 4개, 유사과제 5개 이상으로 각각 설정될 수 있다. In addition, the first reference value according to each risk level, that is, Severe, High, Normal, Low, None, which is set to classify the risk level of the difficulty level of the function, is a new task, one similar task, 2 to 3 similar tasks, It can be set to 4 similar tasks and 5 or more similar tasks, respectively.

예를 들어, 소정의 함수의 난이도에 대한 제3 지표 값으로 유사 과제가 3개인 경우, 위험 수준은 보통으로 기준 점수로서 3점이 부여될 수 있다.For example, when there are three similar tasks as the third index value for the difficulty of a predetermined function, the risk level may be generally assigned three points as a reference score.

여기서, 함수의 사용빈도, 함수의 결함 제어 가능성 및 함수의 난이도에 대한 제1 및 제2 기준값은 동일하게 설정될 수 있다.Here, the first and second reference values for the frequency of use of the function, the possibility of controlling the defect of the function, and the difficulty of the function may be set equally.

이에 더하여, 상기 함수 간의 상호관계에 설정된 각각의 위험수준 즉, 심각, 높음, 보통, 낮음, 없음에 따른 제1 기준값은, 15이상, 11~14, 7~10, 3~6, 2 이하로 각각 설정될 수 있다.In addition, the first reference value according to each risk level set in the correlation between the functions, that is, severe, high, normal, low, and none, is 15 or more, 11 to 14, 7 to 10, 3 to 6, 2 or less. Each can be set.

반면, 제2 기준값은, 8이상, 6~7, 4~5, 2~3, 1 이하로 각각 설정될 수 있다. On the other hand, the second reference value may be set to 8 or more, 6 to 7, 4 to 5, 2 to 3, and 1 or less, respectively.

또한, 상기 함수의 순환 복잡도에 설정된 각각의 위험 수준 즉, 심각, 높음, 보통, 낮음, 없음에 따른 제1 기준값은, 26이상, 21~25, 11~20, 5~10, 4이하로 각각 설정될 수 있다. In addition, the first reference value according to each risk level set in the cyclical complexity of the function, that is, severe, high, medium, low, and none, is 26 or more, 21 to 25, 11 to 20, 5 to 10, and 4 or less, respectively. Can be set.

반면, 제2 기준값은 13이상, 11~12, 6~10, 3~5, 2 이하로 각각 설정될 수 있다.On the other hand, the second reference value may be set to 13 or more, 11 to 12, 6 to 10, 3 to 5, and 2 or less, respectively.

전술한 상기 함수 간의 상호관계와 순환 복잡도에서, 제1 기준값은 신규 함수 및 추가된 신규 함수의 위험도 분석 기준으로서 사용될 수 있고, 제2 기준값은 수정 함수의 위험도 분석 기준으로서 사용될 수 있다.In the above-described correlation and cyclical complexity between the functions, the first reference value may be used as a risk analysis criterion for a new function and an added new function, and the second reference value may be used as a risk analysis criterion for the modified function.

예를 들어, 신규 함수의 함수 간의 상호 관계 제1 측정 값이 13이고, 순환 복잡도에 대한 제2 측정값이 13인 경우, 각각 높음 및 보통 수준으로 기준 점수가 각각 5점, 3점이 부여될 수 있다.For example, if the first measure of the correlation between the functions of the new function is 13 and the second measure of cyclic complexity is 13, 5 points and 3 points can be given respectively for the high and medium levels, respectively. have.

이에 더하여, 상기 산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때, 수정 함수는, 기존 함수의 함수 간의 상호관계에 대한 제1 측정 값과 수정 함수의 함수 간의 상호관계에 대한 제1 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련될 수 있다.In addition, when the calculation unit calculates the risk level of the correction function based on the second reference value, the correction function is a first measurement value for the correlation between functions of the existing function and the correlation between the function of the correction function. Based on the difference value of the 1 measured value, a second reference value corresponding to the difference value may be selected, and a reference score of a risk level for the selected second reference value may be provided.

예를 들면, 수정 함수의 상호관계에 대한 기준 점수를 부여하기 위해서는, 기존 함수의 제1 측정값과 수정 함수의 제1 측정값이 요구된다.For example, in order to give a reference score for the correlation of the correction function, the first measurement value of the existing function and the first measurement value of the correction function are required.

일 예로, 기존 함수의 제1 측정값이 15이고, 수정 함수의 제1 측정값이 20인 경우, 수정 함수의 제1 측정값과 기존 함수의 제1 측정값의 차이 값인 5를 기준으로, 차이 값인 5에 대응하는 제2 기준값 즉, 보통 수준인 6~10이 선택되고, 이에 따라 기준 점수로서 3점이 부여될 수 있다.For example, if the first measurement value of the existing function is 15 and the first measurement value of the correction function is 20, the difference is based on 5, which is the difference between the first measurement value of the correction function and the first measurement value of the existing function. A second reference value corresponding to the value 5, that is, 6-10, which is a normal level, is selected, and accordingly, 3 points may be given as a reference score.

여기서, 수정 함수의 제1 측정값은 일반적으로 기능이 추가되는 경우가 많기 때문에 증가하게 되지만, 기존 함수의 일부만 사용하는 방식으로 구현을 할 경우 그 값이 줄어들 수도 있다. 이러한 경우, 상호관계 및 복잡도 값이 줄어들게 되어 위험(가능성)이 줄어들기 때문에 신뢰성 시험 필요성이 줄어들 수 있다.Here, the first measured value of the correction function is generally increased because a function is added in many cases, but the value may be decreased if the value is implemented in a manner that uses only a part of the existing function. In this case, the need for reliability testing can be reduced because the risk (probability) is reduced as the correlation and complexity values are reduced.

또한, 산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때, 수정 함수는, 기존 함수의 순환 복잡도에 대한 제2 측정 값과 수정 함수의 순환 복잡도에 대한 제2 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련될 수 있다.In addition, when the calculation unit calculates the risk level of the correction function based on the second reference value, the correction function is a difference between the second measurement value for the cyclical complexity of the existing function and the second measurement value for the cyclical complexity of the corrected function. Based on, a second reference value corresponding to the difference value may be selected, and a reference score of a risk level for the selected second reference value may be provided.

예를 들면, 수정 함수의 순환 복잡도에 대한 기준 점수를 부여하기 위해서는, 기존 함수의 제2 측정값과 수정 함수의 제2 측정값이 요구된다.For example, in order to give a reference score for the cyclical complexity of the correction function, the second measurement value of the existing function and the second measurement value of the correction function are required.

일 예로, 기존 함수의 제2 측정값이 10이고, 수정 함수의 제2 측정값이 14인 경우, 수정 함수의 제2 측정값과 기존 함수의 제2 측정값의 차이 값인 4를 기준으로, 차이 값인 4에 대응하는 제2 기준값 즉, 낮음 수준인 3~5가 선택되고, 이에 따라 기준 점수로서 1점이 부여될 수 있다.For example, if the second measurement value of the existing function is 10 and the second measurement value of the correction function is 14, the difference is based on 4, which is the difference between the second measurement value of the correction function and the second measurement value of the existing function. A second reference value corresponding to a value of 4, that is, a low level of 3 to 5, is selected, and accordingly, 1 point may be given as a reference score.

즉, 수정 함수는, 함수의 상호관계 및 복잡도를 평가할 때, 기존 함수를 수정함에 따라 증가된 증가 값(수정된 수정 값)에 대한 부분을 평가(분석)함으로써, 보다 효율적인 평가가 가능하게 된다.That is, when evaluating the interrelationship and complexity of the function, the correction function can be evaluated more efficiently by evaluating (analyzing) a portion for an increased value (corrected correction value) as the existing function is modified.

이러한 평가(분석)를 위해서, 제2 데이터 베이스부의 함수 간의 상호관계 및 함수의 순환 복잡도에 각각 설정된 소정의 제2 기준값은, 제1 데이터 베이스부의 함수 간의 상호관계 및 함수의 순환 복잡도에 각각 설정된 소정의 제1 기준값 보다 낮게 설정될 수 있다.For this evaluation (analysis), a predetermined second reference value respectively set for the correlation between the functions of the second database unit and the cyclic complexity of the function is a predetermined second reference value respectively set for the correlation between the functions of the first database unit and the cyclic complexity of the function. It may be set lower than the first reference value of.

상기 함수 간의 상호관계 및 함수의 순환 복잡도에 각각 설정된 소정의 제1 기준값은 소스코드 메트릭의 제한 값을 보통 수준의 값으로 선정하여 설정될 수 있으며, 재사용 소프트웨어의 위험도 분석을 위한 제2 기준값은 이에 대해 대략 40~60% 범위 또는 대략 50% 범위로 낮추어 설정할 수 있다. The first predetermined reference value respectively set for the correlation between the functions and the cyclical complexity of the function may be set by selecting the limit value of the source code metric as a value of a normal level, and the second reference value for risk analysis of the reuse software is thus It can be set in the range of approximately 40-60% or lower to approximately 50%.

전술한 바와 같이 설정된 각각의 위험도 분석 기준인 제1 및 제2 데이터베이스 부를 통해 산출부(400)에서 신규 소프트웨어 및 재사용 소프트웨어의 함수 별로 위험 요소의 위험 등급을 각각 산출할 수 있다.The calculation unit 400 may calculate the risk level of the risk factor for each function of the new software and the reused software through the first and second database units, which are the respective risk analysis criteria set as described above.

한편, 상기 결정부(500)는, 산출된 위험 등급에 따라, 함수 별로 시험 대상을 결정하도록 마련되고, 소정 함수가 시험 대상인 경우, 상기 함수의 시험 수행 종류를 결정하도록 마련될 수 있다.Meanwhile, the determination unit 500 may be provided to determine a test subject for each function according to the calculated risk level, and may be provided to determine a test execution type of the function when a predetermined function is a test subject.

상기 결정부(500)에서 결정된 시험 종류는, 분기 실행률 또는 문장 실행률 중 어느 하나일 수 있다.The test type determined by the determination unit 500 may be either a branch execution rate or a sentence execution rate.

도 6은, 본 발명의 일 실시예에 따른 산출부를 설명하기 위해 나타낸 도면, 도 7은 본 발명의 일 실시예에 따른 결정부를 설명하기 위해 나타낸 도면이다.6 is a diagram illustrating a calculation unit according to an exemplary embodiment of the present invention, and FIG. 7 is a diagram illustrating a determination unit according to an exemplary embodiment of the present invention.

도 6을 참조하면, 전술한 산출부(400)는, 각각의 함수에 대해 상호관계, 복잡도, 난이도, 사용빈도, 결함 제어 가능성의 각각에 대해 기준 점수를 산출하여 산출된 기준 점수를 합산 하여 위험 등급을 산출할 수 있다.6, the above-described calculation unit 400 calculates a reference score for each of the correlation, complexity, difficulty, use frequency, and defect control possibility for each function, and adds the calculated reference score to the risk. You can calculate the grade.

여기서, 도 7을 참조하면, 상기 결정부(500)는 함수 단위 별로 시험 대상을 결정하고, 시험 종류를 결정하기 위한 시험 대상 선정 매트릭스가 마련될 수 있다.Here, referring to FIG. 7, the determination unit 500 may determine a test target for each function unit, and a test target selection matrix for determining a test type may be provided.

상기 시험 대상 선정 매트릭스는, X축으로 체계 영향도를 나타내고, Y 축으로 기술적 위험도를 나타내도록 마련될 수 있다.The test subject selection matrix may be provided so that the X-axis represents the system impact and the Y-axis represents the technical risk.

즉, X축은, 함수의 결함 발생빈도와 함수의 결함 제어 가능성에 대해 산출된 각각의 기준 점수를 합산한 값을 나타낸다.That is, the X-axis represents a value obtained by summing each reference score calculated for the defect occurrence frequency of the function and the defect control possibility of the function.

또한, Y축은, 함수 간의 상호관계, 함수의 난이도, 함수의 복잡도에 대해 산출된 각각의 기준 점수를 합산한 값을 나타낸다.In addition, the Y-axis represents a value obtained by summing each of the reference scores calculated for the correlation between functions, the difficulty of the function, and the complexity of the function.

이러한 상태에서, 위험 등급은 A, B, C, D등급으로 구분될 수 있다.In this state, the risk class can be divided into A, B, C, and D classes.

여기서, 상기 위험 등급이 A등급은, 시험 대상 각각의 함수가 분기 실행률 100%를 수행 하는 것을 나타낸다.Here, the risk grade of A grade indicates that each function to be tested performs a branch execution rate of 100%.

여기서, 분기 실행률 100%라 함은, 시험 대상 함수의 소스 코드 내의 분기문 중 동적 시험간 참(True), 거짓(False)이 적어도 한 번 이상 시험된 비율이 100%인 경우를 의미한다.Here, the branch execution rate of 100% refers to a case in which the percentage of the branch statements in the source code of the function to be tested is 100% in which True and False between dynamic tests are tested at least once.

상기 A등급은 함수의 결함 발생빈도와 함수의 결함 제어 가능성을 합산한 값이 9점 이상이고, 함수 간의 상호관계, 함수의 난이도 및 함수의 복잡도를 합산한 값이 13.5점 이상인 경우에 부여된다.The A grade is given when the sum of the defect occurrence frequency of the function and the defect control possibility of the function is 9 points or more, and the sum of the correlation between functions, the difficulty of the function, and the complexity of the function is 13.5 points or more.

소프트웨어 내의 함수가 A등급을 부여 받은 경우, 분기 실행률 100%가 달성되도록 함수를 수정함으로써, 소프트웨어의 위험도를 완화 시킬 수 있게 된다. If a function in the software is given A grade, it is possible to mitigate the risk of the software by modifying the function to achieve a branch execution rate of 100%.

또한, 상기 위험 등급이 B 등급은, 시험 대상 각각의 함수가 문장 실행률 100%를 수행하는 것을 나타낸다.In addition, the risk grade of B grade indicates that each function to be tested performs a sentence execution rate of 100%.

여기서, 문장 실행률 100%라 함은, 시험 대상 함수의 소스 코드 내의 문장 중 동적 시험간 적어도 한번 이상 시험된 문장의 비율이 100%인 경우를 의미한다.Here, the sentence execution rate of 100% refers to a case where the proportion of the sentences tested at least once or more between dynamic tests among the sentences in the source code of the test target function is 100%.

상기 B등급은 함수의 결함 발생빈도와 함수의 결함 제어 가능성을 합산한 값이 9점 미만이고, 함수 간의 상호관계, 함수의 난이도 및 함수의 복잡도를 합산한 값이 13.5점 이상인 경우에 부여된다.The B grade is given when the sum of the defect occurrence frequency of the function and the defect control possibility of the function is less than 9 points, and the sum of the correlation between functions, the difficulty of the function, and the complexity of the function is 13.5 points or more.

소프트웨어 내의 함수가 B등급을 부여 받은 경우, 문장 실행률 100%가 달성되도록 함수를 수정함으로써, 소프트웨어의 위험도를 완화 시킬 수 있게 된다.When a function in the software is given a B grade, it is possible to mitigate the risk of the software by modifying the function to achieve a 100% sentence execution rate.

또한, 시험 대상에서 제외되는 C등급과 D등급은, 함수 간의 상호관계, 함수의 난이도 및 함수의 복잡도를 합산한 값이 13.5점 미만인 경우에 부여되어 시험 대상에서 제외된다.In addition, the C and D grades excluded from the test are given when the sum of the correlation between the functions, the difficulty of the function, and the complexity of the function is less than 13.5 points, and are excluded from the test.

상기 C 등급은, 함수의 결함 발생빈도 및 함수의 결함 제어 가능성의 합산 값이 9이상이고, 함수 간의 상호관계, 함수의 난이도 및 함수의 복잡도를 합산한 값이 13.5점 미만인 경우에 부여된다.The C grade is given when the sum of the defect occurrence frequency of the function and the defect control possibility of the function is 9 or more, and the sum of the correlation between the functions, the difficulty of the function, and the complexity of the function is less than 13.5 points.

또한, D 등급은 함수의 결함 발생빈도 및 함수의 결함 제어 가능성의 합산 값이 9 미만이고, 함수 간의 상호관계, 함수의 난이도 및 함수의 복잡도를 합산한 값이 13.5점 미만인 경우에 부여된다.In addition, the D grade is given when the sum of the defect occurrence frequency of the function and the defect controllability of the function is less than 9, and the sum of the correlation between functions, the difficulty of the function, and the complexity of the function is less than 13.5 points.

전술한 C와 D등급은 모두 시험대상 제외로 구분되지만, 무기 체계의 특성에 따라 시험의 종류와 내용이 테일러링 될 수 있으므로, C와 D를 구분하는 것은 유의미할 수 있다.Although the above-described C and D grades are all classified as exclusion of test subjects, it may be meaningful to distinguish C and D because the type and content of the test may be tailored according to the characteristics of the weapon system.

본 발명에서, 기술적 위험도에 해당하는 위험 요소는 신뢰성 시험의 수행여부에 연관될 수 있으며, 체계 영향도에 해당하는 위험요 소는 신뢰성 시험 종류의 선택에 연관될 수 있다.In the present invention, the risk factor corresponding to the technical risk may be related to whether or not the reliability test is performed, and the risk factor corresponding to the system impact level may be related to the selection of the reliability test type.

일 예로, 도 6 및 도 7을 참조하면, 예를 들어, 파일명이 'ㄱ'이고, 함수명이 'X'인 소프트웨어가 각각 함수의 결함 발생빈도에서 1점, 함수의 결함 제어 가능성에서 5점을 받아 합산하여 6점을 받고, 함수 간의 상호관계에서 1점, 함수의 난이도에서 1점 및 함수의 복잡도에서 1점을 받아 합산하여 3점을 받은 경우, 위험 등급은 D등급으로 시험 대상에서 제외 된다.As an example, referring to FIGS. 6 and 7, for example, software with a file name'a' and a function name'X' scored 1 point in the defect occurrence frequency of the function and 5 points in the defect control possibility of the function, respectively. If you receive and add up to receive 6 points, 1 point for the interrelationship between functions, 1 point for the difficulty of the function, and 1 point for the complexity of the function, and 3 points for the summation, the risk level is D grade and is excluded from the test. .

예를 들어, 파일명이 'ㄴ'이고, 함수명이 'Y'인 소프트웨어가 각각의 함수의 결함 발생빈도에서 1점, 함수의 결함 제어 가능성에서 5점을 받아 합산하여 6점을 받고, 함수 간의 상호관계에서 1점, 함수의 난이도에서 9점 및 함수의 복잡도에서 5점을 받아 합산하여 15점을 받은 경우, 위험 등급은 B등급으로 문장 실행률 100%를 수행하게 된다.For example, a software with a file name of'b' and a function name of'Y' receives 1 point from the defect occurrence frequency of each function and 5 points from the function's defect control possibility and sums them up to receive 6 points. In the case of receiving 1 point in the relationship, 9 points in the difficulty of the function, and 5 points in the complexity of the function, the total is 15 points, the risk level is B, and the sentence execution rate is 100%.

예를 들어, 파일명이 'ㄷ'이고, 함수명이 'Z'인 소프트웨어가 각각의 함수의 결함 발생빈도에서 5점, 함수의 결함 제어 가능성에서 5점을 받아 합산하여 10점을 받고, 함수 간의 상호관계에서 4점, 함수의 난이도에서 6점 및 함수의 복잡도에서 4점을 받아 합산하여 14점을 받은 경우, 위험 등급은 A등급으로 분기 실행률 100%를 수행하게 된다.For example, a software with a file name of'C' and a function name of'Z' receives 5 points from the defect occurrence frequency of each function and 5 points from the function's defect control possibility, and receives 10 points. If 4 points for the relationship, 6 points for the difficulty of the function, and 4 points for the complexity of the function are summed and 14 points, the risk level is grade A, and the branch execution rate is 100%.

여기서, 하나의 구현된 파일(파일명)에 다수의 함수(함수명)이 정의되어 구현될 수 있으며, 각각의 함수에는 함수명이 정의되어 있다.Here, a number of functions (function names) can be defined and implemented in one implemented file (file name), and each function has a function name defined.

도 8은, 본 발명의 일 실시예에 따른 결정부를 통해 나타난 시험 수행 범위 및 시험 대상 수량을 설명하기 위해 나타낸 표이다.8 is a table showing a test execution range and a number of test targets shown through a determination unit according to an embodiment of the present invention.

도 8을 참조하면, 상기와 같이 위험 등급을 산출하면 위험 등급에 따른 시험 수행 범위 및 시험 대상 함수 개수가 도출된다.Referring to FIG. 8, when the risk level is calculated as described above, the test execution range and the number of functions to be tested are derived according to the risk level.

상기와 같은 위험 등급 산출 과정을 통해 최종 위험 등급에 따른 동적 시험을 수행하고, 수행된 시험을 바탕으로 함수를 수정 및 보완하여 소프트웨어의 위험도를 완화시킬 수 있게 된다. It is possible to mitigate the risk of software by performing a dynamic test according to the final risk level through the process of calculating the risk level as described above, and modifying and supplementing the function based on the performed test.

한편, 본 발명의 다른 실시예에 따르면, 하나 이상의 함수를 포함하는 신규 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제1 기준값이 저장되고, 하나 이상의 함수를 포함하는 재사용 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제2 기준값이 저장된 데이터 베이스부; 재사용 소프트웨어인 경우, 제1 기준값 및 제2 기준값 중 적어도 하나에 기초하여 재사용 소프트웨어의 위험 등급을 산출하도록 마련된 산출부를 포함하며, 재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함하며, 산출부는 함수 별로 위험 등급을 각각 산출하도록 마련되고, 산출부는 수정 함수인 경우, 제2 기준값에 기초하여 위험 등급을 산출하도록 마련되고, 추가된 신규 함수인 경우 제1 기준값에 기초하여 위험 등급을 산출하도록 마련된, 소프트웨어의 신뢰성 시험 시스템을 제공한다.Meanwhile, according to another embodiment of the present invention, a plurality of first reference values for evaluating the risk level of new software including one or more functions are stored, and for evaluating the risk level of reused software including one or more functions A database unit storing a plurality of second reference values; In the case of reused software, it includes a calculation unit provided to calculate a risk level of the reused software based on at least one of a first reference value and a second reference value, and the reused software includes any of a modified function correcting an existing function and an added new function. It includes one or more, and the calculation unit is provided to calculate the risk level for each function, the calculation unit is provided to calculate the risk level based on the second reference value in case of a modified function, and in the case of an added new function, the first reference value is Provides a software reliability test system that is designed to calculate a risk class based on it.

또한, 상기 위험 요소는, 함수 간의 상호관계, 함수의 난이도, 함수의 순환 복잡도, 함수의 사용빈도 및 함수의 결함 제어 가능성을 포함하고, 위험 수준은, 심각, 높음, 보통, 낮음 및 없음으로 구분되며, 각각의 위험 수준은, 위험 수준에 따라 기 설정된 기준 점수를 포함할 수 있다.In addition, the risk factors include interrelationships between functions, difficulty of functions, cyclical complexity of functions, frequency of use of functions, and possibility of controlling defects of functions, and risk levels are classified into severe, high, moderate, low and none. Each risk level may include a preset reference score according to the risk level.

또한, 산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때, 수정 함수는, 기존 함수의 함수 간의 상호관계 측정 값과 수정 함수의 함수 간의 상호관계 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련될 수 있다.In addition, when the calculation unit calculates the risk level of the correction function based on the second reference value, the correction function is based on a difference value between a correlation measurement value between functions of an existing function and a correlation measurement value between functions of the correction function, A second reference value corresponding to the difference value may be selected, and a reference score of a risk level for the selected second reference value may be provided.

또한, 산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때, 수정 함수는, 기존 함수의 순환 복잡도 측정 값과 수정 함수의 순환 복잡도 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련될 수 있다.In addition, when the calculation unit calculates the risk level of the correction function based on the second reference value, the correction function corresponds to the difference value based on the difference value between the cyclic complexity measurement value of the existing function and the cyclic complexity measurement value of the correction function. The second reference value may be selected, and a reference score of a risk level for the selected second reference value may be provided.

한편, 본 발명의 또 다른 실시예에 따르면, 전술한 소프트웨어의 신뢰성 시험 시스템을 이용하여, 신규 소프트웨어 및 재사용 소프트웨어의 위험 등급을 산출하는 단계를 포함하는, 소프트웨어의 신뢰성 시험 방법을 제공한다.On the other hand, according to another embodiment of the present invention, by using the above-described software reliability testing system, there is provided a software reliability testing method including the step of calculating a risk level of new software and reused software.

상기 다른 실시예에 따른 소프트웨어 신뢰성 시험 시스템 및 소프트웨어 신뢰성 시험 방법은, 전술한 일 실시예에 따른 소프트웨어 신뢰성 시험 시스템에 개시된 내용이 동일하게 적용될 수 있음을 이해하여야 한다.It should be understood that the contents disclosed in the software reliability test system according to the above-described embodiment may be equally applied to the software reliability test system and the software reliability test method according to the other embodiments.

110: 신규 소프트웨어
120: 재사용 소프트웨어
200: 제1 데이터 베이스부
300: 제2 데이터 베이스부
400: 산출부
500: 결정부
110: new software
120: reuse software
200: first database unit
300: second database unit
400: calculation unit
500: decision part

Claims (16)

하나 이상의 함수를 포함하는 신규 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제1 기준값이 저장된 제1 데이터 베이스부;
하나 이상의 함수를 포함하는 재사용 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제2 기준값이 저장된 제2 데이터 베이스부;
신규 소프트웨어인 경우, 제1 기준값에 기초하여 신규 소프트웨어의 위험 등급을 산출하고, 재사용 소프트웨어인 경우, 제1 기준값 및 제2 기준값 중 적어도 하나에 기초하여 재사용 소프트웨어의 위험 등급을 산출하도록 마련된 산출부를 포함하며,
재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함하며,
산출부는 함수 별로 위험 등급을 각각 산출하도록 마련되고,
산출부는 수정 함수인 경우 제2 기준값에 기초하여 위험 등급을 산출하도록 마련되고, 추가된 신규 함수인 경우 제1 기준값에 기초하여 위험 등급을 산출하도록 마련된, 소프트웨어의 신뢰성 시험 시스템.
A first database unit storing a plurality of first reference values for evaluating a risk level of new software including one or more functions;
A second database unit storing a plurality of second reference values for evaluating a risk level of reused software including one or more functions;
In the case of new software, the risk level of the new software is calculated based on the first reference value, and in the case of reused software, the risk level of the reused software is calculated based on at least one of the first reference value and the second reference value. And
The reuse software includes any one or more of a modified function that modifies an existing function and a new function that has been added,
The calculation unit is provided to calculate the risk level for each function,
The calculation unit is provided to calculate a risk level based on a second reference value in case of a correction function, and is provided to calculate a risk level based on a first reference value in case of an added new function.
제 1항에 있어서,
산출된 위험 등급에 따라, 함수 별로 시험 대상을 결정하도록 마련되고, 소정 함수가 시험 대상인 경우, 상기 함수의 시험 수행 종류를 결정하도록 마련된 결정부를 추가로 포함하는, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 1,
According to the calculated risk level, it is provided to determine a test object for each function, and when a predetermined function is a test object, the software reliability test system further comprises a determination unit arranged to determine a type of test execution of the function.
제 1항에 있어서,
제1 및 제2 데이터 베이스 부는, 위험 등급을 산출하기 위한 복수 개의 위험 요소를 각각 포함하고,
각각의 위험 요소는 복수의 단계로 구분되는 위험 수준을 포함하며,
각각의 위험 수준에는, 위험 수준 별로 소정의 제1 및 제2 기준값이 각각 기 설정된, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 1,
The first and second database units each include a plurality of risk factors for calculating a risk class,
Each risk factor contains a level of risk that is divided into multiple stages,
In each risk level, predetermined first and second reference values for each risk level are preset, respectively, in a software reliability test system.
제 3항에 있어서,
위험 요소는, 함수 간의 상호관계, 함수의 난이도, 함수의 순환 복잡도, 함수의 사용빈도 및 함수의 결함 제어 가능성을 포함하고,
위험 수준은, 심각, 높음, 보통, 낮음 및 없음으로 구분되는, 소프트웨어 신뢰성 시험 시스템.
The method of claim 3,
Risk factors include interrelationships between functions, difficulty of functions, cyclical complexity of functions, frequency of use of functions, and possibility of controlling defects in functions,
The risk level is classified into severe, high, moderate, low and none, software reliability testing system.
제 4항에 있어서,
각각의 위험 수준은, 위험 수준에 따라 기 설정된 기준 점수를 포함하며,
신규 소프트웨어의 신규 함수, 재사용 소프트웨어의 수정 함수 및 추가된 신규 함수는 각각 소정의 분석 도구(tool)를 통해 산출된 제1 및 제2 측정 값 및 제1 내지 제3 지표 값을 갖는, 소프트웨어 신뢰성 시험 시스템.
The method of claim 4,
Each risk level includes a standard score set according to the risk level,
The software reliability test, wherein the new function of the new software, the modified function of the reused software, and the added new function each have first and second measurement values and first to third index values calculated through a predetermined analysis tool. system.
제 5항에 있어서,
각각의 함수는,
제1 지표 값에 따라 함수의 사용빈도에 대한 기준 점수가 부여되고,
제2 지표 값에 따라 함수의 결함 제어 가능성에 대한 기준 점수가 부여되며,
제3 지표 값에 따라 함수의 난이도에 대한 기준 점수가 부여되고,
제1 측정 값에 따라 함수의 상호관계에 대한 기준 점수가 부여되며,
제2 측정 값에 따라 함수의 순환 복잡도에 대한 기준 점수가 부여되도록 마련된, 소프트웨어 신뢰성 시험 시스템.
The method of claim 5,
Each function,
A reference score for the frequency of use of the function is given according to the value of the first index,
Based on the value of the second index, a reference score is given for the possibility of controlling the defect of the function,
A standard score for the difficulty of the function is given according to the value of the third index,
Based on the first measured value, a reference score for the correlation of the function is given,
A software reliability testing system provided to give a reference score for the cyclical complexity of the function according to the second measurement value.
제 6항에 있어서,
산출부는 각각의 제1 및 제2 측정 값 및 제1 내지 제3 지표 값에 대응하는 각각의 제1 및 제2 기준값을 선택하고, 선택된 제1 및 제2 기준값에 해당하는 각각의 위험 수준의 기준 점수를 합산하여 위험 등급을 산출하도록 마련된, 소프트웨어 신뢰성 시험 시스템.
The method of claim 6,
The calculation unit selects each of the first and second measurement values and each of the first and second reference values corresponding to the first to third indicator values, and the criteria of each risk level corresponding to the selected first and second reference values A software reliability testing system designed to calculate a risk rating by summing the scores.
제 7항에 있어서,
산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때,
수정 함수는, 기존 함수의 함수 간의 상호관계에 대한 제1 측정 값과 수정 함수의 함수 간의 상호관계에 대한 제1 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련된, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 7,
When the calculation unit calculates the risk level of the correction function based on the second reference value,
As for the correction function, a second reference value corresponding to the difference value is selected based on a difference value between a first measured value for correlation between functions of an existing function and a first measured value for correlation between functions of the corrected function, The reliability testing system of the software, arranged to be given a reference score of a risk level for the selected second reference value.
제 7항에 있어서,
산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때,
수정 함수는, 기존 함수의 순환 복잡도에 대한 제2 측정 값과 수정 함수의 순환 복잡도에 대한 제2 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련된, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 7,
When the calculation unit calculates the risk level of the correction function based on the second reference value,
As for the correction function, a second reference value corresponding to the difference value is selected based on a difference value between a second measurement value for the cyclical complexity of the existing function and a second measurement value for the cyclical complexity of the corrected function, and the selected second reference value The software's reliability testing system, designed to be given a baseline score of the risk level for.
제 4항에 있어서,
제2 데이터 베이스부의 함수 간의 상호관계 및 함수의 순환 복잡도에 각각 설정된 소정의 제2 기준값은, 제1 데이터 베이스부의 함수 간의 상호관계 및 함수의 순환 복잡도에 각각 설정된 소정의 제1 기준값 보다 낮게 설정된, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 4,
The predetermined second reference values respectively set in the correlation between functions of the second database unit and the cyclical complexity of the functions are set lower than predetermined first reference values respectively set in the correlation between functions of the first database unit and the cyclical complexity of functions, Software reliability test system.
제 2항에 있어서,
결정부에서 결정된 시험 종류는, 분기 실행률 또는 문장 실행률 중 어느 하나인, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 2,
The test type determined by the determination unit is either a branch execution rate or a sentence execution rate, a software reliability test system.
하나 이상의 함수를 포함하는 신규 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제1 기준값이 저장되고, 하나 이상의 함수를 포함하는 재사용 소프트웨어의 위험 등급을 평가하기 위한 복수 개의 제2 기준값이 저장된 데이터 베이스부;
재사용 소프트웨어인 경우, 제1 기준값 및 제2 기준값 중 적어도 하나에 기초하여 재사용 소프트웨어의 위험 등급을 산출하도록 마련된 산출부를 포함하며,
재사용 소프트웨어는, 기존 함수를 수정한 수정 함수 및 추가된 신규 함수 중 어느 하나 이상을 포함하며,
산출부는 함수 별로 위험 등급을 각각 산출하도록 마련되고,
산출부는 수정 함수인 경우, 제2 기준값에 기초하여 위험 등급을 산출하도록 마련되고, 추가된 신규 함수인 경우 제1 기준값에 기초하여 위험 등급을 산출하도록 마련된, 소프트웨어의 신뢰성 시험 시스템.
A database unit in which a plurality of first reference values for evaluating a risk level of new software including one or more functions are stored, and a plurality of second reference values for evaluating a risk level of reused software including one or more functions are stored;
In the case of reused software, it includes a calculation unit provided to calculate a risk level of the reused software based on at least one of a first reference value and a second reference value,
The reuse software includes any one or more of a modified function that modifies an existing function and a new function that has been added,
The calculation unit is provided to calculate the risk level for each function,
The calculation unit is provided to calculate a risk level based on a second reference value in case of a modified function, and is provided to calculate a risk level based on a first reference value in case of an added new function.
제 12항에 있어서,
위험 요소는, 함수 간의 상호관계, 함수의 난이도, 함수의 순환 복잡도, 함수의 사용빈도 및 함수의 결함 제어 가능성을 포함하고,
위험 수준은, 심각, 높음, 보통, 낮음 및 없음으로 구분되며,
각각의 위험 수준은, 위험 수준에 따라 기 설정된 기준 점수를 포함하는, 소프트웨어 신뢰성 시험 시스템.
The method of claim 12,
Risk factors include interrelationships between functions, difficulty of functions, cyclical complexity of functions, frequency of use of functions, and possibility of controlling defects in functions,
The risk level is divided into severe, high, moderate, low and none,
Each risk level includes a reference score preset according to the risk level, a software reliability test system.
제 13항에 있어서,
산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때,
수정 함수는, 기존 함수의 함수 간의 상호관계 측정 값과 수정 함수의 함수 간의 상호관계 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련된, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 13,
When the calculation unit calculates the risk level of the correction function based on the second reference value,
In the correction function, a second reference value corresponding to the difference value is selected based on a difference value between a correlation measurement value between functions of an existing function and a correlation measurement value between functions of the correction function, and a risk level for the selected second reference value Designed to be given a standard score of, the reliability test system of the software.
제 13항에 있어서,
산출부가 제2 기준값에 기초하여 수정 함수의 위험 등급을 산출할 때,
수정 함수는, 기존 함수의 순환 복잡도 측정 값과 수정 함수의 순환 복잡도 측정 값의 차이 값을 기준으로, 차이 값에 대응하는 제2 기준값이 선택되고, 선택된 제2 기준값에 대한 위험 수준의 기준 점수가 부여되도록 마련된, 소프트웨어의 신뢰성 시험 시스템.
The method of claim 13,
When the calculation unit calculates the risk level of the correction function based on the second reference value,
For the correction function, a second reference value corresponding to the difference value is selected based on the difference value between the cyclic complexity measurement value of the existing function and the cyclic complexity measurement value of the correction function, and the reference score of the risk level for the selected second reference value is Designed to be given, software reliability testing system.
제1항에 따른 소프트웨어의 신뢰성 시험 시스템을 이용하여,
신규 소프트웨어 및 재사용 소프트웨어의 위험 등급을 산출하는 단계를 포함하는, 소프트웨어의 신뢰성 시험 방법.
Using the software reliability test system according to paragraph 1,
A method for testing reliability of software, comprising the step of calculating a risk rating of new software and reused software.
KR1020190116632A 2019-09-23 2019-09-23 Software reliability test system and method KR102282382B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190116632A KR102282382B1 (en) 2019-09-23 2019-09-23 Software reliability test system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190116632A KR102282382B1 (en) 2019-09-23 2019-09-23 Software reliability test system and method

Publications (2)

Publication Number Publication Date
KR20210035363A true KR20210035363A (en) 2021-04-01
KR102282382B1 KR102282382B1 (en) 2021-07-28

Family

ID=75441333

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190116632A KR102282382B1 (en) 2019-09-23 2019-09-23 Software reliability test system and method

Country Status (1)

Country Link
KR (1) KR102282382B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230057095A (en) 2021-10-21 2023-04-28 삼성에스디에스 주식회사 Apparatus for evaluating quality of software products and method thereof
WO2024015985A1 (en) * 2022-07-15 2024-01-18 Black & Veatch Holding Company Method and computing device for detecting anomalous sensor data
KR102647446B1 (en) * 2023-06-19 2024-03-13 국방기술품질원 SW quality verification system and method of weapon system under development stage

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102601979B1 (en) * 2021-12-15 2023-11-15 경북대학교 산학협력단 Method and apparatus for verifying software program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070105167A (en) * 2006-04-25 2007-10-30 삼성전자주식회사 Apparatus and method for measuring reuse ratio of embedded software
US7895565B1 (en) * 2006-03-15 2011-02-22 Jp Morgan Chase Bank, N.A. Integrated system and method for validating the functionality and performance of software applications
WO2015088067A1 (en) * 2013-12-10 2015-06-18 슈어소프트테크주식회사 Software quality element extraction module and method, and computer-readable recording medium having, recorded thereon, program for implementing software quality element extraction method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895565B1 (en) * 2006-03-15 2011-02-22 Jp Morgan Chase Bank, N.A. Integrated system and method for validating the functionality and performance of software applications
KR20070105167A (en) * 2006-04-25 2007-10-30 삼성전자주식회사 Apparatus and method for measuring reuse ratio of embedded software
WO2015088067A1 (en) * 2013-12-10 2015-06-18 슈어소프트테크주식회사 Software quality element extraction module and method, and computer-readable recording medium having, recorded thereon, program for implementing software quality element extraction method
KR101547248B1 (en) * 2013-12-10 2015-08-25 슈어소프트테크주식회사 Moulde and method for producting total quality score of software, and computer readable recording medium having program the method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이태호 외, ‘무기체계 소프트웨어 신뢰성 시험 현황 및 발전 방향’, 정보보호학회지, 제28권제6호, 2018.12.* *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230057095A (en) 2021-10-21 2023-04-28 삼성에스디에스 주식회사 Apparatus for evaluating quality of software products and method thereof
WO2024015985A1 (en) * 2022-07-15 2024-01-18 Black & Veatch Holding Company Method and computing device for detecting anomalous sensor data
KR102647446B1 (en) * 2023-06-19 2024-03-13 국방기술품질원 SW quality verification system and method of weapon system under development stage

Also Published As

Publication number Publication date
KR102282382B1 (en) 2021-07-28

Similar Documents

Publication Publication Date Title
KR20210035363A (en) Software reliability test system and method
US9507695B2 (en) Risk-based test coverage and prioritization
US9710257B2 (en) System and method to map defect reduction data to organizational maturity profiles for defect projection modeling
US20160378618A1 (en) Risk formula for erroneous software components detection
US9235493B2 (en) System and method for peer-based code quality analysis reporting
JP6878933B2 (en) Methods and programs for repairing software programs
US7478000B2 (en) Method and system to develop a process improvement methodology
US8397104B2 (en) Creation of test plans
US10496459B2 (en) Automated software program repair candidate selection
CN112363920A (en) Test case repairing method and device, computer equipment and storage medium
JP6891703B2 (en) Automatic software program repair
CN104320271A (en) Network device security evaluation method and device
Islam et al. Comparing bug replication in regular and micro code clones
US10152407B1 (en) Optimization of analysis of automated test results
JP2018133081A (en) Method calling synthesis for software program recovery
JP6416588B2 (en) Source code verification system
CN111552641A (en) Method, device, equipment and storage medium for judging quality of software product
CN106557859B (en) Verification method and device
TWI735511B (en) Code submission method and equipment
Massam et al. Verification of PHM capabilities: A joint customer/industrial perspective
JP6633418B2 (en) Analysis data selection device and analysis data selection method
US20190065355A1 (en) Information processing device and output method
KR20160025881A (en) Apparatus and method for detecting malicious shared library file
CN110222375B (en) Safety monitoring method for carrier aircraft landing process
JP2023039583A (en) Method and system for confirming validity, and program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant