콘텐츠로 이동

핵심 요약 카드

시험 직전 빠르게 훑는 영역별 1페이지 요약입니다.


1영역 — 소프트웨어 개발

정렬 알고리즘

알고리즘 평균 최악 공간 안정
버블 O(n²) O(n²) O(1) O
선택 O(n²) O(n²) O(1) X
삽입 O(n²) O(n²) O(1) O
O(n log n) O(n²) O(log n) X
병합 O(n log n) O(n log n) O(n) O
O(n log n) O(n log n) O(1) X

안정 정렬: 버·삽·병 / 불안정: 선·퀵·힙

최단 경로

알고리즘 음수 가중치 복잡도 용도
다익스트라 X O(n²) 단일 출발
벨만-포드 O O(VE) 음수 허용
플로이드-워셜 O O(n³) 전체 쌍

자료구조 핵심

구조 특성 활용
스택 LIFO DFS, 괄호검사, 함수호출
FIFO BFS, 프린터 스풀
삽입/삭제 O(log n) 우선순위 큐
해시 평균 O(1) 빠른 검색
트리 노드 n, 간선 n-1 계층 구조

SOLID 원칙

약자 이름 핵심
S 단일 책임 하나의 클래스는 하나의 책임
O 개방-폐쇄 확장엔 열림, 변경엔 닫힘
L 리스코프 치환 자식 클래스는 부모를 대체 가능
I 인터페이스 분리 필요한 인터페이스만 구현
D 의존 역전 추상화에 의존

디자인 패턴 분류

분류 패턴
생성 싱글톤, 팩토리, 빌더, 프로토타입
구조 어댑터, 데코레이터, 파사드, 프록시
행동 전략, 옵저버, 템플릿 메서드, 커맨드

2영역 — 데이터베이스

정규화 단계

단계 제거 대상 핵심
1NF 원자값
2NF 부분 함수 종속 기본키 일부에만 종속 제거
3NF 이행 함수 종속 A→B→C 관계 제거
BCNF 결정자가 후보키 아닌 경우 모든 결정자=후보키

이상 현상: 삽입 / 삭제 / 갱신 이상

SQL 실행 순서

FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY

조인 비교

종류 결과
INNER JOIN 양쪽 일치 행만
LEFT JOIN 왼쪽 전체 + 오른쪽 일치 (없으면 NULL)
RIGHT JOIN 오른쪽 전체 + 왼쪽 일치
FULL OUTER 양쪽 모두

트랜잭션 ACID

속성 의미
Atomicity All or Nothing
Consistency 일관된 상태 유지
Isolation 트랜잭션 간 독립
Durability COMMIT 후 영구 반영

격리 수준 (낮음 → 높음)

READ UNCOMMITTED → READ COMMITTED → REPEATABLE READ → SERIALIZABLE
더티리드 방지X → 방지O → + 반복불가능 방지 → + 팬텀리드 방지

NoSQL 4종류

종류 예시 용도
키-값 Redis 캐싱, 세션
문서 MongoDB 콘텐츠, 카탈로그
컬럼 패밀리 Cassandra 시계열, 대규모 쓰기
그래프 Neo4j SNS, 추천

CAP 정리: 3가지 중 2가지만 선택 가능 (P는 필수)


3영역 — 네트워크

OSI 7계층 (아파서 탄 네데물)

계층 이름 PDU 프로토콜/장비
7 응용 HTTP, DNS, FTP
6 표현 SSL/TLS, JPEG
5 세션 NetBIOS
4 전송 세그먼트 TCP, UDP
3 네트워크 패킷 IP, 라우터
2 데이터링크 프레임 MAC, 스위치
1 물리 비트 케이블, 허브

TCP vs UDP

항목 TCP UDP
연결 연결 지향 비연결
신뢰성 보장 미보장
속도 느림 빠름
용도 HTTP, FTP DNS, 게임, 스트리밍

TCP 핸드셰이크

  • 연결: SYN → SYN+ACK → ACK (3-way)
  • 종료: FIN → ACK → FIN → ACK (4-way)

주요 포트

20/21=FTP  22=SSH  23=Telnet  25=SMTP
53=DNS  80=HTTP  110=POP3  443=HTTPS

HTTP 메서드 멱등성

  • 있음: GET, PUT, DELETE, HEAD
  • 없음: POST, PATCH

장비 계층

허브(1계층) → 스위치(2계층, MAC) → 라우터(3계층, IP)
IDS=탐지+알림 / IPS=탐지+자동차단
L4=IP+포트 기반 / L7=URL+헤더 기반

4영역 — 정보보안

암호화 비교

구분 대칭키 비대칭키
1개 (동일) 2개 (공개+개인)
속도 빠름 느림
키 배송 문제 있음 안전
예시 AES RSA

HTTPS: 비대칭키로 대칭키 교환 → 대칭키로 통신

해시

  • 단방향 (복호화 불가)
  • SHA-256이 현재 표준
  • 눈사태 효과: 입력 1비트 변경 → 출력 완전히 달라짐

디지털 서명

  • 서명: 개인키로 암호화
  • 검증: 공개키로 복호화

주요 공격과 방어

공격 방어
SQL Injection Prepared Statement
XSS HTML 이스케이프, CSP, HTTPOnly
CSRF CSRF 토큰, SameSite 쿠키
DDoS/SYN Flood CDN, SYN Cookie

CIA 트라이어드

  • 기밀성: 인가된 사용자만 접근
  • 무결성: 데이터 변조 없음
  • 가용성: 필요할 때 접근 가능

접근 제어 모델

DAC=소유자 결정 / MAC=시스템 강제(군사) / RBAC=역할 기반(기업)

5영역 — IT 비즈니스

PMBOK 5대 프로세스

착수 → 기획 → 실행 → 감시통제 → 종료

일정 관리 도구

도구 핵심
WBS 작업 계층적 분해
간트 차트 시작/종료 일정 시각화
CPM 임계 경로 (Float=0)
PERT 기대시간 = (낙관+4×최빈+비관)/6

위험 대응 4전략

회피(Avoid) → 원인 제거
완화(Mitigate) → 가능성/영향 감소
전가(Transfer) → 보험/외주
수용(Accept) → 낮은 위험 감수

스크럼 핵심

항목 내용
역할 PO(백로그), SM(코치), 개발팀
스프린트 1~4주 반복
이벤트 계획 → 데일리 → 리뷰 → 회고

SLA 지표

가용성 = MTBF / (MTBF + MTTR)
99% = 연 87.6h / 99.9% = 연 8.76h / 99.999% = 연 5.26분

클라우드 서비스 모델

IaaS → OS·미들웨어·앱 직접 관리
PaaS → 앱만 관리
SaaS → 아무것도 관리 안 함

빅데이터 3V

Volume(규모) + Velocity(속도) + Variety(다양성)

6영역 — 프로젝트 관리 및 테크니컬 커뮤니케이션

프로젝트 생명주기

착수 → 계획 → 실행 → 감시/통제 → 종료

프로젝트 관리 도구

도구 용도
WBS 범위관리 — 작업 계층적 분해
간트 차트 일정 시각화 (막대 그래프)
CPM 임계경로 도출 (Float=0인 경로)
FP 원가산정 — 기능 개수 기반
COCOMO 원가산정 — LOC 기반

위험관리 프로세스

식별 → 분석(정성적/정량적) → 대응 → 통제

위험 대응 4전략

회피 — 원인 제거
전가 — 보험/외주
완화 — 가능성·영향 감소
수용 — 낮은 위험 감수

품질관리 3단계

QP(계획) → QA(프로세스 감사) → QC(결과물 검사)

테크니컬 문서

문서 설명
RFI 정보제공요청서 — 업체 정보 수집
RFP 제안요청서 — 업체에 제안 요청
제안서 업체가 RFP에 응답
SRS 요구사항 명세서

비즈니스 커뮤니케이션

상향식(보고) / 하향식(지시) / 수평식(협업)

자주 혼동되는 개념 쌍

A B 구분 포인트
안정 정렬 (버·삽·병) 불안정 (선·퀵·힙) 같은 값의 순서 유지 여부
WHERE HAVING 그룹화 전 vs 후 필터
INNER JOIN LEFT JOIN 불일치 행 제외 vs 포함
DDL (자동COMMIT) DML (ROLLBACK 가능) 구조 변경 vs 데이터 조작
더티리드 팬텀리드 커밋 안 된 데이터 vs 없던 행 나타남
IDS IPS 탐지+알림 vs 탐지+자동차단
AES RSA 대칭키 vs 비대칭키
인증 인가 신원 확인 vs 권한 확인
MTTR RTO 실제 평균 복구 시간 vs 목표 복구 시간
CPM PERT 임계 경로 vs 기대 시간 산정
IaaS PaaS OS까지 관리 vs 앱만 관리
순열 (nPr) 조합 (nCr) 순서 있음 vs 순서 없음