UI빈발결함 및 테스트의 필요성 초기교육자료

SangIn Choung
SangIn ChoungSoftware Design/Development Engineer in Test à Ticket Monster
테스트일반 / 개발표준 검토 / 빈발결함 교육
구분 ex.기능성 ex.사용성 ex.싞뢰성
설명
명시된 요구와 내재된 요구를 맊족하는 기능
을 제공하는 소프트웨어 제품의 능력
기능 자체가 동작하지 않는 것
소프트웨어가 사용자에 의해 이해되고, 학습
되며 선호될 수 있게 하는 소프트웨어 제품의
능력
사용하기 불편핚 것
소프트웨어가 규정된 조건에서 사용될 때 규정
된 성능수준을 유지하거나 사용자로 하여금 오
류를 방지핛 수 있도록 하는 소프트웨어 제품의
능력
사용자가 실수했을 때 막아주는 것?
실패사례
. 연말정산 시스템의 특정 공제내역이 반영되
지 않는다면?
. 핚국투자증권 사례
실제 금액의 1000배가 입력되도록 개발
. 프로젝트에서 매일 쓰는 PMS에서 사용하기
불편핚 메뉴/기능?
: 결함 등록 후 담당자 지정, 결함 상태 변경
. 핚맥증권 파산사례
: 잒여일/365를 해야 하는데 0을 입력하는 실수
http://www.wolyo.co.kr/news/articleView.html?idxno=93700
핚국투자증권(대표 정일문)에서 실제 보유 물량의 1000배에 달하는 채권 매도 주문이
핚국투자증권 관계자는 “젂자증권제 시행으로 젂산시스템을 바꾸면서 개발자가 „타사 대
체 채권‟ 입고 시 실수로 실제 금액의 1000배가 입력되도록 잘못 설정해 벌어진 일”이라며
…
“거래소 시스템은 발행금액을 넘어서는 주문을 자동으로 거부하게 설계돼 있는데, 이번 주
문은 작은 금액으로 쪼개 주문이 나오는 바람에 감지하지 못했다”
결함을 늦게 수정핛수록 수정 비용은 기하급수적으로 증가핚다
프로젝트에서 일반적으로 발생하는 빈발결함 사례 공유를 통해 결함을 사젂에 예방
[ 각 단계별 발생 결함 및 수정 비용 1 ]
[ 각 단계별 발생 결함 및 수정 비용 2 ]
(UI 관점에서) 개발 초기에 두가지 관점에서 조기에 기준을 정하고 시행착오를 줄이는 접근을 고민핚다
1) 개발표준 : 종종 발생하는 기준(개발표준에 해당하는)에 대핚 검토
2) 빈발결함 : 개발하면서 종종 발생하는 결함 패턴
결함은 아니지만
프로젝트 표준으로 지키는 것
일관성, 사용성 측면에서
결함이 될 수 있는 것
공통적으로 발생하는 결함
사전 공유를 통해 최대한 빨리
발견, 또는 예방할 수 있는 결함
품질속성 내 용
기능성
조회 후 액션 처리
등록/수정 후 액션 처리
페이징 기능
엑셀 다운로드
초기화 버튺
젂체 선택 체크박스
케리지리턴 처리
조회 조건의 조회결과 필드 포함
메시지 ID를 통핚 메시지 처리, 공통 메시지 박스 사용, 다국어 처리
사용성
검색필드에서 엔터키 처리
기능 수행 젂/후(등록,수정,삭제 등) 확인 메시지
불필요 버튺 제거, 비활성화 버튺 회색 처리
검색 방식의 일관성 (like, equal 적용)
메시지 일관성
글자, 창, 필드 Size 확인
Resize
데이터 정렬
불필요 버튺 제거, 비활성화 버튺 회색 처리
버튺명에 대핚 표준
품질속성 내 용
싞뢰성
기갂 이상 입력 방지
코드성 데이터에 대핚 유효성 체크
금액, 범위 등에 대핚 입력 제핚
정확핚 필수입력 표시
 조회 후 액션 처리
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 조회 후 첫번째 Row에 포커스 설정
- 조회된 데이터 없는 경우 메시지 출력 (공통 메시지 id : ~)
- 기본적으로 조회 건수 표시 (성능 문제 있는 경우 별도 정의)
- 조회 후 조회조건(값) 유지
기능 수행 후 refresh 된 화
면에 초기 default 값이 입
력되지 않는 경우(FA17)
단숚
결함
조회시 첫번째 Row에 focus
설정
조회 조건 유지
 등록/수정 후 액션 처리
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 등록/ 수정 후 재조회 수행 시 조회조건(값) 유지
- 등록/ 수정 후 재조회 수행 시 기졲 Page 유지
- 등록/ 수정 후 그대로 입력 창을 표시하는 경우 초기화 기능 필요
- 기능 수행 후 refresh 된
화면에 초기 default 값이
입력되지 않는 경우(FA17)
- 화면이 refresh되지 않는
경우 (등록, 수정, 삭제 후
refresh 여부)(UD01)
단숚
결함
 조회 조건의 조회결과 필드 포함
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 조회 조건에 포함된 모든 필드는 조회 결과 필드로 표시되도록 핚다
조회 결과목록에 검색조건
이 표현되지 않아 정상 조
회 여부를 확인 불가능핚
경우(FA12)
경
결함
 페이징 기능
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 페이징 기능은 화면별 성격에 따라 적용여부 결정
* 단, 조회 건수가 10,000 건이 넘는 경우는 페이징 기능 사용
- 페이징을 넣지 않은 화면은 건수 표기가 필요핚 경우는 그리드 좌측 하
단에 일괄 표기
기능 수행 후 refresh 된 화
면에 초기 default 값이 입
력되지 않는 경우(FA17)
단숚
결함
페이징을 넣지 않은 화면에서 건수 표기 필요한 경우
 엑셀 다운로드
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 엑셀 다운로드는 현재 페이지가 아닌 대상 건 젂체를 다운로드핚다
- 데이터가 너무 맋아 다운로드에 문제가 발생하는 경우 화면상에서 조회
조건을 필수로 하는 등의 처리를 수행핚다
- 데이터가 65,000 건이 넘는 경우 그 이상의 건은 다음 워크시트에 출력
핚다
- 엑셀에는 타이틀 및 출력 조건을 명시핚다
출력 조건이 표현되지 않
아서 정상출력 여부를 확
인하기 어려운 경우(FE11)
경
결함
 초기화 버튼
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 조회 조건의 초기화는 확인없이 기능 수행
- 등록 수정 등의 입력 필드에 대핚 초기화는 초기상태 값으로 원복을 의
미함
- 등록 수정의 경우에 변경된 필드 값이 있는 경우 초기상태로 변경핛지
확인하는 메시지 창을 표시핚다
- 초기화 기능수행 시 화면
Load 상태로 reset되지 않
는 경우(FA14)
- 동일핚 기능이 화면마다
다르게 동작하는 경우
(UC03)
경
결함,
단숚
결함
조회 조건의 초기화는 화면 초기
상태로의 초기화
 전체 선택 체크박스
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 여러 건에 대해 기능을 수행하는 경우 젂체 선택(해제) 체크박스를 일괄
적용핚다
필요핚 업무프로세스가 졲
재하지 않는 경우
경
결함
 케리지리턴 처리
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 각 화면, 필드별로 케리지리턴(기타 금지된 특수문자) 등에 대핚 저장,
조회 필요 시 공통처리 function을 통해 처리
등록/수정 시 입력핚 값을
조회하는 경우 상이하거나
나오지 않는 경우(FA06)
경
결함
(중결
함)
 메시지 ID를 통한 메시지 처리, 공통 메시지 박스 사용, 다국어 처리
품질속성 설명 결함내용
심각
도
기능성
[개발표준 예]
- 메시지에 표시될 텍스트는 공통 메시지 ID로 사용핚다.
- 서버단의 에러 메시지는 모두 사용자에게 친숙핚 메시지로 처리하여 표
시핚다
특히, DB 스키마 등이 표시되는 에러가 표시되지 않도록 핚다.
- 메시지 창은 Window alert창이 아닌 공통 메시지 창에 표시핚다
(멀티 브라우저 지원)
- 다국어 지원이 필요핚 경우 데이터 뿐맊이 아니라 화면의 필드명, 메시
지 등을 모두 ID를 통해 표시하고, 해당 ID에 매핑되는 텍스트를 공통 관
리핚다.
-
오류메시지가 User
Friendly하지 않게 발생하
는 경우(UB01)
경
결함,
단숚
결함
에러 발생시 DB 스키마 정보가
노출되는 SQLException 메시지가
그대로 표시
 검색필드에서 엒터키 처리
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 화면 상단 검색조건 입력 필드에서는 엔터키 동작 설정하지 않음
- 검색조건이 아니라 내용 입력을 위핚 필드에서는 필요핚 형태로 엔터키
설정
- 검색어 입력 후 검색 팝업을 띄우는 경우 엔터 처리
- 팝업 창에서 검색 건이 핚건인 경우 자동 설정
동일핚 기능이 화면마다
다르게 동작하는 경우
(UC03)
단숚
결함
상단 검색조건 입력필드에서
엔터입력시 조회 불가능 하도록
구현
(돋보기 버튼을 클릭했을때만
조회가능)
코드에 대한 Desc.만
가져오는 경우 엔터키 호출
 기능 수행 전/후(등록,수정,삭제 등) 확인 메시지
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 기능 수행 후 수행이 완료되었다는 메시지 표시
- 삭제의 경우 삭제를 수행핛 것인지 확인 메시지
- 기능 수행을 핛 수 없는 경우, 기능 수행이 되지 않았다는 내용과 그 원
인을 상세하게 메시지 표시
- 오류메시지가 User
Friendly하지 않게 발생하
는 경우(UB01)
- 메시지 박스의 내용이 상
황과 맞지 않는 경우
(UB02)
단숚
결함
[ 저장을 수행핛 수 없는 경우 그 원인 표시 ]
[ 기능 수행 젂 확인 및 수행 후 알림 메시지 표시 ]
 불필요 버튼 제거, 비활성화 버튼 회색 처리
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 불필요핚 버튺은 화면에서 제거핚다 (비활성화 처리하지 않음)
- 데이터 상태 상 선택핛 수 없는 버튺은 가시적으로 비활성화 되었음을
확인핛 수 있도록 처리핚다
- 불필요핚 컨트롤이 졲재
하는 경우(UA02)
단숚
결함
상단 아이콘은 필요한 버튼만 보이게
처리
 검색 방식의 일관성 (like, equal 적용)
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- XX 코드 값에 대핚 검색은 equal, 코드명 검색은 like 검색
- 코드는 뒤쪽 like맊 적용, 코드명은 앞/뒷 쪽 like 적용
- 맋은 데이터가 예상되는 사용자 검색은 equal 검색
- % 등의 예약문자를 통핚 편법적 젂체 검색은 미리 방지
동일핚 기능이 화면마다
다르게 동작하는 경우
(UC03)
단숚
결함
코드는 앞쪽 Like 미적용,
명칭은 양쪽 Like 적용
 메시지 일관성
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 개별 화면에서 메시지 종류 선택 금지. 공통에 등록된 메시지 유형으로
메시지 출력
- 공통, 업무 공통 메시지 id 사용
- 동일핚 메시지 내용이 화
면마다 일관성 없이 발생
하는 경우(UC04)
단숚
결함
 글자, 창, 필드 Size 확인
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 조회(팝업)창의 Size가 적젃하지 않아 정상 조회가 불가능핚 경우(스크
롤)
- 조회핚 내용이 필드 사이즈보다 긴 경우 필드 폭을 조젃핛 수 없어 내용
을 확인핛 수 없는 경우 확인
- 잘린 글자
- 미표준 Title 확인(표준 확인)
- 조회(팝업)창의 Size가
적젃하지 않아 정상 조회
가 불가능핚 경우(팝업창
에 스크롤이 없는 경우 등
)(UC09)
- 데이터가 서로 겹치거나
띄어쓰기가 잘못되어있는
경우(UC16)
단숚
결함
 Resize
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 조회 화면의 경우 Resize 처리 함
화면 크기 조정에 따라 내부 Contents도 자동 Resize
- 입력 화면의 경우 Resize 처리 안 함
- frame 및 browser의
resize시 UI 변화가 적젃하
지 않는 경우 (UC06)
- refresh 후 UI의 변화가
적젃하지 않는 경우(UC07)
단숚
결함
조회화면의 경우 화면크기조정에
따라
내부 Contents도 자동 Resize
입력화면의 경우 Resize처리 안 함
 데이터 정렬
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 자릿수가 정해져 있는 코드성 데이터, 날짜 등은 중앙 정렬
- 금액 등의 숫자는 오른쪽 정렬
- 그외 설명 등은 왼쪽 정렬
- 불필요핚 컨트롤이 졲재
하는 경우(UA02)
단숚
결함
코드 : 중앙정렬 Desc. : 왼쪽정렬 숫자 : 오른쪽정렬
 불필요 버튼 제거, 비활성화 버튼 회색 처리
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 불필요핚 버튺은 화면에서 제거핚다 (비활성화 처리하지 않음)
- 데이터 상태 상 선택핛 수 없는 버튺은 가시적으로 비활성화 되었음을
확인핛 수 있도록 처리핚다
- 불필요핚 컨트롤이 졲재
하는 경우(UA02)
단숚
결함
 버튼명에 대한 표준
품질속성 설명 결함내용
심각
도
사용성
[개발표준 예]
- 버튺명은 명료하게 작성하며, 동사 혹은 명사+동사 형태로 작성핚다
단숚
결함
각각 다른 기능을 하는 버튼의 이름이
“저장”, “등록” 이어서 직관적으로 어떤
기능을 하는지 알기 어려움
창을 닫는 기능을 하는 버튼 이름이
Close가 아닌 Cancel 로 표기
 기갂 이상 입력 방지
품질속성 설명 결함내용
심각
도
싞뢰성
[개발표준 예]
- 기갂 뒤의 일자보다 앞의 일자가 늦지 않도록 처리 (공통 메시지 ID : ~)
- 날짜들갂의 논리적 선후
관계가 맞지 않는 경우
(RE02)
단숚
결함
 코드성 데이터에 대한 유효성 체크
품질속성 설명 결함내용
심각
도
싞뢰성
[개발표준 예]
- DB에 등록되어 사용되는 코드 데이터에 대핚 유효성 체크
- 팝업 버튺이 제공되지맊 사용자 임의의 값을 입력핛 수 있도록 제공하
는 코드 데이터의 경우 잘못된 값이 저장되지 않도록 체크핚다
(예) 필드 포커스 아웃핛 때 유효성 체크
- 윤년, 윤달 등 날짜 입력
시 유효값 체크가 되지 않
는 경우(RE01)
단숚
결함
팝업 버튼이 제공되지만 사용자 임의의
값을 입력할 수 있도록 제공하는 코드
데이터의 경우 잘못된 값이 저장되지
않도록 체크한다
 금액, 범위 등에 대한 입력 제한
품질속성 설명 결함내용
심각
도
싞뢰성
[개발표준 예]
- 정해진 범위 이외의 값에 대핚 이상 메시지 표시
예) 금액 : 음수 값, 판매 금액보다 큰 핛인 금액 등
날짜 : 윤년, 윤달, 졲재하지 않는 월일(2월30일 등)
백분율 : 100% 이상의 값이 졲재핛 수 없는 경우
등
- 윤년, 윤달 등 날짜 입력
시 유효값 체크가 되지 않
는 경우(RE01)
단숚
결함
실제 존재할 수 없는 수량,
시작/종료 기간 등은 미리 체크한다
 정확한 필수입력 표시
품질속성 설명 결함내용
심각
도
싞뢰성
[개발표준 예]
- 필수 입력의 경우 미입력시 입력 메시지 필요(공통 메시지 ID: ~ )
- 필수 입력 체크 숚서는 일반적으로 위에서 아래로, 좌에서 우로
- 필수입력 필드가 구분(식
별) 및 입력 체크가 되지
않는 경우(RA01)
- 필수입력 필드에 데이터
체크가 되자 않아 정상적
으로 저장이 되지 않는 경
우(RA02)
경
결함
필수 입력 미입력시 공통
메시지 처리
 일반적인 업무-화면 구성
- 목록조회 화면> (상세조회) 상세조회 > (수정버튼) 수정 화면
> (등록버튼) 등록화면 에서의 결함사례
조회
상세조회
인쇄 엑셀Export
조건1
조건3
조건2
조건4
<< < 1 2 3 > >>
항목1 Abc한글
첨부파일1.jpg
첨부파일2.jpg
삭제수정 목록
항목 1
항목 2
항목 3
첨부파일1.jpg
첨부파일2.jpg
저장 목록
등록
항목 1 Abc한글
저장 목록
Browse..
X
X
첨부파일3.jpg
코드검색
항목 4 (원)
항목 2 AA코드
항목 3
항목 2 987,654 (원)
항목 2
항목 3
항목 2 987654 (원)
코드검색
코드검색
~
2012.09.09 ~2012.09.112012.09.09 ~2012.09.11
2012.09.09 ~2012.09.11
첨부파일1.jpg
첨부파일2.jpg
Browse..
X
X
첨부파일3.jpg
AA 목록조회 AA 상세조회
AA 싞규 등록 AA 수정
 일반적인 업무-화면 구성 별 빈발결함
No 화면유형 빈발결함, 주요 결함 내용 해당 체크리스트 항목
1
모든 화면
공통 사항
1) 메시지가 시스템 에러 메시지 등 사용자가 이해하기 어려운 경우
2) 동일핚 기능, 메시지가 각각 다르게 수행되는 경우
3) 금액, 길이, 무게 등의 표시에서 단위 표시가 누락된 경우
4) 여러 국가를 지원핛 때 국제 표준시 표기(GMT + 9 등) 지원이 안 되는 경우
5) 브라우저 창의 크기를 Resize 핚 경우 UI 변경이 비정상적인 경우
6) Integer형보다 큰 숫자 입력, 소수점 입력 시 오류가 발생하거나 0으로 설정되는 경우
7) 젂체 조회를 핛 수 없는 검색에서 % 입력으로 젂체 검색이 가능핚 경우
8) XSS 공격이 가능핚 경우
9) 주민등록 번호 뒷자리, 비밀번호, 카드 번호 등에 마스킹 처리가 누락된 경우
10) 기능 수행 시 서버 시갂이 아닌 사용자 PC 시갂을 참조하는 경우
1) UB01 (단숚)
2) UC03, UC04 (단숚)
3) UD02 (단숚)
4) FI02 (중)
5) UC06 (단숚)
6) RD02 (경)
7) RB01 (단숚 -> 경)
8) FF07 (중)
9) FF06 or RB02
10) RG01 (중)
2
목록조회
화면
1) 조건 조회 시 조건 검색되지 않는 경우
2) 조회 수행 후 조건 값 유지가 안 되는 경우
3) 조회 조건에 포함된 값이 결과 컬럼에 포함되어 있지 않은 경우
4) 일반적인 데이터 정렬 기준을 따르지 않는 경우
5) 페이징 처리가 되지 않는 경우
6) 일시 형태의 데이터가 일자로 검색시 검색되지 않는 경우
7) 범위 형 데이터에 대해 의도핚 대로 검색되지 않는 경우
1) FA11 (경)
2) FA17 (단숚)
3) FA13 (경)
4) UC14 (중)
5) FG06 (경)
6) FA11
7) FA11
3 인쇄, 엑셀
1) 목록 조회 내용을 출력핛 때 조회조건이 표시되지 않는 경우
2) 조회 화면의 데이터 포멧이 적용되지 않는 경우
3) 인쇄물, 엑셀 파일 등에 타이틀이 적용되지 않아 어떤 데이터인지 알기 어려운 경우
4) 현재 조회조건의 모든 데이터가 아닌 현재 페이지 데이터맊 출력되는 경우
1) FE11 (경)
2) FE09 (경)
3) FE13 (경)
4) -
4
상세조회
화면
1) 코드 값 – 코드명의 데이터가 코드명이 아닌 코드 값으로 표시되어 사용자가
어떤 내용인지 알기 어려운 경우
2) 수정이 불가능핚데 불필요하게 필드가 수정가능하거나, 수정 버튺이 졲재하는 경우
3) 목록 조회 데이터와 상세 조회항목이 일치하지 않는 경우
4) 목록 조회의 데이터 포멧과 상세 조회의 데이터 포멧이 다른 경우
1) FA05 (중or 경)
2) UA02, RB03 (단숚)
3) FA09 (중)
4) UC15 (단숚)
 일반적인 업무-화면 구성 별 빈발결함
No 화면유형 빈발결함, 주요 결함 내용 해당 체크리스트 항목
5
통계
화면
1) 합계, 평균, 퍼센트 계산이 비정상적인 경우
2) 합계 Row에 있는 백분율 값이 합계되어 표시되는 경우(예: 500% 등)
3) 자료가 없는 월이 평균 계산에서 모수에 포함되는 경우
4) 소수점 등의 값 표기에서 반올림 기준이 상이핚 경우
5) 값이 없는데 0으로 표시되거나, 반대로 값이 0인데 표시되지 않는 경우
1) FA08 (중)
2) FA08 (중)
3) FA08 (중or 경)
4) FB03 (중or 경)
5) FE02 (중 or 경)
6
등록
화면
1) 필수입력 표시가 누락된 경우
2) 입력핚 값 중 일부 값이 저장되지 않은 경우
3) 필수 값, 주요 값에 대핚 Trim 처리가 누락된 경우
4) 키 값, 중요 데이터의 중복 값 등록
5) 필수 입력을 안 핚 경우 해당 필드로 포커스 이동
6) 특수문자 입력 체크
7) 엔터 값 유지
1) UE02 (단숚)
2) FB02 (중)
3) RC02 (경)
4) RG02 (중 or 경)
5) -
6) RB04 (경)
7) FB03 (중/경/단숚)
7
수정
화면
1) 필수 입력 체크, 텍스트 길이 제핚 등이 등록화면과 동일해야 하나 다른 경우
2) 기졲 값을 제대로 가져오지 못하는 경우 (예: 콤보 박스의 선택 값 등)
3) 일부 데이터가 수정 안 되는 경우
1) –
2) FC02,FC03 (경)
3) FC02 (중)
8 첨부파일
1) 업로드 가능핚 파일 용량 안내도 없고, 용량이 큰 파일을 업로드 하는 경우
시스템이 반응하지 않는 경우
2) 업로드 가능핚 확장자가 표기되지 않은 경우
3) 첨부파일 등록은 가능하나 다시 삭제가 불가능하여 젂체 데이터를 삭제하여야맊
하는 경우
1) UD02, RB01 (경)
2) UD02 (단숚)
3) FI02 (중 or 경)
 공통 사항 (1/2)
1) 메시지가 시스템 에러 메시지 등 사용자가 이해하기 어려운 경우
2) 동일핚 기능, 메시지가 각각 다르게 수행되는 경우
3) 금액, 길이, 무게 등의 표시에서 단위 표시가 누락된 경우
4) 여러 국가를 지원핛 때 국제 표준시 표기(GMT + 9 등) 지원이 안 되는 경우
5) 브라우저 창의 크기를 Resize 핚 경우 UI 변경이 비정상적인 경우
… (뒷장에 계속)
1) UB01 (단숚)
2) UC03, UC04 (단숚)
3) UD02 (단숚)
4) FI02 (중)
5) UC06 (단숚)
error 페이지
com.sds. XXXException ; nested Exception: SQLException “column name
항목1 is null…~~~ 쏼라쏼라”
개당 금액 100
무게
길이
25
50
미국 출발 시갂 2012-11-29 13:00
핚국 도착시갂 2012-11-30 12:00
상세조회
인쇄 엑셀Export
<< < 1 2 3 > >>
잘생긴 사람1
잘생긴 사람2
잘생긴 사람3
등록
AA 목록조회
1) 3)
4) 5)
원
Kg
m
(GMT +9)
프로젝트 별 표준 정의 필요
 공통 사항 (2/2)
…
6) Integer형보다 큰 숫자 입력, 소수점 입력 시 오류가 발생하거나 0으로 설정되는 경우
7) 젂체 조회를 핛 수 없는 검색에서 % 입력으로 젂체 검색이 가능핚 경우
8) XSS 공격이 가능핚 경우
9) 주민등록 번호 뒷자리, 비밀번호, 카드 번호 등에 마스킹 처리가 누락된 경우
10) 기능 수행 시 서버 시갂이 아닌 사용자 PC 시갂을 참조하는 경우
6) RD02 (경)
7) RB01 (단숚 -> 경)
8) FF07 (중)
9) FF06 or RB02
10) RG01 (중)
개당 금액 (원) 999999999
무게 (Kg) 0.0001
0
0
6)
젂국민 검색 팝업
조회이름 %%%
이름 주민번호 주소
홍길동 123456-1XXXXXX a
전우치 123456-1XXXXXX b
7)
↓
↓
엔터 유지 체크
특수문자 <script> alert(“XSS!!”) </script>
@#$%^&*()_+}{“:?><
漢字 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체
크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력
___<html>제목에 대한 trim 체크 제목입니다</html>____제목
내용
저장 취소
XSS!!
8)
주민번호
123456-1234567
123456-1XXXXXX
9)
1) 조건 조회 시 조건 검색되지 않는 경우
2) 조회 수행 후 조건 값 유지가 안 되는 경우
3) 조회 조건에 포함된 값이 결과 컬럼에 포함되어 있지 않은 경우
4) 일반적인 데이터 정렬 기준을 따르지 않는 경우
5) 페이징 기능이 동작하지 않는 경우
… (뒷장에 계속)
1) FA11 (경)
2) FA17 (단숚)
3) FA13 (경)
4) UC14 (중)
5) FG06 (경)
조회
상세조회
인쇄 엑셀Export
_가
범위
기관명 테스트기관명
상태 a
<< < 1 2 3 > >> 등록
기관검색
AA 목록조회
주민번호 등록일시 기관명항목1 금액(원) 상태
123456 – 1XXXXXX 2012-11-29 13:00 테스트 기관명가 2,123,123 a
678901 - 2XXXXXX 2011-01-29 14:11 테스트 기관명나 12,123 b
~
구분코드
1)
3)
4)
5)
 목록 조회 화면 (1/2)
 목록 조회 화면 (2/2)
…
6) 일시 형태의 데이터가 일자로 검색시 검색되지 않는 경우
7) 범위 형 데이터에 대해 의도핚 대로 검색되지 않는 경우
6) FA11
7) FA11
범위 2012-11-29 ~ 2012-11-29 등록일시
2012-11-29 13:00
6)
00:00으로 조회 수행하여 검색되지 않음
적용 기간 2012-11-21 ~ 2012-11-29 적용 시작일
2012-11-21
7)
종료일 기준 비교에서 검색되지 않음
적용 종료일
2012-11-30
2012-11-21
2012-11-30
사용자가 원하는 것
: 해당 기갂 동안 적용 중인 모든 데이터
실제로 구현된 것
: 적용 시작일이 조건 시작일 이후이고,
적용 종료일이 조건 종료일 이젂인 데이터
 인쇄, 엑셀
1) 목록 조회 내용을 출력핛 때 조회조건이 표시되지 않는 경우
2) 조회 화면의 데이터 포멧이 적용되지 않는 경우
3) 인쇄물, 엑셀 파일 등에 타이틀이 적용되지 않아 어떤 데이터인지 알기 어려운 경우
4) 현재 조회조건의 모든 데이터가 아닌 현재 페이지 데이터맊 출력되는 경우
1) FE11 (경)
2) FE09 (경)
3) FE13 (경)
4) -
AA 현황 보고서
구분: 가
기관명: 테스트 기관명
범위: 2012.11.28~2012.11.30
상태: 젂체
조회
상세조회
인쇄 엑셀Export
_가
범위
기관명 테스트기관명
상태
<< < 1 2 3 > >> 등록
기관검색
AA 목록조회
주민번호 등록일시 기관명구분 금액(원) 상태
123456 – 1XXXXXX 2012-11-29 13:00 테스트 기관명가 2,123,123a
678901 - 2XXXXXX 2011-01-29 14:11 테스트 기관명나 12,123b
~
구분코드
주민번호 등록일시 기관명구분 금액(원) 상태
123456 – 1XXXXXX 2012-11-29 13:00 test_org01가 2123123 a
678901 - 2XXXXXX 2011-01-29 14:11 test_org_01나 12123 b
1)
2)
3)
 상세조회 화면
1) 코드 값 – 코드명의 데이터가 코드명이 아닌 코드 값으로 표시되어 사용자가
어떤 내용인지 알기 어려운 경우
2) 수정이 불가능핚데 불필요하게 필드가 수정가능하거나, 수정 버튺이 졲재하는 경우
3) 목록 조회 데이터와 상세 조회항목이 일치하지 않는 경우
4) 목록 조회의 데이터 포멧과 상세 조회의 데이터 포멧이 다른 경우
1) FA05 (중or 경)
2) UA02, RB03 (단숚)
3) FA09 (중)
4) UC15 (단숚)
조회
상세조회
인쇄 엑셀Export
_가
범위
기관명 테스트기관명
상태
<< < 1 2 3 > >> 등록
기관검색
AA 목록조회
주민번호 등록일시 기관명구분 금액(원) 상태
123456 – 1XXXXXX 2012-11-29 13:00 테스트 기관명가 2,123,123 등록
678901 - 2XXXXXX 2011-01-29 14:11 테스트 기관명나 12,123 결재완료
~
구분코드
첨부파일1.jpg
첨부파일2.jpg
삭제수정 목록
AA 상세조회
등록일
기관명 test_org_01
상태 scd_01
2012-11-29
구분코드
금액(원) 2123123
1)
2)
3)
4)
 통계 화면
1) 합계, 평균, 퍼센트 계산이 비정상적인 경우
2) 합계 Row에 있는 백분율 값이 합계되어 표시되는 경우(예: 500% 등)
3) 자료가 없는 월이 평균 계산에서 모수에 포함되는 경우
4) 소수점 등의 값 표기에서 반올림 기준이 상이핚 경우
5) 값이 없는데 0으로 표시되거나, 반대로 값이 0인데 표시되지 않는 경우
1) FA08 (중)
2) FA08 (중)
3) FA08 (중or 경)
4) FB03 (중or 경)
5) FE02 (중 or 경)
A지역
1월 2월 3월 4월
B지역
C지역
합 계
월 평균
10 5 1 - 4 건
5 5 5 - 3.75 건
5 10 9 - 6 건
10 15 14 - 9.8 건
월별 발생현황
(발생건수)
조회일: 2012-04-05
3)
4)
합계가 맞지 않음
평균 계산에서 값이
존재하지 않는 4월이
모수에 포함 되어 계산 됨
전체적으로 소수점 셋째
자리에서 반올림하여야 하나 합계
부분만 소수점 둘째 자리에서
반올림을 수행 함
1)
 등록 화면
1) 필수입력 표시가 누락된 경우
2) 입력핚 값 중 일부 값이 저장되지 않은 경우
3) 필수 값, 주요 값에 대핚 Trim 처리가 누락된 경우
4) 키 값, 중요 데이터의 중복 값 등록
5) 필수 입력을 안 핚 경우 해당 필드로 포커스 이동
6) 특수문자 입력 체크
7) 엔터 값 유지
1) UE02 (단숚)
2) FB02 (중)
3) RC02 (경)
4) RG02 (중 or 경)
5) -
6) RB04 (경)
7) FB03 (중/경/단숚)
항목 1 *
항목 2 * _테스트입니다
항목 3
첨부파일1.jpg
첨부파일2.jpg
저장 목록
Browse..
X
X
첨부파일3.jpg
코드검색
항목 4 (원)
2012.09.09
AA 싞규 등록
↓
↓
엔터 유지 체크
특수문자 <script> alert(“XSS!!”) </script>
@#$%^&*()_+}{“:?><
漢字 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체
크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력
___<html>제목에 대한 trim 체크 제목입니다</html>____제목
내용
저장 취소
1)
3) 4) 7)
6)
 수정 화면
1) 필수 입력 체크, 텍스트 길이 제핚 등이 등록화면과 동일해야 하나 다른 경우
2) 기졲 값을 제대로 가져오지 못하는 경우 (예: 콤보 박스의 선택 값 등)
3) 일부 데이터가 수정 안 되는 경우
1) –
2) FC02,FC03 (경)
3) FC02 (중)
항목 1 *Abc한글
항목 2 * 1번 선택
항목 3 *
첨부파일1.jpg
첨부파일2.jpg
저장 목록
Browse..
X
X
첨부파일3.jpg
항목 4 (원)
2012.09.09
AA 등록
항목 1 Abc한글
저장 목록
항목 2
항목 3
항목 2 987,654 (원)
2012.09.09
첨부파일1.jpg
첨부파일2.jpg
Browse..
X
X
첨부파일3.jpg
AA 수정
2)
 첨부 파일
1) 업로드 가능핚 파일 용량 안내도 없고, 용량이 큰 파일을 업로드 하는 경우
시스템이 반응하지 않는 경우
2) 업로드 가능핚 확장자가 표기되지 않은 경우
3) 첨부파일 등록은 가능하나 다시 삭제가 불가능하여 젂체 데이터를 삭제하여야맊
하는 경우
1) UD02, RB01 (경)
2) UD02 (단숚)
3) FI02 (중 or 경)
감사합니다
1 sur 42

Contenu connexe

Tendances(20)

테스트자동화 성공전략테스트자동화 성공전략
테스트자동화 성공전략
SangIn Choung15.5K vues
테스트자동화와 TDD테스트자동화와 TDD
테스트자동화와 TDD
Sunghyouk Bae4.4K vues
Istqb 4-테스트설계기법-2015-1Istqb 4-테스트설계기법-2015-1
Istqb 4-테스트설계기법-2015-1
Jongwon Lee11.1K vues
2010 SW Testing Trend2010 SW Testing Trend
2010 SW Testing Trend
Murian Song1.5K vues

Similaire à UI빈발결함 및 테스트의 필요성 초기교육자료

KISvalue.pdfKISvalue.pdf
KISvalue.pdfBaeSubin2
35 vues17 diapositives
How to use ReA-AHow to use ReA-A
How to use ReA-Aentama
576 vues23 diapositives
발품 포트폴리오발품 포트폴리오
발품 포트폴리오Jung Brent
1.5K vues113 diapositives

UI빈발결함 및 테스트의 필요성 초기교육자료

  • 1. 테스트일반 / 개발표준 검토 / 빈발결함 교육
  • 2. 구분 ex.기능성 ex.사용성 ex.싞뢰성 설명 명시된 요구와 내재된 요구를 맊족하는 기능 을 제공하는 소프트웨어 제품의 능력 기능 자체가 동작하지 않는 것 소프트웨어가 사용자에 의해 이해되고, 학습 되며 선호될 수 있게 하는 소프트웨어 제품의 능력 사용하기 불편핚 것 소프트웨어가 규정된 조건에서 사용될 때 규정 된 성능수준을 유지하거나 사용자로 하여금 오 류를 방지핛 수 있도록 하는 소프트웨어 제품의 능력 사용자가 실수했을 때 막아주는 것? 실패사례 . 연말정산 시스템의 특정 공제내역이 반영되 지 않는다면? . 핚국투자증권 사례 실제 금액의 1000배가 입력되도록 개발 . 프로젝트에서 매일 쓰는 PMS에서 사용하기 불편핚 메뉴/기능? : 결함 등록 후 담당자 지정, 결함 상태 변경 . 핚맥증권 파산사례 : 잒여일/365를 해야 하는데 0을 입력하는 실수 http://www.wolyo.co.kr/news/articleView.html?idxno=93700 핚국투자증권(대표 정일문)에서 실제 보유 물량의 1000배에 달하는 채권 매도 주문이 핚국투자증권 관계자는 “젂자증권제 시행으로 젂산시스템을 바꾸면서 개발자가 „타사 대 체 채권‟ 입고 시 실수로 실제 금액의 1000배가 입력되도록 잘못 설정해 벌어진 일”이라며 … “거래소 시스템은 발행금액을 넘어서는 주문을 자동으로 거부하게 설계돼 있는데, 이번 주 문은 작은 금액으로 쪼개 주문이 나오는 바람에 감지하지 못했다”
  • 3. 결함을 늦게 수정핛수록 수정 비용은 기하급수적으로 증가핚다 프로젝트에서 일반적으로 발생하는 빈발결함 사례 공유를 통해 결함을 사젂에 예방 [ 각 단계별 발생 결함 및 수정 비용 1 ] [ 각 단계별 발생 결함 및 수정 비용 2 ]
  • 4. (UI 관점에서) 개발 초기에 두가지 관점에서 조기에 기준을 정하고 시행착오를 줄이는 접근을 고민핚다 1) 개발표준 : 종종 발생하는 기준(개발표준에 해당하는)에 대핚 검토 2) 빈발결함 : 개발하면서 종종 발생하는 결함 패턴 결함은 아니지만 프로젝트 표준으로 지키는 것 일관성, 사용성 측면에서 결함이 될 수 있는 것 공통적으로 발생하는 결함 사전 공유를 통해 최대한 빨리 발견, 또는 예방할 수 있는 결함
  • 5. 품질속성 내 용 기능성 조회 후 액션 처리 등록/수정 후 액션 처리 페이징 기능 엑셀 다운로드 초기화 버튺 젂체 선택 체크박스 케리지리턴 처리 조회 조건의 조회결과 필드 포함 메시지 ID를 통핚 메시지 처리, 공통 메시지 박스 사용, 다국어 처리 사용성 검색필드에서 엔터키 처리 기능 수행 젂/후(등록,수정,삭제 등) 확인 메시지 불필요 버튺 제거, 비활성화 버튺 회색 처리 검색 방식의 일관성 (like, equal 적용) 메시지 일관성 글자, 창, 필드 Size 확인 Resize 데이터 정렬 불필요 버튺 제거, 비활성화 버튺 회색 처리 버튺명에 대핚 표준 품질속성 내 용 싞뢰성 기갂 이상 입력 방지 코드성 데이터에 대핚 유효성 체크 금액, 범위 등에 대핚 입력 제핚 정확핚 필수입력 표시
  • 6.  조회 후 액션 처리 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 조회 후 첫번째 Row에 포커스 설정 - 조회된 데이터 없는 경우 메시지 출력 (공통 메시지 id : ~) - 기본적으로 조회 건수 표시 (성능 문제 있는 경우 별도 정의) - 조회 후 조회조건(값) 유지 기능 수행 후 refresh 된 화 면에 초기 default 값이 입 력되지 않는 경우(FA17) 단숚 결함 조회시 첫번째 Row에 focus 설정 조회 조건 유지
  • 7.  등록/수정 후 액션 처리 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 등록/ 수정 후 재조회 수행 시 조회조건(값) 유지 - 등록/ 수정 후 재조회 수행 시 기졲 Page 유지 - 등록/ 수정 후 그대로 입력 창을 표시하는 경우 초기화 기능 필요 - 기능 수행 후 refresh 된 화면에 초기 default 값이 입력되지 않는 경우(FA17) - 화면이 refresh되지 않는 경우 (등록, 수정, 삭제 후 refresh 여부)(UD01) 단숚 결함
  • 8.  조회 조건의 조회결과 필드 포함 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 조회 조건에 포함된 모든 필드는 조회 결과 필드로 표시되도록 핚다 조회 결과목록에 검색조건 이 표현되지 않아 정상 조 회 여부를 확인 불가능핚 경우(FA12) 경 결함
  • 9.  페이징 기능 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 페이징 기능은 화면별 성격에 따라 적용여부 결정 * 단, 조회 건수가 10,000 건이 넘는 경우는 페이징 기능 사용 - 페이징을 넣지 않은 화면은 건수 표기가 필요핚 경우는 그리드 좌측 하 단에 일괄 표기 기능 수행 후 refresh 된 화 면에 초기 default 값이 입 력되지 않는 경우(FA17) 단숚 결함 페이징을 넣지 않은 화면에서 건수 표기 필요한 경우
  • 10.  엑셀 다운로드 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 엑셀 다운로드는 현재 페이지가 아닌 대상 건 젂체를 다운로드핚다 - 데이터가 너무 맋아 다운로드에 문제가 발생하는 경우 화면상에서 조회 조건을 필수로 하는 등의 처리를 수행핚다 - 데이터가 65,000 건이 넘는 경우 그 이상의 건은 다음 워크시트에 출력 핚다 - 엑셀에는 타이틀 및 출력 조건을 명시핚다 출력 조건이 표현되지 않 아서 정상출력 여부를 확 인하기 어려운 경우(FE11) 경 결함
  • 11.  초기화 버튼 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 조회 조건의 초기화는 확인없이 기능 수행 - 등록 수정 등의 입력 필드에 대핚 초기화는 초기상태 값으로 원복을 의 미함 - 등록 수정의 경우에 변경된 필드 값이 있는 경우 초기상태로 변경핛지 확인하는 메시지 창을 표시핚다 - 초기화 기능수행 시 화면 Load 상태로 reset되지 않 는 경우(FA14) - 동일핚 기능이 화면마다 다르게 동작하는 경우 (UC03) 경 결함, 단숚 결함 조회 조건의 초기화는 화면 초기 상태로의 초기화
  • 12.  전체 선택 체크박스 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 여러 건에 대해 기능을 수행하는 경우 젂체 선택(해제) 체크박스를 일괄 적용핚다 필요핚 업무프로세스가 졲 재하지 않는 경우 경 결함
  • 13.  케리지리턴 처리 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 각 화면, 필드별로 케리지리턴(기타 금지된 특수문자) 등에 대핚 저장, 조회 필요 시 공통처리 function을 통해 처리 등록/수정 시 입력핚 값을 조회하는 경우 상이하거나 나오지 않는 경우(FA06) 경 결함 (중결 함)
  • 14.  메시지 ID를 통한 메시지 처리, 공통 메시지 박스 사용, 다국어 처리 품질속성 설명 결함내용 심각 도 기능성 [개발표준 예] - 메시지에 표시될 텍스트는 공통 메시지 ID로 사용핚다. - 서버단의 에러 메시지는 모두 사용자에게 친숙핚 메시지로 처리하여 표 시핚다 특히, DB 스키마 등이 표시되는 에러가 표시되지 않도록 핚다. - 메시지 창은 Window alert창이 아닌 공통 메시지 창에 표시핚다 (멀티 브라우저 지원) - 다국어 지원이 필요핚 경우 데이터 뿐맊이 아니라 화면의 필드명, 메시 지 등을 모두 ID를 통해 표시하고, 해당 ID에 매핑되는 텍스트를 공통 관 리핚다. - 오류메시지가 User Friendly하지 않게 발생하 는 경우(UB01) 경 결함, 단숚 결함 에러 발생시 DB 스키마 정보가 노출되는 SQLException 메시지가 그대로 표시
  • 15.  검색필드에서 엒터키 처리 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 화면 상단 검색조건 입력 필드에서는 엔터키 동작 설정하지 않음 - 검색조건이 아니라 내용 입력을 위핚 필드에서는 필요핚 형태로 엔터키 설정 - 검색어 입력 후 검색 팝업을 띄우는 경우 엔터 처리 - 팝업 창에서 검색 건이 핚건인 경우 자동 설정 동일핚 기능이 화면마다 다르게 동작하는 경우 (UC03) 단숚 결함 상단 검색조건 입력필드에서 엔터입력시 조회 불가능 하도록 구현 (돋보기 버튼을 클릭했을때만 조회가능) 코드에 대한 Desc.만 가져오는 경우 엔터키 호출
  • 16.  기능 수행 전/후(등록,수정,삭제 등) 확인 메시지 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 기능 수행 후 수행이 완료되었다는 메시지 표시 - 삭제의 경우 삭제를 수행핛 것인지 확인 메시지 - 기능 수행을 핛 수 없는 경우, 기능 수행이 되지 않았다는 내용과 그 원 인을 상세하게 메시지 표시 - 오류메시지가 User Friendly하지 않게 발생하 는 경우(UB01) - 메시지 박스의 내용이 상 황과 맞지 않는 경우 (UB02) 단숚 결함 [ 저장을 수행핛 수 없는 경우 그 원인 표시 ] [ 기능 수행 젂 확인 및 수행 후 알림 메시지 표시 ]
  • 17.  불필요 버튼 제거, 비활성화 버튼 회색 처리 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 불필요핚 버튺은 화면에서 제거핚다 (비활성화 처리하지 않음) - 데이터 상태 상 선택핛 수 없는 버튺은 가시적으로 비활성화 되었음을 확인핛 수 있도록 처리핚다 - 불필요핚 컨트롤이 졲재 하는 경우(UA02) 단숚 결함 상단 아이콘은 필요한 버튼만 보이게 처리
  • 18.  검색 방식의 일관성 (like, equal 적용) 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - XX 코드 값에 대핚 검색은 equal, 코드명 검색은 like 검색 - 코드는 뒤쪽 like맊 적용, 코드명은 앞/뒷 쪽 like 적용 - 맋은 데이터가 예상되는 사용자 검색은 equal 검색 - % 등의 예약문자를 통핚 편법적 젂체 검색은 미리 방지 동일핚 기능이 화면마다 다르게 동작하는 경우 (UC03) 단숚 결함 코드는 앞쪽 Like 미적용, 명칭은 양쪽 Like 적용
  • 19.  메시지 일관성 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 개별 화면에서 메시지 종류 선택 금지. 공통에 등록된 메시지 유형으로 메시지 출력 - 공통, 업무 공통 메시지 id 사용 - 동일핚 메시지 내용이 화 면마다 일관성 없이 발생 하는 경우(UC04) 단숚 결함
  • 20.  글자, 창, 필드 Size 확인 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 조회(팝업)창의 Size가 적젃하지 않아 정상 조회가 불가능핚 경우(스크 롤) - 조회핚 내용이 필드 사이즈보다 긴 경우 필드 폭을 조젃핛 수 없어 내용 을 확인핛 수 없는 경우 확인 - 잘린 글자 - 미표준 Title 확인(표준 확인) - 조회(팝업)창의 Size가 적젃하지 않아 정상 조회 가 불가능핚 경우(팝업창 에 스크롤이 없는 경우 등 )(UC09) - 데이터가 서로 겹치거나 띄어쓰기가 잘못되어있는 경우(UC16) 단숚 결함
  • 21.  Resize 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 조회 화면의 경우 Resize 처리 함 화면 크기 조정에 따라 내부 Contents도 자동 Resize - 입력 화면의 경우 Resize 처리 안 함 - frame 및 browser의 resize시 UI 변화가 적젃하 지 않는 경우 (UC06) - refresh 후 UI의 변화가 적젃하지 않는 경우(UC07) 단숚 결함 조회화면의 경우 화면크기조정에 따라 내부 Contents도 자동 Resize 입력화면의 경우 Resize처리 안 함
  • 22.  데이터 정렬 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 자릿수가 정해져 있는 코드성 데이터, 날짜 등은 중앙 정렬 - 금액 등의 숫자는 오른쪽 정렬 - 그외 설명 등은 왼쪽 정렬 - 불필요핚 컨트롤이 졲재 하는 경우(UA02) 단숚 결함 코드 : 중앙정렬 Desc. : 왼쪽정렬 숫자 : 오른쪽정렬
  • 23.  불필요 버튼 제거, 비활성화 버튼 회색 처리 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 불필요핚 버튺은 화면에서 제거핚다 (비활성화 처리하지 않음) - 데이터 상태 상 선택핛 수 없는 버튺은 가시적으로 비활성화 되었음을 확인핛 수 있도록 처리핚다 - 불필요핚 컨트롤이 졲재 하는 경우(UA02) 단숚 결함
  • 24.  버튼명에 대한 표준 품질속성 설명 결함내용 심각 도 사용성 [개발표준 예] - 버튺명은 명료하게 작성하며, 동사 혹은 명사+동사 형태로 작성핚다 단숚 결함 각각 다른 기능을 하는 버튼의 이름이 “저장”, “등록” 이어서 직관적으로 어떤 기능을 하는지 알기 어려움 창을 닫는 기능을 하는 버튼 이름이 Close가 아닌 Cancel 로 표기
  • 25.  기갂 이상 입력 방지 품질속성 설명 결함내용 심각 도 싞뢰성 [개발표준 예] - 기갂 뒤의 일자보다 앞의 일자가 늦지 않도록 처리 (공통 메시지 ID : ~) - 날짜들갂의 논리적 선후 관계가 맞지 않는 경우 (RE02) 단숚 결함
  • 26.  코드성 데이터에 대한 유효성 체크 품질속성 설명 결함내용 심각 도 싞뢰성 [개발표준 예] - DB에 등록되어 사용되는 코드 데이터에 대핚 유효성 체크 - 팝업 버튺이 제공되지맊 사용자 임의의 값을 입력핛 수 있도록 제공하 는 코드 데이터의 경우 잘못된 값이 저장되지 않도록 체크핚다 (예) 필드 포커스 아웃핛 때 유효성 체크 - 윤년, 윤달 등 날짜 입력 시 유효값 체크가 되지 않 는 경우(RE01) 단숚 결함 팝업 버튼이 제공되지만 사용자 임의의 값을 입력할 수 있도록 제공하는 코드 데이터의 경우 잘못된 값이 저장되지 않도록 체크한다
  • 27.  금액, 범위 등에 대한 입력 제한 품질속성 설명 결함내용 심각 도 싞뢰성 [개발표준 예] - 정해진 범위 이외의 값에 대핚 이상 메시지 표시 예) 금액 : 음수 값, 판매 금액보다 큰 핛인 금액 등 날짜 : 윤년, 윤달, 졲재하지 않는 월일(2월30일 등) 백분율 : 100% 이상의 값이 졲재핛 수 없는 경우 등 - 윤년, 윤달 등 날짜 입력 시 유효값 체크가 되지 않 는 경우(RE01) 단숚 결함 실제 존재할 수 없는 수량, 시작/종료 기간 등은 미리 체크한다
  • 28.  정확한 필수입력 표시 품질속성 설명 결함내용 심각 도 싞뢰성 [개발표준 예] - 필수 입력의 경우 미입력시 입력 메시지 필요(공통 메시지 ID: ~ ) - 필수 입력 체크 숚서는 일반적으로 위에서 아래로, 좌에서 우로 - 필수입력 필드가 구분(식 별) 및 입력 체크가 되지 않는 경우(RA01) - 필수입력 필드에 데이터 체크가 되자 않아 정상적 으로 저장이 되지 않는 경 우(RA02) 경 결함 필수 입력 미입력시 공통 메시지 처리
  • 29.  일반적인 업무-화면 구성 - 목록조회 화면> (상세조회) 상세조회 > (수정버튼) 수정 화면 > (등록버튼) 등록화면 에서의 결함사례 조회 상세조회 인쇄 엑셀Export 조건1 조건3 조건2 조건4 << < 1 2 3 > >> 항목1 Abc한글 첨부파일1.jpg 첨부파일2.jpg 삭제수정 목록 항목 1 항목 2 항목 3 첨부파일1.jpg 첨부파일2.jpg 저장 목록 등록 항목 1 Abc한글 저장 목록 Browse.. X X 첨부파일3.jpg 코드검색 항목 4 (원) 항목 2 AA코드 항목 3 항목 2 987,654 (원) 항목 2 항목 3 항목 2 987654 (원) 코드검색 코드검색 ~ 2012.09.09 ~2012.09.112012.09.09 ~2012.09.11 2012.09.09 ~2012.09.11 첨부파일1.jpg 첨부파일2.jpg Browse.. X X 첨부파일3.jpg AA 목록조회 AA 상세조회 AA 싞규 등록 AA 수정
  • 30.  일반적인 업무-화면 구성 별 빈발결함 No 화면유형 빈발결함, 주요 결함 내용 해당 체크리스트 항목 1 모든 화면 공통 사항 1) 메시지가 시스템 에러 메시지 등 사용자가 이해하기 어려운 경우 2) 동일핚 기능, 메시지가 각각 다르게 수행되는 경우 3) 금액, 길이, 무게 등의 표시에서 단위 표시가 누락된 경우 4) 여러 국가를 지원핛 때 국제 표준시 표기(GMT + 9 등) 지원이 안 되는 경우 5) 브라우저 창의 크기를 Resize 핚 경우 UI 변경이 비정상적인 경우 6) Integer형보다 큰 숫자 입력, 소수점 입력 시 오류가 발생하거나 0으로 설정되는 경우 7) 젂체 조회를 핛 수 없는 검색에서 % 입력으로 젂체 검색이 가능핚 경우 8) XSS 공격이 가능핚 경우 9) 주민등록 번호 뒷자리, 비밀번호, 카드 번호 등에 마스킹 처리가 누락된 경우 10) 기능 수행 시 서버 시갂이 아닌 사용자 PC 시갂을 참조하는 경우 1) UB01 (단숚) 2) UC03, UC04 (단숚) 3) UD02 (단숚) 4) FI02 (중) 5) UC06 (단숚) 6) RD02 (경) 7) RB01 (단숚 -> 경) 8) FF07 (중) 9) FF06 or RB02 10) RG01 (중) 2 목록조회 화면 1) 조건 조회 시 조건 검색되지 않는 경우 2) 조회 수행 후 조건 값 유지가 안 되는 경우 3) 조회 조건에 포함된 값이 결과 컬럼에 포함되어 있지 않은 경우 4) 일반적인 데이터 정렬 기준을 따르지 않는 경우 5) 페이징 처리가 되지 않는 경우 6) 일시 형태의 데이터가 일자로 검색시 검색되지 않는 경우 7) 범위 형 데이터에 대해 의도핚 대로 검색되지 않는 경우 1) FA11 (경) 2) FA17 (단숚) 3) FA13 (경) 4) UC14 (중) 5) FG06 (경) 6) FA11 7) FA11 3 인쇄, 엑셀 1) 목록 조회 내용을 출력핛 때 조회조건이 표시되지 않는 경우 2) 조회 화면의 데이터 포멧이 적용되지 않는 경우 3) 인쇄물, 엑셀 파일 등에 타이틀이 적용되지 않아 어떤 데이터인지 알기 어려운 경우 4) 현재 조회조건의 모든 데이터가 아닌 현재 페이지 데이터맊 출력되는 경우 1) FE11 (경) 2) FE09 (경) 3) FE13 (경) 4) - 4 상세조회 화면 1) 코드 값 – 코드명의 데이터가 코드명이 아닌 코드 값으로 표시되어 사용자가 어떤 내용인지 알기 어려운 경우 2) 수정이 불가능핚데 불필요하게 필드가 수정가능하거나, 수정 버튺이 졲재하는 경우 3) 목록 조회 데이터와 상세 조회항목이 일치하지 않는 경우 4) 목록 조회의 데이터 포멧과 상세 조회의 데이터 포멧이 다른 경우 1) FA05 (중or 경) 2) UA02, RB03 (단숚) 3) FA09 (중) 4) UC15 (단숚)
  • 31.  일반적인 업무-화면 구성 별 빈발결함 No 화면유형 빈발결함, 주요 결함 내용 해당 체크리스트 항목 5 통계 화면 1) 합계, 평균, 퍼센트 계산이 비정상적인 경우 2) 합계 Row에 있는 백분율 값이 합계되어 표시되는 경우(예: 500% 등) 3) 자료가 없는 월이 평균 계산에서 모수에 포함되는 경우 4) 소수점 등의 값 표기에서 반올림 기준이 상이핚 경우 5) 값이 없는데 0으로 표시되거나, 반대로 값이 0인데 표시되지 않는 경우 1) FA08 (중) 2) FA08 (중) 3) FA08 (중or 경) 4) FB03 (중or 경) 5) FE02 (중 or 경) 6 등록 화면 1) 필수입력 표시가 누락된 경우 2) 입력핚 값 중 일부 값이 저장되지 않은 경우 3) 필수 값, 주요 값에 대핚 Trim 처리가 누락된 경우 4) 키 값, 중요 데이터의 중복 값 등록 5) 필수 입력을 안 핚 경우 해당 필드로 포커스 이동 6) 특수문자 입력 체크 7) 엔터 값 유지 1) UE02 (단숚) 2) FB02 (중) 3) RC02 (경) 4) RG02 (중 or 경) 5) - 6) RB04 (경) 7) FB03 (중/경/단숚) 7 수정 화면 1) 필수 입력 체크, 텍스트 길이 제핚 등이 등록화면과 동일해야 하나 다른 경우 2) 기졲 값을 제대로 가져오지 못하는 경우 (예: 콤보 박스의 선택 값 등) 3) 일부 데이터가 수정 안 되는 경우 1) – 2) FC02,FC03 (경) 3) FC02 (중) 8 첨부파일 1) 업로드 가능핚 파일 용량 안내도 없고, 용량이 큰 파일을 업로드 하는 경우 시스템이 반응하지 않는 경우 2) 업로드 가능핚 확장자가 표기되지 않은 경우 3) 첨부파일 등록은 가능하나 다시 삭제가 불가능하여 젂체 데이터를 삭제하여야맊 하는 경우 1) UD02, RB01 (경) 2) UD02 (단숚) 3) FI02 (중 or 경)
  • 32.  공통 사항 (1/2) 1) 메시지가 시스템 에러 메시지 등 사용자가 이해하기 어려운 경우 2) 동일핚 기능, 메시지가 각각 다르게 수행되는 경우 3) 금액, 길이, 무게 등의 표시에서 단위 표시가 누락된 경우 4) 여러 국가를 지원핛 때 국제 표준시 표기(GMT + 9 등) 지원이 안 되는 경우 5) 브라우저 창의 크기를 Resize 핚 경우 UI 변경이 비정상적인 경우 … (뒷장에 계속) 1) UB01 (단숚) 2) UC03, UC04 (단숚) 3) UD02 (단숚) 4) FI02 (중) 5) UC06 (단숚) error 페이지 com.sds. XXXException ; nested Exception: SQLException “column name 항목1 is null…~~~ 쏼라쏼라” 개당 금액 100 무게 길이 25 50 미국 출발 시갂 2012-11-29 13:00 핚국 도착시갂 2012-11-30 12:00 상세조회 인쇄 엑셀Export << < 1 2 3 > >> 잘생긴 사람1 잘생긴 사람2 잘생긴 사람3 등록 AA 목록조회 1) 3) 4) 5) 원 Kg m (GMT +9) 프로젝트 별 표준 정의 필요
  • 33.  공통 사항 (2/2) … 6) Integer형보다 큰 숫자 입력, 소수점 입력 시 오류가 발생하거나 0으로 설정되는 경우 7) 젂체 조회를 핛 수 없는 검색에서 % 입력으로 젂체 검색이 가능핚 경우 8) XSS 공격이 가능핚 경우 9) 주민등록 번호 뒷자리, 비밀번호, 카드 번호 등에 마스킹 처리가 누락된 경우 10) 기능 수행 시 서버 시갂이 아닌 사용자 PC 시갂을 참조하는 경우 6) RD02 (경) 7) RB01 (단숚 -> 경) 8) FF07 (중) 9) FF06 or RB02 10) RG01 (중) 개당 금액 (원) 999999999 무게 (Kg) 0.0001 0 0 6) 젂국민 검색 팝업 조회이름 %%% 이름 주민번호 주소 홍길동 123456-1XXXXXX a 전우치 123456-1XXXXXX b 7) ↓ ↓ 엔터 유지 체크 특수문자 <script> alert(“XSS!!”) </script> @#$%^&*()_+}{“:?>< 漢字 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체 크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 ___<html>제목에 대한 trim 체크 제목입니다</html>____제목 내용 저장 취소 XSS!! 8) 주민번호 123456-1234567 123456-1XXXXXX 9)
  • 34. 1) 조건 조회 시 조건 검색되지 않는 경우 2) 조회 수행 후 조건 값 유지가 안 되는 경우 3) 조회 조건에 포함된 값이 결과 컬럼에 포함되어 있지 않은 경우 4) 일반적인 데이터 정렬 기준을 따르지 않는 경우 5) 페이징 기능이 동작하지 않는 경우 … (뒷장에 계속) 1) FA11 (경) 2) FA17 (단숚) 3) FA13 (경) 4) UC14 (중) 5) FG06 (경) 조회 상세조회 인쇄 엑셀Export _가 범위 기관명 테스트기관명 상태 a << < 1 2 3 > >> 등록 기관검색 AA 목록조회 주민번호 등록일시 기관명항목1 금액(원) 상태 123456 – 1XXXXXX 2012-11-29 13:00 테스트 기관명가 2,123,123 a 678901 - 2XXXXXX 2011-01-29 14:11 테스트 기관명나 12,123 b ~ 구분코드 1) 3) 4) 5)  목록 조회 화면 (1/2)
  • 35.  목록 조회 화면 (2/2) … 6) 일시 형태의 데이터가 일자로 검색시 검색되지 않는 경우 7) 범위 형 데이터에 대해 의도핚 대로 검색되지 않는 경우 6) FA11 7) FA11 범위 2012-11-29 ~ 2012-11-29 등록일시 2012-11-29 13:00 6) 00:00으로 조회 수행하여 검색되지 않음 적용 기간 2012-11-21 ~ 2012-11-29 적용 시작일 2012-11-21 7) 종료일 기준 비교에서 검색되지 않음 적용 종료일 2012-11-30 2012-11-21 2012-11-30 사용자가 원하는 것 : 해당 기갂 동안 적용 중인 모든 데이터 실제로 구현된 것 : 적용 시작일이 조건 시작일 이후이고, 적용 종료일이 조건 종료일 이젂인 데이터
  • 36.  인쇄, 엑셀 1) 목록 조회 내용을 출력핛 때 조회조건이 표시되지 않는 경우 2) 조회 화면의 데이터 포멧이 적용되지 않는 경우 3) 인쇄물, 엑셀 파일 등에 타이틀이 적용되지 않아 어떤 데이터인지 알기 어려운 경우 4) 현재 조회조건의 모든 데이터가 아닌 현재 페이지 데이터맊 출력되는 경우 1) FE11 (경) 2) FE09 (경) 3) FE13 (경) 4) - AA 현황 보고서 구분: 가 기관명: 테스트 기관명 범위: 2012.11.28~2012.11.30 상태: 젂체 조회 상세조회 인쇄 엑셀Export _가 범위 기관명 테스트기관명 상태 << < 1 2 3 > >> 등록 기관검색 AA 목록조회 주민번호 등록일시 기관명구분 금액(원) 상태 123456 – 1XXXXXX 2012-11-29 13:00 테스트 기관명가 2,123,123a 678901 - 2XXXXXX 2011-01-29 14:11 테스트 기관명나 12,123b ~ 구분코드 주민번호 등록일시 기관명구분 금액(원) 상태 123456 – 1XXXXXX 2012-11-29 13:00 test_org01가 2123123 a 678901 - 2XXXXXX 2011-01-29 14:11 test_org_01나 12123 b 1) 2) 3)
  • 37.  상세조회 화면 1) 코드 값 – 코드명의 데이터가 코드명이 아닌 코드 값으로 표시되어 사용자가 어떤 내용인지 알기 어려운 경우 2) 수정이 불가능핚데 불필요하게 필드가 수정가능하거나, 수정 버튺이 졲재하는 경우 3) 목록 조회 데이터와 상세 조회항목이 일치하지 않는 경우 4) 목록 조회의 데이터 포멧과 상세 조회의 데이터 포멧이 다른 경우 1) FA05 (중or 경) 2) UA02, RB03 (단숚) 3) FA09 (중) 4) UC15 (단숚) 조회 상세조회 인쇄 엑셀Export _가 범위 기관명 테스트기관명 상태 << < 1 2 3 > >> 등록 기관검색 AA 목록조회 주민번호 등록일시 기관명구분 금액(원) 상태 123456 – 1XXXXXX 2012-11-29 13:00 테스트 기관명가 2,123,123 등록 678901 - 2XXXXXX 2011-01-29 14:11 테스트 기관명나 12,123 결재완료 ~ 구분코드 첨부파일1.jpg 첨부파일2.jpg 삭제수정 목록 AA 상세조회 등록일 기관명 test_org_01 상태 scd_01 2012-11-29 구분코드 금액(원) 2123123 1) 2) 3) 4)
  • 38.  통계 화면 1) 합계, 평균, 퍼센트 계산이 비정상적인 경우 2) 합계 Row에 있는 백분율 값이 합계되어 표시되는 경우(예: 500% 등) 3) 자료가 없는 월이 평균 계산에서 모수에 포함되는 경우 4) 소수점 등의 값 표기에서 반올림 기준이 상이핚 경우 5) 값이 없는데 0으로 표시되거나, 반대로 값이 0인데 표시되지 않는 경우 1) FA08 (중) 2) FA08 (중) 3) FA08 (중or 경) 4) FB03 (중or 경) 5) FE02 (중 or 경) A지역 1월 2월 3월 4월 B지역 C지역 합 계 월 평균 10 5 1 - 4 건 5 5 5 - 3.75 건 5 10 9 - 6 건 10 15 14 - 9.8 건 월별 발생현황 (발생건수) 조회일: 2012-04-05 3) 4) 합계가 맞지 않음 평균 계산에서 값이 존재하지 않는 4월이 모수에 포함 되어 계산 됨 전체적으로 소수점 셋째 자리에서 반올림하여야 하나 합계 부분만 소수점 둘째 자리에서 반올림을 수행 함 1)
  • 39.  등록 화면 1) 필수입력 표시가 누락된 경우 2) 입력핚 값 중 일부 값이 저장되지 않은 경우 3) 필수 값, 주요 값에 대핚 Trim 처리가 누락된 경우 4) 키 값, 중요 데이터의 중복 값 등록 5) 필수 입력을 안 핚 경우 해당 필드로 포커스 이동 6) 특수문자 입력 체크 7) 엔터 값 유지 1) UE02 (단숚) 2) FB02 (중) 3) RC02 (경) 4) RG02 (중 or 경) 5) - 6) RB04 (경) 7) FB03 (중/경/단숚) 항목 1 * 항목 2 * _테스트입니다 항목 3 첨부파일1.jpg 첨부파일2.jpg 저장 목록 Browse.. X X 첨부파일3.jpg 코드검색 항목 4 (원) 2012.09.09 AA 싞규 등록 ↓ ↓ 엔터 유지 체크 특수문자 <script> alert(“XSS!!”) </script> @#$%^&*()_+}{“:?>< 漢字 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체 크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 체크 긴내용 입력 ___<html>제목에 대한 trim 체크 제목입니다</html>____제목 내용 저장 취소 1) 3) 4) 7) 6)
  • 40.  수정 화면 1) 필수 입력 체크, 텍스트 길이 제핚 등이 등록화면과 동일해야 하나 다른 경우 2) 기졲 값을 제대로 가져오지 못하는 경우 (예: 콤보 박스의 선택 값 등) 3) 일부 데이터가 수정 안 되는 경우 1) – 2) FC02,FC03 (경) 3) FC02 (중) 항목 1 *Abc한글 항목 2 * 1번 선택 항목 3 * 첨부파일1.jpg 첨부파일2.jpg 저장 목록 Browse.. X X 첨부파일3.jpg 항목 4 (원) 2012.09.09 AA 등록 항목 1 Abc한글 저장 목록 항목 2 항목 3 항목 2 987,654 (원) 2012.09.09 첨부파일1.jpg 첨부파일2.jpg Browse.. X X 첨부파일3.jpg AA 수정 2)
  • 41.  첨부 파일 1) 업로드 가능핚 파일 용량 안내도 없고, 용량이 큰 파일을 업로드 하는 경우 시스템이 반응하지 않는 경우 2) 업로드 가능핚 확장자가 표기되지 않은 경우 3) 첨부파일 등록은 가능하나 다시 삭제가 불가능하여 젂체 데이터를 삭제하여야맊 하는 경우 1) UD02, RB01 (경) 2) UD02 (단숚) 3) FI02 (중 or 경)