추상 테스트 케이스 성숙도 모델 기반의 테스트 케이스 추적성 연구

Slides:



Advertisements
Similar presentations
CI(Continuous Integration) 이학성. C ontinuous I ntegration? 2 지속적으로 품질관리 를 적용하는 과정 개발자가 기존 코드의 수정 작업 을 시작할 때, 코드 베이스의복사본을 받아서 작업을 시작하면서 코드의 변경.
Advertisements

Popcon 이규태 김준수 강예진. 목차  Popcon 이란  개발동기 및 목적  필요성  차별성  설계  개발일정  기대효과 및 향후 계획.
2008 년 11 월 20 일 실습.  실험제목 ◦ 데이터베이스 커넥션 풀  목표 ◦ 데이터베이스 커넥션 풀의 사용.
© Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models 배재대학교 멀티미디어 정보공학 연구실 발표자 : 이 상 조
항공 예약 시스템 1 조 ( 김민철, 김영주, 이혜림, 장유정, 조윤주, 문하늘 ). 목차 차세대 전산시스템 도입의 필요성 현재 항공 시스템 ( 대한항공 ) 항공 시스템의 변화 미래항공 시스템.
Real Time Systems Lab. rtlab.knu.ac.kr 무인 헬리콥터 자율비행 소프트웨어의 실시간 성능 개선을 위한 CAN 기반 센서 네트워크 경북대학교 실시간 시스템 연구실 이재신.
컴퓨터와 인터넷.
Secure Coding 이학성.
Capstone Project Memorandum
(1.1 v) 엔트리교육연구소 엔트리 카드게임 설명서.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
5강. Servlet 본격적으로 살펴보기-I 프로젝트 만들기 doGet() doPost()
최윤정 Java 프로그래밍 클래스 상속 최윤정
Entity Relationship Diagram
Web Service Computing and Practice_
비즈니스 모델링의 의의 컴퓨터학과 김현일.
컴퓨터과학 전공탐색 배상원.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
현장실습(Co-Operation) 소감 발표
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
Chapter 03 : 서블릿 ( Servlet ) 개요. chapter 03 : 서블릿 ( Servlet ) 개요.
10장. 예외처리.
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
속성과 리스너 초기화 파라미터 외 파라미터에 대해 이해한다. 리스너를 생성해보고 사용에 대해 이해한다.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
Wow 메시지로 시선을 집중 예) 당신이 상상하는 모든 것을 프린트하라! 게임 그 이상의 즐거움! 회사명
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
소비자 감성과 사용성을 고려한 인간공학적 의자설계 및 디자인 인터페이스 개발 한양 대학교 산업공학과 김정룡 외 4명
아틱 기반 전력 통합 모니터링 시스템 검증을 위한
Technology Strategy : An Evolutionary Process Perspective
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
소프트웨어공학 윤일노 STARuml Guide 소프트웨어공학 윤일노
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
2011 Social Network service & Marketing
USN(Ubiquitous Sensor Network)
클로즈 아키텍처 메커니즘 기반의 요구사항 추적성 매트릭스 (Requirement Traceability Matrix Based on Closed Architecture Mechanism) 홍익대학교 소프트웨어 공학 연구실 변 은 영 안녕하세요.
소프트웨어 공학 Chapter #1: 소개 1.
2D Game Programming Project 1
Chapter 03. 관계 데이터베이스 설계.
AUTODESK AUTOCAD ELECTRICAL 전기제어 2D 설계 소프트웨어 표준기반 설계 생산성 도구 구조도 설계
LabVIEW WiznTec 주임 박명대 1.
데이터 베이스 DB2 관계형 데이터 모델 권준영.
판매 교육 발표자: [이름].
Electronic cart Electronic Cart Electronic Cart Electronic Catr
소프트웨어 공학 Lecture #10: 유지보수
체크포인트 안전과 사고의 일반적인 지식을 통해 안전의 중요성을 알아본다. 안전이란? 사전적 의미 일반적 의미 위험하지 않은 것 마음과 몸이 편안한 상태 사고 위험을 줄이기 위해 | 안전과 생활 | 사고 예방 안전이란? 사전적 의미 일반적 의미 위험하지 않은 것.
김정숙 (고려대학교 2014년) 국어국문학과 한국어학 석사 1기 이 드미뜨리
클러스터 시스템에서 효과적인 미디어 트랜스코딩 부하분산 정책
충남대학교 Software Engineering Lab 김 대 엽
3장 JSP프로그래밍의 개요 이장에서 배울 내용 : JSP페이지의 기본적인 개요설명과 JSP페이지의 처리과정 그리고 웹 어플리케이션의 구조에 대해서 학습한다.
발표자 : 이지연 Programming Systems Lab.
9 브라우저 객체 모델.
Bizforms PowerPoint 영업, 마케팅 표준제안서_2 (제안서 작성방법 포함) 원본 PPT 바로가기 >
유스케이스 다이어그램 유스케이스 모델링과 UML 표기법 유스케이스와 유스케이스 관계 액터 사이의 일반화관계
Component Diagram 1.
.Net FrameWork for Web2.0 한석수
15강_액티비티 액티비티란? 새로운 액티비티로 전환 생명주기 화면방향(Orientation)
Installation Guide.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
교량 구조물의 개념 설계 및 프로토타입 제작 과정
KSP 메신저 김광민 서정건 박윤옥.
비주얼 교육동화 ‘비주얼메르헨’ 비주얼메르헨 한림대학교 컴퓨터공학과 이진수 컴퓨터공학과 안선근 컴퓨터공학과 임의규
Continental Automotive Innovation Contest
소프트웨어 설계 및 실습 강기준.
VAULT BASIC / VAULT PROFESSIOAL
20 XMLHttpRequest.
8장. 데이터베이스 설계 데이터베이스 설계 단계 요구 사항 분석 개념적 설계 논리적 설계 물리적 설계와 구현.
1 제조 기술의 세계 3 제품의 개발과 표준화 제품의 개발 표준화 금성출판사.
Presentation transcript:

추상 테스트 케이스 성숙도 모델 기반의 테스트 케이스 추적성 연구 Hongik SELab 추상 테스트 케이스 성숙도 모델 기반의 테스트 케이스 추적성 연구 A Study on the Test Case Traceability based on Abstract Test Case Maturity Model 홍익대학교 소프트웨어공학연구실 박 지 훈 지도교수 : 김영철

Contents 01 연구 동기 02 관련 연구 03 테스트 케이스 추적성 메트릭스 04 결론 및 향후 계획 05 Q & A Hongik SELab Contents 01 연구 동기 02 관련 연구 03 테스트 케이스 추적성 메트릭스 04 결론 및 향후 계획 05 Q & A

1 연구 동기

연구 동기

비즈니스 애플리케이션에서 소비자 제품까지 다양한 제품들이 사용 제품이 올바르게 동작하지 않는 경우 다양한 문제 발생 연구 동기 비즈니스 애플리케이션에서 소비자 제품까지 다양한 제품들이 사용 제품이 올바르게 동작하지 않는 경우 다양한 문제 발생 금전적인 손실, 시간 낭비, 비즈니스의 이미지 손상 등 다양한 피해 발생 테스트는 이러한 제품 시스템의 문제를 최소화하기 위해 반드시 필요 비즈니스 애플리케이션에서 소비자 제품까지 생활의 많은 부분에서 다양한 제품들이 사용되고 있으며, 그 비중은 계속해서 증가하고 있다. 대다수의 사람들은 이러한 시스템을 사용하면서, 제품이 기대한 대로 동작하지 않는 경우를 많이 접해 보았을 것이다. 제품이 올바르게 동작하지 않는 경우, 다양한 문제가 발생한다. 이로 인한 피해는 금전적인 손실, 시간 낭비, 비즈니스의 이미지 손상 그리고 부상이나 사망에 이르기까지 다양하고 심각하다. 테스트는 이러한 제품 시스템의 문제를 최소화하기 위해 반드시 필요하다. Program Bug Time Project Success decrease Testing Money Quality

시장 변화, 신기술, 경쟁업체의 대응, 설계 결함, 테스트 실패 등의 다양한 외부적 요인 -> 잦은 요구사항 변경 요청 연구 동기 시장 변화, 신기술, 경쟁업체의 대응, 설계 결함, 테스트 실패 등의 다양한 외부적 요인 -> 잦은 요구사항 변경 요청 SW 개발 과정의 마지막 단계인 ‘테스팅’을 얼마나 완벽하게 할 수 있는지 테스트 커버리지 측정 -> 요구사항부터 테스트까지의 추적성 부족으로 테스팅이 어려움 소프트웨어 개발 프로세스 Requirement Analysis Design Coding Testing SW 테스트의 중요성은 점점 증가되고 있으나, 일반적으로 개발자들은 빠른 시일 내에 제품을 개발해야 하기 때문에, SW 테스트에는 시간과 관심을 크게 두지 못하는 것이, 국내의 SW 개발의 현실이다. 프로젝트 관리자가 SW 테스트에 대한 관심이 없고 전문가도 부족한 상황에서, SW 제품의 신뢰성 향상을 위해서는 개발 전반에 걸친 SW 테스트에 대한 증대와 전문가의 양성이 필요하다. 요구사항 변경 요청 변경된 요구사항과 관련된 요소들 모두 수정

연구 동기 본 논문에서는 요구사항으로부터 테스트 케이스까지 추적성을 모델 변환을 통해 확보할 수 있는 방법을 제시합니다. 이를 통해 요구사항에 알맞은 테스트 케이스를 생성하여 테스트 커버리지를 높게 충족할 수 있습니다.

2 관련 연구

J. Hartmann, M. Vieira, H. Foster and A. Ruder 관련 연구 J. Hartmann, M. Vieira, H. Foster and A. Ruder –A UML-based Approach to System Testing 완성된 소프트웨어의 상태를 이용하여 테스트 케이스 도출 실행 모델로부터의 테스트 케이스 도출이기 때문에 요구사항과 테스트 케이스가 다를 가능성이 있다. 개발에 참여하지 않은 테스터의 경우 규모가 큰 소프트웨어의 복잡한 다이어그램만으로 테스트 케이스를 도출해야 함

M. Sarma, D. Kundu and R. Mall 관련 연구 M. Sarma, D. Kundu and R. Mall – Automatic Test Case Generation from UML Sequence Diagram 상태 다이어그램 형태의 Sequence Diagram Graph(SDG)를 정의하여 시퀀스 다이어그램의 시나리오를 표현한 후 테스트 케이스 도출 시퀀스 다이어그램의 메시지만을 이용하여 조건을 결정하므로 다양한 결합 조각을 고려하지 못함 항목 설명 S 운영 시나리오의 다양한 상태를 나타내는 모든 노드의 집합 ∑ 하나의 상태에서 다른 상태로의 전이를 나타내는 엣지의 집합 q0 집합이 시작되는 상태를 나타내는 초기 노드 F 작업이 종료되는 상태를 나타내는 최종 노드의 집합

안성빈 – Requirement based Testing on Use Case Paradigm 관련 연구 안성빈 – Requirement based Testing on Use Case Paradigm 액터의 입력와 응답에 의한 반복적인 메소드의 흐름

관련 연구

3 테스트 케이스 추적성 메트릭스

테스트 케이스 추적성 메트릭스 요구사항 명세서는 시스템이 어떤 속성이나 특성을 가지고 동작해야 하는지에 대한 설명이다. 이는 유스 케이스 다이어그램으로 변환될 수 있다. 시스템을 이용하는 액터와 처리기능인 유스 케이스들 사이의 관계를 나타낸다. 이를 위해서는 목표 지향 요구사항의 형식이 필요하다

시스템의 속성이나 특성을 가지고 어떻게 동작해야 하는지 명시 테스트 케이스 추적성 메트릭스 요구사항 명세서 시스템의 속성이나 특성을 가지고 어떻게 동작해야 하는지 명시 요구사항 명세서는 시스템이 어떤 속성이나 특성을 가지고 동작해야 하는지에 대한 설명이다. 이는 유스 케이스 다이어그램으로 변환될 수 있다. 시스템을 이용하는 액터와 처리기능인 유스 케이스들 사이의 관계를 나타낸다. 이를 위해서는 목표 지향 요구사항의 형식이 필요하다

테스트 케이스 추적성 메트릭스 요구사항 명세서는 시스템이 어떤 속성이나 특성을 가지고 동작해야 하는지에 대한 설명이다. 이는 유스 케이스 다이어그램으로 변환될 수 있다. 시스템을 이용하는 액터와 처리기능인 유스 케이스들 사이의 관계를 나타낸다. 이를 위해서는 목표 지향 요구사항의 형식이 필요하다

테스트 케이스 추적성 메트릭스 유스 케이스 다이어그램은 시퀀스 다이어그램으로 변환될 수 있다. 유스 케이스에 대한 이벤트 시퀀스를 정의한다. 각 유스 케이스마다 시퀀스 다이어그램이 생성된다. 시퀀스 다이어그램의 시스템 객체들 간 어떤 메시지가 어떤 순서로 발생하는지 나타낸다.

테스트 케이스 추적성 메트릭스 요구사항 명세서는 시스템이 어떤 속성이나 특성을 가지고 동작해야 하는지에 대한 설명이다. 이는 유스 케이스 다이어그램으로 변환될 수 있다. 시스템을 이용하는 액터와 처리기능인 유스 케이스들 사이의 관계를 나타낸다. 이를 위해서는 목표 지향 요구사항의 형식이 필요하다

테스트 케이스 추적성 메트릭스 시퀀스 다이어그램은 액티비티 다이어그램으로 변환될 수 있다. 시퀀스 다이어그램은 객체 간 메시지들의 집합이다. 시퀀스 다이어그램의 Message와 각 메시지의 Send/Recieve를 액티비티 다이어그램의 Node와 Control flow로 변환한다. loop, alt, opt들은 Decision node로 변환한다.

테스트 케이스 추적성 메트릭스 요구사항 명세서는 시스템이 어떤 속성이나 특성을 가지고 동작해야 하는지에 대한 설명이다. 이는 유스 케이스 다이어그램으로 변환될 수 있다. 시스템을 이용하는 액터와 처리기능인 유스 케이스들 사이의 관계를 나타낸다. 이를 위해서는 목표 지향 요구사항의 형식이 필요하다

테스트 케이스 추적성 메트릭스 액티비티 다이어그램은 테스트 시나리오로 변환될 수 있다. 액티비티 다이어그램에서 추출된 액티비티 경로는 input에서부터 output까지의 모든 경로이다. 액티비티 경로를 모두 체크하면 테스트 커버리지를 만족할 수 있는 테스트 시나리오를 생성할 수 있다.

테스트 케이스 추적성 메트릭스 요구사항 명세서는 시스템이 어떤 속성이나 특성을 가지고 동작해야 하는지에 대한 설명이다. 이는 유스 케이스 다이어그램으로 변환될 수 있다. 시스템을 이용하는 액터와 처리기능인 유스 케이스들 사이의 관계를 나타낸다. 이를 위해서는 목표 지향 요구사항의 형식이 필요하다

테스트 시나리오 테스트 케이스 테스트 유닛 테스트 케이스 추적성 메트릭스 테스트 시나리오는 테스트 유닛들로 변환될 수 있다. 테스트 시나리오는 액티비티 다이어그램 Node들의 흐름이다. 액티비티 다이어그램의 Node들은 시퀀스 다이어그램에서의 Message이다. 이는 각 객체의 Method를 의미하므로 테스트 유닛[7]으로 볼 수 있다. 테스트 유닛은 테스트 케이스로 변환될 수 있다. 각 테스트 유닛들은 Carlson이 정의한 Design Unit을 재 정의한 것이다. 테스트 유닛에는 Method, Reusable Pattern, State, Maximum Linear Unit, Dialogue로 이루어져 있는데 이 메트릭스에서는 method에 대한 테스트 유닛 정의를 사용한다[7]. 테스트 유닛

테스트 케이스 추적성 메트릭스 본 논문에서는 요구사항으로부터 테스트 케이스까지 추적성을 모델 변환을 통해 확보할 수 있는 방법을 제시합니다. 이를 통해 요구사항에 알맞은 테스트 케이스를 생성하여 테스트 커버리지를 높게 충족할 수 있습니다.

4 결론 및 향후 계획

결론 및 향후 계획 결론. 요구사항으로부터 테스트 케이스까지의 추적성 메트릭스를 제안함으로써 잦은 요구사항의 변경에도 테스트 케이스의 생성 및 삭제에 도움이 된다. 완성된 프로그램이 아닌 요구사항부터의 세부적인 모델링을 추출하여 테스트 케이스 생성을 하므로 테스트 커버리지를 높게 충족할 수 있다. 향후 연구. 다양한 테스트 커버리지를 적용할 수 있도록 모델 변환 규칙을 정제하여 자동화 할 수 있는 도구를 구현할 것이다. Goal Oriented Requirement Engineering을 통하여 좀 더 명확한 요구사항부터 테스트 케이스까지의 추적성 메트릭스를 연구할 것이다.

감사합니다.