정보처리기사 필기 기출문제복원 (2021-05-15)

정보처리기사 2021-05-15 필기 기출문제 해설

이 페이지는 정보처리기사 2021-05-15 기출문제를 CBT 방식으로 풀이하고 정답 및 회원들의 상세 해설을 확인할 수 있는 페이지입니다.

정보처리기사
(2021-05-15 기출문제)

목록

1과목: 소프트웨어 설계

1. 시스템의 구성요소로 볼 수 없는 것은?

  1. Process
  2. Feedback
  3. Maintenance
  4. Control
(정답률: 62%)
  • 시스템의 기본 구성요소는 입력, Process(처리), 출력, Control(제어), Feedback(피드백)으로 이루어집니다. Maintenance(유지보수)는 시스템 구축 후 운영 단계에서 수행하는 활동이며 구성요소에는 포함되지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

2. 유스케이스(Usecase)에 대한 설명 중 옳은 것은?

  1. 유스케이스 다이어그램은 개발자의 요구를 추출하고 분석하기 위해 주로 사용한다.
  2. 액터는 대상 시스템과 상호 작용하는 사람이나 다른 시스템에 의한 역할이다.
  3. 사용자 액터는 본 시스템과 데이터를 주고받는 연동 시스템을 의미한다.
  4. 연동의 개념은 일방적으로 데이터를 파일이나 정해진 형식으로 넘겨주는 것을 의미한다.
(정답률: 68%)
  • 액터는 시스템 외부에서 대상 시스템과 상호 작용하는 사람이나 외부 시스템의 역할을 의미합니다.

    오답 노트

    개발자의 요구 추출: 사용자의 요구를 추출하고 분석하는 것입니다.
    사용자 액터: 기능을 요구하거나 결과를 통보받는 대상이며, 연동 시스템은 시스템 액터에 해당합니다.
    연동의 개념: 일방적이 아닌 양방향 상호작용을 의미합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

3. 요구사항 개발 프로세스의 순서로 옳은 것은?

  1. ㉠ - ㉡ - ㉢ - ㉣
  2. ㉠ - ㉢ - ㉡ - ㉣
  3. ㉠ - ㉣ - ㉡ - ㉢
  4. ㉠ - ㉡ - ㉣ - ㉢
(정답률: 79%)
  • 요구사항 개발 프로세스는 사용자의 요구를 이끌어내고 이를 구체화하여 검증하는 순서로 진행됩니다.
    도출(Elicitation) $\rightarrow$ 분석(Analysis) $\rightarrow$ 명세(Specification) $\rightarrow$ 확인(Validation) 순으로 진행되는 것이 옳습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

4. 객체지향 기법에서 같은 클래스에 속한 각각의 객체를 의미하는 것은?

  1. instance
  2. message
  3. method
  4. module
(정답률: 76%)
  • 인스턴스(instance)는 클래스라는 설계도를 바탕으로 메모리에 실제로 구현된 개별 객체를 의미합니다.

    오답 노트

    message: 객체에 내리는 수행 명령
    method: 객체 내부에 정의된 함수
    module: 관련 함수, 클래스, 변수들의 묶음
  • message는 객체에게 어떤 행위를 하도록 지시하는 명령(11번과 같은 문항)
    method는 객체에 소속된 함수를 의미
    module은 실행코드와 객체들(함수, 클래스, 변수)의 묶음
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

5. 객체지향 설계에서 객체가 가지고 있는 속성과 오퍼레이션의 일부를 감추어서 객체의 외부에서는 접근이 불가능하게 하는 개념은? (문제 오류로 가답안 발표시 3번으로 발표되었지만 확정 답안 발표시 2, 3번이 정답처리 되었습니다. 여기서는 가답안인 3번을 누르면 정답 처리 됩니다.)

  1. 조직화(Organizing)
  2. 캡슐화(Encapsulation)
  3. 정보은닉(Infomation Hiding)
  4. 구조화(Structuralization)
(정답률: 89%)
  • 객체의 내부 구현 상세 내용을 외부로부터 감추어 데이터의 무결성을 보호하고 직접적인 접근을 제한하는 개념을 정보은닉이라고 합니다. 이는 캡슐화(Encapsulation)를 통해 구현됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

6. GoF (Gangs of Four) 디자인 패턴에 대한 설명으로 틀린 것은?

  1. factory method pattern은 상위클래스에서 객체를 생성하는 인터페이스를 정의하고, 하위클래스에서 인스턴스를 생성하도록 하는 방식이다.
  2. prototype pattern은 prototype을 먼저 생성하고 인스턴스를 복제하여 사용하는 구조이다.
  3. bridge pattern은 기존에 구현되어 있는 클래스에 기능 발생 시 기존 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할을 한다.
  4. mediator pattern은 객체간의 통제와 지시의 역할을 하는 중재자를 두어 객체지향의 목표를 달성하게 해준다.
(정답률: 55%)
  • bridge pattern은 구현부에서 추상층을 분리하여 각각 독립적으로 확장 가능하게 만드는 패턴입니다.

    오답 노트

    기존 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할: adapter pattern에 대한 설명입니다.
  • Bridge Pattern (브릿지 패턴) 은 구현과 추상화를 분리하고 , 독립적인 확장이 가능합니다. 단일책임 원칙 준수 즉 추상화와 구현의 분리입니다.
  • bridge pattern은 구현부에서 추상층을 분리하여 각자 독립적으로 확장이 가능하게 하는 패턴이다

    3은 Adapter pattern의 설명
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

7. 요구사항 분석이 어려운 이유가 아닌 것은?

  1. 개발자와 사용자 간의 지식이나 표현의 차이가 커서 상호 이해가 쉽지 않다.
  2. 사용자의 요구는 예외가 거의 없어 열거와 구조화가 어렵지 않다.
  3. 사용자의 요구사항이 모호하고 불명확하다.
  4. 소프트웨어 개발 과정 중에 요구사항이 계속 변할 수 있다.
(정답률: 90%)
  • 요구사항 분석이 어려운 이유는 사용자의 요구가 매우 가변적이고 복잡하기 때문입니다.
    사용자의 요구는 예외가 많아 이를 모두 열거하고 구조화하는 것이 매우 어렵습니다.

    오답 노트

    개발자와 사용자 간의 지식 차이, 요구사항의 모호함, 개발 과정 중의 지속적인 변경은 모두 분석을 어렵게 만드는 실제 요인입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

8. 소프트웨어 아키텍처 설계에서 시스템 품질속성이 아닌 것은?

  1. 가용성 (Availability)
  2. 독립성 (Isolation)
  3. 변경 용이성 (Modifiability)
  4. 사용성(Usability)
(정답률: 56%)
  • 시스템 품질 속성은 가용성, 변경 용이성, 성능, 보안성, 사용성, 시험 용이성 등 6가지 핵심 속성으로 구성됩니다. 독립성은 시스템 품질 속성에 해당하지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

9. 다음 설명에 해당하는 시스템으로 옳은 것은?

  1. 연계 서버
  2. 중계 서버
  3. 송신 시스템
  4. 수신 시스템
(정답률: 78%)
  • 제시된 이미지 의 설명처럼, 연계할 데이터를 데이터베이스와 애플리케이션으로부터 연계 테이블 또는 파일 형태로 생성하여 송신하는 시스템은 송신 시스템입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

10. CASE(Computer-Aided Software Engineering)의 원천 기술이 아닌 것은?

  1. 구조적 기법
  2. 프로토타이핑 기술
  3. 정보 저장소 기술
  4. 일괄처리 기술
(정답률: 54%)
  • CASE의 원천 기술은 구조적 기법, 프로토타이핑 기술, 정보 저장소 기술, 자동 프로그래밍 기술, 분산 처리 기술 등이 있습니다. 일괄처리 기술은 데이터를 모아 한 번에 처리하는 방식으로 CASE의 원천 기술에 해당하지 않습니다.
  • CASE의 원천 기술은
    구조적 기법, 프로토타이핑 기술, 자동프로그래밍 기술, 정보 저장소 기술, 분산 처리 기술
    이 있다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

11. 객체에게 어떤 행위를 하도록 지시하는 명령은?

  1. Class
  2. Package
  3. Object
  4. Message
(정답률: 87%)
  • 객체 지향 프로그래밍에서 객체에게 특정 행위를 수행하도록 요청하는 명령을 Message라고 합니다.

    오답 노트

    Class: 객체를 생성하기 위한 설계도
    Package: 클래스들의 집합을 묶어두는 물리적 단위
    Object: 클래스를 통해 메모리에 실제 구현된 실체
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

12. 서브시스템이 입력 데이터를 받아 처리하고 결과를 다른 시스템에 보내는 작업이 반복되는 아키텍처 스타일은?

  1. 클라이언트 서버 구조
  2. 계층 구조
  3. MVC 구조
  4. 파이프 필터 구조
(정답률: 73%)
  • 파이프 필터 구조는 파이프를 통해 데이터를 전달받아 필터에서 처리하고, 그 결과를 다시 파이프로 전송하는 작업이 반복되는 아키텍처 스타일입니다.

    오답 노트

    클라이언트 서버 구조: 서비스 요청자와 제공자 간의 구조
    계층 구조: 모듈을 계층 단위로 구성하여 상하 관계로 표현
    MVC 구조: 모델, 뷰, 컨트롤러로 기능을 분리한 구조
  • 1. 클라이언트 서버 구조 : 컴포넌트가 다른 컴포넌트에게 서비스를 요청. 데이터가 여러 컴포넌트를 거치며 처리.
    2. 계층구조 : 모듈들로 응집된 계층 단위로 SW를 구성. 계층간에 사용 가능의 관계로 표현
    3. MVC 구조 : 모델-뷰-컨트롤러, 기능을 분리한 아키텍처
    4. 파이프 필터 : 파이프를 통해 받은 데이터를 변경시키고 그 결과를 파이프로 전송
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

13. 럼바우(Rumbaugh)의 객체지향 분석에서 사용하는 분석 활동으로 옳은 것은?

  1. 객체 모델링, 동적 모델링, 정적 모델링
  2. 객체 모델링, 동적 모델링, 기능 모델링
  3. 동적 모델링, 기능 모델링, 정적 모델링
  4. 정적 모델링, 객체 모델링, 기능 모델링
(정답률: 92%)
  • 럼바우(Rumbaugh)의 객체지향 분석 방법론은 객체 모델링, 동적 모델링, 기능 모델링의 세 가지 분석 활동으로 구성됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

14. UML 다이어그램이 아닌 것은?

  1. 액티비티 다이어그램(Activity diagram)
  2. 절차 다이어그램(Procedural diagram)
  3. 클래스 다이어그램(Class diagram)
  4. 시퀀스 다이어그램(Sequence diagram)
(정답률: 55%)
  • UML 다이어그램은 구조적 다이어그램(클래스, 객체, 컴포넌트, 배치 등)과 행위 다이어그램(유스케이스, 시퀀스, 활동 등)으로 구성되며, 절차 다이어그램은 UML 표준 다이어그램에 포함되지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

15. UML 모델에서 한 객체가 다른 객체에게 오퍼레이션을 수행하도록 지정하는 의미적 관계로 옳은 것은?

  1. Dependency
  2. Realization
  3. Generalization
  4. Association
(정답률: 44%)
  • Realization은 한 객체가 다른 객체에 의해 오퍼레이션을 수행하도록 지정하는 실체화 관계를 의미합니다.

    오답 노트

    Dependency: 한 사물의 명세 변경이 다른 사물에 영향을 주는 의존 관계
    Generalization: 일반적인 사물과 특수한 사물 사이의 'is-a' 관계
    Association: 두 사물 간의 구조적 연결을 나타내는 'has-a' 관계
  • Dependency(의존) : 한 사물의 명세서가 바뀌면 그것을 사용하는 다른 사물에게 영향을 끼치는 것을 말합니다 (Cascade 생각하셈)
    Realization(실체화) : 한 객체가 다른 객체에 의해 오퍼레이션을 수행하도록 지정
    Generalization(일반화) : 일반화된 사물과 좀 더 특수화된 사물 사이의 관계를 말합니다.('is-a')관계
    Association(연관) : 두 사물간의 구조적 관계로, 어느 한 사물 객체가 다른 사물 객체와 연결되어 있음을 말함 ('has-a')관계라고도 합니다
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

16. 다음 중 상위 CASE 도구가 지원하는 주요기능으로 볼 수 없는 것은?

  1. 모델들 사이의 모순검사 기능
  2. 전체 소스코드 생성 기능
  3. 모델의 오류검증 기능
  4. 자료흐름도 작성 기능
(정답률: 71%)
  • 상위 CASE는 요구 분석과 설계 단계를 지원하는 도구로, 모델 간 모순 검사, 오류 검증, 자료흐름도 작성을 수행합니다. 반면 전체 소스코드 생성 기능은 코드를 작성하고 테스트하는 하위 CASE의 주요 기능입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

17. 요구사항 관리 도구의 필요성으로 틀린 것은?

  1. 요구사항 변경으로 인한 비용 편익 분석
  2. 기존 시스템과 신규 시스템의 성능 비교
  3. 요구사항 변경의 추적
  4. 요구사항 변경에 따른 영향 평가
(정답률: 60%)
  • 요구사항 관리 도구는 변경 사항의 추적, 영향 평가, 비용 편익 분석 등 요구사항의 변경 관리에 집중합니다. 기존 시스템과 신규 시스템의 성능 비교는 요구사항 관리 단계가 아닌 개발 및 설계 등 구현 단계에서 수행하는 작업입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

18. 애자일 개발 방법론이 아닌 것은?

  1. 스크럼(Scrum)
  2. 익스트림 프로그래밍(XP, eXtreme Programming)
  3. 기능 주도 개발(FDD, Feature Driven Development)
  4. 하둡(Hadoop)
(정답률: 85%)
  • 하둡(Hadoop)은 분산 환경에서 빅 데이터를 저장하고 처리하기 위한 자바 기반의 오픈 소스 프레임워크이며, 소프트웨어 개발 방법론이 아닙니다. 스크럼, XP, FDD는 모두 대표적인 애자일 방법론에 해당합니다.
  • 애자일 개발 방법론
    익스트림 프로그래밍(XP , Extreme Programming)
    스크럼크리스털 패밀리
    기능 주도 개발(FDD , Feature-Driven Development)
    적응형 소프트웨어 개발 (ASD , Adaptive Software Development(
    익스트림 모델링

    하둡(Hadoop)
    분산 환경에서 빅 데이터를 저장하고 처리할 수 있는 자바 기반의 오픈 소스 프레임 워크.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

19. GoF(Gangs of Four) 디자인 패턴 중 생성패턴으로 옳은 것은?

  1. singleton pattern
  2. adapter pattern
  3. decorator pattern
  4. state pattern
(정답률: 74%)
  • singleton pattern은 클래스의 인스턴스가 단 하나만 생성되도록 제한하는 대표적인 생성 패턴입니다.

    오답 노트

    adapter pattern: 구조 패턴
    decorator pattern: 구조 패턴
    state pattern: 행위 패턴
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

20. 사용자 인터페이스(UI)의 특징으로 틀린 것은?

  1. 구현하고자 하는 결과의 오류를 최소화한다.
  2. 사용자의 편의성을 높임으로써 작업시간을 증가시킨다.
  3. 막연한 작업 기능에 대해 구체적인 방법을 제시하여 준다.
  4. 사용자 중심의 상호 작용이 되도록 한다.
(정답률: 90%)
  • 사용자 인터페이스(UI)는 사용자의 편의성을 높여 작업 시간을 단축시키는 것이 핵심 목적입니다. 따라서 사용자의 편의성을 높임으로써 작업시간을 증가시킨다는 설명은 틀린 내용입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

2과목: 소프트웨어 개발

21. 힙 정렬(Heap Sort)에 대한 설명으로 틀린것은?

  1. 정렬할 입력 레코드들로 힙을 구성하고 가장 큰 키 값을 갖는 루트 노드를 제거하는 과정을 반복하여 정렬하는 기법이다.
  2. 평균 수행 시간은 O(nlog2n)이다.
  3. 완전 이진트리(complete binary tree)로 입력자료의 레코드를 구성한다.
  4. 최악의 수행 시간은 O(2n4)이다.
(정답률: 75%)
  • 최악의 수행 시간 복잡도는 O(n^2) 입니다.
  • 힙 정렬은 최적, 평균, 최악의 경우 모두 수행 시간이 $O(n \log_{2} n)$으로 동일한 효율적인 정렬 알고리즘입니다. 따라서 최악의 수행 시간이 $O(2n^{4})$라는 설명은 틀린 것입니다.
  • 힙정렬은 시간복잡도가 O(n log n)으로 평균과 최악이 동일합니다.

    선형 탐색(Linear Search): O(n)
    이진 탐색(Binary Search): O(log n)
    버블 정렬(Bubble Sort): O(n²)
    병합 정렬(Merge Sort): O(n log n)
    힙 정렬(Heap Sort): O(n log n)
    퀵 정렬(Quick Sort): O(n log n) O(n²) (최악)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

22. 다음 중 단위 테스트를 통해 발견할 수 있는 오류가 아닌 것은?

  1. 알고리즘 오류에 따른 원치 않는 결과
  2. 탈출구가 없는 반복문의 사용
  3. 모듈 간의 비정상적 상호작용으로 인한 원치 않는 결과
  4. 틀린 계산 수식에 의한 잘못된 결과
(정답률: 67%)
  • 단위 테스트는 개별 모듈이 독립적으로 정확히 작동하는지 검증하는 단계이므로, 모듈 간의 상호작용으로 발생하는 오류는 발견할 수 없습니다.

    오답 노트

    모듈 간의 비정상적 상호작용: 통합 테스트(Integration Test) 단계에서 발견하는 오류
  • 단위 테스트는 테스트 코드가 독립적이어야 함으로 각 모듈간의 상호작용은 해당되지 않는다

    3번 내용은 통합 테스트(Integration Test)에서 발견할 수 있는 오류이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

23. 다음 설명의 소프트웨어 테스트의 기본원칙은?

  1. 살충제 패러독스
  2. 결함 집중
  3. 오류 부재의 궤변
  4. 완벽한 테스팅은 불가능
(정답률: 83%)
  • 의 설명처럼 파레토 법칙이 적용되어, 애플리케이션 결함의 대부분이 소수의 특정 모듈에 집중되어 존재한다는 원칙은 결함 집중입니다.

    오답 노트

    살충제 패러독스: 동일 테스트 반복 시 새로운 결함 발견 불가
    오류 부재의 궤변: 요구사항 미충족 시 오류 제거만으로는 품질 보장 불가
    완벽한 테스팅은 불가능: 모든 입력값과 경로를 테스트하는 것은 현실적으로 불가능
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

24. 버전 관리 항목 중 저장소에 새로운 버전의 파일로 갱신하는 것을 의미하는 용어는?

  1. 형상 감사(Configuration Audit)
  2. 롤백 (Rollback)
  3. 단위 테스트(Unit Test)
  4. 체크인(Check-In)
(정답률: 78%)
  • 체크인(Check-In)은 체크아웃하여 수정한 파일을 다시 저장소에 업로드하여 새로운 버전으로 갱신하는 과정을 의미합니다.

    오답 노트

    형상 감사: 기준선의 무결성을 공식적으로 승인하는 작업
    롤백: 오류 발생 시 이전 상태로 되돌리는 작업
    단위 테스트: 개별 모듈의 기능을 검증하는 테스트
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

25. 소프트웨어 테스트와 관련한 설명으로 틀린것은?

  1. 화이트 박스 테스트는 모듈의 논리적인 구조를 체계적으로 점검할 수 있다.
  2. 블랙박스 테스트는 프로그램의 구조를 고려하지 않는다.
  3. 테스트 케이스에는 일반적으로 시험 조건,테스트 데이터, 예상 결과가 포함되어야한다.
  4. 화이트박스 테스트에서 기본 경로(BasisPath)란 흐름 그래프의 시작 노드에서 종료노드까지의 서로 독립된 경로로 싸이클을 허용하지 않는 경로를 말한다.
(정답률: 67%)
  • 화이트박스 테스트의 기본 경로(Basis Path)는 흐름 그래프의 시작 노드에서 종료 노드까지의 독립적인 경로를 의미하며, 이때 사이클은 최대 한 번까지만 지나야 합니다. 따라서 사이클을 허용하지 않는다는 설명은 틀린 것입니다.
  • 본 해설은 비추 누적갯수 초과로 자동 블라인드 되었습니다.
    (AI해설 오류가 많아 비추 2개 이상시 자동 블라인드 됩니다.)
    해설을 보시기 원하시면 클릭해 주세요
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

26. 애플리케이션의 처리량, 응답시간, 경과시간, 자원사용률에 대해 가상의 사용자를 생성하고 테스트를 수행함으로써 성능 목표를 달성하였는지를 확인하는 테스트 자동화 도구는?

  1. 명세 기반 테스트 설계 도구
  2. 코드 기반 테스트 설계 도구
  3. 기능 테스트 수행 도구
  4. 성능 테스트 도구
(정답률: 81%)
  • 가상 사용자를 생성하여 처리량, 응답시간, 자원 사용률 등 성능 목표 달성 여부를 확인하는 도구는 성능 테스트 도구입니다.

    오답 노트

    명세 기반 테스트 설계 도구: 주어진 명세를 테스트 케이스로 구현했는지 확인함
    코드 기반 테스트 설계 도구: 내부 구조 및 복잡도를 검증하는 화이트박스 테스트 목적임
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

27. 소프트웨어 형상 관리에 대한 설명으로 거리가 먼 것은?

  1. 소프트웨어에 가해지는 변경을 제어하고 관리한다.
  2. 프로젝트 계획, 분석서, 설계서, 프로그램, 테스트 케이스 모두 관리 대상이다.
  3. 대표적인 형상관리 도구로 Ant, Maven, Gradle 등이 있다.
  4. 유지 보수 단계뿐만 아니라 개발 단계에도 적용할 수 있다.
(정답률: 71%)
  • 소프트웨어 형상 관리는 개발 전 과정에서 발생하는 변경 사항을 제어하고 관리하는 활동입니다.

    오답 노트

    Ant, Maven, Gradle 등이 있다: 해당 도구들은 형상 관리 도구가 아니라 빌드 자동화 도구임 (형상 관리 도구는 Git, CVS, Subversion 등임)
  • 빌드자동화 도구 : Ant, Maven, Gradle
    형상 관리 도구 : Git, SVN
  • Ant, Maven, Gradle 은 빌드자동화 도구입니다.

    대표적인 형상 관리 도구
    GIT,CVS, Subversion 등
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

28. 디지털 저작권 관리(DRM) 구성 요소가 아닌 것은?

  1. Dataware house
  2. DRM Controller
  3. Packager
  4. Contents Distributor
(정답률: 63%)
  • DRM 구성 요소는 콘텐츠를 암호화하는 패키저, 유통하는 콘텐츠 분배자, 권한을 통제하는 DRM 컨트롤러, 라이선스를 발급하는 클리어링 하우스로 구성됩니다.

    오답 노트

    Dataware house: 의사 결정을 위해 데이터를 공통 형식으로 변환하여 관리하는 데이터베이스임
  • DRM 구성 요소

    클리어링 하우스(Clearing House): 저작권에 대한 사용 권한, 라이선스 발급, 사용량에 따른 관리 등을 수행하는 곳

    콘텐츠 제공자(Contents Provider): 콘텐츠를 제공하는 저작권자

    패키저(Packager): 콘텐츠를 메타 데이터(데이터의 속성 정보를 설명하는 데이터)와 함께 배포 가능한 형태로 묶어 암호화하는 프로그램

    콘텐츠 분배자(Contents Distributor): 암호화된 콘텐츠를 유통하는 곳이나 사람 - ex) 멜론

    콘텐츠 소비자(Customer): 콘텐츠를 구매해서 사용하는 주체 - ex) 멜론 이용자

    DRM 컨트롤러(DRM Controller): 배포된 콘텐츠의 이용 권한을 통제하는 프로그램 - ex) 멜론 플레이어

    보안 컨테이너(Security Container): 콘텐츠 원본을 안전하게 유통하기 위한 전자적 보안 장치

    출처 : https://devinus.tistory.com/19
  • 저작권 관리구성요소]
    - 콘텐츠 분배자: 암호화된 콘텐츠를 유통하는곳/사람
    - 패키저: 콘텐츠를 메타데이터와 함께 배포가능한 형태로 묶어 암호화
    - 클리어링 하우스: 키 관리 및 라이센스 발급 관리
    - DRM 컨트롤러: 배포된 콘텐츠의 이용권한을 통제
    [해설작성자 : 코로그]

    클리어링 하우스(Clearing House) : 디지털 저작권 라이선스의 중개 및 발급을 수행하는 곳, 디지털 저작물의 이용 내역을 근거로 저작권료의 정산 및 분배가 수행된다. Dataware house 아님
    [해설작성자 : 두루루]

    Dataware house는 사용자의 의사 결정에 도움을 주기 위하여 기간시스템의 데이터베이스에 축적된 데이터를 공통의 형식으로 변환해서 관리하는 데이터베이스를 말한다
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

29. 다음 설명의 소프트웨어 버전 관리도구 방식은?

  1. 단일 저장소 방식
  2. 분산 저장소 방식
  3. 공유폴더 방식
  4. 클라이언트·서버 방식
(정답률: 79%)
  • 원격 저장소와 로컬 저장소를 모두 활용하여 개발자 PC에서도 독립적인 버전 관리가 가능하며, 대표적인 도구로 Git이 있는 방식은 분산 저장소 방식입니다.

    오답 노트

    공유폴더 방식: 로컬 컴퓨터의 공유 폴더에 저장하여 관리함
    클라이언트·서버 방식: 중앙 서버에서 모든 버전 관리를 수행하며 서버 장애 시 작업 중단됨
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

30. 블랙박스 테스트를 이용하여 발견할 수 있는 오류가 아닌 것은?

  1. 비정상적인 자료를 입력해도 오류 처리를 수행하지 않는 경우
  2. 정상적인 자료를 입력해도 요구된 기능이 제대로 수행되지 않는 경우
  3. 반복 조건을 만족하는데도 루프 내의 문장이 수행되지 않는 경우
  4. 경계값을 입력할 경우 요구된 출력 결과가 나오지 않는 경우
(정답률: 72%)
  • 블랙박스 테스트는 내부 구조를 무시하고 입력에 따른 출력 결과(기능)만을 확인하는 테스트입니다. 반면, 반복 조건 만족 여부나 루프 내 문장 수행 여부를 확인하는 것은 내부 소스 코드를 분석하는 화이트박스 테스트의 영역입니다.

    오답 노트

    비정상 자료 입력 처리, 정상 자료 기능 수행, 경계값 입력 결과 확인: 모두 내부 구조와 상관없이 입력과 출력만으로 확인 가능한 블랙박스 테스트 항목임
  • 블랙박스 테스트
    1) 경계값 분석 : 경계값에서 오류가 발생될 확률이 높다는 점을 이용
    2) 기능 테스트
    3) 프로그램 구조 고려 X
    [해설작성자 : 즐기는 개발자]

    화이트박스 테스트 기법
    문장검증 : 프로그램의 모든 문장이 적어도 한번씩 수행되는 검증 기준
    선택검증 : 선택하는 부분만 검증
    경로검증 : 수행 가능한 모든 경로 검사
    조건검증 : 문장 내 조건식을 조사하는 기준
    -------> 보기 3번은 문장수행 따라서 답은 3번

    블랙박스 테스트 : 작동 원리를 모르는 상태에서 '동작을 검사'하는 방식(사용자 관점의 테스트)
    화이트박스 테스트: '내부 소스코드'를 테스트 하는 기법 (개발자 관점의 단위 테스트)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

31. 다음 자료를 버블 정렬을 이용하여 오름차순으로 정렬할 경우 Pass 2의 결과는?

  1. 3, 5, 6, 7, 9
  2. 6, 7, 3, 5, 9
  3. 3, 5, 9, 6, 7
  4. 6, 3, 5, 7, 9
(정답률: 69%)
  • 버블 정렬은 인접한 두 원소를 비교하여 큰 값을 뒤로 보내는 과정을 반복합니다. 데이터의 정렬 과정은 다음과 같습니다.
    Pass 1: $9, 6, 7, 3, 5 \rightarrow 6, 9, 7, 3, 5 \rightarrow 6, 7, 9, 3, 5 \rightarrow 6, 7, 3, 9, 5 \rightarrow 6, 7, 3, 5, 9$ (가장 큰 값 9가 맨 뒤로 이동)
    Pass 2: $6, 7, 3, 5, 9 \rightarrow 6, 3, 7, 5, 9 \rightarrow 6, 3, 5, 7, 9$ (그다음 큰 값 7이 뒤에서 두 번째로 이동)
  • PASS 1 과정 (가장 큰 수를 맨 뒤로 보내는 첫 번째 반복)
    9 vs 6 → 9 > 6 → 교환 → 6, 9, 7, 3, 5
    9 vs 7 → 9 > 7 → 교환 → 6, 7, 9, 3, 5
    9 vs 3 → 9 > 3 → 교환 → 6, 7, 3, 9, 5
    9 vs 5 → 9 > 5 → 교환 → 6, 7, 3, 5, 9
    PASS 1 결과: 6, 7, 3, 5, 9

    PASS 2 과정 (두 번째 큰 수를 그 앞자리로 보내는 반복)
    6 vs 7 → 6 < 7 → 그대로
    7 vs 3 → 7 > 3 → 교환 → 6, 3, 7, 5, 9
    7 vs 5 → 7 > 5 → 교환 → 6, 3, 5, 7, 9
    PASS 2 결과: 6, 3, 5, 7, 9
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

32. 정렬된 N개의 데이터를 처리하는 데 O(Nlog2N)의 시간이 소요되는 정렬 알고리즘은?

  1. 합병정렬
  2. 버블정렬
  3. 선택정렬
  4. 삽입정렬
(정답률: 71%)
  • 합병정렬(Merge Sort)은 데이터를 분할하고 다시 합치는 과정을 통해 정렬하며, 최악, 평균, 최선의 경우 모두 $O(N \log_{2} N)$의 시간 복잡도를 가집니다.

    오답 노트

    버블정렬, 선택정렬, 삽입정렬: 일반적으로 $O(N^{2})$의 시간 복잡도를 가짐
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

33. 다음 postfix로 표현된 연산식의 연산 결과로 옳은 것은?

  1. 35
  2. 42
  3. 81
  4. 360
(정답률: 87%)
  • 후위 표기법(Postfix)은 피연산자를 먼저 쓰고 연산자를 나중에 쓰는 방식으로, 스택을 이용하여 계산합니다. 주어진 식 $3\ 4\ *\ 5\ 6\ *\ +$를 중위 표기법으로 변환하여 계산하면 다음과 같습니다.
    ① [기본 공식] $(3 \times 4) + (5 \times 6)$
    ② [숫자 대입] $12 + 30$
    ③ [최종 결과] $42$
  • Postfix 표기법은 연산자가 피연산자 뒤에 나오는 표기법입니다. 따라서 이 연산식을 해석하기 위해서는 스택을 사용하여 연산을 수행합니다.

    처음부터 연산식을 하나씩 읽어나갑니다.
    1.피연산자인 경우 스택에 넣습니다.
    2.연산자인 경우 스택에서 필요한 만큼의 피연산자를 꺼내서 해당 연산을 수행하고, 결과를 다시 스택에 넣습니다.
    3.연산식을 끝까지 읽으면 최종 결과가 스택에 남게 됩니다.

    이제 주어진 연산식을 위 과정에 따라 처리하겠습니다.

    1. 3를 스택에 넣습니다. (스택: [3])
    2. 4를 스택에 넣습니다. (스택: [3, 4])
    3. '*' 연산자를 만나므로 스택에서 3과 4를 꺼내서 곱셈을 수행합니다. 결과인 12를 스택에 넣습니다. (스택: [12])
    4. 5를 스택에 넣습니다. (스택: [12, 5])
    5. 6을 스택에 넣습니다. (스택: [12, 5, 6])
    6. '*' 연산자를 만나므로 스택에서 5와 6을 꺼내서 곱셈을 수행합니다. 결과인 30을 스택에 넣습니다. (스택: [12, 30])
    7. '+' 연산자를 만나므로 스택에서 12와 30을 꺼내서 덧셈을 수행합니다. 결과인 42를 스택에 넣습니다. (스택: [42])

    따라서 주어진 postfix 표현식 3 4 * 5 6 * +의 연산 결과는 42입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

34. EAI(Enterprise Application Integration) 구축 유형에서 애플리케이션 사이에 미들웨어를 두어 처리하는 것은? (문제 오류로 가답안 발표시 1번으로 발표되었지만 확정 답안 발표시 1, 3, 4번이 정답처리 되었습니다. 여기서는 가답안인 1번을 누르면 정답 처리 됩니다.)

  1. Message Bus
  2. Point-to-point
  3. Hub & Spoke
  4. Hybrid
(정답률: 88%)
  • EAI 구축 유형 중 Message Bus 방식은 애플리케이션 사이에 미들웨어를 두어 처리하는 방식으로, 확장성이 뛰어나며 대용량 처리가 가능하다는 특징이 있습니다.

    오답 노트

    Point-to-point: 애플리케이션을 1:1로 연결하는 가장 기본적인 방식
    Hub & Spoke: 중앙의 허브를 통해 데이터를 전송하는 집중형 방식
    Hybrid: 그룹 내에서는 Hub & Spoke, 그룹 간에는 Message Bus 방식을 혼합하여 사용
  • EAI (Enterprise Application Integration)
    기업 내 상호 연동이 가능하게 해주는 솔루션

    비즈니스 간 통합 및 연계성을 증대시켜 각 시스템 간의 확정성을 높여줌

    -구축 유형-

    Point-to-Point
    가장 기본적인 애플리케이션 통합 방식으로, 애플리케이션을 1:1 로 연결
    변경 및 재사용이 어려움

    Hub & Spoke
    단일 접점인 허브를 통해 데이터를 전송하는 중앙 집중형 방식
    확장 및 유지 보수가 용이하지만 허브 장애 발생 시 시스템 전체에 영향

    Message Bus (ESB 방식)
    애플리케이션 사이에 미들웨어를 두어 처리하는 방식
    확장성이 뛰어나며 대용량 처리가 가능

    Hybrid
    그룹 내에서는 Hub & Spoke 방식, 그룹 간에는 Message 방식 사용
    데이터 병목 현상 최소화
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

35. 인터페이스 구현 검증 도구가 아닌 것은?

  1. Foxbase
  2. STAF
  3. watir
  4. xUnit
(정답률: 60%)
  • 인터페이스 구현 검증 도구로는 xUnit, STAF, watir, Selenium, Fitnesse 등이 사용됩니다.

    오답 노트

    Foxbase: 검증 도구가 아닌 프로그래밍 언어임
  • xUnit:
    다양한 언어를 지원하는 단위 테스트 프레임워크입니다.
    테스트 코드를 여러 번 작성하지 않도록 도와주고, 테스트마다 예상 결과를 기억할 필요가 없게 합니다.
    STAF (Software Testing Automation Framework):
    서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임워크입니다.
    FitNesse:
    웹 기반 테스트 케이스 설계, 실행, 결과 확인 등을 지원하는 테스트 프레임워크입니다.
    Selenium:
    다양한 브라우저 지원 및 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임워크입니다.
    watir:
    루비 기반 웹 애플리케이션 테스트 프레임워크입니다.
    이 도구들은 인터페이스 구현 검증을 효율적으로 수행하고 보안적인 측면에서도 중요한 역할을 합니다.
  • 인터페이스 구현 검증 도구는 xUnit, STAF, Fitnesse, NTAF, Selenium, watir 등이 있습니다.
    Foxbase는 프로그래밍 언어입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

36. 클린코드 작성원칙에 대한 설명으로 틀린 것은?

  1. 코드의 중복을 최소화 한다.
  2. 코드가 다른 모듈에 미치는 영향을 최대화하도록 작성한다.
  3. 누구든지 코드를 쉽게 읽을 수 있도록 작성한다.
  4. 간단하게 코드를 작성한다.
(정답률: 91%)
  • 클린코드의 핵심은 의존성 배제입니다. 따라서 코드가 다른 모듈에 미치는 영향을 최대화하는 것이 아니라 최소화하여, 코드 변경 시 다른 부분에 영향이 없도록 작성해야 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

37. 소프트웨어 패키징에 대한 설명으로 틀린 것은?

  1. 패키징은 개발자 중심으로 진행한다.
  2. 신규 및 변경 개발소스를 식별하고, 이를 모듈화하여 상용제품으로 패키징 한다.
  3. 고객의 편의성을 위해 매뉴얼 및 버전관리를 지속적으로 한다.
  4. 범용 환경에서 사용이 가능하도록 일반적인 배포 형태로 패키징이 진행된다.
(정답률: 90%)
  • 소프트웨어 패키징은 모듈별 실행 파일들을 합쳐 설치 파일을 만드는 과정으로, 개발자가 아닌 실제 사용자의 편의를 고려한 사용자 중심으로 진행되어야 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

38. 공학적으로 잘된 소프트웨어(Well Engineered Software)의 설명 중 틀린 것은?

  1. 소프트웨어는 유지보수가 용이해야 한다.
  2. 소프트웨어는 신뢰성이 높아야 한다.
  3. 소프트웨어는 사용자 수준에 무관하게 일관된 인터페이스를 제공해야 한다.
  4. 소프트웨어는 충분한 테스팅을 거쳐야 한다.
(정답률: 91%)
  • 소프트웨어의 최종 소비자는 End User이므로, 인터페이스는 사용자 수준에 무관한 것이 아니라 사용자의 수준에 맞게 직관적이고 사용하기 쉽게 설계되어야 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

39. 테스트와 디버그의 목적으로 옳은 것은?

  1. 테스트는 오류를 찾는 작업이고 디버깅은 오류를 수정하는 작업이다.
  2. 테스트는 오류를 수정하는 작업이고 디버깅은 오류를 찾는 작업이다.
  3. 둘 다 소프트웨어의 오류를 찾는 작업으로 오류 수정은 하지 않는다.
  4. 둘 다 소프트웨어 오류의 발견, 수정과 무관하다.
(정답률: 79%)
  • 테스트는 소프트웨어의 결함이나 오류를 찾아내는 과정이며, 디버깅은 테스트를 통해 발견된 오류의 원인을 분석하고 이를 수정하는 작업입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

40. 다음 중 스택을 이용한 연산과 거리가 먼 것은?

  1. 선택정렬
  2. 재귀호출
  3. 후위표현(Post-fix expression)의 연산
  4. 깊이우선탐색
(정답률: 54%)
  • 스택은 LIFO(Last-In-First-Out) 구조로 중간 데이터에 접근할 수 없으므로, 최솟값을 찾아 위치를 바꾸는 선택정렬에는 적합하지 않습니다.

    오답 노트

    재귀호출, 후위표현 연산, 깊이우선탐색: 모두 스택 구조를 활용하는 대표적인 연산입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

3과목: 데이터베이스 구축

41. 병렬 데이터베이스 환경 중 수평 분할에서 활용되는 분할 기법이 아닌 것은?

  1. 라운드-로빈
  2. 범위 분할
  3. 예측 분할
  4. 해시 분할
(정답률: 44%)
  • 수평 분할(파티셔닝) 기법에는 범위 분할(Range), 해시 분할(Hash), 라운드-로빈(Round Robin), 리스트(List), 복합(Composite) 분할 등이 있습니다. 예측 분할은 이에 해당하지 않습니다.
  • 일반적 사용기법 1. 라운드로빈 2.범위분할 3.해시분할
  • 수평분할
    - 하나의 테이블의 각 행을 다른 테이블에 분산시키는 것

    라운드로빈 분할
    - 라운드로빈 분할은 파티션에 행의 고른 분포를 원할 때 사용한다. 그러나, 해시분할과 달리 분할 칼럼을 명시할 필요가 없다. 라운드 로빈 분할로 회전하면서 새로운 행이 파티션에 할당된다. 테이블은 기본키가 반드시 필요하진 않다.
    [해설작성자 : 오씨]

    파티셔닝은 병렬 데이터베이스 환경 중 수평분할에서 활용되는 분할 기법이다. 파티셔닝의 유형에는 range, hash, list, composite, round robin이 있다. 고로 답은 3번 확정!
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

42. 시스템 카탈로그에 대한 설명으로 옳지 않은 것은?

  1. 사용자가 직접 시스템 카탈로그의 내용을 갱신하여 데이터베이스 무결성을 유지한다.
  2. 시스템 자신이 필요로 하는 스키마 및 여러가지 객체에 관한 정보를 포함하고 있는 시스템 데이터베이스이다.
  3. 시스템 카탈로그에 저장되는 내용을 메타데이터라고도 한다.
  4. 시스템 카탈로그는 DBMS가 스스로 생성하고 유지한다.
(정답률: 76%)
  • 시스템 카탈로그는 DBMS가 스스로 생성하고 유지 관리하는 시스템 데이터베이스이므로, 사용자가 직접 INSERT, UPDATE, DELETE 문을 통해 내용을 갱신하는 것은 허용되지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

43. SQL 문에서 SELECT에 대한 설명으로 옳지않은 것은?

  1. FROM 절에는 질의에 의해 검색될 데이터들을 포함하는 테이블명을 기술한다.
  2. 검색결과에 중복되는 레코드를 없애기위해서는 WHERE 절에 'DISTINCT'키워드를 사용한다.
  3. HAVING 절은 GROUP BY 절과 함께 사용되며, 그룹에 대한 조건을 지정한다.
  4. ORDER BY 절은 특정 속성을 기준으로 정렬하여 검색할 때 사용한다.
(정답률: 72%)
  • 중복되는 레코드를 제거하기 위한 'DISTINCT' 키워드는 WHERE 절이 아니라 SELECT 바로 뒤에 기술해야 합니다. WHERE 절은 검색 결과의 조건을 지정하는 역할을 수행합니다.
  • 검색결과에 중복되는 레코드를 없애기 위해서는 SELECT 명령 뒤에 'DISTINCT'키워드를 사용한다.

    WHERE절 뒤는 원하는 조건.

    검색결과에 중복되는 레코드를 없애기 위해서는 SELECT 명령 뒤에 'DISTINCTROW' 키워드를 사용한다.

    DISTINCT : 중복된 속성이 조화될 경우 그중 한 개만 검색(SELECT 뒤에 명시된 속성이 중복될 경우 한 개만 검색)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

44. SQL에서 VIEW를 삭제할 때 사용하는 명령은?

  1. ERASE
  2. KILL
  3. DROP
  4. DELETE
(정답률: 83%)
  • VIEW, TABLE, DATABASE와 같은 데이터베이스 객체 자체를 완전히 삭제할 때는 DROP 명령어를 사용합니다.

    오답 노트

    DELETE: 테이블 내의 특정 행(Row) 데이터를 조건에 따라 삭제함
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

45. DDL(Data Define Language)의 명령어 중 스키마, 도메인, 인덱스 등을 정의할 때 사용하는 SQL문은?

  1. ALTER
  2. SELECT
  3. CREATE
  4. INSERT
(정답률: 77%)
  • DDL(데이터 정의어) 중 CREATE 문은 스키마, 도메인, 테이블, 뷰, 인덱스 등을 새롭게 정의할 때 사용합니다.

    오답 노트

    ALTER: 기존에 정의된 테이블의 구조를 변경함
    SELECT: 데이터를 조회하는 DML(데이터 조작어)
    INSERT: 새로운 데이터를 삽입하는 DML(데이터 조작어)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

46. 테이블 R1, R2에 대하여 다음 SQL문의결과는?

(정답률: 61%)
  • 제시된 SQL문은 에서 알 수 있듯이 R1 테이블의 학번과 R2 테이블의 학번 사이의 교집합(INTERSECT)을 구하는 연산입니다.

    R1의 학번 {20201111, 20202222}과 R2의 학번 {20202222, 20203333}의 공통 원소는 20202222이므로, 결과는 가 됩니다.
  • intersect 는 교집합을 의미합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

47. 데이터베이스 설계 시 물리적 설계 단계에서 수행하는 사항이 아닌 것은?

  1. 레코드 집중의 분석 및 설계
  2. 접근 경로 설계
  3. 저장 레코드의 양식 설계
  4. 목표 DBMS에 맞는 스키마 설계
(정답률: 71%)
  • 목표 DBMS에 맞는 스키마 설계는 개념적 설계를 바탕으로 테이블 구조와 관계를 정의하는 논리적 설계 단계에서 수행하는 작업입니다.

    물리적 설계 단계에서는 특정 DBMS의 물리적 구조에 따라 레코드 집중 분석, 접근 경로 설계, 저장 레코드 양식 설계 등 실제 저장 구조를 정의합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

48. 릴레이션에서 기본 키를 구성하는 속성은 널(Null)값이나 중복 값을 가질 수 없다는 것을 의미하는 제약조건은?

  1. 참조 무결성
  2. 보안 무결성
  3. 개체 무결성
  4. 정보 무결성
(정답률: 84%)
  • 릴레이션의 기본 키를 구성하는 속성은 널(Null) 값이나 중복 값을 가질 수 없다는 규칙을 개체 무결성이라고 합니다.

    오답 노트

    참조 무결성: 외래 키 값은 NULL이거나 참조하는 릴레이션의 기본 키 값과 동일해야 함
    보안 무결성: 변경, 삽입, 삭제, 재연 등으로부터 정보를 보호하여 데이터의 정확성을 유지함
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

49. 병행제어 기법의 종류가 아닌 것은?

  1. 로킹 기법
  2. 시분할 기법
  3. 타임 스탬프 기법
  4. 다중 버전 기법
(정답률: 45%)
  • 병행제어는 여러 트랜잭션이 동시에 실행될 때 데이터베이스의 일관성을 유지하기 위한 기법입니다. 로킹, 타임 스탬프, 다중 버전 기법 등이 이에 해당합니다.

    오답 노트

    시분할 기법: CPU 시간을 분할하여 여러 사용자가 동시에 사용하는 것처럼 느끼게 하는 운영체제의 스케줄링 기법입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

50. 다음 R1과 R2의 테이블에서 아래의 실행 결과를 얻기 위한 SQL문은?

  1. SELECT 과목번호, 과목이름 FROM R1, R2 WHERE R1.학번 = R2. 학번 AND R1.학과='전자공학' AND R1.이름 = '강남길’;
  2. SELECT 과목번호, 과목이름 FROM R1, R2 WHERE R1.학번 = R2.학번 OR R1.학과='전자공학' OR R1.이름 = '홍길동';
  3. SELECT 과목번호, 과목이름 FROM R1, R2 WHERE R1.학번 = R2.학번 AND R1.학과=‘컴퓨터공학' AND R1.이름 '강남길’;
  4. SELECT 과목번호, 과목이름 FROM R1, R2 WHERE R1.학번 = R2.학번 OR R1.학과='컴퓨터공학' OR R1.이름 = '홍길동';
(정답률: 74%)
  • 실행 결과에서 과목번호 'C100'과 'C200'을 동시에 수강한 학번은 '3000'이며, 의 R1 테이블에서 학번 '3000'은 이름이 '강남길'이고 학과가 '전자공학'인 것을 확인할 수 있습니다. 따라서 두 테이블을 학번으로 조인하고 해당 조건을 만족하는 SQL문을 찾아야 합니다.
    SELECT 과목번호, 과목이름 FROM R1, R2 WHERE R1.학번 = R2.학번 AND R1.학과='전자공학' AND R1.이름 = '강남길';
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

51. 다음 관계 대수 중 순수 관계 연산자가 아닌 것은?

  1. 차집합(difference)
  2. 프로젝트(project)
  3. 조인(join)
  4. 디비전 (division)
(정답률: 65%)
  • 관계 대수는 일반 집합 연산자와 순수 관계 연산자로 나뉩니다. 프로젝트, 조인, 디비전은 관계형 데이터베이스의 특성에 맞게 설계된 순수 관계 연산자입니다.

    오답 노트

    차집합(difference): 합집합, 교집합과 함께 일반 집합 연산자에 해당합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

52. 관계형 데이터 모델의 릴레이션에 대한 설명으로 틀린 것은?

  1. 모든 속성 값은 원자 값을 갖는다.
  2. 한 릴레이션에 포함된 튜플은 모두 상이하다.
  3. 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
  4. 한 릴레이션을 구성하는 속성 사이에는 순서가 존재한다.
(정답률: 75%)
  • 관계형 데이터 모델의 릴레이션은 수학적 집합 개념을 기반으로 하므로, 튜플(행) 간의 순서가 없고 속성(열) 간의 순서 또한 중요하지 않습니다.

    오답 노트

    한 릴레이션을 구성하는 속성 사이에는 순서가 존재한다: 속성의 순서는 중요하지 않으며, 이름만으로 식별합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

53. 릴레이션 R의 차수가 4이고 카디널리티가 5이며, 릴레이션 S의 차수가 6이고 카디널리티가 7일 때, 두 개의 릴레이션을 카티션 프로덕트한 결과의 새로운 릴레이 션의 차수와 카디널리티는 얼마인가?

  1. 24, 35
  2. 24, 12
  3. 10, 35
  4. 10, 12
(정답률: 68%)
  • 두 릴레이션의 카티션 프로덕트(Cartesian Product) 결과, 차수는 각 릴레이션 차수의 합이 되고, 카디널리티는 각 카디널리티의 곱이 됩니다.
    ① [기본 공식]
    $$\text{차수} = \text{Degree}_R + \text{Degree}_S$$
    $$\text{카디널리티} = \text{Cardinality}_R \times \text{Cardinality}_S$$
    ② [숫자 대입]
    $$\text{차수} = 4 + 6$$
    $$\text{카디널리티} = 5 \times 7$$
    ③ [최종 결과]
    $$\text{차수} = 10, \text{카디널리티} = 35$$
  • 차수: 속성, 열
    카디널리티: 튜플, 행
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

54. 속성(attribute)에 대한 설명으로 틀린 것은?

  1. 속성은 개체의 특성을 기술한다.
  2. 속성은 데이터베이스를 구성하는 가장 작은 논리적 단위이다.
  3. 속성은 파일 구조상 데이터 항목 또는 데이터 필드에 해당된다.
  4. 속성의 수를 "cardinality" 라고 한다.
(정답률: 77%)
  • 속성의 수를 나타내는 용어는 차수(Degree)입니다. 카디널리티(Cardinality)는 릴레이션에 포함된 튜플의 수를 의미하므로 틀린 설명입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

55. 다음 SQL 문에서 ( ) 안에 들어갈 내용으로 옳은 것은?

  1. SET
  2. FROM
  3. INTO
  4. IN
(정답률: 81%)
  • 데이터를 수정하는 UPDATE 문의 기본 문법은 UPDATE 테이블명 SET 열=값 WHERE 조건 순으로 작성합니다.
    따라서 의 빈칸에는 SET이 들어가야 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

56. 관계 데이터베이스 모델에서 차수(Degree)의 의미는?

  1. 튜플의 수
  2. 테이블의 수
  3. 데이터베이스의 수
  4. 애트리뷰트의 수
(정답률: 74%)
  • 관계 데이터베이스 모델에서 차수(Degree)는 하나의 릴레이션을 구성하는 애트리뷰트(속성)의 총 개수를 의미합니다.

    오답 노트

    튜플의 수: 카디널리티(Cardinality)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

57. 개체-관계 모델(E-R)의 그래픽 표현으로 옳지 않은 것은?

  1. 개체타입 – 사각형
  2. 속성 - 원형
  3. 관계타입 - 마름모
  4. 연결 - 삼각형
(정답률: 89%)
  • 개체-관계 모델(E-R 모델)에서 각 구성 요소는 정해진 도형으로 표현합니다. 연결은 삼각형이 아니라 '선'을 이용하여 표현합니다.

    오답 노트

    개체타입: 사각형
    속성: 원형
    관계타입: 마름모
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

58. 트랜잭션의 실행이 실패하였음을 알리는 연산자로 트랜잭션이 수행한 결과를 원래의 상태로 원상 복귀 시키는 연산은?

  1. COMMIT 연산
  2. BACKUP 연산
  3. LOG 연산
  4. ROLLBACK 연산
(정답률: 92%)
  • 트랜잭션 실행 중 실패가 발생했을 때, 원자성을 보장하기 위해 수행한 연산을 취소하고 이전 상태로 원상 복귀시키는 연산은 ROLLBACK 연산입니다.

    오답 노트

    COMMIT 연산: 트랜잭션의 모든 연산이 성공적으로 완료되었음을 확정하는 연산
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

59. 데이터 속성 간의 종속성에 대한 엄밀한 고려없이 잘못 설계된 데이터베이스에서는 데이터 처리 연산 수행 시 각종 이상 현상이 발생할 수 있는데, 이러한 이상 현상이 아닌 것은?

  1. 검색 이상
  2. 삽입 이상
  3. 삭제 이상
  4. 갱신 이상
(정답률: 73%)
  • 데이터베이스 설계 오류로 인해 발생하는 이상 현상(Anomaly)에는 삽입 이상, 삭제 이상, 갱신 이상 세 가지가 있으며, 검색 이상은 이에 해당하지 않습니다.

    오답 노트

    삽입 이상: 불필요한 정보 없이 특정 정보를 저장할 수 없는 현상
    삭제 이상: 필요한 정보와 함께 원치 않는 정보까지 삭제되는 현상
    갱신 이상: 일부 데이터만 수정되어 데이터 불일치가 발생하는 현상
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

60. 제3정규형 (3NF)에서 BCNF(Boyce-Codd Normal Form)가 되기 위한 조건은?

  1. 결정자가 후보키가 아닌 함수 종속 제거
  2. 이행적 함수 종속 제거
  3. 부분적 함수 종속 제거
  4. 원자값이 아닌 도메인 분해
(정답률: 78%)
  • 제3정규형(3NF)에서 BCNF로 가기 위해서는 모든 결정자가 후보키여야 하며, 결정자가 후보키가 아닌 함수 종속을 제거해야 합니다.

    오답 노트

    원자값이 아닌 도메인 분해: 제1정규형(1NF)
    부분적 함수 종속 제거: 제2정규형(2NF)
    이행적 함수 종속 제거: 제3정규형(3NF)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

4과목: 프로그래밍 언어 활용

61. 다음 설명에 해당하는 방식은?

  1. STA
  2. Collision Domain
  3. CSMA/CA
  4. CSMA/CD
(정답률: 60%)
  • 무선 랜 환경에서 데이터 전송 전 매체가 비어 있는지 확인하고, 충돌을 회피하기 위해 임의의 시간을 기다린 후 전송하는 방식은 CSMA/CA입니다.

    오답 노트

    Collision Domain: 충돌을 검출할 수 있는 네트워크 세그먼트 범위
    CSMA/CD: 유선 이더넷에서 충돌을 감지하여 처리하는 방식
  • - Collision Domain : 충돌 발생을 검출할 수 있는 브리지 간 혹은 다른 계층 장치 간의 이더넷 세그먼트 범위
    - CSMA/CD : 이더넷에서 각 단말이 정송 공유 매체에 규칙있게 접근하기 위한 매체 엑세스 제어 방식

    - CSMA/CA(Carrier-sense multiple access with collision avoidance) "충돌 방지"
    무선 랜에서 데이터 전공 시, 매체가 비어있음을 확인한 후 충돌을 회피하기 위해 임의 시간을 기다린 후 데이터를 전송하는 방식. 네트워크에 데이터의 전송이 없는 경우라도 동시 전송에 의한 충돌에 대비해 확인 신호를 전송한다.

    - CSMA/CD(
    Carrier-sense multiple access with collision detection) "충돌 감지"
    이더넷에서 각 단말이 전송 공유 매체에 규칙있게 접근하기 위한 매체 엑세스 제어 방식

    - Collision Domain "충돌 도메인"
    충돌 발생을 검출할 수 있는 브리지 간 혹은 다른 계층 장치 간의 이더넷 세그먼트 범위
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

62. 다음 중 가장 약한 결합도(Coupling)는?

  1. Common Coupling
  2. Content Coupling
  3. External Coupling
  4. Stamp Coupling
(정답률: 59%)
  • 결합도는 내용(content) 공통( common ) 외부( external) 제어( control) 스탬프 ( stamp) 자료 ( data) 순이다
    [해설작성자 : 강탈]

    기존에 다른 분이 올려주신 이해하기 쉬운..강한 것부터

    (내)게 (공)(부)하라고 강요하지 말아요
    (제)가 (스)트레스 받(자)나요
    내용(content) > 공통(common) > 외부(external) > 제어(control) > 스템프(stamp) > 자료(data)
  • 결합도는 모듈 간의 상호 의존도를 나타내며, 강한 결합도에서 약한 결합도 순으로 다음과 같습니다.
    내용(Content) $\rightarrow$ 공통(Common) $\rightarrow$ 외부(External) $\rightarrow$ 제어(Control) $\rightarrow$ 스탬프(Stamp) $\rightarrow$ 자료(Data)
    제시된 보기 중에서는 스탬프(Stamp) 결합도가 가장 약한 결합도에 해당합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

63. 다음 C언어 프로그램이 실행되었을 때의 결과는?

  1. 3
  2. 4
  3. 7
  4. 10
(정답률: 66%)
  • C언어의 | 연산자는 비트 단위 OR 연산을 수행하며, 두 비트 중 하나라도 1이면 결과가 1이 됩니다.
    1. $a = 4$를 2진수로 변환: $00000100$
    2. $b = 7$을 2진수로 변환: $00000111$
    3. 비트 OR 연산 수행:
    $$00000100 \text{ | } 00000111 = 00000111$$
    4. 결과값 $00000111$을 10진수로 변환하면 7이 됩니다.
  • a = 4 = 00000100
    b = 7 = 00000111
    or 연산자는 둘 중 하나만 1이어도 1로 나타내므로, 00000111 = 7

    and 연산자일 경우 and 00000100 = 4가 됩니다
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

64. 다음 파이썬(Python) 프로그램이 실행되었을 때의 결과는?

  1. 0
  2. 2
  3. 4
  4. 6
(정답률: 75%)
  • 제시된 파이썬 코드는 클래스 FourCal의 인스턴스 a를 생성하고, setdata 메서드를 통해 fir에 4, sec에 2라는 값을 저장한 뒤 add 메서드에서 두 값의 합을 구하는 과정입니다.
    1. a.setdata(4, 2) 실행 $\rightarrow$ sel.fir = 4, sel.sec = 2 저장
    2. a.add() 실행 $\rightarrow$ result = 4 + 2 = 6
    3. print(6) 실행 $\rightarrow$ 결과값 6 출력
  • 76%
    <문제 해설>
    1. class FourCal:
    [FourCal](2~7번까지)이라는 클래스를 만들었고 그 클래스는 a(8번)이다.
    2. def setdata(sel, fir, sec):
    setdata(9번)를 불러와라↑ 4↑ 2↑

    3. sel.fir = fir → a안에 fir = 4라는 인자값이 생긴다.
    4. sel.sec = sec → a안에 sec = 2라는 인자값이 생긴다.
    ----------------------------→10번으로 넘어간다.

    5. def add(sel): --> add는 sel을 참조 하고 있다.
    6. result = sel.fir + sel.sec -→ 4+2 = 6 => result
    7. return result -→ result의 값을 호출한 곳(10번)으로 보낸다.
    8. a = FourCal()
    ↑a안에 (setdata, add) 이 두개의 메소드를 사용할수 있다.

    9. a.setdata(4,2)
    10. print(a.add()) -→ a의 add의 값을 출력해라
    ---------------------------------------------------------------
    답 : 6
    [해설작성자 : 해설충]

    파이썬에서 setdata(sel, fir, sec) 라고 작성했을때
    첫번째 인자는 인스턴스 자신을 참조하는 매개변수임. (호출됬을때 전달 x)
    따라서, a.setdata(4,2)에서 첫번째 인자인 sel 은 인스턴스 자신인 a 로 전달된것.
    마찬가지로 함수 add(sel) 에서 a.add()라고 호출했을때 자신인 a가 매개변수 sel로 전달된것이라 할 수 있음.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

65. 교착상태의 해결 방법 중 은행원 알고리즘(Banker's Algorithm)이 해당되는 기법은?

  1. Detection
  2. Avoidance
  3. Recovery
  4. Prevention
(정답률: 74%)
  • 은행원 알고리즘은 시스템이 안전 상태(Safe State)를 유지하며 자원을 할당함으로써 교착상태를 미리 피해가는 회피(Avoidance) 기법의 대표적인 예입니다.

    오답 노트

    Detection: 자원 할당 그래프 등을 통해 교착상태 발생 여부를 탐지함
    Recovery: 교착상태 발견 후 프로세스 중지나 자원 선점을 통해 복구함
    Prevention: 상호배제, 점유와 대기 등 교착상태의 4가지 필요조건 중 하나를 부정하여 예방함
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

66. CIDR(Classless Inter-Domain Routing) 표기로 203.241.132.82/27과 같이 사용되었다면, 해당 주소의 서브넷 마스크(subnet mask)는?

  1. 255.255.255.0
  2. 255.255.255.224
  3. 255.255.255.240
  4. 255.255.255.248
(정답률: 63%)
  • Ipv4는 32bit로 이루어져 있습니다
    ip주소/서브넷마스크로 표기합니다
    서브넷마스크숫자대로 앞에서부터 1을채워서 8개씩 끊어 계산하시면됩니다(2진수)
    11111111.11111111.11111111.11100000
    255 255 255 224
    [해설작성자 : comcbt.com 이용자]

    1의 개수가 27개
    [해설작성자 : comcbt.com 이용자]

    1 1 1 1 1 1 1 1
    128 64 32 16 8 4 2 1

    1의 개수가 27개

    11111111 11111111 11111111 11100000
    8 8 8 3

    11100000 은 128 + 64 + 32 = 224
    [해설작성자 : Ant]

    서브넷 마스크 계산:
    전체 IP 주소는 32비트입니다.
    "/27"은 처음 27비트가 네트워크 주소로 사용되고, 마지막 5비트가 호스트 주소로 사용됩니다.
    서브넷 마스크를 2진수로 표현하면 다음과 같습니다:

    네트워크 부분 (27비트): 11111111.11111111.11111111.11100000
    이를 10진수로 변환하면: 255.255.255.224
    따라서 해당 서브넷 마스크는 255.255.255.224입니다.

    옵션 분석:
    255.255.255.0: 이 서브넷 마스크는 "/24"에 해당합니다.
    255.255.255.224: 이 서브넷 마스크는 "/27"에 해당하며, 이 문제에서 요구하는 올바른 서브넷 마스크입니다.
    255.255.255.240: 이 서브넷 마스크는 "/28"에 해당합니다.
    255.255.255.248: 이 서브넷 마스크는 "/29"에 해당합니다.
    결론:
    이 문제에서 요구하는 CIDR 표기 "203.241.132.82/27"에 해당하는 서브넷 마스크는 2번, 255.255.255.224입니다.
  • CIDR 표기법에서 /27은 IP 주소의 왼쪽부터 27비트가 1인 서브넷 마스크를 의미합니다.
    이를 2진수로 나타내면 $11111111.11111111.11111111.11100000$이 되며, 각 옥텟을 10진수로 변환하면 255.255.255.224가 됩니다.

    오답 노트

    255.255.255.0: /24에 해당
    255.255.255.240: /28에 해당
    255.255.255.248: /29에 해당
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

67. 다음 JAVA 프로그램이 실행되었을 때의 결과는?

  1. 5, 5, 5
  2. 5, 6, 5
  3. 6, 5, 5
  4. 5, 6, 4
(정답률: 63%)
  • 증감 연산자의 위치에 따른 실행 순서가 핵심입니다.
    1. y = x++ : 후위 증가 연산이므로 현재 x 값인 5를 y에 먼저 대입한 후, x를 6으로 증가시킵니다. (x=6, y=5)
    2. z = --x : 전위 감소 연산이므로 x를 먼저 5로 감소시킨 후, 그 값 5를 z에 대입합니다. (x=5, z=5)
    3. 최종적으로 x, y, z의 값은 5, 5, 5가 됩니다.
  • 63%
    <문제 해설>
    Y 먼저 5 대입 그후 X 값 1증가 X=6 , Y=5
    X값 먼저 1 감소 후 Z 대입 X=5 ,Z=5

    5,5,5
    [해설작성자 : 정규직되고파]

    1. public class Operator{
    2. public static void main(String[] args) {
    3. int x=5, y=0, z=0;
    4. y = x++;
    ↑y=x → y=5 값이 나온 숫자는 제외하고, 나머지는 x++ = 5++ → 6=x 이다.
    ↑결론 : y = 5 , x = 6

    5. z = --x;
    ↑위에 x=6 이므로 대입하면 --6 => 5=x 값이 나온 숫자는 제외하고, 나머지 값을 대입하면 z=5
    6. System.out.print(x + ", " + y + ", " + z); → 최종 x,y,z 값 차례대로 출력
    ---------------------------------------------------------------
    답 : 5,5,5
    [해설작성자 : 해설충]

    x++ : 대입연산 후 x의 값 증가
    --x : 대입연산 전 x의 값 감소

    y = x++ 5 대입 후 증가 -> x = 6
    z = --x 감소 후 5 대입 -> x = 5
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

68. 프로세스 적재 정책과 관련한 설명으로 틀린 것은?

  1. 반복, 스택, 부프로그램은 시간 지역성(Temporal Locality)과 관련이 있다.
  2. 공간 지역성(Spatial Locality)은 프로세스가 어떤 페이지를 참조했다면 이후 가상주소공간상 그 페이지와 인접한 페이지들을 참조할 가능성이 높음을 의미한다.
  3. 일반적으로 페이지 교환에 보내는 시간보다 프로세스 수행에 보내는 시간이 더 크면 스레싱(Thrashing)이 발생한다.
  4. 스레싱(Thrashing) 현상을 방지하기 위해서는 각 프로세스가 필요로 하는 프레임을 제공할 수 있어야 한다.
(정답률: 61%)
  • 스레싱(Thrashing)은 프로세스 수행 시간보다 페이지 교체(교환)에 소요되는 시간이 더 많아져 CPU 이용률이 급격히 떨어지는 현상을 말합니다.
    따라서 페이지 교환 시간보다 프로세스 수행 시간이 더 크다면 이는 정상적인 상태이며 스레싱이 발생한 것이 아닙니다.
  • 3번 . 일방적으로 페이지수행 시간보다 교환시간이 커질 때 발생하는걸 스레싱현상이라 한다
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

69. 프레임워크(Framework)에 대한 설명으로 옳은 것은?

  1. 소프트웨어 구성에 필요한 기본 구조를 제공함으로써 재사용이 가능하게 해준다
  2. 소프트웨어 개발 시 구조가 잡혀 있기 때문에 확장이 불가능하다.
  3. 소프트웨어 아키텍처(Architecture)와 동일한 개념이다.
  4. 모듈화(Modularity)가 불가능하다.
(정답률: 73%)
  • 프레임워크는 소프트웨어 개발의 기본 구조(뼈대)를 제공하여 개발 효율성을 높이고 코드의 재사용성을 극대화하는 도구입니다.

    오답 노트

    확장이 불가능하다: 프레임워크는 확장성을 제공합니다.
    아키텍처와 동일하다: 아키텍처는 전체적인 설계 원칙이며, 프레임워크는 이를 구현한 구체적인 재사용 가능 구조물입니다.
    모듈화가 불가능하다: 프레임워크의 핵심 특징 중 하나가 모듈화입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

70. 다음 JAVA 프로그램이 실행되었을 때의 결과는?

  1. 2
  2. 3
  3. 4
  4. 5
(정답률: 55%)
  • do-while 문은 조건과 상관없이 최초 1회는 반드시 실행됩니다.
    1. do 블록 내에서 cnt++(후위 증가)가 실행되어 cnt는 1이 됩니다.
    2. while 조건식 (cnt < 0)을 확인하지만, 1 < 0은 거짓이므로 루프를 즉시 빠져나옵니다.
    3. if(cnt == 1) 조건이 참이므로 다시 cnt++가 실행되어 cnt는 2가 됩니다.
    4. 최종적으로 printf를 통해 정수 2가 출력됩니다.
  • 55%
    <문제 해설>
    do while문: 최초 1번은 실행
    do while문에서 cnt++ 후위 증가연산이 실행되므로
    cnt=1 while 문의 조건이 0보다 작을경우이므로 루프를 빠져나옴
    루프를 빠져나오고 if문 cnt=1 == 1 (참)
    cnt++ 후위 증가연산 실행
    System.out.printf 문에서 정수형으로 출력 → 정답은 2
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

71. 리눅스 Bash 쉘(Shell)에서 export와 관련한 설명으로 틀린 것은?

  1. 변수를 출력하고자 할 때는 export를 사용해야 한다.
  2. export가 매개변수 없이 쓰일 경우 현재 설정된 환경변수들이 출력된다.
  3. 사용자가 생성하는 변수는 export 명령어 표시하지 않는 한 현재 쉘에 국한된다.
  4. 변수를 export 시키면 전역(Global)변수처럼 되어 끝까지 기억된다.
(정답률: 45%)
  • 리눅스 Bash 쉘에서 특정 변수의 값을 출력할 때는 $\text{echo } $변수명 명령어를 사용합니다. export는 지역 변수를 환경 변수로 승격시켜 자식 프로세스에서도 사용할 수 있게 만드는 명령어입니다.

    오답 노트

    export가 매개변수 없이 쓰일 경우 현재 설정된 환경변수들이 출력된다: 정상 동작함
    사용자가 생성하는 변수는 export 명령어 표시하지 않는 한 현재 쉘에 국한된다: 지역 변수의 특성임
    변수를 export 시키면 전역(Global)변수처럼 되어 끝까지 기억된다: 환경 변수로 설정되어 전역적으로 참조 가능함
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

72. 다음 C언어 프로그램이 실행되었을 때의 결과는?

  1. 1
  2. 11
  3. 66
  4. 98
(정답률: 75%)
  • C언어에서 문자형 변수에 숫자를 더하면 해당 문자의 ASCII 코드 값에 연산이 수행됩니다.
    문자 'A'의 ASCII 코드 값은 $65$이며, 여기에 $1$을 더한 결과값을 정수형($\%d$)으로 출력하는 문제입니다.
    $$a = 65 + 1$$
    $$a = 66$$
  • 'A'는 아스키 코드로 표현하면 65 이다.
    즉 a = 65 + 1
  • ASCII code table을 참조하면

    A는 10진수로 나타냈을 때, 65
    a는 10진수로 나타냈을 때, 97
    부터 알파벳이 시작한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

73. 다음 C언어 프로그램이 실행되었을 때의 결과는?

  1. 55
  2. 77
  3. 121
  4. 132
(정답률: 59%)
  • 2차원 배열 $\text{a}[2][2] = \{ \{11, 22\}, \{44, 55\} \}$가 메모리에 연속적으로 배치된 구조를 이해하는 문제입니다.
    포인터 $p$가 $\text{a}[0]$을 가리키고, 반복문에서 $i$가 $1, 2, 3$으로 변하며 $*(p+i)$를 더하므로 $\text{a}[0][1], \text{a}[1][0], \text{a}[1][1]$의 값을 합산합니다.
    $$sum = 22 + 44 + 55$$
    $$sum = 121$$
  • C언어 2차원 배열 관련 문제, 2행 2열 a를 선언하고 초기값을 대입.
    배열 포인터 p를 선언하고 a[0]을 대입했다.
    a[0] 11. 22
    a[1]. 44. 55
    일 때, 11의 주소값을 100, 22의 주소값은 101, 44의 주소값은 102, 55의 주소값은 103이라고 가정한다. (int의 비트값 고려하지 않고 편의를 위해 1씩 증가)
    이때, a[0]는 11 22 중 첫번째 값의 주소값(100)을 갖고 a[1]도 44 55 중 첫번째 값인 주소값(102)을 갖는다.

    이 상태에서 반복문을 보면 i는 1 부터 3까지 반복하며, 내부 명령어는
    sum = sum + *(p+i) 즉, sum = sum + *(a[0] + i)이다.
    a[0]의 주소값은 위에서 100으로 가정했으니
    sum = sum+*(100+1) 즉, sum+101주소의 값 = 0+22 = 22
    sum = 22+*(100+2) 즉, sum+102주소의 값 = 22 + 44
    sum = 44 + *(100+3) 즉, sum+103주소의 값 = 66 + 55 = 121
  • 57%
    <문제 해설>
    2차원 배열의 시작순서는 11> 22> 44> 55
    도식화 하면
    11 / 22
    44 / 55
    *는 포인터를 의미. 포인터는 주소값.
    *p 포인터 p변수에 a배열의 [0]주소값을 넣어줌.
    그러나 (p+i)에서 p는 a배열의 [0] 주소값을 가지고 있으나 i = 1로 설정했기때문에
    a[1]주소값을 뜻한다. 즉, *p는 첫 for문에서 a[1]주소값을 뜻한다.
    22+44+55 = 121이다.
  • int a[2][2] = {{11,22), (44,55}};이부분 오류입니다. int a[2][2] = {{11,22},{44,55}}; 이렇게 되어야합니다.

    아래 부분을 오류라고 생각할 수 있는 분이 있을 까봐 간단히 적겠습니다.

    for(i=1; i < 4; i++)

    sum+= *(p+i);for, if, while문은 중괄호{} 가 없으면 for문 다음에 오는 첫 세미콜론 ; 까지만 실행합니다.따라서 

    for(i=1; i < 4; i++)

    sum+= *(p+i); <- 실행됨

    printf("%d", sum); <- 실행 안됨

    다른 예시

    for(i=1; i < 4; i++)

        sum+= *(p+i);  <- 실행됨

        printf("%d", sum); <- 실행안됨 ( 중괄호 없어서 )되는 예시

    for(i=1; i < 4; i++){

        sum+= *(p+i); <- 실행됨

        printf("%d", sum); <- 실행됨}

profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

74. 페이징 기법에서 페이지 크기가 작아질수록 발생하는 현상이 아닌 것은?

  1. 기억장소 이용 효율이 증가한다.
  2. 입·출력 시간이 늘어난다.
  3. 내부 단편화가 감소한다.
  4. 페이지 맵 테이블의 크기가 감소한다.
(정답률: 48%)
  • 페이징 기법에서 페이지 크기가 작아지면 내부 단편화가 줄어들고 메모리 이용 효율은 높아지지만, 관리해야 할 페이지 수가 많아져 페이지 맵 테이블의 크기는 오히려 증가하게 됩니다.

    오답 노트

    기억장소 이용 효율이 증가한다: 페이지 크기가 작을수록 낭비되는 공간이 줄어 효율이 증가함
    입·출력 시간이 늘어난다: 페이지 수가 많아져 입출력 횟수가 증가함
    내부 단편화가 감소한다: 페이지 크기가 작을수록 마지막 페이지의 빈 공간이 줄어듦
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

75. 다음 중 가장 강한 응집도(Cohesion)는?

  1. Sequential Cohesion
  2. Procedural Cohesion
  3. Logical Cohesion
  4. Coincidental Cohesion
(정답률: 54%)
  • 응집도는 모듈내부의 기능적인 응집정도를 나타낸다.
    응집도의 순서는
    우연적(Coincidental)응집도 < 논리적(Logical) 응집도 < 시간적 응집도(Temporal) < 절차적(Procedural) 응집도 < 교환적(Communication) 응집도 < 순차적(Sequential) 응집도 < 기능적(Functional) 응집도
    [해설작성자 : 해군본부 정체단 674기 수뱅]

    응집도(Cohesion) 는 소프트웨어 설계(1과목) 중 모듈에 대한 설명 아닌가요?
    [해설작성자 : comcbt.com 이용자]

    응집도를 비교하는 문제가 출제됩니다.
    우연적 / 논리적 / 시간적 / 걸차적 / 통신적/ 순차적/ 기능적
    뒤로 갈 수록 강합니다.
    [해설작성자 : 부리부리]

    약함<< 우연적-논리적-시간적-절차적-교환적-순차적-기능적 >>강함
    (우)리 (논)산 (시)(절) 기억나?
    (교)자랑 (순)대 (기)대했는데..
  • 응집도는 모듈 내부 요소들이 얼마나 밀접하게 관련되어 있는지를 나타내며, 강할수록 좋은 설계입니다.
    응집도의 강도는 우연적 < 논리적 < 시간적 < 절차적 < 통신적 < 순차적 < 기능적 순으로 강해집니다. 따라서 제시된 보기 중에서는 Sequential Cohesion(순차적 응집도)가 가장 강합니다.
  • 응집도 (높음 → 낮음)
    기능적 > 순차적 > 통신적 > 절차적 > 시간적 > 논리적 > 우연적
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

76. TCP 프로토콜과 관련한 설명으로 틀린 것은?

  1. 인접한 노드 사이의 프레임 전송 및 오류를 제어한다.
  2. 흐름 제어(Flow Control)의 기능을 수행한다.
  3. 전이중(Full Duplex) 방식의 양방향 가상회선을 제공한다.
  4. 전송 데이터와 응답 데이터를 함께 전송할 수 있다.
(정답률: 40%)
  • 인접한 노드 사이의 프레임 전송 및 오류 제어는 데이터 링크 계층(Data Link Layer)의 역할입니다. TCP는 전송 계층(Transport Layer) 프로토콜로, 프레임이 아닌 세그먼트(Segment) 단위로 전송 및 오류를 제어합니다.
  • 1번은
    데이터 링크 계층에 해당하는 설명이다.
    [해설작성자 : 해군본부 정체단 674기 수뱅]

    1. TCP는 세그먼트의 전송 및 오류를 제어한다.

    * 통신계층 캡슐화 시 데이터 단위
    application layer(응용 계층): messages / data (메시지/데이터)
    transport layer(전송 계층): segment(세그먼트)
    network layer(네트워크 계층): datagram / packet (데이터그램/패킷)
    data link layer(데이터링크 계층): frame(프레임)
    physical layer(물리계층): bits(비트)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

77. C언어에서 연산자 우선순위가 높은 것에서 낮은 것으로 바르게 나열된 것은?

  1. ㉠, ㉥, ㉣, ㉢, ㉡, ㉤
  2. ㉠, ㉣, ㉥, ㉢, ㉡, ㉤
  3. ㉠, ㉣, ㉥, ㉢, ㉤, ㉡
  4. ㉠, ㉥, ㉣, ㉤, ㉡, ㉢
(정답률: 46%)
  • C언어의 연산자 우선순위는 증감 $\rightarrow$ 산술 $\rightarrow$ 시프트 $\rightarrow$ 관계 $\rightarrow$ 비트 $\rightarrow$ 논리 $\rightarrow$ 조건 $\rightarrow$ 대입 순으로 적용됩니다.
    제시된 이미지 의 연산자를 분석하면 다음과 같습니다.
    ㉠ $()$ (괄호: 최우선) $\rightarrow$ ㉥ $/$ (산술) $\rightarrow$ ㉣ $<<$ (시프트) $\rightarrow$ ㉢ $<$ (관계) $\rightarrow$ ㉡ $==$ (관계) $\rightarrow$ ㉤ $||$ (논리)
    따라서 올바른 순서는 ㉠, ㉥, ㉣, ㉢, ㉡, ㉤ 입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

78. C언어 라이브러리 중 stdlib.h에 대한설명으로 옳은 것은?

  1. 문자열을 수치 데이터로 바꾸는 문자 변환함수와 수치를 문자열로 바꿔주는 변환함수 등이 있다.
  2. 문자열 처리 함수로 strlen()이 포함되어 있다.
  3. 표준 입출력 라이브러리이다.
  4. 삼각 함수, 제곱근, 지수 등 수학적인 함수를 내장하고 있다.
(정답률: 54%)
  • stdlib.h는 문자열을 수치로 변환하는 atoi, atof 함수와 수치를 문자열로 변환하는 itoa 함수 등 문자 변환 함수와 동적 메모리 관리, 난수 생성 함수를 포함하는 표준 라이브러리입니다.

    오답 노트

    strlen(): string.h에 포함
    표준 입출력: stdio.h에 해당
    수학 함수: math.h에 내장
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

79. 자바스크립트(JavaScript)와 관련한 설명으로 틀린 것은? (문제 오류로 가답안 발표시 2번으로 발표되었지만 확정 답안 발표시 모두 정답처리 되었습니다. 여기서는 가답안인 2번을 누르면 정답 처리 됩니다.)

  1. 프로토타입(Prototype)의 개념이 존재한다.
  2. 클래스 기반으로 객체 상속을 지원한다.
  3. Prototype Link와 Prototype Object를 활용할 수 있다.
  4. 객체지향 언어이다.
(정답률: 86%)
  • 자바스크립트는 클래스 기반이 아닌 프로토타입 기반의 객체지향 언어입니다. ES6부터 클래스 문법이 도입되었으나, 이는 내부적으로 프로토타입을 통해 구현된 것이므로 근본적으로 클래스 기반 상속을 지원한다고 보기 어렵습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

80. OSI 7계층 중 네트워크 계층에 대한 설명으로 틀린 것은?

  1. 패킷을 발신지로부터 최종 목적지까지 전달하는 책임을 진다.
  2. 한 노드로부터 다른 노드로 프레임을 전송하는 책임을 진다.
  3. 패킷에 발신지와 목적지의 논리 주소를 추가한다.
  4. 라우터 또는 교환기는 패킷 전달을 위해 경로를 지정하거나 교환 기능을 제공한다.
(정답률: 53%)
  • 한 노드로부터 다른 노드로 프레임을 전송하는 책임을 지는 계층은 네트워크 계층이 아니라 데이터 링크 계층입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

5과목: 정보시스템 구축관리

81. 다음 내용이 설명하는 것은?

  1. SAN
  2. MBR
  3. NAC
  4. NIC
(정답률: 61%)
  • 광채널 스위치를 통해 고속 전송과 장거리 연결을 지원하며, 서로 다른 운영체제를 가진 기종들이 동일한 저장장치의 데이터를 공유할 수 있도록 저장장치를 단일화시킨 시스템은 SAN(Storage Area Network)입니다.

    오답 노트

    MBR: 기억장치 출입 데이터가 잠시 기억되는 레지스터
    NAC: MAC 주소를 IP 관리 시스템에 등록하여 보안을 관리하는 기능
    NIC: 물리 계층과 데이터 링크 계층의 서비스를 제공하는 네트워크 인터페이스 카드
  • *SAN (Storage Area Network)은 여러 대의 서버, 호스트 및 스토리지 장치가 네트워크를 통해 서로 통신하는 것을 말합니다. SAN은 여러 대의 컴퓨터 및 서버에서 공유할 수 있는 공유 스토리지 풀을 제공하기 위해 사용됩니다. SAN은 대개 광케이블을 사용하여 데이터를 전송하며, 높은 대역폭과 낮은 지연 시간을 제공합니다. SAN은 대규모 데이터 센터 및 기업에서 많이 사용되며, 대용량 데이터의 저장 및 관리를 위해 사용됩니다.
  • MBR은 memory buffer register으로, 기억장치를 출입하는 데이터가 잠시 기억되는 레지스터
    NAC는 network access control, PC의 MAC주소를 IP 관리 시스템에 등록, 일관된 보안관리 기능을 제공
    NIC는 물리 계층과 데이터 계층의 서비스를 제공
    [해설작성자 : 컴린이]

    SAN = Storage Area Network
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

82. SSH(Secure Shell)에 대한 설명으로 틀린 것은?

  1. SSH의 기본 네트워크 포트는 220번을 사용한다
  2. 전송되는 데이터는 암호화 된다.
  3. 키를 통한 인증은 클라이언트의 공개키를 서버에 등록해야 한다.
  4. 서로 연결되어 있는 컴퓨터 간 원격 명령실행이나 셀 서비스 등을 수행한다.
(정답률: 70%)
  • SSH의 기본 네트워크 포트는 22번이다.

    기본 네트워크 포트 22번을 S와 2 의 비슷한 모양으로 기억하면 쉽다. SS가 두개니 포트는 22번
  • SSH의 기본 네트워크 포트는 22번입니다. 220번을 사용한다는 설명은 틀린 내용입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

83. CBD(Component Based Development) SW개발 표준 산출물 중 분석 단계에 해당하는 것은?

  1. 클래스 설계서
  2. 통합시험 결과서
  3. 프로그램 코드
  4. 사용자 요구사항 정의서
(정답률: 64%)
  • CBD 방법론의 분석 단계에서는 사용자의 요구사항을 파악하여 정의하는 과정이 핵심이므로 사용자 요구사항 정의서가 해당 단계의 산출물입니다.

    오답 노트

    클래스 설계서: 설계 단계
    프로그램 코드: 구현 단계
    통합시험 결과서: 테스트 단계
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

84. 다음 내용이 설명하는 접근 제어 모델은?

  1. Clark-Wilson Integrity Model
  2. PDCA Model
  3. Bell-Lapadula Model
  4. Chinese Wall Model
(정답률: 61%)
  • 군대 보안 레벨과 같이 정보의 기밀성에 따라 상하 관계를 구분하고, 낮은 권한자가 높은 레벨의 문서를 읽지 못하게 하며(No Read Up), 낮은 레벨의 문서에 쓰기를 제한(No Write Down)하는 모델은 Bell-Lapadula Model입니다.

    오답 노트

    Clark-Wilson Integrity Model: 기밀성보다 자료의 변조 방지(무결성)에 중점
    Chinese Wall Model: 이익 충돌 방지를 위해 접근을 제한하는 모델
  • BLP 기밀성 모델: 정보의 불법적인 파괴나 변조보다는 불법적인 비밀 유출 방지에 중점 - 기밀성 강조

    Clark-Wilson 무결성 모델: 비밀 노출 방지보다 자료의 변조 방지가 더 중요함(금융, 회계관련 데이터, 기업 재무재표 등)

    Chinese Wall: 충돌을 야기시키는 어떠한 정보의 흐름도 없어야 한다. 이익의 충돌 금지, 최근 일을 한 적 있는 파트너는 동일 영역에 있는 다른 회사 자료에 접근해서는 안된다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

85. 하둡(Hadoop)과 관계형 데이터베이스간에 데이터를 전송할 수 있도록 설계된 도구는?

  1. Apnic
  2. Topology
  3. Sqoop
  4. SDB.
(정답률: 75%)
  • Sqoop은 커넥터를 사용하여 관계형 데이터베이스 시스템(RDBMS)과 하둡 분산 파일 시스템(HDFS) 간에 데이터를 효율적으로 전송하고 수집하는 도구입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

86. 라우팅 프로토콜인 OSPF(Open Shortest Path First)에 대한 설명으로 옳지 않은 것은?

  1. 네트워크 변화에 신속하게 대처할 수 있다.
  2. 거리 벡터 라우팅 프로토콜이라고 한다.
  3. 멀티캐스팅을 지원한다.
  4. 최단 경로 탐색에 Dijkstra 알고리즘을 사용한다.
(정답률: 46%)
  • OSPF는 거리 벡터 방식이 아니라 링크 상태(Link State) 라우팅 프로토콜입니다.

    오답 노트

    거리 벡터 라우팅 프로토콜: Bellman-Ford 알고리즘을 사용하는 RIP 등이 해당함
  • 본 해설은 비추 누적갯수 초과로 자동 블라인드 되었습니다.
    (AI해설 오류가 많아 비추 2개 이상시 자동 블라인드 됩니다.)
    해설을 보시기 원하시면 클릭해 주세요
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

87. 소프트웨어 비용 추정 모형(estimation models)이 아닌 것은?

  1. COCOMO
  2. Putnam
  3. Function-Point
  4. PERT
(정답률: 64%)
  • COCOMO, Putnam, Function-Point는 소프트웨어의 규모나 기능을 기반으로 비용을 산정하는 모델입니다. 반면 PERT는 프로젝트 일정 관리 및 계획 평가를 위한 기술입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

88. 코드의 기입 과정에서 원래 '12536‘으로 기입되어야 하는데 ’12936‘으로 표기되었을 경우, 어떤 코드 오류에 해당하는가?

  1. Addition Error
  2. Omission Error
  3. Sequence Error
  4. Transcription Error
(정답률: 56%)
  • 데이터 입력 시 임의의 한 자리를 잘못 기록하는 오류를 Transcription Error(필사 오류)라고 합니다.

    오답 노트

    Addition Error: 한 자리를 추가로 기록
    Omission Error: 한 자리를 빼놓고 기록
    Sequence Error: 입력 순서가 바뀜
  • 필사 오류 또는 표기 오류라고 한다.
  • 사본오류(Transcription Error) : 작업자나 광 문자 인식(OCR) 프로그램에서 발생하는 데이터 입력 오류
    [해설작성자 : comcbt.com 이용자]

    *생략 오류(omission error)
    입력 시 한 자리를 빼놓고 기록한 경우
    (1234 → 123)
    *필사 오류(Transcription error)
    입력 시 임의의 한 자리를 잘못 기록한 경우
    (1234 → 1235)
    *전위 오류(Transposition error)
    입력 시 좌우 자리를 바꾸어 기록한 경우
    (1234 → 1243)
    *이중 오류(Double Transposition error)
    전위 오류가 두 가지 이상 발생한 경우
    (1234 → 2143)
    *추가 오류(Addition error)
    입력 시 한 자리 추가로 기록한 경우
    (1234 → 12345)
    *임의 오류(Random error)
    위의 오류가 두 가지 이상 결합하여 발생한 경우
    (1234 → 12367)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

89. ISO 12207 표준의 기본 생명주기의 주요 프로세스에 해당하지 않는 것은?

  1. 획득 프로세스
  2. 개발 프로세스
  3. 성능평가 프로세스
  4. 유지보수 프로세스
(정답률: 32%)
  • ISO 12207 표준의 기본 생명주기 프로세스는 소프트웨어 제품의 획득, 공급, 개발, 운영, 유지보수로 구성됩니다. 성능평가 프로세스는 기본 생명주기에 포함되지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

90. 소프트웨어 비용 산정 기법 중 개발 유형으로 organic, semi-detached, embedded로 구분되는 것은?

  1. PUTNAM
  2. COCOMO
  3. FP
  4. SLIM
(정답률: 86%)
  • COCOMO 모델은 소프트웨어의 복잡도와 규모에 따라 개발 유형을 조직형(Organic), 반분리형(Semi-Detached), 내장형(Embedded)의 세 가지 모드로 구분하여 비용을 산정하는 기법입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

91. SPICE 모델의 프로세스 수행능력 수준의 단계별 설명이 틀린 것은?

  1. 수준 7 - 미완성 단계
  2. 수준 5 - 최적화 단계
  3. 수준 4 - 예측 단계
  4. 수준 3 - 확립 단계
(정답률: 72%)
  • SPICE 모델의 프로세스 수행능력 수준은 0단계(불안정)부터 5단계(최적화)까지 총 6단계로 구성됩니다. 따라서 수준 7이라는 단계는 존재하지 않습니다.

    오답 노트

    수준 5: 최적화 단계 (정상)
    수준 4: 예측 단계 (정상)
    수준 3: 확립 단계 (정상)
  • SPICE (Software Process Improvement and Capability dEtermination) 모델은 소프트웨어 개발 프로세스의 품질을 평가하기 위한 국제 표준입니다. SPICE 모델은 ISO/IEC 15504 표준으로 제정되었으며, 소프트웨어 개발 프로세스의 성숙도를 6단계로 나누어 평가합니다. SPICE 모델은 ISO 12207의 소프트웨어 생명주기 프로세스 기반으로 하며, 프로세스 차원과 프로세스 수행 능력 차원으로 구성됩니다. 프로세스 차원은 5개의 프로세스 카테고리와 40개의 세부 프로세스로 구성되며, 각 프로세스 별로 목적을 달성하기 위한 기준을 제시합니다. 프로세스 수행 능력 차원은 조직이 특정 프로세스를 달성하거나 혹은 달성 목표로 가능한 능력 수준 0~5까지의 6개의 Capability Level (CL0~CL5)로 구성됩니다.
  • SPICE 모델은
    수준 0부터 수준 5까지 총 6개의 수준이다.
    [해설작성자 : 해군본부 정체단 674기 수뱅]

    0단계 불안정 (구현 전 or 목적 달성 전)
    1단계 수행 (목적이 전반적으로 이뤄짐)
    2단계 관리 (작업 산출물 인도)
    3단계 확립(공학 원칙을 지킴)
    4단계 예측(산출물의 양적 측정이 가능해져, 일관된 수행 가능)
    5단계 최적화(지속적으로 업무 목적 만족)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

92. PC, TV, 휴대폰에서 원하는 콘텐츠를 끊김없이 자유롭게 이용할 수 있는 서비스는?

  1. Memristor
  2. MEMS
  3. SNMP
  4. N-Screen
(정답률: 70%)
  • N-Screen은 PC, TV, 스마트폰 등 N개의 서로 다른 단말기에서 동일한 콘텐츠를 끊김 없이 자유롭게 이용할 수 있는 서비스입니다.

    오답 노트

    Memristor: 전원 공급이 끊겨도 이전 상태를 복원하는 메모리 소자
    MEMS: 미세 가공 기술을 이용한 초미세 전기기계 시스템
    SNMP: 네트워크 장비 관리를 위한 프로토콜
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

93. 해쉬(Hash) 기법에 대한 설명으로 틀린 것은?

  1. 임의의 길이의 입력 데이터를 받아 고정된 길이의 해쉬 값으로 변환한다.
  2. 주로 공개키 암호화 방식에서 키 생성을 위해 사용한다.
  3. 대표적인 해쉬 알고리즘으로 HAVAL, SHA-1 등이 있다.
  4. 해쉬 함수는 일방향 함수(One-way function)이다.
(정답률: 50%)
  • 해쉬(Hash)는 임의의 길이의 데이터를 고정된 길이의 값으로 변환하는 단방향 함수이며, 무결성 검증 등에 사용됩니다. 반면, 공개키 암호화 방식은 암호화와 복호화가 모두 가능한 양방향 암호화 방식에 해당하므로 해쉬 기법의 설명으로 적절하지 않습니다.
  • 공개키 암호화 방식은 소수와 소인수분해의 특징을 이용함.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

94. IPSec(IP Security)에 대한 설명으로 틀린 것은?

  1. 암호화 수행시 일방향 암호화만 지원한다.
  2. ESP는 발신지 인증, 데이터 무결성, 기밀성 모두를 보장한다.
  3. 운영 모드는 Tunnel 모드와 Transport 모드로 분류된다.
  4. AH는 발신지 호스트를 인증하고, IP 패킷의 무결성을 보장한다.
(정답률: 73%)
  • IPSec은 기밀성 보장을 위해 양방향 암호화를 지원하며, 일방향 암호화(해시)는 무결성 검증 등에 사용됩니다.

    오답 노트

    ESP: 인증, 무결성, 기밀성을 모두 제공함
    운영 모드: Tunnel 모드와 Transport 모드로 구분됨
    AH: 기밀성을 제외한 인증과 무결성을 보장함
  • *IPSec는 OSI 7계층에서 네트워크 계층에 위치합니다. 같은 계층의 다른 프로토콜로는 ICMP, IGMP, IP 등이 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

95. 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?

  1. Stack Guard
  2. Bridge
  3. ASLR
  4. FIN
(정답률: 82%)
  • Stack Guard는 스택의 복귀 주소와 변수 사이에 카나리(Canary)라는 특정 값을 삽입하여, 오버플로우 발생 시 이 값이 변경되었는지를 확인해 프로그램 실행을 중단시키는 기술입니다.

    오답 노트

    ASLR: 메모리 주소를 랜덤하게 배치하여 공격자의 주소 추측을 어렵게 하는 기법
    Bridge: 구현부와 추상층을 분리하여 독립적 확장을 가능하게 하는 디자인 패턴
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

96. 침입차단 시스템(방화벽) 중 다음과 같은 형태의 구축 유형은?

  1. Block Host
  2. Tree Host
  3. Screened Subnet
  4. Ring Homed
(정답률: 49%)
  • 제시된 이미지 처럼 외부 네트워크와 내부 네트워크 사이에 완충 지대(DMZ)를 두어 보안을 강화하는 구축 유형을 Screened Subnet이라고 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

97. Secure OS의 보안 기능으로 거리가 먼 것은?

  1. 식별 및 인증
  2. 임의적 접근 통제
  3. 고가용성 지원
  4. 강제적 접근 통제
(정답률: 74%)
  • Secure OS는 식별 및 인증, 강제적/임의적 접근 통제, 객체 재사용 방지 등 보안 커널 기능을 통해 시스템 보안을 강화하는 운영체제입니다. 고가용성 지원은 보안 기능이 아닌 시스템의 성능 및 가용성에 관한 영역입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

98. 서버에 열린 포트 정보를 스캐닝해서 보안취약점을 찾는데 사용하는 도구는?

  1. type
  2. mkdir
  3. ftp
  4. nmap
(정답률: 67%)
  • nmap은 네트워크 상의 호스트를 탐색하고 열려 있는 포트 정보를 스캐닝하여 보안 취약점을 분석하는 대표적인 도구입니다.

    오답 노트

    type: 파일 내용을 출력하는 명령어
    mkdir: 새로운 디렉토리를 생성하는 명령어
    ftp: 파일 전송을 위한 응용 계층 프로토콜
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

99. 서로 다른 네트워크 대역에 있는 호스트들 상호간에 통신할 수 있도록 해주는 네트워크 장비는?

  1. L2 스위치
  2. HIPO
  3. 라우터
  4. RAD.
(정답률: 79%)
  • 라우터는 서로 다른 네트워크 대역(LAN과 LAN, 또는 LAN과 WAN)을 연결하며, 데이터 전송의 최적 경로를 선택하고 프로토콜 변환 기능을 수행하는 3계층 장비입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

100. 암호화 키와 복호화 키가 동일한 암호화 알고리즘은?

  1. RSA
  2. AES
  3. DSA
  4. ECC
(정답률: 58%)
  • 암호화 키와 복호화 키가 동일한 방식을 대칭키(개인키) 암호화 기법이라고 하며, AES가 이에 해당합니다.

    오답 노트

    RSA: 공개키와 비밀키를 사용하는 비대칭키 기법
    DSA: 전자서명 표준 알고리즘
    ECC: 타원곡선을 이용한 비대칭키 기법
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

< 이전회차목록 다음회차 >