정보처리기사 실기 최종요약 암기본 — 시험 직전 한 번에 훑기

정보처리기사 실기 핵심 개념을 시험 직전에 빠르게 훑을 수 있도록 압축 정리한 암기본. 소프트웨어 공학부터 SQL, 보안, 네트워크까지 한 번에.

시험 하루 전 머릿속에 한 번 더 박아 넣기 위한 압축 요약본. 개념별 핵심 키워드와 약어(두문자)를 중심으로 정리했다.


1. 소프트웨어 생명주기 모델

모델 핵심 한 줄
폭포수(Waterfall) 순차적, 단계 끝나야 다음 진행, 변경 어려움
프로토타입 시제품 먼저 만들어 요구사항 확정
나선형(Spiral) 위험분석 중심, 반복적, 대규모 시스템 적합
반복적(Iterative) 점증적/진화적 개발
애자일(Agile) 변화 수용, 짧은 주기 반복, 사람 중심

애자일 12원칙 핵심 키워드: 고객만족, 변화수용, 짧은 주기, 동기부여, 대면소통, 작동 S/W, 지속가능, 기술 우수성, 단순성, 자기조직팀, 회고

애자일 방법론

  • XP(eXtreme Programming): 5가지 가치 — 용기, 단순성, 의사소통, 피드백, 존중
  • Scrum: 스프린트(2~4주), 백로그, 데일리 스크럼, 회고
  • Lean: 낭비 제거, 가치 흐름

2. 요구사항 분석 & 설계

요구사항 분류

  • 기능적 요구사항: 시스템이 무엇을 해야 하는가
  • 비기능적 요구사항: 어떻게 해야 하는가 (성능, 보안, 가용성)

요구사항 개발 프로세스 (도분명확)

출 → 석 → 세 →

UML 다이어그램

구분 종류
구조적(정적) 클래스, 객체, 컴포넌트, 배치, 복합체, 패키지
행위적(동적) 유스케이스, 시퀀스, 커뮤니케이션, 상태, 활동, 타이밍, 상호작용 개요

관계(Relationship)

  • 연관(Association): 단순 연결 —
  • 집합(Aggregation): 부분-전체, 독립 ◇—
  • 합성(Composition): 부분-전체, 생명주기 공유 ◆—
  • 일반화(Generalization): 상속 △—
  • 의존(Dependency): 일시적 사용 --▶
  • 실체화(Realization): 인터페이스 구현

3. 디자인 패턴 (GoF 23가지)

생성(Creational) - 5

추빌팩프싱상팩토리, 더, 토리 메소드, 로토타입, 글톤

구조(Structural) - 7

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

행위(Behavioral) - 11

책커인반중메옵상전템방임연쇄, 맨드, 터프리터, 복자(Iterator), 재자(Mediator), 멘토, 저버, 태, 략, 플릿 메소드, 문자(Visitor)


4. 객체지향 (OOP)

5대 원칙 — SOLID

  • SRP: 단일 책임
  • OCP: 개방-폐쇄 (확장 O, 변경 X)
  • LSP: 리스코프 치환
  • ISP: 인터페이스 분리
  • DIP: 의존 역전

특징

  • 캡슐화: 데이터+메서드 묶고 은닉
  • 상속: 부모 기능 재사용
  • 다형성: 같은 메시지, 다른 동작 (오버로딩/오버라이딩)
  • 추상화: 공통 속성 추출

5. 모듈화 (결합도 & 응집도)

결합도는 낮게(Low), 응집도는 높게(High)

결합도 (낮은 순서)

자스제외공내료 < 탬프 < 어 < 부 < 통 <

응집도 (높은 순서)

기순교절시논우능 > 차 > 환(통신) > 차 > 간 > 리 >


6. 테스트

V모델 (개발↔테스트 매핑)

  • 요구사항 분석 → 인수 테스트
  • 시스템 설계 → 시스템 테스트
  • 상세 설계 → 통합 테스트
  • 코딩 → 단위 테스트

블랙박스 vs 화이트박스

블랙박스(기능/명세 기반): 동등분할, 경계값, 원인-결과, 오류추정, 비교, 결정테이블

화이트박스(구조 기반): 문장, 분기, 조건, 분기/조건, 변형 조건/결정, 다중 조건, 기본경로, 루프 검증

테스트 레벨

단위 → 통합 → 시스템 → 인수

통합 테스트 방식

  • 하향식: Stub 필요
  • 상향식: Driver 필요
  • 빅뱅: 한꺼번에
  • 샌드위치: 하향+상향 병행

7. 데이터베이스

정규화

단계 조건
1NF 원자값 (도메인이 원자값)
2NF 1NF + 부분 함수 종속 제거 (완전 함수적 종속)
3NF 2NF + 이행적 함수 종속 제거
BCNF 3NF + 모든 결정자가 후보키
4NF 다치 종속 제거
5NF 조인 종속 제거

암기법: 도부이결다조메인원자, 분종속제거, 행종속제거, 정자=후보키, 치종속제거, 인종속제거

키(Key)

  • 후보키(Candidate): 유일성 + 최소성
  • 기본키(Primary): 후보키 중 선택, NULL 불가
  • 대체키(Alternate): 선택되지 않은 후보키
  • 슈퍼키(Super): 유일성만 만족
  • 외래키(Foreign): 다른 릴레이션의 기본키 참조

무결성

  • 개체 무결성: 기본키 NULL 불가, 중복 불가
  • 참조 무결성: 외래키는 참조 릴레이션의 기본키거나 NULL
  • 도메인 무결성: 속성값이 도메인에 속해야 함

트랜잭션 — ACID

  • Atomicity (원자성): 모두 성공 or 모두 실패
  • Consistency (일관성): 실행 후에도 일관된 상태
  • Isolation (독립성/고립성): 동시 실행 시 간섭 없음
  • Durability (영속성/지속성): 완료되면 영구 반영

트랜잭션 상태

활동 → 부분완료 → 완료(commit) / 실패 → 철회(rollback)


8. SQL 핵심 문법

DDL / DML / DCL / TCL

-- DDL (정의): CREATE, ALTER, DROP, TRUNCATE, RENAME
CREATE TABLE 학생 (
  학번 CHAR(8) PRIMARY KEY,
  이름 VARCHAR(20) NOT NULL,
  학과 VARCHAR(20),
  FOREIGN KEY (학과) REFERENCES 학과(학과명)
);

-- DML (조작): SELECT, INSERT, UPDATE, DELETE
SELECT 학과, COUNT(*) AS 인원
FROM 학생
WHERE 학년 >= 3
GROUP BY 학과
HAVING COUNT(*) >= 10
ORDER BY 인원 DESC;

-- DCL (제어): GRANT, REVOKE
GRANT SELECT, INSERT ON 학생 TO 사용자A WITH GRANT OPTION;

-- TCL (트랜잭션): COMMIT, ROLLBACK, SAVEPOINT

JOIN

-- INNER JOIN: 교집합
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;

-- LEFT OUTER JOIN: 왼쪽 전부 + 매칭
SELECT * FROM A LEFT JOIN B ON A.id = B.a_id;

-- CROSS JOIN: 곱집합
-- SELF JOIN: 자기 자신 조인

뷰(VIEW)

CREATE VIEW 고학년 AS
SELECT * FROM 학생 WHERE 학년 >= 3;

특징: 독립성 제공, 보안, ALTER 불가, 인덱스 생성 불가 (대부분)


9. 프로그래밍 언어 (C/Java/Python)

진수 변환 / 비트 연산

// 비트 연산자
& (AND)  | (OR)  ^ (XOR)  ~ (NOT)  << >>

C 포인터

int a = 10;
int *p = &a;   // p는 a의 주소
*p = 20;       // a의 값을 20으로 변경

// 배열-포인터 관계
int arr[3] = {1,2,3};
// arr[i] == *(arr+i)

Java 접근제어자

제어자 같은클래스 같은패키지 자식 외부
public O O O O
protected O O O X
default O O X X
private O X X X

Python 컴프리헨션 / 슬라이싱

a = [1,2,3,4,5]
a[1:4]      # [2,3,4]
a[::-1]     # [5,4,3,2,1]
[x*2 for x in a if x%2==0]  # [4,8]

10. 운영체제

프로세스 상태

생성 → 준비 → 실행 → (대기) → 종료

CPU 스케줄링

  • 선점(Preemptive): SRT, RR, 다단계큐, 다단계피드백큐
  • 비선점(Non-preemptive): FCFS, SJF, HRN, 우선순위, 기한부

HRN 공식: 우선순위 = (대기시간 + 서비스시간) / 서비스시간

페이지 교체 알고리즘

  • FIFO: 먼저 들어온 것 교체
  • LRU: 가장 오래 사용 안 된 것
  • LFU: 가장 적게 사용된 것
  • OPT(최적): 앞으로 가장 오래 사용 안 될 것
  • NUR: 최근 사용 안 된 것

교착상태(Deadlock) 4조건

상점비환호배제, 유와대기, 선점, 형대기

해결: 예방, 회피(은행원 알고리즘), 발견, 회복


11. 네트워크

OSI 7계층

아표세전네데물용, 현, 션, 송, 트워크, 이터링크,

계층 프로토콜/장비
7 응용 HTTP, FTP, SMTP, DNS
6 표현 JPEG, MPEG, SSL
5 세션 NetBIOS, RPC
4 전송 TCP, UDP / 게이트웨이
3 네트워크 IP, ICMP, ARP / 라우터
2 데이터링크 PPP, HDLC / 브릿지, 스위치
1 물리 / 허브, 리피터

TCP vs UDP

구분 TCP UDP
연결 연결형 비연결형
신뢰성 높음 낮음
속도 느림 빠름
용도 웹, 메일 스트리밍, DNS

라우팅 프로토콜

  • IGP(내부): RIP(거리벡터, 최대 15홉), OSPF(링크상태)
  • EGP(외부): BGP

12. 보안

보안 3요소 — CIA

  • Confidentiality (기밀성)
  • Integrity (무결성)
  • Availability (가용성)
  • 인증(Authentication), 부인방지(Non-repudiation)

암호화

방식 설명 알고리즘
대칭키 암/복호화 동일 키 DES, 3DES, AES, SEED, ARIA, IDEA
비대칭키 공개키/개인키 쌍 RSA, ECC, Diffie-Hellman, ElGamal
해시 일방향, 무결성 MD5, SHA, HAS-160

공격 유형

  • SQL Injection: 입력값으로 SQL 조작
  • XSS: 스크립트 삽입
  • CSRF: 요청 위조
  • DDoS: 분산 서비스 거부
  • Sniffing: 패킷 가로채기
  • Spoofing: 속임수 (IP/ARP/DNS)
  • 스미싱/피싱/파밍: 사회공학
  • APT: 지능형 지속 위협
  • 랜섬웨어: 파일 암호화 후 금전 요구
  • Zero-day: 패치 전 취약점 공격

보안 솔루션

  • IDS: 침입탐지 (수동)
  • IPS: 침입방지 (능동)
  • 방화벽: 접근제어
  • WAF: 웹 방화벽
  • VPN: 가상 사설망
  • DLP: 데이터 유출 방지

13. 시스템 개발 환경

서버 개발 프레임워크

  • Java: Spring
  • Python: Django, Flask
  • JavaScript: Node.js (Express)
  • Ruby: Rails

빌드 도구

Ant → Maven → Gradle

버전 관리

  • Git: 분산형
  • SVN: 중앙집중형
  • CVS: 구형 중앙집중형

형상 관리 절차

식별 → 통제 → 감사 → 기록


14. 자주 나오는 두문자 총정리

약어 풀이
SOLID SRP, OCP, LSP, ISP, DIP
ACID Atomicity, Consistency, Isolation, Durability
CIA Confidentiality, Integrity, Availability
DORA Discover, Offer, Request, Ack (DHCP)
CRUD Create, Read, Update, Delete
결합도 자스제외공내
응집도 기순교통절시논우
OSI 7 응표세전네데물
교착 4조건 상점비환
애자일 XP 가치 용단의피존

15. 시험장 들어가기 전 최종 체크

  1. 약어 암기 (SOLID, ACID, CIA, DORA, OSI 7계층 순서)
  2. 결합도/응집도 순서와 정의 구분
  3. 정규화 1~BCNF 조건 말로 설명 가능한지
  4. 트랜잭션 ACID 각 특성 한 줄 설명
  5. 디자인 패턴 23개 분류 (생성 5/구조 7/행위 11)
  6. SQL DDL/DML/DCL/TCL 명령어
  7. JOIN 종류와 동작
  8. 페이지 교체 / 스케줄링 알고리즘 계산 연습
  9. TCP vs UDP 차이
  10. 대칭키/비대칭키 알고리즘 이름들

정리

정보처리기사 실기는 범위는 넓지만 나오는 포인트는 반복된다. 약어(두문자) 중심으로 뼈대를 세우고, 각 개념의 한 줄 정의 + 대표 예시만 확실히 잡으면 서술형·단답형 모두 대응 가능하다.

시험 전날은 새로운 개념을 파지 말고, 이 요약본을 3번 반복해서 훑는 것이 가장 효율적이다.

합격을 기원한다. 🍀