개인적으로 중요한 것 같아보이는 것을 모아놓은 페이지로
중요한 부분이 아닐 수 있습니다.
22.10.01 작성
중요한거 정리
구조 기반 테스트
구문기반, 결정기반, 조건 기반
화이트 박스 테스트
원시코드의 논리적인 모든 경로를 테스트하여 테스트케이스를 설계하는 방법
블랙 박스 테스트
각 기능이 완전히 작동되는지를 입증하는 테스트
- 동치 분할 검사
- 경계값 분석
- 원인 결과 그래프
알파 테스트
개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법
베타 테스트
최종적으로 선정된 사용자가 여러 사용자 앞에서 행하는 테스트 기법
테스트 오라클
테스트 결과가 올바른지 판단하기 위해 사전에 정의된 참값을 대입하여 비교하는 기법
- 참 오라클
- 추정 오라클
- 샘플링 오라클
- 일관성 오라클
애플리케이션 성능
경과시간
응답시간
처리량
자원 사용률
외계인 코드
너무 오래되거나 문서 또는 개발자가 없어서 유지보수 작업이 힘든 코드
배열
크기와 형이 동일한 자료들이 순서대로 나열된 집합
럼바우
구조적 분석 기법
- 자료 흐름도(DFD)
- 자료 사전(DD)
- 소단위 명세서
- 개체 관계도(ERD)
- 상태 전이도(STD)
- 제어 명세서
기능 모델링의 종류
- 유스케이스 다이어그램
- 액티비티 다이어그램
동적 모델링의 종류
- 시퀀스 다이어그램
- 커뮤니케이션 다이어그램
- 상태 다이어그램
데이터 구성 3요소
- 구조
- 연산
- 제약조건
데이터를 전송시키는 형태 → XML, JSON, CSV …
실행되는 프로세스간 통신을 가능하게 한 기술 → IPC (Inter - Process Communication)
inter - 상호간의 process communication
XML(eXtensible Markup Language) - 웹에서 데이터를 전송하기 위해 미리 약속해둔 방식
(xml 과 나오는 SOAP, WSDL, UDDI)
- WSDL - 웹 서비스 통신 대한 구체적인 XML 설명서
- UDDI - jar 파일처럼 XML을 사용할때 UDDI 에서 찾아서 사용하는 장소 (?)
- SOAP - UDDI에서 찾아온 방법을 통하여 실제로 XML 통신을 하는 프로토콜
제 2정규형(부분적 함수 종속 제거)
어떤 테이블이 기본키가 2개인경우에 이 테이블을 2개의 테이블로 나눠서 제 2정규형 ㅁ
제 3정규형(이행적 함수 종속 제거)
한 테이블에 이행적으로 함수적 종속이 있는것 ex) 주문번호 → 고객번호, 주소
고객번호 → 주소
데이터베이스 이중화의 분류
Eager 기법 → 즉시 변경
신분 기반 정책 → IBP, GBP
Lazy 기법 → 나중에 변경
규칙 기반 정책 → MLP, CBP
접근통제의
- 접근통제 정책
- 접근통제 메커니즘
- 접근통제 보안모델
객체지향의 특징
- 캡슐화
- 상속
- 다형성
- 연관성
객체지향의 구성요소
클래스, 객체, 메시지
클래스
공통된 속성과 연산을 갖는 객체의 집
객체들을 묶은것. 데이터를 추상화하는 단위
메시지
객체들 간의 상호작용에 사용되는 수단으로, 객체의 동작이나 연산을 일으키는 외부의 요구사항이다.
<객체지향 설계 원칙의 종류>
- 단일 책임 원칙(SRP)
- 객체는 단 하나의 책임만 갖ᆢ
- 개방-폐쇄 원칙(OCP)
- 기존의 코드는 ㅂᆢ
- 리스코프 치환 원칙(LSP)
- 자식 클래스는 최소한 부모 클래스의 기능은 수행할 수 있어ㅇ
- 인터페이스 분리 원칙(ISP)
- 자신이 사용하지 않는 인터페이스와 의존관계를 맺거나 영향을 받지 않아야 한다는 원칙
- 의존 역전 원칙(DIP)
- 의존 관계 성립 시 추상성이 높은 클래스와 의존 관계를 맺어야 한다는 원칙
<IPC(Inter-Process Communication)>
- Shared Memory - 공유 가능한 메모리
- Socket
- Semaphore - 공유자원에 대한 접근 제어를 통해 통신
- Pipes&name
- Mesaage Qu
<공통 모듈>
정확성, 명확성, 완전성, 일관성, 추적성
<공통 모듈의 재사용 규모에 따른 분류>
- 함수와 객체
- 컴포넌트
- 애플리케이션
<빌드도구>
- Ant
- Maven
- Gradle
<디자인 패턴>
Decorate - 객체 간의 결합을 통해 능동적으로 기능들을 확장
플라이웨이트 - 효율적인 메모리 사용하기 위해서 인스턴스를 매번 생ㅅㆍ공유해서
메멘토 - 되돌리기
전략(Strategy) - 클라이언트가 알고리즘을 자유롭게 선택 가능, 알고리즘 변경 및 상호교환이 용이하다.
<데이터 무결성 검사 도구>
인터페이스 보안 취약점을 분석하는데 사용하는 도구
Tripwire, AIDE, Samhain, Claymore,
<APM>
스카우터
제니퍼
<정적 테스트>
워크스루, 인스펙션, 코드 검사
<동적 테스트>
블랙박스 테스트, 화이트박스 테스트
<명세 기반 테스트>
동등 분할, 경계 값 분석
<구조 기반 테스트>
구문 기반, 결정 기반, 조건 기반
<경계값 분석테스트>
에러 추정, 체크 리스트, 탐색적 테스팅
데이터의 입출력을 확인하기 위해 더미 모듈인 <드라이버>를 생성한다
<테스트 오라클>
참 오라클
- 모든 테스트 케이스의 입력 값에 대해 기대하는 결과를 제공하는 오라클
샘플링 오라클
- 특정한 몇몇 테스트 케이스의 입력 값들에 대해서만 기대하는 결과를 제공하는 오라클로 전수 테스트가 불가능한 경우 사용
추정 오라클
- 테스트 케이스의 입력 값에 대해 기대하는 결과를 제공하고, 나머지 입력 값들에 대해서는 추정으로 처리하는 오라클
<애플리케이션>
- 처리량
- 응답 시간
- 경과 시간
- 자원 활용률
<애플리케이션 테스트에서 사용되는 오류-부재의 궤변>
결함을 모두 제거해도 요구사항을 만족시키지 못하면 품질이 높다고 말할 수 없는 것.
<제어의 역흐름>
객체들의 제어 권한을 프레임워크에 넘겨 생산성을 향상시키는 것
<개체 무결성>
기본 테이블의 기본키를 구성하는 어떤 속성도 Null값이나 중복값을 가질 수 없다는 규정
<참조 무결성>
외래키 값은 Null 이거나 참조 릴레이션의 기본키 값과 동일해야 함.
데이터 무결성은 애플리케이션, 데이터베이스 트리거, 제약 조건을 이용하여 강화할 수 있다.
'정보처리기사 > 개념정리 + α' 카테고리의 다른 글
정보처리기사-오답노트_22.10.01 (0) | 2023.01.26 |
---|