영역 간 연결 개념 정리
각 영역은 독립적으로 출제되지만, 실제 시험에서는 여러 영역이 연결된 문제가 출제됩니다.
이 문서는 영역 간 교차점을 정리하여 통합적 이해를 돕습니다.
1. HTTPS 동작 원리 (네트워크 + 정보보안)
클라이언트 서버
| |
|──── TCP 3-way 핸드셰이크 ────→| [네트워크: 전송계층]
| |
|──── TLS ClientHello ─────────→| [정보보안: 암호화]
|←─── TLS ServerHello + 인증서 ─|
|──── 대칭키 교환 (RSA/ECDH) ──→| 비대칭키로 세션키 교환
|←─── 암호화된 응답 ────────────| 이후 대칭키(AES)로 통신
| |
|──── HTTP 요청 (암호화됨) ─────→| [네트워크: 응용계층]
| 단계 |
관련 영역 |
핵심 개념 |
| TCP 연결 |
네트워크 |
3-way 핸드셰이크 |
| 인증서 검증 |
정보보안 |
PKI, 공개키 인프라 |
| 키 교환 |
정보보안 |
비대칭키(RSA) |
| 데이터 전송 |
정보보안 |
대칭키(AES) |
| 포트 443 |
네트워크 |
Well-known Port |
2. 웹 서비스 보안 취약점 (소프트웨어 개발 + 정보보안)
| 공격 |
발생 원인 (SW 개발) |
방어 (정보보안) |
| SQL Injection |
입력값 미검증, 문자열 쿼리 |
Prepared Statement, 입력 검증 |
| XSS |
출력값 미이스케이프 |
HTML 이스케이프, CSP 헤더 |
| CSRF |
세션 기반 인증의 취약점 |
CSRF 토큰, SameSite 쿠키 |
| 버퍼 오버플로우 |
배열 경계 미검사 |
안전한 함수 사용, ASLR |
SW 개발에서 잘못된 코딩 관행 → 정보보안에서 공격 벡터가 됨
3. 트랜잭션과 시스템 신뢰성 (데이터베이스 + IT비즈니스)
DB 트랜잭션 ACID ↔ 서비스 SLA
| DB 속성 |
비즈니스 의미 |
SLA 연결 |
| Atomicity |
결제 실패 시 전액 롤백 |
장애 시 데이터 일관성 보장 |
| Consistency |
잔액은 항상 양수 |
비즈니스 규칙 불변 |
| Isolation |
동시 주문 처리 충돌 없음 |
트래픽 증가 시 정합성 |
| Durability |
COMMIT 후 서버 재시작해도 반영 |
MTTR 감소, RTO 달성 |
CAP 정리와 클라우드 선택
분산 시스템에서 CAP 중 2가지만 선택 가능 (P=네트워크 분리내성은 필수)
CP 선택 (일관성 우선) → 금융, 재고 시스템
예: RDBMS, HBase, Zookeeper
AP 선택 (가용성 우선) → SNS, 콘텐츠 서비스
예: Cassandra, DynamoDB, CouchDB
4. 소프트웨어 개발과 데이터베이스 설계
객체지향 설계 ↔ DB 설계
| OOP 개념 |
DB 매핑 |
주의사항 |
| 클래스 |
테이블 |
상속 관계는 별도 처리 필요 |
| 객체 |
레코드(행) |
— |
| 속성 |
컬럼 |
원자값(1NF) 준수 |
| 관계 (has-a) |
외래키 |
N:M은 중간 테이블 필요 |
| 상속 |
슈퍼타입-서브타입 |
조인 성능 고려 |
ORM과 N+1 문제
ORM 사용 시 주의: N+1 문제
→ 주문 목록 N개 조회 후, 각 주문의 고객 정보를 N번 추가 조회
→ 해결: JOIN FETCH 또는 배치 로딩
5. 네트워크와 보안 장비 (네트워크 + 정보보안)
인터넷
│
[방화벽] ← 패킷 필터링 (IP/포트 기반)
│
[DMZ] ← 웹서버, 메일서버 배치 (반신뢰 구역)
│
[IDS/IPS] ← IDS=탐지+알림, IPS=탐지+자동차단
│
[내부망] ← 핵심 DB, 사내 시스템
| 장비 |
OSI 계층 |
기능 |
| 방화벽 |
3~4계층 |
IP/포트 기반 접근 제어 |
| IDS |
3~7계층 |
침입 탐지, 알림 |
| IPS |
3~7계층 |
침입 탐지 + 자동 차단 |
| WAF |
7계층 |
HTTP 기반 공격 차단 (XSS, SQLi) |
| L4 로드밸런서 |
4계층 |
IP+포트 기반 분산 |
| L7 로드밸런서 |
7계층 |
URL/헤더 기반 분산 |
6. 프로젝트 관리와 소프트웨어 개발 방법론
전통적 방법론 vs 애자일
| 항목 |
워터폴 |
스크럼(애자일) |
| 요구사항 |
초기 고정 |
스프린트마다 변경 가능 |
| 계획 도구 |
WBS, 간트 차트, CPM |
백로그, 번다운 차트 |
| 위험 관리 |
사전 분석 (PERT) |
스프린트 회고로 지속 개선 |
| 팀 구조 |
역할 분리 |
자기 조직화 팀 |
| 적합 상황 |
요구사항 명확, 대규모 |
불확실성 높음, 빠른 출시 |
기술 부채 관리
기술 부채 발생 원인 (SW 개발 영역):
- SOLID 원칙 미준수
- 테스트 코드 미작성
- 리팩토링 지연
비즈니스 영향 (IT 비즈니스 영역):
- 유지보수 비용 증가
- 새 기능 개발 속도 저하
- MTTR 증가 (장애 복구 시간 늘어남)
7. 데이터 처리와 IT 비즈니스 (데이터 + IT 비즈니스)
빅데이터 처리 흐름
빅데이터 3V
| V |
의미 |
예시 |
| Volume (양) |
대용량 데이터 |
TB/PB 단위 |
| Velocity (속도) |
실시간 처리 |
스트리밍 |
| Variety (다양성) |
정형/비정형 |
텍스트, 영상, 센서 |
알고리즘 복잡도와 DB 성능
| 알고리즘 |
복잡도 |
DB 적용 |
| 이진 탐색 |
O(log n) |
B-Tree 인덱스 |
| 해시 탐색 |
O(1) |
해시 인덱스 |
| 선형 탐색 |
O(n) |
Full Table Scan |
| 정렬(병합) |
O(n log n) |
ORDER BY 최적화 |
8. 프로젝트 관리와 소프트웨어 품질 (SW개발 + 프로젝트관리)
테스트와 품질관리 연결
| SW 개발 테스트 |
프로젝트 관리 품질 |
| 단위 테스트 |
QC (결과물 검사) |
| 통합 테스트 |
QA (프로세스 감사) |
| 인수 테스트 |
SLA 충족 확인 |
| 회귀 테스트 |
변경 후 품질 유지 |
형상관리와 프로젝트 관리 도구 연결
[SW 개발] Git/SVN (형상관리)
↕
[프로젝트 관리] CMS (형상관리도구), PMS (프로젝트관리시스템)
↕
위험관리: 형상 변경 이력 추적 → 위험 식별/통제에 활용
9. 클라우드와 전체 영역 통합
클라우드 서비스 선택 기준
| 상황 |
추천 모델 |
관련 개념 |
| OS/네트워크 직접 제어 필요 |
IaaS |
네트워크 가상화 |
| 개발 환경만 필요 |
PaaS |
SW 개발 파이프라인 |
| 소프트웨어만 사용 |
SaaS |
IT 서비스 관리 |
| 빠른 읽기 필요 |
CDN + Redis (NoSQL) |
DB + 네트워크 |
| 금융 데이터 저장 |
RDBMS (CP 선택) |
DB + 보안 |
마이크로서비스 아키텍처 관련 개념
[SW 개발] API 설계, RESTful, 서비스 분리
↕
[네트워크] L7 로드밸런서, API 게이트웨이, TCP 연결
↕
[DB] 서비스별 독립 DB, NoSQL vs RDBMS 혼용
↕
[정보보안] 서비스 간 인증 (JWT, OAuth), mTLS
↕
[IT 비즈니스] DevOps, CI/CD, 스크럼 팀 구조
자주 출제되는 영역 간 연결 문제 유형
| 문제 유형 |
연결 영역 |
핵심 키워드 |
| HTTPS 동작 설명 |
시스템 아키텍처 + 정보보안 |
TCP, TLS, RSA, AES, PKI |
| SQL Injection 방어 |
SW 개발 + 정보보안 |
Prepared Statement, 시큐어 코딩, OWASP |
| 트랜잭션 격리 수준 선택 |
데이터 + IT 비즈니스 |
ACID, 성능 vs 정합성 |
| 클라우드 아키텍처 설계 |
시스템 아키텍처 + 데이터 + IT 비즈니스 |
IaaS/PaaS, CAP, SLA |
| 알고리즘 성능과 DB 인덱스 |
SW 개발 + 데이터 |
O(log n), B-Tree |
| 빅데이터 처리 |
데이터 + IT 비즈니스 |
3V, NoSQL, BASE |
| 접근통제와 인증 |
정보보안 + SW 개발 |
DAC/MAC/RBAC, 시큐어 SDLC |
| 프로젝트 일정과 위험 관리 |
프로젝트 관리 + SW 개발 |
CPM, WBS, 위험대응전략, 스크럼 |
| 정보보호 관리체계 |
정보보안 + IT 비즈니스 |
ISMS, ISO 27001, 개인정보보호 |
| 테크니컬 문서 작성 |
프로젝트 관리 + SW 개발 |
SRS, RFP, WBS, 테스트 설계서 |