IPQ-001-146 · 1과목 · UNIT 03 · 디자인 패턴 · CORE 1. 'Adapter'에 대한 설명으로 가장 적절한 것은? 1. 교체 가능한 여러 알고리즘을 동일한 인터페이스로 캡슐화하는 행위 패턴 2. 복잡한 객체의 생성 과정과 표현을 분리해 단계적으로 객체를 만드는 생성 패턴 3. 객체를 감싸면서 기존 객체를 수정하지 않고 책임이나 기능을 동적으로 추가하는 구조 패턴 4. 호환되지 않는 기존 인터페이스를 클라이언트가 원하는 인터페이스로 변환하는 구조 패턴 정답 4번 · Adapter: 호환되지 않는 기존 인터페이스를 클라이언트가 원하는 인터페이스로 변환하는 구조 패턴
IPQ-001-161 · 1과목 · UNIT 03 · SOLID 원칙 · CORE 2. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 클래스나 모듈이 하나의 책임과 하나의 변경 이유를 가지도록 하는 원칙 1. SRP 2. DIP 3. ISP 4. OCP 정답 1번 · 정답은 SRP입니다. 클래스나 모듈이 하나의 책임과 하나의 변경 이유를 가지도록 하는 원칙
IPQ-002-084 · 1과목 · UNIT 05 · 테스트 수준 · ADVANCED 3. 다음 중 'Unit Test'이 가장 직접적으로 적용된 상황은? 1. 완성된 쇼핑몰 전체를 실제 운영과 유사한 환경에서 검증한다. 2. 계산 함수 하나를 외부 시스템과 분리해 입력과 출력만 검증한다. 3. 결제 모듈 수정 뒤 주문·환불 등 기존 기능을 다시 실행한다. 4. 발주자가 주요 업무 시나리오를 실행해 납품 가능 여부를 판단한다. 정답 2번 · Unit Test의 대표 적용 상황은 다음과 같습니다: 계산 함수 하나를 외부 시스템과 분리해 입력과 출력만 검증한다.
IPQ-002-114 · 1과목 · UNIT 05 · 화이트박스 테스트 · CORE 4. 'Path Coverage'에 대한 설명으로 가장 적절한 것은? 1. 모든 결정 분기의 True와 False 결과가 최소 한 번 실행되는지 보는 커버리지 2. 반복문의 0회·1회·여러 회·경계 반복 등을 중심으로 검증하는 테스트 3. 복합 조건을 이루는 각 개별 조건이 True와 False를 모두 갖도록 보는 커버리지 4. 프로그램에서 가능한 실행 경로를 대상으로 검증하는 커버리지 정답 4번 · Path Coverage: 프로그램에서 가능한 실행 경로를 대상으로 검증하는 커버리지
IPQ-002-142 · 1과목 · UNIT 05 · 통합·성능 테스트 · CORE 5. 'Top-Down Integration'에 대한 설명으로 가장 적절한 것은? 1. 대부분의 모듈을 한꺼번에 결합한 뒤 전체 상호작용을 테스트하는 방식 2. 상위 모듈부터 하위 모듈 방향으로 점진적으로 결합하는 통합 전략 3. 정상 한계를 넘는 극한 부하에서 시스템의 한계와 복구 특성을 확인하는 테스트 4. 예상되는 사용자나 트랜잭션 부하에서 응답시간과 처리량을 확인하는 테스트 정답 2번 · Top-Down Integration: 상위 모듈부터 하위 모듈 방향으로 점진적으로 결합하는 통합 전략
IPQ-001-073 · 1과목 · UNIT 01 · UML 관계 · CORE 6. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 상위 개념의 속성과 동작을 하위 개념이 상속하는 is-a 관계 1. 연관 관계 2. 일반화 관계 3. 실체화 관계 4. 집합 관계 정답 2번 · 정답은 일반화 관계입니다. 상위 개념의 속성과 동작을 하위 개념이 상속하는 is-a 관계
IPQ-005-072 · 1과목 · UNIT 04 · 소프트웨어 품질 · ADVANCED 7. 다음 중 'Performance Efficiency'이 가장 직접적으로 적용된 상황은? 1. 운영체제나 Cloud 환경이 바뀌어도 적은 수정으로 실행된다. 2. 장애가 드물고 오류 후에도 안정적으로 기능을 제공한다. 3. 초보 사용자가 짧은 시간에 기능을 익히고 실수를 줄인다. 4. 응답시간과 처리량 목표를 적은 CPU·Memory 자원으로 만족한다. 정답 4번 · Performance Efficiency의 대표 적용 상황은 다음과 같습니다: 응답시간과 처리량 목표를 적은 CPU·Memory 자원으로 만족한다.
IPQ-001-143 · 1과목 · UNIT 03 · 디자인 패턴 · APPLY 8. 다음 상황과 가장 직접적으로 관련된 용어는? — 같은 생성 절차로 서로 다른 옵션의 보고서 객체를 단계적으로 만든다. 1. Decorator 2. Observer 3. Strategy 4. Builder 정답 4번 · 이 상황은 Builder을 적용한 예입니다. 복잡한 객체의 생성 과정과 표현을 분리해 단계적으로 객체를 만드는 생성 패턴
IPQ-002-156 · 1과목 · UNIT 05 · 통합·성능 테스트 · ADVANCED 9. 다음 중 'Load Test'이 가장 직접적으로 적용된 상황은? 1. 평상시 예상 동시 사용자 수를 만들어 서비스 성능을 측정한다. 2. 사용자 수를 계속 높여 장애 발생 지점과 복구 동작을 확인한다. 3. 메인 제어 모듈부터 테스트하면서 아직 없는 하위 모듈을 Stub으로 대신한다. 4. 개별 모듈 완성 후 한 시점에 모두 연결해 통합 결함을 찾는다. 정답 1번 · Load Test의 대표 적용 상황은 다음과 같습니다: 평상시 예상 동시 사용자 수를 만들어 서비스 성능을 측정한다.
IPQ-001-198 · 1과목 · UNIT 01 · 분석·설계 도구 · CORE 10. 'CASE'에 대한 설명으로 가장 적절한 것은? 1. 프로세스·데이터 흐름·데이터 저장소·외부 개체로 데이터 이동을 표현하는 모델 2. 구조적 프로그래밍의 순차·선택·반복 제어 구조를 박스 중첩 형태로 표현하는 도구 3. 데이터 항목의 이름·의미·구조·형식 등을 정의해 일관성을 유지하는 자료 4. 소프트웨어 개발 생명주기의 분석·설계·문서화 등을 자동화·지원하는 도구 환경 정답 4번 · CASE: 소프트웨어 개발 생명주기의 분석·설계·문서화 등을 자동화·지원하는 도구 환경
IPQ-001-178 · 1과목 · UNIT 03 · SOLID 원칙 · CORE 11. 'DIP'에 대한 설명으로 가장 적절한 것은? 1. 고수준·저수준 모듈이 구체 구현보다 추상화에 의존하도록 하는 원칙 2. 하위 타입이 상위 타입을 대체해도 프로그램의 올바른 동작이 유지되어야 한다는 원칙 3. 기능 확장에는 열려 있고 기존 코드 수정에는 닫히도록 설계하는 원칙 4. 클라이언트가 사용하지 않는 메서드에 의존하지 않도록 인터페이스를 작게 분리하는 원칙 정답 1번 · DIP: 고수준·저수준 모듈이 구체 구현보다 추상화에 의존하도록 하는 원칙
IPQ-002-115 · 1과목 · UNIT 05 · 화이트박스 테스트 · APPLY 12. 다음 상황과 가장 직접적으로 관련된 용어는? — 분기 조합으로 만들어지는 서로 다른 흐름을 경로 단위로 확인한다. 1. Path Coverage 2. Branch Coverage 3. Statement Coverage 4. Condition Coverage 정답 1번 · 이 상황은 Path Coverage을 적용한 예입니다. 프로그램에서 가능한 실행 경로를 대상으로 검증하는 커버리지
IPQ-002-044 · 1과목 · UNIT 05 · 정렬·복잡도 · ADVANCED 13. 다음 중 'Bubble Sort'이 가장 직접적으로 적용된 상황은? 1. Pivot보다 작은 원소와 큰 원소로 나누어 부분 배열을 다시 정렬한다. 2. 인접 원소를 차례로 바꾸며 한 Pass마다 가장 큰 값이 뒤쪽에 자리잡는다. 3. 첫 위치에 들어갈 가장 작은 원소를 전체 미정렬 영역에서 찾아 교환한다. 4. 배열을 절반씩 나누고 정렬된 두 목록을 비교하면서 합친다. 정답 2번 · Bubble Sort의 대표 적용 상황은 다음과 같습니다: 인접 원소를 차례로 바꾸며 한 Pass마다 가장 큰 값이 뒤쪽에 자리잡는다.
IPQ-001-028 · 1과목 · UNIT 01 · 요구사항 분석 · ADVANCED 14. 다음 중 '비기능 요구사항'이 가장 직접적으로 적용된 상황은? 1. 응답시간을 2초 이내로 하고 가용성을 99.9% 이상으로 요구한다. 2. 명세가 서로 충돌하지 않고 테스트 가능한지 리뷰한다. 3. 사용자가 비밀번호를 재설정하거나 주문을 취소할 수 있어야 한다고 명시한다. 4. 요구사항 변경 시 영향받는 설계 문서·코드·테스트 케이스를 연결해서 확인한다. 정답 1번 · 비기능 요구사항의 대표 적용 상황은 다음과 같습니다: 응답시간을 2초 이내로 하고 가용성을 99.9% 이상으로 요구한다.
IPQ-002-191 · 1과목 · UNIT 06 · CI·빌드·배포 · APPLY 15. 다음 상황과 가장 직접적으로 관련된 용어는? — 배포 직전까지 자동화하고 운영 반영은 승인으로 결정할 수 있다. 1. Continuous Delivery 2. Continuous Deployment 3. Rollback 4. Build 정답 1번 · 이 상황은 Continuous Delivery을 적용한 예입니다. 자동화된 빌드·테스트를 거쳐 언제든 운영에 배포 가능한 상태를 유지하는 방식
IPQ-001-136 · 1과목 · UNIT 03 · 소프트웨어 아키텍처 · ADVANCED 16. 다음 중 'Repository'이 가장 직접적으로 적용된 상황은? 1. Controller가 요청을 받아 Model을 처리하고 View를 선택한다. 2. 분석 도구들이 하나의 공용 모델 저장소를 읽고 갱신한다. 3. 입력 데이터를 파싱→정제→변환→출력하는 단계로 연결한다. 4. 여러 PC가 중앙 서버에 데이터 조회를 요청한다. 정답 2번 · Repository의 대표 적용 상황은 다음과 같습니다: 분석 도구들이 하나의 공용 모델 저장소를 읽고 갱신한다.
IPQ-002-139 · 1과목 · UNIT 05 · 블랙박스 테스트 · APPLY 17. 다음 상황과 가장 직접적으로 관련된 용어는? — 여러 입력조건의 AND·OR 관계와 결과를 연결해 테스트 조건을 만든다. 1. Cause-Effect Graph 2. Decision Table 3. State Transition Testing 4. Boundary Value Analysis 정답 1번 · 이 상황은 Cause-Effect Graph을 적용한 예입니다. 입력 조건인 원인과 출력 결과인 효과의 논리 관계를 그래프로 분석하는 기법
IPQ-002-016 · 1과목 · UNIT 06 · 형상관리 · CORE 18. 여러 개발 흐름을 분기하여 병렬 작업하는 개념은? 1. Branch 2. Rollback 3. Refactoring 4. Profiling 정답 1번 · Branch는 독립적인 변경 흐름을 만들어 병렬 개발을 지원합니다.
IPQ-001-094 · 1과목 · UNIT 02 · UI·UX 설계 · CORE 19. '유연성'에 대한 설명으로 가장 적절한 것은? 1. 사용자의 숙련도나 상황에 따라 다양한 조작 방법과 선택을 제공하는 성질 2. 화면 전반에서 동일한 용어·배치·조작 규칙을 유지하는 성질 3. 사용자가 별도 학습 없이도 화면의 기능과 조작 방법을 쉽게 이해할 수 있는 성질 4. 장애·환경·기기 차이에도 다양한 사용자가 서비스를 이용할 수 있도록 하는 성질 정답 1번 · 유연성: 사용자의 숙련도나 상황에 따라 다양한 조작 방법과 선택을 제공하는 성질
IPQ-001-199 · 1과목 · UNIT 01 · 분석·설계 도구 · APPLY 20. 다음 상황과 가장 직접적으로 관련된 용어는? — 모델 작성과 문서 생성, 일관성 검사 등을 개발 도구가 지원한다. 1. DFD 2. CASE 3. 데이터 사전 4. HIPO 정답 2번 · 이 상황은 CASE을 적용한 예입니다. 소프트웨어 개발 생명주기의 분석·설계·문서화 등을 자동화·지원하는 도구 환경
IPQ-003-014 · 2과목 · UNIT 03 · Subquery · CORE 21. 한 개 값만 반환하는 Scalar Subquery를 비교연산자 = 와 사용할 때 중요한 점은? 1. 여러 행이 나와도 항상 자동 합산된다 2. 단일 값이 반환되어야 한다 3. 반드시 GROUP BY가 필요하다 4. FROM 절에서만 사용 가능하다 정답 2번 · 단일값 비교에서는 서브쿼리가 하나의 값을 반환해야 합니다.
IPQ-003-123 · 2과목 · UNIT 04 · 집계·서브쿼리·집합 · APPLY 22. 다음 상황과 가장 직접적으로 관련된 용어는? — 부서별로 행을 묶어 평균 급여를 계산한다. 1. EXISTS 2. GROUP BY 3. Scalar Subquery 4. UNION ALL 정답 2번 · 이 상황은 GROUP BY을 적용한 예입니다. 지정한 열 값이 같은 행을 그룹으로 묶어 집계할 수 있게 하는 절
IPQ-003-047 · 2과목 · UNIT 02 · 함수 종속·정규화 · APPLY 23. 다음 상황과 가장 직접적으로 관련된 용어는? — 학번→학과코드, 학과코드→학과명으로 학번이 학과명을 간접 결정한다. 1. Partial Functional Dependency 2. 3NF 3. 2NF 4. Transitive Functional Dependency 정답 4번 · 이 상황은 Transitive Functional Dependency을 적용한 예입니다. 키가 아닌 속성을 거쳐 다른 일반 속성이 간접적으로 키에 종속되는 관계
IPQ-003-116 · 2과목 · UNIT 04 · JOIN · ADVANCED 24. 다음 중 'FULL OUTER JOIN'이 가장 직접적으로 적용된 상황은? 1. 주문이 없는 고객도 고객 목록에 남도록 조회한다. 2. 두 시스템 고객 목록의 모든 행을 유지하며 일치하면 한 행으로 결합한다. 3. 매칭되는 직원이 없어도 모든 부서 행을 결과에 유지한다. 4. 고객과 주문 모두 존재하는 매칭 행만 조회한다. 정답 2번 · FULL OUTER JOIN의 대표 적용 상황은 다음과 같습니다: 두 시스템 고객 목록의 모든 행을 유지하며 일치하면 한 행으로 결합한다.
IPQ-003-056 · 2과목 · UNIT 02 · 함수 종속·정규화 · ADVANCED 25. 다음 중 '3NF'이 가장 직접적으로 적용된 상황은? 1. 후보키가 아닌 결정자가 존재하는 관계를 추가 분해한다. 2. (학생,과목)이 키인데 학생만으로 학과가 결정된다. 3. 학과코드와 학과명을 별도 학과 테이블로 분리한다. 4. 학번→학과코드, 학과코드→학과명으로 학번이 학과명을 간접 결정한다. 정답 3번 · 3NF의 대표 적용 상황은 다음과 같습니다: 학과코드와 학과명을 별도 학과 테이블로 분리한다.
IPQ-003-020 · 2과목 · UNIT 05 · Transaction · CORE 26. 작업을 확정하여 영구 반영하는 명령은? 1. ROLLBACK 2. COMMIT 3. REVOKE 4. DROP 정답 2번 · COMMIT은 현재 트랜잭션의 변경을 확정합니다.
IPQ-003-143 · 2과목 · UNIT 05 · 트랜잭션·ACID · APPLY 27. 다음 상황과 가장 직접적으로 관련된 용어는? — 계좌 이체에서 출금과 입금 중 하나만 반영되지 않도록 한다. 1. Atomicity 2. Savepoint 3. Durability 4. Consistency 정답 1번 · 이 상황은 Atomicity을 적용한 예입니다. Transaction의 작업이 전부 수행되거나 전혀 수행되지 않아야 하는 성질
IPQ-003-144 · 2과목 · UNIT 05 · 트랜잭션·ACID · ADVANCED 28. 다음 중 'Atomicity'이 가장 직접적으로 적용된 상황은? 1. Commit 직후 서버가 재시작돼도 확정된 주문 데이터가 남는다. 2. 계좌 이체에서 출금과 입금 중 하나만 반영되지 않도록 한다. 3. 한 Transaction의 미확정 변경이 다른 작업에 노출되지 않도록 제어한다. 4. 여러 작업 중 두 번째 단계 직후 저장점을 만들고 이후 오류 시 그 지점으로 돌아간다. 정답 2번 · Atomicity의 대표 적용 상황은 다음과 같습니다: 계좌 이체에서 출금과 입금 중 하나만 반영되지 않도록 한다.
IPQ-003-107 · 2과목 · UNIT 04 · JOIN · APPLY 29. 다음 상황과 가장 직접적으로 관련된 용어는? — 주문이 없는 고객도 고객 목록에 남도록 조회한다. 1. SELF JOIN 2. RIGHT OUTER JOIN 3. FULL OUTER JOIN 4. LEFT OUTER JOIN 정답 4번 · 이 상황은 LEFT OUTER JOIN을 적용한 예입니다. 왼쪽 테이블의 모든 행을 보존하고 오른쪽 미매칭 값을 NULL로 채우는 Join
IPQ-003-122 · 2과목 · UNIT 04 · 집계·서브쿼리·집합 · CORE 30. 'GROUP BY'에 대한 설명으로 가장 적절한 것은? 1. 두 SELECT 결과를 중복 제거 없이 그대로 합치는 집합 연산 2. Subquery 결과 행의 존재 여부를 True/False로 검사하는 연산자 3. 지정한 열 값이 같은 행을 그룹으로 묶어 집계할 수 있게 하는 절 4. GROUP BY 이후 만들어진 그룹에 조건을 적용하는 절 정답 3번 · GROUP BY: 지정한 열 값이 같은 행을 그룹으로 묶어 집계할 수 있게 하는 절
IPQ-003-105 · 2과목 · UNIT 04 · JOIN · CORE 31. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 왼쪽 테이블의 모든 행을 보존하고 오른쪽 미매칭 값을 NULL로 채우는 Join 1. INNER JOIN 2. FULL OUTER JOIN 3. LEFT OUTER JOIN 4. SELF JOIN 정답 3번 · 정답은 LEFT OUTER JOIN입니다. 왼쪽 테이블의 모든 행을 보존하고 오른쪽 미매칭 값을 NULL로 채우는 Join
IPQ-003-140 · 2과목 · UNIT 04 · 집계·서브쿼리·집합 · ADVANCED 32. 다음 중 'UNION ALL'이 가장 직접적으로 적용된 상황은? 1. 두 로그 목록을 중복 행도 유지한 채 이어 붙인다. 2. 부서별로 행을 묶어 평균 급여를 계산한다. 3. 주문 기록이 하나라도 있는 고객만 조회한다. 4. 평균 급여가 5000 이상인 부서 그룹만 남긴다. 정답 1번 · UNION ALL의 대표 적용 상황은 다음과 같습니다: 두 로그 목록을 중복 행도 유지한 채 이어 붙인다.
IPQ-003-028 · 2과목 · UNIT 01 · 데이터 모델·키 · ADVANCED 33. 다음 중 'Candidate Key'이 가장 직접적으로 적용된 상황은? 1. 여러 후보키 중 학번을 기본 식별자로 지정한다. 2. 학번 하나만으로 학생을 유일 식별하고 더 이상 속성을 제거할 수 없다. 3. 주문 테이블의 고객번호가 고객 테이블의 기본키를 참조한다. 4. 학번 단독 또는 학번+이름처럼 유일 식별 가능한 속성 조합을 사용한다. 정답 2번 · Candidate Key의 대표 적용 상황은 다음과 같습니다: 학번 하나만으로 학생을 유일 식별하고 더 이상 속성을 제거할 수 없다.
IPQ-003-153 · 2과목 · UNIT 05 · 트랜잭션·ACID · CORE 34. 다음 설명에 해당하는 용어로 가장 적절한 것은? — Commit된 Transaction 결과가 장애 후에도 영구적으로 보존되는 성질 1. Durability 2. Consistency 3. Savepoint 4. Isolation 정답 1번 · 정답은 Durability입니다. Commit된 Transaction 결과가 장애 후에도 영구적으로 보존되는 성질
IPQ-003-062 · 2과목 · UNIT 03 · 관계대수 · CORE 35. 'Select'에 대한 설명으로 가장 적절한 것은? 1. 조건을 만족하는 Tuple 행을 선택하는 관계대수 연산 2. 첫 관계에는 있지만 두 번째 관계에는 없는 Tuple을 구하는 차집합 연산 3. 공통 속성이나 조건을 기준으로 두 관계의 관련 Tuple을 결합하는 연산 4. 합집합 가능한 두 관계의 Tuple을 합치고 중복을 제거하는 집합 연산 정답 1번 · Select: 조건을 만족하는 Tuple 행을 선택하는 관계대수 연산
IPQ-003-180 · 2과목 · UNIT 05 · 동시성·격리 · ADVANCED 36. 다음 중 'Serializable'이 가장 직접적으로 적용된 상황은? 1. 같은 급여 조건을 재조회했더니 새 직원 행이 추가되어 결과 수가 바뀐다. 2. 강한 격리로 동시성 이상을 최대한 방지하는 대신 경쟁 비용이 커질 수 있다. 3. 처음 읽은 고객 등급이 두 번째 조회에서 변경되어 있다. 4. 한 Transaction이 갱신 중인 행을 다른 Transaction이 동시에 수정하지 못하게 한다. 정답 2번 · Serializable의 대표 적용 상황은 다음과 같습니다: 강한 격리로 동시성 이상을 최대한 방지하는 대신 경쟁 비용이 커질 수 있다.
IPQ-003-108 · 2과목 · UNIT 04 · JOIN · ADVANCED 37. 다음 중 'LEFT OUTER JOIN'이 가장 직접적으로 적용된 상황은? 1. 매칭되는 직원이 없어도 모든 부서 행을 결과에 유지한다. 2. 주문이 없는 고객도 고객 목록에 남도록 조회한다. 3. 고객과 주문 모두 존재하는 매칭 행만 조회한다. 4. 두 시스템 고객 목록의 모든 행을 유지하며 일치하면 한 행으로 결합한다. 정답 2번 · LEFT OUTER JOIN의 대표 적용 상황은 다음과 같습니다: 주문이 없는 고객도 고객 목록에 남도록 조회한다.
IPQ-003-035 · 2과목 · UNIT 01 · 데이터 모델·키 · APPLY 38. 다음 상황과 가장 직접적으로 관련된 용어는? — 학번을 Primary Key로 선택한 뒤 유일한 주민번호 후보키가 남는다. 1. Alternate Key 2. Super Key 3. Primary Key 4. Candidate Key 정답 1번 · 이 상황은 Alternate Key을 적용한 예입니다. Candidate Key 중 Primary Key로 선택되지 않은 나머지 후보키
IPQ-003-129 · 2과목 · UNIT 04 · 집계·서브쿼리·집합 · CORE 39. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 한 행 한 열의 단일 값을 반환해 하나의 값처럼 사용되는 Subquery 1. Scalar Subquery 2. GROUP BY 3. HAVING 4. UNION ALL 정답 1번 · 정답은 Scalar Subquery입니다. 한 행 한 열의 단일 값을 반환해 하나의 값처럼 사용되는 Subquery
IPQ-003-185 · 2과목 · UNIT 06 · DB 객체·성능 · CORE 40. 다음 설명에 해당하는 용어로 가장 적절한 것은? — SELECT 정의를 바탕으로 논리적인 가상 테이블처럼 사용하는 DB 객체 1. Function 2. View 3. Trigger 4. Procedure 정답 2번 · 정답은 View입니다. SELECT 정의를 바탕으로 논리적인 가상 테이블처럼 사용하는 DB 객체
IPQ-004-112 · 3과목 · UNIT 04 · Python 자료형·참조 · ADVANCED 41. 다음 중 'Set'이 가장 직접적으로 적용된 상황은? 1. append로 항목을 추가하고 특정 인덱스 값을 변경한다. 2. 좌표 값을 (x,y) 형태로 묶어 수정 없이 사용한다. 3. b=a로 같은 List를 가리킨 뒤 b.append 결과가 a에도 나타난다. 4. 중복 회원번호를 제거하거나 합집합·교집합을 구한다. 정답 4번 · Set의 대표 적용 상황은 다음과 같습니다: 중복 회원번호를 제거하거나 합집합·교집합을 구한다.
IPQ-004-130 · 3과목 · UNIT 05 · 프로세스·스레드 · CORE 42. 'Context Switch'에 대한 설명으로 가장 적절한 것은? 1. CPU가 실행 중인 Process/Thread 상태를 저장하고 다른 작업 상태를 복원하는 전환 2. 실행 중인 프로그램의 독립적인 자원과 주소 공간을 가진 실행 단위 3. 공유 자원에 접근해 동시 실행 시 Race Condition이 생길 수 있는 코드 영역 4. 한 Process 내부에서 자원을 공유하며 실행되는 더 작은 실행 흐름 단위 정답 1번 · Context Switch: CPU가 실행 중인 Process/Thread 상태를 저장하고 다른 작업 상태를 복원하는 전환
IPQ-004-054 · 3과목 · UNIT 02 · C 포인터·배열 · CORE 43. 'Array Decay'에 대한 설명으로 가장 적절한 것은? 1. 포인터에 정수를 더하거나 빼서 가리키는 배열 요소 위치를 이동하는 연산 2. 구조체를 가리키는 포인터에서 -> 연산자로 멤버에 접근하는 방식 3. 포인터가 가리키는 주소의 실제 값에 접근하는 * 연산 4. 많은 표현식에서 배열 이름이 첫 번째 요소를 가리키는 포인터처럼 변환되는 성질 정답 4번 · Array Decay: 많은 표현식에서 배열 이름이 첫 번째 요소를 가리키는 포인터처럼 변환되는 성질
IPQ-004-019 · 3과목 · UNIT 06 · Network · CORE 44. DNS의 주된 역할은? 1. Domain Name과 IP Address 매핑 2. 파일 압축 3. CPU Scheduling 4. DB Normalization 정답 1번 · DNS는 이름을 IP 등 자원 레코드에 매핑합니다.
IPQ-004-029 · 3과목 · UNIT 02 · C 언어 기초 · CORE 45. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 현재 값을 표현식에서 먼저 사용한 뒤 변수를 1 증가시키는 연산 1. 후위 증가 2. 전위 증가 3. 정수 나눗셈 4. switch fall-through 정답 1번 · 정답은 후위 증가입니다. 현재 값을 표현식에서 먼저 사용한 뒤 변수를 1 증가시키는 연산
IPQ-002-033 · 3과목 · UNIT 01 · 자료구조 · CORE 46. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 정점과 간선으로 임의의 연결 관계를 표현하는 비선형 자료구조 1. Stack 2. Graph 3. Queue 4. Heap 정답 2번 · 정답은 Graph입니다. 정점과 간선으로 임의의 연결 관계를 표현하는 비선형 자료구조
IPQ-004-067 · 3과목 · UNIT 03 · Java 객체지향 · APPLY 47. 다음 상황과 가장 직접적으로 관련된 용어는? — Employee 클래스를 Manager 클래스가 extends 한다. 1. Inheritance 2. Dynamic Binding 3. Overloading 4. Encapsulation 정답 1번 · 이 상황은 Inheritance을 적용한 예입니다. 기존 클래스의 속성과 메서드를 하위 클래스가 물려받아 확장하는 개념
IPQ-004-055 · 3과목 · UNIT 02 · C 포인터·배열 · APPLY 48. 다음 상황과 가장 직접적으로 관련된 용어는? — 함수에 배열 a를 넘길 때 첫 원소 주소가 전달되는 형태로 사용된다. 1. Structure Pointer 2. Dereference 연산자 3. Array Decay 4. Pointer Arithmetic 정답 3번 · 이 상황은 Array Decay을 적용한 예입니다. 많은 표현식에서 배열 이름이 첫 번째 요소를 가리키는 포인터처럼 변환되는 성질
IPQ-004-006 · 3과목 · UNIT 03 · Java · CORE 49. Overloading의 핵심은? 1. 같은 이름이지만 매개변수 목록이 다르다 2. 반드시 상속이 필요하다 3. 실행시간에만 결정된다 4. 반환형만 달라도 된다 정답 1번 · Overload는 같은 이름에 서로 다른 parameter list를 둡니다.
IPQ-004-015 · 3과목 · UNIT 05 · OS · CORE 50. 가상메모리에서 Page Fault는 언제 발생하는가? 1. 참조 페이지가 현재 물리메모리에 없을 때 2. CPU가 꺼질 때만 3. Network가 끊길 때 4. Compiler 오류 시 정답 1번 · 필요한 page가 memory에 없으면 page fault가 발생해 보조기억장치에서 적재할 수 있습니다.
IPQ-004-177 · 3과목 · UNIT 05 · 메모리·저장장치 · CORE 51. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 같은 데이터를 두 개 이상의 Disk에 복제하는 Mirroring 기반 RAID 1. RAID 1 2. Paging 3. Page Fault 4. LRU 정답 1번 · 정답은 RAID 1입니다. 같은 데이터를 두 개 이상의 Disk에 복제하는 Mirroring 기반 RAID
IPQ-004-080 · 3과목 · UNIT 03 · Java 객체지향 · ADVANCED 52. 다음 중 'Dynamic Binding'이 가장 직접적으로 적용된 상황은? 1. Employee 클래스를 Manager 클래스가 extends 한다. 2. A 타입 변수에 B 객체를 담고 f()를 호출하면 B가 재정의한 f가 실행된다. 3. 필드를 private로 두고 메서드를 통해 값을 변경한다. 4. 부모의 draw 메서드를 자식 Circle이 자신에게 맞게 다시 구현한다. 정답 2번 · Dynamic Binding의 대표 적용 상황은 다음과 같습니다: A 타입 변수에 B 객체를 담고 f()를 호출하면 B가 재정의한 f가 실행된다.
IPQ-002-029 · 3과목 · UNIT 01 · 자료구조 · CORE 53. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 하나의 Root에서 부모-자식 관계로 계층 구조를 표현하는 비선형 자료구조 1. Graph 2. Stack 3. Heap 4. Tree 정답 4번 · 정답은 Tree입니다. 하나의 Root에서 부모-자식 관계로 계층 구조를 표현하는 비선형 자료구조
IPQ-004-079 · 3과목 · UNIT 03 · Java 객체지향 · APPLY 54. 다음 상황과 가장 직접적으로 관련된 용어는? — A 타입 변수에 B 객체를 담고 f()를 호출하면 B가 재정의한 f가 실행된다. 1. Encapsulation 2. Inheritance 3. Overloading 4. Dynamic Binding 정답 4번 · 이 상황은 Dynamic Binding을 적용한 예입니다. Override된 인스턴스 메서드 호출이 실행 시 실제 객체 타입에 따라 결정되는 특성
IPQ-004-090 · 3과목 · UNIT 03 · Java 예외·인터페이스 · CORE 55. 'throw'에 대한 설명으로 가장 적절한 것은? 1. 코드에서 예외 객체를 직접 발생시키는 키워드 2. 예외 발생 여부와 관계없이 자원 정리 같은 마무리 작업을 수행하는 블록 3. 구현 클래스가 따라야 할 동작 계약을 정의하는 추상 타입 4. 예외가 발생할 수 있는 코드를 실행하고 발생한 예외를 처리하는 구문 정답 1번 · throw: 코드에서 예외 객체를 직접 발생시키는 키워드
IPQ-004-020 · 3과목 · UNIT 06 · Network · CORE 56. HTTP의 기본 역할에 가장 가까운 것은? 1. Web resource 요청·응답 프로토콜 2. Routing protocol 3. File System 4. Memory manager 정답 1번 · HTTP는 Web에서 request/response 메시지를 교환하는 application protocol입니다.
IPQ-004-140 · 3과목 · UNIT 05 · 프로세스·스레드 · ADVANCED 57. 다음 중 'Semaphore'이 가장 직접적으로 적용된 상황은? 1. 웹 서버 Process 안에서 여러 요청을 동시에 처리하는 실행 흐름을 둔다. 2. 브라우저와 편집기가 각각 별도 실행 단위로 메모리를 사용한다. 3. 동시에 DB 연결을 사용할 수 있는 Thread 수를 제한한다. 4. 여러 Thread가 같은 잔액 변수에 갱신 연산을 수행하는 구간을 보호한다. 정답 3번 · Semaphore의 대표 적용 상황은 다음과 같습니다: 동시에 DB 연결을 사용할 수 있는 Thread 수를 제한한다.
IPQ-002-024 · 3과목 · UNIT 01 · 자료구조 · ADVANCED 58. 다음 중 'Stack'이 가장 직접적으로 적용된 상황은? 1. 파일 시스템의 폴더 계층을 노드 관계로 표현한다. 2. 우선순위 큐에서 최댓값이나 최솟값을 빠르게 꺼낸다. 3. 프린터 작업을 요청된 순서대로 처리한다. 4. 함수 호출 복귀 주소나 괄호 검사에 마지막에 넣은 항목부터 꺼낸다. 정답 4번 · Stack의 대표 적용 상황은 다음과 같습니다: 함수 호출 복귀 주소나 괄호 검사에 마지막에 넣은 항목부터 꺼낸다.
IPQ-004-075 · 3과목 · UNIT 03 · Java 객체지향 · APPLY 59. 다음 상황과 가장 직접적으로 관련된 용어는? — sum(int,int)와 sum(double,double)을 같은 클래스에 둔다. 1. Overloading 2. Overriding 3. Encapsulation 4. Inheritance 정답 1번 · 이 상황은 Overloading을 적용한 예입니다. 같은 이름의 메서드를 매개변수 목록을 다르게 여러 개 정의하는 것
IPQ-004-154 · 3과목 · UNIT 05 · 스케줄링·Deadlock · CORE 60. 'Priority Scheduling'에 대한 설명으로 가장 적절한 것은? 1. 우선순위 값에 따라 실행 대상을 선택하는 스케줄링 2. 각 Process에 Time Quantum을 주고 순환하며 CPU를 배정하는 선점 방식 3. CPU Burst가 가장 짧은 작업을 우선 실행하는 스케줄링 4. 여러 Process가 서로가 가진 자원을 원형으로 기다리는 Deadlock 필요조건 정답 1번 · Priority Scheduling: 우선순위 값에 따라 실행 대상을 선택하는 스케줄링
IPQ-005-147 · 4과목 · UNIT 02 · Secure Coding · APPLY 61. 다음 상황과 가장 직접적으로 관련된 용어는? — 게시글 내용을 HTML에 표시할 때 특수문자를 안전하게 Encoding한다. 1. Parameterized Query 2. Output Encoding 3. Safe Error Handling 4. Least Privilege 정답 2번 · 이 상황은 Output Encoding을 적용한 예입니다. 사용자 입력이 HTML·JavaScript 등 실행 가능한 Code로 해석되지 않도록 출력 문맥에 맞게 변환하는 기법
IPQ-005-086 · 4과목 · UNIT 03 · 보안 기본·접근통제 · CORE 62. 'Integrity'에 대한 설명으로 가장 적절한 것은? 1. 인가되지 않은 주체에게 정보가 노출되지 않도록 하는 기밀성 2. 정보가 비인가 상태로 변경·삭제되지 않고 정확하게 유지되도록 하는 무결성 3. 인가된 사용자가 필요할 때 시스템과 정보에 접근할 수 있도록 하는 가용성 4. 사용자나 시스템이 주장하는 Identity를 확인하는 인증 절차 정답 2번 · Integrity: 정보가 비인가 상태로 변경·삭제되지 않고 정확하게 유지되도록 하는 무결성
IPQ-005-136 · 4과목 · UNIT 02 · 웹 공격 · ADVANCED 63. 다음 중 'Path Traversal'이 가장 직접적으로 적용된 상황은? 1. 로그인 입력을 문자열 결합 Query에 넣어 WHERE 조건을 변조한다. 2. ../../ 같은 문자열로 상위 Directory의 설정 File을 읽으려 한다. 3. 사용자 입력이 Shell 명령문에 직접 연결되어 추가 명령이 실행된다. 4. 게시글에 Script를 삽입해 다른 사용자의 Browser에서 실행되게 한다. 정답 2번 · Path Traversal의 대표 적용 상황은 다음과 같습니다: ../../ 같은 문자열로 상위 Directory의 설정 File을 읽으려 한다.
IPQ-005-150 · 4과목 · UNIT 02 · Secure Coding · CORE 64. 'Least Privilege'에 대한 설명으로 가장 적절한 것은? 1. 업무 수행에 필요한 최소 범위의 권한만 부여하는 보안 원칙 2. 사용자 입력이 HTML·JavaScript 등 실행 가능한 Code로 해석되지 않도록 출력 문맥에 맞게 변환하는 기법 3. SQL 구조와 사용자 입력 데이터를 분리해 Injection 위험을 줄이는 기법 4. 내부 구조나 민감정보를 노출하지 않으면서 오류를 기록·처리하는 방식 정답 1번 · Least Privilege: 업무 수행에 필요한 최소 범위의 권한만 부여하는 보안 원칙
IPQ-005-096 · 4과목 · UNIT 03 · 보안 기본·접근통제 · ADVANCED 65. 다음 중 'Authentication'이 가장 직접적으로 적용된 상황은? 1. 전자문서 내용이 전송 중 변조되지 않았는지 확인한다. 2. 로그인한 직원에게 부서별 조회·수정 권한을 부여한다. 3. 권한 없는 사용자가 의료기록 내용을 읽지 못하게 한다. 4. 비밀번호·인증서·생체정보로 로그인 사용자가 누구인지 확인한다. 정답 4번 · Authentication의 대표 적용 상황은 다음과 같습니다: 비밀번호·인증서·생체정보로 로그인 사용자가 누구인지 확인한다.
IPQ-005-163 · 4과목 · UNIT 01 · 가상화·Cloud · APPLY 66. 다음 상황과 가장 직접적으로 관련된 용어는? — 한 물리 Server에서 Windows와 Linux Guest OS를 각각 실행한다. 1. SaaS 2. PaaS 3. Container 4. Virtual Machine 정답 4번 · 이 상황은 Virtual Machine을 적용한 예입니다. Hypervisor 위에서 독립 Guest OS를 포함해 동작하는 가상 컴퓨터 환경
IPQ-005-149 · 4과목 · UNIT 02 · Secure Coding · CORE 67. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 업무 수행에 필요한 최소 범위의 권한만 부여하는 보안 원칙 1. Least Privilege 2. Output Encoding 3. Parameterized Query 4. Input Validation 정답 1번 · 정답은 Least Privilege입니다. 업무 수행에 필요한 최소 범위의 권한만 부여하는 보안 원칙
IPQ-005-130 · 4과목 · UNIT 02 · 웹 공격 · CORE 68. 'CSRF'에 대한 설명으로 가장 적절한 것은? 1. 입력값을 통해 의도하지 않은 SQL 구조를 실행시키는 공격 2. 인증된 사용자의 Browser를 이용해 사용자가 의도하지 않은 요청을 보내게 하는 공격 3. 악성 Script가 신뢰된 Web Page의 Browser Context에서 실행되게 하는 공격 4. 경로 입력을 조작해 허용된 Directory 밖의 File에 접근하려는 공격 정답 2번 · CSRF: 인증된 사용자의 Browser를 이용해 사용자가 의도하지 않은 요청을 보내게 하는 공격
IPQ-005-112 · 4과목 · UNIT 03 · 암호·전자서명 · ADVANCED 69. 다음 중 'Cryptographic Hash Function'이 가장 직접적으로 적용된 상황은? 1. 문서 Digest에 서명해 누가 서명했고 변조되지 않았는지 검증한다. 2. 파일 Digest를 비교해 내용 변조 여부를 확인한다. 3. 송신자와 수신자가 미리 공유한 Key로 대용량 데이터를 빠르게 암복호화한다. 4. 각 계정에 다른 Random 값을 붙여 Hash한 뒤 함께 저장한다. 정답 2번 · Cryptographic Hash Function의 대표 적용 상황은 다음과 같습니다: 파일 Digest를 비교해 내용 변조 여부를 확인한다.
IPQ-005-099 · 4과목 · UNIT 03 · 보안 기본·접근통제 · APPLY 70. 다음 상황과 가장 직접적으로 관련된 용어는? — 로그인한 직원에게 부서별 조회·수정 권한을 부여한다. 1. Integrity 2. Authentication 3. Authorization 4. Availability 정답 3번 · 이 상황은 Authorization을 적용한 예입니다. 인증된 주체가 어떤 자원과 기능을 사용할 수 있는지 권한을 결정하는 절차
IPQ-005-046 · 4과목 · UNIT 01 · 프로젝트 관리 · CORE 71. 'Schedule Management'에 대한 설명으로 가장 적절한 것은? 1. Project에 포함할 작업과 산출물의 범위를 정의·통제하는 관리 영역 2. 불확실한 사건의 발생 가능성과 영향을 식별·분석·대응하는 활동 3. 예산을 계획·추정·통제해 Project 비용 목표를 관리하는 영역 4. 활동 순서와 기간을 계획하고 Project 일정 진행을 통제하는 관리 영역 정답 4번 · Schedule Management: 활동 순서와 기간을 계획하고 Project 일정 진행을 통제하는 관리 영역
IPQ-005-108 · 4과목 · UNIT 03 · 암호·전자서명 · ADVANCED 72. 다음 중 'Asymmetric Encryption'이 가장 직접적으로 적용된 상황은? 1. 수신자의 공개키로 암호화하고 대응하는 개인키로 복호화한다. 2. 송신자와 수신자가 미리 공유한 Key로 대용량 데이터를 빠르게 암복호화한다. 3. 파일 Digest를 비교해 내용 변조 여부를 확인한다. 4. 문서 Digest에 서명해 누가 서명했고 변조되지 않았는지 검증한다. 정답 1번 · Asymmetric Encryption의 대표 적용 상황은 다음과 같습니다: 수신자의 공개키로 암호화하고 대응하는 개인키로 복호화한다.
IPQ-005-167 · 4과목 · UNIT 01 · 가상화·Cloud · APPLY 73. 다음 상황과 가장 직접적으로 관련된 용어는? — 같은 Linux Kernel 위에서 여러 Application Container를 빠르게 실행한다. 1. Virtual Machine 2. IaaS 3. Container 4. PaaS 정답 3번 · 이 상황은 Container을 적용한 예입니다. Host OS Kernel을 공유하면서 Application과 의존성을 격리해 실행하는 환경
IPQ-005-124 · 4과목 · UNIT 02 · 웹 공격 · ADVANCED 74. 다음 중 'SQL Injection'이 가장 직접적으로 적용된 상황은? 1. 사용자 입력이 Shell 명령문에 직접 연결되어 추가 명령이 실행된다. 2. 게시글에 Script를 삽입해 다른 사용자의 Browser에서 실행되게 한다. 3. 로그인 상태의 피해자가 악성 페이지를 열자 송금 요청이 자동 전송된다. 4. 로그인 입력을 문자열 결합 Query에 넣어 WHERE 조건을 변조한다. 정답 4번 · SQL Injection의 대표 적용 상황은 다음과 같습니다: 로그인 입력을 문자열 결합 Query에 넣어 WHERE 조건을 변조한다.
IPQ-005-168 · 4과목 · UNIT 01 · 가상화·Cloud · ADVANCED 75. 다음 중 'Container'이 가장 직접적으로 적용된 상황은? 1. 같은 Linux Kernel 위에서 여러 Application Container를 빠르게 실행한다. 2. 사용자가 Browser로 Mail·CRM Application을 바로 이용한다. 3. 개발자는 Server OS 관리보다 Code 배포와 Data에 집중한다. 4. 사용자가 VM의 Guest OS와 Application을 직접 관리한다. 정답 1번 · Container의 대표 적용 상황은 다음과 같습니다: 같은 Linux Kernel 위에서 여러 Application Container를 빠르게 실행한다.
IPQ-005-084 · 4과목 · UNIT 03 · 보안 기본·접근통제 · ADVANCED 76. 다음 중 'Confidentiality'이 가장 직접적으로 적용된 상황은? 1. 권한 없는 사용자가 의료기록 내용을 읽지 못하게 한다. 2. 장애 시 이중화 서버로 전환해 서비스를 계속 제공한다. 3. 비밀번호·인증서·생체정보로 로그인 사용자가 누구인지 확인한다. 4. 전자문서 내용이 전송 중 변조되지 않았는지 확인한다. 정답 1번 · Confidentiality의 대표 적용 상황은 다음과 같습니다: 권한 없는 사용자가 의료기록 내용을 읽지 못하게 한다.
IPQ-005-134 · 4과목 · UNIT 02 · 웹 공격 · CORE 77. 'Path Traversal'에 대한 설명으로 가장 적절한 것은? 1. 인증된 사용자의 Browser를 이용해 사용자가 의도하지 않은 요청을 보내게 하는 공격 2. 경로 입력을 조작해 허용된 Directory 밖의 File에 접근하려는 공격 3. 입력값을 통해 의도하지 않은 SQL 구조를 실행시키는 공격 4. 입력을 통해 OS Command Interpreter가 의도하지 않은 명령을 실행하게 하는 공격 정답 2번 · Path Traversal: 경로 입력을 조작해 허용된 Directory 밖의 File에 접근하려는 공격
IPQ-005-045 · 4과목 · UNIT 01 · 프로젝트 관리 · CORE 78. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 활동 순서와 기간을 계획하고 Project 일정 진행을 통제하는 관리 영역 1. Scope Management 2. Critical Path 3. Cost Management 4. Schedule Management 정답 4번 · 정답은 Schedule Management입니다. 활동 순서와 기간을 계획하고 Project 일정 진행을 통제하는 관리 영역
IPQ-005-185 · 4과목 · UNIT 05 · 백업·DR·가용성 · CORE 79. 다음 설명에 해당하는 용어로 가장 적절한 것은? — 직전 Backup 이후 변경된 데이터만 저장하는 방식 1. RTO 2. Incremental Backup 3. Differential Backup 4. Full Backup 정답 2번 · 정답은 Incremental Backup입니다. 직전 Backup 이후 변경된 데이터만 저장하는 방식
IPQ-005-122 · 4과목 · UNIT 02 · 웹 공격 · CORE 80. 'SQL Injection'에 대한 설명으로 가장 적절한 것은? 1. 경로 입력을 조작해 허용된 Directory 밖의 File에 접근하려는 공격 2. 입력값을 통해 의도하지 않은 SQL 구조를 실행시키는 공격 3. 인증된 사용자의 Browser를 이용해 사용자가 의도하지 않은 요청을 보내게 하는 공격 4. 악성 Script가 신뢰된 Web Page의 Browser Context에서 실행되게 하는 공격 정답 2번 · SQL Injection: 입력값을 통해 의도하지 않은 SQL 구조를 실행시키는 공격