본문 바로가기

[ 공지사항 + 기타 ]/자격증 공부

수제비 족보 오답노트 - 21년 3, 22년 1탄

728x90
728x90

온톨로지 Ontology : 실세계에 존재하는 개념 정보를 컴퓨터가 이해할 수 있게 서술한 지식 베이스

 

옵티마이저 Optimizer: sql을 실행한 최적경로를 찾는 DBMS의 핵심엔진 RBO / CBO

 

UI 시나리오 문서 작성 요건 : 완일이가 추수

1. 완전성 : 누락 없이 최대한 상세하게!

2. 일관성 : 요구사항은 일관적! UI도 일관적으로!

3. 이해성 : 이해하기 쉬워야 함!

4. 가독성 : 쉽게 읽혀야 함!

5. 추적 용이성 : 변경사항을 알아보기 쉬워야 함!

6. 수정 용이성 : 쉽게 수정할 수 있어야 함!

 

인터페이스 구현 도구 

xUnit / Java, C++ 등 다양한 언어를 지원하는 단위 테스트 프레임워크
STAF / 각 테스트 대상 분산 환경에 '데몬'을 사용하여 테스트를 수행
FitNesse / 웹 기반 테스트 케이스를 지원
NTAF / STAF(재사용 및 확장성) + FitNesse(협업 기능) 장점을 통합한 NHN의 프레임워크
Selenium / 다양한 브라우저와 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임워크
Watir / 루비 기반의 웹 애플리케이션 테스트 프레임워크

 

IPS 공격 및 침입을 실시간으로 차단하는 시스템

 

방화벽 (FireWall) / 내부∙외부 트래픽을 모니터링하여 접근을 허용/차단하는 시스템
웹 방화벽 (WAF) / 웹 애플리케이션에 특화되어, XSS나 SQL Injection 등을 탐지하고 차단하는 시스템
네트워크 접근 제어 (NAC) / 내부 네트워크에 접속을 시도할 때 통제하는 솔루션
침입 탐지 시스템 (IDS) / 비인가 사용자의 침입을 실시간으로 탐지하는 시스템
침입 방지 시스템 (IPS) / 공격 및 침입을 실시간으로 차단하는 시스템
무선 침입 방지 시스템 (WIPS) / 비인가 무선 단말기의 접속을 차단하는 시스템
통합 보안 시스템 (UTM) / 방화벽, IDS, IPS, VPN 등 다양한 보안 장비 기능을 통합 제공하는 시스템
가상사설망 (VPN) / 공중망을 사용할 때 마치 전용망을 사용하는 것과 같은 보안 효과를 주는 솔루션

 

관계 대수 원하는 정보를 어떻게 유도하는가에 대한 절차적 정형 언어
 - 일반 집합 연산자 합교차카
 - 순수 관계 연산자 셀프조디

 

관계 해석 원하는 정보가 무엇인가에 대한 비절차적 언어 (프레디킷 해석 기반)

 

ERD (E-R 다이어그램) 현실의 정보를 사람이 이해할 수 있는 형태로 표현해, 개체와 개체의 속성 개체 간 관계를 도식화한 다이어그램

 

정규화 (Nomralization) 데이터의 중복성을 제거하여 이상 현상을 방지하는 과정
이상 현상 (Anomaly) 데이터 중복으로 인해 릴레이션 조작 시 발생하는 비합리적 현상
 - 삽입, 삭제, 갱신 이상 삽삭갱

 

DB 다수의 인원과 시스템이 사용할 목적으로 관리하는 데이터 집합

DBMS 데이터의 추가, 변경, 삭제 등의 관리 기능을 제공하는 소프트웨어

 

빅데이터 특성 V3
1. Volumn (양) : PB 수준의 대규모 데이터
2. Variety (다양성) : 유형이 로그, 소셜, 위치 등 다양해짐
3. Velocity (속도) : 정보가 빠르게 증가하고 수집됨

 

모듈 그 자체로 하나의 완전한 기능을 수행할 수 있는 독립된 실체 (기능 단위로 분해, 추상화되어 재사용 가능한 단위)
모듈화 성능 향상, 유지 관리 등을 위해 기능 단위 모듈로 분해하는 기법 (모듈 단위로 설계하는 기법)

 

응집도 cohesion : 모듈 내부의 연관 정도 우논시절통순기 

우연적 concidential : 연관이 없는 사이

논리적 logical : 유하거나 특정형태로 분류되는 요소들이 함께 있다.

시간적 Temporal : 특정시간에 함께 처리되는 사이일 떄,

절차적 procedural : 구성요소의 기능들이 순차적으로 실행 된다.

통신적 communicational : 동일한 입출력을 사용해 각자 다른 기능을 수행한다.

순차적 sequential : 출력결과를 다른 요소가 입력 데이터로 사용한다.

기능적 functional : 하나의 기능이 하나의 목적을 위해서 수행된다.

 

결합도 coupling : 모듈간의 상호 의존도 내공외제스자

내부 content : 다른 모듈의 기능을 사용한다.

공통 common : 공통 데이터(전역변수)를 공유한다.

외부 external : 외부 인터페이스, 프로토콜 공유한다.

제어 control : 다른 모듈의 내부 논리를 제어한다.

스탬프 stamp : 인터페이스로부터 배열 등의 자료를 받음 

자료 data : 인터페이스로 전달되는 파라미터로만 상호작용 가능

 

배치 프로그램 사용자와 상호작용 없이, 일련의 작업들을 묶어 일괄적으로 처리하는 방법

배치 프로그램 유형 : 이온정
1) 이벤트 배치  2) 온디맨드 배치  3) 정기 배치

 

❤️접근 통제 보호 모델 - 벨기비무 

벨-라파듈라 - 기밀성 보장 ( NO READ UP, NO WRITE DOWN)

비바모델 - 무결성 보장 ( NO READ DOWN, NO WRITE UP)

 

디자인패턴 : 생구행 (생성, 구조, 행위) 5,7,11

생 : 빌프로 팩앱싱

(빌더 / 프로토타입 / 팩토리 메서드 / 앱스트랙 팩토리(추상 팩토리) / 싱글톤)

builder : 객체를 조립하여 생성, 생성, 구현 방법 구분 동일한 객체 생성이어도 다른 결과가 나올 수 있다.

prototype : 원형 객체만들고 복사 후 필요한 부분만 수정해서 사용 (객체 생성 시 갖춰야할 기본 형태가 있을 때 사용

factory method : 상위 클래스에서 인터페이스를 정의하고, 서브 클래스에서 인스턴트 생성한다.

abstarct factory : 클래스에 의존하지 않고, 연관된 객체들의 그룹으로 생성 (객체 간의 결합이 느슨해진다)

singleton : 클래스 내에 객체가 1개임을 보장. 하나의 객체를 생성해 어디든 참조할 수 있으나 동시에 참조는 불가능

 

구 : 브데 퍼플 프록 컴 어

(브리지 / 데코레이터 / 퍼사이드 / 플라이 웨이트 / 프록시 / 컴포지트 / 어댑터) 

bridge : 추상화된 부분과 실제 구현부분을 독립적으로 확장 가능decorator(장식) : 기존 구현 클래스 + 필요한 기능을 추가해 나가는 설계 패턴facade (건물의 정면): 복잡한 시스템 + 단순한 인터페이스 = 접근성을 높힘 (통합된 인터페이스 제공)fly weight (가볍다): 클래스의 경량화 목적 / 객체가 필요할 때 생성+공유 메모리 절약 proxy (대리인): 실체 객체에 대한 대리 객체, 메모리 용량을 아끼며 정보은닉 역할 가능composite (폴더): 파일 트리 구조로 구성, 복합 객체 단일 객체 동일하게 취급adapter (개조): 기존생성 클래스 재사용을 위해 중간에서 맞춰주는 인터페이스 만드는 패턴

 

행 : 미인이 템옵 스테비커 스트 메체

(미디에이터 / 인터프리터 / 이터레이터 / 템플릿 메서드 / 옵저버 / 스테이트 / 비지터 / 커맨드 / 스트레티지 / 메멘토 / 체인 오브 리스판서빌리티)

Mediator (중개자) : 객체 사이에 중재자를 두어 의존성을 줄임

Interpreter (통역) : 구문의 해석을 맡는 클래스 (여러 형태 언어 구문 해석 가능) -> 컴파일러 상대 개념

Iterator (반복자) : 집합체 안 모든 항목 접근할 수 있는 방법 제공 : 순차적 접근 가능)

Template Method : 상위 클래스는 기능 정의, 하위클래스 세부 처리방법 구체화 -> 팩토리 메서드랑 헷갈리지 말기

+) 팩토리 메서드 : 상위 클래스에서 인터페이스 정의하고, 하위 클래스에서는 인스턴스 실제 생성

Observer(관찰자) : 객체를 지켜보다, 상태변화가 생기면 그 객체에 의존하는 다른 객체들에게 변화된 상태 전달 후 자동 내용 갱신

State(상태) : 객체 상태 캡슐화, 이를 참조해 행위 내용을 변경

Visitor(방문객) : 각 클래스를 돌아다니며 특정 작업을 수행하도록 만드는 패턴, 처리 기능을 별도로 분리한 패턴 (구조 변경 X. 기능 추가 또는 확장할 때 사용)

Command(명령) : 요구사항을 객체로 캡슐화, 명령이 들어오면 서브 클래스가 선택되어 실행

Strategy(전략) : 알고리즘을 캡슐화, 서로 교환해서 사용 할 수 있게 하는 패턴

Memento(기념품) : Undo(작업취소) 기능 개발 할 때 사용

Chain of Responsibility (책임연쇄) : 한 객체가 요청을 처리 못하면, 연결된 객체로 넘어가 처리 (1개 요청 2개 이상의 객체에서 처리)

 

디자인패턴 구성요소 : 패문솔 사결샘

패턴이름 / 문제 및 배경 /솔루션 / 사례 / 결과 / 샘플코드

 

17-1 DAS(Direct Attached Storage)

데이터 저장장치와 호스트 기기 사이 직접 연결하는 스토리지 시스템

-> 저장장치와 호스트 기기 사이가 직접 연결하는 방식으로 구성되는 스토리지 시스템.

 

17-2 NAS(Network Attached Storage)

저장 장치와 서버 직접 연결 X, 네트워크 통해 스토리지 접속, 파일 단위로 관리

-> 저장 장치와 서버가 직접적으로 연결되지 않고,

네트워크를 통하여 스토리지에 접속하는 장치로 보통 파일단위로 관리를 한다.

 

17-3 SAN(Storage Area Network)

 광저장장치영역 네트워크, 특수 목적용 고속 네트워크 ,

이기종 데이터 저장장치 + 데이터 서버 연결 = 별도의 네트워크 구성

-> 광저장장치영역 네트워크라고 불리며,  특수 목적용 고속 네트워크이다.

이기종 간의 데이터 저장장치와 데이터 서버를 연결하여 별도의 네트워크를 구성하여 관리한다.

 

기본키 : 튜플을 고유하게 식별하는 컬럼

대체키 : 후보키중에 기본키로 선택되지 않은 키

후보키 : 기본키 + 대체키

슈퍼키 : 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족하지 못하는 키

외래키 테이블간의 참조 데이터 무결성을위한제약조건 / 한 릴레이션의 컬럼이 다른 릴레이션의 기본키로 이용되는 키

 


정형 검토 기술

동료 검토 Peer review : 동료검토 작성자 설명, 이해관계자 설명 들으며 결함

워크스루 walk through : 검토 자료 사전 배포 후 짧은 회의

인스펙션 : inspection 저작자가 아닌 다른 전문가가 검토

 

 

UML 표준화된 범용 모델링언어 (가시화,구축,명세화,문서화)

구성요소 사관다 (사물 관계 다이어그램)

다이어그램 의 종류 -> 정적다이어그램(구조) / 동적다이어그램(행위)

클객컴배복패

클래스 : 클래스간 관계
객체 : 객체간 관계
컴포넌트 :컴포넌트 간 관계 ( 탭2개달린 박스)
배치 : 물리적 요소의 위치 표현
복합체 : 복합 구조인 경우 내부표현
패키지 : 패키지 간 관계 ( 폴더형태)

 

유시커상활타

유스케이스 : 사용자 관점  
시퀀스 : 시간적 개념 중심 메세지 표현 ( 객체, 생명선, 실행, 메세지)
커뮤니케이션 : 객체 메세지, 상호작용
상태 : 객체 상태와 상태 변화
활동 : 시스템 수행 활동
타이밍 : 객체의 상태변화 시간 제약을 표현

 

블루투스 공격기법

블루버그 bluebug : 블루투스 장비간 취약한 연결 관리를 악용한 공격

블루스나프 bluesnarf : 블루투스 연결을 통해 무선기기에서 무단으로 정보에 엑세스하는 공격

블루프린팅 blueprinting : 블루투스 공격 장치를 검색하는 활동

블루재킹 bluejacking : 블루투스를 이용해 스팸메일처럼 메세지를 익명으로 퍼트리는 공격

 

 

웹 서비스 방식 솦 웹서디랭 우디 SOAP / WSDL / UDDI
SOAP HTTP, HTTPS 등을 사용해 XML 기반의 메시지를 교환하는 프로토콜
WSDL Web Servie Description Language
웹 서비스명, 제공위치 등 웹 서비스의 정보가 기술된 XML 형식의 언어
UDDI WSDL의 등록•검색을 위한 저장소 (공개적으로 접근 가능한 레지스트리)​

 

 

TCL : 트랜잭션 조작언어

DDL : 데이터 담는 그릇을 정의한 언어

DML : 데이터베이스에 저장된 자료를 입력, 수정, 삭제, 조회하는 언어
DCL : DBA가 사용하는 제어용 언어

 

DDL

CREATE TABLE 테이블명 (컬럼명 데이터타입 상세문법); (INDEX - ON / VIEW - AS)

ALTER TABLE 테이블명 ADD 컬럼명 데이터타입[제약조건];

ARTER TABLE 테이블명 MODIFY 컬럼명 데이터타입 [제약조건];

ALTER TABLE 테이블명 DROP 컬럼명;

DROP TABLE 테이블명 [CASCADE | RESTRICT];

CASCADE : 참조하는 테이블까지 연쇄제거

RESTRICT 다른 테이블이 삭제할 테이블 참조 중이라면 제거하지 않는 옵션;

 

DML

SELECT / FROM / WHERE / GROUP BY / HAVING / ORDER BY;

WHERE 절

BETWEEN 1 AND 2

IN(1); / NOT IN(1,2);

컬럼 LIKE 패턴 ''; % / [] / [^]/ _ / 0개이상 문자열 , 1개문자 일치, 1개문자 불일치, 특정위치 1개문자 일지

WHERE NAME LIKE '정보%'; = 이름이 정보로 시작되는 문자열 가져옴.

INSERT INTO 테이블명(속성명들) VALUES(데이터들)

UPDATE 테이블명 SET 속성명='데이터' WHERE 조건; 

EX) [학생]테이블에 장길산의 주소를 인천으로 수정

UPDATE 학생 SET 주소='인천' WHERE 이름='장길산';

DELETE FROM 테이블명 WHERE 조건;

[학생]테이블에 장길산에 대한 튜플을 삭제

DELETE FROM 학생 WHERE 이름='장길산';

 

JOIN은 FROM절에 사용

INNER JOIN / OUTERJOIN(LEFT, RIGHT, FULL) / CROSS JOIN(ON X) / SELF JOIN

 

서브쿼리 : FROM절 / WHERE절 (해당하는 절에 조회커리가 들어가면 된다).

FROM절은 WHERE절에 A.책번호 = B.책번호 와 같이 삽입

WHERE 절 = IN 음에 필요한 조회쿼리삽입

 

집합연산자

UNION / UNIONALL / INTERSECT / MINUS (합집합) (전체집합, 모든값 다나옴)  (교집합) (첫번째-두번째, 첫번째에서 교집합부분 뺴고)

 

 

DCL

그온투 리온프

GRAND 기능 ON 테이블 TO 사용자;

REVOKE 기능 ON 테이블 FROM 사용자;

 

 

도메인 하나의 속성이 가질 수 있는 원자값들의 집합

스키마 DB의 정보를 담고있는 기본적인 틀

테이블 데이터 저장공간

뷰 하나 이상의 물리데이터에서 유도되는 가상의 테이블

인덱스 : 검색을 빠르게 하기 위한 데이터 구조

 

집계함수 : SELECT나 COUNT, SUM, AVG, MAX, MIN, STDDEV(표준편차), VARIAN(분산)

그룹함수 : ROLLUP 소계, CUBE 다차원집계, GROUPING SETS 개별 컬럼집계 (순서무관) 

GROUB BY ROLLUP(부서명,직위); 와 같이 사용

순위함수 : RANK()12245, DENSE_RANK()12234, ROW_NUMBER()12345 +  OVER 까먹지말기

예시

SELECT NAME, SALARY, RANK() OVER(ORDERBY SALARY DESC) A와 같이 사용

RANK(), DENSE_RANK(), ROW-NUMBER()

 

절차형 SQL

프로시저 : 일련의 쿼리를 마치 하나의 함수처럼 실행하기 위한 쿼리의 조합 / 디비컨SET

사용자 정의 함수 : 일련의 SQL을 처리 수행 후, 수행결과를 단일값으로 반환 할 수 있는 절차형 SQL / 디비컨SER

트리거 : 시스템에서 이벤트가 발생할 떄마다, 관련 작업 자동 수행되는 절차형 SQL / 디이비컨SE

DECLARE -> (EVENT) -> BEGIN/END -> CONTROL -> SQL -> EXCEPTION -> TRANSACTION / RETURN

 

테스트 레벨 : 단통시인 (단위 통합 시스템 인수)

단위 Unit : 구현이 진행되면서 수행 (기능성위주) - 구조 기반 위주 (목 객체 - 더스드 스가) 

통합 Integration : 단위 테스트 통과한 모듈 간의 인터페이스, 컴포넌트 오류, 결함 찾기 (빅뱅, 상/하향식, 샌드위치) 

시스템  System 통합된 단위 시스템 기능이 시스템에서 정상적으로 수행되는지 검증 

(기능적 요구사항 - 블랙박스 / 비기능적 요구사항 테스트 - 화이트박스)

인수 Acceptance 계약상 요구사항 만족하는지, 운영 여부 결정하는 테스트 (알파/베타 테스트)

 

단위테스트의 목 객체 : 스텁의 객체지향 버전 목 객체 (더스드 스가)

더미 객체 : 객체만 필요할 때 사용 

테스트 스텁 : 모듈 기능 단순히 수행하는 도구

테스트 드라이버 : 하위 모듈 호출, 결과 도출

테스트 스파이 : 테스트 클래스와 협력하는 클래스 출력검증

가짜 객체 : 실제 협력 클래스 전체 일부 단순 구현

 

❤️ 화이트박스 테스트 (구조기반) : 구결조 조변다 기제데 (coverage)

구문 statement 모든 명령문을 한 번 이상 수행

결정decision 전체 조건식 참, 거짓을 한 번 수행 (선택 커버리지, 분기 커버리지)

조건 condition 개별 조건식이 참, 거짓을 한 번씩 수행

 

조건/결정 condition/decision 전체 조건식 참, 거짓 한번씩, 개별 조건식도 참,거짓을 한 번씩 수행 

변경조건결정 MCDC 개별 조건식이 다른 개별 조건식 영향 안받고 저체 조건식에도 독립적으로 영향을 주도록

다중조건 MCC 모든 개별 조건식의 가능 조합 100% 보장 2^n개

 

기본경로 Base Path coverage 맥케이브 순환복잡도를 기반으로 수행 가능한 모든 경로 테스트 브이엔이 브이피일

제어흐름 control flow 제어 구조를 그래프로 나타내어 테스트

데이터 흐름 data flow test 제어흐름 그래프 + 데이터 사용 현황 추가한 그래프 통해 테스트




❤️블랙박스 테스트 (명세기반) : 동경결상 유분페원비 (Testing)

 

동등 분할 equivalence partitioning 입력데이터 유효값/무효값으로 그루핑해 대푯값 tc를 도출하여 테스트

경계값 분석 Boundary value analysis 2-value / 3-value 최솟값 위, 최대치 바로 아래 등 입력값의 극한 한계를 테스트 / 

결정 테이블 decision table 요구사항을 테이블로 구성, 조건-행위 조합하여 테스트

상태 전이 state transition 이벤트에 의해 객체상태가 전이되는 경우의 수 측정

 

유스케이스 use case 프로세스 흐름 기반으로 테스트 수행

분류 트리classification tree method 트리 구조로 분석 및 표현하여 테스트

페어 와이즈 pairwise 데이터값을 최소 한번씩 조합, 상대적으로 적은 양의 테스트 세트를 구성하기 위한 테스트 기법

원인 결과 그래프 cause-effect gragh  입력값 간의 관계 및 출력에 미치는 영향 분석, 효용성 높은 tc를 선택 후 테스트

비교 comparison 여러 버전의 프로그램에 같은 데이터를 입력하여서 결과 비교하는 테스트

 

❤️테스트 시각에서 따른 분류 : 검증 / 확인

검증 Verification : 개발자 시점 , 명세 기능을 만족하는가

확인 Validation : 올바른 소프트웨어가 맞는지, 사용자시점에서 테스트

 

728x90