실기 공부방READ · TRACE · RECALL

정보처리 실무 · 학습 노트

요구사항·소프트웨어 설계

개발 경험을 정확한 용어에 연결하기

요구사항부터 모듈과 UML, 디자인 패턴까지 묶었다. 문제의 단서를 보고 가장 구체적인 용어로 답하는 연습을 한다.

기초부터 실전까지

처음 배우는 분의 학습 순서

기호와 용어가 낯설면 기초·상세 보강을 먼저 읽고, 기존 핵심 정리로 연결하세요. 예제의 값을 손으로 계산한 뒤 확인 질문을 답하고 마지막에 문제를 풉니다.

추가된 상세 학습 9개 펼쳐보기
이 단원 목차 18개
이번 단원 완료 기준

핵심 규칙을 설명하고, 연습문제의 답과 이유를 해설 없이 적을 수 있으면 체크하세요. 이해 체크와 정답 기록은 별도로 저장됩니다.

01

요구사항과 개발 모형

기능 요구는 무엇을 하는가, 비기능 요구는 성능·보안·신뢰성 등 어떤 수준으로 동작하는가다. 도출 → 분석 → 명세 → 확인의 흐름으로 이해한다. 폭포수는 단계 순차, 프로토타입은 시제품 피드백, 나선형은 위험 분석의 반복이다.

답을 가리고 확인

“요구사항과 개발 모형”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

애자일은 짧은 반복과 피드백. 스크럼의 제품 백로그·스프린트 백로그·스프린트·회고를 구별한다. “2초 이내 응답”은 비기능 요구. “주문을 취소한다”는 기능 요구다.

꼭 기억할 것

애자일은 짧은 반복과 피드백. 스크럼의 제품 백로그·스프린트 백로그·스프린트·회고를 구별한다.

헷갈리는 지점 “2초 이내 응답”은 비기능 요구. “주문을 취소한다”는 기능 요구다.

02

UML 관계와 다이어그램

클래스·객체·컴포넌트·배치·패키지는 구조 표현, 유스케이스·활동·상태·시퀀스는 행위 표현이다. 시퀀스는 시간 순 메시지, 상태는 이벤트에 따른 상태 전이다.

답을 가리고 확인

“UML 관계와 다이어그램”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

일반화는 상속, 실체화는 인터페이스 구현, 연관은 연결, 의존은 사용. 집합은 빈 마름모, 합성은 찬 마름모를 전체 쪽에 표시한다. 합성은 강한 소유 관계다. 화살표의 방향과 마름모가 있는 쪽을 뒤바꾸지 않는다.

꼭 기억할 것

일반화는 상속, 실체화는 인터페이스 구현, 연관은 연결, 의존은 사용. 집합은 빈 마름모, 합성은 찬 마름모를 전체 쪽에 표시한다.

헷갈리는 지점 합성은 강한 소유 관계다. 화살표의 방향과 마름모가 있는 쪽을 뒤바꾸지 않는다.

03

응집도와 결합도

응집도는 한 모듈 안의 관련성으로 높을수록 좋다. 강→약: 기능→순차→교환(통신)→절차→시간→논리→우연. 결합도는 모듈 사이 의존으로 낮을수록 좋다. 강→약: 내용→공통→외부→제어→스탬프→자료.

답을 가리고 확인

“응집도와 결합도”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

순차 응집은 앞 출력이 뒤 입력, 교환 응집은 같은 자료 사용. 스탬프 결합은 구조 전체 전달, 자료 결합은 필요한 자료 전달. 외부 결합은 외부 형식·프로토콜·장치 의존, 공통 결합은 공통 전역자료 공유, 내용 결합은 내부 구현 직접 참조·수정이다.

꼭 기억할 것

순차 응집은 앞 출력이 뒤 입력, 교환 응집은 같은 자료 사용. 스탬프 결합은 구조 전체 전달, 자료 결합은 필요한 자료 전달.

헷갈리는 지점 외부 결합은 외부 형식·프로토콜·장치 의존, 공통 결합은 공통 전역자료 공유, 내용 결합은 내부 구현 직접 참조·수정이다.

04

객체지향과 SOLID

캡슐화는 상태와 동작 묶기·접근 통제, 추상화는 핵심 모델링, 상속은 기존 특성 확장, 다형성은 같은 메시지에 다른 구현이다. SRP 단일 책임, OCP 확장에 열리고 수정에 닫힘, LSP 대체 가능, ISP 인터페이스 분리, DIP 추상에 의존.

답을 가리고 확인

“객체지향과 SOLID”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

DIP는 고수준 정책이 저수준 구현의 구체 클래스에 직접 묶이지 않도록 추상에 의존한다. 의존성 주입 DI는 DIP 구현을 도울 수 있는 기법이지 같은 용어가 아니다.

꼭 기억할 것

DIP는 고수준 정책이 저수준 구현의 구체 클래스에 직접 묶이지 않도록 추상에 의존한다.

헷갈리는 지점 의존성 주입 DI는 DIP 구현을 도울 수 있는 기법이지 같은 용어가 아니다.

05

생성 패턴 5개

Singleton은 하나의 인스턴스 접근, Factory Method는 생성할 객체 결정을 하위 구현에 위임, Abstract Factory는 관련 제품군 생성, Builder는 복잡한 객체 조립 단계 분리, Prototype은 기존 객체 복제다.

답을 가리고 확인

“생성 패턴 5개”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

“관련 객체들의 제품군” → Abstract Factory. “복잡한 생성 순서” → Builder. Singleton이 자동으로 스레드 안전을 보장하지는 않는다. Factory Method와 Abstract Factory의 초점을 구별한다.

꼭 기억할 것

“관련 객체들의 제품군” → Abstract Factory. “복잡한 생성 순서” → Builder.

헷갈리는 지점 Singleton이 자동으로 스레드 안전을 보장하지는 않는다. Factory Method와 Abstract Factory의 초점을 구별한다.

06

구조 패턴 7개

Adapter 인터페이스 변환, Bridge 추상과 구현의 독립 확장, Composite 부분-전체 트리의 동일 취급, Decorator 객체 감싸 기능 추가, Facade 복잡한 내부에 단순한 창구, Flyweight 공유로 비용 절감, Proxy 대리 접근·통제.

과정으로 이해하기

  1. 외부 API 모양을 맞춤→Adapter. 추상과 구현의 확장 축을 분리→Bridge.
  2. 객체 감싸 기능 추가→Decorator. 대리 접근·제어→Proxy.
  3. 여러 내부 기능을 단순한 창구로 노출→Facade.

답을 가리고 확인

객체에 기능을 감싸서 추가하는 구조 패턴은?

확인 답안 보기

Decorator.

꼭 기억할 것

“호환되지 않는 API 연결” Adapter / “추상·구현 계층 분리” Bridge / “대리인” Proxy.

헷갈리는 지점 Decorator는 기능 추가, Proxy는 접근·생명주기 등 대리 제어에 초점. 모양이 비슷해도 목적이 다르다.

07

행위 패턴 11개

Observer 상태 변화 알림, Strategy 교체 가능한 알고리즘, State 상태별 행동, Template Method 처리 뼈대와 세부 단계, Command 요청을 객체화, Iterator 순차 접근, Mediator 상호작용 중재, Memento 상태 보관·복원, Visitor 연산 분리, Chain of Responsibility 처리자 연결, Interpreter 문법 해석.

과정으로 이해하기

  1. 알고리즘을 교체할 수 있도록 분리→Strategy. 내부 상태에 따라 동작 변화→State.
  2. 상태 변화 통지→Observer. 요청 객체화→Command.
  3. 전체 처리 순서를 고정하고 단계 구현만 바꿈→Template Method.

답을 가리고 확인

처리자들이 요청을 순서대로 넘겨 처리 가능한 곳을 찾는 패턴은?

확인 답안 보기

Chain of Responsibility.

꼭 기억할 것

옵저버는 발행자와 구독자, 전략은 정렬·결제 방식 교체, 상태는 상태 변화에 따른 동작 변화로 떠올린다.

헷갈리는 지점 Strategy와 State를 구별할 때 “선택한 알고리즘 교체”인지 “객체 내부 상태에 따른 행동”인지 본다.

08

UI와 아키텍처

UI 원칙은 직관성·유효성·학습성·유연성으로 정리한다. 와이어프레임은 화면 뼈대, 스토리보드는 화면 흐름과 설명, 프로토타입은 동작 검증용 모형이다. MVC는 데이터·화면·입력 제어 책임을 나눈다.

답을 가리고 확인

“UI와 아키텍처”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

계층형은 책임별 층, 클라이언트-서버는 요청·서비스 분리, 파이프-필터는 처리 단계의 흐름. UI는 접점, UX는 이용 경험 전체다. 시각 디자인만으로 UX를 정의하지 않는다.

꼭 기억할 것

계층형은 책임별 층, 클라이언트-서버는 요청·서비스 분리, 파이프-필터는 처리 단계의 흐름.

헷갈리는 지점 UI는 접점, UX는 이용 경험 전체다. 시각 디자인만으로 UX를 정의하지 않는다.

09

이벤트 기반 아키텍처와 CQRS

이벤트 기반 아키텍처는 상태 변화를 이벤트로 발행하고, 관심 있는 구성요소가 이를 구독해 비동기로 반응하는 구조다. CQRS(명령과 조회의 책임 분리)는 데이터를 변경하는 명령과 데이터를 조회하는 질의의 모델을 분리해 서로 다른 최적화를 적용한다.

답을 가리고 확인

“이벤트 기반 아키텍처와 CQRS”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

이벤트 기반 구조는 발행자와 구독자를 느슨하게 결합해 확장에 유리하지만 전체 흐름 추적이 어려워질 수 있다. CQRS가 항상 별도의 데이터베이스를 요구하는 것은 아니다. 명령과 조회의 책임을 분리하는 것이 핵심이다.

꼭 기억할 것

이벤트 기반 구조는 발행자와 구독자를 느슨하게 결합해 확장에 유리하지만 전체 흐름 추적이 어려워질 수 있다.

헷갈리는 지점 CQRS가 항상 별도의 데이터베이스를 요구하는 것은 아니다. 명령과 조회의 책임을 분리하는 것이 핵심이다.

10

개발 모형·애자일·스크럼의 흐름

폭포수는 요구·설계·구현·테스트를 단계적으로 진행한다. 프로토타입은 사용자가 만져 볼 모형으로 요구를 구체화한다. 나선형은 계획→위험 분석→개발→고객 평가의 반복으로 위험을 줄인다. V 모형은 개발 단계와 대응 검증 단계를 연결한다.

애자일은 짧은 반복과 피드백을 중시한다. 스크럼의 제품 백로그는 전체 제품 작업, 스프린트 백로그는 이번 스프린트의 선택 작업·계획이다. 스프린트 리뷰는 결과물·향후 방향 점검, 회고는 팀의 일하는 방법 개선이다.

개발 모형·애자일·스크럼의 흐름 · 한눈에 비교
V 모형 개발 단계대응 테스트
요구 분석인수 테스트
시스템 설계시스템 테스트
아키텍처 설계통합 테스트
모듈 설계단위 테스트

답을 가리고 확인

팀의 협업 방식 개선을 논의하는 스크럼 행사는?

확인 답안 보기

스프린트 회고.

꼭 기억할 것

나선형의 핵심 단서 위험 분석. 리뷰는 제품, 회고는 작업 과정.

헷갈리는 지점 애자일을 계획·문서가 전혀 없는 개발이라고 쓰지 않는다.

11

요구 도출·명세·검증·추적성

도출은 인터뷰·설문·관찰·워크숍 등으로 요구를 찾는다. 분석은 모호함·충돌·우선순위를 정리하고 모델을 만든다. 명세는 요구를 문서화하며 확인은 요구가 정확하고 일관되고 검증 가능한지 살핀다.

좋은 요구는 무엇을 측정하는지 명확하다. “빠르게 응답”보다 “동시 사용자 100명에서 95% 요청이 2초 이내 응답”이 검증하기 쉽다. 추적성 매트릭스는 요구를 설계·구현·테스트와 연결해 변경 영향을 확인한다.

과정으로 이해하기

  1. 회원은 주문을 취소할 수 있다 → 기능.
  2. 취소 요청은 2초 이내 처리한다 → 성능 비기능.
  3. 요구 R1을 테스트 T3에 연결 → 추적성.

답을 가리고 확인

요구사항 변경이 어떤 테스트에 영향을 주는지 찾는 도구는?

확인 답안 보기

요구사항 추적성 매트릭스.

꼭 기억할 것

기능 요구: 수행할 기능 / 비기능 요구: 품질·제약·성능 수준.

헷갈리는 지점 기술·법적·운영 제약도 요구다. 화면 버튼에 대한 표현이라고 전부 UI 미관 요구인 것은 아니다.

12

UML 관계를 화살표와 수명으로 구별

연관은 객체 사이의 지속적인 연결, 의존은 한 요소의 변화가 다른 요소에 영향을 주는 사용 관계다. 일반화는 is-a 상속, 실체화는 인터페이스 계약의 구현이다. 집합은 느슨한 전체-부분, 합성은 전체가 부분의 수명을 강하게 소유하는 관계다.

일반화는 실선·빈 삼각형이 부모를 향하고 실체화는 점선·빈 삼각형이 계약을 향한다. 집합의 빈 마름모와 합성의 채운 마름모는 전체 쪽에 표시한다. 관계 이름은 다이어그램 표기와 문제의 소유·수명 단서를 함께 본다.

UML 관계를 화살표와 수명으로 구별 · 한눈에 비교
관계예표기 단서
일반화고양이는 동물실선+빈 삼각형
실체화클래스가 인터페이스 구현점선+빈 삼각형
의존메서드 인자로 잠시 사용점선 화살표
집합독립 수명 팀과 선수빈 마름모
합성전체가 부분 수명 소유채운 마름모

답을 가리고 확인

인터페이스를 구현하는 UML 관계는?

확인 답안 보기

실체화(Realization).

꼭 기억할 것

빈 마름모 집합 / 채운 마름모 합성 / 빈 삼각형 일반화·실체화.

헷갈리는 지점 마름모를 부분 쪽에 그리지 않는다. 전체 쪽이다.

13

UML 다이어그램의 질문 단서

구조 다이어그램은 구성의 정적 모습을, 행위 다이어그램은 시간·흐름·상호작용을 표현한다. 클래스는 타입·필드·메서드, 객체는 특정 시점 인스턴스, 패키지는 그룹과 의존, 컴포넌트는 구성 요소, 배치는 실행 노드와 배포를 나타낸다.

유스케이스는 액터와 시스템 기능, 시퀀스는 시간 순서의 메시지, 커뮤니케이션은 객체 연결과 메시지, 활동은 처리 흐름, 상태는 상태와 전이 조건을 나타낸다. “시간 순 메시지”와 “업무 처리 흐름”을 구별하면 시퀀스·활동을 혼동하지 않는다.

과정으로 이해하기

  1. ATM의 사용자와 입금·출금 기능 → 유스케이스.
  2. 브라우저→서버→DB의 요청 순서 → 시퀀스.
  3. 결제 대기→승인→취소 상태 → 상태 다이어그램.

답을 가리고 확인

서버 노드에 실행 파일을 배포하는 모습을 표현하는 것은?

확인 답안 보기

배치(Deployment) 다이어그램.

꼭 기억할 것

구조: 클래스·객체·패키지·컴포넌트·배치·복합 구조. 행위: 유스케이스·활동·상태·상호작용.

헷갈리는 지점 패키지 다이어그램과 실제 장비 배치 다이어그램은 다른 것이다.

14

응집도·결합도를 사례로 판단

응집도는 한 모듈 내부 기능들이 한 목적에 얼마나 모이는지다. 결합도는 모듈들이 서로 얼마나 의존하는지다. 유지보수에는 높은 응집도·낮은 결합도가 유리하다.

기능 응집은 한 기능, 순차 응집은 앞 출력이 뒤 입력, 통신 응집은 같은 데이터, 절차 응집은 실행 순서, 시간 응집은 같은 시점, 논리 응집은 비슷한 종류, 우연 응집은 관련 없는 기능의 모음이다. 결합은 단순 자료 전달보다 제어 플래그·공유 전역·다른 모듈 내부 접근일수록 강하다.

응집도·결합도를 사례로 판단 · 한눈에 비교
사례판정
앞 단계 결과를 뒤 단계 입력으로 사용순차 응집
같은 고객 파일을 읽는 여러 처리통신 응집
플래그로 상대 모듈 처리 분기 지시제어 결합
필요한 정수 하나만 인자로 전달자료 결합
서로 전역 변수를 공유공통 결합
다른 모듈 내부 자료·코드에 직접 접근내용 결합

답을 가리고 확인

구조체 전체를 넘기지만 일부 필드만 쓰는 결합은?

확인 답안 보기

스탬프(자료 구조) 결합.

꼭 기억할 것

응집 약→강: 우연·논리·시간·절차·통신·순차·기능. 결합 약→강: 자료·스탬프·제어·외부·공통·내용.

헷갈리는 지점 교재별 외부 결합 위치 표현은 다를 수 있다. 가장 강한 내용과 가장 약한 자료를 확실히 구별한다.

15

SOLID를 위반 사례로 이해

SRP는 클래스가 변경되는 이유를 한 책임으로 모으는 원칙이다. OCP는 기존 안정 코드를 계속 수정하기보다 확장으로 새로운 동작을 넣도록 설계한다. LSP는 자식이 부모 계약을 지켜 대신 사용되어도 동작이 깨지지 않아야 한다.

ISP는 클라이언트가 쓰지 않는 메서드에 의존하지 않도록 인터페이스를 나누고 DIP는 고수준 정책과 저수준 구현이 구체 구현보다 추상에 의존하게 한다. 의존성 주입 DI는 필요한 의존 객체를 밖에서 제공하는 기법이다.

과정으로 이해하기

  1. 메일 전송과 급여 계산을 한 클래스에 섞음 → SRP 문제.
  2. 새 결제수단을 추가할 때 기존 분기문 수정이 누적 → OCP 관점 점검.
  3. 프린터가 스캔을 지원하지 않는데 스캔 메서드를 강제 → ISP 관점 점검.

답을 가리고 확인

부모 대신 자식을 넣어도 계약이 유지되어야 한다는 원칙은?

확인 답안 보기

LSP(리스코프 치환 원칙).

꼭 기억할 것

단일 책임·개방 폐쇄·리스코프 치환·인터페이스 분리·의존 역전.

헷갈리는 지점 DIP와 DI는 같은 약어가 아니다. DIP는 설계 원칙, DI는 구현 기법.

16

디자인 패턴을 상황으로 연결하기

생성 패턴은 객체를 어떻게 만들지, 구조 패턴은 객체들을 어떻게 연결할지, 행위 패턴은 책임과 상호작용을 어떻게 나눌지 다룬다. 이름 하나만 외우기보다 변경하려는 축을 찾는다.

Adapter는 기존 API를 목표 인터페이스로 바꾼다. Bridge는 추상과 구현을 별도 계층으로 나눠 독립 확장한다. Observer는 상태 변화 통지를 구독자에게 전파하고 Strategy는 교체할 알고리즘을 외부 객체로 분리한다. State는 내부 상태에 따른 행동을 별도 상태 객체로 표현한다.

디자인 패턴을 상황으로 연결하기 · 한눈에 비교
상황패턴분류
테마별 버튼·체크박스 제품군 생성Abstract Factory생성
필수·선택 옵션을 단계별 조립Builder생성
기존 외부 결제 API를 우리 인터페이스에 연결Adapter구조
리모컨 종류와 기기 종류를 독립 확장Bridge구조
파일·폴더를 동일 연산으로 처리Composite구조
주가 변경을 구독 화면들에 알림Observer행위
할인 계산 방법을 교체Strategy행위
편집기 실행 취소용 상태 보관Memento행위
전체 알고리즘 뼈대 고정, 일부 단계 재정의Template Method행위

답을 가리고 확인

요청을 객체로 만들어 실행·예약·취소를 관리하는 패턴은?

확인 답안 보기

Command.

꼭 기억할 것

패턴 선택은 구현 모양보다 해결하려는 목적을 본다.

헷갈리는 지점 Factory Method는 생성 결정의 위임, Abstract Factory는 관련 제품군 생성이다.

17

MVC·계층·UI 설계와 서버 책임

MVC의 Model은 데이터·업무 규칙, View는 표시, Controller는 입력을 받아 흐름을 조정한다. 계층형은 화면·업무·데이터 접근처럼 책임을 층으로 나눈다. 파이프-필터는 독립 처리 단계를 연결하고 브로커는 중개자를 통해 분산 구성 요소를 연결한다.

UI 설계에서 와이어프레임은 배치 뼈대, 목업은 시각 형태, 프로토타입은 상호작용 검증, 스토리보드는 화면·이동·동작 설명이다. 서버에서 DTO는 계층 사이 전달 자료, DAO는 데이터 접근, 서비스는 업무 규칙을 담당하는 관용적 구분이다.

과정으로 이해하기

  1. 주문 요청을 Controller가 받고 Service가 재고·결제를 판단, DAO가 저장소에 접근.
  2. View는 결과를 표시하고 업무 규칙을 화면마다 중복 구현하지 않는다.

답을 가리고 확인

화면 흐름·입력·예외 처리 설명까지 적는 UI 문서는?

확인 답안 보기

스토리보드.

꼭 기억할 것

UI 원칙 직관성·유효성·학습성·유연성. 책임 분리는 변경 영향을 줄인다.

헷갈리는 지점 DTO가 데이터베이스 테이블 그 자체인 것은 아니다. 명칭은 프레임워크·설계마다 다를 수 있다.

18

스크럼 리뷰·회고와 책임 구별

스프린트 리뷰는 결과와 목표 진척을 이해관계자와 살펴보고 다음 적응을 논의한다. 회고는 팀의 협업·과정·도구를 돌아보고 효과와 품질을 높이는 개선을 계획한다. Product Owner는 가치 극대화와 Product Backlog의 효과적인 관리에 책임이 있다.

답을 가리고 확인

협업 방식과 도구를 돌아보고 다음 스프린트의 개선을 정하는 이벤트는?

확인 답안 보기

Sprint Retrospective(스프린트 회고).

2026.10.14 재확인: Scrum Guide 공식 가이드

꼭 기억할 것

리뷰는 제품 결과와 적응, 회고는 팀의 작업 방식 개선.

헷갈리는 지점 Daily Scrum을 관리자의 업무 보고 시간으로 정의하지 않는다. Sprint Review를 단순 승인 게이트로 외우지 않는다.

직접 풀어보기 17문제

모두 유형 연습을 위해 직접 만든 문제입니다. C 예제의 printf·strlen은 필요한 표준 헤더가 포함된 상황을 가정합니다. Java는 표시된 클래스·main 위치에서 실행합니다. 단답은 동의어가 있을 수 있어 자동 판정 대신 자기 채점을 사용합니다.

요구사항·소프트웨어 설계 · 기본 · 창작 01미풀이

비기능 요구

“동시 사용자 1,000명일 때 응답시간 2초 이하”는 기능/비기능 중 무엇인가?

정답과 풀이 확인

정답 비기능 요구사항

제공 기능 자체가 아니라 성능의 수준을 제한한다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 02미풀이

제품군 생성

서로 호환되는 Button·Menu·Dialog 제품군을 테마별로 생성하는 패턴은?

정답과 풀이 확인

정답 Abstract Factory

관련 제품군을 일관된 방식으로 만드는 추상 팩토리다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 03미풀이

구독 알림

주문 상태가 바뀌면 등록된 화면·메일 모듈에 알리는 패턴은?

정답과 풀이 확인

정답 Observer

상태 변화에 의존 객체들을 통지하는 옵저버 패턴이다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 04미풀이

인터페이스 변환

외부 결제 모듈의 다른 메서드 형태를 내부 Payment 인터페이스에 맞추는 패턴은?

정답과 풀이 확인

정답 Adapter

기존 인터페이스를 기대하는 형태로 변환한다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 05미풀이

결합도

다른 모듈의 내부 지역 구현을 직접 참조·수정한다. 가장 해당하는 결합도는?

정답과 풀이 확인

정답 내용 결합도

모듈 경계를 깨고 내부 내용에 직접 의존하는 강한 결합이다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 06미풀이

응집도

앞 작업의 출력이 다음 작업의 입력으로 사용되는 응집도는?

정답과 풀이 확인

정답 순차적 응집도

같은 자료를 사용한다는 교환적 응집도보다 단계 사이 데이터 흐름이 강하게 연결된다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 07미풀이

UML

객체 간 메시지 교환을 시간 흐름에 따라 보여주는 다이어그램은?

정답과 풀이 확인

정답 시퀀스 다이어그램

생명선과 메시지로 상호작용 순서를 나타낸다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 08미풀이

위험 중심

매 반복에서 위험 분석을 핵심 단계로 두는 개발 모형은?

정답과 풀이 확인

정답 나선형 모형

계획·위험 분석·개발·평가를 반복하며 위험을 줄이는 방식이다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 09미풀이

책임 분리

데이터를 변경하는 명령과 조회하는 질의의 모델을 분리하는 설계 원칙의 약어는?

정답과 풀이 확인

정답 CQRS

Command Query Responsibility Segregation.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 10미풀이

느슨한 결합 통신

상태 변화를 이벤트로 발행하고 구독자가 비동기로 반응하는 아키텍처 스타일은?

정답과 풀이 확인

정답 이벤트 기반 아키텍처

Event-Driven Architecture. 발행자는 구독자를 직접 알 필요가 없다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 11미풀이

UML 수명 관계

전체 객체가 부분 객체의 수명을 소유하며 채운 마름모로 표시하는 관계는?

정답과 풀이 확인

정답 합성

Composition. 집합은 빈 마름모이며 더 느슨한 전체-부분 관계.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 12미풀이

통신과 순차 응집

앞 작업 결과를 다음 작업 입력으로 이용하는 모듈의 응집도는?

정답과 풀이 확인

정답 순차 응집도

같은 데이터를 공유하는 통신 응집과 다르다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 13미풀이

DIP 적용

업무 서비스가 특정 DB 구현 클래스 대신 저장소 인터페이스에 의존한다. 원칙은?

정답과 풀이 확인

정답 의존 역전 원칙(DIP)

고수준 정책과 저수준 구현이 추상에 의존하도록 한다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 14미풀이

시퀀스 다이어그램

객체 사이 메시지를 시간 순으로 표현하는 UML 다이어그램은?

정답과 풀이 확인

정답 시퀀스 다이어그램

업무 흐름 중심 활동 다이어그램과 구별한다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 기본 · 창작 15미풀이

패턴 목적 구별

관련된 버튼·메뉴·체크박스의 제품군을 테마별로 생성하는 패턴은?

정답과 풀이 확인

정답 Abstract Factory

관련 제품군을 일관되게 생성한다. 생성 과정을 단계별 조립하는 Builder와 다르다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 응용 · 창작 16미풀이

리뷰와 회고

팀이 협업 과정과 도구를 돌아보고 개선을 계획했다. 스크럼 이벤트는?

정답과 풀이 확인

정답 Sprint Retrospective

스프린트 회고다. 결과와 다음 적응을 이해관계자와 살피는 Sprint Review와 구별한다.

해설과 비교해 직접 채점
요구사항·소프트웨어 설계 · 응용 · 창작 17미풀이

패턴 의도 구별

알림 대상 객체 목록을 관리하다 상태 변경 시 등록 객체에 통지한다. 패턴명은?

정답과 풀이 확인

정답 Observer

일대다 의존 관계에서 상태 변경을 관찰자에게 알리는 행위 패턴이다.

해설과 비교해 직접 채점

기출과 연결하기

2024년 1회 · Java 객체 공유·C 비트 연산·응집도

2025년 3회 · 패키지 다이어그램·조건 커버리지·C/Java·SQL

2026년 1회 · Bridge·Observer·DB 설계 단계·비기능 요구·ISMS·HDLC

문법 문서·출처·확인 범위 보기