1 |
1
프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는 널 포인터 예외(null pointer exception)를 수정하기 위한 방법으로서,원본 프로그램을 획득하는 단계; 및분류 모델을 이용하여, 상기 원본 프로그램으로부터 상기 원본 프로그램의 오류를 수정한 패치(patch) 프로그램을 획득하는 단계;를 포함하고,상기 분류 모델은,입력된 프로그램에 포함된 널 포인터 예외를 발생시키는 NPE 발생 표현식을 대체하는 대체 표현식을 획득하도록, 적어도 하나의 프로그램으로부터 획득된 널(null) 처리 패턴 데이터셋을 이용하여 딥러닝 또는 머신러닝을 통해 사전에 학습되는,방법
|
2 |
2
제 1 항에 있어서,상기 널 처리 패턴 데이터셋은,상기 적어도 하나의 프로그램에 포함되는 제 1 프로그램;상기 제 1 프로그램에서 널 포인터 예외(null pointer exception)를 발생시키는 제 1 NPE 발생 표현식을 벡터로 변환시킨 제 1 피쳐 벡터(feature vector); 및상기 널 포인터 예외의 발생을 방지하기 위해 상기 제 1 NPE 발생 표현식을 대신하여 사용되는 제 1 구체화 대체 표현식;을 포함하는,방법
|
3 |
3
제 2 항에 있어서,상기 제 1 구체화 대체 표현식은,표현식의 타입을 상기 분류 모델에 대응되도록 구체화시키는 구체화 함수를 이용하여, 제 1 요약 대체 표현식으로부터 획득되는,방법
|
4 |
4
제 3 항에 있어서,상기 제 1 요약 대체 표현식은,상기 제 1 프로그램에 관한 적어도 하나의 정보를 요약시키는 요약 함수를 이용하여, 상기 제 1 프로그램에 관한 적어도 하나의 정보 및 상기 널 포인터 예외의 발생을 방지하는 대체 표현식을 포함하는 제 1 원본 대체 표현식으로부터 획득되는,방법
|
5 |
5
제 2 항에 있어서,상기 제 1 피쳐 벡터는,상기 제 1 NPE 발생 표현식과 관련된 메소드 이름(method name), 메소드 정의문(method body) 또는 문맥(context) 중 적어도 하나에 기초하여 결정되는,방법
|
6 |
6
제 2 항에 있어서,상기 널 포인터 예외는,참조할 데이터 요소가 없는 것을 가리키는 포인터인 널 포인터(null pointer)를 참조하여 프로그램의 강제 종료를 일으키는 버그인,방법
|
7 |
7
삭제
|
8 |
8
제 1 항에 있어서,상기 원본 프로그램과 상기 패치 프로그램을 비교하여 상기 패치 프로그램의 검증을 수행하는 단계;를 더 포함하는,방법
|
9 |
9
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 널 포인터 예외(Null Pointer Exception)를 수정하기 위한 컴퓨팅 장치의 프로세서로 하여금 이하의 단계들을 수행하기 위한 명령들을 포함하며, 상기 단계들은:원본 프로그램을 획득하는 단계; 및분류 모델을 이용하여, 상기 원본 프로그램으로부터 상기 원본 프로그램의 오류를 수정한 패치(patch) 프로그램을 획득하는 단계;를 포함하고,상기 분류 모델은,입력된 프로그램에 포함된 널 포인터 예외를 발생시키는 NPE 발생 표현식을 대체하는 대체 표현식을 획득하도록, 적어도 하나의 프로그램으로부터 획득된 널(null) 처리 패턴 데이터셋을 이용하여 딥러닝 또는 머신러닝을 통해 사전에 학습되는,컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램
|
10 |
10
널 포인터 예외(Null Pointer Exception)를 수정하기 위한 컴퓨팅 장치에 있어서,적어도 하나의 코어를 포함하는 프로세서;상기 프로세서에 의해 실행가능한 컴퓨터 프로그램을 저장하는 메모리; 및네트워크부;를 포함하고,상기 프로세서는,원본 프로그램을 획득하고, 그리고분류 모델을 이용하여, 상기 원본 프로그램으로부터 상기 원본 프로그램의 오류를 수정한 패치(patch) 프로그램을 획득하고,상기 분류 모델은,입력된 프로그램에 포함된 널 포인터 예외를 발생시키는 NPE 발생 표현식을 대체하는 대체 표현식을 획득하도록, 적어도 하나의 프로그램으로부터 획득된 널(null) 처리 패턴 데이터셋을 이용하여 딥러닝 또는 머신러닝을 통해 사전에 학습되는,컴퓨팅 장치
|