권호기사보기
기사명 | 저자명 | 페이지 | 원문 | 기사목차 |
---|
대표형(전거형, Authority) | 생물정보 | 이형(異形, Variant) | 소속 | 직위 | 직업 | 활동분야 | 주기 | 서지 | |
---|---|---|---|---|---|---|---|---|---|
연구/단체명을 입력해주세요. |
|
|
|
|
|
* 주제를 선택하시면 검색 상세로 이동합니다.
표제지
국문초록
목차
I. 서론 13
1. 연구 배경 및 목적 13
2. 연구 내용 및 구성 15
II. 관련 연구 17
1. 원인-결과 그래프 17
2. 결정 테이블 18
3. 원인-결과 그래프 생성 프로세스 19
4. 원인-결과 그래프로부터 테스트 케이스 생성 방법 20
5. 원인-결과 그래프로부터 테스트 케이스 생성 도구 22
6. 한국어의 구조 25
1) 한국어의 형태소 25
2) 한국어의 조건 연결어미와 조건절 27
3) 한국어의 접속 연결어미와 접속절 28
4) 한국어 말뭉치 정규화 31
7. 한국어 형태소 분석기 38
1) KoNLPy(Korean NLP in Python) 38
2) khaiii(Kakao Hangul Analyzer III) 39
3) KOMORAN 39
4) MeCab-ko 39
8. 한국어 구문 분석기 40
1) 유재원 한글 구문 분석기 40
2) KACTEIL-KSP 40
9. 한국어 의미역 40
10. 메타모델 46
11. 메타모델 기반 모델 변환 방법 46
III. 비정형 한국어 요구사항 기반 테스트 케이스 자동 생성 프레임워크 48
1. 한국어 문장의 형태소 식별 49
2. 한국어 문장의 간소화 49
1) 한국어 조건절의 식별 49
2) 한국어 접속절의 식별 52
3) 한국어 말뭉치 정규화 57
4) 절 식별 우선순위 정의 58
3. 한국어 요구사항 문장으로부터 C3Tree 모델 생성 64
1) C3Tree 모델의 구조 정의 64
2) 한국어 문장으로부터 C3Tree 모델 생성 예시 67
4. C3Tree 모델의 유사 노드 통합 69
1) C3Tree 모델의 Jaccard 유사도 측정 70
2) C3Tree 모델의 의미역 유사도 측정 72
5. C3Tree 모델로부터 원인-결과 그래프 생성 74
1) C3Tree 모델로부터 원인-결과 그래프 생성 메커니즘 74
2) C3Tree 모델로부터 원인-결과 그래프 생성 예시 76
6. 원인-결과 그래프로부터 결정 테이블 생성 78
1) 메타모델 기반의 모델 변환 엔진 설계 78
2) 원인-결과 그래프의 메타모델 설계 79
3) 원인-결과 그래프의 모델 생성 메커니즘 80
4) 결정 테이블의 메타모델 설계 81
5) 결정 테이블의 모델 생성 메커니즘 82
6) 원인-결과 그래프 메타모델로부터 결정 테이블 메타모델 변환룰 84
7) 원인-결과 그래프로부터 결정 테이블 생성 예시 97
7. 결정 테이블로부터 테스트 케이스 생성 99
1) 메타모델 기반의 모델 변환 엔진 설계 99
2) 테스트 케이스의 메타모델 설계 99
3) 테스트 케이스의 모델 생성 메커니즘 100
4) 결정 테이블 메타모델로부터 테스트 케이스 메타모델 변환룰 103
5) 결정 테이블로부터 테스트 케이스 생성 예시 113
IV. 적용 사례 116
1. 환경 설계 및 구현 116
2. 한국어 요구사항 문장으로부터 C3Tree 모델 생성 사례 116
3. C3Tree 모델로부터 원인-결과 그래프 생성 사례 118
4. 원인-결과 그래프로부터 결정 테이블 생성 사례 118
5. 결정 테이블로부터 테스트 케이스 생성 사례 119
6. 적용 결과 120
V. 결론 및 향후 연구 127
참고문헌 129
ABSTRACT 136
표 2-1. 기존 도구들의 비교(1) 24
표 2-2. 기존 도구들의 비교(2) 25
표 2-3. 세종말뭉치 품사 태그 집합의 일부 26
표 2-4. 한국어 [조건] 연결어미 형태 27
표 2-5. 한국어 [조건] 연결어미 유형 28
표 2-6. 대등/종속 접속문의 분류 30
표 2-7. 피동문과 능동문의 예 32
표 2-8. 피동 복원 규칙 33
표 2-9. 사동문과 주동문의 예 34
표 2-10. 사동 복원 규칙 34
표 2-11. 보조용언 '고 싶다'의 예 35
표 2-12. 보조용언 '고 싶다'의 복원 규칙 35
표 2-13. 보조 용언 '어 하다'의 예 35
표 2-14. 보조 용언 '어 하다'의 복원 규칙 36
표 2-15. 피동사 '어 주다'의 예 36
표 2-16. 피동사 '어 주다'의 복원 규칙 36
표 2-17. 복합어의 중복된 형태 통일 규칙 37
표 2-18. 세종전자사전 의미역의 종류 41
표 2-19. ExoBrain 관련 과제 주제 42
표 2-20. ExoBrain의 Open API 43
표 2-21. 언어 분석 기술 API 44
표 2-22. 의미역 인식 API 태그셋 45
표 3-1. 조건 연결어미의 단순 형태와 복합 형태 51
표 3-2. 조건 연결 어미의 유형 51
표 3-3. 추가된 조건 연결 어미 유형 52
표 3-4. 기존 접속 연결 어미의 유형 54
표 3-5. 개선된 접속 연결 어미의 유형 55
표 3-6. 접속문 종류에 따른 AND/OR 관계 분류 56
표 3-7. 수동적 문장을 능동적 문장으로 변환 57
표 3-8. 피동 복원 원칙에서 추가된 부분 58
표 3-9. 사동 복원 원칙에서 추가된 부분 58
표 3-10. 순서 식별 공식 61
표 3-11. C3Tree 모델의 노드 66
표 3-12. C3Tree 모델의 연결선 66
표 3-13. 단순한 C3Tree 모델의 XMI 코드 69
표 3-14. C3Tree 모델 표기법과 원인-결과 그래프 표기법 사이의 관계 74
표 3-15. 원인-결과 그래프의 XMI 코드 76
표 3-16. 원인-결과 그래프 메타모델과 결정 테이블 메타모델 간의 변환룰(Java) 84
표 3-17. 결정 테이블 메타모델과 테스트 케이스 메타모델 간의 변환룰(Java) 103
표 4-1. 요구사항 예시 116
표 4-2. Myers의 요구사항 121
표 4-3. KRA에 입력된 기능적 요구사항의 리스트 122
표 4-4. 요구사항 분석 결과 126
표 4-5. 원인과 결과가 존재하는 요구사항의 개수 126
그림 2-1. 원인-결과 그래프의 종류 17
그림 2-2. 원인-결과 그래프 기반의 결정 테이블 18
그림 2-3. Myers의 원인-결과 그래프 생성 프로세스 19
그림 2-4. 원인-결과 그래프로부터 테스트 케이스 생성 방법 20
그림 2-5. 원인-결과 그래프로부터 테스트 케이스 생성 방법들 21
그림 2-6. HiMEM의 원인-결과 그래프 도구 22
그림 2-7. Bender RBT 23
그림 2-8. Berk Bekiroglu의 원인-결과 그래프 도구 23
그림 2-9. 문장의 체계 28
그림 2-10. 메타모델 변환 엔진의 구조 47
그림 3-1. 비정형 한국어 요구사항 기반 테스트 케이스 자동 생성 프로세스 48
그림 3-2. 조건절의 식별 50
그림 3-3. 접속절의 식별 53
그림 3-4. 절 식별 우선순위의 예시 59
그림 3-5. 순서 식별 알고리즘 60
그림 3-6. 단순한 절 순서 식별 예제 63
그림 3-7. 복잡한 절 순서 식별 예제 65
그림 3-8. C3Tree 모델 생성 과정 67
그림 3-9. 단순한 C3Tree 모델 예시 68
그림 3-10. 형태소의 Jaccard 유사도 측정 71
그림 3-11. 절의 의미역 비교 73
그림 3-12. C3Tree 모델로부터 원인-결과 그래프 생성 과정 75
그림 3-13. 요구사항으로부터 원인-결과 그래프 생성 과정 77
그림 3-14. 원인-결과 그래프 to 결정 테이블 변환 엔진 78
그림 3-15. 원인-결과 그래프의 메타모델 79
그림 3-16. 원인-결과 그래프 메타모델로부터 생성된 원인-결과 그래프 예시 80
그림 3-17. 원인-결과 그래프 XMI 코드로부터 원인-결과 그래프 출력 예시 81
그림 3-18. 결정 테이블의 메타모델 81
그림 3-19. 결정 테이블 XMI 코드로부터 결정 테이블 예시 83
그림 3-20. 결정 테이블 메타모델로부터 생성된 결정 테이블 예시 83
그림 3-21. 원인-결과 그래프 메타모델과 결정 테이블 메타모델 간의 변환 과정 84
그림 3-22. 원인-결과 그래프로부터 자동 변환된 결정 테이블 예시(XMI 코드) 98
그림 3-23. 원인-결과 그래프로부터 자동 변환된 결정 테이블 예시(그래프) 98
그림 3-24. 결정 테이블 to 테스트 케이스 변환 엔진 99
그림 3-25. 테스트 케이스의 메타모델 100
그림 3-26. 테스트 케이스 메타모델로부터 생성된 테스트 케이스 예시 101
그림 3-27. 테스트 케이스 XMI 코드로부터 테스트 케이스 예시 102
그림 3-28. 결정 테이블 메타모델과 테스트 케이스 메타모델 간의 변환 과정 103
그림 3-29. 결정 테이블로부터 자동 변환된 테스트 케이스 예시(XMI 코드) 114
그림 3-30. 결정 테이블로부터 자동 변환된 테스트 케이스 예시 115
그림 4-1. KRA 환경 116
그림 4-2. 입력된 요구사항 117
그림 4-3. 자동 생성된 C3Tree 모델 117
그림 4-4. 자동 생성된 원인-결과 그래프 118
그림 4-5. 자동 생성된 결정 테이블 119
그림 4-6. 자동 생성된 테스트 케이스 119
그림 4-7. 손으로 그린 원인-결과 그래프와 KRA로 그린 원인-결과그래프 비교 120
그림 4-8. Myers가 그린 원인-결과 그래프와 KRA가 그린 원인-결과 그래프의 비교 121
국내 소프트웨어 개발 환경에서, 다양한 테스트 도구를 사용하여 고품질 소프트웨어를 개발하는 것은 필수적이다. 그리고 기업들은 이 과정에서 테스트 시간 및 비용 절감을 고려해야 한다. 소프트웨어 산업 현장에서는 소프트웨어의 고품질화를 위해 전체 요구사항의 최소 30%만이라도 테스트 케이스의 자동 생성을 원한다. 하지만 한국어 요구사항 분석의 어려움 때문에 테스트 케이스의 자동화는 어려운 실정이다.
본 논문은 요구공학 관점에서 기존 자연어 요구사항 처리의 어려움을 해결하려 한다. 중요한 문제점들은 1) 사용자 또는 고객의 요구 사항을 개발자에게 완벽히 이해시키는 측면에서의 구조화된 사양 문서 언어 정의를 통한 문서 변환하고 맞춤화하는 연구, 2) AI 기반 자연어 요구 사항을 인식하는 방안, 3) 잘못 정의되거나 미완성 요구 사항 사양을 올바르게 재정의 및 분석 연구, 그리고 4) 자연어 요구 사항으로부터 테스트 케이스를 자동으로 생성하는 연구 등이 필요하다. 그러나 이들의 해결은 매우 어렵다.
하지만 국내에서는 4번째 문제를 해결하려는 연구자가 거의 없다. 특히 한국어 기반 요구사항 복잡성을 자동으로 간소화하고 요구사항 명세의 테스트 케이스를 자동 생성하는 연구자가 거의 없다. 특히 한국어는 영어보다 문장의 표현의 범위가 넓다. 많은 경우의 수와 예외 사항을 적용 처리해야 하기 때문에 문장의 의미 분석이 쉽지 않다.
요구사항으로부터 테스트 케이스 생성 방법으로는 대표적으로 블랙박스 기반 테스트 케이스 생성 방법이다. 블랙박스 테스팅 기법은 일반적으로 소프트웨어의 명세 사항 테스트(Specification based testing)한다. 자연어 요구사항을 기반으로 테스트하기 때문에 자동화가 힘들다.
기존 문제의 해결을 위해 비정형 한국어 요구사항 명세로부터 테스트 케이스를 자동 생성하는 방법을 제안한다. 첫 번째, 복잡한 요구사항을 간소화한 후 요구사항에서 원인-결과 그래프를 생성한다. 두 번째, 원인-결과 그래프를 결정 테이블로 변환한다. 세 번째, 결정 테이블을 테스트 케이스로 변환한다. 자동 변환에는 메타모델 기반 모델 변환 방법을 적용하여 변환 규칙의 사용성과 이해성을 높이고, Plug&Play를 지원 한다.
이 방법은 복잡한 요구사항도 테스트 케이스로 자동 변환 한다. 이를 통해 요구사항의 가독성과 이해성을 높인다. 그리고 최소한의 테스트 케이스를 사용하여 100% 테스트 커버리지를 만족할 수 있다. 비정형 요구 사항으로부터 테스트 케이스를 자동 생성하고, 테스트 케이스 생성 과정의 추적성을 제공한다. 또한 테스트 케이스 생성 비용을 줄일 수 있다.
이는 소프트웨어 자동 테스트를 지원하고, 소프트웨어의 개발 및 테스트 비용을 감소시킴으로써 소프트웨어 품질 향상에 도움을 줄 것으로 기대 된다.
*표시는 필수 입력사항입니다.
*전화번호 | ※ '-' 없이 휴대폰번호를 입력하세요 |
---|
기사명 | 저자명 | 페이지 | 원문 | 기사목차 |
---|
번호 | 발행일자 | 권호명 | 제본정보 | 자료실 | 원문 | 신청 페이지 |
---|
도서위치안내: / 서가번호:
우편복사 목록담기를 완료하였습니다.
*표시는 필수 입력사항입니다.
저장 되었습니다.