정처기 실기 소프트웨어 설계 기출문제
정보처리기사 실기 · 총 88문제
- 01UML 다이어그램난이도 1SHORT_ANSWER
UML(Unified Modeling Language)에서 시스템과 사용자(액터) 간의 상호작용을 표현하며, 시스템이 제공하는 기능을 사용자 관점에서 나타내는 다이어그램의 이름을 쓰시오.
- 02디자인 패턴난이도 3SHORT_ANSWER
GoF 디자인 패턴 중, 객체의 인스턴스가 오직 하나만 생성되도록 보장하고, 어디서든 그 인스턴스에 접근할 수 있도록 전역적인 접근점을 제공하는 생성 패턴의 이름을 쓰시오.
- 03결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 모듈의 **결합도(Coupling)**와 **응집도(Cohesion)**의 개념을 설명하고, 좋은 모듈 설계를 위해 각각 어떤 방향으로 설계해야 하는지 서술하시오.
- 04결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 모듈의 **결합도(Coupling)** 유형을 강한 순서대로 3가지 이상 나열하고, 각각의 특징과 예시를 설명하시오. 또한 **응집도(Cohesion)** 유형을 약한 순서대로 3가지 이상 나열하고, 각각...
- 05결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 설계에서 **팬인(Fan-in)**과 **팬아웃(Fan-out)**의 개념을 설명하고, 이들이 결합도와 응집도에 미치는 영향을 분석하시오. 또한 좋은 모듈 구조를 위한 팬인과 팬아웃의 바람직한 특성을 제시...
- 06결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 설계에서 **모듈화(Modularization)**의 원리를 바탕으로, 모듈 간의 **인터페이스 설계 원칙**과 **정보은닉(Information Hiding)**이 결합도와 응집도에 미치는 영향을 분석하...
- 07결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 아키텍처 설계 시 **계층화(Layering)**와 **모듈 분할 기준**이 시스템의 결합도와 응집도에 미치는 영향을 분석하고, **관심사의 분리(Separation of Concerns)** 원칙을 적용...
- 08결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 모듈 간의 **결합도(Coupling)**와 모듈 내부의 **응집도(Cohesion)**에서 '자료 결합도(Data Coupling)'와 '기능적 응집도(Functional Cohesion)'의 특징을 각...
- 09결합도와 응집도난이도 5DESCRIPTIVE
모듈 설계에서 **공통 결합도(Common Coupling)**와 **논리적 응집도(Logical Cohesion)**가 발생하는 구체적 상황을 각각 예시와 함께 설명하고, 이러한 설계가 소프트웨어 **유지보수성**...
- 10결합도와 응집도난이도 5DESCRIPTIVE
대규모 소프트웨어 시스템에서 **계층형 아키텍처(Layered Architecture)** 설계 시 각 계층 간의 결합도를 최소화하면서 계층 내부의 응집도를 최대화하기 위한 **의존성 역전 원칙(Dependency ...
- 11결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 설계에서 **모듈 간 결합도**와 **모듈 내 응집도**가 **소프트웨어 복잡도(Software Complexity)**와 **변경 파급효과(Change Propagation)**에 미치는 영향을 분석하고...
- 12결합도와 응집도난이도 5DESCRIPTIVE
마이크로서비스 아키텍처(Microservices Architecture)에서 서비스 간 **결합도 관리**와 서비스 내 **응집도 최적화**를 위한 설계 원칙을 제시하고, **도메인 주도 설계(Domain-Drive...
- 13결합도와 응집도난이도 5DESCRIPTIVE
레거시 시스템의 **모듈 리팩터링(Module Refactoring)** 과정에서 **결합도 측정 지표**와 **응집도 평가 기준**을 활용한 개선 효과 검증 방법을 제시하고, **LCOM(Lack of Cohesi...
- 14결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 설계에서 **모듈 간 의존성 관리**와 관련하여, **순환 종속성(Circular Dependency)**이 결합도와 응집도에 미치는 부정적 영향을 분석하고, 이를 해결하기 위한 **의존성 주입(Depen...
- 15결합도와 응집도난이도 5DESCRIPTIVE
대규모 소프트웨어 시스템에서 **모듈 간 통신 패턴**이 결합도와 응집도에 미치는 영향을 분석하고, **메시지 큐(Message Queue)**와 **이벤트 버스(Event Bus)** 패턴을 활용한 **느슨한 결합...
- 16결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 설계에서 **모듈의 응집도를 측정하는 정량적 지표인 LCOM(Lack of Cohesion of Methods)**의 개념과 계산 방법을 설명하고, LCOM 값이 높을 때 발생하는 문제점과 이를 개선하기 ...
- 17결합도와 응집도난이도 5DESCRIPTIVE
분산 시스템 환경에서 **서비스 간 결합도를 낮추기 위한 CQRS(Command Query Responsibility Segregation) 패턴과 Saga 패턴**의 적용 방법을 설명하고, 이들 패턴이 데이터 일관...
- 18결합도와 응집도난이도 5DESCRIPTIVE
객체지향 설계에서 **Law of Demeter(데메테르 법칙)와 Tell, Don't Ask 원칙**이 결합도와 응집도에 미치는 영향을 설명하고, 이들 원칙을 위반했을 때 나타나는 구체적인 코드 냄새(Code Sm...
- 19디자인 패턴 식별난이도 3SHORT_ANSWER
하나의 인터페이스를 여러 개의 구체적이고 특화된 인터페이스로 분리하여, 클라이언트가 사용하지 않는 메소드에 의존하지 않도록 하는 SOLID 원칙 중 하나는 무엇인가?
- 20소프트웨어 개발 생명주기 모델난이도 1SHORT_ANSWER
소프트웨어 개발 초기에 프로토타입을 만들어 사용자와의 의사소통을 강화하고, 반복적으로 요구사항을 정제해 나가는 개발 생명주기 모델은 무엇인가?
- 21SOLID 원칙난이도 5DESCRIPTIVE
객체지향 설계 원칙 중 **리스코프 치환 원칙(LSP: Liskov Substitution Principle)**과 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**의 의미를...
- 22결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 아키텍처 설계에서 **관심사의 분리(Separation of Concerns)**와 **단일 진입점 원칙(Single Point of Entry)**의 개념을 설명하고, 각각이 시스템의 유지보수성에 미치는...
- 23소프트웨어 개발 생명주기 모델난이도 1SHORT_ANSWER
짧은 주기로 동작하는 소프트웨어를 빠르게 개발하고, 사용자 피드백을 받아 지속적으로 개선해나가는 방식으로, 계획→분석→설계→구현→테스트 단계를 반복하는 소프트웨어 개발 생명주기 모델은 무엇인가?
- 24SOLID 원칙난이도 5DESCRIPTIVE
객체지향 설계 원칙 중 **리스코프 치환 원칙(LSP: Liskov Substitution Principle)**과 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**의 의미를...
- 25디자인 패턴 식별난이도 3SHORT_ANSWER
복잡한 객체의 생성 과정을 단계별로 분리하여, 동일한 생성 절차로 서로 다른 표현 결과를 만들 수 있도록 하는 GoF 생성 패턴은 무엇인가?
- 26SOLID 원칙난이도 5DESCRIPTIVE
객체지향 설계 원칙 중 **인터페이스 분리 원칙(ISP: Interface Segregation Principle)**과 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**의 ...
- 27소프트웨어 개발 생명주기 모델난이도 1SHORT_ANSWER
요구사항이 불명확하고 변경이 빈번할 때 적합하며, 계획→분석→설계→구현 단계를 짧은 주기로 반복하여 점진적으로 시스템을 완성해 나가는 소프트웨어 개발 생명주기 모델은 무엇인가?
- 28UML 다이어그램 분류난이도 3SHORT_ANSWER
UML 다이어그램에서 시스템의 정적 구조를 나타내는 구조적 다이어그램에 해당하는 것을 모두 고르시오. 1) 상태 다이어그램 2) 배치 다이어그램 3) 통신 다이어그램 4) 클래스 다이어그램 5) 타이밍 다이어그램 6...
- 29UML 다이어그램 분류난이도 3SHORT_ANSWER
소프트웨어 아키텍처 패턴은 크게 구조적 패턴과 행위적 패턴으로 분류된다. 다음 중 행위적 패턴에 해당하는 것을 모두 나열하시오. 1) 계층형(Layered) 패턴 2) MVC(Model-View-Controller)...
- 30소프트웨어 개발 생명주기 모델난이도 1SHORT_ANSWER
사용자 요구사항이 불명확하거나 자주 변경될 가능성이 높은 프로젝트에 적합하며, 짧은 반복 주기를 통해 점진적으로 소프트웨어를 개발하여 각 반복마다 사용 가능한 제품을 생산하는 소프트웨어 개발 생명주기 모델은 무엇인가...
- 31SOLID 원칙난이도 5DESCRIPTIVE
객체지향 설계 원칙 중 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**과 **리스코프 치환 원칙(LSP: Liskov Substitution Principle)**의 의미를...
- 32디자인 패턴 식별난이도 3SHORT_ANSWER
복잡한 객체의 생성 과정을 단계별로 분리하여, 동일한 생성 절차로 서로 다른 표현 결과를 만들 수 있게 하는 GoF 생성 패턴은 무엇인가?
- 33결합도와 응집도난이도 5DESCRIPTIVE
소프트웨어 아키텍처 설계에서 **모듈화(Modularity)**와 **정보 은닉(Information Hiding)**의 개념을 설명하고, 이들이 소프트웨어 품질에 미치는 효과를 서술하시오.
- 34소프트웨어 개발 생명주기 모델난이도 2SHORT_ANSWER
요구사항이 불분명하고 변경 가능성이 높은 프로젝트에 적합하며, 짧은 개발 주기(Sprint)를 반복하면서 점진적으로 제품을 완성해 나가는 소프트웨어 개발 생명주기 모델은 무엇인가?
- 35디자인 패턴 식별난이도 1SHORT_ANSWER
하나의 클래스에서 오직 하나의 인스턴스만 생성되도록 보장하고, 전역적인 접근점을 제공하는 GoF 생성 패턴은 무엇인가?
- 36SOLID 원칙난이도 1DESCRIPTIVE
객체지향 설계 원칙 중 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**의 의미를 설명하시오.
- 37결합도와 응집도난이도 3DESCRIPTIVE
소프트웨어 아키텍처에서 **팬인(Fan-in)**과 **팬아웃(Fan-out)**의 개념을 설명하고, 각각이 시스템의 결합도와 복잡도에 미치는 영향을 분석하여 바람직한 설계 특성을 도출하시오. 또한 높은 팬아웃이 발...
- 38결합도와 응집도난이도 2DESCRIPTIVE
소프트웨어 아키텍처에서 **관심사의 분리(Separation of Concerns)**와 **단일 책임 원칙(Single Responsibility Principle)**이 모듈 설계에 미치는 영향을 설명하고, 이러...
- 39UML 다이어그램 분류난이도 1SHORT_ANSWER
다음 중 UML의 구조적 다이어그램(Structural Diagram)에 해당하는 것을 모두 찾아 번호로 나열하시오. 1) 배치 다이어그램 2) 상태 다이어그램 3) 패키지 다이어그램 4) 통신 다이어그램 5) 컴포...
- 40SOLID 원칙난이도 3DESCRIPTIVE
객체지향 설계 원칙 중 **리스코프 치환 원칙(LSP: Liskov Substitution Principle)**과 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**의 핵심 ...
- 41결합도와 응집도난이도 3DESCRIPTIVE
소프트웨어 아키텍처 설계에서 **계층화(Layering)**와 **모듈화(Modularization)**가 시스템의 **복잡도 관리**와 **변경 영향 최소화**에 미치는 효과를 분석하고, 이러한 설계 원칙들이 어떻...
- 42디자인 패턴 식별난이도 1SHORT_ANSWER
소프트웨어 개발에서 사용되는 대표적인 **생명주기 모델** 중에서 요구사항이 명확하고 안정적인 프로젝트에 적합하며, 각 단계가 순차적으로 진행되어 이전 단계 완료 후 다음 단계로 넘어가는 전통적인 모델은 무엇인가?
- 43UML 다이어그램 분류난이도 1SHORT_ANSWER
GoF 디자인 패턴은 생성 패턴, 구조 패턴, 행위 패턴으로 분류된다. 다음 중 생성 패턴(Creational Pattern)에 해당하는 것을 모두 고르시오. 1) 어댑터 패턴 2) 팩토리 메서드 패턴 3) 옵저버 ...
- 44결합도와 응집도난이도 3DESCRIPTIVE
소프트웨어 아키텍처 설계에서 **모듈 간 의존성 관리**의 핵심 원칙인 **의존성 역전 원칙(DIP)**과 **인터페이스 분리 원칙(ISP)**이 시스템의 유연성과 확장성에 미치는 영향을 분석하고, 이 두 원칙을 위...
- 45소프트웨어 개발 생명주기 모델난이도 1SHORT_ANSWER
사용자 요구사항을 점진적으로 개발하면서 각 단계마다 사용자 피드백을 받아 요구사항을 보완해 나가는 소프트웨어 개발 생명주기 모델로, 빠른 프로토타입 제작과 반복적 개선을 통해 최종 제품을 완성하는 모델은 무엇인가?
- 46디자인 패턴 식별난이도 3SHORT_ANSWER
다음은 어떤 디자인 패턴의 구현 코드이다. 이 패턴의 명칭을 쓰시오. [코드] 위 코드에서 ConnectionCreator는 구체적인 Connection 클래스를 알지 못하면서도 서브클래스가 어떤 객체를 생성할지 결...
- 47UML 다이어그램 분류난이도 3SHORT_ANSWER
다음 UML 다이어그램들을 구조적(Structural) 다이어그램과 행위적(Behavioral) 다이어그램으로 분류하시오. A) 배치 다이어그램(Deployment Diagram) B) 상태 다이어그램(State D...
- 48SOLID 원칙난이도 3DESCRIPTIVE
SOLID 원칙 중 **의존성 역전 원칙(DIP: Dependency Inversion Principle)**과 **리스코프 치환 원칙(LSP: Liskov Substitution Principle)**의 핵심 개념...
- 49디자인 패턴 식별난이도 2SHORT_ANSWER
복잡한 객체의 생성 과정을 단계별로 구분하여, 동일한 생성 절차로 서로 다른 표현의 객체를 만들 수 있도록 하는 GoF 생성 패턴은 무엇인가?
- 50결합도와 응집도난이도 2DESCRIPTIVE
소프트웨어 아키텍처 설계에서 **모듈화(Modularity)**와 **정보 은닉(Information Hiding)**의 개념을 설명하고, 이들이 소프트웨어 품질 향상에 기여하는 구체적인 효과를 서술하시오.
소프트웨어 설계 전체를 모의고사로 풀어보기
매번 새로 추가되는 실전 세트로 연습하세요.
모의고사 풀러 가기