[시나공] 정의형 총정리 (IPC·테스트 케이스·공통 모듈 명세·재사용·코드 체계)

2026. 3. 3. 20:39Certifications/정보처리기사 실기

1️⃣ IPC (Inter-Process Communication)

✅ 정의

  • IPC는 프로세스 간 통신을 위해 사용하는 대표적 프로그래밍 인터페이스.
  • 프로세스 간 통신/동기화 수행.

✅ IPC 대표 방식

  • 공유 메모리(Shared Memory)
  • 소켓(Socket)
  • 세마포어(Semaphores)
  • 파이프 & 네임드 파이프(Pipes & Named Pipes)
  • 메시지 큐잉(Message Queueing)

🔎 “프로세스 간 통신”→ IPC


2️⃣ 테스트 케이스(Test Case) ⭐

✅ 정의

  • 구현된 소프트웨어가 요구사항을 정확히 수행하는지 확인하기 위한 테스트 항목 명세서

✅ 구성 요소

구성 요소 의미
식별자 항목 식별자
테스트 항목을 구분하기 위한 고유 번호
테스트 항목 테스트 대상(모듈 또는 기능)
입력 명세 테스트 데이터 또는 테스트 조건
출력 명세 예상되는 출력 결과
환경 설정 테스트 환경
특수 절차 요구 테스트 수행 시 특별히 요구되는 절차
의존성 기술 테스트 케이스 간의 의존 관계

🎯 포인트

  • 빈칸 문제로 자주 등장: 입력 명세, 출력 명세

🔎 “입력/출력/예상 결과” → 테스트 케이스


3️⃣ 코드(Code)의 주요 기능

✅ 정의

  • 코드는 자료의 분류/조합/집계/추출 등을 쉽게 하기 위해 사용하는 기호.

✅ 주요 기능

주요 기능 의미
식별 기능 데이터를 서로 구분할 수 있도록 함
분류 기능 일정 기준에 따라 데이터를 그룹화
배열 기능 의미를 부여하여 일정한 순서로 나열
표준화 기능 다양한 데이터를 일정 기준에 맞추어 표현
간소화 기능 복잡한 데이터를 간단하게 표현

4️⃣ 코드의 종류

종류 의미 예시
순차 코드
(Sequence Code)
발생 순서 또는 크기 순서에 따라 일련번호 부여 1, 2, 3, 4 …
블록 코드
(Block Code)
공통성이 있는 항목을 블록으로 구분 후
블록 내 일련번호 부여
1001~1100 총무부
1101~1200 영업부
그룹 분류 코드
(Group Classification Code)
대·중·소 분류 후 각 분류 내 일련번호 부여 1-01-001
연상 코드
(Mnemonic Code)
의미 있는 문자 또는 숫자를 사용하여 코드 부여 TV-40 (40인치 TV)
표의 숫자 코드
(Significant Digit Code)
길이·무게·부피 등 물리적 수치를 그대로 코드화 120-720-1500
합성 코드
(Combined Code)
2개 이상의 코드를 조합하여 구성 KE-711, AC-253

🎯 포인트

  • “1,2,3…” → 순차 코드
  • “부서별 1001~” → 블록 코드
  • “의미 있는 문자 TV-40” → 연상 코드
  • “물리 수치 그대로” → 표의 숫자 코드
  • “코드 조합” → 합성 코드

5️⃣ N-S 차트 (Nassi–Shneiderman Chart)

✅ 정의

  • 논리 구조에 중점을 두고 도형(박스) 으로 표현하는 구조적 설계 기법
  • GOTO를 사용하지 않는 구조적 표현 방식

✅ 특징

  • 순차, 선택, 반복의 3가지 제어 구조로 표현
  • 조건이 복잡한 처리 흐름을 시각적으로 명확하게 표현
  • 박스 다이어그램 구조

🎯 포인트

  • “GOTO 사용하지 않음” → N-S 차트
  • “논리 구조 중심 표현” → N-S 차트

6️⃣ 공통 모듈 명세 기법의 종류

  • 공통 모듈은 여러 프로그램에서 공통으로 사용되는 모듈로, 명세 시 다음 기준을 충족해야 함
명세 기준 의미
정확성
(Correctness)
해당 기능이 요구사항을 정확히 반영하도록 작성
명확성
(Clarity)
오해의 소지가 없도록 명확하게 작성
완전성
(Completeness)
필요한 모든 기능이 포함되도록 작성
일관성
(Consistency)
기능 간 상호 충돌이 발생하지 않도록 작성
추적성
(Traceability)
요구사항 출처 및 관련 시스템과의 관계를 파악할 수 있도록 작성

🎯 포인트

  • “일관되게 이해 가능” → 명확성
  • “필요한 모든 기능 기술” → 완전성
  • “요구사항 출처 추적 가능” → 추적성

7️⃣ 재사용(Reuse)

✅ 정의

  • 이미 개발된 기능을 새로운 시스템이나 기능 개발에 재사용하도록 최적화하는 작업

✅ 장점

  • 개발 비용 및 시간 절감
  • 생산성 향상
  • 품질 향상

✅ 재사용 규모에 따른 분류

🔹 함수와 객체

  • 클래스나 메서드 단위 소스 코드 재사용

🔹 컴포넌트

  • 수정 없이 인터페이스를 통해 통신하는 방식으로 재사용

🔹 애플리케이션

  • 공통 기능을 제공하는 애플리케이션 자체를 공유

🎯 포인트

  • “인터페이스 통해 수정 없이 사용” → 컴포넌트
  • “클래스/메서드 단위” → 함수와 객체
  • 재사용은 생산성·품질 향상과 연결됨

📊 시험 포인트 정리

🔥 암기형 핵심

  • 공통 모듈 명세 5원칙: 정명완일추 (정확성·명확성·완전성·일관성·추적성)
  • 코드 종류 6개: 순차 / 블록 / 그룹분류 / 연상 / 표의 숫자 / 합성
  • N-S 차트 → GOTO 사용 안 함

🔥 키워드 매칭 문제

  • “프로세스 간 통신” → IPC
  • “입력/출력/예상 결과” → 테스트 케이스
  • “인터페이스 통해 수정 없이 사용” → 컴포넌트
  • “1,2,3…” → 순차 코드
  • “의미 있는 문자” → 연상 코드
  • “물리 수치 그대로” → 표의 숫자 코드

🔥 정의형

  • IPC: 프로세스 간 통신 인터페이스
  • 테스트 케이스: 테스트 항목 명세서
  • N-S 차트: GOTO 없이 논리 구조를 박스로 표현하는 기법
  • 재사용: 기존 기능을 재활용하는 작업





2025 시나공 퀵이지 정보처리기사 실기 단기완성
(저자: 강윤석, 김용갑, 김우경, 김종일 | 출판사: 길벗)

※ 본 글은 위 교재를 참고하여 학습 목적으로 재정리한 내용입니다.