자격증 필기 기출문제



정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 11월 27일)(8790430)

최강 자격증 기출문제 전자문제집 CBT : www.comcbt.com


전자문제집 CBT란?
종이 문제집이 아닌 인터넷으로 문제를 풀고 자동으로 채점하며 모의고사, 오답 노트, 해설까지 제공하는
무료 기출문제 학습 프로그램으로 실제 상설검정에서 사용하는 OMR 형식의 CBT를 제공합니다.

최신 정보처리기사 필기 기출문제 : [다운로드]


1과목 : 소프트웨어 설계


1. User Interface 설계 시 오류 메시지나 경고에 관한 지침으로 가장 거리가 먼 것은?(2022년 03월)
     1. 메시지는 이해하기 쉬워야 한다.
     2. 오류로부터 회복을 위한 구체적인 설명이 제공되어야 한다.
     3. 오류로 인해 발생 될 수 있는 부정적인 내용을 적극적으로 사용자들에게 알려야 한다.
     4. 소리나 색의 사용을 줄이고 텍스트로만 전달하도록 한다.

     정답 : []
     정답률 : 91%
     <문제 해설>
1) 직관성(Intuitiveness) : 누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 함.
2) 유효성(Effectiveness) : 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작해야 함.
3) 학습성(Learnablilty) : 초보와 숙련자 모두가 쉽게 배우고 사용할 수 있게 제작해야 함.
4) 유연성(Flexibility) : 사용자의 인터랙션을 최대한 포용하고, 실수를 방지할 수 있도록 제작해야 함.
[해설작성자 : 기묘]

특정 위험 또는 오류를 연상시키는 색깔의 사용은 상식적으로 직관성을 높이는 수단이 될 것이다.
[해설작성자 : 내일 시험]

UI 설계 시 오류 메시지나 경고에 관한 3가지 지침
1. 메시지는 이해하기 쉬워야 한다.
2. 오류로부터 회복을 위한 구체적인 설명이 제공되어야 한다.
3. 오류로 인해 발생될 수 있는 부정적인 내용을 적극적으로 사용자들에게 알려야 한다. (이걸로 인해서 너의 시스템이 뽀샤질 수도 있어!)
[해설작성자 : 공부뿌뿌]

2. UML 모델에서 한 사물의 명세가 바뀌면 다른사물에 영향을 주며, 일반적으로 한 클래스가 다른 클래스를 오퍼레이션의 매개변수로 사용하는 경우에 나타나는 관계는?(2021년 08월)
     1. Association
     2. Dependency
     3. Realization
     4. Generalization

     정답 : []
     정답률 : 70%
     <문제 해설>
1. 연관 관계(Association Relationship)
2. 의존 관계(Dependency Relationship)
3. 실체화 관계(Realization Relationship)
4. 일반화 관계(Generalization Relationship)
한 사물의 명세가 바뀌면 다른 사물에 영향을 주는 관계는 의존 관계(Dependency Relationship)이므로 2번이 정답입니다.
[해설작성자 : SG]

UML 모델에서 한 사물(클래스 또는 객체)의 명세가 변경되면 다른 사물에 영향을 줄 수 있습니다. 이러한 관계는 주로 의존 관계(dependency)로 나타납니다. 의존 관계는 한 클래스가 다른 클래스를 사용하거나, 메서드의 매개변수로 다른 클래스를 사용하는 경우에 나타납니다.
의존 관계는 한 클래스가 다른 클래스에 의존하여 해당 클래스의 기능을 사용하거나 데이터를 주고받을 때 발생합니다. 이러한 의존 관계는 변경의 전파를 의미하며, 한 클래스의 변경이 다른 클래스에 영향을 주는 경우가 많습니다.
Association은 두 클래스 간의 관계를 나타내는 데 사용되며, 두 클래스 간의 연결과 상호작용을 표현합니다. Realization은 인터페이스를 구현하는 클래스 간의 관계를 나타내며, Generalization은 상속 관계를 나타냅니다. 이와 달리 의존 관계는 클래스 간의 상호작용과 의존성을 나타내는 것에 초점을 맞춥니다. (chatgpt 선생님 = 옮긴이 양민꾼 올림)

3. 익스트림 프로그래밍 (XP)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 빠른 개발을 위해 테스트를 수행하지 않는다.
     2. 사용자의 요구사항은 언제든지 변할 수있다.
     3. 고객과 직접 대면하며 요구사항을 이야기하기 위해 사용자 스토리(User Story)를 활용할 수 있다.
     4. 기존의 방법론에 비해 실용성(Pragmatism)을 강조한 것이라고 볼 수있다.

     정답 : []
     정답률 : 93%
     <문제 해설>
프로그래밍에서 테스트가 없다는 것은 낙하산 없이 스카이 다이빙 하는 것과 같다.
[해설작성자 : 흐히흐히]

XP 개발 프로세스 과정에서 사용자 스토리는 고객의 요구사항을 간단하게 시나리오로 작성한 것을 말한다.
사용자 스토리에는 간단한 테스트 케이스(테스트 사항)을 포함한다. 따라서 XP기법이 빠른 소프트웨어 개발이 목적이긴 하지만 테스트를 수행하지 않는 것은 아님.
[해설작성자 : 카구야 ]

4. 애자일 기법에 대한 설명으로 맞지 않은 것은?(2020년 08월)
     1. 절차와 도구보다 개인과 소통을 중요하게 생각한다.
     2. 계획에 중점을 두어 변경 대응이 난해하다.
     3. 소프트웨어가 잘 실행되는데 가치를 둔다.
     4. 고객과의 피드백을 중요하게 생각한다.

     정답 : []
     정답률 : 94%
     <문제 해설>
애자일(Agile) 개발 4가지 핵심 가치

1. 프로세스와 도구보다는 개인과의 상호작용에 더 가치를 둠
2. 방대한 문서보다는 실행되는 SW에 더 가치를 둠
3. 계약 협상보다는 고객과의 협업에 더 가치를 둠
4. 계획을 따르기 보다는 변화에 반응하는 것에 더 가치를 둠
[해설작성자 : ㅇㅎㅅ]

5. 객체지향 설계에서 정보 은닉(Information Hiding)과 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 필요하지 않은 정보는 접근할 수 없도록 하여 한 모듈 또는 하부시스템이 다른 모듈의 구현에 영향을 받지 않게 설계되는것을 의미한다.
     2. 모듈들 사이의 독립성을 유지시키는 데 도움이 된다.
     3. 설계에서 은닉되어야 할 기본 정보로는 IP주소와 같은 물리적 코드, 상세 데이터 구조 등이 있다.
     4. 모듈 내부의 자료 구조와 접근 동작들에만 수정을 국한하기 때문에 요구사항 등 변화에 따른 수정이 불가능하다.

     정답 : []
     정답률 : 87%
     <문제 해설>
정보은닉(information hiding)
다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통해 접근을 허용하는 것
클래스 외부에서 특정 정보에 접근을 막는다는 의미
(사용자가 굳이 알 필요가 없는 정보는 사용자로부터 숨겨야 한다는 개념 ex.ip, port)

장점
1. 기능의 교체나 변경에 대한 유연성을 제공(객체 간의 구체적인 결합도를 약화)
2. 동일한 타입의 다른 구현 객체들을 교체로 동적 기능 변경 가능
3. 구체적인 구현이 없는 상태(인터페이스)로도 정확한 연동 코드의 생성 가능
4. 모듈화하여 코드의 가독성증가
5. 개발기간 단축
[해설작성자 : 한비로]

정답 4 이유: 정보은닉은 모듈이 독립성을 갖게 해줌으로 요구사항 등 변화에 따른 수정이 가능하다.
[해설작성자 : 정약용]

6. 파이프 필터 형태의 소프트웨어 아키텍처에 대한 설명으로 옳은 것은?(2020년 09월)
     1. 노드와 간선으로 구성된다.
     2. 서브시스템이 입력데이터를 받아 처리하고 결과를 다음 서브시스템으로 넘겨주는 과정을 반복한다.
     3. 계층 모델이라고도 한다.
     4. 3개의 서브시스템(모델, 뷰, 제어)으로 구성되어 있다.

     정답 : []
     정답률 : 78%
     <문제 해설>
아키텍처(architecture)란 영어 뜻으로는 구조, 건축물, 건축학 등의 뜻
소프트웨어 아키텍처:소프트웨어 구조
1. 레이어 패턴 (Layers Pattern): 시스템을 계층으로 구분하여 구성,ex)OSI 참조 모델
2. 클라이언트-서버 패턴 (Client-Server Pattern):하나의 서버 컴포넌트와 다수의 클라이언트 컴포넌트로 구성되는 패턴
3. 파이프-필터 패턴 (Pipe-Filter Pattern):데이터 스트림 절차의 각 단계를 필터 컴포넌트로 캡슐화하여 파이프를 통해 데이터를 전송하는 패턴 ex)UNIX의 쉘
4. 모델-뷰-컨트롤러 패턴 (Model-View-Controller Pattern):서브시스템을 3개의 부분으로 구조화하는 패턴
-------------------
5. 마스터-슬레이브 패턴        6. 브로커 패턴     7. 피어-투-피어 패턴     8. 이벤트-버스 패턴    9. 블랙보드 패턴    10. 인터프리터 패턴
=======================
[해설작성자 : 저질체력]

7. 요구 분석(Requirement Analysis)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 요구 분석은 소프트웨어 개발의 실제적인 첫 단계로 사용자의 요구에 대해 이해하는 단계라 할 수 있다.
     2. 요구 추출(Requirement Elicitation)은 프로젝트 계획 단계에 정의한 문제의 범위 안에 있는 사용자의 요구를 찾는 단계이다.
     3. 도메인 분석(Domain Analysis)은 요구에 대한 정보를 수집하고 배경을 분석하여 이를 토대로 모델링을 하게 된다.
     4. 기능적(Functional) 요구에서 시스템 구축에 대한 성능, 보안, 품질, 안정 등에 대한 요구사항을 도출한다.

     정답 : []
     정답률 : 62%
     <문제 해설>
기능적 요구사항
- 시스템이 수행해야 하는 행위들을 구체화 한 것
- 시스템에서 제공해야 할 기능을 정의한 것
- 입력기능, 출력기능, 데이터베이스 기능, 통신 기능 등

비기능적 요구사항
- 시스템이 가져야 하는 기능 이외의 요구사항
- 시스템의 전체적인 품질이나 고려해야 하는 제약사항 등
- 사용 용이성, 효율성, 신뢰성, 이식성, 유연성, 확장성 등
- 성능적인 면: 응답 속도, 자원 사용량 등
- 보안 측면: 침입 대응, 침입 탐지, 사용자 인증, 권한 부여 등
[해설작성자 : ㄱㄱㅇ]

8. 자료 사전에서 자료의 생략을 의미하는 기호는?(2020년 06월)
     1. { }
     2. **
     3. =
     4. ( )

     정답 : []
     정답률 : 74%
     <문제 해설>
정의 =
구성,연결 +
반복 { }
주석 **
선택 [ㅣ]
생략 ( )
[해설작성자 : 합격하세요구르트]

9. DFD(data flow diagram)에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 자료 흐름 그래프 또는 버블(bubble) 차트라고도 한다.
     2. 구조적 분석 기법에 이용된다.
     3. 시간 흐름을 명확하게 표현할 수 있다.
     4. DFD의 요소는 화살표, 원, 사각형, 직선(단선/이중선)으로 표시한다.

     정답 : []
     정답률 : 67%
     <문제 해설>
DFD는 시간 흐름을 명확하게 표현할 수 없다
자료에 대한 흐름을 표현하며 구조적 분석기법에 이용된다.
요소는 화살표, 원 , 직선으로 표시한다.
[해설작성자 : comcbt.com 이용자]

10. 애자일(Agile) 기법 중 스크럼(Scrum)과 관련된 용어에 대한 설명이 틀린 것은?(2022년 03월)
     1. 스크럼 마스터(Scrum Master)는 스크럼 프로세스를 따르고, 팀이 스크럼을 효과적으로 활용할 수 있도록 보장하는 역할 등을 맡는다.
     2. 제품 백로그(Product Backlog)는 스크럼 팀이 해결해야 하는 목록으로 소프트웨어 요구사항, 아키텍처 정의 등이 포함될 수 있다.
     3. 스프린트(Sprint)는 하나의 완성된 최종 결과물을 만들기 위한 주기로 3달 이상의 장기간으로 결정된다.
     4. 속도(Velocity)는 한 번의 스프린트에서 한 팀이 어느 정도의 제품 백로그를 감당할 수 있는지에 대한 추정치로 볼 수 있다.

     정답 : []
     정답률 : 88%
     <문제 해설>
스프린트
- 실제 개발을 2~4주간 진행하는 과정
- 스프린트 백로그에 작성된 Task를 대상으로 작업 시간을 측정한 후 담당 개발 자에게 할당합니다.
- Task는 할 일, 진행 중, 완료의 상태로 구성된다.
[해설작성자 : MSKIM]

11. CASE(Computer Aided Software Engineering)에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 소프트웨어 모듈의 재사용성이 향상된다.
     2. 자동화된 기법을 통해 소프트웨어 품질이 향상된다.
     3. 소프트웨어 사용자들에게 사용 방법을 신속히 숙지시키기 위해 사용된다.
     4. 소프트웨어 유지보수를 간편하게 수행할 수 있다.

     정답 : []
     정답률 : 86%
     <문제 해설>
CASE(Computer Aided Software Engineering)도구 활용 - 일관성 분석을 통해 요구사항 변경사항의 추적 및 분석, 관리, 표준 준수여부를 확인
[해설작성자 : u]

12. 사용자 인터페이스(User Interface)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 사용자와 시스템이 정보를 주고받는 상호작용이 잘 이루어지도록 하는 장치나 소프트웨어를 의미한다.
     2. 편리한 유지보수를 위해 개발자 중심으로 설계되어야 한다.
     3. 배우기가 용이하고 쉽게 사용할 수 있도록 만들어져야 한다.
     4. 사용자 요구사항이 UI에 반영될 수 있도록 구성해야 한다.

     정답 : []
     정답률 : 95%
     <문제 해설>
사용자 인터페이스는 개발자 중심이 아닌 사용자가 바라보는 관점으로 쉽게 알아볼 수 있도록 설계되어야 한다.
[해설작성자 : A매치 합격]

13. 기본 유스케이스 수행 시 특별한 조건을 만족할 때 수행하는 유스케이스는?(2021년 03월)
     1. 연관
     2. 확장
     3. 선택
     4. 특화

     정답 : []
     정답률 : 65%
     <문제 해설>
Usecase 구성요소와의 관계
- 연관 : use case 와 actor의 관계
- 확장 : 기본 use case 수행 시 특별한 조건을 만족할 때 수행할 usecase
- 포함 : 시스템의 기능이 별도의 기능을 포함
- 일반화 : 하위 use case/action이 상위 use case/actor에게 기능/역할을 상속받음
- 그룹화 : 여러개의 usecase를 단순화하는 방법
[해설작성자 : 합격합격]

14. 다음 중 요구사항 모델링에 활용되지 않는 것은?(2021년 03월)
     1. 애자일(Agile) 방법
     2. 유스케이스 다이어그램(Use Case Diagram)
     3. 시퀀스 다이어그램(Sequence Diagram)
     4. 단계 다이어그램(Phase Diagram)

     정답 : []
     정답률 : 66%
     <문제 해설>
단계 다이어그램: 물리 화학 등에서 사용하는 다이어그램, 요구사항 모델링과 관계 없음
[해설작성자 : ㅇ]

15. 아키텍처 설계과정이 올바른 순서로 나열된 것은?(2022년 03월)

    

     1. ㉮ → ㉯ → ㉰ → ㉱ → ㉲
     2. ㉲ → ㉮ → ㉯ → ㉱ → ㉰
     3. ㉮ → ㉲ → ㉯ → ㉱ → ㉰
     4. ㉮ → ㉯ → ㉰ → ㉲ → ㉱

     정답 : []
     정답률 : 71%
     <문제 해설>
소프트웨어 아키텍처의 설계과정
설계목표설정 -시스템 타입 결정 - 아키텍처 패턴 적용 - 서브시스템 구체화 - 검토
[해설작성자 : 꿍디팡팡]

조금더 디테일하게 정리 할 필요가 있겠네요..
1. 설계 목표 설정
2. 시스템 타입 결정
3. 아키텍처 패턴 적용(위 설명에서는 스타일 적용 및 커스터마이즈)
*아키텍처 패턴 : 아키텍처 설계 시 발생하는 문제들을 해결하기 위해 미리 만들어 놓은 해결 방식
4. 서브시스템 구체화(서브시스템의 기능, 인터페이스 동작 작성)
5. 검토(아키텍쳐 설계 검토)

16. 소프트웨어 개발 단계에서 요구 분석 과정에 대한 설명으로 거리가 먼 것은?(2020년 09월)
     1. 분석 결과의 문서화를 통해 향후 유지보수에 유용하게 활용 할 수 있다.
     2. 개발 비용이 가장 많이 소요되는 단계이다.
     3. 자료흐름도, 자료 사전 등이 효과적으로 이용될 수 있다.
     4. 보다 구체적인 명세를 위해 소단위 명세서(Mini-Spec)가 활용될 수 있다.

     정답 : []
     정답률 : 88%
     <문제 해설>
개발비용이 가장 많이 소요되는 단계는 유지보수 단계이다.
[해설작성자 : 꿀떠]

17. 요구사항 관리 도구의 필요성으로 틀린 것은?(2021년 05월)
     1. 요구사항 변경으로 인한 비용 편익 분석
     2. 기존 시스템과 신규 시스템의 성능 비교
     3. 요구사항 변경의 추적
     4. 요구사항 변경에 따른 영향 평가

     정답 : []
     정답률 : 61%
     <문제 해설>
2번은 개발, 설계 등 구현단계 때
[해설작성자 : 퓨퓨]

18. 자료흐름도(Data Flow Diagram)의 구성요소로 옳은 것은?(2020년 08월)
     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%
     <문제 해설>
자료 흐름도 구성 요소
- 프로세스 (Process)
- 자료 흐름(Data Flow)
- 자료 저장소(Data Store)
- 단말(Terminator)
[해설작성자 : ㅇㅎㅅ]

19. 입력되는 데이터를 컴퓨터의 프로세서가 처리하기 전에 미리 처리하여 프로세서가 처리하는 시간을 줄여주는 프로그램이나 하드웨어를 말하는 것은?(2022년 03월)
     1. EAI
     2. FEP
     3. GPL
     4. Duplexing

     정답 : []
     정답률 : 54%
     <문제 해설>
EAI(Enterprise Application Integration): 기업 응용 프로그램 통합으로 기업용 응용 프로그램의 구조적 통합 방안을 가리킴
FEP(Front-End Processor): 입력되는 데이터를 컴퓨터의 프로세서가 처리하기 전에 미리 처리하여 프로세서가 차지하는 시간을 줄여주는 프로그램이나 하드웨어
GPL(General Public License): 자유 소프트웨어 재단(OSF)에서 만든 자유 소프트웨어 라이선스
Duplexing: 이중화(데이터베이스의 회복 기법 중 가장 간단한 것)
[해설작성자 : 빡대가리]

이중통신(duplex) 또는 쌍방향 통신은 두 지점 사이에서 정보를 주고 받는 전자 통신 시스템을 말한다. 이중 통신을 할 때 전송 방향마다 두 개의 통신 선호를 사용하면 단순하지만 전송로를 아끼기 위해 여러 종류의 전송 방식이 쓰인다.
[해설작성자 : 짱돌]

20. 소프트웨어 아키텍처와 관련한 설명으로 틀린것은?(2021년 08월)
     1. 파이프 필터 아키텍처에서 데이터는 파이프를 통해 양방향으로 흐르며, 필터 이동 시 오버헤드가 발생하지 않는다.
     2. 외부에서 인식할 수 있는 특성이 담긴 소프트웨어의 골격이 되는 기본 구조로 볼수 있다.
     3. 데이터 중심 아키텍처는 공유 데이터저장소를 통해 접근자 간의 통신이 이루어지므로 각 접근자의 수정과 확장이 용이하다.
     4. 이해 관계자들의 품질 요구사항을 반영하여 품질 속성을 결정한다.

     정답 : []
     정답률 : 79%
     <문제 해설>
파이프 필터 아키텍처에서 데이터는 파이프를 통해 단방향으로 흐르고, 필터 이동시 오버헤드가 발생될 수 있음.
(파이프 모양의 컵에 물을 계속 따르면 물이 넘쳐 흐르는것 처럼...)
[해설작성자 : 야쿠르트]

파이프- 필터 패턴은 데이터 통로인 파이프를 이용해 컴포넌트인 필터간에 데이터를 전송하는 구조로, 단방향, 양방향 모두 구현할 수 있으며, 필터간 이동 시 오버헤드가 발생합니다.
[해설작성자 : 이영흠]

파이프라인의 파이프는 ‘단방향’ 채널이며, 양방향 통신이 필요할 때는 별도의 반대 방향 파이프나 제어 채널을 추가로 두는 방식으로 확장합니다.
[해설작성자 : 킴진성]

2과목 : 소프트웨어 개발


21. 정렬된 N개의 데이터를 처리하는데 O(Nlog2N)의 시간이 소요되는 정렬 알고리즘은?(2020년 06월)
     1. 선택정렬
     2. 삽입정렬
     3. 버블정렬
     4. 합병정렬

     정답 : []
     정답률 : 69%
     <문제 해설>
선택정렬 : O(n^2)
삽입정렬 : O(n^2)
버블정렬 : O(n^2)
합병정렬 : O(Nlog2N)
[해설작성자 : 윤지야보고싶다]

O(1) : 상수형 복잡도 (해시 함수)
O(logN) : 로그형 복잡도 (이진 탐색)
O(N) : 선형 복잡도 (순차 탐색)
O(Nlog2N) : 선형 로그형 복잡도 (퀵 정렬, 병합정렬)
O(N^2) : 제곱형 (거품 정렬, 삽입 정렬, 선택 정렬)
[해설작성자 : 벙어리장갑]

이미 정렬된 경우 시간복잡도
선택정렬 : O(n^2)
삽입정렬 : O(n)
버블정렬 : O(n)
합병정렬 : O(nlog2n)
[해설작성자 : comcbt.com 이용자]

22. 다음 자료에 대하여 “Selection Sort”를 사용하여 오름차순으로 정렬한 경우 PASS 3의 결과는?(2021년 03월)

    

     1. 3, 4, 7, 9, 8
     2. 3, 4, 8, 9, 7
     3. 3, 8, 4, 9, 7
     4. 3, 4, 7, 8, 9

     정답 : []
     정답률 : 54%
     <문제 해설>
초기상태 : 8, 3, 4, 9, 7

선택정렬은 정렬되지 않은 값중 가장 작은 값을 선택 후 정렬되지 않은 첫 번째 요소와 바꾸는 방법이다.
- 정렬된 값은 ''로 표시

1 PASS : '3', 8, 4, 9, 7
2 PASS : '3, 4', 8, 9, 7
3 PASS : '3, 4, 7', 9, 8
4 PASS : '3, 4, 7, 8', 9
[해설작성자 : 민쵸리]

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

[오류 신고 내용]
2 PASS에서 3 PASS로 넘어갈 때 왜 8,9 순서에서 9,8로 바뀌죠?
3 PASS : '3, 4, 7', 8, 9 아닌가요?
[해설작성자 : 이스꼬꼬]

[오류신고 반론]
[오류 신고 내용에 대하여]
정렬되지 않은 부분하고 위치 자체를 '교체' 해야하기 때문에 답은 1번입니다.
초기상태 : 8, 3, 4, 9, 7
1 PASS : '3', 8, 4, 9, 7 (정렬되지 않은 값 중 제일 작은 값은 3이므로 3 선택 후 정렬되지 않은 첫번째요소인 8과 위치 바꿈)
2 PASS : '3, 4', 8, 9, 7 (3은 정렬되었으므로 제외한다고 생각, 정렬되지 않은 값 중 제일 작은 값은 4이므로 정렬되지 않은 첫번째 값인 8과 위치 바꿈)
3 PASS : '3, 4, 7', 9, 8 (3,4는 정렬되었으므로 제외한다고 생각. 정렬되지 않은 값 중 제일 작은 값은 7이므로 정렬되지 않은 첫번째 값인 8과 위치 바꿈)

선택정렬은 삽입정렬하고는 다른 개념이기 때문에 위치 자체를 바꾼다고 생각하시면 됩니다. 따라서 7하고 8이 위치를 서로 바꾼다고 생각하시면 됩니다.

그러므로 위 오류는 무효라고 생각하시면 됩니다
[해설작성자 : 지나가던 비전공자]

[오류신고 반론]
Selection Sort 진행

PASS 1
1번째 위치에 올 최소값 찾기 → 3
3과 8 교환 → 3, 8, 4, 9, 7

PASS 2
2번째 위치에 올 최소값 찾기 (8, 4, 9, 7 중 최소값 → 4)
4와 8 교환 → 3, 4, 8, 9, 7

PASS 3
3번째 위치에 올 최소값 찾기 (8, 9, 7 중 최소값 → 7)
7과 8 교환 → 3, 4, 7, 9, 8

반론이 맞다
[해설작성자 : 합격주세요]

23. 다음 그래프에서 정점 A를 선택하여 깊이우선탐색(DFS)으로 운행한 결과는?(2021년 08월)

    

     1. ABECDFG
     2. ABECFDG
     3. ABCDEFG
     4. ABEFGCD

     정답 : []
     정답률 : 76%
     <문제 해설>
깊이 우선 탐색(Depth First Search)는 이름 그대로 최대한 깊이 탐색한 이후 더이상 탐색할 것이 없다면 그 이전으로 돌아가 탐색을 이어가는 것입니다. 탐색을 하고 있는 분기에서 완벽하게 탐색을 한 이후 다른 분기를 탐색하는 방법입니다.
고로 A-B-E-F-G까지 탐색한 이후 더이상 탐색할 것이 없기 때문에 이전으로 돌아가 C-D를 마저 탐색해줍니다.
[해설작성자 : 오니]

깊이 우선 검색은 노드의 깊이를 우선으로 검색하고 나중에 형제 노드를 검색합니다. 문제를 보면 처음에 A - B - E가 되구요....E의 위치에서 더이상 내려갈곳이 없기 때문에 F로 이동을 합니다. F에서 다시 밑으로 G로 갑니다. 깊이 검색이 끝났기 때문에 형제 노드인 A에서 시작하여 C로 가고 더이상 갈곳이 없기에 다시 A에서 시작 하여 D로 갑니다. 결과적으로, A B E F G C D 의 순서가 됩니다.
[해설작성자 : cbttest]

사실 이 문제는 사전순으로 탐색한다는 전제조건이 없기에 가능한 문제입니다. 사전순 탐색이라는 조건이 붙을 경우 탐색 순서는 A-B-C-D-F-E-G가 됩니다. 두 번째 해설은 틀렸습니다. 문제에서 주어진 그림은 그래프이고 형제노드같은 개념은 트리에서 나오는 개념이죠. 따라서 보기 1, 2번은 A-B-E까지는 DFS로 가능하지만 이후 F가 아닌 C가 나오기 때문에 답이 아니고, 보기 3번은 A-B-C-D까지 DFS로 진행이 가능하지만 이후 F가 아닌 E가 나오기 때문에 답이 아닙니다. 첫 번째 해설 작성자 분이 설명한 대로 A-B-E-F-G까지 탐색을 하고, F로 돌아가서 C-D를 탐색하는 4번 보기만 가능하기 때문에 4번이 정답이 됩니다.
[해설작성자 : comcbt.com 이용자]

노드 A,B,C,D...는 노드를 구분하기 위한 것입니다. 그래서 사전순인지 따질 필요가 없습니다.
선지를 보면 4번을 제외하고는 간선이 없는 노드로 이동하기 때문에 틀렸습니다.
따라서 4번이 정답입니다.
[해설작성자 : [정확하게 쓰자]]

24. 다음 전위식(prefix)을 후위식(postfix)으로 옳게 표현한 것은?(2021년 03월)

    

     1. A B C + D / * E -
     2. A B * C D / + E -
     3. A B * C + D / E -
     4. A B C + * D / E -

     정답 : []
     정답률 : 64%
     <문제 해설>
전위 표기법(prefix)-연산자가 앞에
중위 표기법(infix)-연산자가 안에
후위 표기법(postfix)-연산자가 뒤에

1.연산자에 따라 묶는다
(-(/(*A(+BC))D)E)

2.연산자를 각 괄호 뒤로 뺀다(후위식)
(((A(BC)+)*D)/E)-

3.괄호를 제거한다.
ABC+*D/E-
[해설작성자 : 또르링]

전위식 -> 중위식 -> 후위식

1. -/*A+BCDE        전위식
2. -/*A(B+C)DE
     -/(A*(B+C))DE
     -((A*(B+C))/D)E
        ((A*(B+C))/D)-E 중위식
3. (A*BC+/D)-E
     (ABC+*/D)-E
     (ABC+*D/)-E
        ABC+*D/E-    후위식
    
[해설작성자 : 루니]

25. 인터페이스 보안을 위해 네트워크 영역에 적용될 수 있는 것으로 거리가 먼 것은?(2020년 09월)
     1. IPSec
     2. SSL
     3. SMTP
     4. S-HTTP

     정답 : []
     정답률 : 79%
     <문제 해설>
인터페이스 보안 기능은 일반적으로 네트워크, 애플리케이션, 데이터베이스 영역에 적용한다.

네트워크 영역 - 인터페이스 송/수신 간 스니핑 등을 이용한 데이터 탈취 및 변조 위협을 방지하기 위해
네트워크 트래픽에 대한 암호화를 설정한다.
암호화는 인터페이스 아키텍처에 따라 IPSec, SSL, S-HTTP 등의 다양한 방식으로 적용한다.
[해설작성자 : ehejrrhdwn]

SMTP(Simple Mail Transfer Protocol): 메일 전송에 사용되는 프로토콜이다.
[해설작성자 : 참째]

IPSec : IP계층에서 무결성과 인증을 보장하는 인증헤더와 암호화를 이용해 보안서비스 제공
SSL : 상호 인증 및 전송 시 데이터 무결성을 보장
S-HTTP : 웹상에서 클라이언트와 서버간의 메세지를 암호화 하여 전송
[해설작성자 : 퀭]

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

    

     1. 3
     2. 4
     3. 5
     4. 6

     정답 : []
     정답률 : 66%
     <문제 해설>
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
[해설작성자 : asdf]

27. 다음 초기 자료에 대하여 삽입 정렬(Insertion Sort)을 이용하여 오름차순 정렬할 경우 1회전 후의 결과는?(2020년 09월)

    

     1. 3, 4, 8, 7, 9
     2. 3, 4, 9, 7, 8
     3. 7, 8, 3, 4, 9
     4. 3, 8, 4, 9, 7

     정답 : []
     정답률 : 77%
     <문제 해설>
삽입정렬(Insertion Sort)은 최소값을 찾지 않고 자리에 따라 비교하고 오름차순 적용하여 바꾸는 걸로 알고 있습니다.
[2번째 원소부터 시작하여 그 앞(왼쪽)의 원소들과 비교하여 삽입할 위치를 지정한 후, 원소를 뒤로 옮기고 지정된 자리에 자료를 삽입]
            
초기자료 8 3 4 9 7

1회전 3 8 4 9 7 (두번째 자리 3과 첫번째 자리 8을 비교 했을 때 3이 작으니 바꿔줍니다.)

2회전 3 4 8 9 7 (3 8 | 4 9 7 세번째 자리인 4를 앞에 바꿨던 3과 8을 비교 하였을 때
                                 3보다는 크고 8보다는 작으니 3과 8사이에 삽입 합니다.)

3회전 3 4 8 9 7 (3 4 8 | 9 7 네번째 자리인 9를 앞에 바꾼 3 4 8과 비교 하였을 때
                                 9 자신이 제일 크기 때문에 이동이 없습니다)

4회전 3 4 7 8 9 (3 4 8 9 | 7 다섯번째 자리인 7을 앞에 3 4 8 9와 비교 하였을 때
                                 3 4 보다는 크고 8 9보다는 작으니 3 4 와 8 9 사이에 삽입합니다.)
[해설작성자 : 정처기 필기 합격하자]

28. 위험 모니터링의 의미로 옳은 것은?(2022년 04월)
     1. 위험을 이해하는 것
     2. 첫 번째 조치로 위험을 피할 수 있도록 하는 것
     3. 위험 발생 후 즉시 조치하는 것
     4. 위험 요소 징후들에 대하여 계속적으로 인지하는 것

     정답 : []
     정답률 : 75%
     <문제 해설>
위험 모니터링(monitoring)의 의미
-> 위험 요소 징후들에 대하여 계속적으로 인지하는 것
[해설작성자 : 내일정치기합격기원]

29. 동시에 소스를 수정하는 것을 방지하며 다른 방향으로 진행된 개발 결과를 합치거나 변경 내용을 추적할 수 있는 소프트웨어 버전 관리 도구는?(2022년 04월)
     1. RCS(Revision Control System)
     2. RTS(Reliable Transfer Service)
     3. RPC(Remote Procedure Call)
     4. RVS(Relative Version System)

     정답 : []
     정답률 : 54%
     <문제 해설>
RCS(Revision Control System)
- CVS와의 차이점은 소스 파일의 수정을 한 사람만으로 제한한다.
- 다수의 사용자가 동시에 파일 수정을 할 수 없도록 파일 잠금 방식으로 버전을 관리하는 도구이다.
- 다른 방향으로 진행된 개발 결과를 합치거나 변경 내용을 추적할 수 있다.
[해설작성자 : 두목넷]

RPC(Remote Procedure call)
- 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 리모트의 함수나 프로시저를 실행 할 수 있게 해주는 프로세스간 통신
[해설작성자 : comcbt.com 이용자]

RTS : 데이터 통신에서 신뢰성이 보장된 전송 서비스를 제공하는 프로토콜
RPC : 네트워크상에서 원격지의 다른 프로세스나 컴퓨터에서 실행중인 함수나 프로시저를 호출하는 프로토콜
RVS : 파일의 상대적인 버전을 관리하는 도구로 각 파일 버전의 차이를 저장해 파일 복원과 변경 이력을 추적
[해설작성자 : 정처기 공부중]

30. 화이트박스 테스트와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 화이트박스 테스트의 이해를 위해 논리흐름도(Logic-Flow Diagram)를 이용할 수 있다.
     2. 테스트 데이터를 이용해 실제 프로그램을 실행함으로써 오류를 찾는 동적 테스트(Dynamic Test)에 해당한다.
     3. 프로그램의 구조를 고려하지 않기 때문에 테스트 케이스는 프로그램 또는 모듈의 요구나 명세를 기초로 결정한다.
     4. 테스트 데이터를 선택하기 위하여 검증기준(Test Coverage)을 정한다.

     정답 : []
     정답률 : 68%
     <문제 해설>
3. 프로그램 구조를 고려하지 않는 것은 == 블랙박스 테스트
[해설작성자 : comcbt.com 이용자]

화이트박스 테스트는 정적 분석뿐만 아니라 동적 분석에도 사용될 수 있습니다. 정적 분석에서는 코드를 실행하지 않고 검토하여 문제점을 찾지만, 동적 분석에서는 실제로 코드를 실행시켜 테스트를 진행합니다. 화이트박스 테스트의 경우, 프로그램의 내부 구조를 알고 있는 상태에서 테스트를 진행하기 때문에, 로직 흐름도를 이용하여 로직 검증을 할 수 있고, 동적 테스트를 통해 실제 실행 중인 프로그램의 동작을 검증할 수도 있습니다.

제시된 문제에서 언급된 "프로그램의 구조를 고려하지 않고 때때로 테스트 케이스는 프로그램 코드 또는 모듈의 우연한 면을 기준으로 결정한다"는 주장은 화이트박스 테스트에 부합하지 않습니다. 화이트박스 테스트는 프로그램의 내부 구조에 기반하여 체계적으로 테스트 케이스를 설계하기 때문에 우연한 면을 기준으로 테스트 케이스를 설계하지 않습니다.
[해설작성자 : comcbt 사용자]

31. 다음 설명에 해당하는 것은?(2020년 09월)

    

     1. 외부 스키마
     2. 내부 스키마
     3. 개념 스키마
     4. 슈퍼 스키마

     정답 : []
     정답률 : 71%
     <문제 해설>
외부 스키마 : 개인 또는 응용 개발자 입장에서 보는 데이터베이스
개념 스키마 : 모든 응용 프로그램 또는 사용자들이 필요로 하는 조직 전체 데이터베이스로 단 하나만 존재한다.
[해설작성자 : 수험생]

외부스키마 : 사용자 뷰, 사용자나 개발자 관점
개념스키마 : 전체적인 논리적 구조
내부스키마 : 물리적 저장장치
[해설작성자 : 또비]

32. 다음 트리에 대한 INORDER 운행 결과는?(2020년 09월)

    

     1. D B A E C F
     2. A B D C E F
     3. D B E C F A
     4. A B C D E F

     정답 : []
     정답률 : 72%
     <문제 해설>
중위(Inorder) : D - B - A - E - C - F
전위(Preorder) : A - B - D - C - E - F
후위(Postorder) : D - B - E - F - C - A
[해설작성자 : 수험생]

33. 제품 소프트웨어 패키징 도구 활용 시 고려사항이 아닌 것은?(2020년 08월)
     1. 제품 소프트웨어의 종류에 적합한 암호화 알고리즘을 고려한다.
     2. 추가로 다양한 이기종 연동을 고려한다.
     3. 사용자 편의성을 위한 복잡성 및 비효율성 문제를 고려한다.
     4. 내부 콘텐츠에 대한 보안은 고려하지 않는다.

     정답 : []
     정답률 : 92%
     <문제 해설>
제품 소프트웨어의 패키징 활용 시 고려사항
- 패키징 시 사용자에게 배포 되는 소프트웨어 임을 감안하여 반드시 내부 콘텐츠에 대한 암호화 및 보안을 고려한다.
- 패키징 도구를 활용하여 여러 가지 이기종 콘텐츠 및 단말기 간 DRM 연동을 고려한다.
- 패키징 도구를 고려하면 사용자의 입장에서 불편해질 수 있는 문제를 고려하여 최대한 효율적으로 적용될 수 있도록 한다.
-암호화 알고리즘이 여러 가지 종류가 있는데 제품 소프트웨어의 종류에 맞는 알고리즘을 선택하여 배포시 범용성에 지장이 없도록 고려한다.
[해설작성자 : 호이집사]

34. 소프트웨어 개발 활동을 수행함에 있어서 시스템이 고장(Failure)을 일으키게 하며, 오류(Error)가 있는 경우 발생하는 것은?(2021년 08월)
     1. Fault
     2. Testcase
     3. Mistake
     4. Inspection

     정답 : []
     정답률 : 77%
     <문제 해설>
결함(fault)이란 오류 및 작동 실패의 원인으로서 소프트웨어 개발자의 설계와 다르게 동작하거나 제작 의도와 다른 결과가 발생하는 것을 말합니다. 실수/실책(mistake)이란 사람이 저지른 잘못된 판단이나 결심을 주로 가리킨다고 합니다.
[해설작성자 : 월담]

35. 빌드 자동화 도구에 대한 설명으로 틀린 것은?(2020년 09월)
     1. Gradle은 실행할 처리 명령들을 모아 태스크로 만든 후 태스크 단위로 실행한다.
     2. 빌드 자동화 도구는 지속적인 통합개발환경 에 서 유용하게 활용된다.
     3. 빌드 자동화 도구에는 Ant, Gradle, Jenkins등이 있다.
     4. Jenkins는 Groovy 기반으로 한 오픈소스로 안드로이드 앱 개발 환경에서 사용된다.

     정답 : []
     정답률 : 65%
     <문제 해설>
빌드 자동화 도구
- 빌드를 포함하여 테스트 및 배포를 자동화하는 도구
- Ant, Make, Maven, Gradle, Jenkins 등이 있음

Jenkins
- JAVA 기반의 오픈소스 형태
- 서블릿 컨테이너에서 실행되는 서버 기반 도구
- 친숙한 Web GUI 제공
- 분산 빌드나 테스트 가능

Gradle
- Groovy를 기반으로 한 오픈 소스 형태
- 안드로이드 앱 개발 환경에서 사용
- 행할 처리 명령들을 모아 태스크(Task)로 만든 후 태스크 단위로 실행
[해설작성자 : 도라예몽]

36. 소프트웨어 형상관리(Configuration management)에 관한 설명으로 틀린 것은?(2021년 03월)
     1. 소프트웨어에서 일어나는 수정이나 변경을 알아내고 제어하는 것을 의미한다.
     2. 소프트웨어 개발의 전체 비용을 줄이고, 개발 과정의 여러 방해 요인이 최소화되도록 보증하는 것을 목적으로 한다.
     3. 형상관리를 위하여 구성된 팀을 “chief programmer team”이라고 한다.
     4. 형상관리의 기능 중 하나는 버전 제어 기술이다.

     정답 : []
     정답률 : 71%
     <문제 해설>
chief programmer team은 형상관리를 위해 구성된 팀을 뜻하지 않음
[해설작성자 : 또르링]

chief programmer team : 효율성을 제고하기 위하여 능력과 경험이 풍부한 책임 프로그램 작성자를 중심으로 하여 구성한 개발 팀.
[해설작성자 : 배고프다]

형상관리를 위하여 구성된 팀을 형상통제위원회(CCB; Change Control Board)라고 함
[해설작성자 : 총정리]

37. 블랙박스 테스트 기법으로 거리가 먼 것은?(2020년 09월)
     1. 기초 경로 검사
     2. 동치 클래스 분해
     3. 경계값 분석
     4. 원인 결과 그래프

     정답 : []
     정답률 : 70%
     <문제 해설>
기초 경로 검사는 화이트박스 테스트 기법 중 하나이다.
[해설작성자 : 도라예몽]

<블랙박스 테스트의 종류>
- 동치(동등) 분할검사 : 입력조건에 유효한 값과 무효한 값을 균등하게 하여 테스트 케이스를 설계하는 방법
- 경계값 분석 : 입력 조건의 경계에서 오류가 발생할 확률이 높기 때문에, 입력 조건의 경계값을 테스트 케이스로 설계하는 방법
- 원인-효과 그래프 검사 : 입력 데이터 간의 관계와 출력에 미치는 영향을 분석해서 효용성이 높은 테스트 케이스를 설계하는 방법
- 오류-예측 검사 : 과거의 경험이나 확인자의 감각에 의존하는 테스트 케이스 설계 방법
- 비교검사 : 여러 버전의 프로그램에 동일한 자료를 제공해서 테스트 하는 방법
[해설작성자 : [나는 누구다]]

38. 해싱 함수(Hashing Function)의 종류가 아닌 것은?(2021년 03월)
     1. 제곱법(mid-square)
     2. 숫자분석법(digit analysis)
     3. 개방주소법(open addressing)
     4. 제산법(division)

     정답 : []
     정답률 : 68%
     <문제 해설>
해싱함수에는
제산법, 제곱법, 중첩법(폴딩법), 숫자분석법, 기수 변환법, 무작위 방법이 있다.
[해설작성자 : 또르링]

개방주소법은 해싱 충돌이 일어났을 시 빈 노드에 데이터를 저장하는 방식임. 선형 탐색, 제곱 탐색, 랜덤 탐색, 이중 해싱 등을 아우름.
[해설작성자 : 2주의기적]

39. 테스트 케이스 자동 생성 도구를 이용하여 테스트 데이터를 찾아내는 방법이 아닌 것은?(2021년 08월)
     1. 스터브(Stub)와 드라이버(Driver)
     2. 입력 도메인 분석
     3. 랜덤(Random) 테스트
     4. 자료 흐름도

     정답 : []
     정답률 : 47%
     <문제 해설>
테스트 수행 도구
: 자료 흐름도, 기능 테스트, 입력 도메인 분석, 랜덤 테스트

스터브(Stub)와 드라이버(Driver)는 통합 테스트 시 사용되는 것
스터브(Stub)는 하향식 테스트에 사용되는 테스트용 임시 모듈
드라이브(Drive)는 상향식 테스트에 사용되는 테스트 가동기
[해설작성자 : ㄱㄱㅇ]

40. 다음 트리의 차수(degree)는?(2020년 08월)

    

     1. 2
     2. 3
     3. 4
     4. 5

     정답 : []
     정답률 : 75%
     <문제 해설>
트리의 차수 : 전체 트리 중에서 가장 많은 차수
[해설작성자 : ㅇㅎㅅ]

최상단은 루트로 차수로 포함되지 않음.
[해설작성자 : 식객]

B 가 최대차수를 가지고 있다. 3개
[해설작성자 : 정준우]

차수 : 자식 수. 이 트리에서는 B의 자식이 D, E, F 총 3개로 가장 많으므로 트리의 차수는 3
[해설작성자 : 콩이언니]

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


41. 데이터베이스 설계 단계 중 물리적 설계 시 고려 사항으로 적절하지 않은 것은?(2022년 03월)
     1. 스키마의 평가 및 정제
     2. 응답 시간
     3. 저장 공간의 효율화
     4. 트랜잭션 처리량

     정답 : []
     정답률 : 69%
     <문제 해설>
o 어떤 인덱스를 만들 것인지에 대한 고려
o 성능 향상을 위한 개념 스키마의 변경 여부 검토
o 레코드의 크기
o 파일과 구조 저장을 위한 최소한의 공간
o 빈번한 질의와 트랜잭션들의 수행 속도를 높이기 위한 고려사항
- 응답 시간
- 저장 공간의 효율화
- 트랜잭션 처리량
[해설작성자 : 용소용소]

스키마의 평가 및 정제는 논리적 설계에서 실행된다.
[해설작성자 : 망굴]

42. DELETE 명령에 대한 설명으로 틀린 것은?(2022년 03월)
     1. 테이블의 행을 삭제할 때 사용한다.
     2. WHERE 조건절이 없는 DELETE 명령을 수행하면 DROP TABLE 명령을 수행했을 때와 동일한 효과를 얻을 수 있다.
     3. SQL을 사용 용도에 따라 분류할 경우 DML에 해당한다.
     4. 기본 사용 형식은 “DELETE FROM 테이블 [WHERE 조건];” 이다.

     정답 : []
     정답률 : 78%
     <문제 해설>
DELETE문은 테이블내의 튜플들만 삭제, DROP문은 테이블 자체를 삭제
[해설작성자 : ITK]

43. 어떤 릴레이션 R의 모든 조인 종속성의 만족이 R의 후보 키를 통해서만 만족될 때, 이 릴레이션 R이 해당하는 정규형은?(2022년 03월)
     1. 제5정규형
     2. 제4정규형
     3. 제3정규형
     4. 제1정규형

     정답 : []
     정답률 : 65%
     <문제 해설>
- 제1정규형 : 릴레이션에 속한 모든 속성의 도메인이 원자값으로만 구성되어 있으면 제 1 정규형에 속한다.
- 제2정규형 : 제1 정규형에 속하고, 기본키가 아닌 모든 속성이 기본키에 완전 함수 종속되면 제2 정규형에 속한다.(부분 함수 종속 제거)
- 제3정규형 : 제2 정규형에 속하고, 기본키가 아닌 모든 속성이 기본키에 이행적 함수 종속이 되지 않으면 제3 정규형에 속한다.
- BCNF(보이스/코드) 정규형 : 릴레이션의 함수 종속 관계에서 모든 결정자가 후보키이면 보이스/코드 정규형에 속한다.
- 제4정규형 : BCNF 정규형을 만족하면서 함수 종속이 아닌 다치 종속을 제거해야 만족할 수 있다.
- 제5정규형 : 제4 정규형을 만족하면서 후보키를 통하지 않는 조인 종속을 제거해야 만족할 수 있다.
[해설작성자 : 강썬]

정규화 단계 - 원부이 결다조
1. 원자화
2. 부분 함수 종속 제거
3. 이행 함수 종속 제거
BCNF. 결정자 함수 종속
4. 다치 종속성 제거
5NF 조인 종속성 제거
[해설작성자 : 수스토리]

44. 물리적 데이터베이스 설계에 대한 설명으로 거리가 먼 것은?(2021년 08월)
     1. 물리적 설계의 목적은 효율적인 방법으로 데이터를 저장하는 것이다.
     2. 트랜잭션 처리량과 응답시간, 디스크 용량 등을 고려해야 한다.
     3. 저장 레코드의 형식, 순서, 접근 경로와 같은 정보를 사용하여 설계한다.
     4. 트랜잭션의 인터페이스를 설계하며, 데이터 타입 및 데이터 타입들 간의 관계로 표현한다.

     정답 : []
     정답률 : 69%
     <문제 해설>
물리적데이터베이스 설계는 논리적 설계에 기반하여 설계한다.
1. 물리적 설계의 목적은 효율적인 방법으로 데이터를 저장 하는 것이다 ==> 당연히 효율적으로 하기 위함
2. 트랜잭션 처리량과 응답시간, 디스크 용량 등을 고려 ==> 물리적인 요소를 고려
3. 저장 레코드의 형식, 순서, 접근 경로와 같은 정보를 사용 ==> 물리적 요소
4. 트랜잭션의 인터페이스를 설계 ==> 이것은 논리적 설계에서 인터페이스를 사용자의 입장에서 편리하도록 설계 하는 것임
[해설작성자 : cbttest]

45. DDL(Data Define Language)의 명령어 중 스키마, 도메인, 인덱스 등을 정의할 때 사용하는 SQL문은?(2021년 05월)
     1. ALTER
     2. SELECT
     3. CREATE
     4. INSERT

     정답 : []
     정답률 : 76%
     <문제 해설>
DDL - 데이터 정의어
CREATE, ALTER, DROP, TRUNCATE

CREATE : 스키마, 도메인, 테이블, 뷰, 인덱스 정의
ALTER : 테이블에 대한 정의 변경
[해설작성자 : 하나둘사나]

46. 테이블 R1, R2에 대하여 다음 SQL문의결과는?(2021년 05월)

    

     1.
     2.
     3.
     4.

     정답 : []
     정답률 : 62%
     <문제 해설>
INTERSECT 교집합
[해설작성자 : 쀼쮸]

select 학번 from R1 : R1 테이블의 학번 열 검색
select 학번 from R2 : R2 테이블의 학번 열 검색
intersect : 위에 두개를 교집합
[해설작성자 : 곤듀]

47. 뷰(VIEW)에 대한 설명으로 옳지 않은 것은?(2021년 03월)
     1. DBA는 보안 측면에서 뷰를 활용할 수 있다.
     2. 뷰 위에 또 다른 뷰를 정의할 수 있다.
     3. 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 따르지 않는다.
     4. 독립적인 인덱스를 가질 수 없다.

     정답 : []
     정답률 : 81%
     <문제 해설>
뷰의 단점으로 삽입, 삭제, 갱신 연산에 제약이 따름
[해설작성자 : ㅋ]

48. 학적 테이블에서 전화번호가 Null값이 아닌 학생명을 모두 검색할 때, SQL 구문으로 옳은 것은?(2021년 08월)
     1. SELECT 학생명 FROM 07 WHERE 전화번호 DON'T NULL;
     2. SELECT 학생명 FROM WHERE 전화번호 != NOT NULL;
     3. SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL;
     4. SELECT 학생명 FROM WHERE 전화번호 IS NULL;

     정답 : []
     정답률 : 89%
     <문제 해설>
Null은 IS NOT과 사용
[해설작성자 : 안녕]

1. DON'T는 없음
2. != NULL은 가능
4. IS NULL: NULL인 값 검색
[해설작성자 : comcbt.com 이용자]

49. DBA가 사용자 PARK에게 테이블 [STUDENT]의 데이터를 갱신할 수 있는 시스템 권한을 부여하고자 하는 SQL문을 작성하고자 한다. 다음에 주어진 SQL문의 빈칸을 알맞게 채운 것은?(2020년 09월)

    

     1. ㉠ INSERT, ㉡ INTO
     2. ㉠ ALTER, ㉡ TO
     3. ㉠ UPDATE, ㉡ ON
     4. ㉠ REPLACE, ㉡ IN

     정답 : []
     정답률 : 70%
     <문제 해설>
문제에서 특정 컬럼을 지정하지 않았기 때문에 update컬럼 지정(update (컬럼1, 컬럼2, 컬럼3)은 생략 가능하다.
- grant update(컬럼1, 컬럼2, 컬럼3) on 테이블명 to 사용자명;
[해설작성자 : 정보처리지기]

50. 데이터베이스에서 인덱스(Index)와 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 인덱스의 기본 목적은 검색 성능을 최적화하는 것으로 볼 수 있다.
     2. B-트리 인덱스는 분기를 목적으로 하는 Branch Block을 가지고 있다.
     3. BETWEEN 등 범위(Range) 검색에 활용될 수 있다.
     4. 시스템이 자동으로 생성하여 사용자가 변경할 수 없다.

     정답 : []
     정답률 : 82%
     <문제 해설>
1. 인덱스는 데이터를 빠르게 찾을 수 있는 수단으로, 테이블에 대한 조회 속도를 높여주는 자료 구조.
2. 인덱스는 자동으로 생성되지 않는다.
3. 인덱스의 종류 중 순서인덱스(Ordered Index)는 B-Tree알고리즘(오름차순 / 내림차순 지정 가능)을 활용한다.
[해설작성자 : 아쿠르트]

*기본키에 대한 인덱스는 자동생성됩니다!
사용자가 데이터정의어를 사용해서 변경, 생성, 제거할 수 있습니다
[해설작성자 : 집에가고싶다]

51. 조건을 만족하는 릴레이션의 수평적 부분집합으로 구성하며, 연산자의 기호는 그리스 문자 시그마(σ)를 사용하는 관계대수 연산은?(2021년 03월)
     1. Select
     2. Project
     3. Join
     4. Division

     정답 : []
     정답률 : 72%
     <문제 해설>
SELECT σ시그마
PROJECT π파이
JOIN ▷◁ 나비넥타이
DIVISION ÷나누기
[해설작성자 : 전자공학도]

52. SQL에서 스키마(schema), 도메인(domain), 테이블(table), 뷰(view), 인덱스(index)를 정의하거나 변경 또는 삭제할 때 사용하는 언어는?(2021년 03월)
     1. DML(Data Manipulation Language)
     2. DDL(Data Definition Language)
     3. DCL(Data Control Language)
     4. IDL(Interactive Data Language)

     정답 : []
     정답률 : 77%
     <문제 해설>
DML(데이터 조작어) - SELECT/INSERT/DELETE/UPDATE
DDL(데이터 정의어) - CREATE/ALTER/DROP
DCL(데이터 제어어) - GRANT/REVOKE/COMMIT/ROLLBACK/SAVEPOINT

'정의'는 DDL
[해설작성자 : 또르링]

53. 데이터의 중복으로 인하여 관계연산을 처리할 때 예기치 못한 곤란한 현상이 발생하는 것을 무엇이라 하는가?(2021년 08월)
     1. 이상(Anomaly)
     2. 제한 (Restriction)
     3. 종속성(Dependency)
     4. 변환(Translation)

     정답 : []
     정답률 : 86%
     <문제 해설>
이상의 종류에는
1. 삽입 이상
2. 갱신 이상
3. 삭제 이상 이 있다.
[해설작성자 : 싹싹이]

이상 현상(Anomaly);
데이터 정규화가 되지 않은 테이블에서 연산을 수행(삽입, 삭제, 수정)할 시 데이터에 생기는 논리적 오류들.

1. 삽입 이상은 자료 삽입 시 아직 정해지지 않은 부분에 대한 NULL값 등을 삽입해야 하는 경우를 뜻함.
2. 갱신 이상은 데이터 수정 시 중복된 다른 쪽의 데이터가 수정되지 않아 생긴 모순된 데이터 등을 지칭함.
3. 삭제 이상은 한 정보를 삭제했을 때 의도치 않게 해당 행의 다른 데이터까지 삭제되는 현상을 뜻함.

2, 3, 4번 선택지는 현상발생과 관련없는 용어입니당
문제에선 '데이터의 중복'을 언급했으므로 갱신 이상 현상이 발생했을 가능성을 고려할 수 있슴니다.
(변형문제 주의!!!)
[해설작성자 : 정처기 일주일남은 승민]

54. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?(2020년 08월)
     1. 즉각 갱신 기법
     2. 대수적 코딩 방법
     3. 타임 스탬프 기법
     4. 폴딩 기법

     정답 : []
     정답률 : 48%
     <문제 해설>
회복(Recovery)이란
트랜잭션 도중에 손상된 데이터베이스를 이전 상태로 복귀하는 작업
트랙잭션의 연산을 수행할 때 데이터베이스를 변경하기 전에 로그 데이터를 생성합니다.
취소(Undo) 연산으로 이미 데이터베이스에 쓰여진 것도 수정할 수 있습니다.

장애의 유형
트랜잭션 장애, 시스템 장애, 미디어 장애

즉각 갱신 기법(Immediate Update)
트랜잭션의 연산을 수행하여 데이터를 갱신할 때 실제 데이터 베이스에 반영하는 기법
갱신한 모든 내용을 로그(Log)에 보관합니다.
회복 작업을 위해 취소(Undo)와 재시도(Redo) 모두 사용할 수 있습니다.

연기 갱신 기법(Deffered Updatae)
트랜잭션을 완료할 때까지 데이터베이스에 갱신을 연기하는 기법
트랜잭션 수행으로 갱신할 내용은 로그(Log)에 보관합니다.
트랜잭션이 부분 완료 시점에 Log의 기록을 실제 데이터 베이스에 반영합니다.
트랜잭션 수행 중에 장애가 발생하여 Rollback하여도 취소(Undo)할 필요가 없습니다.
재시도(Redo) 작업을 통해 최근의 정상적인 데이터베이스로 회복한 후에 트랜잭션을 재실행할 수 있습니다.

검사점 기법(Check Point)
트랜잭션 중간에 검사점을 로그에 보관하여 트랜잭션 전체를 취소하지 않고 검사점까지 취소할 수 있는 기법

그림자 페이지 대체 기법(Shadow Paging)-로그가 필요없음
트랜잭션의 연산으로 갱신할 필요가 있을 때 복사본인 그림자 페이지를 보관하는 기법
트랜잭션을 취소할 때 그림자 페이지를 이용하여 회복.
로그(Log), 취소(Undo), 재시도(Redo)할 필요가 없습니다.
[해설작성자 : dang]

55. DML(Data Manipulation Language) 명령어가 아닌 것은?(2020년 08월)
     1. INSERT
     2. UPDATE
     3. ALTER
     4. DELETE

     정답 : []
     정답률 : 82%
     <문제 해설>
DML(데이터 조작어) : SELECT / INSERT / DELETE / UPDATE *
DDL(데이터 정의어) : CREATE / ALTER / DROP
DCL(데이터 제어어) : COMMIT / ROLLBACK / GRANT / REVOKE
[해설작성자 : !]

(D)ML = S(select)I(insert)U(update)D(delete)        -> S.I.U.D(시옷)
엠엘은 데이터 조작 언어 이므로 시옷(<-언어)
[해설작성자 : 111]

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

    

     1. 제1정규형
     2. 제2정규형
     3. 제3정규형
     4. 제4정규형

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

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

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

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

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

[오류신고 반론]
제2 정규화 ( 2NF )
완전 함수적 종속을 만족한다 --> 부분 함수적 종속을 모두 제거
[해설작성자 : ㅎㅇ]

57. SQL의 논리 연산자가 아닌 것은?(2021년 08월)
     1. AND
     2. OTHER
     3. OR
     4. NOT

     정답 : []
     정답률 : 89%
     <문제 해설>
SQL 논리 연산자(복합조건)에는 AND, OR, NOT이 있다.
[해설작성자 : 22년 1회차 필기준비생]

58. 무결성 제약조건 중 개체 무결성 제약조건에 대한 설명으로 옳은 것은?(2022년 04월)
     1. 릴레이션 내의 튜플들이 각 속성의 도메인에 정해진 값만을 가져야 한다.
     2. 기본키는 NULL 값을 가져서는 안되며 릴레이션 내에 오직 하나의 값만 존재해야 한다.
     3. 자식 릴레이션의 외래키는 부모 릴레이션의 기본키와 도메인이 동일해야 한다.
     4. 자식 릴레이션의 값이 변경될 때 부모 릴레이션의 제약을 받는다.

     정답 : []
     정답률 : 64%
     <문제 해설>
기본키(Primary Key)
- 테이블의 각 레코드를 고유하게 식별하는 필드나 필드의 집합이다.
- 테이블에 기본키 설정은 필수가 아니다.
- 기본키를 설정하지 않고도 다른 테이블과의 관계를 설정할 수 있다.
- 기본키는 혼합속성(다수 필드)에 설정할 수 있다.
[해설작성자 : 두목넷]

1.개체 무결성 : 각 릴레이션의 기본키를 구성하는 속성은 널(NULL) 값이나 중복된 값을 가질 수 없습니다.
2,참조무결성 : 외래키 값은 NULL이거나 참조하는 릴레이션의 기본키 값과 동일해야 합니다.
3.도메인 무결성 : 속성들의 값은 정의된 도메인에 속한 값이어야 합니다.
4.고유 무결성 : 특정 속성에 대해 고유한 값을 가지도록 조건이 주어진 경우, 릴레이션의 각 튜플이 가지는 속성 값들은 서로 달라야 합니다.
5.NULL 무결성 : 릴레이션의 특정 속성 값은 NULL 될 수 없습니다.
6.키 무결성 : 각 릴레이션은 최소한 한 개 이상의 키가 존재해야 합니다.
[해설작성자 : comcbt.com 이용자]

59. 테이블 두 개를 조인하여 뷰 V_1을 정의하고, V_1을 이용하여 뷰 V_2를 정의하였다. 다음 명령 수행 후 결과로 옳은 것은?(2022년 03월)

    

     1. V_1만 삭제된다.
     2. V_2만 삭제된다.
     3. V_1과 V_2 모두 삭제된다.
     4. V_1과 V_2 모두 삭제되지 않는다.

     정답 : []
     정답률 : 83%
     <문제 해설>
CASCADE
- 데이터베이스 내의 임의의 다른 테이블과 PRIMARY KEY 또는 FOREIGN KEY로서의 관계가 여전히 존재하는 경우 PRIMARY KEY가 존재하는 테이블을 마음대로 제거 및 비활성화 할 수 없다.
- 즉, 부모 테이블과 자식테이블 간에 참조 설정이 되어 있을때 부모 테이블의 제약 조건을 비활성화 시키면서 이를 참조하고 있는 자식 테이블의 제약 조건까지 함께 비활성화시키기 위해 사용한다.
- 또한 부모 테이블만 삭제하고 싶을 경우, 원래는 자식테이블을 먼저 삭제하고 부모를 삭제 한 뒤 자식테이블을 다시 만들어야하는 번거로움이 따른다.
- 하지만 CASCADE를 쓰면 일시적으로 참조관계를 끊을수 있다.
[해설작성자 : 강썬]

CASCADE : 연쇄적으로 삭제하라는 뜻. 참조하는(자식) 개체까지 모두 삭제된다.
RESTRICTED : 참조 중일 때는 에러를 띄우고 삭제 작업 중지.
[해설작성자 : 정처기주주]

60. E-R 다이어그램의 표기법으로 옳지 않은 것은?(2021년 03월)
     1. 개체타입 - 사각형
     2. 속성 - 타원
     3. 관계집합 - 삼각형
     4. 개체타입과 속성을 연결 – 선

     정답 : []
     정답률 : 86%
     <문제 해설>
관계타입 - 마름모
[해설작성자 : 또르링]

삼각형은 E-R 다이어그램에 없음
[해설작성자 : 지나가요]

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


61. IP 주소체계와 관련한 설명으로 틀린 것은?(2022년 03월)
     1. IPv6의 패킷 헤더는 32 octet의 고정된 길이를 가진다.
     2. IPv6는 주소 자동설정(Auto Configuration) 기능을 통해 손쉽게 이용자의 단말을 네트워크에 접속시킬 수 있다.
     3. IPv4는 호스트 주소를 자동으로 설정하며 유니캐스트(Unicast)를 지원한다.
     4. IPv4는 클래스별로 네트워크와 호스트 주소의 길이가 다르다.

     정답 : []
     정답률 : 64%
     <문제 해설>
IPv4와 IPv6의 차이는 정보처리기사 뿐만이 아니라 대부분의 IT관련 시험에서 다루고 있음
주로 다루는 차이점과 핵심 단어는 아래와 같음
1) IPv4
ㄱ. 32비트 주소
ㄴ. 유니캐스트/멀티캐스트/브로드캐스트 사용
2) IPv6
ㄱ. 128비트 주소
ㄴ. 기존 IPv4의 주소 부족 문제를 해결하기 개발
ㄷ. 인증성/기밀성/무결성 지원 (=보안성 강화)
ㄹ. 유니캐스트, 애니캐스트, 멀티캐스트 사용
[해설작성자 : 단기합격은 유튜브 윤파고]

IPv6 헤더의 경우는 40 octet의 고정된 길이를 가진다.
[해설작성자 : BJY]

1번 보면 "패킷 헤더"라고 했기 때문에 오답이다.
IPv4는 헤더가 가변적이고, 주소크기는 32bit
IPv6는 헤더가 40byte(320bit)로 고정되어 있고, 주소크기는 128bit
[해설작성자 : 그냥대 융티]

62. 다음 내용이 설명하는 소프트웨어 취약점은?(2020년 08월)

    

     1. FTP 바운스 공격
     2. SQL 삽입
     3. 버퍼 오버플로
     4. 디렉토리 접근 공격

     정답 : []
     정답률 : 78%
     <문제 해설>
(1) FTP 프로토콜 구조의 허점을 이용한 공격
(2) SQL의 논리적 에러를 이용한 공격
(4) 웹 루트 디렉토리 외부에 저장된 파일 또는 디렉토리에 접근하는 공격방법

(1)은 네트워크 공격방법, (2),(4)는 웹관련 공격방법 (3)은 어플리케이션 공격방법
[해설작성자 : ㅋㅋ루삥뽕]

63. OSI 7계층 중 데이터링크 계층에 해당되는 프로토콜이 아닌 것은?(2022년 03월)
     1. HTTP
     2. HDLC
     3. PPP
     4. LLC

     정답 : []
     정답률 : 69%
     <문제 해설>
1계층 - 물리계층(Physical Layer) : Coax, Fiber, Wireless
2계층 - 데이터 링크계층(DataLink Layer) : Ethernet, SLIP, PPP, FDDI, HDLC
3계층 - 네트워크 계층(Network Layer) : IP, IPSec, ICMP, IGMP
4계층 - 전송 계층(Transport Layer) : TCP, UDP, ECN, SCTP, DCCP
5계층 - 세션 계층(Session Layer) : VARIOUS API;S, SOCKETS
6계층 - 표현 계층(Presentation Layer) : SSL, FTP, IMAP, SSH
7계층 - 응용 계층(Application Layer) : HTTP, FTP, IRC, SSH, DNS
[해설작성자 : khyun99]

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

    

     1. 0
     2. 2
     3. 4
     4. 6

     정답 : []
     정답률 : 75%
     <문제 해설>
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로 전달된것이라 할 수 있음.
[해설작성자 : 밈]

65. 은행가 알고리즘(Banker's Algorithm)은 교착상태의 해결 방법 중 어떤 기법에 해당하는가?(2020년 06월)
     1. Avoidance
     2. Detection
     3. Prevention
     4. Recovery

     정답 : []
     정답률 : 69%
     <문제 해설>
은행가 알고리즘은 교착상태의 해결 방법중 회피 기법이다.
[해설작성자 : voidmyhead]

Prevention(예방) : 교착 상태의 원인이 되는 조건 중 하나를 제거
- 상호배제
- 점유와대기
- 비선점
- 환형대기
Avoidance(회피) : 은행가 알고리즘
Detection(탐지) : 자원 할당 그래프
Recovery(복구) : 자원 선점/프로세스 종료

*기출문제에 예방의 교착상태 원인이 아닌 것과 회피, 복구가 나왔었음

66. 교착상태가 발생할 수 있는 조건이 아닌 것은?(2021년 03월)
     1. Mutual exclusion
     2. Hold and wait
     3. Non-preemption
     4. Linear wait

     정답 : []
     정답률 : 60%
     <문제 해설>
1. 상호 배제(mutual exclusion)
2. 점유와 대기(hold and wait)
3. 비선점(Non-preemption)
------
4번 Linear wait(선형 대기)가 아니라 Circular wait(환형 대기)
[해설작성자 : .]

67. 다음 자바 코드를 실행한 결과는?(2020년 09월)

    

     1. x=7 y=0
     2. x=6 y=-1
     3. x=7 y=-1
     4. Unresolved compilation problem 오류 발생

     정답 : []
     정답률 : 64%
     <문제 해설>
자바에서 while 문은 조건 식의 결과 값이 Boolean 이어야 한다. y--는 int이므로 오류가 발생한다.
[해설작성자 : 오씨]

여기서 Boolean은 True / False를 뜻함
[해설작성자 : comcbt.com 이용자]

68. 다음 파이썬으로 구현된 프로그램의 실행 결과로 옳은 것은?(2020년 09월)

    

     1. [20, 60]
     2. [60, 20]
     3. [0, 20, 40, 60]
     4. [10, 30, 50, 70]

     정답 : []
     정답률 : 73%
     <문제 해설>
a[시작점 : 끝점 : 넘어가는 수] 이렇게 생각하시면 됩니다.
a[:7:2]이면, a[0]~a[6]까지의 값 [0,10,20,30,40,50,60]이고,
이를 2칸씩 넘어가라 했으니 a[0]부터 시작해서 [0,20,40,60]이 나오게 됩니다.
[해설작성자 : MSJ]

69. 192.168.1.0/24 네트워크를 FLSM 방식을 이용하여 4개의 Subnet으로 나누고 IP Subnet-zero를 적용했다. 이 때 Subnetting 된 네트워크 중 4번째 네트워크의 4번째 사용가능한 IP는 무엇인가?(2021년 08월)
     1. 192.168.1.192
     2. 192.168.1.195
     3. 192.168.1.196
     4. 192.168.1.198

     정답 : []
     정답률 : 55%
     <문제 해설>
CIDR 표기법으로 ipv4 32비트중 앞 24비트가 네트워크ip, 뒤 8비트가 호스트ip가 됩니다.
여기서 4개의 서브넷으로 나누려면 호스트ip의 앞쪽 비트를 가능한 적게 4개까지 나누어줘야 하는데요
2진수에서 4개로 나누려면 2비트를 사용해야 하므로
192.168.1.(00)000000 (0)
192.168.1.(01)000000 (64)
192.168.1.(10)000000 (128)
192.168.1.(11)000000 (192)
로 나눌 수 있습니다.
여기서 IP subnet-zero를 적용했다는것은
호스트ip가 전부 0인 192.168.1.0 도 사용하겠단것을 의미 합니다.
즉 4번째 네트워크는 192.168.1.192가 되겠죠?
단 각 서브넷에서 호스트ip가 전부 0인 주소와 전부 1인 주소는 다른 용도로 이미 예약이 되어있습니다.(0은 네트워크 자체의 주소, 1은 브로드캐스팅 주소)
즉 여기서 4번째 사용가능한 ip는
193,194,195,196←이게 되는거죠
[해설작성자 : 밀우]

70. TCP/IP 네트워크에서 IP 주소를 MAC 주소로 변환하는 프로토콜은?(2020년 06월)
     1. UDP
     2. ARP
     3. TCP
     4. ICMP

     정답 : []
     정답률 : 70%
     <문제 해설>
IP주소를 MAC주소로 변환하는 프로토콜 ARP
ARP <-> RARP(MAC주소를 IP주소로)
+ MAC 주소 = 물리적 주소
[해설작성자 : 거상 주작섭]

UDP : 비연결형 서비스 제공 / 실시간 전송 네트워크에서 사용
ARP : IP 주소를 MAC Address로 변환 (논리 주소 → 물리 주소)
TCP : 양방향 연결형 서비스 제공 / 가상 회선 연결 형태의 서비스 제공 / 스트림 위주 패킷 전달
ICMP : IP와 조합하여 통신 중에 발생하는 오류처리와 전송 경로 변경 등을 위한 제어 메시지를 관리
IGMP : 멀티캐스트를 지원하는 호스트나 라우터 사이에서 멀티캐스트 그룹 유지를 위해 사용

71. 프로세스 상태의 종류가 아닌 것은?(2020년 06월)
     1. Ready
     2. Running
     3. Request
     4. Exit

     정답 : []
     정답률 : 65%
     <문제 해설>
프로세스의 상태 종류
- 보류 (pending)
- 준비 (ready)
- 실행 (running)
- 대기 (blocked)
- 교착 (deadlock)
- 완료 (terminated)
[해설작성자 : 정처기 3회차 붙고싶다]

프로세스 상태종류
- 제출(Submit), 접수(Hold), 준비(Ready), 실행(Run), 대기(Wait), 보류, 블록(Block), 종료(Terminated, Exit)
[해설작성자 : 달자아빠]

72. TCP 흐름제어기법 중 프레임이 손실되었을 때, 손실된 프레임 1개를 전송하고 수신자의 응답을 기다리는 방식으로 한 번에 프레임 1개만 전송할 수 있는 기법은?(2020년 09월)
     1. Slow Start
     2. Sliding Window
     3. Stop and Wait
     4. Congestion Avoidance

     정답 : []
     정답률 : 85%
     <문제 해설>
Stop and Wait(정지 및 대기) 기법에 대한 설명이다.

① Slow start: 패킷이 문제없이 도착하면 혼잡 윈도우 크기를 패킷마다 1씩 증가시켜 한 주기가 지나면 혼잡 윈도우 크기가 2배로 되지만, 혼잡 현상 발생시 혼잡 윈도우 크기를 1로 줄여버리는 방식이다.

② Slding WIndow: 한 번에 여러 패킷(프레임)을 전송할 수 있어 전송 효율이 좋은 기법

- 수신 측으로부터 이전에 송신한 패킷에 대한 긍정 수신 응답(ACK)이 전달된 경우 윈도우 크기는 증가하고, 수신측으로부터 이전에 송신한 패킷에 대한 부정 수신 응답(NAK)이 전달된 경우 윈도우 크기는 감소한다.

④ Congestion Avoidance(혼잡 방지, Congestion Control): 네트워크 내에서 패킷의 지연이 너무 높아지게 되어 트래픽이 붕괴되지 않도록 패킷의 흐름을 제어하는 트래픽 제어(종류: AMID, Slow Start)
[해설작성자 : 복붙맨]

73. 다음 C언어 프로그램이 실행되었을 때의 결과는?(2021년 05월)

    

     1. 55
     2. 77
     3. 121
     4. 132

     정답 : []
     정답률 : 59%
     <문제 해설>
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이다.
[해설작성자 : 개발자.]

74. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는?(2022년 04월)

    

     1. 0
     2. 1
     3. 2
     4. 3

     정답 : []
     정답률 : 59%
     <문제 해설>
r1 - or 연산 한쪽만 참이여도 1 반환 n2<=2(참) -> 1
r2 - =! 부정연산자 3 부정 0 반환 -> 0
r3 - and 연산 둘다 참이여야 1반환 (n1>1) (거짓) -> 0
0 - 0 + 1 = 1
[해설작성자 : 수도공고갤러리 갤주]

!n3 -> 논리 부정 연산자 피연산자가 0이면 1을, 나머지 0을 반환
[해설작성자 : 치이카와]

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

    

     1. string[1:3] + string[-3:]
     2. string[:3] + string[-3:-1]
     3. string[0:3] + string[-3:]
     4. string[0:] + string[:-1]

     정답 : []
     정답률 : 74%
     <문제 해설>
파이썬 슬라이스
[:] 처음부터 끝까지
[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"
[해설작성자 : 141]

76. 파이썬의 변수 작성 규칙 설명으로 옳지 않은 것은?(2020년 08월)
     1. 첫 자리에 숫자를 사용할 수 없다.
     2. 영문 대문자/소문자, 숫자, 밑줄(_)의 사용이 가능하다.
     3. 변수 이름의 중간에 공백을 사용할 수 있다.
     4. 이미 사용되고 있는 예약어는 사용할 수 없다.

     정답 : []
     정답률 : 85%
     <문제 해설>
밑줄(_)사용은 가능하지만, 공백은 사용할 수 없습니다.
추가로 첫 자리에는 영문과 밑줄(_)만 사용 가능합니다.
[해설작성자 : 이번엔꼭붙는다]

77. 다음 Python 프로그램이 실행되었을 때, 실행 결과는?(2022년 03월)

    

     1.
     2.
     3.
     4.

     정답 : []
     정답률 : 84%
     <문제 해설>
list_data에 a가 아니라 'a'이기 때문에 문자 그대로 a로 출력되고
dict_data는 90으로 출력됨
[해설작성자 : 영남이공대 소프트웨어콘텐츠과]

list_data {a, b, c}
             p[] 0    1    2
dict_data    a=90
                     b=95

print(list_datap[0]) // list_data의 p[0]주소의 값을 출력
print(dict_data['a'] // dict_data의 키값 'a'의 값 90을 출력
** dict_data는 '키값'을 가지고 해당 키의 '값'을 출력한다.

따라서 실행 결과는 a 다음 90
[해설작성자 : 절대포기하지말자]

78. C언어에서 배열 b[5]의 값은?(2020년 06월)

    

     1. 0
     2. 1
     3. 2
     4. 3

     정답 : []
     정답률 : 71%
     <문제 해설>
배열 수가 9개이고 3개의 값만 초기화 되어 있다.
순서대로 b[0]=1, b[1]=2, b[2]=3 이고 b[4],b[5]...b[8]=0 이다.
[해설작성자 : ㄱㅁㅅ]

흠 ㄱㅁㅅ님 말씀에 보태자면 static이라서 0으로 초기화되는 것입니다.
만약 local에서 static이 아니라면 랜덤값일 겁니다
[해설작성자 : 열이]

[관리자 입니다.
열이님 해설이 약깐 논란이 될듯 하여 추가 설명해 두겠습니다.

랜덤이라는 표현보다는 가비지(쓰레기) 값이 들어 있다는 표현이 더 정확합니다.
배열이 할당받은 메모리에 들어 있는 초기치는
기본적으로 이전에 사용한 프로그램이나 변수들이 사용할때 들어갔던 값들을
그대로 사용하게 됩니다.
즉, static 이 아니라면 메모리가 초기화 되지 않습니다.
참고하세요.]

현직자 입니다. 해설 보충 설명 합니다.

결과적으로는 0으로 초기화 되는것이 맞지만, 문제의 의도를 알 수 없는 나쁜 문제라고 생각됩니다.

1. C언어에서 배열 선언시 배열 크기보다 작은 초기화리스트를 사용하게되면, 배열의 나머지 부분을 0으로 초기화 하게 됩니다.
즉, int b[9] = { 1, 2, 3 }; 에서 배열의 크기는 9이나, 초기호 리스트는 3이므로 나머지 6은 0으로 채워집니다.

2. static 변수 사용시초기화했냐 안했냐에 따라 프로세스 메모리 위치는 달라지지만 결과적으로는 0으로 초기화 되게됩니다.
[해설작성자 : 고양이는먀몸미]

79. C언어에서의 변수 선언으로 틀린 것은?(2021년 08월)
     1. int else;
     2. int Test2;
     3. int pc;
     4. int True;

     정답 : []
     정답률 : 74%
     <문제 해설>
else는 예약어로 변수명으로 사용할 수 없음
[해설작성자 : ㄱㄱㅇ]

사용가능: 영문(대문자,소문자), 숫자, _ (under bar)
불가능: 첫자리 숫자 사용X, 예약어X
[해설작성자 : 막내아들]

80. OSI 7계층 중 네트워크 계층에 대한 설명으로 틀린 것은?(2021년 05월)
     1. 패킷을 발신지로부터 최종 목적지까지 전달하는 책임을 진다.
     2. 한 노드로부터 다른 노드로 프레임을 전송하는 책임을 진다.
     3. 패킷에 발신지와 목적지의 논리 주소를 추가한다.
     4. 라우터 또는 교환기는 패킷 전달을 위해 경로를 지정하거나 교환 기능을 제공한다.

     정답 : []
     정답률 : 53%
     <문제 해설>
한 노드에서 다른 노드로 프레임을 전송하는 책임을 갖는 층(Layer)은 데이터 링크 계층이다.
(정보통신기사 19년 03월 09일 기출)
[해설작성자 : 해군본부 정체단 674기 수뱅]

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

     정답 : []
     정답률 : 69%
     <문제 해설>
디지털 트윈(digital twin)은 미국 제너럴 일렉영(GE)이 주창한 개념으로, 컴퓨터에 현실 속 사물의 쌍둥이를 가상화하여 만들고, 현실에서 발생할 수 있는 상황을 컴퓨터로 시뮬레이션함으로써 결과를 미리 예측하는 기술입니다.
[해설작성자 : 반스트]

82. SSH(Secure Shell)에 대한 설명으로 틀린 것은?(2021년 05월)
     1. SSH의 기본 네트워크 포트는 220번을 사용한다
     2. 전송되는 데이터는 암호화 된다.
     3. 키를 통한 인증은 클라이언트의 공개키를 서버에 등록해야 한다.
     4. 서로 연결되어 있는 컴퓨터 간 원격 명령실행이나 셀 서비스 등을 수행한다.

     정답 : []
     정답률 : 71%
     <문제 해설>
SSH의 기본 네트워크 포트는 22번이다.
[해설작성자 : 해군본부 정체단 674기 수뱅]

기본 네트워크 포트 22번을 S와 2 의 비슷한 모양으로 기억하면 쉽다. SS가 두개니 포트는 22번
[해설작성자 : 청주시라소니]

83. 기기를 키오스크에 갖다 대면 원하는 데이터를 바로 가져올 수 있는 기술로 10㎝ 이내 근접 거리에서 기가급 속도로 데이터 전송이 가능한 초고속 근접무선통신(NFC : Near Field Communication) 기술은?(2022년 04월)
     1. BcN(Broadband Convergence Network)
     2. Zing
     3. Marine Navi
     4. C-V2X(Cellular Vehicle To Everything)

     정답 : []
     정답률 : 61%
     <문제 해설>
근거리로 가까이 가면 지이이이잉 하고 소리가 난다고 외우세요.
[해설작성자 : 연상암기황제]

1번 BcN은 음성·데이터·유무선 등 통신·방송·인터넷이 융합된 품질 보장형 광대역 멀티미디어 서비스를 공간에 제한없이 실시간으로 이용할 수 있는 차세대 네트워크 환경이다.
3번 Marine Navi는 소형 선박에 설치된 GPS 기반 선박자동 식별장치(AIS: Automatic Identification System)를 기본으로 주변 선박의 이동 속도와 위치를 파악한다.
4번 엘티이(LTE), 5G와 같은 셀룰러 이동통신망을 통해 차량이 다른 차량이나 교통 인프라, 보행자, 네트워크 등과 정보를 서로 주고받는 차량 통신 기술.
[해설작성자 : 곰팡이친구먼지]

84. 다음 내용이 설명하는 접근 제어 모델은?(2021년 05월)

    

     1. Clark-Wilson Integrity Model
     2. PDCA Model
     3. Bell-Lapadula Model
     4. Chinese Wall Model

     정답 : []
     정답률 : 61%
     <문제 해설>
BLP 기밀성 모델: 정보의 불법적인 파괴나 변조보다는 불법적인 비밀 유출 방지에 중점 - 기밀성 강조

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

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

85. 소프트웨어 개발 프레임워크와 관련한 설명으로 가장 적절하지 않은 것은?(2022년 04월)
     1. 반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장 받을 수 있게 하는 개발 소프트웨어이다.
     2. 라이브러리와는 달리 사용자 코드에서 프레임워크를 호출해서 사용하고, 그에 대한 제어도 사용자 코드가 가지는 방식이다.
     3. 설계 관점에 개발 방식을 패턴화시키기 위한 노력의 결과물인 소프트웨어 디자인 패턴을 반제품 소프트웨어 상태로 집적화시킨 것으로 볼 수 있다.
     4. 프레임워크의 동작 원리를 그 제어 흐름의 일반적인 프로그램 흐름과 반대로 동작한다고 해서 IoC(Inversion of Control)이라고 설명하기도 한다.

     정답 : []
     정답률 : 54%
     <문제 해설>
사용자 코드에서 호출해서 사용하고 그에 대한 제어를 할 수 있는 것은 라이브러리이다. 프레임워크는 이미 정해진 코드를 호출해 사용하고 자체적인 흐름을 가지고 있음.
[해설작성자 : 몰?루]

86. 라우팅 프로토콜인 OSPF(Open Shortest Path First)에 대한 설명으로 옳지 않은 것은?(2021년 05월)
     1. 네트워크 변화에 신속하게 대처할 수 있다.
     2. 거리 벡터 라우팅 프로토콜이라고 한다.
     3. 멀티캐스팅을 지원한다.
     4. 최단 경로 탐색에 Dijkstra 알고리즘을 사용한다.

     정답 : []
     정답률 : 47%
     <문제 해설>
거리 벡터 라우팅 프로토콜
- Bellman-Ford 알고리즘 사용
- RIP 프로토콜(최대 홉 수 15)
- 인접 라우터와 주기적으로 정보 교환

링크 상태 라우팅 프로토콜
- Dijkstra 알고리즘 사용
- OSPF 프로토콜(홉 수 제한 없음)
- 최단 경로, 최소 지연, 최대 처리량
[해설작성자 : LBS]

87. SoftTech사에서 개발된 것으로 구조적 요구 분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구는?(2020년 09월)
     1. SREM
     2. PSL/PSA
     3. HIPO
     4. SADT

     정답 : []
     정답률 : 52%
     <문제 해설>
1.SREM(Software Requirements Enginering Methdology):TRW사가 우주 국방 시스템 그룹에 의해 실시간 처리 소프트웨어 시스템에서 요구사항을 명확히 기술하도록 할 목적으로 개발한 것으로,RSL과 REVS를 사용하는 자동화 도구이다.(RSL/REVS)
2.PSL/PSA:미시간 대학에서 개발한 것으로 PSL과 PSA를 사용하는 자동화 도구입니다.
3.HIPO(Hieracgy Input Process Output):하향식 소프트웨어 개발을 위한 문서화 도구입니다.
4.SADT(Structure Analysis and Design Technique): SoftTech사에서 개발된 것으로 구조적 요구 분석을 위해 블록 다이어그램을 채택한 자동화 도구입니다.
답:4번
[해설작성자 : comcbt.com 이용자]

88. 정보보호를 위한 암호화에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 평문 – 암호화되기 전의 원본 메시지
     2. 암호문 – 암호화가 적용된 메시지
     3. 복호화 – 평문을 암호문으로 바꾸는 작업
     4. 키(Key) - 적절한 암호화를 위하여 사용하는 값

     정답 : []
     정답률 : 86%
     <문제 해설>
복호화 - 암호화의 반대! 즉 암호화된걸 원본의 메세지로 만드는것
[해설작성자 : 잉여인간]

89. 다음 설명에 해당하는 시스템은?(2022년 03월)

    

     1. Apache
     2. Hadoop
     3. Honeypot
     4. MapReduce

     정답 : []
     정답률 : 77%
     <문제 해설>
Hadoop(하둡): 오픈 소스를 기반으로한 분산 컴퓨팅 플랫폼, 대형 스토리지, 빅데이터 관련
MapReduce : 대용량 데이터를 분산처리하기 위한 목적으로 개발된 프로그래밍 모델
                        구글에 의해 고안
                        임의의 순서로 분산 처리후 다시 합침
[해설작성자 : 부실합니다 보충해 주세요]

Apache : 월드 와이드 웹 컨소시엄(W3C)에서 사용하고 아파치 소프트웨어 재단에서 관리 및 운영하는 서버용 오픈소스 소프트웨어
Hadoop : 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼
MapReduce : 대용량 데이터를 분산 처리하기 위한 목적으로 Google에 의해 고안된 프로그래밍 모델
[해설작성자 : 일요일 시험이당]

90. 다음 설명에 해당하는 공격기법은?(2022년 04월)

    

     1. Ping of Death
     2. Session Hijacking
     3. Piggyback Attack
     4. XSS

     정답 : []
     정답률 : 70%
     <문제 해설>
ICMP가 패킷을 많이 쏘니 핑 하고 죽어삣네. 핑 오브 데스
[해설작성자 : 연상암기황제]

2. Session Hijacking(세션 가로채기) : 컴퓨터 시스템의 정보나 서비스에 무단으로 접근하기 위해 유효한 컴퓨터 세션(세션 키라고도 함)을 이용하는 것 일반적인 예로 두 컴퓨터 간에 활성화된 상태(즉, 로그인된 상태)에서 공격자가 피공격자의 로그인 정보를 활용하여 자신에게 필요한 행위를 하는 것을 뜻한다.

3.Piggyback Attack(피그백 공격) : 공격자가 다른 사용자의 연결에서 계정을 사용하지 않는 비활성 기간(비활성 간격)을 이용하여 시스템에 액세스(접근)한다. 이는 간선(회선 간) 공격이라고도 불린다.
-> 쉽게 설명하자면, 시스템에 대한 합법적인 권한을 가진 사용자가 시스템에 접근할 때, 활성화된 기간(직접 로그인 인증을 받아야 하는 상황)에는 접근 권한이 없는 공격자가 비활성화된 기간(합법적 사용자가 시스템에 접근 인증을 받은 상황)에 마치 사용자와 관련있는 사람인 듯이 태그를 붙여 몰래 뒤따라 들어가는 것이라 할 수 있다.
[해설작성자 : 설명덕보기]

XSS (크로스 사이트 스크립팅) : 웹사이트에 악성 스크립트를 주입하는 행위. 공격자가 상대방의 브라우저에 스크립트가 실행되도록 해 사용자의 세션을 가로채거나, 웹사이트를 변조하거나, 악의적 콘텐츠를 삽입하거나, 피싱 공격을 진행하는 것.
[해설작성자 : 소곰]

91. DDoS 공격과 연관이 있는 공격 방법은?(2020년 08월)
     1. Secure shell
     2. Tribe Flood Network
     3. Nimda
     4. Deadlock

     정답 : []
     정답률 : 65%
     <문제 해설>
DDoS는 네트워크 취약점이 있는 호스트들을 탐색한 후 이를 호스트들에 분산 서비스 공격용 툴을 설치하여 에이전트(agent)로 만든 후 DDoS공격에 이용

여기서 분산 서비스 공격용 툴의 종류에
1.Trin00
2.TFN(Tribe Flooding Network)
3.TFN2K
4.Stacheldraht

가 있습니다.
[해설작성자 : 4회합격하자]

Secure shell:네트워크 상의 다른 컴퓨터에서 제어 가능한 프로그램 또는 해당 프로토콜
Tribe Flood Network:디도스 공격 중 하나
Nimda:바이러스 중 하나
Deadlock:교착상태
[해설작성자 : ㅇ]

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

    

     1. 10일
     2. 12일
     3. 14일
     4. 16일

     정답 : []
     정답률 : 74%
     <문제 해설>
CPM : 노드와 간선으로 이루어진 네트워크

임계 경로 : 작업의 시작 및 종료 구간이 동시에 이루어질 때 가장 오래 걸리는 경로를 임계 경로라고 한다.

문제에서의 경로
3일 - 5일 - 4일 = 12일
2일 - 2일 - 3일 - 3일 = 10일
2일 - 3일 - 5일 - 4일 = 14일 *
[해설작성자 : !]

93. Secure 코딩에서 입력 데이터의 보안 약점과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. SQL 삽입 : 사용자의 입력 값 등 외부 입력 값이 SQL 쿼리에 삽입되어 공격
     2. 크로스사이트 스크립트 : 검증되지 않은 외부 입력 값에 의해 브라우저에서 악의적인 코드가 실행
     3. 운영체제 명령어 삽입 : 운영체제 명령어 파라미터 입력 값이 적절한 사전검증을 거치지 않고 사용되어 공격자가 운영체제 명령어를 조작
     4. 자원 삽입 : 사용자가 내부 입력 값을 통해 시스템 내에 사용이 불가능한 자원을 지속적으로 입력함으로써 시스템에 과부하 발생

     정답 : []
     정답률 : 53%
     <문제 해설>
자원 삽입 : 자원을 조작 할 수 있는 문자열을 삽입하여 시스템이 보호하는 자원에 임의로 접근 할 수 있는 취약점
[해설작성자 : 정처기 공부]

94. IPSec(IP Security)에 대한 설명으로 틀린 것은?(2021년 05월)
     1. 암호화 수행시 일방향 암호화만 지원한다.
     2. ESP는 발신지 인증, 데이터 무결성, 기밀성 모두를 보장한다.
     3. 운영 모드는 Tunnel 모드와 Transport 모드로 분류된다.
     4. AH는 발신지 호스트를 인증하고, IP 패킷의 무결성을 보장한다.

     정답 : []
     정답률 : 74%
     <문제 해설>
일방향 암호화는 해시암호화
[해설작성자 : comcbt.com 이용자]

IPSec : IP계층(3계층)에서 무결성과 인증 보장하는 인증헤더와 기밀성 보장하는 암호화 이용해 양 종단 구간에 보안 서비스 제공하는 터널링 프로토콜
* IPSec의 세부프로토콜
- IKE(Internet Key Exchange) : 보안 관련 설정들을 생성, 협상 및 관리하는 프로토콜(udp500번 포트 사용)
- ESP(Encapsulating Security Payload) : 메세지 인증코드,암호화 이용해 "인증(무결성)","발신지인증","기밀성" 제공 프로토콜
- AH(Authentication Header) : 기밀성 제외한 메시지 인증코드 이용한 "인증(무결성)","발신지인증"제공 프로토콜
[해설작성자 : 빨리 집가야쥐...]

95. 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?(2021년 05월)
     1. Stack Guard
     2. Bridge
     3. ASLR
     4. FIN

     정답 : []
     정답률 : 82%
     <문제 해설>
ASLR(Address Space Layout Randomization): 프로그램을 실행할 때마다 스택, 힙, 공유 라이브러리 등을 메모리에 적재할 때 주소를 랜덤화시키는 기법으로써, 공격자로 하여금 메모리 상의 주소를 추측하기 어렵게 한다.
[해설작성자 : 컴린이]

Bridge: 구현부에서 추상층을 분리하여 각자 독립적으로 확장이 가능하게 하는 패턴
[해설작성자 : comcbt.com 이용자]

96. 리눅스에서 생성된 파일 권한이 644일 경우 umask 값은?(2022년 03월)
     1. 022
     2. 666
     3. 777
     4. 755

     정답 : []
     정답률 : 65%
     <문제 해설>
파일 생성 권한 666에서 644를 빼면 022
[해설작성자 : 정처기 공부]

umask는 UNIX에서 파일이나 디렉터리의 초기 권한을 설정할 때 사용하는 값으로 파일의 경우 666에서 umask를 뺀 값을, 디렉터리일 경우 777에서 umask를 뺀 값을 초기 접근 권한으로 갖습니다
[해설작성자 : ums]

97. 다음 내용이 설명하는 로그 파일은?(2022년 03월)

    

     1. tapping
     2. xtslog
     3. linuxer
     4. wtmp

     정답 : []
     정답률 : 59%
     <문제 해설>
wtmp
- 성공한 로그인/로그아웃 정보를 담고 있는 로그파일
- var/log/wtmp에 위치
- last 명령어 사용
1,2,3 전부 없는 명령어이다.
이밖에 참고로
utmp
- 현재 로그인 사용자 상태 정보를 담고 있는 로그파일
btmp
- 실패한 로그인 정보를 담고 있는 로그파일
last log
- 마지막으로 성공한 로그인 정보를 담고있는 로그파일
[해설작성자 : 윤정훈]

98. NS(Nassi-Schneiderman) chart에 대한 설명으로 거리가 먼 것은?(2020년 09월)
     1. 논리의 기술에 중점을 둔 도형식 표현 방법이다.
     2. 연속, 선택 및 다중 선택, 반복 등의 제어논리 구조로 표현한다.
     3. 주로 화살표를 사용하여 논리적인 제어구조로 흐름을 표현한다.
     4. 조건이 복합되어 있는 곳의 처리를 시각적으로 명확히 식별하는데 적합하다.

     정답 : []
     정답률 : 64%
     <문제 해설>
직사각형을 포개어가는 것으로 나타낸다.
[해설작성자 : 냐옹맨]

논리의 기술에 중점을 둔 도형을 이용한 표현 방법이다.
그리기가 어렵다.(전문성이 있어야 잘 그린다)
순차, 선택, 반복으로 표현한다.
임의의 제어 이동이 어렵다.
goto구조가 어렵다.
그래픽 설계 도구이다.
상자 도표라고도 한다
프로그램으로 구현이 쉽다.
조건이 복합되어 있는 곳의 처리를 명확히 식별하기에 적합하다.
if문이 여러개일 때 가능
[해설작성자 : comcbt.com 이용자]

99. S/W 각 기능의 원시 코드 라인수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정하는 기법은?(2021년 08월)
     1. Effort Per Task기법
     2. 전문가 감정 기법
     3. 델파이기법
     4. LOC기법

     정답 : []
     정답률 : 71%
     <문제 해설>
1. Effort Per Task 기법 - (LOC기법을 보완하기위함)각 기능을 구현시키는 데 필요한 노력을 생명 주기의 각 단계별로 산정
2. 전문가 감정 기법 - 두 명이상의 전문가에게 비용 산정을 의뢰하는 기법, 개인적이고 주관적
3. 델파이 기법 - (전문가감정 기법의 주관적인 편견 보완하기위함)한명의 조정자와 여러 전문가의 의견을 종합하여 산정하는 기법
4. LOC기법 - 원시코드라인수(source line of code)의 비관치, 낙관치, 기대치를 측정 예측치 구함, 본문문제내용동일.
cf. 2&3의 경우 - 하향식 비용 산정 기법이며 1&4의 경우 상향식 비용 산정 기법이다.
[해설작성자 : 순하리누나]

100. 시스템 내의 정보는 오직 인가된 사용자만 수정할 수 있는 보안 요소는?(2020년 06월)
     1. 기밀성
     2. 부인방지
     3. 가용성
     4. 무결성

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

[오류 신고 내용]
답이 1번인 듯합니다.
오직 인가된 사용자만이 수정할 수 있는 보안요소---------------------->기밀성
인가된 사용자가 언제든지 사용가능----------------------------------->가용성
전송 전 데이터와 전송 후 데이터가 동일함(수정,삭제,변조 등을 차단)-->무결성
[해설작성자 : 통신마왕(부경대 정보통신공학과 레전설)]

[오류신고 반론]
정답 4번 맞는 것 같아요 접근가능한게 기밀성이고 수정은 무결성이 맞습니다
[해설작성자 : ㅇㅇ]

[관리자 입니다.
가답안 및 확정답안 확인결과
가답안 4번, 확정답안 4번으로 중복답안 인정되지 않은것으로 확인 됩니다.
확정답안은 4번 이었습니다.]

[오류신고 반론]
잘못 알고 계십니다.
기밀성은 오직 인가된 사용자만이 내용을 확인 할 수 있는 것입니다. 기밀문서가 비공개문서지 수정문서라고 생각하는 사람은 없겠죠?
무결성은 그 기밀성 내에서 인가된 사용자만이 내용을 수정할 수 있는 것이구요.
가용성은 인가된 사용자가 언제든지 사용가능한 것입니다.
[해설작성자 : 거상 주작섭]

[오류신고 반론]
※최종결론
기밀성 - 열람
무결성 - 수정
가용성 - 사용
따라서 정답 4번. 무결성

[오류신고 반론]
기밀성: 오직 인가 된 사용자만 열람 할 수 있다.
가용성: 오직 인가 된 사용자만 사용 할 수 있다.
무결성: 오직 인가 된 사용자만 수정 할 수 있다.

따라서,수정할 수 있는 보안요소는 무결성
[해설작성자 : 찌니]

[오류신고 반론]
가용성은 조금 개념이 다릅니다.
기밀성은 접근하려고 시도하는 유저의 인가 유무를 확실하게 구분하여 데이터에 접근하게 해 주는 것에 초점이 있지만,
가용성은 인가된 사용자의 데이터 사용이 원활하도록 유지하는 것이 중요하다는 뜻입니다. 예를 들면 DDOS 어택을 받아 데이터 사용에 제한이 생기면, 가용성을 보장하지 못했다고 할 수 있겠죠.
[해설작성자 : ㅂㅇㅂㅇ]


정 답 지

정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 11월 27일)(8790430)

최강 자격증 기출문제 전자문제집 CBT : www.comcbt.com


전자문제집 CBT란?
종이 문제집이 아닌 인터넷으로 문제를 풀고 자동으로 채점하며 모의고사, 오답 노트, 해설까지 제공하는
무료 기출문제 학습 프로그램으로 실제 상설검정에서 사용하는 OMR 형식의 CBT를 제공합니다.

최신 정보처리기사 필기 기출문제 : [다운로드]


1과목 : 소프트웨어 설계


1. User Interface 설계 시 오류 메시지나 경고에 관한 지침으로 가장 거리가 먼 것은?(2022년 03월)
     1. 메시지는 이해하기 쉬워야 한다.
     2. 오류로부터 회복을 위한 구체적인 설명이 제공되어야 한다.
     3. 오류로 인해 발생 될 수 있는 부정적인 내용을 적극적으로 사용자들에게 알려야 한다.
     4. 소리나 색의 사용을 줄이고 텍스트로만 전달하도록 한다.

     정답 : []
     정답률 : 91%
     <문제 해설>
1) 직관성(Intuitiveness) : 누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 함.
2) 유효성(Effectiveness) : 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작해야 함.
3) 학습성(Learnablilty) : 초보와 숙련자 모두가 쉽게 배우고 사용할 수 있게 제작해야 함.
4) 유연성(Flexibility) : 사용자의 인터랙션을 최대한 포용하고, 실수를 방지할 수 있도록 제작해야 함.
[해설작성자 : 기묘]

특정 위험 또는 오류를 연상시키는 색깔의 사용은 상식적으로 직관성을 높이는 수단이 될 것이다.
[해설작성자 : 내일 시험]

UI 설계 시 오류 메시지나 경고에 관한 3가지 지침
1. 메시지는 이해하기 쉬워야 한다.
2. 오류로부터 회복을 위한 구체적인 설명이 제공되어야 한다.
3. 오류로 인해 발생될 수 있는 부정적인 내용을 적극적으로 사용자들에게 알려야 한다. (이걸로 인해서 너의 시스템이 뽀샤질 수도 있어!)
[해설작성자 : 공부뿌뿌]

2. UML 모델에서 한 사물의 명세가 바뀌면 다른사물에 영향을 주며, 일반적으로 한 클래스가 다른 클래스를 오퍼레이션의 매개변수로 사용하는 경우에 나타나는 관계는?(2021년 08월)
     1. Association
     2. Dependency
     3. Realization
     4. Generalization

     정답 : []
     정답률 : 70%
     <문제 해설>
1. 연관 관계(Association Relationship)
2. 의존 관계(Dependency Relationship)
3. 실체화 관계(Realization Relationship)
4. 일반화 관계(Generalization Relationship)
한 사물의 명세가 바뀌면 다른 사물에 영향을 주는 관계는 의존 관계(Dependency Relationship)이므로 2번이 정답입니다.
[해설작성자 : SG]

UML 모델에서 한 사물(클래스 또는 객체)의 명세가 변경되면 다른 사물에 영향을 줄 수 있습니다. 이러한 관계는 주로 의존 관계(dependency)로 나타납니다. 의존 관계는 한 클래스가 다른 클래스를 사용하거나, 메서드의 매개변수로 다른 클래스를 사용하는 경우에 나타납니다.
의존 관계는 한 클래스가 다른 클래스에 의존하여 해당 클래스의 기능을 사용하거나 데이터를 주고받을 때 발생합니다. 이러한 의존 관계는 변경의 전파를 의미하며, 한 클래스의 변경이 다른 클래스에 영향을 주는 경우가 많습니다.
Association은 두 클래스 간의 관계를 나타내는 데 사용되며, 두 클래스 간의 연결과 상호작용을 표현합니다. Realization은 인터페이스를 구현하는 클래스 간의 관계를 나타내며, Generalization은 상속 관계를 나타냅니다. 이와 달리 의존 관계는 클래스 간의 상호작용과 의존성을 나타내는 것에 초점을 맞춥니다. (chatgpt 선생님 = 옮긴이 양민꾼 올림)

3. 익스트림 프로그래밍 (XP)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 빠른 개발을 위해 테스트를 수행하지 않는다.
     2. 사용자의 요구사항은 언제든지 변할 수있다.
     3. 고객과 직접 대면하며 요구사항을 이야기하기 위해 사용자 스토리(User Story)를 활용할 수 있다.
     4. 기존의 방법론에 비해 실용성(Pragmatism)을 강조한 것이라고 볼 수있다.

     정답 : []
     정답률 : 93%
     <문제 해설>
프로그래밍에서 테스트가 없다는 것은 낙하산 없이 스카이 다이빙 하는 것과 같다.
[해설작성자 : 흐히흐히]

XP 개발 프로세스 과정에서 사용자 스토리는 고객의 요구사항을 간단하게 시나리오로 작성한 것을 말한다.
사용자 스토리에는 간단한 테스트 케이스(테스트 사항)을 포함한다. 따라서 XP기법이 빠른 소프트웨어 개발이 목적이긴 하지만 테스트를 수행하지 않는 것은 아님.
[해설작성자 : 카구야 ]

4. 애자일 기법에 대한 설명으로 맞지 않은 것은?(2020년 08월)
     1. 절차와 도구보다 개인과 소통을 중요하게 생각한다.
     2. 계획에 중점을 두어 변경 대응이 난해하다.
     3. 소프트웨어가 잘 실행되는데 가치를 둔다.
     4. 고객과의 피드백을 중요하게 생각한다.

     정답 : []
     정답률 : 94%
     <문제 해설>
애자일(Agile) 개발 4가지 핵심 가치

1. 프로세스와 도구보다는 개인과의 상호작용에 더 가치를 둠
2. 방대한 문서보다는 실행되는 SW에 더 가치를 둠
3. 계약 협상보다는 고객과의 협업에 더 가치를 둠
4. 계획을 따르기 보다는 변화에 반응하는 것에 더 가치를 둠
[해설작성자 : ㅇㅎㅅ]

5. 객체지향 설계에서 정보 은닉(Information Hiding)과 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 필요하지 않은 정보는 접근할 수 없도록 하여 한 모듈 또는 하부시스템이 다른 모듈의 구현에 영향을 받지 않게 설계되는것을 의미한다.
     2. 모듈들 사이의 독립성을 유지시키는 데 도움이 된다.
     3. 설계에서 은닉되어야 할 기본 정보로는 IP주소와 같은 물리적 코드, 상세 데이터 구조 등이 있다.
     4. 모듈 내부의 자료 구조와 접근 동작들에만 수정을 국한하기 때문에 요구사항 등 변화에 따른 수정이 불가능하다.

     정답 : []
     정답률 : 87%
     <문제 해설>
정보은닉(information hiding)
다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통해 접근을 허용하는 것
클래스 외부에서 특정 정보에 접근을 막는다는 의미
(사용자가 굳이 알 필요가 없는 정보는 사용자로부터 숨겨야 한다는 개념 ex.ip, port)

장점
1. 기능의 교체나 변경에 대한 유연성을 제공(객체 간의 구체적인 결합도를 약화)
2. 동일한 타입의 다른 구현 객체들을 교체로 동적 기능 변경 가능
3. 구체적인 구현이 없는 상태(인터페이스)로도 정확한 연동 코드의 생성 가능
4. 모듈화하여 코드의 가독성증가
5. 개발기간 단축
[해설작성자 : 한비로]

정답 4 이유: 정보은닉은 모듈이 독립성을 갖게 해줌으로 요구사항 등 변화에 따른 수정이 가능하다.
[해설작성자 : 정약용]

6. 파이프 필터 형태의 소프트웨어 아키텍처에 대한 설명으로 옳은 것은?(2020년 09월)
     1. 노드와 간선으로 구성된다.
     2. 서브시스템이 입력데이터를 받아 처리하고 결과를 다음 서브시스템으로 넘겨주는 과정을 반복한다.
     3. 계층 모델이라고도 한다.
     4. 3개의 서브시스템(모델, 뷰, 제어)으로 구성되어 있다.

     정답 : []
     정답률 : 78%
     <문제 해설>
아키텍처(architecture)란 영어 뜻으로는 구조, 건축물, 건축학 등의 뜻
소프트웨어 아키텍처:소프트웨어 구조
1. 레이어 패턴 (Layers Pattern): 시스템을 계층으로 구분하여 구성,ex)OSI 참조 모델
2. 클라이언트-서버 패턴 (Client-Server Pattern):하나의 서버 컴포넌트와 다수의 클라이언트 컴포넌트로 구성되는 패턴
3. 파이프-필터 패턴 (Pipe-Filter Pattern):데이터 스트림 절차의 각 단계를 필터 컴포넌트로 캡슐화하여 파이프를 통해 데이터를 전송하는 패턴 ex)UNIX의 쉘
4. 모델-뷰-컨트롤러 패턴 (Model-View-Controller Pattern):서브시스템을 3개의 부분으로 구조화하는 패턴
-------------------
5. 마스터-슬레이브 패턴        6. 브로커 패턴     7. 피어-투-피어 패턴     8. 이벤트-버스 패턴    9. 블랙보드 패턴    10. 인터프리터 패턴
=======================
[해설작성자 : 저질체력]

7. 요구 분석(Requirement Analysis)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 요구 분석은 소프트웨어 개발의 실제적인 첫 단계로 사용자의 요구에 대해 이해하는 단계라 할 수 있다.
     2. 요구 추출(Requirement Elicitation)은 프로젝트 계획 단계에 정의한 문제의 범위 안에 있는 사용자의 요구를 찾는 단계이다.
     3. 도메인 분석(Domain Analysis)은 요구에 대한 정보를 수집하고 배경을 분석하여 이를 토대로 모델링을 하게 된다.
     4. 기능적(Functional) 요구에서 시스템 구축에 대한 성능, 보안, 품질, 안정 등에 대한 요구사항을 도출한다.

     정답 : []
     정답률 : 62%
     <문제 해설>
기능적 요구사항
- 시스템이 수행해야 하는 행위들을 구체화 한 것
- 시스템에서 제공해야 할 기능을 정의한 것
- 입력기능, 출력기능, 데이터베이스 기능, 통신 기능 등

비기능적 요구사항
- 시스템이 가져야 하는 기능 이외의 요구사항
- 시스템의 전체적인 품질이나 고려해야 하는 제약사항 등
- 사용 용이성, 효율성, 신뢰성, 이식성, 유연성, 확장성 등
- 성능적인 면: 응답 속도, 자원 사용량 등
- 보안 측면: 침입 대응, 침입 탐지, 사용자 인증, 권한 부여 등
[해설작성자 : ㄱㄱㅇ]

8. 자료 사전에서 자료의 생략을 의미하는 기호는?(2020년 06월)
     1. { }
     2. **
     3. =
     4. ( )

     정답 : []
     정답률 : 74%
     <문제 해설>
정의 =
구성,연결 +
반복 { }
주석 **
선택 [ㅣ]
생략 ( )
[해설작성자 : 합격하세요구르트]

9. DFD(data flow diagram)에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 자료 흐름 그래프 또는 버블(bubble) 차트라고도 한다.
     2. 구조적 분석 기법에 이용된다.
     3. 시간 흐름을 명확하게 표현할 수 있다.
     4. DFD의 요소는 화살표, 원, 사각형, 직선(단선/이중선)으로 표시한다.

     정답 : []
     정답률 : 67%
     <문제 해설>
DFD는 시간 흐름을 명확하게 표현할 수 없다
자료에 대한 흐름을 표현하며 구조적 분석기법에 이용된다.
요소는 화살표, 원 , 직선으로 표시한다.
[해설작성자 : comcbt.com 이용자]

10. 애자일(Agile) 기법 중 스크럼(Scrum)과 관련된 용어에 대한 설명이 틀린 것은?(2022년 03월)
     1. 스크럼 마스터(Scrum Master)는 스크럼 프로세스를 따르고, 팀이 스크럼을 효과적으로 활용할 수 있도록 보장하는 역할 등을 맡는다.
     2. 제품 백로그(Product Backlog)는 스크럼 팀이 해결해야 하는 목록으로 소프트웨어 요구사항, 아키텍처 정의 등이 포함될 수 있다.
     3. 스프린트(Sprint)는 하나의 완성된 최종 결과물을 만들기 위한 주기로 3달 이상의 장기간으로 결정된다.
     4. 속도(Velocity)는 한 번의 스프린트에서 한 팀이 어느 정도의 제품 백로그를 감당할 수 있는지에 대한 추정치로 볼 수 있다.

     정답 : []
     정답률 : 88%
     <문제 해설>
스프린트
- 실제 개발을 2~4주간 진행하는 과정
- 스프린트 백로그에 작성된 Task를 대상으로 작업 시간을 측정한 후 담당 개발 자에게 할당합니다.
- Task는 할 일, 진행 중, 완료의 상태로 구성된다.
[해설작성자 : MSKIM]

11. CASE(Computer Aided Software Engineering)에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 소프트웨어 모듈의 재사용성이 향상된다.
     2. 자동화된 기법을 통해 소프트웨어 품질이 향상된다.
     3. 소프트웨어 사용자들에게 사용 방법을 신속히 숙지시키기 위해 사용된다.
     4. 소프트웨어 유지보수를 간편하게 수행할 수 있다.

     정답 : []
     정답률 : 86%
     <문제 해설>
CASE(Computer Aided Software Engineering)도구 활용 - 일관성 분석을 통해 요구사항 변경사항의 추적 및 분석, 관리, 표준 준수여부를 확인
[해설작성자 : u]

12. 사용자 인터페이스(User Interface)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 사용자와 시스템이 정보를 주고받는 상호작용이 잘 이루어지도록 하는 장치나 소프트웨어를 의미한다.
     2. 편리한 유지보수를 위해 개발자 중심으로 설계되어야 한다.
     3. 배우기가 용이하고 쉽게 사용할 수 있도록 만들어져야 한다.
     4. 사용자 요구사항이 UI에 반영될 수 있도록 구성해야 한다.

     정답 : []
     정답률 : 95%
     <문제 해설>
사용자 인터페이스는 개발자 중심이 아닌 사용자가 바라보는 관점으로 쉽게 알아볼 수 있도록 설계되어야 한다.
[해설작성자 : A매치 합격]

13. 기본 유스케이스 수행 시 특별한 조건을 만족할 때 수행하는 유스케이스는?(2021년 03월)
     1. 연관
     2. 확장
     3. 선택
     4. 특화

     정답 : []
     정답률 : 65%
     <문제 해설>
Usecase 구성요소와의 관계
- 연관 : use case 와 actor의 관계
- 확장 : 기본 use case 수행 시 특별한 조건을 만족할 때 수행할 usecase
- 포함 : 시스템의 기능이 별도의 기능을 포함
- 일반화 : 하위 use case/action이 상위 use case/actor에게 기능/역할을 상속받음
- 그룹화 : 여러개의 usecase를 단순화하는 방법
[해설작성자 : 합격합격]

14. 다음 중 요구사항 모델링에 활용되지 않는 것은?(2021년 03월)
     1. 애자일(Agile) 방법
     2. 유스케이스 다이어그램(Use Case Diagram)
     3. 시퀀스 다이어그램(Sequence Diagram)
     4. 단계 다이어그램(Phase Diagram)

     정답 : []
     정답률 : 66%
     <문제 해설>
단계 다이어그램: 물리 화학 등에서 사용하는 다이어그램, 요구사항 모델링과 관계 없음
[해설작성자 : ㅇ]

15. 아키텍처 설계과정이 올바른 순서로 나열된 것은?(2022년 03월)

    

     1. ㉮ → ㉯ → ㉰ → ㉱ → ㉲
     2. ㉲ → ㉮ → ㉯ → ㉱ → ㉰
     3. ㉮ → ㉲ → ㉯ → ㉱ → ㉰
     4. ㉮ → ㉯ → ㉰ → ㉲ → ㉱

     정답 : []
     정답률 : 71%
     <문제 해설>
소프트웨어 아키텍처의 설계과정
설계목표설정 -시스템 타입 결정 - 아키텍처 패턴 적용 - 서브시스템 구체화 - 검토
[해설작성자 : 꿍디팡팡]

조금더 디테일하게 정리 할 필요가 있겠네요..
1. 설계 목표 설정
2. 시스템 타입 결정
3. 아키텍처 패턴 적용(위 설명에서는 스타일 적용 및 커스터마이즈)
*아키텍처 패턴 : 아키텍처 설계 시 발생하는 문제들을 해결하기 위해 미리 만들어 놓은 해결 방식
4. 서브시스템 구체화(서브시스템의 기능, 인터페이스 동작 작성)
5. 검토(아키텍쳐 설계 검토)

16. 소프트웨어 개발 단계에서 요구 분석 과정에 대한 설명으로 거리가 먼 것은?(2020년 09월)
     1. 분석 결과의 문서화를 통해 향후 유지보수에 유용하게 활용 할 수 있다.
     2. 개발 비용이 가장 많이 소요되는 단계이다.
     3. 자료흐름도, 자료 사전 등이 효과적으로 이용될 수 있다.
     4. 보다 구체적인 명세를 위해 소단위 명세서(Mini-Spec)가 활용될 수 있다.

     정답 : []
     정답률 : 88%
     <문제 해설>
개발비용이 가장 많이 소요되는 단계는 유지보수 단계이다.
[해설작성자 : 꿀떠]

17. 요구사항 관리 도구의 필요성으로 틀린 것은?(2021년 05월)
     1. 요구사항 변경으로 인한 비용 편익 분석
     2. 기존 시스템과 신규 시스템의 성능 비교
     3. 요구사항 변경의 추적
     4. 요구사항 변경에 따른 영향 평가

     정답 : []
     정답률 : 61%
     <문제 해설>
2번은 개발, 설계 등 구현단계 때
[해설작성자 : 퓨퓨]

18. 자료흐름도(Data Flow Diagram)의 구성요소로 옳은 것은?(2020년 08월)
     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%
     <문제 해설>
자료 흐름도 구성 요소
- 프로세스 (Process)
- 자료 흐름(Data Flow)
- 자료 저장소(Data Store)
- 단말(Terminator)
[해설작성자 : ㅇㅎㅅ]

19. 입력되는 데이터를 컴퓨터의 프로세서가 처리하기 전에 미리 처리하여 프로세서가 처리하는 시간을 줄여주는 프로그램이나 하드웨어를 말하는 것은?(2022년 03월)
     1. EAI
     2. FEP
     3. GPL
     4. Duplexing

     정답 : []
     정답률 : 54%
     <문제 해설>
EAI(Enterprise Application Integration): 기업 응용 프로그램 통합으로 기업용 응용 프로그램의 구조적 통합 방안을 가리킴
FEP(Front-End Processor): 입력되는 데이터를 컴퓨터의 프로세서가 처리하기 전에 미리 처리하여 프로세서가 차지하는 시간을 줄여주는 프로그램이나 하드웨어
GPL(General Public License): 자유 소프트웨어 재단(OSF)에서 만든 자유 소프트웨어 라이선스
Duplexing: 이중화(데이터베이스의 회복 기법 중 가장 간단한 것)
[해설작성자 : 빡대가리]

이중통신(duplex) 또는 쌍방향 통신은 두 지점 사이에서 정보를 주고 받는 전자 통신 시스템을 말한다. 이중 통신을 할 때 전송 방향마다 두 개의 통신 선호를 사용하면 단순하지만 전송로를 아끼기 위해 여러 종류의 전송 방식이 쓰인다.
[해설작성자 : 짱돌]

20. 소프트웨어 아키텍처와 관련한 설명으로 틀린것은?(2021년 08월)
     1. 파이프 필터 아키텍처에서 데이터는 파이프를 통해 양방향으로 흐르며, 필터 이동 시 오버헤드가 발생하지 않는다.
     2. 외부에서 인식할 수 있는 특성이 담긴 소프트웨어의 골격이 되는 기본 구조로 볼수 있다.
     3. 데이터 중심 아키텍처는 공유 데이터저장소를 통해 접근자 간의 통신이 이루어지므로 각 접근자의 수정과 확장이 용이하다.
     4. 이해 관계자들의 품질 요구사항을 반영하여 품질 속성을 결정한다.

     정답 : []
     정답률 : 79%
     <문제 해설>
파이프 필터 아키텍처에서 데이터는 파이프를 통해 단방향으로 흐르고, 필터 이동시 오버헤드가 발생될 수 있음.
(파이프 모양의 컵에 물을 계속 따르면 물이 넘쳐 흐르는것 처럼...)
[해설작성자 : 야쿠르트]

파이프- 필터 패턴은 데이터 통로인 파이프를 이용해 컴포넌트인 필터간에 데이터를 전송하는 구조로, 단방향, 양방향 모두 구현할 수 있으며, 필터간 이동 시 오버헤드가 발생합니다.
[해설작성자 : 이영흠]

파이프라인의 파이프는 ‘단방향’ 채널이며, 양방향 통신이 필요할 때는 별도의 반대 방향 파이프나 제어 채널을 추가로 두는 방식으로 확장합니다.
[해설작성자 : 킴진성]

2과목 : 소프트웨어 개발


21. 정렬된 N개의 데이터를 처리하는데 O(Nlog2N)의 시간이 소요되는 정렬 알고리즘은?(2020년 06월)
     1. 선택정렬
     2. 삽입정렬
     3. 버블정렬
     4. 합병정렬

     정답 : []
     정답률 : 69%
     <문제 해설>
선택정렬 : O(n^2)
삽입정렬 : O(n^2)
버블정렬 : O(n^2)
합병정렬 : O(Nlog2N)
[해설작성자 : 윤지야보고싶다]

O(1) : 상수형 복잡도 (해시 함수)
O(logN) : 로그형 복잡도 (이진 탐색)
O(N) : 선형 복잡도 (순차 탐색)
O(Nlog2N) : 선형 로그형 복잡도 (퀵 정렬, 병합정렬)
O(N^2) : 제곱형 (거품 정렬, 삽입 정렬, 선택 정렬)
[해설작성자 : 벙어리장갑]

이미 정렬된 경우 시간복잡도
선택정렬 : O(n^2)
삽입정렬 : O(n)
버블정렬 : O(n)
합병정렬 : O(nlog2n)
[해설작성자 : comcbt.com 이용자]

22. 다음 자료에 대하여 “Selection Sort”를 사용하여 오름차순으로 정렬한 경우 PASS 3의 결과는?(2021년 03월)

    

     1. 3, 4, 7, 9, 8
     2. 3, 4, 8, 9, 7
     3. 3, 8, 4, 9, 7
     4. 3, 4, 7, 8, 9

     정답 : []
     정답률 : 54%
     <문제 해설>
초기상태 : 8, 3, 4, 9, 7

선택정렬은 정렬되지 않은 값중 가장 작은 값을 선택 후 정렬되지 않은 첫 번째 요소와 바꾸는 방법이다.
- 정렬된 값은 ''로 표시

1 PASS : '3', 8, 4, 9, 7
2 PASS : '3, 4', 8, 9, 7
3 PASS : '3, 4, 7', 9, 8
4 PASS : '3, 4, 7, 8', 9
[해설작성자 : 민쵸리]

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

[오류 신고 내용]
2 PASS에서 3 PASS로 넘어갈 때 왜 8,9 순서에서 9,8로 바뀌죠?
3 PASS : '3, 4, 7', 8, 9 아닌가요?
[해설작성자 : 이스꼬꼬]

[오류신고 반론]
[오류 신고 내용에 대하여]
정렬되지 않은 부분하고 위치 자체를 '교체' 해야하기 때문에 답은 1번입니다.
초기상태 : 8, 3, 4, 9, 7
1 PASS : '3', 8, 4, 9, 7 (정렬되지 않은 값 중 제일 작은 값은 3이므로 3 선택 후 정렬되지 않은 첫번째요소인 8과 위치 바꿈)
2 PASS : '3, 4', 8, 9, 7 (3은 정렬되었으므로 제외한다고 생각, 정렬되지 않은 값 중 제일 작은 값은 4이므로 정렬되지 않은 첫번째 값인 8과 위치 바꿈)
3 PASS : '3, 4, 7', 9, 8 (3,4는 정렬되었으므로 제외한다고 생각. 정렬되지 않은 값 중 제일 작은 값은 7이므로 정렬되지 않은 첫번째 값인 8과 위치 바꿈)

선택정렬은 삽입정렬하고는 다른 개념이기 때문에 위치 자체를 바꾼다고 생각하시면 됩니다. 따라서 7하고 8이 위치를 서로 바꾼다고 생각하시면 됩니다.

그러므로 위 오류는 무효라고 생각하시면 됩니다
[해설작성자 : 지나가던 비전공자]

[오류신고 반론]
Selection Sort 진행

PASS 1
1번째 위치에 올 최소값 찾기 → 3
3과 8 교환 → 3, 8, 4, 9, 7

PASS 2
2번째 위치에 올 최소값 찾기 (8, 4, 9, 7 중 최소값 → 4)
4와 8 교환 → 3, 4, 8, 9, 7

PASS 3
3번째 위치에 올 최소값 찾기 (8, 9, 7 중 최소값 → 7)
7과 8 교환 → 3, 4, 7, 9, 8

반론이 맞다
[해설작성자 : 합격주세요]

23. 다음 그래프에서 정점 A를 선택하여 깊이우선탐색(DFS)으로 운행한 결과는?(2021년 08월)

    

     1. ABECDFG
     2. ABECFDG
     3. ABCDEFG
     4. ABEFGCD

     정답 : []
     정답률 : 76%
     <문제 해설>
깊이 우선 탐색(Depth First Search)는 이름 그대로 최대한 깊이 탐색한 이후 더이상 탐색할 것이 없다면 그 이전으로 돌아가 탐색을 이어가는 것입니다. 탐색을 하고 있는 분기에서 완벽하게 탐색을 한 이후 다른 분기를 탐색하는 방법입니다.
고로 A-B-E-F-G까지 탐색한 이후 더이상 탐색할 것이 없기 때문에 이전으로 돌아가 C-D를 마저 탐색해줍니다.
[해설작성자 : 오니]

깊이 우선 검색은 노드의 깊이를 우선으로 검색하고 나중에 형제 노드를 검색합니다. 문제를 보면 처음에 A - B - E가 되구요....E의 위치에서 더이상 내려갈곳이 없기 때문에 F로 이동을 합니다. F에서 다시 밑으로 G로 갑니다. 깊이 검색이 끝났기 때문에 형제 노드인 A에서 시작하여 C로 가고 더이상 갈곳이 없기에 다시 A에서 시작 하여 D로 갑니다. 결과적으로, A B E F G C D 의 순서가 됩니다.
[해설작성자 : cbttest]

사실 이 문제는 사전순으로 탐색한다는 전제조건이 없기에 가능한 문제입니다. 사전순 탐색이라는 조건이 붙을 경우 탐색 순서는 A-B-C-D-F-E-G가 됩니다. 두 번째 해설은 틀렸습니다. 문제에서 주어진 그림은 그래프이고 형제노드같은 개념은 트리에서 나오는 개념이죠. 따라서 보기 1, 2번은 A-B-E까지는 DFS로 가능하지만 이후 F가 아닌 C가 나오기 때문에 답이 아니고, 보기 3번은 A-B-C-D까지 DFS로 진행이 가능하지만 이후 F가 아닌 E가 나오기 때문에 답이 아닙니다. 첫 번째 해설 작성자 분이 설명한 대로 A-B-E-F-G까지 탐색을 하고, F로 돌아가서 C-D를 탐색하는 4번 보기만 가능하기 때문에 4번이 정답이 됩니다.
[해설작성자 : comcbt.com 이용자]

노드 A,B,C,D...는 노드를 구분하기 위한 것입니다. 그래서 사전순인지 따질 필요가 없습니다.
선지를 보면 4번을 제외하고는 간선이 없는 노드로 이동하기 때문에 틀렸습니다.
따라서 4번이 정답입니다.
[해설작성자 : [정확하게 쓰자]]

24. 다음 전위식(prefix)을 후위식(postfix)으로 옳게 표현한 것은?(2021년 03월)

    

     1. A B C + D / * E -
     2. A B * C D / + E -
     3. A B * C + D / E -
     4. A B C + * D / E -

     정답 : []
     정답률 : 64%
     <문제 해설>
전위 표기법(prefix)-연산자가 앞에
중위 표기법(infix)-연산자가 안에
후위 표기법(postfix)-연산자가 뒤에

1.연산자에 따라 묶는다
(-(/(*A(+BC))D)E)

2.연산자를 각 괄호 뒤로 뺀다(후위식)
(((A(BC)+)*D)/E)-

3.괄호를 제거한다.
ABC+*D/E-
[해설작성자 : 또르링]

전위식 -> 중위식 -> 후위식

1. -/*A+BCDE        전위식
2. -/*A(B+C)DE
     -/(A*(B+C))DE
     -((A*(B+C))/D)E
        ((A*(B+C))/D)-E 중위식
3. (A*BC+/D)-E
     (ABC+*/D)-E
     (ABC+*D/)-E
        ABC+*D/E-    후위식
    
[해설작성자 : 루니]

25. 인터페이스 보안을 위해 네트워크 영역에 적용될 수 있는 것으로 거리가 먼 것은?(2020년 09월)
     1. IPSec
     2. SSL
     3. SMTP
     4. S-HTTP

     정답 : []
     정답률 : 79%
     <문제 해설>
인터페이스 보안 기능은 일반적으로 네트워크, 애플리케이션, 데이터베이스 영역에 적용한다.

네트워크 영역 - 인터페이스 송/수신 간 스니핑 등을 이용한 데이터 탈취 및 변조 위협을 방지하기 위해
네트워크 트래픽에 대한 암호화를 설정한다.
암호화는 인터페이스 아키텍처에 따라 IPSec, SSL, S-HTTP 등의 다양한 방식으로 적용한다.
[해설작성자 : ehejrrhdwn]

SMTP(Simple Mail Transfer Protocol): 메일 전송에 사용되는 프로토콜이다.
[해설작성자 : 참째]

IPSec : IP계층에서 무결성과 인증을 보장하는 인증헤더와 암호화를 이용해 보안서비스 제공
SSL : 상호 인증 및 전송 시 데이터 무결성을 보장
S-HTTP : 웹상에서 클라이언트와 서버간의 메세지를 암호화 하여 전송
[해설작성자 : 퀭]

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

    

     1. 3
     2. 4
     3. 5
     4. 6

     정답 : []
     정답률 : 66%
     <문제 해설>
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
[해설작성자 : asdf]

27. 다음 초기 자료에 대하여 삽입 정렬(Insertion Sort)을 이용하여 오름차순 정렬할 경우 1회전 후의 결과는?(2020년 09월)

    

     1. 3, 4, 8, 7, 9
     2. 3, 4, 9, 7, 8
     3. 7, 8, 3, 4, 9
     4. 3, 8, 4, 9, 7

     정답 : []
     정답률 : 77%
     <문제 해설>
삽입정렬(Insertion Sort)은 최소값을 찾지 않고 자리에 따라 비교하고 오름차순 적용하여 바꾸는 걸로 알고 있습니다.
[2번째 원소부터 시작하여 그 앞(왼쪽)의 원소들과 비교하여 삽입할 위치를 지정한 후, 원소를 뒤로 옮기고 지정된 자리에 자료를 삽입]
            
초기자료 8 3 4 9 7

1회전 3 8 4 9 7 (두번째 자리 3과 첫번째 자리 8을 비교 했을 때 3이 작으니 바꿔줍니다.)

2회전 3 4 8 9 7 (3 8 | 4 9 7 세번째 자리인 4를 앞에 바꿨던 3과 8을 비교 하였을 때
                                 3보다는 크고 8보다는 작으니 3과 8사이에 삽입 합니다.)

3회전 3 4 8 9 7 (3 4 8 | 9 7 네번째 자리인 9를 앞에 바꾼 3 4 8과 비교 하였을 때
                                 9 자신이 제일 크기 때문에 이동이 없습니다)

4회전 3 4 7 8 9 (3 4 8 9 | 7 다섯번째 자리인 7을 앞에 3 4 8 9와 비교 하였을 때
                                 3 4 보다는 크고 8 9보다는 작으니 3 4 와 8 9 사이에 삽입합니다.)
[해설작성자 : 정처기 필기 합격하자]

28. 위험 모니터링의 의미로 옳은 것은?(2022년 04월)
     1. 위험을 이해하는 것
     2. 첫 번째 조치로 위험을 피할 수 있도록 하는 것
     3. 위험 발생 후 즉시 조치하는 것
     4. 위험 요소 징후들에 대하여 계속적으로 인지하는 것

     정답 : []
     정답률 : 75%
     <문제 해설>
위험 모니터링(monitoring)의 의미
-> 위험 요소 징후들에 대하여 계속적으로 인지하는 것
[해설작성자 : 내일정치기합격기원]

29. 동시에 소스를 수정하는 것을 방지하며 다른 방향으로 진행된 개발 결과를 합치거나 변경 내용을 추적할 수 있는 소프트웨어 버전 관리 도구는?(2022년 04월)
     1. RCS(Revision Control System)
     2. RTS(Reliable Transfer Service)
     3. RPC(Remote Procedure Call)
     4. RVS(Relative Version System)

     정답 : []
     정답률 : 54%
     <문제 해설>
RCS(Revision Control System)
- CVS와의 차이점은 소스 파일의 수정을 한 사람만으로 제한한다.
- 다수의 사용자가 동시에 파일 수정을 할 수 없도록 파일 잠금 방식으로 버전을 관리하는 도구이다.
- 다른 방향으로 진행된 개발 결과를 합치거나 변경 내용을 추적할 수 있다.
[해설작성자 : 두목넷]

RPC(Remote Procedure call)
- 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 리모트의 함수나 프로시저를 실행 할 수 있게 해주는 프로세스간 통신
[해설작성자 : comcbt.com 이용자]

RTS : 데이터 통신에서 신뢰성이 보장된 전송 서비스를 제공하는 프로토콜
RPC : 네트워크상에서 원격지의 다른 프로세스나 컴퓨터에서 실행중인 함수나 프로시저를 호출하는 프로토콜
RVS : 파일의 상대적인 버전을 관리하는 도구로 각 파일 버전의 차이를 저장해 파일 복원과 변경 이력을 추적
[해설작성자 : 정처기 공부중]

30. 화이트박스 테스트와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 화이트박스 테스트의 이해를 위해 논리흐름도(Logic-Flow Diagram)를 이용할 수 있다.
     2. 테스트 데이터를 이용해 실제 프로그램을 실행함으로써 오류를 찾는 동적 테스트(Dynamic Test)에 해당한다.
     3. 프로그램의 구조를 고려하지 않기 때문에 테스트 케이스는 프로그램 또는 모듈의 요구나 명세를 기초로 결정한다.
     4. 테스트 데이터를 선택하기 위하여 검증기준(Test Coverage)을 정한다.

     정답 : []
     정답률 : 68%
     <문제 해설>
3. 프로그램 구조를 고려하지 않는 것은 == 블랙박스 테스트
[해설작성자 : comcbt.com 이용자]

화이트박스 테스트는 정적 분석뿐만 아니라 동적 분석에도 사용될 수 있습니다. 정적 분석에서는 코드를 실행하지 않고 검토하여 문제점을 찾지만, 동적 분석에서는 실제로 코드를 실행시켜 테스트를 진행합니다. 화이트박스 테스트의 경우, 프로그램의 내부 구조를 알고 있는 상태에서 테스트를 진행하기 때문에, 로직 흐름도를 이용하여 로직 검증을 할 수 있고, 동적 테스트를 통해 실제 실행 중인 프로그램의 동작을 검증할 수도 있습니다.

제시된 문제에서 언급된 "프로그램의 구조를 고려하지 않고 때때로 테스트 케이스는 프로그램 코드 또는 모듈의 우연한 면을 기준으로 결정한다"는 주장은 화이트박스 테스트에 부합하지 않습니다. 화이트박스 테스트는 프로그램의 내부 구조에 기반하여 체계적으로 테스트 케이스를 설계하기 때문에 우연한 면을 기준으로 테스트 케이스를 설계하지 않습니다.
[해설작성자 : comcbt 사용자]

31. 다음 설명에 해당하는 것은?(2020년 09월)

    

     1. 외부 스키마
     2. 내부 스키마
     3. 개념 스키마
     4. 슈퍼 스키마

     정답 : []
     정답률 : 71%
     <문제 해설>
외부 스키마 : 개인 또는 응용 개발자 입장에서 보는 데이터베이스
개념 스키마 : 모든 응용 프로그램 또는 사용자들이 필요로 하는 조직 전체 데이터베이스로 단 하나만 존재한다.
[해설작성자 : 수험생]

외부스키마 : 사용자 뷰, 사용자나 개발자 관점
개념스키마 : 전체적인 논리적 구조
내부스키마 : 물리적 저장장치
[해설작성자 : 또비]

32. 다음 트리에 대한 INORDER 운행 결과는?(2020년 09월)

    

     1. D B A E C F
     2. A B D C E F
     3. D B E C F A
     4. A B C D E F

     정답 : []
     정답률 : 72%
     <문제 해설>
중위(Inorder) : D - B - A - E - C - F
전위(Preorder) : A - B - D - C - E - F
후위(Postorder) : D - B - E - F - C - A
[해설작성자 : 수험생]

33. 제품 소프트웨어 패키징 도구 활용 시 고려사항이 아닌 것은?(2020년 08월)
     1. 제품 소프트웨어의 종류에 적합한 암호화 알고리즘을 고려한다.
     2. 추가로 다양한 이기종 연동을 고려한다.
     3. 사용자 편의성을 위한 복잡성 및 비효율성 문제를 고려한다.
     4. 내부 콘텐츠에 대한 보안은 고려하지 않는다.

     정답 : []
     정답률 : 92%
     <문제 해설>
제품 소프트웨어의 패키징 활용 시 고려사항
- 패키징 시 사용자에게 배포 되는 소프트웨어 임을 감안하여 반드시 내부 콘텐츠에 대한 암호화 및 보안을 고려한다.
- 패키징 도구를 활용하여 여러 가지 이기종 콘텐츠 및 단말기 간 DRM 연동을 고려한다.
- 패키징 도구를 고려하면 사용자의 입장에서 불편해질 수 있는 문제를 고려하여 최대한 효율적으로 적용될 수 있도록 한다.
-암호화 알고리즘이 여러 가지 종류가 있는데 제품 소프트웨어의 종류에 맞는 알고리즘을 선택하여 배포시 범용성에 지장이 없도록 고려한다.
[해설작성자 : 호이집사]

34. 소프트웨어 개발 활동을 수행함에 있어서 시스템이 고장(Failure)을 일으키게 하며, 오류(Error)가 있는 경우 발생하는 것은?(2021년 08월)
     1. Fault
     2. Testcase
     3. Mistake
     4. Inspection

     정답 : []
     정답률 : 77%
     <문제 해설>
결함(fault)이란 오류 및 작동 실패의 원인으로서 소프트웨어 개발자의 설계와 다르게 동작하거나 제작 의도와 다른 결과가 발생하는 것을 말합니다. 실수/실책(mistake)이란 사람이 저지른 잘못된 판단이나 결심을 주로 가리킨다고 합니다.
[해설작성자 : 월담]

35. 빌드 자동화 도구에 대한 설명으로 틀린 것은?(2020년 09월)
     1. Gradle은 실행할 처리 명령들을 모아 태스크로 만든 후 태스크 단위로 실행한다.
     2. 빌드 자동화 도구는 지속적인 통합개발환경 에 서 유용하게 활용된다.
     3. 빌드 자동화 도구에는 Ant, Gradle, Jenkins등이 있다.
     4. Jenkins는 Groovy 기반으로 한 오픈소스로 안드로이드 앱 개발 환경에서 사용된다.

     정답 : []
     정답률 : 65%
     <문제 해설>
빌드 자동화 도구
- 빌드를 포함하여 테스트 및 배포를 자동화하는 도구
- Ant, Make, Maven, Gradle, Jenkins 등이 있음

Jenkins
- JAVA 기반의 오픈소스 형태
- 서블릿 컨테이너에서 실행되는 서버 기반 도구
- 친숙한 Web GUI 제공
- 분산 빌드나 테스트 가능

Gradle
- Groovy를 기반으로 한 오픈 소스 형태
- 안드로이드 앱 개발 환경에서 사용
- 행할 처리 명령들을 모아 태스크(Task)로 만든 후 태스크 단위로 실행
[해설작성자 : 도라예몽]

36. 소프트웨어 형상관리(Configuration management)에 관한 설명으로 틀린 것은?(2021년 03월)
     1. 소프트웨어에서 일어나는 수정이나 변경을 알아내고 제어하는 것을 의미한다.
     2. 소프트웨어 개발의 전체 비용을 줄이고, 개발 과정의 여러 방해 요인이 최소화되도록 보증하는 것을 목적으로 한다.
     3. 형상관리를 위하여 구성된 팀을 “chief programmer team”이라고 한다.
     4. 형상관리의 기능 중 하나는 버전 제어 기술이다.

     정답 : []
     정답률 : 71%
     <문제 해설>
chief programmer team은 형상관리를 위해 구성된 팀을 뜻하지 않음
[해설작성자 : 또르링]

chief programmer team : 효율성을 제고하기 위하여 능력과 경험이 풍부한 책임 프로그램 작성자를 중심으로 하여 구성한 개발 팀.
[해설작성자 : 배고프다]

형상관리를 위하여 구성된 팀을 형상통제위원회(CCB; Change Control Board)라고 함
[해설작성자 : 총정리]

37. 블랙박스 테스트 기법으로 거리가 먼 것은?(2020년 09월)
     1. 기초 경로 검사
     2. 동치 클래스 분해
     3. 경계값 분석
     4. 원인 결과 그래프

     정답 : []
     정답률 : 70%
     <문제 해설>
기초 경로 검사는 화이트박스 테스트 기법 중 하나이다.
[해설작성자 : 도라예몽]

<블랙박스 테스트의 종류>
- 동치(동등) 분할검사 : 입력조건에 유효한 값과 무효한 값을 균등하게 하여 테스트 케이스를 설계하는 방법
- 경계값 분석 : 입력 조건의 경계에서 오류가 발생할 확률이 높기 때문에, 입력 조건의 경계값을 테스트 케이스로 설계하는 방법
- 원인-효과 그래프 검사 : 입력 데이터 간의 관계와 출력에 미치는 영향을 분석해서 효용성이 높은 테스트 케이스를 설계하는 방법
- 오류-예측 검사 : 과거의 경험이나 확인자의 감각에 의존하는 테스트 케이스 설계 방법
- 비교검사 : 여러 버전의 프로그램에 동일한 자료를 제공해서 테스트 하는 방법
[해설작성자 : [나는 누구다]]

38. 해싱 함수(Hashing Function)의 종류가 아닌 것은?(2021년 03월)
     1. 제곱법(mid-square)
     2. 숫자분석법(digit analysis)
     3. 개방주소법(open addressing)
     4. 제산법(division)

     정답 : []
     정답률 : 68%
     <문제 해설>
해싱함수에는
제산법, 제곱법, 중첩법(폴딩법), 숫자분석법, 기수 변환법, 무작위 방법이 있다.
[해설작성자 : 또르링]

개방주소법은 해싱 충돌이 일어났을 시 빈 노드에 데이터를 저장하는 방식임. 선형 탐색, 제곱 탐색, 랜덤 탐색, 이중 해싱 등을 아우름.
[해설작성자 : 2주의기적]

39. 테스트 케이스 자동 생성 도구를 이용하여 테스트 데이터를 찾아내는 방법이 아닌 것은?(2021년 08월)
     1. 스터브(Stub)와 드라이버(Driver)
     2. 입력 도메인 분석
     3. 랜덤(Random) 테스트
     4. 자료 흐름도

     정답 : []
     정답률 : 47%
     <문제 해설>
테스트 수행 도구
: 자료 흐름도, 기능 테스트, 입력 도메인 분석, 랜덤 테스트

스터브(Stub)와 드라이버(Driver)는 통합 테스트 시 사용되는 것
스터브(Stub)는 하향식 테스트에 사용되는 테스트용 임시 모듈
드라이브(Drive)는 상향식 테스트에 사용되는 테스트 가동기
[해설작성자 : ㄱㄱㅇ]

40. 다음 트리의 차수(degree)는?(2020년 08월)

    

     1. 2
     2. 3
     3. 4
     4. 5

     정답 : []
     정답률 : 75%
     <문제 해설>
트리의 차수 : 전체 트리 중에서 가장 많은 차수
[해설작성자 : ㅇㅎㅅ]

최상단은 루트로 차수로 포함되지 않음.
[해설작성자 : 식객]

B 가 최대차수를 가지고 있다. 3개
[해설작성자 : 정준우]

차수 : 자식 수. 이 트리에서는 B의 자식이 D, E, F 총 3개로 가장 많으므로 트리의 차수는 3
[해설작성자 : 콩이언니]

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


41. 데이터베이스 설계 단계 중 물리적 설계 시 고려 사항으로 적절하지 않은 것은?(2022년 03월)
     1. 스키마의 평가 및 정제
     2. 응답 시간
     3. 저장 공간의 효율화
     4. 트랜잭션 처리량

     정답 : []
     정답률 : 69%
     <문제 해설>
o 어떤 인덱스를 만들 것인지에 대한 고려
o 성능 향상을 위한 개념 스키마의 변경 여부 검토
o 레코드의 크기
o 파일과 구조 저장을 위한 최소한의 공간
o 빈번한 질의와 트랜잭션들의 수행 속도를 높이기 위한 고려사항
- 응답 시간
- 저장 공간의 효율화
- 트랜잭션 처리량
[해설작성자 : 용소용소]

스키마의 평가 및 정제는 논리적 설계에서 실행된다.
[해설작성자 : 망굴]

42. DELETE 명령에 대한 설명으로 틀린 것은?(2022년 03월)
     1. 테이블의 행을 삭제할 때 사용한다.
     2. WHERE 조건절이 없는 DELETE 명령을 수행하면 DROP TABLE 명령을 수행했을 때와 동일한 효과를 얻을 수 있다.
     3. SQL을 사용 용도에 따라 분류할 경우 DML에 해당한다.
     4. 기본 사용 형식은 “DELETE FROM 테이블 [WHERE 조건];” 이다.

     정답 : []
     정답률 : 78%
     <문제 해설>
DELETE문은 테이블내의 튜플들만 삭제, DROP문은 테이블 자체를 삭제
[해설작성자 : ITK]

43. 어떤 릴레이션 R의 모든 조인 종속성의 만족이 R의 후보 키를 통해서만 만족될 때, 이 릴레이션 R이 해당하는 정규형은?(2022년 03월)
     1. 제5정규형
     2. 제4정규형
     3. 제3정규형
     4. 제1정규형

     정답 : []
     정답률 : 65%
     <문제 해설>
- 제1정규형 : 릴레이션에 속한 모든 속성의 도메인이 원자값으로만 구성되어 있으면 제 1 정규형에 속한다.
- 제2정규형 : 제1 정규형에 속하고, 기본키가 아닌 모든 속성이 기본키에 완전 함수 종속되면 제2 정규형에 속한다.(부분 함수 종속 제거)
- 제3정규형 : 제2 정규형에 속하고, 기본키가 아닌 모든 속성이 기본키에 이행적 함수 종속이 되지 않으면 제3 정규형에 속한다.
- BCNF(보이스/코드) 정규형 : 릴레이션의 함수 종속 관계에서 모든 결정자가 후보키이면 보이스/코드 정규형에 속한다.
- 제4정규형 : BCNF 정규형을 만족하면서 함수 종속이 아닌 다치 종속을 제거해야 만족할 수 있다.
- 제5정규형 : 제4 정규형을 만족하면서 후보키를 통하지 않는 조인 종속을 제거해야 만족할 수 있다.
[해설작성자 : 강썬]

정규화 단계 - 원부이 결다조
1. 원자화
2. 부분 함수 종속 제거
3. 이행 함수 종속 제거
BCNF. 결정자 함수 종속
4. 다치 종속성 제거
5NF 조인 종속성 제거
[해설작성자 : 수스토리]

44. 물리적 데이터베이스 설계에 대한 설명으로 거리가 먼 것은?(2021년 08월)
     1. 물리적 설계의 목적은 효율적인 방법으로 데이터를 저장하는 것이다.
     2. 트랜잭션 처리량과 응답시간, 디스크 용량 등을 고려해야 한다.
     3. 저장 레코드의 형식, 순서, 접근 경로와 같은 정보를 사용하여 설계한다.
     4. 트랜잭션의 인터페이스를 설계하며, 데이터 타입 및 데이터 타입들 간의 관계로 표현한다.

     정답 : []
     정답률 : 69%
     <문제 해설>
물리적데이터베이스 설계는 논리적 설계에 기반하여 설계한다.
1. 물리적 설계의 목적은 효율적인 방법으로 데이터를 저장 하는 것이다 ==> 당연히 효율적으로 하기 위함
2. 트랜잭션 처리량과 응답시간, 디스크 용량 등을 고려 ==> 물리적인 요소를 고려
3. 저장 레코드의 형식, 순서, 접근 경로와 같은 정보를 사용 ==> 물리적 요소
4. 트랜잭션의 인터페이스를 설계 ==> 이것은 논리적 설계에서 인터페이스를 사용자의 입장에서 편리하도록 설계 하는 것임
[해설작성자 : cbttest]

45. DDL(Data Define Language)의 명령어 중 스키마, 도메인, 인덱스 등을 정의할 때 사용하는 SQL문은?(2021년 05월)
     1. ALTER
     2. SELECT
     3. CREATE
     4. INSERT

     정답 : []
     정답률 : 76%
     <문제 해설>
DDL - 데이터 정의어
CREATE, ALTER, DROP, TRUNCATE

CREATE : 스키마, 도메인, 테이블, 뷰, 인덱스 정의
ALTER : 테이블에 대한 정의 변경
[해설작성자 : 하나둘사나]

46. 테이블 R1, R2에 대하여 다음 SQL문의결과는?(2021년 05월)

    

     1.
     2.
     3.
     4.

     정답 : []
     정답률 : 62%
     <문제 해설>
INTERSECT 교집합
[해설작성자 : 쀼쮸]

select 학번 from R1 : R1 테이블의 학번 열 검색
select 학번 from R2 : R2 테이블의 학번 열 검색
intersect : 위에 두개를 교집합
[해설작성자 : 곤듀]

47. 뷰(VIEW)에 대한 설명으로 옳지 않은 것은?(2021년 03월)
     1. DBA는 보안 측면에서 뷰를 활용할 수 있다.
     2. 뷰 위에 또 다른 뷰를 정의할 수 있다.
     3. 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 따르지 않는다.
     4. 독립적인 인덱스를 가질 수 없다.

     정답 : []
     정답률 : 81%
     <문제 해설>
뷰의 단점으로 삽입, 삭제, 갱신 연산에 제약이 따름
[해설작성자 : ㅋ]

48. 학적 테이블에서 전화번호가 Null값이 아닌 학생명을 모두 검색할 때, SQL 구문으로 옳은 것은?(2021년 08월)
     1. SELECT 학생명 FROM 07 WHERE 전화번호 DON'T NULL;
     2. SELECT 학생명 FROM WHERE 전화번호 != NOT NULL;
     3. SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL;
     4. SELECT 학생명 FROM WHERE 전화번호 IS NULL;

     정답 : []
     정답률 : 89%
     <문제 해설>
Null은 IS NOT과 사용
[해설작성자 : 안녕]

1. DON'T는 없음
2. != NULL은 가능
4. IS NULL: NULL인 값 검색
[해설작성자 : comcbt.com 이용자]

49. DBA가 사용자 PARK에게 테이블 [STUDENT]의 데이터를 갱신할 수 있는 시스템 권한을 부여하고자 하는 SQL문을 작성하고자 한다. 다음에 주어진 SQL문의 빈칸을 알맞게 채운 것은?(2020년 09월)

    

     1. ㉠ INSERT, ㉡ INTO
     2. ㉠ ALTER, ㉡ TO
     3. ㉠ UPDATE, ㉡ ON
     4. ㉠ REPLACE, ㉡ IN

     정답 : []
     정답률 : 70%
     <문제 해설>
문제에서 특정 컬럼을 지정하지 않았기 때문에 update컬럼 지정(update (컬럼1, 컬럼2, 컬럼3)은 생략 가능하다.
- grant update(컬럼1, 컬럼2, 컬럼3) on 테이블명 to 사용자명;
[해설작성자 : 정보처리지기]

50. 데이터베이스에서 인덱스(Index)와 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 인덱스의 기본 목적은 검색 성능을 최적화하는 것으로 볼 수 있다.
     2. B-트리 인덱스는 분기를 목적으로 하는 Branch Block을 가지고 있다.
     3. BETWEEN 등 범위(Range) 검색에 활용될 수 있다.
     4. 시스템이 자동으로 생성하여 사용자가 변경할 수 없다.

     정답 : []
     정답률 : 82%
     <문제 해설>
1. 인덱스는 데이터를 빠르게 찾을 수 있는 수단으로, 테이블에 대한 조회 속도를 높여주는 자료 구조.
2. 인덱스는 자동으로 생성되지 않는다.
3. 인덱스의 종류 중 순서인덱스(Ordered Index)는 B-Tree알고리즘(오름차순 / 내림차순 지정 가능)을 활용한다.
[해설작성자 : 아쿠르트]

*기본키에 대한 인덱스는 자동생성됩니다!
사용자가 데이터정의어를 사용해서 변경, 생성, 제거할 수 있습니다
[해설작성자 : 집에가고싶다]

51. 조건을 만족하는 릴레이션의 수평적 부분집합으로 구성하며, 연산자의 기호는 그리스 문자 시그마(σ)를 사용하는 관계대수 연산은?(2021년 03월)
     1. Select
     2. Project
     3. Join
     4. Division

     정답 : []
     정답률 : 72%
     <문제 해설>
SELECT σ시그마
PROJECT π파이
JOIN ▷◁ 나비넥타이
DIVISION ÷나누기
[해설작성자 : 전자공학도]

52. SQL에서 스키마(schema), 도메인(domain), 테이블(table), 뷰(view), 인덱스(index)를 정의하거나 변경 또는 삭제할 때 사용하는 언어는?(2021년 03월)
     1. DML(Data Manipulation Language)
     2. DDL(Data Definition Language)
     3. DCL(Data Control Language)
     4. IDL(Interactive Data Language)

     정답 : []
     정답률 : 77%
     <문제 해설>
DML(데이터 조작어) - SELECT/INSERT/DELETE/UPDATE
DDL(데이터 정의어) - CREATE/ALTER/DROP
DCL(데이터 제어어) - GRANT/REVOKE/COMMIT/ROLLBACK/SAVEPOINT

'정의'는 DDL
[해설작성자 : 또르링]

53. 데이터의 중복으로 인하여 관계연산을 처리할 때 예기치 못한 곤란한 현상이 발생하는 것을 무엇이라 하는가?(2021년 08월)
     1. 이상(Anomaly)
     2. 제한 (Restriction)
     3. 종속성(Dependency)
     4. 변환(Translation)

     정답 : []
     정답률 : 86%
     <문제 해설>
이상의 종류에는
1. 삽입 이상
2. 갱신 이상
3. 삭제 이상 이 있다.
[해설작성자 : 싹싹이]

이상 현상(Anomaly);
데이터 정규화가 되지 않은 테이블에서 연산을 수행(삽입, 삭제, 수정)할 시 데이터에 생기는 논리적 오류들.

1. 삽입 이상은 자료 삽입 시 아직 정해지지 않은 부분에 대한 NULL값 등을 삽입해야 하는 경우를 뜻함.
2. 갱신 이상은 데이터 수정 시 중복된 다른 쪽의 데이터가 수정되지 않아 생긴 모순된 데이터 등을 지칭함.
3. 삭제 이상은 한 정보를 삭제했을 때 의도치 않게 해당 행의 다른 데이터까지 삭제되는 현상을 뜻함.

2, 3, 4번 선택지는 현상발생과 관련없는 용어입니당
문제에선 '데이터의 중복'을 언급했으므로 갱신 이상 현상이 발생했을 가능성을 고려할 수 있슴니다.
(변형문제 주의!!!)
[해설작성자 : 정처기 일주일남은 승민]

54. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?(2020년 08월)
     1. 즉각 갱신 기법
     2. 대수적 코딩 방법
     3. 타임 스탬프 기법
     4. 폴딩 기법

     정답 : []
     정답률 : 48%
     <문제 해설>
회복(Recovery)이란
트랜잭션 도중에 손상된 데이터베이스를 이전 상태로 복귀하는 작업
트랙잭션의 연산을 수행할 때 데이터베이스를 변경하기 전에 로그 데이터를 생성합니다.
취소(Undo) 연산으로 이미 데이터베이스에 쓰여진 것도 수정할 수 있습니다.

장애의 유형
트랜잭션 장애, 시스템 장애, 미디어 장애

즉각 갱신 기법(Immediate Update)
트랜잭션의 연산을 수행하여 데이터를 갱신할 때 실제 데이터 베이스에 반영하는 기법
갱신한 모든 내용을 로그(Log)에 보관합니다.
회복 작업을 위해 취소(Undo)와 재시도(Redo) 모두 사용할 수 있습니다.

연기 갱신 기법(Deffered Updatae)
트랜잭션을 완료할 때까지 데이터베이스에 갱신을 연기하는 기법
트랜잭션 수행으로 갱신할 내용은 로그(Log)에 보관합니다.
트랜잭션이 부분 완료 시점에 Log의 기록을 실제 데이터 베이스에 반영합니다.
트랜잭션 수행 중에 장애가 발생하여 Rollback하여도 취소(Undo)할 필요가 없습니다.
재시도(Redo) 작업을 통해 최근의 정상적인 데이터베이스로 회복한 후에 트랜잭션을 재실행할 수 있습니다.

검사점 기법(Check Point)
트랜잭션 중간에 검사점을 로그에 보관하여 트랜잭션 전체를 취소하지 않고 검사점까지 취소할 수 있는 기법

그림자 페이지 대체 기법(Shadow Paging)-로그가 필요없음
트랜잭션의 연산으로 갱신할 필요가 있을 때 복사본인 그림자 페이지를 보관하는 기법
트랜잭션을 취소할 때 그림자 페이지를 이용하여 회복.
로그(Log), 취소(Undo), 재시도(Redo)할 필요가 없습니다.
[해설작성자 : dang]

55. DML(Data Manipulation Language) 명령어가 아닌 것은?(2020년 08월)
     1. INSERT
     2. UPDATE
     3. ALTER
     4. DELETE

     정답 : []
     정답률 : 82%
     <문제 해설>
DML(데이터 조작어) : SELECT / INSERT / DELETE / UPDATE *
DDL(데이터 정의어) : CREATE / ALTER / DROP
DCL(데이터 제어어) : COMMIT / ROLLBACK / GRANT / REVOKE
[해설작성자 : !]

(D)ML = S(select)I(insert)U(update)D(delete)        -> S.I.U.D(시옷)
엠엘은 데이터 조작 언어 이므로 시옷(<-언어)
[해설작성자 : 111]

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

    

     1. 제1정규형
     2. 제2정규형
     3. 제3정규형
     4. 제4정규형

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

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

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

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

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

[오류신고 반론]
제2 정규화 ( 2NF )
완전 함수적 종속을 만족한다 --> 부분 함수적 종속을 모두 제거
[해설작성자 : ㅎㅇ]

57. SQL의 논리 연산자가 아닌 것은?(2021년 08월)
     1. AND
     2. OTHER
     3. OR
     4. NOT

     정답 : []
     정답률 : 89%
     <문제 해설>
SQL 논리 연산자(복합조건)에는 AND, OR, NOT이 있다.
[해설작성자 : 22년 1회차 필기준비생]

58. 무결성 제약조건 중 개체 무결성 제약조건에 대한 설명으로 옳은 것은?(2022년 04월)
     1. 릴레이션 내의 튜플들이 각 속성의 도메인에 정해진 값만을 가져야 한다.
     2. 기본키는 NULL 값을 가져서는 안되며 릴레이션 내에 오직 하나의 값만 존재해야 한다.
     3. 자식 릴레이션의 외래키는 부모 릴레이션의 기본키와 도메인이 동일해야 한다.
     4. 자식 릴레이션의 값이 변경될 때 부모 릴레이션의 제약을 받는다.

     정답 : []
     정답률 : 64%
     <문제 해설>
기본키(Primary Key)
- 테이블의 각 레코드를 고유하게 식별하는 필드나 필드의 집합이다.
- 테이블에 기본키 설정은 필수가 아니다.
- 기본키를 설정하지 않고도 다른 테이블과의 관계를 설정할 수 있다.
- 기본키는 혼합속성(다수 필드)에 설정할 수 있다.
[해설작성자 : 두목넷]

1.개체 무결성 : 각 릴레이션의 기본키를 구성하는 속성은 널(NULL) 값이나 중복된 값을 가질 수 없습니다.
2,참조무결성 : 외래키 값은 NULL이거나 참조하는 릴레이션의 기본키 값과 동일해야 합니다.
3.도메인 무결성 : 속성들의 값은 정의된 도메인에 속한 값이어야 합니다.
4.고유 무결성 : 특정 속성에 대해 고유한 값을 가지도록 조건이 주어진 경우, 릴레이션의 각 튜플이 가지는 속성 값들은 서로 달라야 합니다.
5.NULL 무결성 : 릴레이션의 특정 속성 값은 NULL 될 수 없습니다.
6.키 무결성 : 각 릴레이션은 최소한 한 개 이상의 키가 존재해야 합니다.
[해설작성자 : comcbt.com 이용자]

59. 테이블 두 개를 조인하여 뷰 V_1을 정의하고, V_1을 이용하여 뷰 V_2를 정의하였다. 다음 명령 수행 후 결과로 옳은 것은?(2022년 03월)

    

     1. V_1만 삭제된다.
     2. V_2만 삭제된다.
     3. V_1과 V_2 모두 삭제된다.
     4. V_1과 V_2 모두 삭제되지 않는다.

     정답 : []
     정답률 : 83%
     <문제 해설>
CASCADE
- 데이터베이스 내의 임의의 다른 테이블과 PRIMARY KEY 또는 FOREIGN KEY로서의 관계가 여전히 존재하는 경우 PRIMARY KEY가 존재하는 테이블을 마음대로 제거 및 비활성화 할 수 없다.
- 즉, 부모 테이블과 자식테이블 간에 참조 설정이 되어 있을때 부모 테이블의 제약 조건을 비활성화 시키면서 이를 참조하고 있는 자식 테이블의 제약 조건까지 함께 비활성화시키기 위해 사용한다.
- 또한 부모 테이블만 삭제하고 싶을 경우, 원래는 자식테이블을 먼저 삭제하고 부모를 삭제 한 뒤 자식테이블을 다시 만들어야하는 번거로움이 따른다.
- 하지만 CASCADE를 쓰면 일시적으로 참조관계를 끊을수 있다.
[해설작성자 : 강썬]

CASCADE : 연쇄적으로 삭제하라는 뜻. 참조하는(자식) 개체까지 모두 삭제된다.
RESTRICTED : 참조 중일 때는 에러를 띄우고 삭제 작업 중지.
[해설작성자 : 정처기주주]

60. E-R 다이어그램의 표기법으로 옳지 않은 것은?(2021년 03월)
     1. 개체타입 - 사각형
     2. 속성 - 타원
     3. 관계집합 - 삼각형
     4. 개체타입과 속성을 연결 – 선

     정답 : []
     정답률 : 86%
     <문제 해설>
관계타입 - 마름모
[해설작성자 : 또르링]

삼각형은 E-R 다이어그램에 없음
[해설작성자 : 지나가요]

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


61. IP 주소체계와 관련한 설명으로 틀린 것은?(2022년 03월)
     1. IPv6의 패킷 헤더는 32 octet의 고정된 길이를 가진다.
     2. IPv6는 주소 자동설정(Auto Configuration) 기능을 통해 손쉽게 이용자의 단말을 네트워크에 접속시킬 수 있다.
     3. IPv4는 호스트 주소를 자동으로 설정하며 유니캐스트(Unicast)를 지원한다.
     4. IPv4는 클래스별로 네트워크와 호스트 주소의 길이가 다르다.

     정답 : []
     정답률 : 64%
     <문제 해설>
IPv4와 IPv6의 차이는 정보처리기사 뿐만이 아니라 대부분의 IT관련 시험에서 다루고 있음
주로 다루는 차이점과 핵심 단어는 아래와 같음
1) IPv4
ㄱ. 32비트 주소
ㄴ. 유니캐스트/멀티캐스트/브로드캐스트 사용
2) IPv6
ㄱ. 128비트 주소
ㄴ. 기존 IPv4의 주소 부족 문제를 해결하기 개발
ㄷ. 인증성/기밀성/무결성 지원 (=보안성 강화)
ㄹ. 유니캐스트, 애니캐스트, 멀티캐스트 사용
[해설작성자 : 단기합격은 유튜브 윤파고]

IPv6 헤더의 경우는 40 octet의 고정된 길이를 가진다.
[해설작성자 : BJY]

1번 보면 "패킷 헤더"라고 했기 때문에 오답이다.
IPv4는 헤더가 가변적이고, 주소크기는 32bit
IPv6는 헤더가 40byte(320bit)로 고정되어 있고, 주소크기는 128bit
[해설작성자 : 그냥대 융티]

62. 다음 내용이 설명하는 소프트웨어 취약점은?(2020년 08월)

    

     1. FTP 바운스 공격
     2. SQL 삽입
     3. 버퍼 오버플로
     4. 디렉토리 접근 공격

     정답 : []
     정답률 : 78%
     <문제 해설>
(1) FTP 프로토콜 구조의 허점을 이용한 공격
(2) SQL의 논리적 에러를 이용한 공격
(4) 웹 루트 디렉토리 외부에 저장된 파일 또는 디렉토리에 접근하는 공격방법

(1)은 네트워크 공격방법, (2),(4)는 웹관련 공격방법 (3)은 어플리케이션 공격방법
[해설작성자 : ㅋㅋ루삥뽕]

63. OSI 7계층 중 데이터링크 계층에 해당되는 프로토콜이 아닌 것은?(2022년 03월)
     1. HTTP
     2. HDLC
     3. PPP
     4. LLC

     정답 : []
     정답률 : 69%
     <문제 해설>
1계층 - 물리계층(Physical Layer) : Coax, Fiber, Wireless
2계층 - 데이터 링크계층(DataLink Layer) : Ethernet, SLIP, PPP, FDDI, HDLC
3계층 - 네트워크 계층(Network Layer) : IP, IPSec, ICMP, IGMP
4계층 - 전송 계층(Transport Layer) : TCP, UDP, ECN, SCTP, DCCP
5계층 - 세션 계층(Session Layer) : VARIOUS API;S, SOCKETS
6계층 - 표현 계층(Presentation Layer) : SSL, FTP, IMAP, SSH
7계층 - 응용 계층(Application Layer) : HTTP, FTP, IRC, SSH, DNS
[해설작성자 : khyun99]

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

    

     1. 0
     2. 2
     3. 4
     4. 6

     정답 : []
     정답률 : 75%
     <문제 해설>
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로 전달된것이라 할 수 있음.
[해설작성자 : 밈]

65. 은행가 알고리즘(Banker's Algorithm)은 교착상태의 해결 방법 중 어떤 기법에 해당하는가?(2020년 06월)
     1. Avoidance
     2. Detection
     3. Prevention
     4. Recovery

     정답 : []
     정답률 : 69%
     <문제 해설>
은행가 알고리즘은 교착상태의 해결 방법중 회피 기법이다.
[해설작성자 : voidmyhead]

Prevention(예방) : 교착 상태의 원인이 되는 조건 중 하나를 제거
- 상호배제
- 점유와대기
- 비선점
- 환형대기
Avoidance(회피) : 은행가 알고리즘
Detection(탐지) : 자원 할당 그래프
Recovery(복구) : 자원 선점/프로세스 종료

*기출문제에 예방의 교착상태 원인이 아닌 것과 회피, 복구가 나왔었음

66. 교착상태가 발생할 수 있는 조건이 아닌 것은?(2021년 03월)
     1. Mutual exclusion
     2. Hold and wait
     3. Non-preemption
     4. Linear wait

     정답 : []
     정답률 : 60%
     <문제 해설>
1. 상호 배제(mutual exclusion)
2. 점유와 대기(hold and wait)
3. 비선점(Non-preemption)
------
4번 Linear wait(선형 대기)가 아니라 Circular wait(환형 대기)
[해설작성자 : .]

67. 다음 자바 코드를 실행한 결과는?(2020년 09월)

    

     1. x=7 y=0
     2. x=6 y=-1
     3. x=7 y=-1
     4. Unresolved compilation problem 오류 발생

     정답 : []
     정답률 : 64%
     <문제 해설>
자바에서 while 문은 조건 식의 결과 값이 Boolean 이어야 한다. y--는 int이므로 오류가 발생한다.
[해설작성자 : 오씨]

여기서 Boolean은 True / False를 뜻함
[해설작성자 : comcbt.com 이용자]

68. 다음 파이썬으로 구현된 프로그램의 실행 결과로 옳은 것은?(2020년 09월)

    

     1. [20, 60]
     2. [60, 20]
     3. [0, 20, 40, 60]
     4. [10, 30, 50, 70]

     정답 : []
     정답률 : 73%
     <문제 해설>
a[시작점 : 끝점 : 넘어가는 수] 이렇게 생각하시면 됩니다.
a[:7:2]이면, a[0]~a[6]까지의 값 [0,10,20,30,40,50,60]이고,
이를 2칸씩 넘어가라 했으니 a[0]부터 시작해서 [0,20,40,60]이 나오게 됩니다.
[해설작성자 : MSJ]

69. 192.168.1.0/24 네트워크를 FLSM 방식을 이용하여 4개의 Subnet으로 나누고 IP Subnet-zero를 적용했다. 이 때 Subnetting 된 네트워크 중 4번째 네트워크의 4번째 사용가능한 IP는 무엇인가?(2021년 08월)
     1. 192.168.1.192
     2. 192.168.1.195
     3. 192.168.1.196
     4. 192.168.1.198

     정답 : []
     정답률 : 55%
     <문제 해설>
CIDR 표기법으로 ipv4 32비트중 앞 24비트가 네트워크ip, 뒤 8비트가 호스트ip가 됩니다.
여기서 4개의 서브넷으로 나누려면 호스트ip의 앞쪽 비트를 가능한 적게 4개까지 나누어줘야 하는데요
2진수에서 4개로 나누려면 2비트를 사용해야 하므로
192.168.1.(00)000000 (0)
192.168.1.(01)000000 (64)
192.168.1.(10)000000 (128)
192.168.1.(11)000000 (192)
로 나눌 수 있습니다.
여기서 IP subnet-zero를 적용했다는것은
호스트ip가 전부 0인 192.168.1.0 도 사용하겠단것을 의미 합니다.
즉 4번째 네트워크는 192.168.1.192가 되겠죠?
단 각 서브넷에서 호스트ip가 전부 0인 주소와 전부 1인 주소는 다른 용도로 이미 예약이 되어있습니다.(0은 네트워크 자체의 주소, 1은 브로드캐스팅 주소)
즉 여기서 4번째 사용가능한 ip는
193,194,195,196←이게 되는거죠
[해설작성자 : 밀우]

70. TCP/IP 네트워크에서 IP 주소를 MAC 주소로 변환하는 프로토콜은?(2020년 06월)
     1. UDP
     2. ARP
     3. TCP
     4. ICMP

     정답 : []
     정답률 : 70%
     <문제 해설>
IP주소를 MAC주소로 변환하는 프로토콜 ARP
ARP <-> RARP(MAC주소를 IP주소로)
+ MAC 주소 = 물리적 주소
[해설작성자 : 거상 주작섭]

UDP : 비연결형 서비스 제공 / 실시간 전송 네트워크에서 사용
ARP : IP 주소를 MAC Address로 변환 (논리 주소 → 물리 주소)
TCP : 양방향 연결형 서비스 제공 / 가상 회선 연결 형태의 서비스 제공 / 스트림 위주 패킷 전달
ICMP : IP와 조합하여 통신 중에 발생하는 오류처리와 전송 경로 변경 등을 위한 제어 메시지를 관리
IGMP : 멀티캐스트를 지원하는 호스트나 라우터 사이에서 멀티캐스트 그룹 유지를 위해 사용

71. 프로세스 상태의 종류가 아닌 것은?(2020년 06월)
     1. Ready
     2. Running
     3. Request
     4. Exit

     정답 : []
     정답률 : 65%
     <문제 해설>
프로세스의 상태 종류
- 보류 (pending)
- 준비 (ready)
- 실행 (running)
- 대기 (blocked)
- 교착 (deadlock)
- 완료 (terminated)
[해설작성자 : 정처기 3회차 붙고싶다]

프로세스 상태종류
- 제출(Submit), 접수(Hold), 준비(Ready), 실행(Run), 대기(Wait), 보류, 블록(Block), 종료(Terminated, Exit)
[해설작성자 : 달자아빠]

72. TCP 흐름제어기법 중 프레임이 손실되었을 때, 손실된 프레임 1개를 전송하고 수신자의 응답을 기다리는 방식으로 한 번에 프레임 1개만 전송할 수 있는 기법은?(2020년 09월)
     1. Slow Start
     2. Sliding Window
     3. Stop and Wait
     4. Congestion Avoidance

     정답 : []
     정답률 : 85%
     <문제 해설>
Stop and Wait(정지 및 대기) 기법에 대한 설명이다.

① Slow start: 패킷이 문제없이 도착하면 혼잡 윈도우 크기를 패킷마다 1씩 증가시켜 한 주기가 지나면 혼잡 윈도우 크기가 2배로 되지만, 혼잡 현상 발생시 혼잡 윈도우 크기를 1로 줄여버리는 방식이다.

② Slding WIndow: 한 번에 여러 패킷(프레임)을 전송할 수 있어 전송 효율이 좋은 기법

- 수신 측으로부터 이전에 송신한 패킷에 대한 긍정 수신 응답(ACK)이 전달된 경우 윈도우 크기는 증가하고, 수신측으로부터 이전에 송신한 패킷에 대한 부정 수신 응답(NAK)이 전달된 경우 윈도우 크기는 감소한다.

④ Congestion Avoidance(혼잡 방지, Congestion Control): 네트워크 내에서 패킷의 지연이 너무 높아지게 되어 트래픽이 붕괴되지 않도록 패킷의 흐름을 제어하는 트래픽 제어(종류: AMID, Slow Start)
[해설작성자 : 복붙맨]

73. 다음 C언어 프로그램이 실행되었을 때의 결과는?(2021년 05월)

    

     1. 55
     2. 77
     3. 121
     4. 132

     정답 : []
     정답률 : 59%
     <문제 해설>
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이다.
[해설작성자 : 개발자.]

74. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는?(2022년 04월)

    

     1. 0
     2. 1
     3. 2
     4. 3

     정답 : []
     정답률 : 59%
     <문제 해설>
r1 - or 연산 한쪽만 참이여도 1 반환 n2<=2(참) -> 1
r2 - =! 부정연산자 3 부정 0 반환 -> 0
r3 - and 연산 둘다 참이여야 1반환 (n1>1) (거짓) -> 0
0 - 0 + 1 = 1
[해설작성자 : 수도공고갤러리 갤주]

!n3 -> 논리 부정 연산자 피연산자가 0이면 1을, 나머지 0을 반환
[해설작성자 : 치이카와]

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

    

     1. string[1:3] + string[-3:]
     2. string[:3] + string[-3:-1]
     3. string[0:3] + string[-3:]
     4. string[0:] + string[:-1]

     정답 : []
     정답률 : 74%
     <문제 해설>
파이썬 슬라이스
[:] 처음부터 끝까지
[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"
[해설작성자 : 141]

76. 파이썬의 변수 작성 규칙 설명으로 옳지 않은 것은?(2020년 08월)
     1. 첫 자리에 숫자를 사용할 수 없다.
     2. 영문 대문자/소문자, 숫자, 밑줄(_)의 사용이 가능하다.
     3. 변수 이름의 중간에 공백을 사용할 수 있다.
     4. 이미 사용되고 있는 예약어는 사용할 수 없다.

     정답 : []
     정답률 : 85%
     <문제 해설>
밑줄(_)사용은 가능하지만, 공백은 사용할 수 없습니다.
추가로 첫 자리에는 영문과 밑줄(_)만 사용 가능합니다.
[해설작성자 : 이번엔꼭붙는다]

77. 다음 Python 프로그램이 실행되었을 때, 실행 결과는?(2022년 03월)

    

     1.
     2.
     3.
     4.

     정답 : []
     정답률 : 84%
     <문제 해설>
list_data에 a가 아니라 'a'이기 때문에 문자 그대로 a로 출력되고
dict_data는 90으로 출력됨
[해설작성자 : 영남이공대 소프트웨어콘텐츠과]

list_data {a, b, c}
             p[] 0    1    2
dict_data    a=90
                     b=95

print(list_datap[0]) // list_data의 p[0]주소의 값을 출력
print(dict_data['a'] // dict_data의 키값 'a'의 값 90을 출력
** dict_data는 '키값'을 가지고 해당 키의 '값'을 출력한다.

따라서 실행 결과는 a 다음 90
[해설작성자 : 절대포기하지말자]

78. C언어에서 배열 b[5]의 값은?(2020년 06월)

    

     1. 0
     2. 1
     3. 2
     4. 3

     정답 : []
     정답률 : 71%
     <문제 해설>
배열 수가 9개이고 3개의 값만 초기화 되어 있다.
순서대로 b[0]=1, b[1]=2, b[2]=3 이고 b[4],b[5]...b[8]=0 이다.
[해설작성자 : ㄱㅁㅅ]

흠 ㄱㅁㅅ님 말씀에 보태자면 static이라서 0으로 초기화되는 것입니다.
만약 local에서 static이 아니라면 랜덤값일 겁니다
[해설작성자 : 열이]

[관리자 입니다.
열이님 해설이 약깐 논란이 될듯 하여 추가 설명해 두겠습니다.

랜덤이라는 표현보다는 가비지(쓰레기) 값이 들어 있다는 표현이 더 정확합니다.
배열이 할당받은 메모리에 들어 있는 초기치는
기본적으로 이전에 사용한 프로그램이나 변수들이 사용할때 들어갔던 값들을
그대로 사용하게 됩니다.
즉, static 이 아니라면 메모리가 초기화 되지 않습니다.
참고하세요.]

현직자 입니다. 해설 보충 설명 합니다.

결과적으로는 0으로 초기화 되는것이 맞지만, 문제의 의도를 알 수 없는 나쁜 문제라고 생각됩니다.

1. C언어에서 배열 선언시 배열 크기보다 작은 초기화리스트를 사용하게되면, 배열의 나머지 부분을 0으로 초기화 하게 됩니다.
즉, int b[9] = { 1, 2, 3 }; 에서 배열의 크기는 9이나, 초기호 리스트는 3이므로 나머지 6은 0으로 채워집니다.

2. static 변수 사용시초기화했냐 안했냐에 따라 프로세스 메모리 위치는 달라지지만 결과적으로는 0으로 초기화 되게됩니다.
[해설작성자 : 고양이는먀몸미]

79. C언어에서의 변수 선언으로 틀린 것은?(2021년 08월)
     1. int else;
     2. int Test2;
     3. int pc;
     4. int True;

     정답 : []
     정답률 : 74%
     <문제 해설>
else는 예약어로 변수명으로 사용할 수 없음
[해설작성자 : ㄱㄱㅇ]

사용가능: 영문(대문자,소문자), 숫자, _ (under bar)
불가능: 첫자리 숫자 사용X, 예약어X
[해설작성자 : 막내아들]

80. OSI 7계층 중 네트워크 계층에 대한 설명으로 틀린 것은?(2021년 05월)
     1. 패킷을 발신지로부터 최종 목적지까지 전달하는 책임을 진다.
     2. 한 노드로부터 다른 노드로 프레임을 전송하는 책임을 진다.
     3. 패킷에 발신지와 목적지의 논리 주소를 추가한다.
     4. 라우터 또는 교환기는 패킷 전달을 위해 경로를 지정하거나 교환 기능을 제공한다.

     정답 : []
     정답률 : 53%
     <문제 해설>
한 노드에서 다른 노드로 프레임을 전송하는 책임을 갖는 층(Layer)은 데이터 링크 계층이다.
(정보통신기사 19년 03월 09일 기출)
[해설작성자 : 해군본부 정체단 674기 수뱅]

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

     정답 : []
     정답률 : 69%
     <문제 해설>
디지털 트윈(digital twin)은 미국 제너럴 일렉영(GE)이 주창한 개념으로, 컴퓨터에 현실 속 사물의 쌍둥이를 가상화하여 만들고, 현실에서 발생할 수 있는 상황을 컴퓨터로 시뮬레이션함으로써 결과를 미리 예측하는 기술입니다.
[해설작성자 : 반스트]

82. SSH(Secure Shell)에 대한 설명으로 틀린 것은?(2021년 05월)
     1. SSH의 기본 네트워크 포트는 220번을 사용한다
     2. 전송되는 데이터는 암호화 된다.
     3. 키를 통한 인증은 클라이언트의 공개키를 서버에 등록해야 한다.
     4. 서로 연결되어 있는 컴퓨터 간 원격 명령실행이나 셀 서비스 등을 수행한다.

     정답 : []
     정답률 : 71%
     <문제 해설>
SSH의 기본 네트워크 포트는 22번이다.
[해설작성자 : 해군본부 정체단 674기 수뱅]

기본 네트워크 포트 22번을 S와 2 의 비슷한 모양으로 기억하면 쉽다. SS가 두개니 포트는 22번
[해설작성자 : 청주시라소니]

83. 기기를 키오스크에 갖다 대면 원하는 데이터를 바로 가져올 수 있는 기술로 10㎝ 이내 근접 거리에서 기가급 속도로 데이터 전송이 가능한 초고속 근접무선통신(NFC : Near Field Communication) 기술은?(2022년 04월)
     1. BcN(Broadband Convergence Network)
     2. Zing
     3. Marine Navi
     4. C-V2X(Cellular Vehicle To Everything)

     정답 : []
     정답률 : 61%
     <문제 해설>
근거리로 가까이 가면 지이이이잉 하고 소리가 난다고 외우세요.
[해설작성자 : 연상암기황제]

1번 BcN은 음성·데이터·유무선 등 통신·방송·인터넷이 융합된 품질 보장형 광대역 멀티미디어 서비스를 공간에 제한없이 실시간으로 이용할 수 있는 차세대 네트워크 환경이다.
3번 Marine Navi는 소형 선박에 설치된 GPS 기반 선박자동 식별장치(AIS: Automatic Identification System)를 기본으로 주변 선박의 이동 속도와 위치를 파악한다.
4번 엘티이(LTE), 5G와 같은 셀룰러 이동통신망을 통해 차량이 다른 차량이나 교통 인프라, 보행자, 네트워크 등과 정보를 서로 주고받는 차량 통신 기술.
[해설작성자 : 곰팡이친구먼지]

84. 다음 내용이 설명하는 접근 제어 모델은?(2021년 05월)

    

     1. Clark-Wilson Integrity Model
     2. PDCA Model
     3. Bell-Lapadula Model
     4. Chinese Wall Model

     정답 : []
     정답률 : 61%
     <문제 해설>
BLP 기밀성 모델: 정보의 불법적인 파괴나 변조보다는 불법적인 비밀 유출 방지에 중점 - 기밀성 강조

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

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

85. 소프트웨어 개발 프레임워크와 관련한 설명으로 가장 적절하지 않은 것은?(2022년 04월)
     1. 반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장 받을 수 있게 하는 개발 소프트웨어이다.
     2. 라이브러리와는 달리 사용자 코드에서 프레임워크를 호출해서 사용하고, 그에 대한 제어도 사용자 코드가 가지는 방식이다.
     3. 설계 관점에 개발 방식을 패턴화시키기 위한 노력의 결과물인 소프트웨어 디자인 패턴을 반제품 소프트웨어 상태로 집적화시킨 것으로 볼 수 있다.
     4. 프레임워크의 동작 원리를 그 제어 흐름의 일반적인 프로그램 흐름과 반대로 동작한다고 해서 IoC(Inversion of Control)이라고 설명하기도 한다.

     정답 : []
     정답률 : 54%
     <문제 해설>
사용자 코드에서 호출해서 사용하고 그에 대한 제어를 할 수 있는 것은 라이브러리이다. 프레임워크는 이미 정해진 코드를 호출해 사용하고 자체적인 흐름을 가지고 있음.
[해설작성자 : 몰?루]

86. 라우팅 프로토콜인 OSPF(Open Shortest Path First)에 대한 설명으로 옳지 않은 것은?(2021년 05월)
     1. 네트워크 변화에 신속하게 대처할 수 있다.
     2. 거리 벡터 라우팅 프로토콜이라고 한다.
     3. 멀티캐스팅을 지원한다.
     4. 최단 경로 탐색에 Dijkstra 알고리즘을 사용한다.

     정답 : []
     정답률 : 47%
     <문제 해설>
거리 벡터 라우팅 프로토콜
- Bellman-Ford 알고리즘 사용
- RIP 프로토콜(최대 홉 수 15)
- 인접 라우터와 주기적으로 정보 교환

링크 상태 라우팅 프로토콜
- Dijkstra 알고리즘 사용
- OSPF 프로토콜(홉 수 제한 없음)
- 최단 경로, 최소 지연, 최대 처리량
[해설작성자 : LBS]

87. SoftTech사에서 개발된 것으로 구조적 요구 분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구는?(2020년 09월)
     1. SREM
     2. PSL/PSA
     3. HIPO
     4. SADT

     정답 : []
     정답률 : 52%
     <문제 해설>
1.SREM(Software Requirements Enginering Methdology):TRW사가 우주 국방 시스템 그룹에 의해 실시간 처리 소프트웨어 시스템에서 요구사항을 명확히 기술하도록 할 목적으로 개발한 것으로,RSL과 REVS를 사용하는 자동화 도구이다.(RSL/REVS)
2.PSL/PSA:미시간 대학에서 개발한 것으로 PSL과 PSA를 사용하는 자동화 도구입니다.
3.HIPO(Hieracgy Input Process Output):하향식 소프트웨어 개발을 위한 문서화 도구입니다.
4.SADT(Structure Analysis and Design Technique): SoftTech사에서 개발된 것으로 구조적 요구 분석을 위해 블록 다이어그램을 채택한 자동화 도구입니다.
답:4번
[해설작성자 : comcbt.com 이용자]

88. 정보보호를 위한 암호화에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 평문 – 암호화되기 전의 원본 메시지
     2. 암호문 – 암호화가 적용된 메시지
     3. 복호화 – 평문을 암호문으로 바꾸는 작업
     4. 키(Key) - 적절한 암호화를 위하여 사용하는 값

     정답 : []
     정답률 : 86%
     <문제 해설>
복호화 - 암호화의 반대! 즉 암호화된걸 원본의 메세지로 만드는것
[해설작성자 : 잉여인간]

89. 다음 설명에 해당하는 시스템은?(2022년 03월)

    

     1. Apache
     2. Hadoop
     3. Honeypot
     4. MapReduce

     정답 : []
     정답률 : 77%
     <문제 해설>
Hadoop(하둡): 오픈 소스를 기반으로한 분산 컴퓨팅 플랫폼, 대형 스토리지, 빅데이터 관련
MapReduce : 대용량 데이터를 분산처리하기 위한 목적으로 개발된 프로그래밍 모델
                        구글에 의해 고안
                        임의의 순서로 분산 처리후 다시 합침
[해설작성자 : 부실합니다 보충해 주세요]

Apache : 월드 와이드 웹 컨소시엄(W3C)에서 사용하고 아파치 소프트웨어 재단에서 관리 및 운영하는 서버용 오픈소스 소프트웨어
Hadoop : 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼
MapReduce : 대용량 데이터를 분산 처리하기 위한 목적으로 Google에 의해 고안된 프로그래밍 모델
[해설작성자 : 일요일 시험이당]

90. 다음 설명에 해당하는 공격기법은?(2022년 04월)

    

     1. Ping of Death
     2. Session Hijacking
     3. Piggyback Attack
     4. XSS

     정답 : []
     정답률 : 70%
     <문제 해설>
ICMP가 패킷을 많이 쏘니 핑 하고 죽어삣네. 핑 오브 데스
[해설작성자 : 연상암기황제]

2. Session Hijacking(세션 가로채기) : 컴퓨터 시스템의 정보나 서비스에 무단으로 접근하기 위해 유효한 컴퓨터 세션(세션 키라고도 함)을 이용하는 것 일반적인 예로 두 컴퓨터 간에 활성화된 상태(즉, 로그인된 상태)에서 공격자가 피공격자의 로그인 정보를 활용하여 자신에게 필요한 행위를 하는 것을 뜻한다.

3.Piggyback Attack(피그백 공격) : 공격자가 다른 사용자의 연결에서 계정을 사용하지 않는 비활성 기간(비활성 간격)을 이용하여 시스템에 액세스(접근)한다. 이는 간선(회선 간) 공격이라고도 불린다.
-> 쉽게 설명하자면, 시스템에 대한 합법적인 권한을 가진 사용자가 시스템에 접근할 때, 활성화된 기간(직접 로그인 인증을 받아야 하는 상황)에는 접근 권한이 없는 공격자가 비활성화된 기간(합법적 사용자가 시스템에 접근 인증을 받은 상황)에 마치 사용자와 관련있는 사람인 듯이 태그를 붙여 몰래 뒤따라 들어가는 것이라 할 수 있다.
[해설작성자 : 설명덕보기]

XSS (크로스 사이트 스크립팅) : 웹사이트에 악성 스크립트를 주입하는 행위. 공격자가 상대방의 브라우저에 스크립트가 실행되도록 해 사용자의 세션을 가로채거나, 웹사이트를 변조하거나, 악의적 콘텐츠를 삽입하거나, 피싱 공격을 진행하는 것.
[해설작성자 : 소곰]

91. DDoS 공격과 연관이 있는 공격 방법은?(2020년 08월)
     1. Secure shell
     2. Tribe Flood Network
     3. Nimda
     4. Deadlock

     정답 : []
     정답률 : 65%
     <문제 해설>
DDoS는 네트워크 취약점이 있는 호스트들을 탐색한 후 이를 호스트들에 분산 서비스 공격용 툴을 설치하여 에이전트(agent)로 만든 후 DDoS공격에 이용

여기서 분산 서비스 공격용 툴의 종류에
1.Trin00
2.TFN(Tribe Flooding Network)
3.TFN2K
4.Stacheldraht

가 있습니다.
[해설작성자 : 4회합격하자]

Secure shell:네트워크 상의 다른 컴퓨터에서 제어 가능한 프로그램 또는 해당 프로토콜
Tribe Flood Network:디도스 공격 중 하나
Nimda:바이러스 중 하나
Deadlock:교착상태
[해설작성자 : ㅇ]

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

    

     1. 10일
     2. 12일
     3. 14일
     4. 16일

     정답 : []
     정답률 : 74%
     <문제 해설>
CPM : 노드와 간선으로 이루어진 네트워크

임계 경로 : 작업의 시작 및 종료 구간이 동시에 이루어질 때 가장 오래 걸리는 경로를 임계 경로라고 한다.

문제에서의 경로
3일 - 5일 - 4일 = 12일
2일 - 2일 - 3일 - 3일 = 10일
2일 - 3일 - 5일 - 4일 = 14일 *
[해설작성자 : !]

93. Secure 코딩에서 입력 데이터의 보안 약점과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. SQL 삽입 : 사용자의 입력 값 등 외부 입력 값이 SQL 쿼리에 삽입되어 공격
     2. 크로스사이트 스크립트 : 검증되지 않은 외부 입력 값에 의해 브라우저에서 악의적인 코드가 실행
     3. 운영체제 명령어 삽입 : 운영체제 명령어 파라미터 입력 값이 적절한 사전검증을 거치지 않고 사용되어 공격자가 운영체제 명령어를 조작
     4. 자원 삽입 : 사용자가 내부 입력 값을 통해 시스템 내에 사용이 불가능한 자원을 지속적으로 입력함으로써 시스템에 과부하 발생

     정답 : []
     정답률 : 53%
     <문제 해설>
자원 삽입 : 자원을 조작 할 수 있는 문자열을 삽입하여 시스템이 보호하는 자원에 임의로 접근 할 수 있는 취약점
[해설작성자 : 정처기 공부]

94. IPSec(IP Security)에 대한 설명으로 틀린 것은?(2021년 05월)
     1. 암호화 수행시 일방향 암호화만 지원한다.
     2. ESP는 발신지 인증, 데이터 무결성, 기밀성 모두를 보장한다.
     3. 운영 모드는 Tunnel 모드와 Transport 모드로 분류된다.
     4. AH는 발신지 호스트를 인증하고, IP 패킷의 무결성을 보장한다.

     정답 : []
     정답률 : 74%
     <문제 해설>
일방향 암호화는 해시암호화
[해설작성자 : comcbt.com 이용자]

IPSec : IP계층(3계층)에서 무결성과 인증 보장하는 인증헤더와 기밀성 보장하는 암호화 이용해 양 종단 구간에 보안 서비스 제공하는 터널링 프로토콜
* IPSec의 세부프로토콜
- IKE(Internet Key Exchange) : 보안 관련 설정들을 생성, 협상 및 관리하는 프로토콜(udp500번 포트 사용)
- ESP(Encapsulating Security Payload) : 메세지 인증코드,암호화 이용해 "인증(무결성)","발신지인증","기밀성" 제공 프로토콜
- AH(Authentication Header) : 기밀성 제외한 메시지 인증코드 이용한 "인증(무결성)","발신지인증"제공 프로토콜
[해설작성자 : 빨리 집가야쥐...]

95. 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?(2021년 05월)
     1. Stack Guard
     2. Bridge
     3. ASLR
     4. FIN

     정답 : []
     정답률 : 82%
     <문제 해설>
ASLR(Address Space Layout Randomization): 프로그램을 실행할 때마다 스택, 힙, 공유 라이브러리 등을 메모리에 적재할 때 주소를 랜덤화시키는 기법으로써, 공격자로 하여금 메모리 상의 주소를 추측하기 어렵게 한다.
[해설작성자 : 컴린이]

Bridge: 구현부에서 추상층을 분리하여 각자 독립적으로 확장이 가능하게 하는 패턴
[해설작성자 : comcbt.com 이용자]

96. 리눅스에서 생성된 파일 권한이 644일 경우 umask 값은?(2022년 03월)
     1. 022
     2. 666
     3. 777
     4. 755

     정답 : []
     정답률 : 65%
     <문제 해설>
파일 생성 권한 666에서 644를 빼면 022
[해설작성자 : 정처기 공부]

umask는 UNIX에서 파일이나 디렉터리의 초기 권한을 설정할 때 사용하는 값으로 파일의 경우 666에서 umask를 뺀 값을, 디렉터리일 경우 777에서 umask를 뺀 값을 초기 접근 권한으로 갖습니다
[해설작성자 : ums]

97. 다음 내용이 설명하는 로그 파일은?(2022년 03월)

    

     1. tapping
     2. xtslog
     3. linuxer
     4. wtmp

     정답 : []
     정답률 : 59%
     <문제 해설>
wtmp
- 성공한 로그인/로그아웃 정보를 담고 있는 로그파일
- var/log/wtmp에 위치
- last 명령어 사용
1,2,3 전부 없는 명령어이다.
이밖에 참고로
utmp
- 현재 로그인 사용자 상태 정보를 담고 있는 로그파일
btmp
- 실패한 로그인 정보를 담고 있는 로그파일
last log
- 마지막으로 성공한 로그인 정보를 담고있는 로그파일
[해설작성자 : 윤정훈]

98. NS(Nassi-Schneiderman) chart에 대한 설명으로 거리가 먼 것은?(2020년 09월)
     1. 논리의 기술에 중점을 둔 도형식 표현 방법이다.
     2. 연속, 선택 및 다중 선택, 반복 등의 제어논리 구조로 표현한다.
     3. 주로 화살표를 사용하여 논리적인 제어구조로 흐름을 표현한다.
     4. 조건이 복합되어 있는 곳의 처리를 시각적으로 명확히 식별하는데 적합하다.

     정답 : []
     정답률 : 64%
     <문제 해설>
직사각형을 포개어가는 것으로 나타낸다.
[해설작성자 : 냐옹맨]

논리의 기술에 중점을 둔 도형을 이용한 표현 방법이다.
그리기가 어렵다.(전문성이 있어야 잘 그린다)
순차, 선택, 반복으로 표현한다.
임의의 제어 이동이 어렵다.
goto구조가 어렵다.
그래픽 설계 도구이다.
상자 도표라고도 한다
프로그램으로 구현이 쉽다.
조건이 복합되어 있는 곳의 처리를 명확히 식별하기에 적합하다.
if문이 여러개일 때 가능
[해설작성자 : comcbt.com 이용자]

99. S/W 각 기능의 원시 코드 라인수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정하는 기법은?(2021년 08월)
     1. Effort Per Task기법
     2. 전문가 감정 기법
     3. 델파이기법
     4. LOC기법

     정답 : []
     정답률 : 71%
     <문제 해설>
1. Effort Per Task 기법 - (LOC기법을 보완하기위함)각 기능을 구현시키는 데 필요한 노력을 생명 주기의 각 단계별로 산정
2. 전문가 감정 기법 - 두 명이상의 전문가에게 비용 산정을 의뢰하는 기법, 개인적이고 주관적
3. 델파이 기법 - (전문가감정 기법의 주관적인 편견 보완하기위함)한명의 조정자와 여러 전문가의 의견을 종합하여 산정하는 기법
4. LOC기법 - 원시코드라인수(source line of code)의 비관치, 낙관치, 기대치를 측정 예측치 구함, 본문문제내용동일.
cf. 2&3의 경우 - 하향식 비용 산정 기법이며 1&4의 경우 상향식 비용 산정 기법이다.
[해설작성자 : 순하리누나]

100. 시스템 내의 정보는 오직 인가된 사용자만 수정할 수 있는 보안 요소는?(2020년 06월)
     1. 기밀성
     2. 부인방지
     3. 가용성
     4. 무결성

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

[오류 신고 내용]
답이 1번인 듯합니다.
오직 인가된 사용자만이 수정할 수 있는 보안요소---------------------->기밀성
인가된 사용자가 언제든지 사용가능----------------------------------->가용성
전송 전 데이터와 전송 후 데이터가 동일함(수정,삭제,변조 등을 차단)-->무결성
[해설작성자 : 통신마왕(부경대 정보통신공학과 레전설)]

[오류신고 반론]
정답 4번 맞는 것 같아요 접근가능한게 기밀성이고 수정은 무결성이 맞습니다
[해설작성자 : ㅇㅇ]

[관리자 입니다.
가답안 및 확정답안 확인결과
가답안 4번, 확정답안 4번으로 중복답안 인정되지 않은것으로 확인 됩니다.
확정답안은 4번 이었습니다.]

[오류신고 반론]
잘못 알고 계십니다.
기밀성은 오직 인가된 사용자만이 내용을 확인 할 수 있는 것입니다. 기밀문서가 비공개문서지 수정문서라고 생각하는 사람은 없겠죠?
무결성은 그 기밀성 내에서 인가된 사용자만이 내용을 수정할 수 있는 것이구요.
가용성은 인가된 사용자가 언제든지 사용가능한 것입니다.
[해설작성자 : 거상 주작섭]

[오류신고 반론]
※최종결론
기밀성 - 열람
무결성 - 수정
가용성 - 사용
따라서 정답 4번. 무결성

[오류신고 반론]
기밀성: 오직 인가 된 사용자만 열람 할 수 있다.
가용성: 오직 인가 된 사용자만 사용 할 수 있다.
무결성: 오직 인가 된 사용자만 수정 할 수 있다.

따라서,수정할 수 있는 보안요소는 무결성
[해설작성자 : 찌니]

[오류신고 반론]
가용성은 조금 개념이 다릅니다.
기밀성은 접근하려고 시도하는 유저의 인가 유무를 확실하게 구분하여 데이터에 접근하게 해 주는 것에 초점이 있지만,
가용성은 인가된 사용자의 데이터 사용이 원활하도록 유지하는 것이 중요하다는 뜻입니다. 예를 들면 DDOS 어택을 받아 데이터 사용에 제한이 생기면, 가용성을 보장하지 못했다고 할 수 있겠죠.
[해설작성자 : ㅂㅇㅂㅇ]


정 답 지

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 11월 27일)(8790430)을 이용해 주셔서 감사합니다.
, 필기, 기출문제, 전자문제집, CBT, 온라인, 모의테스트, 모의고사



List of Articles
번호 제목 글쓴이 날짜 조회 수
23226 소방설비기사(전기분야) 필기 기출문제(해설) 및 CBT 2009년03월01일 new 좋은아빠되기 2025.11.27 2
23225 표면처리기능사 필기 기출문제(해설) 및 CBT 2009년09월27일(5회) new 좋은아빠되기 2025.11.27 1
23224 건설기계설비기사 필기 기출문제(해설) 및 CBT 2003년05월25일 new 좋은아빠되기 2025.11.27 1
23223 소방공무원(공개) 한국사(구) 필기 기출문제(해설) 및 CBT 2022년04월09일 new 좋은아빠되기 2025.11.27 1
23222 에너지관리기사 필기 기출문제(해설) 및 CBT 2013년03월10일 new 좋은아빠되기 2025.11.27 1
23221 농기계운전기능사 필기 기출문제(해설) 및 CBT 2005년07월17일(4회) new 좋은아빠되기 2025.11.27 3
23220 초음파비파괴검사기사 필기 기출문제(해설) 및 CBT 2021년08월14일 new 좋은아빠되기 2025.11.27 1
23219 방사선비파괴검사산업기사(구) 필기 기출문제(해설) 및 CBT 2003년08월31일 new 좋은아빠되기 2025.11.27 1
23218 시각디자인산업기사 필기 기출문제(해설) 및 CBT 2006년09월10일 new 좋은아빠되기 2025.11.27 1
23217 사무자동화산업기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 11월 27일)(7284137) new 좋은아빠되기 2025.11.27 1
23216 식품가공기능사 필기 기출문제(해설) 및 CBT 2003년03월30일(2회) new 좋은아빠되기 2025.11.27 1
23215 9급 국가직 공무원 공업화학 필기 기출문제(해설) 및 CBT 2018년04월07일 new 좋은아빠되기 2025.11.27 1
23214 금속도장기능사 필기 기출문제(해설) 및 CBT 2002년01월27일(1회) new 좋은아빠되기 2025.11.27 1
23213 9급 지방직 공무원 서울시 화학공학일반 필기 기출문제(해설) 및 CBT 2015년06월13일 new 좋은아빠되기 2025.11.27 1
23212 조주기능사 필기 기출문제(해설) 및 CBT 2005년01월30일(1회) new 좋은아빠되기 2025.11.27 2
23211 경찰공무원(순경) 형법 필기 기출문제(해설) 및 CBT 2020년09월19일 new 좋은아빠되기 2025.11.27 2
23210 화재감식평가기사 필기 기출문제(해설) 및 CBT 2015년09월19일 new 좋은아빠되기 2025.11.27 1
» 정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 11월 27일)(8790430) new 좋은아빠되기 2025.11.27 2
23208 9급 국가직 공무원 영어 필기 기출문제(해설) 및 CBT 모의고사(2025년 11월 27일)(5307164) new 좋은아빠되기 2025.11.27 2
23207 임상심리사 1급 필기 기출문제(해설) 및 CBT 2016년10월01일 new 좋은아빠되기 2025.11.27 1
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 1167 Next
/ 1167