[2유형]
1. 블랙박스 테스트
-> Black Box 처럼 내부 소스코드를 볼 수 없음
※ 블랙박스 테스트 종류
1) 동치 분할 검사 : 입력 자료에 초점을 맞춰 테스트 케이스를 만들고 검사하는 방법으로 동등 분할 기법이라고도 함
-> 즉, 동일한 결과를 만들 것으로 예상되는 입력 값의 범위를 정하고 각 범위를 대푯값을 선택하는 방식!
ex) A학점 : 90~100점 -> 95점 B학점 : 80~89점 -> 85점 C학점 : 70 ~79점 ->75점
2) 경계값 분석 : 동치 분할 검사를 보완하기 위한 기법으로 대푯값의 범위를 값의 경계 범위까지 확장하여 문제를 해결해 주는 기법이다.
ex) 범위 0 ~ 10 -> 경계값 -1 / 90 ~ 100 -> 경계값 : 101
3) 원인-효과 그래프 검사 : 입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석한 다음 효용성이 높은 테스트 케이스를 선정하여 검사하는 기법
4) 오류 예측 검사 : 과거의 경험과 감각을 기반으로 테스트
-> 다른 기법으로는 찾아낼 수 없는 오류를 검사와 경험으로 찾아보는 기법이다.
5) 비교 검사 : 여러 버전 프로그램에 동일한 테스트 자료를 넣어서 동일한 결과가 출력되는지 테스트
2. 화이트박스 테스트
1) 기초 경로 검사 : 설계나 코드 기초로 흐름도 작성 후 경로 실행 검사
2) 제어 구조 검사 : 논리적 조건 테스트 / 프로그램 반복(Loop) 구조 검사 / 변수 사용(Data Flow) 검사
※ 화이트박스 설계 기법 분류
*커버리지 : 어느 정도를 커버했는지, 테스트 수행이 된 정도를 의미
1) 문장 커버리지 : 프로그램 내 모든 문장 한번 이상 실행
2) 분기 커버리지 : 프로그램의 모든 분기 조건(if, for, while 등) 검사
3) 조건 커버리지 : 모든 기본 조건들이 참이 되는 경우, 거짓이 되는 경우 모두 발생
3. 인수 테스트(Acceptance Test)
- 개발한 소프트웨어가 사용자의 요구사항을 충족하는 가를 테스트
인스테스트 종류
1) 사용자 인수 테스트 : 사용자가 시스템 사용의 적절성 여부 확인
2) 운영상의 인수 테스트 : 시스템 관리자가 백업 / 복원 시스템 등 테스트
3) 계약 인수 테스트 : 계약상의 조건을 준수하는지 여부 확인
4) 규정 인수 테스트 : 규정에 맞게 개발되었는지 확인
5) 알파테스트 : 개발자 앞에서 사용자가 행하는 테스트(통제된 환경)
6) 베타테스트 : 사용자가 여러 사용자 앞에서 행하는 테스트(통제된 환경 x)
4. 트리의 차수
1) 트리(Tree) : 데이터를 계층화 시킨 자료 구조
2) 루트 노드(Root Node) : 부모가 없는 노드, 최상위 노드
3) 터미널 노드(Terminal Node) : 자식 없는 노드
4) 차수(Degree) : 자식 노드의 개수
5) 깊이(Depth) : 노드 최대 레벨
5. 트리 순회
트리 순회 방식
1) 중위 순회(Inorder) : Left - Root - Right
2) 전위 순회(Preorder) : Root - Left - Right
3) 후위 순회(Postorder) : Left - Right - Root
6. EAI (Enterprise Application Integration)
-> 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달, 연계 통합 등 상호 연동이 가능하게 해주는 솔루션
즉, 기업 애플리케이션 통합임
유형 | 기능 |
포인트 투 포인트 (Point to Point) |
점 대 점으로 연결하는 방식, 변경 및 재사용이 어려움 |
허브 앤 스포크 (Hub & Spoke) |
단일 접점인 허브(Hub) 시스템을 통해 데이터를 전송하는 중앙 집중형 방식, 확장 및 유지보수가 용이하지만 허브 장애 발생 시 시스템 전체에 영향을 미침 |
메시지 버스 (Message Bus, ESB방식) |
애플리케이션 사이에 미들웨어를 두어 처리하는 방식, 확장성이 뛰어나며 대용량 처리가 가능 |
하이브리드 (Hybrid) |
Hub & Spoke(그룹 내)와 Message Bus(그룹 간)의 혼합 방식, 데이터 병목 현상을 최소화 |
7. 형상 관리
- 소프트웨어의 변경사항을 관리하기 위해 개발된 일련의 활동
* 대표적 형상 관리 툴 : GIT, SVN
ex) 소프트웨어의 버전 관리
8. DRM (Digital Rights Management, 디지털 저작권 관리)
- 디지털 콘텐츠의 무단 사용을 막아, 제공자의 권리와 이익을 보호해주는 기술과 서비스
- 불법 복제와 변조 방지
- 중앙의 클리어링 하우스에서 키 관리 및 라이선스 발급 관리
9. 소프트웨어 패키징 도구
1) 제품 소프트웨어 패키징
-> 개발이 완료된 소프트웨어를 고객에게 전달하기 위해 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것
-> 개발자가 아닌 사용자를 중심으로 진행
2) 제품 소프트웨어 패키징 도구
-> 패키징 시 디지털 콘텐츠의 지식 재산권을 보호하고 관리하는 기능 제공, 안전한 유통, 배포 보장하는 도구
3) 패키징 작업 순서
- 기능 식별 -> 모듈화 -> 빌드 진행 -> 사용자 환경 분석 -> 패키징 및 적용 시험 -> 패키징 변경 개선 -> 배포
10. 인터페이스 보안
- 인터페이스 보안 기능
구분 | 설명 |
네트워크 영역 | 송수신간 스니핑 등을 이용한 데이터 탈취 및 변조 위험을 방지하기 휘해 네트워크 트래픽에 대한 암호화 설정 ex) IPSec, SSL/TLS, S_HTTP 등 보안 채널 활용하여 암호화 |
애플리케이션 영역 | 소프트웨어 개발 보안 가이드(시큐어 코딩 가이드)를 참조하여 코드 상의 취약점을 보완 |
데이터베이스 영역 | 접근 권한의 데이터베이스 동작 객체의 취약점에 보안 기능 적용 |
- 인터페이스 구현 기술
구분 | 설명 |
JSON (JavaScript Object Notation) |
비동기식 브라우저/서버 통신을 위해 "속성 - 값" 쌍으로 이루어진 오브젝트를 전달하기 위한 인간이 읽기 쉬운 텍스트를 사용하는 개방형 표준 포멧 |
REST (REpresentational State Transfer) |
URL 자원을 활용하여 HTTP 메서드를 주고받는 웹 아키텍처 |
AJAX (Asynchronous JavaScript and XML) |
자바스크립트를 이용한 비동기식 통신 기술로 클라이언트와 서버 간에 XML(EXtensible Makeup Language) 데이터를 주고 받는 기술 |
* IPSec : IP패킷 단위의 데이터 변조 방지 및 은닉기능을 제공하는 프로토콜
* SSL/TLS : TCP/IP 계층과 애플리케이션 계층 사이에서 인증, 암호화 프로토콜
* S_HTTP : 클라이언트와 서버 간에 전송되는 모든 메시지를 암호화 하는 프로토콜
'정보처리기사 자격증' 카테고리의 다른 글
[내가 공부하려고 ~] 정처기 요약 정리 - 3유형 (0) | 2023.06.20 |
---|---|
[내가 공부하려고 ~] 정처기 요약 정리 - 1유형 (0) | 2023.06.18 |