정보처리기사 필기 기출문제복원 (2020-08-22)

정보처리기사 2020-08-22 필기 기출문제 해설

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

정보처리기사
(2020-08-22 기출문제)

목록

1과목: 소프트웨어 설계

1. 요구사항 분석 시에 필요한 기술로 가장 거리가 먼 것은?

  1. 청취와 인터뷰 질문 기술
  2. 분석과 중재기술
  3. 설계 및 코딩 기술
  4. 관찰 및 모델 작성 기술
(정답률: 83%)
  • 요구사항 분석 단계에서는 인터뷰, 설문, 모델링, 협상 등이 필요하므로 청취, 중재, 관찰 및 모델 작성 기술이 핵심입니다. 설계 및 코딩 기술은 요구사항 분석이 완료된 후, 실제 시스템을 구현하는 단계에서 필요한 기술입니다.
  • 요구사항 개발 프로세스 : 도출 → 분석 → 명세 → 확인
    요구사항 도출 단계 주요 기법은 인터뷰, 설문, 브레인스토밍 등이 있어 청취와 인터뷰 질문 기술이 필요함.

    요구사항 분석 기법에
    개념 모델링이 있으므로 관찰 및 모델 작성 기술 필요함.
    요구사항 분석 기법에 정형 분석과 요구사항 협상이 있으므로 관찰 및 모델 작성 기술 필요함.
    ※ 요구사항 분석 기법 : 요구사항 분류, 개념 모델링, 요구사항 할당, 요구사항 협상, 정형 분석
    [해설작성자 : ㅇㅎㅅ]

    설계 및 코딩 기술은 요구사항 분석 후에 필요한 기술이다
    [해설작성자 : comcbt.com 이용자]

    아래와 같은 오류 신고가 있었습니다.
    여러분들의 많은 의견 부탁 드립니다.
    추후 여러분들의 의견을 반영하여 정답을 수정하도록 하겠습니다.
    참고로 정답 변경은 오류 신고 5회 이상일 경우 수정합니다.

    [오류 신고 내용]
    요구사항 분석 기법에 정형 분석과 요구사항 협상이 있으므로 관찰 및 모델 작성 기술 필요함. -> 분석과 중재기술이 필요함 아닌가요
    [해설작성자 : 김시온짱짱맨]

    [추가 오류 신고]
    해설 부분에 요구사항 분석 기법에 정형 분석과 요구사항 협상이 있으므로 "분석과 중재기술" 필요함 인 것 같습니다.
profile_image
1

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

2. 다음 내용이 설명하는 디자인 패턴은?

  1. Visitor패턴
  2. Observer패턴
  3. Factory Method 패턴
  4. Bridge 패턴
(정답률: 71%)
  • 객체 생성을 위한 인터페이스를 정의하고, 실제 어떤 클래스를 인스턴스화할지는 서브클래스가 결정하도록 하는 패턴이며, Virtual-Constructor 패턴이라고도 불리는 것은 Factory Method 패턴의 핵심 특징입니다.

    오답 노트

    Visitor패턴: 데이터 구조에서 처리 기능을 분리하여 별도 클래스로 구성함
    Observer패턴: 한 객체의 상태 변화를 연결된 다른 객체들에게 전달함
    Bridge 패턴: 구현부와 추상층을 분리하여 독립적으로 확장함
  • 1. Visitor(방문자) 패턴 <행위 패턴>
    - 각 클래스들의 데이터 구조에서 처리 기능을 분리하여 별도의 클래스로 구성함.
    분리된 처리 기능은 각 클래스를 방문하여 수행

    2. Observer 패턴 <행위 패턴>
    - 한 객체의 상태가 변화하면 객체에 상속되어 있는 다른 객체들에게 변화된 상태를 전달.
    분산된 시스템 간에 이벤트 생성, 발행(Publish), 이를 수신(Subscribe)해야할 때 이용함

    4. Bridge 패턴 <구조 패턴>
    - 구현부에서 추상층을 분리, 서로가 독립적으로 확장함
    기능과 구현을 두 개의 별도 클래스로 구현함
profile_image
1

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

3. 럼바우 객체 지향 분석과 거리가 먼 것은?

  1. 기능 모델링
  2. 동적 모델링
  3. 객체 모델링
  4. 정적 모델링
(정답률: 93%)
  • 럼바우(Rumbaugh) 분석 기법은 분석 활동을 객체 모델링, 동적 모델링, 기능 모델링의 세 가지 단계로 나누어 수행하는 것이 핵심입니다.

    오답 노트

    정적 모델링: 럼바우의 3대 모델링에 포함되지 않는 개념입니다.
profile_image
1

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

4. 애자일 기법에 대한 설명으로 맞지 않은 것은?

  1. 절차와 도구보다 개인과 소통을 중요하게 생각한다.
  2. 계획에 중점을 두어 변경 대응이 난해하다.
  3. 소프트웨어가 잘 실행되는데 가치를 둔다.
  4. 고객과의 피드백을 중요하게 생각한다.
(정답률: 94%)
  • 애자일(Agile) 개발 방법론의 핵심 가치를 이해하는 문제입니다.
    애자일은 계획을 엄격히 따르기보다 변화에 유연하게 반응하는 것을 중요하게 생각합니다. 따라서 계획에 중점을 두어 변경 대응이 난해하다는 설명은 애자일의 철학과 정반대되는 내용입니다.
profile_image
1

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

5. 미들웨어 솔루션의 유형에 포함되지 않는 것은?

  1. WAS
  2. Web Server
  3. RPC
  4. ORB
(정답률: 68%)
  • 미들웨어는 서로 다른 애플리케이션이나 시스템 사이에서 통신을 돕는 소프트웨어입니다. Web Server는 클라이언트의 요청을 받아 정적 파일(HTML, 이미지 등)을 직접 제공하는 서버 소프트웨어이며, 미들웨어 솔루션 유형에 해당하지 않습니다.

    오답 노트

    WAS: 동적 콘텐츠 처리를 위한 웹 환경 구현 미들웨어
    RPC: 원격 프로시저를 로컬처럼 호출하게 하는 미들웨어
    ORB: 객체 지향 미들웨어 표준인 CORBA 구현체
  • 1. WAS(웹 애플리케이션 서버)
    - 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리함
    - 웹 환경을 구현하기 위한 미들웨어

    2. Web Server
    - 클라이언트로부터 직접 요청을 받아 처리, 저용량의 정적 파일들을 제공하는 소프트웨어

    3. RPC(Remot Procedure Call)
    - 응용 프로그램이 프로시저를 사용하여 원격 프로시저를 마치 로컬 프로시저처럼 호출하는 미들웨어

    4. ORB(Object Request Broker)
    - 객체 지향 미들웨어로 코바(CORBA) 표준 스펙을 구현함
    - 최근에는 TP-Monitor의 장점인 트랜잭션 처리와 모니터링 등을 추가로 구현한 제품도 있음
profile_image
1

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

6. UML에서 시퀀스 다이어그램의 구성 항목에 해당하지 않는 것은?

  1. 생명선
  2. 실행
  3. 확장
  4. 메시지
(정답률: 60%)
  • 시퀀스 다이어그램은 객체 간의 상호작용을 시간 흐름에 따라 표현하며, 주요 구성 항목으로는 액터, 객체, 생명선, 메시지, 실행 상자가 있습니다. 확장은 시퀀스 다이어그램의 기본 구성 요소가 아닙니다.
  • 시퀀스 다이어그램 구성 항목
    액터, 활성 객체(object), 라이프라인(생명선), 메세지, 제어 삼각형

    시퀀스(Sequence) 다이어그램 - 액, 객, 생, 메, 실
    : 메시지(함수호출)를 주고받으면서 시간의 흐름에 따라 상호작용하는 과정들(그림으로 표현)
    액터(Actor) : 시스템으로부터 서비스를 요청하는 외부요소로, 사람이나 외부 시스템 의미
    객체(object) : 메시지를 주고받는 주체
    생명선(Lifeline) : 객체가 메모리에 존재하는 기간으로, 객체 아래쪽에 점선을 그어 표현
    메시지(Message) : 객체가 상호 작용을 위해 주고받는 메시지
    실행 상자(Active Box) : 객체가 메시지를 주고받으며 구동되고 있음을 표현
profile_image
1

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

7. 객체지향에서 정보 은닉과 가장 밀접한 관계가 있는 것은?

  1. Encapsulation
  2. Class
  3. Method
  4. Instance
(정답률: 91%)
  • 캡슐화(Encapsulation)는 데이터와 이를 처리하는 연산을 하나로 묶는 것으로, 외부에서 내부 데이터에 직접 접근하지 못하게 숨기는 정보 은닉의 핵심 개념입니다.
  • 정보 은닉 : 캡슐화에서 가장 중요한 개념, 다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통해 접근을 허용
profile_image
1

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

8. 디자인 패턴 중에서 행위적 패턴에 속하지 않는 것은?

  1. 커맨드 (Command) 패턴
  2. 옵저버 (Observer) 패턴
  3. 프로토타입 (Prototype) 패턴
  4. 상태 (State) 패턴
(정답률: 68%)
  • 프로토타입 패턴은 객체의 생성 과정을 캡슐화하여 기존 객체를 복제해 새로운 객체를 생성하는 생성 패턴에 속합니다.

    오답 노트

    커맨드, 옵저버, 상태 패턴: 객체 간의 상호작용과 책임 분배를 정의하는 행위적 패턴입니다.
profile_image
1

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

9. UI 설계 원칙 중 누구나 쉽게 이해하고 사용할 수 있어야 한다는 원칙은?

  1. 희소성
  2. 유연성
  3. 직관성
  4. 멀티운용성
(정답률: 94%)
  • UI 설계 원칙 중 직관성은 사용자가 별도의 학습 없이도 누구나 쉽게 이해하고 사용할 수 있어야 한다는 원칙을 의미합니다.

    오답 노트

    유연성: 사용자 요구사항 수용 및 실수 최소화
    희소성: UI 설계의 기본 원칙에 해당하지 않음
    멀티운용성: UI 설계의 기본 원칙에 해당하지 않음
profile_image
1

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

10. 코드의 기본 기능으로 거리가 먼 것은?

  1. 복잡성
  2. 표준화
  3. 분류
  4. 식별
(정답률: 92%)
  • 코드의 기본 기능은 데이터를 구분하는 식별, 그룹화하는 분류, 일정한 형태로 표현하는 표준화, 그리고 의미 있게 나열하는 배열 기능이 있습니다. 복잡성은 코드의 기능이 아니며, 오히려 코드는 복잡성을 줄이기 위해 사용됩니다.
profile_image
1

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

11. 다음 ( ) 안에 들어갈 내용으로 옳은 것은?

  1. 협약(Contract)
  2. 프로토콜(Protocol)
  3. 패턴(Pattern)
  4. 관계(Relation)
(정답률: 72%)
  • 선행조건, 결과조건, 불변조건을 명세하여 소프트웨어 컴포넌트의 인터페이스를 정확하게 정의하는 설계 방법을 협약(Contract)에 의한 설계라고 합니다.

    오답 노트

    프로토콜(Protocol): 통신 규약 또는 장치 간의 약속을 의미합니다.
profile_image
1

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

12. UML에서 활용되는 다이어그램 중, 시스템의 동작을 표현하는 행위(Behavioral) 다이어그램에 해당하지 않는 것은?

  1. 유스케이스 다이어그램(Use Case Diagram)
  2. 시퀀스 다이어그램(Sequence Diagram)
  3. 활동 다이어그램(Activity Diagram)
  4. 배치 다이어그램(Deployment Diagram)
(정답률: 72%)
  • 배치 다이어그램(Deployment Diagram)은 시스템의 물리적 배치 구조를 표현하는 구조적(Structural) 다이어그램입니다.

    오답 노트

    유스케이스, 시퀀스, 활동 다이어그램은 모두 시스템의 동적 동작을 표현하는 행위(Behavioral) 다이어그램에 해당합니다.
  • < 행위(Behavioral) 다이어그램 >
    1. 유스케이스(UseCase) 다이어그램
    2. 시퀀스(Sequence) 다이어그램
    3. 커뮤니케이션(Communication) 다이어그램
    4. 상태(State) 다이어그램
    5. 활동(Activity) 다이어그램
    6. 상호작용 개요(Interaction Overview) 다이어그램
    7. 타이밍(Timing) 다이어그램

    4. 배치(Deployment) 다이어그램은 구조적(Structural) 다이어그램이다.
  • 행위(Behavioral) 다이어그램
    --------------------------------------------------
    1. 유스케이스(UseCase) 다이어그램
    2. 시퀀스(Sequence) 다이어그램
    3. 커뮤니케이션(Communication) 다이어그램
    4. 상태(State) 다이어그램
    5. 활동(Activity) 다이어그램
    6. 상호작용 개요(Interaction Overview) 다이어그램
    7. 타이밍(Timing) 다이어그램

    4. 배치(Deployment) 다이어그램은 구조적(Structural) 다이어그램
profile_image
1

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

13. 객체 지향 소프트웨어 공학에서 하나 이상의 유사한 객체들을 묶어서 하나의 공통된 특성을 표현한 것은?

  1. 트랜지션
  2. 클래스
  3. 시퀀스
  4. 서브루틴
(정답률: 93%)
  • 클래스는 공통된 속성과 연산(행위)을 갖는 객체들의 집합이자 객체의 일반적인 타입을 의미합니다.
profile_image
1

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

14. 아래의 UML 모델에서 '차' 클래스와 각 클래스의 관계로 옳은 것은?

  1. 추상화 관계
  2. 의존 관계
  3. 일반화 관계
  4. 그룹 관계
(정답률: 70%)
  • 제시된 이미지 에서 하위 클래스(버스, 트럭, 택시)가 상위 클래스(차)를 향해 속이 빈 화살표로 연결되어 있습니다. 이는 구체적인 개념이 일반적인 개념으로 확장되는 일반화 관계를 나타냅니다.
profile_image
1

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

15. 객체지향 소프트웨어 설계시 디자인 패턴을 구성하는 요소로서 가장 거리가 먼 것은?

  1. 개발자이름
  2. 문제 및 배경
  3. 사례
  4. 샘플코드
(정답률: 95%)
  • 디자인 패턴은 특정 문제에 대한 해결책을 정의한 것으로, 패턴 이름, 문제 및 배경, 솔루션, 사례, 결과, 샘플코드로 구성됩니다. 개발자이름은 패턴의 구성 요소에 해당하지 않습니다.
profile_image
1

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

16. 자료 사전에서 자료의 반복을 의미하는 것은?

  1. =
  2. ( )
  3. { }
  4. [ ]
(정답률: 77%)
  • 자료 사전(Data Dictionary) 표기법에서 중괄호 { }는 자료의 반복을 의미합니다.

    오답 노트

    = : 자료의 정의
    + : 자료의 연결
    ( ) : 자료의 생략
    [ ] : 자료의 선택
  • 자료 사전 표기법
    = : 자료의 정의
    + : 자료의 연결
    () : 자료의 생략
    [] : 자료의 선택
    {} : 자료의 반복
    ** : 자료의 설명(주석)
profile_image
1

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

17. 객체지향 설계 원칙 중, 서브타입(상속받은 하위 클래스)은 어디에서나 자신의 기반타입(상위클래스)으로 교체할 수 있어야 함을 의미하는 원칙은?

  1. ISP(Interface Segregation Principle)
  2. DIP(Dependency Inversion Principle)
  3. LSP(Liskov Substitution Principle)
  4. SRP(Single Responsibility Principle)
(정답률: 69%)
  • LSP(Liskov Substitution Principle)는 리스코프 치환 원칙으로, 자식 클래스는 최소한 자신의 부모 클래스에서 가능한 행위를 수행할 수 있어야 하며, 상위 클래스를 하위 클래스로 교체해도 시스템이 정상 작동해야 한다는 원칙입니다.

    오답 노트

    ISP: 인터페이스를 클라이언트에 특화되도록 분리하는 원칙
    DIP: 변화하기 쉬운 것보다 변화하기 어려운 것에 의존하라는 원칙
    SRP: 객체는 단 하나의 책임만 가져야 한다는 원칙
profile_image
1

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

18. 자료흐름도(Data Flow Diagram)의 구성요소로 옳은 것은?

  1. process, data flow, data store, comment
  2. process, data flow, data store, terminator
  3. data flow, data store, terminator, data dictionary
  4. process, data store, terminator, mini-spec
(정답률: 85%)
  • 자료흐름도(DFD)를 구성하는 4가지 핵심 요소는 프로세스(Process), 자료 흐름(Data Flow), 자료 저장소(Data Store), 단말(Terminator)입니다.
profile_image
1

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

19. CASE(Computer-Aided Software Engineering)도구에 대한 설명으로 거리가 먼 것은?

  1. 소프트웨어 개발 과정의 일부 또는 전체를 자동화하기 위한 도구이다.
  2. 표준화된 개발 환경 구축 및 문서 자동화 기능을 제공한다.
  3. 작업 과정 및 데이터 공유를 통해 작업자간 커뮤니케이션을 증대한다.
  4. 2000년대 이후 소개되었으며, 객체지향 시스템에 한해 효과적으로 활용된다.
(정답률: 79%)
  • CASE 도구는 1980년대에 소개되어 1990년대부터 널리 사용되었으며, 객체지향 시스템뿐만 아니라 구조적 시스템 등 모든 소프트웨어 개발 분야에 효과적으로 적용될 수 있습니다.
  • 소프트웨어 공학의 자동화를 의미, 소프트웨어 공학작업을 자동화한 소프트웨어 패키지를 CASE도구라고 한다.
    CASE도구들은 소프트웨어 관리자들과 실무자들이 소프트웨어 프로세스와 관련된 활동을 지원한다. 즉, 프로젝트 관리 활동을 자동화하고, 결과물을 관리하며, 엔지니어들의 분석, 설계 및 코딩과 테스트작업을 도운다.

    주요기능: 다양한 소프트웨어 개발 모형 지원, 그래픽 지원, 소프트웨어 생명주기의 전단계 연결

    CASE는 1980년대에 소개되었으며, 1990년대부터 자주 사용되었습니다.

    CASE는 객체지향 시스템 뿐만 아니라 구조 시스템등 모든분야에 적용됨
  • CASE tools는 1960년대에 처음 등장했고
    1980년대에 이르러 객체지향 CASE tools가 사용되기 시작했습니다.
profile_image
1

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

20. 인터페이스 요구 사항 검토 방법에 대한 설명이 옳은 것은?

  1. 리팩토링 : 작성자 이외의 전문 검토 그룹이 요구사항 명세서를 상세히 조사하여 결함, 표준 위배, 문제점 등을 파악
  2. 동료검토 : 요구 사항 명세서 작성자가 요구 사항 명세서를 설명하고 이해관계자들이 설명을 들으면서 결함을 발견
  3. 인스펙션 : 자동화된 요구 사항 관리 도구를 이용하여 요구 사항 추적성과 일관성을 검토
  4. CASE 도구 : 검토 자료를 회의 전에 배포해서 사전 검토한 후 짧은 시간 동안 검토 회의를 진행하면서 결함을 발견
(정답률: 70%)
  • 동료검토는 요구사항 명세서 작성자가 내용을 설명하고, 이해관계자들이 이를 들으며 결함을 발견하는 검토 방법입니다.

    오답 노트

    리팩토링: 작성자 외 전문 검토 그룹이 상세 조사하여 결함을 파악하는 것은 인스펙션에 해당함
    동료검토: (정답)
    인스펙션: 자동화 도구를 이용해 추적성과 일관성을 검토하는 것은 CASE 도구에 해당함
    CASE 도구: 사전 배포 후 짧은 회의를 통해 결함을 발견하는 것은 워크스루에 해당함
profile_image
1

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

2과목: 소프트웨어 개발

21. 인터페이스 보안을 위해 네트워크 영역에 적용될 수 있는 솔루션과 거리가 먼 것은?

  1. IPSec
  2. SSL
  3. SMTP
  4. S-HTTP
(정답률: 81%)
  • SMTP는 전자 우편을 교환하기 위한 단순 메일 전송 프로토콜이며, 보안 솔루션이 아닙니다.

    오답 노트

    IPSec: 네트워크 계층에서 패킷 단위의 변조 방지 및 은닉 제공
    SSL: 전송 계층과 응용 계층 사이에서 인증 및 암호화 보장
    S-HTTP: 클라이언트와 서버 간 전송 메시지 암호화
profile_image
1

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

22. 소프트웨어 공학의 기본 원칙이라고 볼 수 없는 것은?

  1. 품질 높은 소프트웨어 상품 개발
  2. 지속적인 검증 시행
  3. 결과에 대한 명확한 기록 유지
  4. 최대한 많은 인력 투입
(정답률: 95%)
  • 소프트웨어 개발에서 무조건적인 인력 투입이 생산성 향상으로 이어지지는 않습니다.

    오답 노트

    최대한 많은 인력 투입: 브룩스의 법칙(Brooks' Law)에 따라 지연되는 프로젝트에 인력을 추가 투입하면 오히려 더 늦어질 수 있습니다.
profile_image
1

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

23. 패키지 소프트웨어의 일반적인 제품 품질 요구사항 및 테스트를 위한 국제 표준은?

  1. ISO/IEC 2196
  2. IEEE 19554
  3. ISO/IEC 12119
  4. ISO/IEC 14959
(정답률: 69%)
  • ISO/IEC 12119는 패키지 소프트웨어 제품의 품질 요구사항 및 테스트를 위한 국제 표준입니다.

    오답 노트

    현재는 ISO/IEC 25010으로 대체되었습니다.
profile_image
1

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

24. 다음 중 클린 코드 작성원칙으로 거리가 먼 것은?

  1. 누구든지 쉽게 이해하는 코드 작성
  2. 중복이 최대화된 코드 작성
  3. 다른 모듈에 미치는 영향 최소화
  4. 단순, 명료한 코드 작성
(정답률: 93%)
  • 클린 코드의 핵심은 가독성, 단순성, 의존성 배제, 그리고 중복성 최소화입니다. 따라서 중복이 최대화된 코드 작성은 클린 코드 원칙에 정면으로 위배됩니다.
profile_image
1

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

25. 블랙박스 테스트의 유형으로 틀린 것은?

  1. 경계값 분석
  2. 오류 예측
  3. 동등 분할 기법
  4. 조건, 루프 검사
(정답률: 75%)
  • 조건 검사와 루프 검사는 프로그램의 내부 구조(소스 코드)를 직접 분석하여 테스트하는 화이트박스 테스트의 대표적인 유형입니다.

    오답 노트

    경계값 분석, 오류 예측, 동등 분할 기법: 내부 구조를 보지 않고 입력과 출력만을 확인하는 블랙박스 테스트 기법임
profile_image
1

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

26. 제어흐름 그래프가 다음과 같을 때 McCabe의 cyclomatic 수는 얼마인가?

  1. 3
  2. 4
  3. 5
  4. 6
(정답률: 65%)
  • V(G) = Edge - Node + 2

    Edge = 6 (화살표)
    Node = 4 (동그라미)

    V(G) = 6 - 4 + 2 = 4
    [해설작성자 : zz]

    6-4+2 = 4

    V(G) = Edge - Node + 2

    Edge = 6
    Node = 4
  • McCabe의 순환 복잡도(Cyclomatic Complexity)는 제어 흐름 그래프의 간선 수와 노드 수를 이용하여 프로그램의 논리적 복잡도를 측정합니다.
    이미지 분석 결과, 간선(Edge)은 6개, 노드(Node)는 4개입니다.
    ① [기본 공식] $V(G) = E - N + 2$
    ② [숫자 대입] $V(G) = 6 - 4 + 2$
    ③ [최종 결과] $V(G) = 4$
  • McCabe의 순환 복잡도공식은 간선개수 - 노드개수 + 2*컴포넌트 개수

    V(G)=E−N+2P를 따름. (일반적으로 이런 그래프의 형태로 주어지는 문제는 컴포넌트 1개가 주어지는게 일반적이므로, E-N+2의 공식을 따름)

    간선 개수 = 6개, 노드 개수 = 4개, 컴포넌트 개수 = 1개
    6-4+2*1 = 4
profile_image
1

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

27. 다음 자료에 대하여 선택(Selection) 정렬을 이용하여 오름차순으로 정렬하고자 한다. 3회전 후의 결과로 옳은 것은?

  1. 14, 17, 37, 40, 35
  2. 14, 37, 17, 40, 35
  3. 17, 14, 37, 35, 40
  4. 14, 17, 35, 40, 37
(정답률: 70%)
  • 선택 정렬은 정렬되지 않은 영역에서 최솟값을 찾아 정렬된 영역의 맨 앞 값과 교환하는 과정을 반복합니다.
    대상 데이터:
    1회전: 최솟값 14를 찾아 맨 앞 37과 교환 $\rightarrow$ 14, 37, 17, 40, 35
    2회전: 나머지 중 최솟값 17을 찾아 37과 교환 $\rightarrow$ 14, 17, 37, 40, 35
    3회전: 나머지 중 최솟값 35를 찾아 37과 교환 $\rightarrow$ 14, 17, 35, 40, 37
profile_image
1

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

28. 형상 관리 도구의 주요 기능으로 거리가 먼 것은?

  1. 정규화(Normalization)
  2. 체크인(Check-in)
  3. 체크아웃(Check-out)
  4. 커밋(commit)
(정답률: 74%)
  • 형상 관리 도구는 소프트웨어의 변경 사항을 관리하기 위해 체크인, 체크아웃, 커밋 등의 기능을 제공합니다.

    오답 노트

    정규화(Normalization): 데이터베이스 설계 시 중복을 제거하고 무결성을 유지하기 위한 과정으로, 형상 관리와는 무관합니다.
  • 소프트웨어 버전 등록 관련 주요 용어
    - 저장소(Repository) : 최신 버전의 파일들과 변경 내역에 대한 정보들이 저장되어 있는 곳
    - 가져오기(Import) : 버전 관리가 되고 있지 않은 아무것도 없는 저장소에 처음으로 파일을 복사
    - 체크아웃(Check-Out) : 프로그램을 수정하기 위해 저장소에서 파일을 받아 옴. 소스 파일과 함께 버전 관리를 위한 파일들도 받음
    - 체크인(Check-In) : 체크아웃 한 파일의 수정을 완료한 후 저장소의 파일을 새로운 버전으로 갱신
    - 커밋(Commit) : 체크인을 수행할 때 이전에 갱신된 내용이 있는 경우 충돌을 알리고 diff 도구를 이용해 수정 후 갱신 완료
    - 동기화(Update) : 저장소에 있는 최신 버전으로 자신의 작업 공간을 동기화함
profile_image
1

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

29. 다음 트리를 Preorder 운행법으로 운행할 경우 가장 먼저 탐색되는 것은?

  1. A
  2. B
  3. D
  4. G
(정답률: 79%)
  • Preorder(전위 순회) 운행법은 루트 노드를 먼저 방문한 후 왼쪽 서브트리, 오른쪽 서브트리 순으로 탐색하는 방식입니다.
    제시된 이미지 에서 루트 노드는 A이므로 가장 먼저 탐색됩니다.
profile_image
1

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

30. 소프트웨어 품질 목표 중 주어진 시간동안 주어진 기능을 오류없이 수행하는 정도를 나타내는 것은?

  1. 직관성
  2. 사용 용이성
  3. 신뢰성
  4. 이식성
(정답률: 81%)
  • 신뢰성은 요구된 기능을 정확하고 일관되게, 그리고 오류 없이 수행할 수 있는 정도를 의미합니다.

    오답 노트

    직관성/사용 용이성: 사용자가 정확하게 이해하고 쉽게 사용할 수 있는 정도(사용성)
    이식성: 다른 환경에서도 얼마나 쉽게 적용할 수 있는지의 정도
profile_image
1

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

31. 알고리즘 설계 기법으로 거리가 먼 것은?

  1. Divide and Conquer
  2. Greedy
  3. Static Block
  4. Backtracking
(정답률: 57%)
  • Static Block은 클래스 로딩 시 클래스 변수를 초기화하기 위해 사용하는 자바 언어의 문법적 요소이며, 알고리즘 설계 기법이 아닙니다.

    오답 노트

    Divide and Conquer: 큰 문제를 작은 문제로 분할하여 해결하는 기법
    Greedy: 매 순간 최적이라고 생각되는 선택을 하는 기법
    Backtracking: 해를 찾는 과정에서 막히면 되돌아가서 다시 찾는 기법
  • 1.Divide and Conquer(분할 정복 알고리즘) : 그대로 해결할 수 없는 문제를 작은 문제로 분할하여 문제를 해결하는 알고리즘
    2. Greedy(탐욕 알고리즘) : 현재 시점에서 가장 최적의 방법을 선택하는 알고리즘
    4. Backtracking : 모든 조합을 시도하여 문제의 답을 찾는 알고리즘
    [해설작성자 : ㅇㅎㅅ]

    백트래킹(backtracking)이란? : 해를 찾는 도중 해가 아니어서 막히면, 되돌아가서 다시 해를 찾아가는 기법을 말합니다. 최적화 문제와 결정 문제를 푸는 방법이 됩니다.
    반면, 현재 해설에서의 백트래킹은 브루트포스에 관한 설명으로 보입니다.
    조합 가능한 모든 문자열을 하나씩 대입해 보는 방식으로 암호를 해독하는 방법. 브루트 포스 공격(brute force attack) 또는 키 전수조사(exhaustive key search), 무차별 대입 공격(無差別代入攻擊) 등으로도 부른다.
    [해설작성자 : comcbt.com 이용자]

    Backtracking 은 모든 경우의 수를 시도하는 알고리즘이 아닙니다.
    위에 ㅇㅎㅅ님의 설명은 brute force 알고리즘 (완전탐색 알고리즘의 설명임 ) .
    Backtracking을 간단히 설명하면 가능성이 없는 경우의 수는 가지치기를 하고 진행되는 알고리즘이다.
    가위 바위 보를 예를 들어 상대가 바위를 낼때 완전 탐색 알고리즘은 가위 바위 보 모든 경우의 수를 진행해보고 맞는 정답을 찾겠지만 Back tracking 은 가능성이 없는 바위와 가위를 탐색하지 않고 보를 탐색하는 경우를 뜻함
    [해설작성자 : 6WOO]

    static block : 클래스 로딩시 클래스 변수를 초기화 하려는 용도의 블록
profile_image
1

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

32. 제품 소프트웨어의 형상 관리 역할로 틀린 것은?

  1. 형상 관리를 통해 이전 리버전이나 버전에 대한 정보에 접근 가능하여 배포본 관리에 유용
  2. 불필요한 사용자의 소스 수정 제한
  3. 프로젝트 개발비용을 효율적으로 관리
  4. 동일한 프로젝트에 대해 여러 개발자 동시 개발 가능
(정답률: 56%)
  • 형상 관리는 소프트웨어의 버전, 수정 사항, 변경 이력을 관리하는 활동이며, 프로젝트의 예산이나 개발 비용을 관리하는 도구가 아닙니다.
profile_image
1

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

33. 제품 소프트웨어 패키징 도구 활용 시 고려사항이 아닌 것은?

  1. 제품 소프트웨어의 종류에 적합한 암호화 알고리즘을 고려한다.
  2. 추가로 다양한 이기종 연동을 고려한다.
  3. 사용자 편의성을 위한 복잡성 및 비효율성 문제를 고려한다.
  4. 내부 콘텐츠에 대한 보안은 고려하지 않는다.
(정답률: 91%)
  • 제품 소프트웨어 패키징은 사용자에게 배포되는 최종 결과물을 만드는 과정이므로, 내부 콘텐츠에 대한 암호화 및 보안을 반드시 고려해야 합니다.

    오답 노트

    다양한 이기종 연동 고려: DRM 연동 등을 통해 다양한 단말기 환경을 지원해야 함
    복잡성 및 비효율성 문제 고려: 사용자 입장에서 불편함이 없도록 효율적으로 적용해야 함
    적합한 암호화 알고리즘 고려: 소프트웨어 종류에 맞는 알고리즘을 선택하여 범용성을 확보해야 함
profile_image
1

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

34. 디지털 저작권 관리(DRM) 기술과 거리가 먼 것은?

  1. 콘텐츠 암호화 및 키 관리
  2. 콘텐츠 식별체계 표현
  3. 콘텐츠 오류 감지 및 복구
  4. 라이센스 발급 및 관리
(정답률: 82%)
  • DRM은 콘텐츠의 무단 사용을 방지하기 위한 기술로, 암호화, 키 관리, 식별체계 표현, 라이선스 정책 관리 등이 핵심 요소입니다. 콘텐츠 오류 감지 및 복구는 데이터 전송이나 저장 시의 무결성을 위한 기술이며 저작권 관리와는 거리가 멉니다.
profile_image
1

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

35. 물리데이터 저장소의 파티션 설계에서 파티션 유형으로 옳지 않은 것은?

  1. 범위분할(Range Partitioning)
  2. 해시분할(Hash Partitioning)
  3. 조합분할(Composite Partitioning)
  4. 유닛분할(Unit Partitioning)
(정답률: 49%)
  • 물리데이터 저장소의 파티션 유형에는 범위 분할(Range), 해시 분할(Hash), 조합 분할(Composite), 리스트 분할(List) 등이 있습니다. 유닛분할(Unit Partitioning)은 표준 파티션 유형에 해당하지 않습니다.
profile_image
1

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

36. 다음이 설명하는 애플리케이션 통합 테스트 유형은?

  1. 하향식 통합 테스트
  2. 상향식 통합 테스트
  3. 회귀 테스트
  4. 빅뱅 테스트
(정답률: 89%)
  • 상위 컴포넌트부터 테스트하며 점진적으로 하위 컴포넌트로 내려가는 방식이며, 하위 컴포넌트가 미완성일 때 스텁(Stub)을 사용하는 것은 하향식 통합 테스트의 핵심 특징입니다.

    오답 노트

    상향식 통합 테스트: 하위에서 상위 방향으로 통합하며 드라이버(Driver)를 사용함
    회귀 테스트: 변경 후 새로운 오류가 있는지 확인하기 위해 기존 테스트를 반복함
    빅뱅 테스트: 비점진적으로 한꺼번에 통합하여 테스트함
profile_image
1

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

37. 인터페이스 구현시 사용하는 기술 중 다음 내용이 설명하는 것은?

  1. Procedure
  2. Trigger
  3. Greedy
  4. AJAX
(정답률: 85%)
  • JavaScript를 사용한 비동기 통신기술로 클라이언트와 서버 간에 XML 데이터를 주고받는 기술은 AJAX입니다.

    오답 노트

    Procedure: 특정 기능을 수행하는 절차형 SQL
    Trigger: 이벤트 발생 시 자동 수행되는 절차형 SQL
    Greedy: 최적해를 찾기 위한 탐욕 알고리즘
  • 1. Procedure : 절차형 SQL을 활용하여 특정 기능을 수행하는 일종의 트랜잭션 언어
    2. Trigger : 데이터의 삽입, 갱신, 삭제 등의 이벤트가 발생할 때마다 관련 작업이 자동으로 수행되는 절차형 SQL
    3. Greedy : 탐욕 알고리즘
    [해설작성자 : ㅇㅎㅅ]

    4. AJAX(Asynchronous JavaScript And XML
profile_image
1

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

38. 소프트웨어 재공학이 소프트웨어의 재개발에 비해 갖는 장점으로 거리가 먼 것은?

  1. 위험부담 감소
  2. 비용 절감
  3. 시스템 명세의 오류억제
  4. 개발시간의 증가
(정답률: 91%)
  • 소프트웨어 재공학은 기존 시스템을 분석하여 수정함으로써 재개발보다 위험부담을 줄이고 비용을 절감하며 개발 시간을 단축할 수 있는 기법입니다. 따라서 개발시간의 증가는 재공학의 장점이 아니라 오히려 단점에 해당합니다.
profile_image
1

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

39. 알파, 베타 테스트와 가장 밀접한 연관이 있는 테스트 단계는?

  1. 단위 테스트
  2. 인수 테스트
  3. 통합 테스트
  4. 시스템 테스트
(정답률: 67%)
  • 소프트웨어 테스트 단계 중 인수 테스트의 특징을 묻는 문제입니다.
    인수 테스트(Acceptance Test)는 사용자가 요구사항이 충족되었는지 확인하는 단계로, 실제 사용자 환경에서 수행하는 알파 테스트와 베타 테스트가 이 단계에 포함됩니다.
  • < 인수 테스트(Acceptance Test) 종류 >
    - 사용자 인수 테스트
    - 운영상의 인수 테스트
    - 계약 인수 테스트
    - 규정 인수 테스트
    - 알파 테스트
    - 베타 테스트
profile_image
1

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

40. 다음 트리의 차수(degree)는?

  1. 2
  2. 3
  3. 4
  4. 5
(정답률: 75%)
  • 트리의 차수(Degree) 개념을 묻는 문제입니다.
    트리의 차수는 전체 노드 중 자식 노드의 수가 가장 많은 노드의 자식 수를 의미합니다.
    이미지에서 노드 B의 자식이 D, E, F로 총 3개이며, 이는 트리 내에서 가장 많은 자식 수이므로 차수는 3입니다.
profile_image
1

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

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

41. 릴레이션 R의 모든 결정자(determinant)가 후보키이면 그 릴레이션 R은 어떤 정규형에 속하는가?

  1. 제 1 정규형
  2. 제 2 정규형
  3. 보이스/코드 정규형
  4. 제 4 정규형
(정답률: 68%)
  • 정규화 단계 중 보이스/코드 정규형(BCNF)의 정의를 묻는 문제입니다.
    모든 결정자가 후보키인 상태를 보이스/코드 정규형이라고 합니다.

    오답 노트

    제 1 정규형: 도메인이 원자값으로만 구성
    제 2 정규형: 부분 함수적 종속 제거
    제 4 정규형: 다치 종속 제거
  • 1NF : 도메인이 원자값만으로 구성된 정규형
    2NF : 기본 키가 아닌 모든 속성이 기본 키에 대해 완전 함수적 종속을 만족하는 정규형
    3NF : 기본 키가 아닌 모든 속성이 기본 키에 대해 이행적 종속을 만족 안하는 정규형
    BCNF : 모든 결정자가 후보 키인 정규형 *
    4NF : 다치 종속 A->B가 성립하는 경우 A에 함수적 종속 관계를 만족하는 정규형
    5NF : 모든 조인 종속이 후보 키를 통해서만 성립되는 정규형
    [해설작성자 : !]

    제1정규형 = 반복그룹을 제거
    제2정규형=부분 함수적 종속 제거
    제4정규형=다치종속 제거
    보이스/코드= 모든 결정자가 후보키인 상태
profile_image
1

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

42. 다음 관계형 데이터 모델에 대한 설명으로 옳은 것은?

  1. relation 3개, attribute 3개, tuple 5개
  2. relation 3개, attribute 5개, tuple 3개
  3. relation 1개, attribute 5개, tuple 3개
  4. relation 1개, attribute 3개, tuple 5개
(정답률: 74%)
  • 관계형 데이터 모델의 기본 구성 요소를 파악하는 문제입니다.
    릴레이션(Relation)은 테이블의 수, 애트리뷰트(Attribute)는 열의 수, 튜플(Tuple)은 행의 수를 의미합니다.
    제시된 표를 분석하면 테이블 1개, 열(고객ID, 고객이름, 거주도시) 3개, 행(S1~S5) 5개로 구성되어 있습니다.
  • relation : 테이블의 수
    attribute : 열의 수
    tuple : 행의 수
profile_image
1

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

43. Commit과 Rollback 명령어에 의해 보장 받는 트랜잭션의 특성은?

  1. 병행성
  2. 보안성
  3. 원자성
  4. 로그
(정답률: 73%)
  • 원자성(Atomicity)은 트랜잭션 내의 모든 연산이 완전히 반영되어 COMMIT 되거나, 아니면 전혀 반영되지 않은 상태로 ROLLBACK 되어야 한다는 'All or Nothing'의 특성입니다.

    오답 노트

    일관성: 실행 완료 후 DB가 항상 일관된 상태를 유지함
    독립성: 실행 중인 트랜잭션에 다른 트랜잭션이 간섭할 수 없음
    지속성: 성공적으로 완료된 결과는 시스템 고장 후에도 영구적으로 보존됨
profile_image
1

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

44. 관계 데이터베이스인 테이블 R1에 대한 아래 SQL 문의 실행결과로 옳은 것은?

(정답률: 84%)
  • SQL 문에서 DISTINCT 키워드는 결과 집합에서 중복된 튜플을 제거하고 고유한 값만 출력하는 역할을 합니다.
    제시된 테이블 R1의 학년 컬럼 값은 $1, 1, 2, 2, 3$이지만, DISTINCT를 적용하면 중복이 제거되어 $1, 2, 3$ 만 출력됩니다.
    따라서 정답은 입니다.
  • DISTINCT란 중복제거를 뜻합니다.
profile_image
1

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

45. DCL(Data Control Language) 명령어가 아닌 것은?

  1. COMMIT
  2. ROLLBACK
  3. GRANT
  4. SELECT
(정답률: 79%)
  • DCL(데이터 제어어)은 데이터베이스의 권한 부여나 트랜잭션 제어를 위해 사용되는 언어로, GRANT, REVOKE, COMMIT, ROLLBACK이 이에 해당합니다. SELECT는 데이터를 조회하는 DML(데이터 조작어)입니다.
  • DCL(Data Control Language) : 데이터베이스 관리자(DBA)가 데이터 관리를 목적으로 사용되는 명령어를 뜻함
    여기서, 명령어는 4가지로
    1. GRANT: 데이터베이스 사용자에게 사용권한을 부여하는 명령어
    2. REVOKE: 데이터베이스 사용자의 사용권한을 취소하는 명령어
    3. COMMIT: 데이터베이스 조작 작업이 정상적으로 완료 되었음을 알려주는 명령어
    4. ROLLBACK: 데이터베이스 조작 작업이 비정상적으로 작동하여 원래 상태로 복구하는 명령어
    [해설작성자 : 4회기사합격가자]

    (D)CL = G(grand) R(revoke) C(commit) R(rollback)
    씨엘의 목적은 데이터관리 쥐알씨알
profile_image
1

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

46. 병행제어 기법 중 로킹에 대한 설명으로 옳지 않은 것은?

  1. 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다.
  2. 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
  3. 로킹의 단위가 작아지면 로킹 오버헤드가 증가한다.
  4. 로킹의 단위가 커지면 데이터베이스 공유도가 증가한다.
(정답률: 77%)
  • 로킹 단위가 커지면 한 번에 잠그는 데이터의 양이 많아지므로, 다른 사용자가 접근할 수 있는 영역이 줄어들어 데이터베이스 공유도(병행성)는 낮아집니다.

    오답 노트

    로킹 단위가 작아지면: 관리해야 할 로킹 객체가 많아져 로킹 오버헤드가 증가하지만, 세밀한 잠금이 가능해 공유도는 증가함
profile_image
1

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

47. 관계 데이터모델의 무결성 제약 중 기본키 값의 속성 값이 널(Null)값이 아닌 원자 값을 갖는 성질은?

  1. 개체 무결성
  2. 참조 무결성
  3. 도메인 무결성
  4. 튜플의 유일성
(정답률: 80%)
  • 기본키로 지정된 속성은 널(Null) 값을 가질 수 없으며, 반드시 유일한 원자 값을 가져야 한다는 제약 조건이 개체 무결성입니다.

    오답 노트

    참조 무결성: 외래키가 참조하는 기본키가 반드시 존재해야 함
    도메인 무결성: 특정 속성 값이 정의된 도메인(타입, 범위) 내에 있어야 함
    튜플의 유일성: 모든 튜플은 서로 중복되지 않고 고유해야 함
profile_image
1

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

48. 뷰(View)의 장점이 아닌 것은?

  1. 뷰 자체로 인덱스를 가짐
  2. 데이터 보안 용이
  3. 논리적 독립성 제공
  4. 사용자 데이터 관리 용이
(정답률: 56%)
  • 뷰(View)는 하나 이상의 기본 테이블로부터 유도된 가상 테이블입니다. 가상 테이블이므로 물리적인 데이터를 직접 저장하지 않으며, 따라서 뷰 자체적으로는 독립적인 인덱스를 가질 수 없습니다. 이로 인해 삽입, 삭제, 갱신 연산에 제약이 따릅니다.
  • 뷰는 하나이상의 테이블로부터 유도되는 가상테이블이며 논리적 독립성이 제공됩니다.
    실제테이블처럼 권한을 나눌 수 있습니다.

    따라서 특정사용자가 볼 필요가 없는 다른열들을 배제하고 뷰를 만든 후 해당 사용자에게 뷰에대한 권한을 할당하면 테이블 전체에 대한 권한을 부여하지 않아도 됩니다.

    뷰는 자체적으로 인덱스를 가지지 않습니다. 따라서 삽입 삭제 수정이 제한적인 것입니다.
    [해설작성자 : 소현진]

    뷰(View)의 장 단점
    장점
    - 논리적 데이터 독립성을 제공
    - 동일 데이터에 대해 동시에 여러 사용자의 상이한 응용이나 요구를 지원해 줌
    - 사용자의 데이터 관리를 간단하게 해 줌
    - 접근 제어를 통한 자동 보안이 제공됨

    단점
    - 독립적인 인덱스를 가질 수 없음
    - 뷰의 정의를 변경할 수 없음(생성시 CREATE, 삭제시 DROP 사용)
    - 뷰로 구성된 내용에 대한 삽입, 삭제, 갱신 연산에 제약이 따름(ALTER 사용 불가능)
profile_image
1

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

49. 분산 데이터베이스의 투명성(Transparency)에 해당 하지 않는 것은?

  1. Location Transparency
  2. Replication Transparency
  3. Failure Transparency
  4. Media Access Transparency
(정답률: 68%)
  • 분산 데이터베이스 투명성은 사용자가 물리적 분산 상태를 모르고 사용할 수 있게 하는 성질입니다. Media Access Transparency는 분산 데이터베이스의 6가지 투명성(위치, 중복, 장애, 병행, 분할, 지역사상 투명성)에 포함되지 않습니다.

    오답 노트

    Location Transparency: 데이터의 실제 물리적 위치를 알 필요 없는 위치 투명성
    Replication Transparency: 동일 데이터의 중복 저장 여부를 알 필요 없는 중복 투명성
    Failure Transparency: 시스템 장애 시에도 트랜잭션의 원자성을 보장하는 장애 투명성
profile_image
1

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

50. 정규화의 목적으로 옳지 않은 것은?

  1. 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 만든다.
  2. 데이터 삽입시 릴레이션을 재구성할 필요성을 줄인다.
  3. 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 야기한다.
  4. 효과적인 검색 알고리즘을 생성할 수 있다.
(정답률: 81%)
  • 정규화의 핵심 목적은 데이터의 중복을 최소화하여 삽입, 삭제, 갱신 시 발생하는 이상(Anomaly) 현상을 제거하는 것입니다. 따라서 중복을 배제하여 이상 현상을 야기한다는 설명은 정규화의 목적과 정반대되는 잘못된 설명입니다.
profile_image
1

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

51. 다음에 해당하는 함수 종속의 추론 규칙은?

  1. 분해 규칙
  2. 이행 규칙
  3. 반사 규칙
  4. 결합 규칙
(정답률: 85%)
  • 제시된 이미지의 내용은 $X \rightarrow Y$이고 $$Y \rightarrow Z$$ 이면 $$X \rightarrow Z$$ 이라는 논리입니다. 이는 함수 종속성에서 중간 매개체 $Y$를 통해 $X$가 $Z$를 결정짓게 되는 이행 규칙의 정의와 정확히 일치합니다.

    오답 노트

    분해 규칙: $X \rightarrow YZ$이면 $$X \rightarrow Y$$ 와 $X \rightarrow Z$ 임
    반사 규칙: $Y \subseteq X$이면 $X \rightarrow Y$ 임
    결합 규칙: $X \rightarrow Y$이고 $$X \rightarrow Z$$ 이면 $X \rightarrow YZ$ 임
profile_image
1

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

52. 다음 R과 S 두 릴레이션에 대한 Division 연산의 수행 결과는?

(정답률: 82%)
  • 릴레이션 Division($\div$) 연산은 릴레이션 R에서 릴레이션 S의 모든 조건을 만족하는 튜플의 속성값만을 추출하는 연산입니다.
    S 릴레이션의 조건이 $D2=1, D3=A$이므로, R에서 이 조건을 모두 만족하는 $D1$의 값인 $a$와 $b$만 결과로 남게 됩니다.
    결과값:
  • D2 D3
    1 A 가 포함된

    D1 D2 D3
    a 1 A
    b 1 A 중

    D2 D3
    1 A 를 제거

    D1
    a
    b 결과 값
profile_image
1

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

53. player 테이블에는 player_name, team_id, height 컬럼이 존재한다. 아래 SQL문에서 문법적 오류가 있는 부분은?

  1. (1)
  2. (2)
  3. (3)
  4. (4)
(정답률: 86%)
  • SQL에서 특정 범위의 값을 검색할 때는 BETWEEN A AND B 문법을 사용해야 합니다. 이미지의 (4) 부분에서 BETWEEN 170 or 180이라고 표기한 것은 잘못된 문법이며, or를 and로 수정해야 합니다.
  • BETWEEN 숫자 and 숫자가 맞는 문법입니다.
profile_image
1

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

54. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?

  1. 즉각 갱신 기법
  2. 대수적 코딩 방법
  3. 타임 스탬프 기법
  4. 폴딩 기법
(정답률: 48%)
  • 즉각 갱신 기법은 트랜잭션 수행 중 데이터를 갱신할 때 실제 데이터베이스에 즉시 반영하며, 회복을 위해 모든 내용을 로그(Log)에 보관하여 취소(Undo)와 재시도(Redo)를 수행합니다.

    오답 노트

    그림자 페이지 대체 기법: 로그가 필요 없는 기법
profile_image
1

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

55. DML(Data Manipulation Language) 명령어가 아닌 것은?

  1. INSERT
  2. UPDATE
  3. ALTER
  4. DELETE
(정답률: 81%)
  • DML(데이터 조작어)은 데이터를 조회, 삽입, 수정, 삭제하는 언어로 SELECT, INSERT, UPDATE, DELETE가 이에 해당합니다. ALTER는 데이터베이스 구조를 변경하는 DDL(데이터 정의어)입니다.

    오답 노트

    ALTER: DDL(데이터 정의어)
profile_image
1

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

56. 다음과 같이 위쪽 릴레이션을 아래쪽 릴레이션으로 정규화를 하였을 때 어떤 정규화 작업을 한 것인가?

  1. 제1정규형
  2. 제2정규형
  3. 제3정규형
  4. 제4정규형
(정답률: 72%)
  • 제1정규형은 도메인이 원자값으로만 구성되어야 하는 정규형입니다. 이미지에서 '서울, 부산'과 같이 하나의 칸에 여러 값이 들어있던 데이터를 각각의 행으로 분리하여 원자값으로 만들었으므로 제1정규형 작업에 해당합니다.
  • 1NF : 도메인이 원자값만으로 구성된 정규형 *
    2NF : 기본 키가 아닌 모든 속성이 기본 키에 대해 완전 함수적 종속을 만족하는 정규형
    3NF : 기본 키가 아닌 모든 속성이 기본 키에 대해 이행적 종속을 만족 안하는 정규형
    BCNF : 모든 결정자가 후보 키인 정규형
    4NF : 다치 종속 A->B가 성립하는 경우 A에 함수적 종속 관계를 만족하는 정규형
    5NF : 모든 조인 종속이 후보 키를 통해서만 성립되는 정규형

    서울, 부산 / 워싱턴, 뉴욕을 도메인에서의 원자값으로만 구성되게 정규화 작업을 함
    [해설작성자 : !]

    아래와 같은 오류 신고가 있었습니다.
    여러분들의 많은 의견 부탁 드립니다.
    추후 여러분들의 의견을 반영하여 정답을 수정하도록 하겠습니다.
    참고로 정답 변경은 오류 신고 5회 이상일 경우 수정합니다.

    [오류 신고 내용]
    2NF : 완전 함수적 종속 아니고, 부분 함수적 종속 입니다.
    [해설작성자 : 3]

    [오류신고 반론]
    2NF : 완전 함수적 종속 아니고, 부분 함수적 종속 입니다.
    완전 함수적 종속이 맞습니다.
    [해설작성자 : 3]

    [오류신고 반론]
    제2 정규화 ( 2NF )
    완전 함수적 종속을 만족한다 --> 부분 함수적 종속을 모두 제거
profile_image
1

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

57. 관계대수의 순수관계 연산자가 아닌 것은?

  1. Select
  2. Cartesian Product
  3. Division
  4. Project
(정답률: 68%)
  • 관계대수의 연산자는 순수 관계 연산자와 일반 집합 연산자로 나뉩니다. Cartesian Product는 일반 집합 연산자에 해당하므로 순수 관계 연산자가 아닙니다.

    오답 노트

    Select, Project, Division: 순수 관계 연산자
  • 순수 관계 연산자 : select / project / join / division
    Cartesian Product는 일반집합 연산자
    일반 집합 연산자 : 합집합 / 교집합 / 차집합 / 카티션 프로덕트
profile_image
1

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

58. 다음 중 SQL의 집계 함수(aggregation function)가 아닌 것은?

  1. AVG
  2. COUNT
  3. SUM
  4. CREATE
(정답률: 91%)
  • 집계 함수는 여러 행의 값을 계산하여 하나의 요약된 결과를 반환하는 함수입니다. AVG(평균), COUNT(개수), SUM(합계) 등이 이에 해당하며, CREATE는 데이터베이스 객체를 생성하는 DDL(데이터 정의어) 문장입니다.
profile_image
1

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

59. 릴레이션 조작 시 데이터들이 불필요하게 중복되어 예기치 않게 발생하는 곤란한 현상을 의미하는 것은?

  1. normalization
  2. rollback
  3. cardinality
  4. anomaly
(정답률: 71%)
  • 릴레이션 조작 시 데이터 중복으로 인해 발생하는 삽입, 삭제, 갱신 이상 현상을 통칭하여 anomaly(이상)라고 합니다.

    오답 노트

    normalization: 중복을 제거하여 이상 현상을 방지하는 정규화 과정
    rollback: 트랜잭션을 취소하고 이전 상태로 되돌리는 작업
    cardinality: 릴레이션 내 튜플의 총 개수
profile_image
1

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

60. 릴레이션에 대한 설명으로 거리가 먼 것은?

  1. 튜플들의 삽입, 삭제 등의 작업으로 인해 릴레이션은 시간에 따라 변한다.
  2. 한 릴레이션에 포함된 튜플들은 모두 상이하다.
  3. 애트리뷰트는 논리적으로 쪼갤 수 없는 원자값으로 저장한다.
  4. 한 릴레이션에 포함된 튜플 사이에는 순서가 있다.
(정답률: 78%)
  • 릴레이션의 핵심 특징은 튜플(행) 간의 순서가 무의미하다는 점입니다.

    오답 노트

    한 릴레이션에 포함된 튜플들은 모두 상이하다: 중복 튜플은 허용되지 않음
    애트리뷰트는 논리적으로 쪼갤 수 없는 원자값으로 저장한다: 도메인의 원자성 원칙
profile_image
1

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

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

61. 다음 자바 프로그램 조건문에 대해 삼항 조건 연산자를 사용하여 옳게 나타낸 것은?

  1. int i = 7, j = 9;
    int k;
    k = (i>j)?(i – j):(i + j);
  2. int i = 7, j = 9;
    int k;
    k = (i<j)?(i – j):(i + j);
  3. int i = 7, j = 9;
    int k;
    k = (i>j)?(i + j):(i - j);
  4. int i = 7, j = 9;
    int k;
    k = (i<j)?(i + j):(i - j);
(정답률: 84%)
  • 삼항 조건 연산자는 `(조건식) ? (참일 때 값) : (거짓일 때 값)`의 형태로 작성합니다.
    제시된 이미지 의 조건문은 $i > j$일 때 $k = i - j$가 되고, 그렇지 않을 때(else) $k = i + j$가 되는 구조입니다.
    이를 삼항 연산자로 변환하면 $k = (i > j) ? (i - j) : (i + j)$가 됩니다.
  • 조건문 기준으로 설명

    if(i>j) 조건문
    보기 1~4 중 k=(i>j)를 가지는 조건문 : 1번 3번

    ? { 참인지 거짓인지 판별}

    if(i>j)
    k=i-j;
    else
    k=i+j;

    k=(i>j)?(1)(2)
    (1) 참 값 = 문제에서의 참 값 : i-j;
    (2) 거짓 값 = 문제에서의 거짓 값 : i+j;

    따라서 정답은 k=(i>j)?(i-j):(i+j); = 1번
profile_image
1

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

62. 다음 내용이 설명하는 소프트웨어 취약점은?

  1. FTP 바운스 공격
  2. SQL 삽입
  3. 버퍼 오버플로
  4. 디렉토리 접근 공격
(정답률: 77%)
  • 제시된 이미지 의 내용은 메모리 처리 오류로 인해 잘못된 동작을 유발하는 취약점을 설명하고 있으며, 이는 전형적인 버퍼 오버플로의 특징입니다.

    오답 노트

    FTP 바운스 공격: FTP 프로토콜 구조의 허점을 이용한 공격
    SQL 삽입: SQL 논리적 에러를 이용한 공격
    디렉토리 접근 공격: 웹 루트 외부 파일/디렉토리에 접근하는 공격
  • (1) FTP 프로토콜 구조의 허점을 이용한 공격
    (2) SQL의 논리적 에러를 이용한 공격
    (4) 웹 루트 디렉토리 외부에 저장된 파일 또는 디렉토리에 접근하는 공격방법

    (1)은 네트워크 공격방법, (2),(4)는 웹관련 공격방법 (3)은 어플리케이션 공격방법
profile_image
1

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

63. 다음 중 bash 쉘 스크립트에서 사용할 수 있는 제어문이 아닌 것은?

  1. if
  2. for
  3. repeat_do
  4. while
(정답률: 82%)
  • bash 쉘 스크립트의 표준 제어문에는 if, for, while 등이 포함되지만, repeat_do라는 명령어는 존재하지 않습니다.
  • 셸 명령어 중 repeat_do라는 명령어는 없다
profile_image
1

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

64. IPv6에 대한 설명으로 틀린 것은?

  1. 32비트의 주소체계를 사용한다.
  2. 멀티미디어의 실시간 처리가 가능하다.
  3. IPv4보다 보안성이 강화되었다.
  4. 자동으로 네트워크 환경구성이 가능하다.
(정답률: 86%)
  • IPv6는 IPv4의 주소 부족 문제를 해결하기 위해 도입된 차세대 주소 체계로, 128비트 주소를 사용합니다.

    오답 노트

    32비트의 주소체계를 사용한다: IPv4에 대한 설명입니다.
  • IPv6
    128비트 주소를 사용 주소부족 문제 해결 및 자료 전송 속도 빠름
    인증성 기밀성 데이터 무결성 지원으로 보안문제 해결
    확장성 융통성 연동성이 뛰어나며 실시간 흐름 제어로 향상된 멀티미디어 기능 지원
    16비트 씩 8부분 총 128비트로 구성
    유니캐스트(unicast) 멀티캐스트(multicast) 애니캐스트(anycast) 세 가지 주소 체계
    [해설작성자 : !]

    1번 보기는 IPv4의 해당합니다.
    주소체계를 기준으로 보면 다음과 같습니다.
    IPv4는 32비트(예를 들면 192.168.1.0)이며 IPv6은 128비트입니다.
    참고로 제가 예로 든 IP주소는 일반적인 공유기(netis기준)입니다.
    IPTIME(공유기)을 기준으로 하면 192.168.0.0입니다.
    128비트인 IPv6의 IP주소는 16진수까지 써야 돼서 저도 예를 들지는 못 할 것 같습니다.
profile_image
1

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

65. 효과적인 모듈 설계를 위한 유의사항으로 거리가 먼 것은?

  1. 모듈간의 결합도를 약하게 하면 모듈 독립성이 향상된다.
  2. 복잡도와 중복성을 줄이고 일관성을 유지시킨다.
  3. 모듈의 기능은 예측이 가능해야 하며 지나치게 제한적 이여야 한다.
  4. 유지보수가 용이해야 한다.
(정답률: 91%)
  • 효과적인 모듈 설계는 독립성을 높이는 것이 핵심입니다. 모듈의 기능은 예측 가능해야 하며, 너무 제한적이지 않고 적절한 책임을 가져야 합니다.

    오답 노트

    모듈간의 결합도를 약하게 하면 모듈 독립성이 향상된다: 옳은 설명
    복잡도와 중복성을 줄이고 일관성을 유지시킨다: 옳은 설명
    유지보수가 용이해야 한다: 옳은 설명
profile_image
1

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

66. HRN 방식으로 스케줄링 할 경우, 입력된 작업이 다음과 같을 때 처리되는 작업 순서로 옳은 것은?

  1. A→B→C→D
  2. A→C→B→D
  3. D→B→C→A
  4. D→A→B→C
(정답률: 61%)
  • 우선순위 계산식 = (대기 시간 + 서비스시간) / 서비스 시간
  • HRN(Highest Response-ratio Next) 스케줄링은 대기 시간과 서비스 시간을 모두 고려하여 우선순위를 결정하며, 계산된 우선순위 값이 클수록 먼저 처리합니다.
    각 작업의 우선순위를 산정하는 공식과 계산 과정은 다음과 같습니다.
    ① [기본 공식]
    $$\text{Priority} = \frac{\text{Waiting Time} + \text{Service Time}}{\text{Service Time}}$$
    ② [숫자 대입]
    $$A: \frac{5 + 20}{20} = 1.25$$
    $$B: \frac{40 + 20}{20} = 3$$
    $$C: \frac{15 + 45}{45} \approx 1.33$$
    $$D: \frac{20 + 2}{2} = 11$$
    ③ [최종 결과]
    우선순위 값 비교 시 $D(11) > B(3) > C(1.33) > A(1.25)$ 순으로 높으므로, 처리 순서는 D→B→C→A가 됩니다.
profile_image
1

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

67. 운영체제에 대한 설명으로 거리가 먼 것은?

  1. 다중 사용자와 다중 응용프로그램 환경하에서 자원의 현재 상태를 파악하고 자원 분배를 위한 스케줄링을 담당한다.
  2. CPU, 메모리 공간, 기억 장치, 입출력 장치 등의 자원을 관리한다.
  3. 운영체제의 종류로는 매크로 프로세서, 어셈블러, 컴파일러 등이 있다.
  4. 입출력 장치와 사용자 프로그램을 제어한다.
(정답률: 75%)
  • 매크로 프로세서, 어셈블러, 컴파일러는 운영체제가 아니라 시스템 소프트웨어(언어 번역 프로그램)에 해당합니다. 운영체제의 예로는 윈도우, 리눅스, 유닉스 등이 있습니다.
  • 매크로 프로세서 : 시스템 소프트웨어
    어셈블러 : 기계어와 프로그래밍 언어의 중간정도의 언어
    컴파일러 : 특정 언어를 타 언어로 옮기는 프로그램

    어셈블리어가 기계어와 프로그래밍 언어의 중간정도의 언어입니다.
    어셈블러는 어셈블리어를 기계어로 번역하는 프로그램입니다

    운영체제 종류에는
    윈도즈, 리눅스/유닉스, 맥(mac), 안드로이드 가 있다
profile_image
1

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

68. 배치 프로그램의 필수 요소에 대한 설명으로 틀린 것은?

  1. 자동화는 심각한 오류 상황 외에는 사용자의 개입 없이 동작해야 한다.
  2. 안정성은 어떤 문제가 생겼는지, 언제 발생했는지 등을 추적할 수 있어야 한다.
  3. 대용량 데이터는 대용량의 데이터를 처리할 수 있어야 한다.
  4. 무결성은 주어진 시간 내에 처리를 완료할 수 있어야 하고, 동시에 동작하고 있는 다른 애플리케이션을 방해하지 말아야 한다.
(정답률: 59%)
  • 견고함 : 유효하지 않은 데이터의 경우도 처리해서
    비정상적인 동작 중단이 발생하지 않아야 한다

    성능 : 주어진 시간 내에 처리를 완료할 수 있어야 하고,
    동시에 동작하고 있는 다른 애플리케이션을
    방해하지 말아야 한다.

    배치 프로그램의 필수 요소로는 대용량 데이터, 자동화, 견고성, 안정성, 성능 이렇게 5가지가 있다.
    무결성은 배치 프로그램의 필수 요소가 아니다.
  • 주어진 시간 내에 처리를 완료하고 다른 애플리케이션을 방해하지 않아야 하는 특성은 무결성이 아니라 성능에 해당합니다.

    오답 노트

    무결성: 배치 프로그램의 필수 요소가 아님
  • 주어진 시간에 작업을 완료해야 하고, 다른 애플리케이션의 동작을 방해하지 않아야 한다 라는건 "성능" 이라는 요소입니다
profile_image
1

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

69. TCP 프로토콜에 대한 설명으로 거리가 먼 것은?

  1. 신뢰성이 있는 연결 지향형 전달 서비스이다.
  2. 기본 헤더 크기는 100byte이고 160byte까지 확장 가능하다.
  3. 스트림 전송 기능을 제공한다.
  4. 순서제어, 오류제어, 흐름제어 기능을 제공한다.
(정답률: 71%)
  • TCP 헤더는 기본 20byte, 옵션으로 40byte가 추가로 올 수 있다
  • TCP의 기본 헤더 크기는 최소 $20\text{byte}$에서 최대 $60\text{byte}$이며, 옵션 필드를 포함할 경우 최대 $40\text{byte}$가 추가될 수 있습니다.
  • 기본 헤더 크기는 최소 20byte 최대 60byte / 헤더에 Option값 포함 시 최대 40byte 추가 가능
profile_image
1

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

70. 다음이 설명하는 응집도의 유형은?

  1. 기능적 응집도
  2. 우연적 응집도
  3. 논리적 응집도
  4. 절차적 응집도
(정답률: 78%)
  • 모듈 내부의 구성 요소들이 기능을 순차적으로 수행하는 경우를 절차적 응집도라고 합니다.

    오답 노트

    우연적 응집도: 서로 관련 없는 요소들로 구성
    논리적 응집도: 유사한 성격의 처리 요소들로 구성
    기능적 응집도: 모든 요소가 단일 문제 해결을 위해 수행
profile_image
1

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

71. OSI-7Layer에서 링크의 설정과 유지 및 종료를 담당하며, 노드간의 오류제어와 흐름제어 기능을 수행하는 계층은?

  1. 데이터링크 계층
  2. 물리 계층
  3. 세션 계층
  4. 응용 계층
(정답률: 75%)
  • 데이터링크 계층
    송수신 측 속도 차이 해결을 위한 흐름제어 기능 및
    오류 검출과 회복을 위한 오류제어 기능
    프레임 시작 및 끝을 구분하기 위한 동기화 기능
    프레임 순서적 전송을 위한 순서 제어 기능

    물리 : 전송에 필요한 장치 간 실제 접속
    세션 : 송수신 측 간 관련성 유지 및 대화 제어 / 체크점(동기점)을 두어 정보 수신상태체크
    응용 : 사용자가 OSI 환경에 접근 가능하도록 서비스 제공
  • 데이터링크 계층은 물리 계층을 통해 송수신되는 데이터의 오류를 검출하고 회복하는 오류제어, 송수신 측의 속도 차이를 조절하는 흐름제어, 그리고 링크의 설정 및 종료를 담당하는 계층입니다.

    오답 노트

    물리 계층: 실제 전기적 신호 전송 및 물리적 접속 담당
    세션 계층: 대화 제어 및 동기점(체크포인트) 관리
    응용 계층: 사용자 인터페이스 및 네트워크 서비스 제공
profile_image
1

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

72. 다음 중 가장 결합도가 강한 것은?

  1. data coupling
  2. stamp coupling
  3. common coupling
  4. control coupling
(정답률: 58%)
  • 결합도는 모듈 간의 상호 의존도를 나타내며, 강할수록 모듈 간 독립성이 떨어져 유지보수가 어렵습니다. 결합도가 강한 순서는 내용 $\rightarrow$ 공유 $\rightarrow$ 외부 $\rightarrow$ 제어 $\rightarrow$ 스탬프 $\rightarrow$ 자료 순입니다.
    따라서 제시된 보기 중 common coupling(공유 결합도)이 가장 강한 결합도에 해당합니다.
  • 결합도 강한것부터 순서가 <내공외제스자> 입니다.

    결합도가 높은 것부터 순서대로 적었습니다.

    내용 contents : 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 직접 참조하거나 수정할 때 결합도
    공유 common : 공유되는 공통 데이터 영역을 여러 모듈이 사용할 때
    외부 External : 외부의 다른 모듈에서 참조할 때
    제어 control : 어떤 모듈이 다른 모듈 내 논리적인 흐름 제어를 위해 제어 신호를 통신하거나 제어요소 전달
    스탬프 stamp : 모듈 간 인터페이스로 배열이나 레코드 등의 자료구조가 전달될 때 결합도
    자료 data : 모듈 간 인터페이스가 <자료 요소>로만 구성됨
profile_image
1

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

73. 메모리 관리 기법 중 Worst fit 방법을 사용할 경우 10K 크기의 프로그램 실행을 위해서는 어느 부분에 할당되는가?

  1. NO.2
  2. NO.3
  3. NO.4
  4. NO.5
(정답률: 66%)
  • Worst fit(최악 적합) 방식은 할당 가능한 빈 공간 중 가장 크기가 큰 영역에 프로세스를 배치하여, 남는 공간을 최대한 크게 유지하려는 기법입니다.

    10K 크기의 프로그램을 할당할 수 있는 FREE 영역은 NO.2(12K)와 NO.5(16K)입니다. 이 중 가장 크기가 큰 NO.5에 할당하는 것이 Worst fit 방식의 원리입니다.

    오답 노트

    NO.
  • 핵심 : Worst fit (최악 적합)
    =들어갈 수 있는 영역 중 자원 낭비가 제일 심한 영역에 들어가는 방법

    N0.1 - 8K, 10K를 넣어야 하지만 공간이 8K 뿐이라서 들어갈 수 없음
    NO.2 - 12K, 10K를 넣는다면 공간 2K가 남음
    NO.3 - 10K, 10K를 넣는다면 공간 0K가 남지만 사용 중인 상태이므로 들어갈 수 없음
    NO.4 - 20K, 10K를 넣는다면 공간 10K가 남지만 사용중인 상태이므로 들어갈 수 없음
    NO.5 - 16K, 10K를 넣는다면 공간 6K가 남음

    들어갈 수 있는 공간 NO.2와 NO.5 중 가장 자원 낭비가 심한 NO.5가 정답

    + first fit ( 최초 적합 ) : 들어갈 수 있는 공간 중 가장 빠른 영역에 들어가는 것
    best fit (최적
  • worst fit 은 사용 되고 있지 않은 메모리 조각(fragment)들 중에서 실행시키려는 프로그램의 필요 메모리와 가장 크게 차이 나는 메모리 조각을 선택하는 방법입니다. (물론 실행 시키려는 프로그램의 필요 메모리보다 커야 합니다!)
profile_image
1

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

74. 200.1.1.0/24 네트워크를 FLSM 방식을 이용하여 10개의 Subnet으로 나누고 ip subnet-zero를 적용했다. 이때 서브네팅된 네트워크 중 10번째 네트워크의 broadcast IP주소는?

  1. 200.1.1.159
  2. 201.1.5.175
  3. 202.1.11.254
  4. 203.1.255.245
(정답률: 50%)
  • FLSM 방식에서 10개의 서브넷을 만들기 위해 필요한 비트 수는 $2^{4} \ge 10$이므로 4비트가 필요합니다. 이에 따라 서브넷 마스크는 $255.255.255.240$이 되며, 각 네트워크의 크기는 16개 주소씩 할당됩니다.
    10번째 네트워크의 범위를 구하면 다음과 같습니다.
    ① [기본 공식] $Network\ IP = (Subnet\ Index - 1) \times Block\ Size$
    ② [숫자 대입] $Network\ IP = (10 - 1) \times 16 = 144$
    ③ [최종 결과] $Network\ IP = 200.1.1.144$
    해당 네트워크의 브로드캐스트 주소는 다음 네트워크 시작 주소에서 1을 뺀 값입니다.
    ① [기본 공식] $Broadcast\ IP = Network\ IP + Block\ Size - 1$
    ② [숫자 대입] $Broadcast\ IP = 144 + 16 - 1 = 159$
    ③ [최종 결과] $Broadcast\ IP = 200.1.1.159$
  • 200.1.1.0 / 서브넷 255.255.255.0

    1. 필요 개수
    - 10개 필요 => 2^4

    2. 서브넷 마스크
    255.255.255.0
    200.1.1.1111 0000 -> 255.255.255.240

    3. 네트워크 대역
    200.1.1.0000 0000 -> 200.1.1.0~15
    200.1.1.0001 0000 -> 200.1.1.16~31
    200.1.1.0010 0000 -> 200.1.1.32~47
    200.1.1.0011 0000 -> 200.1.1.48~63
    200.1.1.0100 0000 -> 200.1.1.64~79
    200.1.1.0101 0000 -> 200.1.1.80~95
    200.1.1.0110 0000 -> 200.1.1.96~111
    200.1.1.0111 0000 -> 200.1.1.112~127
    200.1.1.1000 0000 -> 200.1.1.128~143
    200.1.1.1001 0000 -> 200.1.1.144~159 ----- 10번째 네트워크
    200.1.1.1010 0000 -> 200.1.1.160
    ...

    Broadcast IP는 200.1.1.159

    또한 broadcast IP이기 때문에 맨 뒤의 4자리 수가 모두 1이되어 마지막 8자리가 10011111이기 때문에 159가 되는 것입니다.
    대표 네트워크 IP였다면 10010000이었을겁니다
profile_image
1

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

75. 다음은 사용자로부터 입력받은 문자열에서 처음과 끝의 3글자를 추출한 후 합쳐서 출력하는 파이썬 코드에서 ㉠에 들어갈 내용은?

  1. string[1:3] + string[-3:]
  2. string[:3] + string[-3:-1]
  3. string[0:3] + string[-3:]
  4. string[0:] + string[:-1]
(정답률: 73%)
  • 파이썬의 슬라이싱 기능을 이용하여 문자열의 처음 3글자와 끝 3글자를 추출해야 합니다.
    처음 3글자는 인덱스 0부터 2까지이므로 $$string[0:3]$$으로, 끝 3글자는 뒤에서부터 세어 $$-3$$번 인덱스부터 끝까지이므로 $string[-3:]$으로 표현합니다.
    따라서 두 부분을 합친 $string[0:3] + string[-3:]$이 정답입니다.
  • 파이썬 슬라이스
    [:] 처음부터 끝까지
    [start:] start오프셋부터 끝까지
    [:end] 처음부터 end-1 오프셋까지
    [start : end] start오프셋부터 end-1 오프셋까지
    [start : end : step] step만큼 문자를 건너뛰면서, 위와 동일하게 추출
    [해설작성자 : ㅇ]

    string[1:3] = "el", string [-3:] = "rld"
    string[:3] = "Hel", string[-3:-1] = "rl"
    string[0:] = "Hello World", string[:-1] = "Hello Worl"
profile_image
1

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

76. 파이썬의 변수 작성 규칙 설명으로 옳지 않은 것은?

  1. 첫 자리에 숫자를 사용할 수 없다.
  2. 영문 대문자/소문자, 숫자, 밑줄(_)의 사용이 가능하다.
  3. 변수 이름의 중간에 공백을 사용할 수 있다.
  4. 이미 사용되고 있는 예약어는 사용할 수 없다.
(정답률: 85%)
  • 파이썬의 변수 명명 규칙상 밑줄(_)은 사용할 수 있지만, 변수 이름 중간에 공백(띄어쓰기)을 포함하는 것은 허용되지 않습니다.
  • 밑줄(_)사용은 가능하지만, 공백은 사용할 수 없습니다.
    추가로 첫 자리에는 영문과 밑줄(_)만 사용 가능합니다
profile_image
1

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

77. 어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어신호를 이용하여 통신하는 경우이며, 하위 모듈에서 상위 모듈로 제어신호가 이동하여 상위 모듈에게 처리 명령을 부여하는 권리 전도현상이 발생하게 되는 결합도는?

  1. data coupling
  2. stamp coupling
  3. control coupling
  4. common coupling
(정답률: 76%)
  • 제어 결합도(control coupling)는 상위 모듈이 하위 모듈의 내부 논리를 제어하기 위해 제어 신호를 전달하는 결합도이며, 이 과정에서 하위 모듈이 상위 모듈의 처리 명령을 결정하는 권리 전도 현상이 발생할 수 있습니다.

    오답 노트

    data coupling: 오직 필요한 데이터 요소만 전달하는 가장 낮은 결합도
    stamp coupling: 배열이나 구조체 같은 자료 구조를 전달하는 결합도
    common coupling: 전역 변수와 같은 공통 데이터 영역을 여러 모듈이 공유하는 결합도
profile_image
1

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

78. 다음 C 프로그램의 결과 값은?

  1. 15
  2. 19
  3. 25
  4. 27
(정답률: 81%)
  • 제시된 C 프로그램은 for 반복문을 통해 $i$가 1부터 10까지 2씩 증가하며 홀수 값만 더하는 알고리즘입니다.
    $$sum = 1 + 3 + 5 + 7 + 9$$
    $$sum = 25$$
    $$sum = 25$$
  • i sum
    1 1
    3 4
    5 9
    7 16
    9 25
    11 36 X ( i<=10; 때문에 적용 안됨)
    [해설작성자 : !]

    해당 C프로그램 알고리즘은 반복문을 보시면 1부터 10까지 홀수의 합입니다.
    sum = 1+3+5+7+9 = 25 입니다.
profile_image
1

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

79. UNIX에서 새로운 프로세스를 생성하는 명령어는?

  1. ls
  2. cat
  3. fork
  4. chmod
(정답률: 71%)
  • UNIX 시스템에서 fork 시스템 호출은 현재 실행 중인 프로세스와 동일한 복제본 프로세스를 생성하여 새로운 프로세스를 만드는 명령어입니다.

    오답 노트

    ls: 디렉토리 및 파일 목록 출력
    cat: 파일 내용 출력
    chmod: 파일/디렉토리 접근 권한 변경
profile_image
1

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

80. C언어에서 정수 자료형으로 옳은 것은?

  1. int
  2. float
  3. char
  4. double
(정답률: 87%)
  • C언어에서 정수를 저장하기 위해 사용하는 기본 자료형은 int입니다.

    오답 노트

    float: 실수형
    char: 문자형
    double: 배정밀도 실수형
profile_image
1

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

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

81. 물리적인 사물과 컴퓨터에 동일하게 표현되는 가상의 모델로 실제 물리적인 자산 대신 소프트웨어로 가상화함으로써 실제 자산의 특성에 대한 정확한 정보를 얻을 수 있고, 자산 최적화, 돌발사고 최소화, 생산성 증가 등 설계부터 제조, 서비스에 이르는 모든 과정의 효율성을 향상시킬 수 있는 모델은?

  1. 최적화
  2. 실행 시간
  3. 디지털 트윈
  4. N-Screen
(정답률: 69%)
  • 현실 세계의 사물을 가상 공간에 동일하게 구현하여 시뮬레이션을 통해 결과를 예측하고 최적화하는 기술은 디지털 트윈입니다.
  • 디지털 트윈(digital twin)은 미국 제너럴 일렉영(GE)이 주창한 개념으로, 컴퓨터에 현실 속 사물의 쌍둥이를 가상화하여 만들고, 현실에서 발생할 수 있는 상황을 컴퓨터로 시뮬레이션함으로써 결과를 미리 예측하는 기술입니다.
profile_image
1

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

82. 정보보안의 3대 요소에 해당하지 않는 것은?

  1. 기밀성
  2. 휘발성
  3. 무결성
  4. 가용성
(정답률: 87%)
  • 정보보안의 3대 요소는 기밀성, 무결성, 가용성입니다. 휘발성은 보안의 핵심 요소에 해당하지 않습니다.

    오답 노트

    기밀성: 허락된 사용자만 접근 가능
    무결성: 허락된 사용자만 변경 및 수정 가능
    가용성: 필요 시 언제든 접근 가능
profile_image
1

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

83. 다음 빈칸에 알맞은 기술은

  1. Quantum Key Distribution
  2. Digital Rights Management
  3. Grayware
  4. Mashup
(정답률: 70%)
  • 웹에서 제공하는 정보와 서비스를 활용하여 새로운 소프트웨어, 서비스, 데이터베이스 등을 만드는 기술은 Mashup입니다.

    오답 노트

    Quantum Key Distribution: 양자 암호 기술
    Digital Rights Management: 저작권 관리 기술
    Grayware: 사용자 동의 하에 설치되나 불필요한 기능을 수행하는 프로그램
  • Quantum Key Distribution -- 양자암호관련된거
    Digital Rights Management -- DRM이라고도 하며, 저작권관리 관련 기술
    Grayware -- 바이러스, 트로잔등 악성프로그램과는 다르게 사용자 동의를 받아 설치하는 프로그램
    (ex 원격제어 프로그램, 애드웨어 등)
profile_image
1

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

84. 기능점수(Functional Point)모형에서 비용산정에 이용되는 요소가 아닌 것은?

  1. 클래스 인터페이스
  2. 명령어(사용자 질의수)
  3. 데이터파일
  4. 출력보고서
(정답률: 40%)
  • 기능점수(FP) 모형의 산정 요소는 외부 입력(입력 양식), 외부 출력(출력 보고서), 외부 질의(명령어), 내부 논리 파일(데이터 파일), 외부 인터페이스 파일로 구성됩니다.
profile_image
1

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

85. 블록 암호화 방식이 아닌 것은?

  1. DES
  2. RC4
  3. AES
  4. SEED
(정답률: 59%)
  • 블록 암호화는 데이터를 고정된 크기의 블록 단위로 나누어 암호화하는 방식(DES, AES, SEED, ARIA)입니다. 반면 RC4는 데이터를 비트 또는 바이트 단위로 연속적으로 처리하는 스트림 암호화 방식입니다.
profile_image
1

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

86. Putnam 모형을 기초로 해서 만든 자동화 추정 도구는?

  1. SQLR/30
  2. SLIM
  3. MESH
  4. NFV
(정답률: 64%)
  • Putnam 모형은 Rayleigh-Norden 곡선을 기반으로 소프트웨어 생명주기 동안의 노력 분포를 가정하는 모형이며, 이를 기초로 개발된 자동화 추정 도구가 SLIM입니다.
profile_image
1

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

87. 큰 숫자를 소인수 분해하기 어렵다는 기반 하에 1978년 MIT에 의해 제안된 공개키 암호화 알고리즘은?

  1. DES
  2. ARIA
  3. SEED
  4. RSA
(정답률: 76%)
  • RSA는 큰 숫자의 소인수 분해가 어렵다는 수학적 원리를 이용해 1978년 MIT에서 제안한 대표적인 공개키 암호화 알고리즘입니다.

    오답 노트

    DES: 1975년 IBM에서 개발한 대칭키 암호
    ARIA, SEED: 대한민국에서 개발한 암호 알고리즘
profile_image
1

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

88. COCOMO 모델의 프로젝트 유형으로 거리가 먼 것은?

  1. Organic
  2. Semi-detached
  3. Embedded
  4. Sequential
(정답률: 74%)
  • COCOMO 모델의 프로젝트 유형은 소프트웨어의 규모와 복잡도에 따라 Organic(조직형), Semi-detached(반분리형), Embedded(내장형) 세 가지로 구분합니다. Sequential은 이에 해당하지 않습니다.
profile_image
1

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

89. 빅데이터 분석 기술 중 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관례를 규명하여 일정한 패턴을 찾아내는 기법은?

  1. Data Mining
  2. Wm-Bus
  3. Digital Twin
  4. Zigbee
(정답률: 79%)
  • 대량의 데이터 속에 숨겨진 변수 간의 상관관계를 분석하여 일정한 패턴을 찾아내는 기술은 Data Mining입니다.

    오답 노트

    Wm-Bus: 산업용 무선 프로토콜
    Digital Twin: 가상 세계에 물리적 자산을 동일하게 구현하는 시뮬레이션 기술
    Zigbee: 저전력, 저비용 무선 메시 네트워크 표준
profile_image
1

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

90. 기존 무선 랜의 한계 극복을 위해 등장하였으며, 대규모 디바이스의 네트워크 생성에 최적화되어 차세대 이동통신, 홈네트워킹, 공공 안전 등의 특수목적을 위한 새로운 방식의 네트워크 기술을 의미하는 것은?

  1. Software Defined Perimeter
  2. Virtual Private Network
  3. Local Area Network
  4. Mesh Network
(정답률: 63%)
  • Mesh Network는 기존 무선 랜의 한계를 극복하고 대규모 디바이스 네트워크 생성에 최적화되어 차세대 이동통신 및 홈네트워킹 등에 사용되는 기술입니다.

    오답 노트

    Software Defined Perimeter: 소프트웨어 정의 경계
    Virtual Private Network: 가상 사설망
    Local Area Network: 근거리 통신망
profile_image
1

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

91. DDoS 공격과 연관이 있는 공격 방법은?

  1. Secure shell
  2. Tribe Flood Network
  3. Nimda
  4. Deadlock
(정답률: 64%)
  • DDoS 공격은 취약한 호스트에 공격 툴을 설치해 에이전트로 만든 후 공격하는 방식이며, Tribe Flood Network(TFN)는 대표적인 DDoS 공격 툴 중 하나입니다.

    오답 노트

    Secure shell: 원격 제어 프로토콜
    Nimda: 컴퓨터 바이러스
    Deadlock: 운영체제의 교착 상태
profile_image
1

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

92. CPM 네트워크가 다음과 같을 때 임계경로의 소요기일은?

  1. 10일
  2. 12일
  3. 14일
  4. 16일
(정답률: 74%)
  • 임계경로는 네트워크의 시작부터 종료까지 가장 오래 걸리는 경로를 의미하며, 이 경로의 소요 시간이 전체 프로젝트의 최소 완료 시간이 됩니다.
    제시된 이미지 의 가능한 경로들을 계산하면 다음과 같습니다.
    ① 경로 1: $3 + 5 + 4 = 12$ 일
    ② 경로 2: $2 + 2 + 3 + 3 = 10$ 일
    ③ 경로 3: $2 + 3 + 5 + 4 = 14$ 일
    따라서 가장 긴 경로인 14일이 임계경로의 소요기일입니다.
profile_image
1

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

93. RIP(Routing Information Protocol)에 대한 설명으로 틀린 것은?

  1. 거리 벡터 라우팅 프로토콜이라고도 한다.
  2. 소규모 네트워크 환경에 적합하다.
  3. 최대 홉 카운트를 115홉 이하로 한정하고 있다.
  4. 최단경로탐색에는 Bellman-Ford 알고리즘을 사용한다.
(정답률: 74%)
  • RIP는 거리 벡터 라우팅 프로토콜로 Bellman-Ford 알고리즘을 사용하며 소규모 네트워크에 적합합니다. 하지만 최대 홉 카운트는 15로 제한되어 있어, 115홉 이하라는 설명은 틀린 내용입니다.
profile_image
1

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

94. 소프트웨어 생명주기 모형 중 고전적 생명주기 모형으로 선형 순차적 모델이라고도 하며, 타당성 검토, 계획, 요구사항 분석, 구현, 테스트, 유지보수의 단계를 통해 소프트웨어를 개발하는 모형은?

  1. 폭포수 모형
  2. 애자일 모형
  3. 컴포넌트 기반 방법론
  4. 6GT 모형
(정답률: 89%)
  • 고전적 생명주기 모형이자 선형 순차적 모델로, 타당성 검토부터 유지보수까지 단계가 폭포처럼 순차적으로 진행되는 모형은 폭포수 모형입니다.
profile_image
1

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

95. 소프트웨어 개발 모델 중 나선형 모델의 4가지 주요 활동이 순서대로 나열된 것은?

  1. Ⓐ-Ⓑ-Ⓓ-Ⓒ 순으로 반복
  2. Ⓐ-Ⓓ-Ⓒ-Ⓑ 순으로 반복
  3. Ⓐ-Ⓑ-Ⓒ-Ⓓ 순으로 반복
  4. Ⓐ-Ⓒ-Ⓑ-Ⓓ 순으로 반복
(정답률: 79%)
  • 나선형 모델의 4가지 주요 활동은 계획 수립 $\rightarrow$ 위험 분석 $\rightarrow$ 개발 및 검증 $\rightarrow$ 고객 평가 순으로 진행됩니다.
    따라서 이미지의 기호를 대입하면 Ⓐ-Ⓓ-Ⓒ-Ⓑ 순으로 반복되는 것이 정답입니다.
profile_image
1

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

96. 전자 칩과 같은 소프트웨어 부품, 즉 블록(모듈)을 만들어서 끼워 맞추는 방법으로 소프트웨어를 완성시키는 재사용 방법은?

  1. 합성 중심
  2. 생성 중심
  3. 분리 중심
  4. 구조 중심
(정답률: 71%)
  • 전자 칩처럼 미리 만들어진 소프트웨어 부품(모듈)을 블록 형태로 끼워 맞추어 완성하는 재사용 방법은 합성 중심 방식입니다.

    오답 노트

    생성 중심: 추상화된 명세를 구체화하여 프로그램을 만드는 패턴 구성 방법입니다.
profile_image
1

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

97. 다음 JAVA코드에서 밑줄로 표시된 부분에는 어떤 보안 약점이 존재하는가? (단, key는 암호화 키를 저장하는 변수이다.)

  1. 무결성 검사 없는 코드 다운로드
  2. 중요 자원에 대한 잘못된 권한 설정
  3. 하드코드된 암호화 키 사용
  4. 적절한 인증없는 중요 기능 허용
(정답률: 79%)
  • 제시된 코드의 부분처럼 암호화 키를 소스 코드 내부에 상수 형태로 직접 입력하는 것은 하드코드된 암호화 키 사용 보안 약점에 해당합니다. 이 경우 공격자에게 키가 노출될 위험이 매우 큽니다.
profile_image
1

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

98. 소프트웨어 개발 표준 중 소프트웨어 품질 및 생산성 향상을 위해 소프트웨어 프로세스를 평가 및 개선하는 국제 표준은?

  1. SCRUM
  2. ISO/IEC 12509
  3. SPICE
  4. CASE
(정답률: 61%)
  • 소프트웨어 품질 및 생산성 향상을 위해 프로세스를 평가하고 개선하는 국제 표준은 SPICE입니다.
    공식 명칭은 ISO/IEC 15504이며, 개발 기관의 자가 평가나 수탁 기관의 프로세스 평가를 목적으로 합니다.
  • 소프트웨어 품질 및 생산성 향상을 위해 소프트웨어 프로세스를 평가 및 개선하는 국제 표준 = SPICE

    But : 공식 명칭 = ISO/IEC 15504 ( 대충 외우면 2번이 답이라고 체크할 수 있음 조심 )

    목적
    - 프로세스 개선을 위해 개발 기관이 스스로 평가하는 것
    - 기관에서 지정한 요구조건의 만족여부를 개발 조직이 스스로 평가하는 것
    - 계약 체결을 위해 수탁 기관의 프로세스를 평가하는 것
    [해설작성자 : !]

    프로세스 평가 = spice
profile_image
1

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

99. 실무적으로 검증된 개발보안 방법론 중 하나로써 SW보안의 모범 사례를 SDLC(Software Development Life Cycle)에 통합한 소프트웨어 개발 보안 생명주기 방법론은?

  1. CLASP
  2. CWE
  3. PIMS
  4. Seven Touchpoints
(정답률: 47%)
  • Seven Touchpoints는 소프트웨어 개발 생명주기(SDLC)의 각 단계에서 보안 강화 활동 7가지를 집중적으로 관리하도록 요구하는 실무 검증된 개발보안 방법론입니다.

    오답 노트

    CLASP: SDLC 초기 단계 보안 강화 및 운영 중인 시스템 적용에 적합한 프로세스
    CWE: 주요 보안 취약점 및 문제를 정리한 목록
    PIMS: 개인정보 보호관리체계
profile_image
1

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

100. 다음 LAN의 네트워크 토폴로지는?

  1. 버스형
  2. 성형
  3. 링형
  4. 그물형
(정답률: 90%)
  • 그림과 같이 하나의 통신 회선(버스)에 여러 대의 단말 장치가 연결된 형태는 버스형 토폴로지입니다.

    오답 노트

    성형: 중앙 집중형 구조
    링형: 인접 장치와 1:1로 연결된 고리 구조
    그물형: 모든 지점이 서로 연결된 망 구조
profile_image
1

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

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