결론 먼저
정처기 필기 5과목을 시험 직전에 한 장짜리 표로 정리한 요약본이에요. UML 분류·디자인 패턴·테스트 레벨·정규화 조건·암호화 구분처럼 "짧고 정확하게 써야 맞는" 유형만 모았습니다. 이 글은 1회독을 끝낸 사람의 복습·시험 당일 훑기용입니다.
왜 이 항목들만 추렸는가
정처기 필기는 5과목 × 20문항 = 100문항이에요. 이 중 절반 이상이 "A와 B의 차이", "짝 맞추기", "순서 기억" 같은 단답 매칭 유형이라, 표 기반 암기가 가장 효율이 좋아요. 아래 항목들은 최근 기출에서 반복 출제된 핵심만 추린 거라서, 이 표들을 손으로 쓸 수 있으면 객관식 보기에서 고를 때 헷갈리지 않아요.
1과목: 소프트웨어 설계
UML 다이어그램
| 다이어그램 | 분류 | 설명 |
|---|---|---|
| 유스케이스 | 행위 | 사용자와 시스템 간 상호작용 |
| 시퀀스 | 행위 | 객체 간 메시지 교환 순서 |
| 클래스 | 구조 | 클래스 간 관계 (상속, 연관, 의존) |
| 활동 | 행위 | 업무 흐름 (플로차트와 유사) |
| 상태 | 행위 | 객체의 상태 변화 |
| 컴포넌트 | 구조 | 시스템 구성 요소 |
| 배치 | 구조 | 하드웨어/소프트웨어 배치 |
행위 다이어그램 vs 구조 다이어그램 분류가 시험에 나와요.
디자인 패턴 (GoF)
생성 패턴: Singleton, Factory, Abstract Factory, Builder, Prototype 구조 패턴: Adapter, Bridge, Composite, Decorator, Facade, Proxy 행위 패턴: Observer, Strategy, Command, Template Method, Iterator, State
시험에서는 설명을 주고 패턴 이름을 고르는 형태가 많아요. 각 패턴을 한 줄로 설명할 수 있으면 충분합니다.
2과목: 소프트웨어 개발
테스트 레벨
| 레벨 | 설명 | 누가 |
|---|---|---|
| 단위 테스트 | 모듈 개별 테스트 | 개발자 |
| 통합 테스트 | 모듈 간 인터페이스 테스트 | 개발자/테스터 |
| 시스템 테스트 | 전체 시스템 테스트 | 테스터 |
| 인수 테스트 | 사용자 요구사항 충족 확인 | 사용자 |
통합 테스트 방식
- 빅뱅: 모든 모듈 한 번에 통합. 오류 위치 파악 어려움
- 상향식(Bottom-Up): 하위 모듈부터. 드라이버(Driver) 필요
- 하향식(Top-Down): 상위 모듈부터. 스텁(Stub) 필요
형상 관리
형상 관리 절차: 식별 → 통제 → 감사 → 기록
3과목: 데이터베이스 구축
정규화
| 정규형 | 조건 |
|---|---|
| 1NF | 모든 속성이 원자값 (반복 그룹 제거) |
| 2NF | 1NF + 부분 함수 종속 제거 |
| 3NF | 2NF + 이행 함수 종속 제거 |
| BCNF | 모든 결정자가 후보키 |
트랜잭션 ACID
- Atomicity (원자성): 전부 실행 또는 전부 취소
- Consistency (일관성): 트랜잭션 전후 DB 일관성 유지
- Isolation (독립성): 동시 실행 트랜잭션 간 간섭 없음
- Durability (영속성): 완료된 트랜잭션은 영구 반영
SQL 핵심
SELECT 컬럼 FROM 테이블
WHERE 조건
GROUP BY 그룹 기준
HAVING 그룹 조건
ORDER BY 정렬 기준
실행 순서: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY
4과목: 프로그래밍 언어 활용
자료형
| C | Java | Python | 설명 |
|---|---|---|---|
| int | int | int | 정수 |
| float | float | float | 실수 |
| char | char | str | 문자 |
| int[] | int[] | list | 배열/리스트 |
연산자 우선순위 (자주 함정)
- 산술 (
*,/,%→+,-) - 비교 (
>,<,==,!=) - 논리 (
!→&&→||)
운영체제 — 프로세스 스케줄링
| 알고리즘 | 선점 | 특징 |
|---|---|---|
| FCFS | 비선점 | 먼저 온 순서대로 |
| SJF | 비선점 | 실행시간 짧은 순서 |
| Round Robin | 선점 | 시간 할당량(Time Quantum) |
| Priority | 선점/비선점 | 우선순위 기반 |
| SRT | 선점 | 남은 시간 짧은 순서 |
5과목: 정보시스템 구축 관리
암호화
| 구분 | 알고리즘 | 키 |
|---|---|---|
| 대칭키 | AES, DES, 3DES | 암호화 = 복호화 키 동일 |
| 비대칭키 | RSA, ECC | 공개키 + 개인키 쌍 |
| 해시 | SHA, MD5 | 단방향 (복호화 불가) |
보안 공격 유형
- SQL Injection: 입력값에 SQL 삽입
- XSS: 웹에 악성 스크립트 삽입
- CSRF: 인증된 사용자 권한으로 위조 요청
- DDoS: 대량 트래픽으로 서비스 마비
- Sniffing: 네트워크 패킷 가로채기
- Spoofing: IP/MAC 등을 위조
네트워크
- TCP: 연결형, 신뢰성 보장, 3-way handshake
- UDP: 비연결형, 빠르지만 신뢰성 없음
- IP: 비연결형, 패킷 단위 전송, 주소 지정
시험장에서의 접근법
- 1·5과목(암기)부터 — 위 표 기반 문제는 10초 안에 답이 나옴
- 2·3과목(개발·DB)은 중간에 배치, 시간 많이 먹는 4과목 프로그래밍은 마지막
- 막히는 문제는 30초 안에 마킹 후 넘기기, 과목별 40점 과락 방어가 우선
- 마지막 10분은 과목별 점수 분포 점검 — 모의고사에서 과락 위험 과목이 있었으면 그 과목 재검토
정리 — 시험 직전 체크리스트
시험장 가기 전에 이것만 확인하세요:
- UML 다이어그램 7종 — 행위/구조 분류
- 디자인 패턴 — Singleton, Observer, Factory 한 줄 설명
- 테스트 레벨 4단계 + 드라이버/스텁 구분
- 정규화 1NF–BCNF 조건
- ACID 4가지
- SQL 실행 순서
- 프로세스 스케줄링 5종 — 선점/비선점 구분
- 대칭키/비대칭키/해시 차이
- 보안 공격 6종 이름과 설명