[EIP] 정보처리기사 필수 용어집


Engineer Information Processing

📘 정보처리기사 필수 용어집

시험 5과목 핵심 용어를 간결하게 정리한 학습 노트
굵은 글씨(bold)는 시험 빈출 키워드 · 코드 서식은 약어·명령어


목차

  1. 제1과목 : 소프트웨어 설계
  2. 제2과목 : 소프트웨어 개발
  3. 제3과목 : 데이터베이스 구축
  4. 제4과목 : 프로그래밍 언어 활용
  5. 제5과목 : 정보시스템 구축 관리

제1과목 : 소프트웨어 설계

01 요구사항 확인

소프트웨어 생명 주기 모델

모델핵심 특징
폭포수 모델 (Waterfall)이전 단계로 돌아갈 수 없음. 단계별 철저한 검토 후 진행
프로토타입 모델 (Prototype)견본품(프로토타입)을 먼저 제작해 요구사항 파악
나선형 모델 (Spiral)점진적·반복적 개발. 위험 분석 포함
애자일 모델 (Agile)일정 주기(스프린트)를 반복. 변화에 유연
XP 기법 (eXtreme Programming)고객 참여 + 반복 개발. 핵심 가치: 의사소통·단순성·용기·존중·피드백

요구사항 개발 프로세스

요구사항 도출 → 요구사항 분석 → 요구사항 명세 → 요구사항 확인
단계설명
도출사용자와 의견 교환으로 요구사항 수집 (설문·인터뷰·브레인스토밍·유스케이스 등)
분석타당성 조사 및 불명확한 부분 제거. DFD·DD 도구 활용
명세분석 결과를 모델로 작성·문서화
확인명세서가 정확·완전하게 작성되었는지 검토

구조적 분석 도구

  • DFD (자료 흐름도) — 자료 흐름과 기능을 도형으로 표현
  • DD (자료 사전) — DFD의 자료를 상세히 기록. “데이터의 데이터” = 메타 데이터
  • HIPO — 입력·처리·출력 과정을 계층 구조로 표현
    • 가시적 도표 → 전체 흐름 파악
    • 총체적 도표 → 입·처·출 전반 정보
    • 세부적 도표 → 기능 구성 요소 상세 기술

UML 주요 다이어그램

다이어그램용도
유스케이스 다이어그램사용자 요구사항 분석, 기능 모델링
시퀀스 다이어그램시간 흐름에 따른 객체 간 메시지 교환 표현

02 화면 설계

UI 설계 도구 비교

도구특징
와이어프레임초기 레이아웃 틀 설계. 가장 단순
스토리보드와이어프레임 + 흐름 설명. 디자이너·개발자 최종 지침서
목업실제 화면과 유사한 정적 모형
프로토타입인터랙션 적용, 실제처럼 테스트 가능한 동적 모형
유스케이스사용자 목표 달성을 위한 수행 내용 기술

💡 정적 vs 동적: 목업(정적) vs 프로토타입(동적)


소프트웨어 품질 요구사항 (ISO/IEC)

항목핵심 한 줄 요약
기능성 (Functionality)요구 기능을 정확히 제공하는가
신뢰성 (Reliability)오류 없이 일관되게 수행하는가
사용성 (Usability)사용자가 쉽게 이해하고 다시 쓰고 싶은가
효율성 (Efficiency)한정 자원 내에서 얼마나 빠른가
유지 보수성 (Maintainability)변경·확장이 얼마나 용이한가
이식성 (Portability)다른 환경에서도 쉽게 적용되는가

프로토타입 종류

  • 페이퍼 프로토타입 — 손으로 직접 스케치 (아날로그)
  • 디지털 프로토타입 — 파워포인트·아크로뱃 등 소프트웨어 활용

03 애플리케이션 설계

객체지향(OO) 핵심 개념

용어한 줄 정의
객체 (Object)데이터 + 처리 함수를 묶은 소프트웨어 모듈
클래스 (Class)객체를 추상화한 단위
인스턴스 (Instance)클래스로부터 생성된 각각의 객체
메소드 (Method)객체를 사용하는 방법
메시지 (Message)객체 간 상호작용 수단
속성 (Property)클래스 내 객체가 가진 데이터 값

객체지향 4대 기법

기법설명
캡슐화관련 데이터와 함수를 한 묶음으로 처리
상속성상위 클래스의 속성·메소드를 하위 클래스가 그대로 사용
다형성같은 메시지에 객체마다 고유하게 응답 (오버로딩·오버라이딩)
추상화포괄적 개념 먼저 설계 후 세분화
정보 은닉모듈 내부 정보를 외부에서 접근·변경 불가

럼바우(Rumbaugh) 객체지향 분석 3단계

객체 모델링 → 동적 모델링 → 기능 모델링
  • 객체 모델링 — 객체 다이어그램으로 속성·관계 표현 (= 정보 모델링)
  • 동적 모델링 — 상태 다이어그램으로 시간에 따른 행위 표현
  • 기능 모델링DFD로 프로세스 간 자료 흐름 표현

결합도 (낮을수록 품질 ↑)

자료 결합도 < 스탬프 < 제어 < 외부 < 공유 < 내용 결합도
(약함 ←————————————————→ 강함)
유형설명
자료 결합도 (Data)인터페이스가 자료 요소로만 구성 → 가장 약함(좋음)
공유 결합도 (Common)공통 데이터 영역을 여러 모듈이 공유
내용 결합도 (Content)다른 모듈 내부를 직접 참조·수정 → 가장 강함(나쁨)

응집도 (높을수록 품질 ↑)

기능적 > 순차적 > 교환적 > 절차적 > 시간적 > 논리적 > 우연적
(강함 ←————————————————→ 약함)
유형설명
기능적 응집도 (Functional)모든 기능 요소가 단일 문제와 연관 → 가장 강함(좋음)
절차적 응집도 (Procedural)구성 요소들이 순차적으로 기능 수행
우연적 응집도 (Coincidental)서로 무관한 요소로만 구성 → 가장 약함(나쁨)

04 인터페이스 설계

미들웨어(Middleware) 종류

종류설명
DB클라이언트 ↔ 원격 데이터베이스 연결
RPC원격 프로시저를 로컬처럼 호출
MOM비동기 방식 메시지 기반 통신
TP-Monitor항공·철도 예약 등 온라인 트랜잭션 처리·감시

제2과목 : 소프트웨어 개발

01 자료 구조

선형 자료 구조

구조특징
배열 (Array)연속된 공간, 인덱스로 접근
스택 (Stack)한쪽에서만 삽입·삭제. 후입선출(LIFO)
(Queue)한쪽 삽입, 반대쪽 삭제. 선입선출(FIFO)
데크 (Deque)양쪽에서 삽입·삭제 모두 가능

비선형 자료 구조

  • 그래프 — vertex(정점) + edge(간선)으로 구성
  • 트리 — 회로 없이 두 노드를 잇는 길이 하나뿐인 그래프

정렬 알고리즘 요약

정렬방식
삽입 정렬새 데이터를 정렬된 데이터 사이 적절한 위치에 삽입
선택 정렬가장 작은 값을 찾아 앞과 교환
버블 정렬인접한 두 값 비교 후 큰 값을 뒤로 이동
퀵 정렬기준키(pivot) 기준으로 작은 값/큰 값으로 분리
힙 정렬이진 트리 구조로 정렬
합병 정렬정렬된 데이터들을 합쳐 하나로 만듦
셸 정렬삽입 정렬을 부분 파일에 반복 적용
기수 정렬자릿수별로 반복 정렬

02 데이터베이스 기초

용어설명
DBMS사용자와 DB 사이에서 정보를 생성·관리하는 소프트웨어
스키마DB에 저장되는 데이터 구조와 제약조건 정의
외부 스키마사용자·응용 프로그래머 관점의 논리적 구조
개념 스키마객체·구조·제약을 추상적으로 정의
내부 스키마물리적 저장 장치 관점의 전체 DB 명세

03 애플리케이션 테스트 관리

테스트 분류

구분설명
정적 테스트코드를 실행하지 않고 명세·코드를 검토해 결함 발견
동적 테스트실제 프로그램을 실행해 오류 탐지
화이트 박스 테스트내부 소스 코드를 직접 테스트
블랙 박스 테스트내부를 보지 않고 입·출력값으로 유효성 판단

블랙 박스 테스트 기법

  • 경계값 분석 — 경계 값과 그 인접 양쪽 값을 이용해 테스트
  • 등가 분할 — 입·출력 값을 그룹으로 분류, 그룹 내 값은 동일하게 취급

테스트 레벨

단위 테스트 → 통합 테스트 → 시스템 테스트 → 인수 테스트
레벨설명
단위 테스트각 모듈이 명세대로 구현되었는지 확인
통합 테스트모듈 통합 시 발생하는 오류 탐지
시스템 테스트전체 시스템 정상 작동 확인
인수 테스트요구 사항에 맞는지 최종 확인
  • 하향식 통합: 상위 → 하위 모듈 순으로 통합
  • 상향식 통합: 하위 → 상위 모듈 순으로 통합

04 인터페이스 구현 (EAI 구축 유형)

유형설명
Point to Point애플리케이션 1:1 연결 (가장 기본)
Hub & Spoke단일 허브를 통한 중앙 집중형 전송
Message Bus애플리케이션 사이에 미들웨어를 두어 처리
HybridHub & Spoke + Message Bus 혼합
  • ESB (Enterprise Service Bus) — 연계·데이터 변환·웹 서비스 표준 기반 솔루션

제3과목 : 데이터베이스 구축

01 SQL 기초

SQL 언어 분류

분류명령어설명
DDL (데이터 정의어)CREATE ALTER DROPDB 구성 요소 정의·변경·삭제
DML (데이터 조작어)INSERT UPDATE DELETE SELECT데이터 삽입·수정·삭제·조회
DCL (데이터 제어어)GRANT REVOKE COMMIT ROLLBACK권한 부여·취소, 트랜잭션 제어

💡 COMMIT = 트랜잭션 종료·확정 / ROLLBACK = 변경 취소·되돌리기


02 데이터베이스 설계

설계 단계

요구 조건 분석 → 개념적 설계 → 논리적 설계 → 물리적 설계 → 구현

관계형 DB 주요 용어

용어정의
튜플 (Tuple)릴레이션의 각 행(Row)
속성 (Attribute)DB를 구성하는 가장 작은 논리적 단위(열)
도메인 (Domain)속성이 취할 수 있는 원자 값들의 집합

키(Key) 종류

설명
후보키유일성 + 최소성 만족
기본키 (Primary Key)각 튜플을 고유하게 식별하는 속성 (Null·중복 불가)
슈퍼키유일성 만족, 최소성은 불필요
외래키 (Foreign Key)다른 릴레이션의 기본키를 참조하는 속성
  • 유일성: 하나의 키로 하나의 튜플만 식별
  • 최소성: 꼭 필요한 속성으로만 구성

이상(Anomaly) 현상

이상설명
삽입 이상삽입 시 원치 않는 값이 함께 삽입
삭제 이상삭제 시 필요한 데이터까지 함께 손실
갱신 이상일부만 수정해 데이터 불일치 발생
  • 정규화 — 이상 현상 제거를 위해 데이터를 일정 규칙에 따라 분해
  • 반정규화 — 성능 향상을 위해 의도적으로 정규화 원칙을 위배 (통합·중복·분리)

03 트랜잭션 (ACID)

속성설명
원자성 (Atomicity)전부 실행되거나 전혀 실행되지 않아야 함 (All or Nothing)
일관성 (Consistency)완료 후에도 DB가 일관된 상태 유지
독립성 (Isolation)다른 트랜잭션의 연산이 끼어들지 못함
지속성 (Durability)완료된 결과는 영구적으로 반영

04 분산 데이터베이스 투명성

투명성설명
위치 투명성데이터의 실제 저장 위치를 몰라도 논리적 이름으로 접근
중복 투명성중복 데이터가 있어도 하나처럼 사용
병행 투명성동시 수행 트랜잭션의 결과가 항상 일관성 유지

제4과목 : 프로그래밍 언어 활용

01 C언어 핵심

변수(기억 클래스) 종류

유형특징
자동 변수블록 내에서만 유효, 블록 종료 시 소멸
정적 변수프로그램 종료까지 기억 공간 유지
외부 변수다른 파일에서 선언된 변수·함수 참조
레지스터 변수CPU 레지스터에 저장, 처리 속도 향상

제어문 요약

구문특징
if / 다중 if조건에 따라 실행 분기
switch여러 분기를 간단하게 처리
goto원하는 문장으로 점프
for초기값·최종값·증가값으로 정해진 횟수 반복
while조건이 참인 동안 반복. 처음부터 거짓이면 0회
do-while조건이 거짓이어도 최소 1회 실행

프로그래밍 언어 분류

분류대표 언어
절차적C, ALGOL, COBOL, FORTRAN
객체지향JAVA, C++, Smalltalk
스크립트JavaScript, Shell Script

02 운영체제 (OS)

기억장치 관리 전략

전략설명
반입 전략보조기억장치의 데이터를 언제 주기억장치로 적재할지 결정
배치 전략새 프로그램을 주기억장치 어디에 배치할지 결정
교체 전략주기억장치가 꽉 찼을 때 어느 영역을 교체할지 결정

가상 기억장치 관련 개념

용어설명
페이징가상기억장치를 같은 크기 블록으로 분할해 관리
세그먼테이션프로그램을 다양한 크기의 논리 단위로 분할해 적재
구역성 (Locality)프로세스 실행 중 일부 페이지만 집중 참조하는 성질
워킹 셋프로세스가 자주 참조하는 페이지들의 집합
스래싱페이징이 너무 빈번해 시스템이 거의 유효한 작업을 못 하는 상태

페이지 교체 알고리즘

알고리즘설명
OPT앞으로 가장 오래 사용되지 않을 페이지 교체 (최적, 이론적)
FIFO가장 먼저 들어온 페이지를 먼저 교체

CPU 스케줄링

분류설명
비선점 스케줄링CPU를 할당받으면 완료까지 빼앗기지 않음
선점 스케줄링우선순위가 높은 프로세스가 CPU를 빼앗을 수 있음
SJF실행 시간이 가장 짧은 프로세스 먼저 처리

03 네트워크

OSI 7계층

계층이름주요 기능
7응용 계층사용자 직접 서비스 제공
6표현 계층인코딩·디코딩, 암호화, 데이터 압축
5세션 계층논리적 연결 확립·관리
4전송 계층투명한 데이터 전송, 신뢰성 보장
3네트워크 계층경로 선택, 흐름·오류 제어
2데이터 링크 계층오류 검출·수정
1물리 계층비트 스트림 전송, 전기·기계적 규정

💡 암기 팁: “물데네전세표응”


주요 네트워크 장비

장비기능
허브 (Hub)유선으로 여러 컴퓨터를 연결하는 단순 장비
브리지 (Bridge)두 LAN을 서로 연결
라우터 (Router)LAN↔LAN 또는 LAN↔WAN 연결, 최적 경로 결정
게이트웨이 (Gateway)서로 다른 네트워크 프로토콜 간 변환·연결

IPv6

  • IPv4 이후의 차세대 IP 주소 체계
  • 16비트 × 8부분 = 총 128비트
  • 주소 유형: 유니캐스트(1:1) · 멀티캐스트(1:다) · 애니캐스트(가장 가까운 노드로)

제5과목 : 정보시스템 구축 관리

01 소프트웨어 개발 방법론

비용 산정 기법

기법설명
하향식전문가 경험·회의 기반 (전문가 감정, 델파이 기법)
상향식세부 작업 단위별로 산정 후 합산 (LOC, Effort Per Task)
수학적경험적 공식 사용 (COCOMO, Putnam)
  • COCOMO — 추정 LOC + 경험 상수로 개발 노력·기간 계산
  • LOC — 비관치·낙관치·기대치로 예측치 산출

프로젝트 일정 관리

기법특징
CPM (임계 경로법)시간 + 비용 모두 고려. 임계 경로 도출
PERT시간만 고려. 작업 간 상호관계 네트워크로 표현

02 IT 신기술 용어

용어설명
IoT (사물인터넷)사물에 센서 부착, 실시간으로 인터넷 데이터 교환
M2M사물 간 센싱·제어·정보교환 기술
클라우드 컴퓨팅인터넷 서버를 통해 IT 서비스를 한 번에 이용
빅데이터방대한 규모, 짧은 생성 주기의 대규모 데이터
하둡 (Hadoop)대용량 데이터 분산 처리 공개 소스 프레임워크
딥러닝많은 데이터를 분류·학습해 관계를 파악하는 AI 기술
블록체인분산형 데이터 저장으로 위·변조 방지 기술
디지털 트윈현실 사물을 가상세계에 구현해 모의시험
RAID소용량 디스크 여러 대를 배열로 묶어 대용량·가용성 확보
OLAP대용량 데이터를 다양한 관점에서 분석하는 BI 기술
데이터 마이닝대량 데이터에서 유용한 상관관계를 발견해 의사결정 지원

03 시스템 보안

주요 해킹 공격 유형

공격설명
DoS (서비스 거부)대량 접속 신호로 서버 마비
DDoS (분산 서비스 거부)다수의 좀비 PC로 DoS 공격
스머핑 (Smurfing)초당 엄청난 접속 신호를 집중 전송해 서버 마비
키 로거 공격키보드 입력을 탐지해 ID·패스워드 탈취
백 도어몰래 설치된 비인가 접근 통신 연결 기능
랜섬웨어중요 파일 접근 차단 후 금품 요구 악성 프로그램
트로이 목마정상 프로그램으로 위장한 자료 삭제·정보 탈취 악성 코드

보안 솔루션

솔루션설명
방화벽 (Firewall)외부에서 내부 네트워크로의 불법 접근 차단
VPN인터넷망을 전용선처럼 암호화해 사용
NAC보안 정책에 부합하는 단말기에만 네트워크 접근 허용

📝 학습 팁

  • 결합도는 낮을수록 좋고, 응집도는 높을수록 좋다
  • 트랜잭션 특성 ACID 는 반드시 암기
  • OSI 7계층 순서와 각 계층의 역할 구분 필수
  • SQL DDL·DML·DCL 명령어 분류 자주 출제






© 2017. by isme2n

Powered by aiden