코딩일기/정보처리

[정보처리기사] 팬 인(Fan-in)과 팬 아웃(Fan-out) | 정보처리기사 실기 기출문제

jhy_2023 2025. 9. 1. 16:11
728x90
반응형

📌 Fan-in과 Fan-out 개념

소프트웨어 아키텍처에서 모듈 간의 관계를 나타낼 때 자주 등장하는 개념이 바로 Fan-inFan-out입니다.
이는 모듈 간 결합도를 분석하고, 설계 품질을 평가하는 중요한 지표입니다.

1️⃣ Fan-in (팬인)

  • 정의: 어떤 모듈을 호출(참조)하는 상위 모듈의 개수
  • 쉽게 말해, 해당 모듈을 사용하는 모듈이 몇 개인가를 나타냅니다.
  • Fan-in이 높은 경우
    • 재사용성이 높다고 볼 수 있음
    • 하지만 너무 많으면 결합도가 높아져 변경 시 영향을 크게 받음

2️⃣ Fan-out (팬아웃)

  • 정의: 특정 모듈이 호출(참조)하는 하위 모듈의 개수
  • 즉, 해당 모듈이 몇 개의 다른 모듈을 호출하는가를 나타냅니다.
  • Fan-out이 높은 경우
    • 많은 모듈에 의존 → 복잡도가 증가
    • 유지보수 시 리스크가 커짐
반응형

✅ 정리

  • Fan-in: 어떤 모듈을 호출하는 상위 모듈의 수
  • Fan-out: 특정 모듈이 호출하는 하위 모듈의 수
  • 기출문제에서는 다이어그램을 보고 화살표가 들어오는 방향을 체크하면 쉽게 풀 수 있음
    fan-in = 들어오는 화살표 / fan-out = 나가는 화살표

728x90

2020년 1회 정보처리기사 실기 기출문제

문제

아래 다이어그램은 모듈 간 의존(호출) 관계를 나타낸 것이다.
이때 fan-in(해당 모듈을 호출하는 상위 모듈의 수)  2 이상인 모듈의 명칭을 모두 쓰시오.

정답

F,H

해설

1) 개념 정리

  • Fan-in: 어떤 모듈을 호출하는 상위 모듈의 개수
    (→ 화살표가 들어오는 개수를 센다)
  • Fan-out: 어떤 모듈이 호출하는 하위 모듈의 개수
    (→ 화살표가 나가는 개수를 센다)

본 문제는 fan-in ≥ 2 인 모듈을 찾는 문제이므로, 각 모듈 기준 들어오는 화살표만 세면 된다.

2) 다이어그램에서 fan-in 세기

  • A: 들어오는 화살표 0 → fan-in = 0
  • B: A → B (1) → fan-in = 1
  • C: A → C (1) → fan-in = 1
  • D: A → D (1) → fan-in = 1
  • E: B → E (1) → fan-in = 1
  • F: B → F, C → F (2) → fan-in = 2
  • G: C → G (1) → fan-in = 1
  • H: E → H, F → H (2) → fan-in = 2
  • I: G → I (1) → fan-in = 1
  • J: D → J (1) → fan-in = 1

따라서 fan-in이 2 이상인 모듈은 F, H가 된다.


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

728x90
반응형