응집도 7단계와 결합도 6단계는 이름과 순서가 곧 답이다. UML 은 다이어그램 14개와 관계 6개의 짝이다
왜 이걸 하나 — SW공학 묶음 37문항 중 9문항이 이 장이고, 11회 중 8회에 나왔다. 2회에서 1~2문항 샌 묶음의 첫 장이다.
11회분 220문항 중 이 장의 기출은 9문항이다. 2024년 2회에는 2문항(순차적 응집도 · 제어 결합도)이 나왔고, 2026년에는 두 회 연속(응집도 3칸 · 내용 결합도)이다. 예상 모의는 없고 훈련 5문항이 빈자리를 메운다.
| 꼴 | 몇 문항 | 무엇을 적나 | 보기 |
|---|---|---|---|
| 설명 → 응집도 · 결합도 이름 | 5 | 순차적 응집도 · 제어 결합도 · 내용 결합도, 3칸 매칭 | 2024-2회 6번 · 18번 · 2025-1회 12번 · 2026-1회 20번 · 2026-2회 2번 |
| 순서 나열 | 1 | 응집도를 높은 것부터 | 2024-1회 3번 |
| UML 다이어그램 이름 | 2 | 패키지 다이어그램 | 2023-3회 6번 · 2025-3회 1번 |
| UML 관계 매칭 | 1 | 연관 · 일반화 · 의존 | 2024-3회 15번 |
→ 응집도 · 결합도가 6문항, UML 이 3문항이다. 패키지 다이어그램은 같은 문장으로 두 번 나왔고, 결합도는 2024년 2회 · 2025년 1회 · 2026년 2회 세 번 나왔다. 이 장은 이름 13개(응집도 7 + 결합도 6)와 UML 짝 20개를 한 벌로 묶는다.
E01 진단의 SW공학 4문항 중 결합도 1문항(2번)이 이 장이었다. 「1~2문제 틀린 것 같다」고 한 묶음이라 05절에서 헷갈리는 짝(논리적 vs 절차적, 스탬프 vs 자료, 집합 vs 합성)을 따로 갈라 둔다.
문항 수는 이 노트의 문제 데이터에서 ch=E15 인 것을 센 값이다(2026-09-14). 2025-1회 12번은 이전 자료가 기호 매칭 요약만 남겨 grandlife.co.kr 복원(내용 · 스탬프 · 공통)으로 채웠다.
왜 이걸 하나 — 시험 전날 단계 이름 13개를 순서대로 백지에 적어 본다.
왜 이걸 하나 — 이름 13개를 외우는 것이 아니라 무엇을 기준으로 등급이 매겨지는지 알면 설명이 낯설어도 자리를 찾는다.
응집도는 한 모듈 안의 것들이 왜 한 모듈에 모여 있느냐의 이유가 얼마나 그럴듯한가다. 이유가 없으면 우연적, 「비슷해 보여서」면 논리적, 「같은 때 돌아서」면 시간적, 「순서가 있어서」면 절차적, 「같은 데이터를 다뤄서」면 교환적, 「앞의 출력이 뒤의 입력이라서」면 순차적, 「한 가지 일을 위해서」면 기능적이다.
위로 갈수록 이유가 강해진다. 2026년 1회 20번의 세 칸이 이 사다리의 위쪽 셋을 설명으로 물었다 — 「순서에 따라 차례대로」는 절차적, 「동일한 입출력 데이터」는 교환적, 「단일 기능」은 기능적. 2024년 2회 6번의 「한 활동의 출력이 다음 활동의 입력」은 순차적이다.
절차적과 순차적이 가장 많이 섞인다. 둘 다 순서가 있지만 데이터가 앞에서 뒤로 넘어가느냐가 다르다. 넘어가면 순차적, 순서만 있고 데이터는 따로면 절차적. 2024년 1회 3번의 순서 나열은 이 사다리를 그대로 적는 문제였다.
결합도는 두 모듈이 무엇을 매개로 얽혀 있느냐다. 필요한 값만 인자로 넘기면 자료, 배열 · 구조체를 통째로 넘기면 스탬프, 상대의 동작을 고르는 플래그를 넘기면 제어, 파일 형식 · 프로토콜 같은 외부 규격을 함께 알면 외부, 전역 변수를 같이 쓰면 공통, 상대의 내부 변수 · 코드를 직접 건드리면 내용이다.
아래로 갈수록 한쪽을 고치면 다른 쪽이 깨진다. 2026년 2회 2번은 「다른 모듈의 내부 데이터나 제어 흐름을 직접 참조하거나 수정」이라 내용 결합도이고, 2024년 2회 18번의 「플래그 · 스위치 등 제어 요소 전달」은 제어 결합도, 2025년 1회 12번의 「자료구조 전체를 전달」은 스탬프 결합도다.
자료와 스탬프가 가장 많이 섞인다. 둘 다 인자로 넘기지만 필요한 값만 넘기느냐 덩어리째 넘기느냐가 다르다. 값 하나면 자료, 구조체 · 객체째면 스탬프. 「보기에서 기호로」 답하라고 하면 이름이 아니라 기호(ㅁ)를 적는다.
UML 다이어그램 14개는 둘로 나뉜다. 구조(정적) 다이어그램은 시스템에 무엇이 있고 어떻게 연결됐나를 그리고, 행위(동적) 다이어그램은 시간에 따라 무엇이 일어나나를 그린다. 클래스 · 객체 · 컴포넌트 · 배치 · 복합 구조 · 패키지가 앞이고, 유스케이스 · 시퀀스 · 커뮤니케이션 · 상태 · 활동 · 타이밍 · 상호작용 개요가 뒤다.
패키지 다이어그램은 「모델 요소들을 관련된 것끼리 그룹화」가 정의 그대로다(2023년 3회 6번 · 2025년 3회 1번). 배치 다이어그램은 하드웨어 노드에 무엇이 놓이나, 컴포넌트 다이어그램은 실행 단위의 의존, 시퀀스는 객체 사이 메시지를 시간순으로, 활동은 업무 흐름을 순서도처럼, 상태는 한 객체의 상태 변화를 그린다.
관계는 선의 모양이 곧 이름이다. 실선은 연관, 실선 끝의 빈 삼각형은 일반화(상속), 점선 화살표는 의존(잠깐 쓰는 관계), 점선 끝의 빈 삼각형은 실체화(인터페이스 구현), 빈 마름모는 집합(부분이 따로 살 수 있음), 채운 마름모는 합성(부분이 전체와 같이 없어짐). 2024년 3회 15번이 앞의 셋을, 훈련 4번이 뒤의 셋을 묻는다.
유스케이스 다이어그램에는 관계가 넷 더 있다. 액터와 유스케이스를 잇는 연관, 한 유스케이스가 다른 것을 반드시 포함하는 포함(include, 점선 화살표가 포함되는 쪽으로), 조건이 맞을 때만 덧붙는 확장(extend, 점선 화살표가 확장 대상 쪽으로), 액터나 유스케이스 사이의 일반화. 「로그인을 반드시 거친다」면 포함, 「쿠폰이 있을 때만」이면 확장이다.
모듈화를 설명하는 낱말도 짝으로 나온다. 분할 정복은 큰 문제를 작은 모듈로 나눠 푸는 것, 정보 은닉은 모듈 안의 세부를 밖에서 못 보게 감추는 것, 추상화는 세부를 빼고 본질만 드러내는 것이다. 정보 은닉이 잘 되면 결합도가 내려간다 — 밖에서 내부를 못 건드리니 내용 결합도가 생길 수 없다.
모듈의 크기는 팬인 · 팬아웃으로 본다. 팬인이 높은 모듈은 여러 곳이 재사용하는 공용 부품이라 좋고, 팬아웃이 높은 모듈은 너무 많은 것을 부려 복잡하므로 줄인다. 훈련 5번이 이 둘의 정의와 방향을 묻는다.
왜 이걸 하나 — 설명에서 기준 낱말을 찾아 사다리의 자리로 옮기는 연습이다.
답을 적기 전에 설명에서 기준 낱말(플래그 · 순서 · 데이터 · 전역 · 내부)을 동그라미 치고, 사다리의 몇째 칸인지 먼저 정한 뒤 이름을 적는다. 기호를 요구하면 기호를 적는다.
유스케이스·클래스 등 모델 요소들을 관련된 것끼리 그룹화하여 표현하는 UML 다이어그램은?
다음 응집도를 높은 것부터 순서대로 나열하시오: ㄱ. 기능적 ㄴ. 교환(통신)적 ㄷ. 우연적 ㄹ. 시간적
모듈 내 한 활동의 출력이 다음 활동의 입력 데이터로 사용되는 응집도는?
다른 모듈 내부의 논리적 흐름을 제어하기 위해 플래그·스위치 등 제어 요소를 전달하는 결합도는?
UML 관계 매칭: ① 클래스가 다른 클래스를 사용하는 지속적 연결(실선) ② 상속 관계(빈 삼각형) ③ 일시적으로 사용하는 관계(점선 화살표)
다음 설명에 해당하는 결합도를 ①부터 ③까지 순서대로 쓰시오.
① 다른 모듈 내부의 변수나 기능을 직접 사용한다.
② 모듈 사이에서 배열, 객체, 구조체 같은 자료구조 전체를 전달한다.
③ 여러 모듈이 모듈 밖의 전역 변수를 함께 참조하거나 갱신한다.
모델 요소들을 관련된 것끼리 그룹화하여 표현하는 UML 다이어그램은?
응집도 3종: ① 다수의 관련 기능이 순서에 따라 차례대로 수행됨 ② 동일한 입출력 데이터를 사용하는 기능들이 모임 ③ 단일 기능만 수행
다음 설명에 해당하는 결합도를 보기에서 골라 기호로 쓰시오.
한 모듈이 다른 모듈의 내부 데이터나 내부 제어 흐름을 직접 참조하거나 수정한다. 예를 들어 다른 모듈의 내부 코드 위치로 분기하거나, 내부에 선언된 자료를 직접 사용하는 경우이다.
ㄱ. 자료 결합도
ㄴ. 스탬프 결합도
ㄷ. 제어 결합도
ㄹ. 외부 결합도
ㅁ. 내용 결합도
왜 이걸 하나 — 이 장은 이웃한 단계끼리 바꿔 적어서 깎인다.
| 자리 | 새는 꼴 | 적는 법 | 기출 |
|---|---|---|---|
| 절차적 · 순차적 | 둘을 바꾼다 | 데이터가 앞에서 뒤로 넘어가면 순차적, 순서만 있으면 절차적 | 2024-2회 6번 · 2026-1회 20번 |
| 자료 · 스탬프 | 구조체를 넘기는데 자료라 적는다 | 값 하나면 자료, 배열 · 구조체 · 객체째면 스탬프 | 2025-1회 12번 |
| 공통 · 내용 | 전역 변수 공유를 내용이라 적는다 | 전역 변수는 공통, 남의 내부 코드 · 변수를 직접 건드리면 내용 | 2025-1회 12번 · 2026-2회 2번 |
| 기호 · 이름 | 「기호로 쓰시오」에 이름을 적는다 | 보기 기호(ㅁ)를 적는다. 이름을 덧붙여도 기호가 먼저 | 2026-2회 2번 |
| 순서 방향 | 「높은 것부터」에 낮은 것부터 적는다 | 응집도 높은 것 = 기능적. 방향을 문제에서 확인 | 2024-1회 3번 |
| 교환적 표기 | 「통신적」만 적거나 「교환적」만 적는다 | 둘 다 같은 것 — 교환(통신)적 응집도로 병기하면 안전 | 2026-1회 20번 |
| UML 관계 | 의존과 연관을 바꾼다 | 점선이면 의존(일시적), 실선이면 연관(지속적) | 2024-3회 15번 |
세 칸짜리 매칭은 소문항마다 점수가 있다. 한 칸이 헷갈리면 사다리에서 이웃한 두 칸 중 기준 낱말에 더 가까운 쪽을 적고 비우지 않는다.
왜 이걸 하나 — 기출에 아직 안 나온 칸이다. 결합도 순서, 응집도 아래쪽 셋, UML 분류, 관계 나머지 셋, 팬인/팬아웃.
5문항 전부 정의로 대조한 용어라 계산이 없다. 응집도 · 결합도 사다리의 13칸 중 기출이 안 건드린 칸(우연적 · 논리적 · 시간적, 외부)이 여기 있다.
결합도 6종을 결합도가 낮은 것부터 높은 것 순서로 나열하시오.
공통, 내용, 자료, 제어, 스탬프, 외부
다음 설명에 해당하는 응집도를 각각 쓰시오.
① 비슷해 보이는 기능들을 하나로 모아 놓고 매개변수(플래그)로 골라 실행한다
② 특정 시점에 함께 실행돼야 하는 기능들(초기화 · 종료 처리)을 모아 놓았다
③ 순서대로 실행되지만 서로 데이터를 주고받지는 않는 기능들을 모아 놓았다
다음 UML 다이어그램을 구조(정적) 다이어그램과 행위(동적) 다이어그램으로 나누시오.
클래스, 시퀀스, 유스케이스, 컴포넌트, 활동, 배치, 상태, 패키지
UML 클래스 관계 중 다음 설명에 해당하는 것을 각각 쓰시오.
① 전체와 부분의 관계이나 부분이 전체 없이도 존재할 수 있다(빈 마름모)
② 전체와 부분의 관계이고 부분은 전체와 생명주기를 같이한다(채운 마름모)
③ 인터페이스와 그것을 구현한 클래스의 관계(점선 + 빈 삼각형)
모듈 설계에서 다음 설명에 해당하는 용어를 각각 쓰시오.
① 어떤 모듈을 호출하는 상위 모듈의 수
② 어떤 모듈이 호출하는 하위 모듈의 수
③ 좋은 설계는 이 둘 중 무엇을 높이고 무엇을 줄이는가
왜 이걸 하나 — 아래를 안 보고 적을 수 있어야 이 장이 끝난다.