자격증 필기 기출문제



정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(8512014)

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


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

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


1과목 : 소프트웨어 설계


1. 요구사항 분석 시에 필요한 기술로 가장 거리가 먼 것은?(2020년 08월)
     1. 청취와 인터뷰 질문 기술
     2. 분석과 중재기술
     3. 설계 및 코딩 기술
     4. 관찰 및 모델 작성 기술

     정답 : []
     정답률 : 84%
     <문제 해설>
요구사항 개발 프로세스 : 도출 → 분석 → 명세 → 확인
요구사항 도출 단계 주요 기법은 인터뷰, 설문, 브레인스토밍 등이 있어 청취와 인터뷰 질문 기술이 필요함.

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

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

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

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

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

2. 코드 설계에서 일정한 일련번호를 부여하는 방식의 코드는?(2020년 06월)
     1. 연상 코드
     2. 블록 코드
     3. 순차 코드
     4. 표의 숫자 코드

     정답 : []
     정답률 : 83%
     <문제 해설>
연상코드 : 코드화 대상 항목의 명칭이나 약호와 관계있는 숫자나 문자, 기호를 이용하여 코드를 부여하는 방법

블록코드 : 코드화 대상 항목 중에서 공통성이 있는 것끼리 블록으로 구분하고, 각 블록 내에서 일련번호를 부여하는 방법 (=구분코드)

표의 숫자 코드 : 코드화 대상 항목의 성질, 물리적 수치를 그대로 코드에 적용시키는 방법 (=유효숫자코드)
[해설작성자 : 와우갓띵]

1. 연상 코드: 항목의 명칭이나 약호와 관계 있는 숫자, 문자, 기호를 이용하여 코드를 부여하는 방법
2. 블록 코드: 대상 항목에서 공통적인 것을 블록으로 구분하고 블록 내에 일련 번호를 부여하는 방법
3. 순차 코드: 일정 기준에 따라 최초의 자료부터 순차적으로 일련번호를 부여하는 방법
4. 표의 숫자 코드: 길이 넓이 부피 등 항목의 성질의 물리적인 수치를 그대로 코드에 적용시키는 방법
[해설작성자 : 합격현]

3. 익스트림 프로그래밍에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 대표적인 구조적 방법론 중 하나이다.
     2. 소규모 개발 조직이 불확실하고 변경이 많은 요구를 접하였을 때 적절한 방법이다.
     3. 익스트림 프로그래밍을 구동시키는 원리는 상식적인 원리와 경험을 최대한 끌어 올리는 것이다.
     4. 구체적인 실천 방법을 정의하고 있으며, 개발 문서 보다는 소스코드에 중점을 둔다.

     정답 : []
     정답률 : 62%
     <문제 해설>
1. 구조적 방법론이 아니라 애자일 방법론 중 하나이다.
[해설작성자 : 지나가는 행인]

구조적 방법론은 계획 중심의 접근 방식을 따르는 반면, 익스트림 프로그래밍은 반복적이고 점진적인 개발을 강조하여 변화에 유연하게 대응할 수 있도록 설계된 방법론으로 차이가 있다.
[해설작성자 : 노작가]

4. 소프트웨어 설계에서 사용되는 대표적인 추상화(Abstraction) 기법이 아닌 것은?(2021년 08월)
     1. 자료 추상화
     2. 제어 추상화
     3. 과정 추상화
     4. 강도 추상화

     정답 : []
     정답률 : 80%
     <문제 해설>
소프트웨어 설계에 사용되는 대표적인 3가지 추상화 기법
-제어 추상화: 제어의 정확한 메커니즘을 정의하지 않고 원하는 효과를 정하는데 이용하는 방법
-기능 추상화: 입력 자료를 출력자료로 변환하는 과정을 추상화하는 방법
-자료 추상화: 자료와 자료에 적용될 수 있는 기능을 함께 정의함으로써 자료 객체를 구성하는 방법
[해설작성자 : 오늘월급]

추상화(Abstraction) : 문제의 전체적이고 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화시켜 나가는 것.
- 과정추상화 : 자세한 수행 과정을 정의하지 않고, 전반적인 흐름만 파악할 수 있게 설계하는 방법
- 데이터 추상화 : 데이터의 세부적인 속성이나 용도를 정의하지 않고, 데이터 구조를 대표할 수 있는 표현으로 대체하는 방법
[해설작성자 : 김영주]

5. 응용프로그램의 프로시저를 사용하여 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어는?(2021년 03월)
     1. WAS(Web Application Server)
     2. MOM(Message Oriented Middleware)
     3. RPC(Remote Procedure Call)
     4. ORB(Object Request Broker)

     정답 : []
     정답률 : 81%
     <문제 해설>
1. WAS : 애플리케이션 수행 미들웨어
2. MOM : 메세지 지향 미들웨어
3. RPC : 원격 프로시저 호출
4. ORB : 네트워크 호출 미들웨어
[해설작성자 : .]

원격= Remote
[해설작성자 : 팁으로외우자]

보기에 답이 있습니다.
remote - 원격(리모컨생각하면 쉽습니다.)
procedure - 프로시저
call - 호출, 부름
문제가 원격 프로시저를 호출 하는 방식을 묻는것이므로 rpc로 유추할수있습니다.
[해설작성자 : 산업기사에서 기사로]

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. 미들웨어(Middleware)에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 여러 운영체제에서 응용 프로그램들 사이에 위치한 소프트웨어이다.
     2. 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있어야 한다.
     3. 소프트웨어 컴포넌트를 연결하기 위한 준비된 인프라 구조를 제공한다.
     4. 여러 컴포넌트를 1대 1, 1대 다, 다대 다 등 여러 가지 형태로 연결이 가능하다.

     정답 : []
     정답률 : 76%
     <문제 해설>
- 클라이언트와 서버 간의 통신을 담당하는 시스템 소프트웨어이다.
- 이기종 하드웨어, 소프트웨어, 네트워크, 프로토콜, PC 환경, 운영체제 환경 등에서 시스템 간의 표준화된 연결을 도와주는 소프트웨어이다.
- 표준화된 인터페이스를 통하여 시스템 간의 데이터 교환에 있어 일관성을 제공한다.
- 운영체제와 애플리케이션 사이에서 중간 매개 역할을 하는 다목적 소프트웨어이다.

오답
- 미들웨어 솔루션은 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 확인할 필요가 없다.
[해설작성자 : 행복한버거]

사용자가 미들웨어의 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있다면, 보안의 위협이 될 수 있으므로 확인할 수 없도록 해야함.
[해설작성자 : 항공대미녀]

미들웨어(Middleware)는 사용자에게 초점이 맞추어져 소프트웨어 시스템에서 여러 구성 요소 간에 정보를 전달하고 상호 작용하는 역할을 하는 소프트웨어로 사용자는 내부 동작을 일일이 확인 할 필요가 없다.
[해설작성자 : 선택결과]

사용자가 미들웨어의 내부 동작을 확인하기 위해서는 별도의 응용 소프트웨어가 사용되어야 함.
[해설작성자 : 공부하는중년]

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

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

9. 트랜잭션이 올바르게 처리되고 있는지 데이터를 감시하고 제어하는 미들웨어는?(2020년 06월)
     1. RPC
     2. ORB
     3. TP monitor
     4. HUB

     정답 : []
     정답률 : 82%
     <문제 해설>
1.RPC: remote procedure call 원격 절차 호출 또는 원격 프로시저 호출.
2.ORB: object request broker, 객체 간 메시지 전달을 지원하는 미들웨어
3.TP monitor: 트랜잭션 처리를 감시/제어하는 미들웨어
[해설작성자 : Koo]

ORB는 객체 지향 미들웨어로 코바 표준 스펙을 구현한 미들웨어이다.
[해설작성자 : ㅇㅇ]

10. 그래픽 표기법을 이용하여 소프트웨어 구성 요소를 모델링하는 럼바우 분석 기법에 포함되지 않는 것은?(2020년 09월)
     1. 객체 모델링
     2. 기능 모델링
     3. 동적 모델링
     4. 블랙박스 분석 모델링

     정답 : []
     정답률 : 95%
     <문제 해설>
럼바우하면 객동기를 떠올리세요
[해설작성자 : 럼바우는 객동기]

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

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

12. LOC기법에 의하여 예측된 총 라인수가 36000라인, 개발에 참여할 프로그래머가 6명, 프로그래머들의 평균 생산성이 월간 300라인일 때 개발에 소요되는 기간을 계산한 결과로 가장 옳은 것은?(2022년 03월)
     1. 5개월
     2. 10개월
     3. 15개월
     4. 20개월

     정답 : []
     정답률 : 92%
     <문제 해설>
노력(M/M)=원시 코드 라인 수(LOC)/(1인당 월 평균 생산 코드 라인 수)
=36,000라인/300라인=120M/M

개발 기간=(M/M)/참여 인원=120(M/M)/6명=20개월
[해설작성자 : KMJ2022]

개발 소요기간 계산방법
총 라인수 36000라인 / 월간 평균 생산성 300라인 = 120
120 / 참여 프로그래머 6 = 20
20개월
[해설작성자 : 양기모띄]

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

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

14. 럼바우(Rumbaugh)의 객체지향 분석 절차를 가장 바르게 나열한 것은?(2020년 06월)
     1. 객체 모형→동적 모형→기능 모형
     2. 객체 모형→기능 모형→동적 모형
     3. 기능 모형→동적 모형→객체 모형
     4. 기능 모형→객체 모형→동적 모형

     정답 : []
     정답률 : 84%
     <문제 해설>
럼바우 객체지향 분석 절차
1.객체 모델링
-객체 다이어그램(객체 관계)으로 표시
-가장 중요하며 선행되어야함
2.동적 모델링
-상태 다이어그램(상태도)를 이용해 시간의 흐름에 따른 객체들간의 제어흐름, 상호작용, 동작순서 등의 동적인 행위를 표현하는 모델링
3.기능 모델링
-자료 흐름도(DFD)를 이용하여 다수의 프로세스들 간의 자료흐름을 중심으로 처리
[해설작성자 : hdh]

럼바우는 객동기!
[해설작성자 : comcbt.com 이용자]

15. 럼바우(Rumbaugh)의 객체지향 분석 기법 중 자료 흐름도(DFD)를 주로 이용하는 것은?(2021년 08월)
     1. 기능 모델링
     2. 동적 모델링
     3. 객체 모델링
     4. 정적 모델링

     정답 : []
     정답률 : 51%
     <문제 해설>
럼바우 분석기법
객,동,기
객체모델링 = 객체 다이어그램
동적모델링 = 상태 다이어그램
기능 모델링 = 자료흐름도
[해설작성자 : ㅇㅈㅇ]

문제를 잘 읽으셔야합니다..
객동기만 기억하고 있다가 정적 모델링 해서 정답률이 낮은거같은데
객체 = 객체     객2
동적 = 상태     동상
기능 = 자료~    기자
로 외우면 편해요
[해설작성자 : comcbt.com 이용자]

(다음 설명에 이 "단어"가 있으면 해당 "모델링"이 정답)
객체 모델링 : 정보 모델링, 시스템에서 요구
동적 모델링 : 제어, 흐름, 동작
기능 모델링 : DFD
[해설작성자 : 팁으로 외우자]

16. 다음 중 상위 CASE 도구가 지원하는 주요기능으로 볼 수 없는 것은?(2021년 05월)
     1. 모델들 사이의 모순검사 기능
     2. 전체 소스코드 생성 기능
     3. 모델의 오류검증 기능
     4. 자료흐름도 작성 기능

     정답 : []
     정답률 : 71%
     <문제 해설>
CASE: 시스템 개발과정의 일부 또는 전체를 자동화시킨 것
- 소프트웨어 생명주기의 전체 단계를 연결해 주고 자동화해주는 통합된 도구를 제공
- 소프트웨어, 하드웨어, 데이터베이스, 테스트 등을 통합하여 소프트웨어를 개발하는 환경을 제공

상위 CASE: 요구 분석과 설계 단계를 지원
- 모델들 사이의 모순검사 기능
- 모델의 오류 검증 기능
- 자료흐름도 작성 기능

하위 CASE: 코드를 작성하고 테스트하며 문서화하는 과정 지원
- 원시코드 생성 기능

통합 CASE: 소프트웨어 개발 주기 전체과정을 지원
[해설작성자 : 컴린이]

17. 소프트웨어를 개발하기 위한 비즈니스(업무)를 객체와 속성, 클래스와 멤버, 전체와 부분 등으로 나누어서 분석해 내는 기법은?(2021년 03월)
     1. 객체지향 분석
     2. 구조적 분석
     3. 기능적 분석
     4. 실시간 분석

     정답 : []
     정답률 : 66%
     <문제 해설>
업무(비즈니스)를 객체, 속성 등의 개별요소로 추상화 하는 기법을 "객체지향 분석"이라고 합니다.
[해설작성자 : 지나가던 사람]

18. 애자일 소프트웨어 개발 기법의 가치가 아닌 것은?(2021년 03월)
     1. 프로세스의 도구보다는 개인과 상호작용에 더 가치를 둔다.
     2. 계약 협상보다는 고객과의 협업에 더 가치를 둔다.
     3. 실제 작동하는 소프트웨어보다는 이해하기 좋은 문서에 더 가치를 둔다.
     4. 계획을 따르기보다는 변화에 대응하는 것에 더 가치를 둔다.

     정답 : []
     정답률 : 93%
     <문제 해설>
애자일 방법론

- 공정과 도구보다 개인과 상호작용
- 계획을 따르기보다 변화에 대응하기
- 포괄적인 문서보다 동작하는 소프트웨어
- 계약 협상보다 고객과의 협력
[해설작성자 : 민쵸리]

19. GoF(Gangs of Four) 디자인 패턴 중 생성패턴으로 옳은 것은?(2021년 05월)
     1. singleton pattern
     2. adapter pattern
     3. decorator pattern
     4. state pattern

     정답 : []
     정답률 : 74%
     <문제 해설>
생성패턴: 객체를 생성하는 것에 대한 패턴
추상팩토리 패턴, 빌더 패턴, 팩토리 메소드 패턴, 프로토타입 패턴, 싱글톤 패턴

구조 패턴: 구조를 통해 확장성을 꾀하는 패턴
어댑터 패턴, 브릿지 패턴, 컴포지트 패턴, 데코레이터 패턴, 퍼사드 패턴, 플라이웨잇 패턴, 프록시 패턴

행위 패턴: 행위의 변경, 수정 등을 위한 패턴
역할 사슬 패턴, 커맨드 패턴, 인터프리터 패턴, 이터레이터 패턴, 미디에이터 패턴, 메멘토 패턴, 옵저버 패턴, 스테이트 패턴, 스트래티지 패턴, 템플릿 메소드 패턴, 비지터 패턴
[해설작성자 : 컴린이]

1. singleton pattern(단일체): 한 클래스에 한 객체만 존재하도록 제한한다(생성패턴)
2. adapter pattern(적응자): 인터페이스가 호환되지 않는 클래스들을 함께 이용할 수 있도록, 타 클래스의 인터페이스를 기존 인터페이스에 덧씌운다(구조패턴)
3. decorator pattern(장식자): 0개, 1개 혹은 그 이상의 객체를 묶어 하나의 객체로 이용할 수 있다(구조패턴)
4. state pattern(상태): 동일한 동작을 객체의 상태에 따라 다르게 처리해야 할 때 사용하는 디자인 패턴(행위패턴)
[해설작성자 : .]

20. 소프트웨어 설계시 제일 상위에 있는 main user function에서 시작하여 기능을 하위 기능들로 분할해 가면서 설계하는 방식은?(2021년 03월)
     1. 객체 지향 설계
     2. 데이터 흐름 설계
     3. 상향식 설계
     4. 하향식 설계

     정답 : []
     정답률 : 90%
     <문제 해설>
상향식 설계 : 최하위 수준에서 각각의 모듈들을 설계하고, 모듈이 완성되면 이들은 결합하여 검사
하향식 설계 : 주어진 문제를 분석하여 모듈의 전체적인 구조와 데이터를 개괄적으로 설계하고 이를 기반으로 하위 레벨에서 점차 세부적인 기능을 중심으로 모듈을 설계
[해설작성자 : 3회 합격하자]

2과목 : 소프트웨어 개발


21. 테스트를 목적에 따라 분류했을 때,강도(Stress) 테스트에 대한 설명으로 옳은것은?(2021년 08월)
     1. 시스템에 고의로 실패를 유도하고 시스템이 정상적으로 복귀하는지 테스트한다.
     2. 시스템에 과다 정보량을 부과하여 과부하 시에도 시스템이 정상적으로 작동되는지를 테스트한다.
     3. 사용자의 이벤트에 시스템이 응답하는 시간,특정 시간 내에 처리하는 업무량, 사용자 요구에 시스템이 반응하는 속도 등을 테스트한다.
     4. 부당하고 불법적인 침입을 시도하여 보안시스템이 불법적인 침투를 잘 막아내는지 테스트한다.

     정답 : []
     정답률 : 80%
     <문제 해설>
시스템 테스트의 종류
: 요구사항, 무결성, 부피, 메모리, 성능, 신뢰성, 부하, 수락, 회복, 안전, 구조, 회귀, 병행 등(50가지 이상)

강도(Stress) 테스트: 과다 정보량을 부과하여 시스템이 정상적으로 작동되는지 검증하는 테스트

1번. 회복(Recovery) 테스트
3번. 성능 테스트
4번. 안전(Security) 테스트
[해설작성자 : ㄱㄱㅇ]

22. EAI(Enterprise Application Integration) 구축유형 중 Hybrid에 대한 설명으로 틀린 것은?(2020년 09월)
     1. Hub & Spoke와 Message Bus의 혼합방식이다.
     2. 필요한 경우 한 가지 방식으로 EAI구현이 가능하다.
     3. 데이터 병목현상을 최소화할 수 있다.
     4. 중간에 미들웨어를 두지 않고 각 애플리케이션을 point to point로 연결한다.

     정답 : []
     정답률 : 75%
     <문제 해설>
EAI(Enterprise Application Integration) -> 모듈연계의 한 방식
EAI Hybrid = hub&spoke && messageBus

hub&spoke = 그룹내의 담당 허브가 고장나면 전체에 영향
messageBus = 그룹 담당
[해설작성자 : 가나다 ]

Hybrid 는 중간에 미들웨어를 둔다
[해설작성자 : comcbt.com 이용자]

23. 스택(Stack)에 대한 옳은 내용으로만 나열된 것은?(2022년 03월)

    

     1. ㉠, ㉡
     2. ㉡, ㉢
     3.
     4. ㉠, ㉡, ㉢, ㉣

     정답 : []
     정답률 : 78%
     <문제 해설>
FIFO-큐 방식
한쪽에서 삽입과 삭제가 모두 이루어 짐
[해설작성자 : 꾸꾸까까]

㉡ 큐 방식
㉢ 데크(Deque)설명
[해설작성자 : ITK]

스택은 LIFO방식으로 처리된다.
[해설작성자 : 코봉이]

24. 소프트웨어의 개발과정에서 소프트웨어의 변경사항을 관리하기 위해 개발된 일련의 활동을 뜻하는 것은?(2022년 04월)
     1. 복호화
     2. 형상관리
     3. 저작권
     4. 크랙

     정답 : []
     정답률 : 84%
     <문제 해설>
복호화 - 디코딩, 즉 부호화된 데이터를 부호화 되기 전 형태로 바꾸어, 사람이 읽을 수 있는 형태로 되돌려 놓는것
저작권 - 창작물을 만든이가 자기 저작물에 대해 가지는 법적권리
크랙 - 소프트웨어를 수정하여 소프트웨어를 크랙하는 사람이 원하지 않는 기능들, 보통은 수정 방식(복사 보호, 소프트웨어 조작 보호)을 비활성화하거나 제거하는 일
[해설작성자 : comcbt.com 이용자]

25. 소프트웨어 프로젝트 관리에 대한 설명으로 가장 옳은 것은?(2022년 03월)
     1. 개발에 따른 산출물 관리
     2. 소요인력은 최대화하되 정책 결정은 신속하게 처리
     3. 주어진 기간은 연장하되 최소의 비용으로 시스템을 개발
     4. 주어진 기간 내에 최소의 비용으로 사용자를 만족시키는 시스템을 개발

     정답 : []
     정답률 : 79%
     <문제 해설>
· 프로젝트 관리는 주어진 기간 내에 최소의 비용으로 사용자를 만족시키는 시스템을 개발하기 위한 전반적인 활동
· 프로젝트 관리는 소프트웨어 개발 계획을 세우고 분석, 설계, 구현 등의 작업을 통제하는 것으로 소프트웨어 생명 주기의 전 과정에 걸쳐 진행됨
· 소프트웨어 프로젝트를 성공적으로 수행하기 위해서는 수행할 작업의 범위, 필요한 자원, 수행 업무, 이정표, 비용 추진 일정들을 알아야 함
- 소요인력은 최소화 하는 것이 좋음
※ 프로젝트 관리는 제한된 시간과 비용으로 좋은 품질의 시스템을 개발하여 고객에게 제공함
[해설작성자 : 강썬]

26. 다음 트리를 전위 순회(preorder traversal)한 결과는?(2020년 06월)

    

     1. +*AB/*CDE
     2. AB/C*D*E+
     3. A/B*C*D+E
     4. +**/ABCDE

     정답 : []
     정답률 : 77%
     <문제 해설>
전위순회 : 루트를 먼저 방문 ex) +**/ABCDE
중위순회 : 왼쪽 하위트리를 방문한 뒤 루트를 방문 ex) A/B*C*D+E
후위순회 : 하위트리를 방문한 뒤 루트를 방문 ex) AB/C*D*E+
[해설작성자 : 윤지야보고싶다]

전위 : root → left → right
중위 : left → root → right
후위 : left → right → root
[해설작성자 : 합격하장!]

전위, 중위, 후위의 기준은 root를 언제 계산할지 생각하면 편함.

전위는 root를 가장 앞에
중위는 root를 중간 지점에
후위는 root를 마지막에 계산식을 만들어주면 된다.
[해설작성자 : comcbt.com 이용자]

27. 소프트웨어 형상 관리에 대한 설명으로 거리가 먼 것은?(2021년 05월)
     1. 소프트웨어에 가해지는 변경을 제어하고 관리한다.
     2. 프로젝트 계획, 분석서, 설계서, 프로그램, 테스트 케이스 모두 관리 대상이다.
     3. 대표적인 형상관리 도구로 Ant, Maven, Gradle 등이 있다.
     4. 유지 보수 단계뿐만 아니라 개발 단계에도 적용할 수 있다.

     정답 : []
     정답률 : 72%
     <문제 해설>
Ant, Maven, Gradle 은 빌드자동화 도구입니다.
[해설작성자 : 코로그]

대표적인 형상 관리 도구
GIT,CVS, Subversion 등
[해설작성자 : 군대에서정처기]

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년 08월)
     1. Divide and Conquer
     2. Greedy
     3. Static Block
     4. Backtracking

     정답 : []
     정답률 : 58%
     <문제 해설>
1.Divide and Conquer(분할 정복 알고리즘) : 그대로 해결할 수 없는 문제를 작은 문제로 분할하여 문제를 해결하는 알고리즘
2. Greedy(탐욕 알고리즘) : 현재 시점에서 가장 최적의 방법을 선택하는 알고리즘
4. Backtracking : 모든 조합을 시도하여 문제의 답을 찾는 알고리즘
[해설작성자 : ㅇㅎㅅ]

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

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

static block    : 클래스 로딩시 클래스 변수를 초기화 하려는 용도의 블록
[해설작성자 : 리신장인]

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. 소스코드 정적 분석(Static Analysis)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 소스 코드를 실행시키지 않고 분석한다.
     2. 코드에 있는 오류나 잠재적인 오류를 찾아내기 위한 활동이다.
     3. 하드웨어적인 방법으로만 코드 분석이 가능하다.
     4. 자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾을 수 있다.

     정답 : []
     정답률 : 78%
     <문제 해설>
소스코드 정적 분석
- 프로그램을 실행 시키지 않고 코드를 분석하는 방법
- 코드 내에 존재하는 보안 취약점, 잠재적 결함, 위험 등을 발견 가능
- 규칙과 흐름에 맞게 코드가 올바르게 작성되어 있는지 점검
[해설작성자 : 스태틱]

소스 코드 정적 분석 도구 중 pmd, cppcheck 등은 소프트웨어적인 방법으로 코드를 분석한다.
[해설작성자 : 내일시험임]

34. 소프트웨어를 보다 쉽게 이해할 수 있고 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부구조를 변경하는 것은?(2022년 04월)
     1. Refactoring
     2. Architecting
     3. Specification
     4. Renewal

     정답 : []
     정답률 : 75%
     <문제 해설>
1. Refactoring - 코드의 구조 재조정
2. Architecting - 설계관련
3. Specification - 명세서
4. Renewal - 유지보수
※ 리팩토링과 유지보수는 다른 개념이다.
[해설작성자 : 익명]

리팩토링: 소프트웨어를 보다 쉽게 이해할 수 있고 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부구조를 변경하는 것으로, 코드 스멜(code smell)을 고치고 다듬는 과정이다.
[해설작성자 : 제발합격]

35. 인터페이스 구현 검증 도구가 아닌 것은?(2021년 05월)
     1. Foxbase
     2. STAF
     3. watir
     4. xUnit

     정답 : []
     정답률 : 60%
     <문제 해설>
인터페이스 구현 검증 도구는 xUnit, STAF, Fitnesse, NTAF, Selenium, watir 등이 있습니다.
Foxbase는 프로그래밍 언어입니다.
[해설작성자 : 해군본부 정체단 674기 수뱅]

36. 소스코드 품질분석 도구 중 정적분석 도구가 아닌 것은?(2020년 06월)
     1. pmd
     2. cppcheck
     3. valMeter
     4. checkstyle

     정답 : []
     정답률 : 65%
     <문제 해설>
정적 분석 도구
pmd :소스 코드에 대한 미사용 변수 최적화안된 코드 등 결함을 유발할 수 있는 코드 검사
cppcheck : C/C++ 코드에 대한 메모리 누수 오버플로우 등 분석
SonarQube : 중복 코드 복잡도 코딩 설계 등을 분석하는 소스 분석 통합 플랫폼
checkstyle : 자바 코드에 대해 소스코드 표준을 따르고 있는지 검사한다.
ccm : 다양한 언어의 코드 복잡도를 분석한다.
cobertura : 자바 언어의 소스코드 복잡도 분석 및 테스트 커버리지 측정

동적 분석 도구
Avalanche : Valgrind 프레임워크 및 STP기반 / 프로그램 결함 및 취약점 분석
valgrind : 프로그램 내에 존재하는 메모리 및 쓰레드 결함 분석
[해설작성자 : 거상 주작섭]

valMeter : 전압계
[해설작성자 : AAA]

37. 검증 검사 기법 중 개발자의 장소에서 사용자가 개발자 앞에서 행하는 기법이며, 일반적으로 통제된 환경에서 사용자와 개발자가 함께 확인하면서 수행되는 검사는?(2020년 06월)
     1. 동치 분할 검사
     2. 형상 검사
     3. 알파 검사
     4. 베타 검사

     정답 : []
     정답률 : 75%
     <문제 해설>
동치 분할 검사 : 입력 자료에 초점을 맞춰 케이스를 만들고 검사하는 방법 - 블랙박스 테스트 종류
알파 테스트 : 개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법 - 인수 테스트 종류
베타 테스트 : 선정된 최종 사용자가 여러명의 사용자 앞에서 행하는 테스트 기법 - 인수 테스트 종류
[해설작성자 : 거상 주작섭]

형상 검사(구성 검토, 검사) : 구성 요소, 목록, 유지보수를 위한 모든 사항이 표현되었는가를 검사
[해설작성자 : 핫식스3029캔째]

38. 해싱함수 중 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식은?(2020년 09월)
     1. 제산법
     2. 폴딩법
     3. 기수변환법
     4. 숫자분석법

     정답 : []
     정답률 : 61%
     <문제 해설>
폴딩법 - 해싱함수    중 레코드 키를 여러부분으로 나누고 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용
[해설작성자 : comcbt.com 이용자]

제산법 - 레코드키를 해시표로 나눈 나머지를 홈 주소로 사용
기수변환법 - 키 숫자의 진수를 다른 진수로 변환시켜 주소 크기를 초과한 높은 자릿수 절단, 다시 주소 범위에 맞게 조정
숫자분석법 - 키 값을 이루는 숫자의 분포를 분석하여 비교적 고른 자리를 필요한 만큼 선택
[해설작성자 : 머리터져요]

39. 순서가 있는 리스트에서 데이터의 삽입(Push), 삭제(Pop)가 한 쪽 끝에서 일어나며 LIFO(Last-In-First-Out)의 특징을 가지는 자료구조는?(2022년 04월)
     1. Tree
     2. Graph
     3. Stack
     4. Queue

     정답 : []
     정답률 : 73%
     <문제 해설>
1. Stack = LIFO, 한 쪽 끝에서 일어남
2. Queue = FIFO, 양방향에서 일어남
3. Tree & Graph 는 비선형구조
[해설작성자 : IJH]

40. 다음 중 스택을 이용한 연산과 거리가 먼 것은?(2021년 05월)
     1. 선택정렬
     2. 재귀호출
     3. 후위표현(Post-fix expression)의 연산
     4. 깊이우선탐색

     정답 : []
     정답률 : 54%
     <문제 해설>
선택정렬은 큐를 이용해서 정렬합니다.
[해설작성자 : 수원대학교]

선택정렬 : 가장 작은값을 위치가 정렬되어지지 않은 최초의 값과 바꿈
스택은 중간값에대해 접근할 수 없으므로 선택정렬을 할 수 없음
[해설작성자 : 거상 백호섭]

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


41. 결과 값이 아래와 같을 때 SQL 질의로 옳은 것은?(2021년 03월)

    

     1. SELECT * FROM 공급자 WHERE
공급자명 LIKE '%신%';
     2. SELECT * FROM 공급자 WHERE
공급자명 LIKE '%대%';
     3. SELECT * FROM 공급자 WHERE
공급자명 LIKE '%사%';
     4. SELECT * FROM 공급자 WHERE
공급자명 IS NOT NULL;

     정답 : []
     정답률 : 92%
     <문제 해설>
"SELECT * FROM 공급자 WHERE 공급자명" 까지는 동일합니다.
공급자명이 NULL인 값은 없으니 제거하고
LIKE "%value%"
value에 공통적으로 들어갈 문자를 찾아주면 되겠습니다.
[해설작성자 : 김태환]

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

[오류 신고 내용]
대신공업사와 신촌상사의 공통 글자는 '신'과 '사' 입니다.
그러므로 1번뿐 아니라 3번도 맞는 답 아닌가요??
[해설작성자 : 이상하군]

[관리자 입니다.
문제지 사진원본 확인해 봤는데
확정답안은 1번이네요.
다른 문제집 확인 가능한분 계시면 확인 부탁 드립니다.
신고시 출판사명까지 기제 부탁 드립니다.]

[오류신고 반론]
저도 3번도 해당가능한 줄 알았는데..음
‘%사%’는 모든 공급자들이 ‘사’라는 단어를 포함하므로    결과값으로 모든 공급자들이 출력되야 맞습니다.
반면에 정답인 ‘신’이 들어가는 결과값은 2개가 맞습니다
[해설작성자 : 또르링]

[오류신고 반론]
3번의 경우 대신공업사, 삼진사, 삼양사, 진아공업사, 신촌상사 모두 해당됩니다.
다섯 개 모두 문자열에 '사'가 들어가니까요.
3번이 답이 되려면 '%신%사%'가 되야합니다.
[해설작성자 : 냠냠]

[오류신고 반론]
SELECT * FROM 공급자 WHERE
공급자명 LIKE '%신%';
-> 공급자명에 "신"이 포함된 : 대신공업사, 신촌상사

SELECT * FROM 공급자 WHERE
공급자명 LIKE '%대%
-> 공급자명에 "대"가 포함된 : 대신공업사

3.SELECT * FROM 공급자 WHERE
공급자명 LIKE '%사%';
-> 공급자명에 "사"가 포함된 : 대신공업사, 삼진사, 삼양사, 진아공업사, 신촌상사

4.SELECT * FROM 공급자 WHERE
공급자명 IS NOT NULL;
-> 공급자명이 NULL이 아닌 값 : 대신공업사, 삼진사, 삼양사, 진아공업사, 신촌상사
[해설작성자 : kecoz]

42. 다음 두 릴레이션에서 외래키로 사용된 것은? (단 밑줄 친 속성은 기본키이다.)(2020년 06월)

    

     1. 수강번호
     2. 과목번호
     3. 학번
     4. 과목명

     정답 : []
     정답률 : 85%
     <문제 해설>
외래키 - 타 릴레이션의 기본키를 참조하는 속성 or 속성들의 집합
문제 읽어보면 (밑줄 친 속성은 기본키이다.) 적혀있음
고로 수강쪽에 과목번호가 있거나 과목쪽에 수강번호가 있어야함
[해설작성자 : 거상 주작섭]

43. 다음 두 릴레이션 Rl과 R2의 카티션 프로덕트(cartesian product) 수행 결과는?(2021년 08월)

    

     1.
     2.
     3.
     4.

     정답 : []
     정답률 : 78%
     <문제 해설>
두 테이블 곱집합
두 개의 테이블은 카티션 프로덕트 후 튜플의 수는 각 테이블의 곱,
컬럼은 각 테이블의 컬럼을 더한 것 과 같다.
[해설작성자 : 사과씨앗]

44. 다음 테이블을 보고 강남지점의 판매량이 많은 제품부터 출력되도록 할 때 다음 중 가장 적절한 SQL 구문은? (단, 출력은 제품명과 판매량이 출력되도록 한다.)(2022년 04월)

    

     1. SELECT 제품명, 판매량 FROM 푸드
ORDER BY 판매량 ASC;
     2. SELECT 제품명, 판매량 FROM 푸드
ORDER BY 판매량 DESC;
     3. SELECT 제품명, 판매량 FROM 푸드
WHERE 지점명 = '강남지점'
ORDER BY 판매량 ASC;
     4. SELECT 제품명, 판매량 FROM 푸드
WHERE 지점명 = '강남지점'
ORDER BY 판매량 DESC;

     정답 : []
     정답률 : 72%
     <문제 해설>
- 판매량이 많은 제품부터 출력되도록 하려면 내림차순 정렬을 적용해야 한다. SQL에서 정렬은 ORDER BY을 사용하며 내림차순은 DESC를 사용한다. 오름차순의 경우 생략이나 ASC를 사용한다.
[해설작성자 : 두목넷]

DESC : descending 내림차순
ASC : ascending 오름차순
[해설작성자 : 주거니아빠]

45. 다음 중 기본키는 NULL 값을 가져서는 안되며, 릴레이션 내에 오직 하나의 값만 존재해야 한다는 조건을 무엇이라 하는가?(2021년 08월)
     1. 개체 무결성 제약조건
     2. 참조 무결성 제약조건
     3. 도메인 무결성 제약조건
     4. 속성 무결성 제약조건

     정답 : []
     정답률 : 81%
     <문제 해설>
1. 개체 무결성 : 기본키는 null 값이 될 수 없음
2. 참조 무결성 : 외래키는 참조할 수 없는 값을 가질 수 없음
3. 도메인 무결성 : 특정 속성값은 그 속성이 정의된 도메인에 속한 값이어야 함
[해설작성자 : 오니]

46. 데이터베이스의 논리적 설계(logical design) 단계에서 수행하는 작업이 아닌 것은?(2020년 06월)
     1. 레코드 집중의 분석 및 설계
     2. 논리적 데이터베이스 구조로 매핑(mapping)
     3. 트랜잭션 인터페이스 설계
     4. 스키마의 평가 및 정제

     정답 : []
     정답률 : 42%
     <문제 해설>
데이터 베이스의 논리적 설계(데이터모델링)
-현실 세계에서 발생하는 자료를 컴퓨터가 이해하고 처리할 수 있는 물리적 저장장치에 저장할 수 있도록 변환하기 위해 특정 DBMS가 지원하는 논리적 자료 구조로 변환시키는 과정
-개념 세계의 데이터를 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계로 표현되는 논리적 구조의 데이터로 모델화
-개념 스키마를 평가 및 정제하고 DBMS에 따라 서로 다른 논리적 스키마를 설계하는 단계(종속적인 논리 스키마)
-트랜잭션의 인터페이스 설계
-관계형 데이터베이스라면 테이블 설계
-특정목표 DBMS에 따른 스키마설계
-스키마의 평가 및 정제

①레코드 집중의 분석 및 설계는 물리적 설계(데이터구조화)이다

물리적 설계
-논리적 구조로 표현된 데이터를 물리적 구조의 데이터로 변환
-데이터 베이스 파일의 저장 구조 및 엑세스 경로 결정
-데이터가 컴퓨터에 저장되는 방법을 묘사
-저장 레코드의 양식 설계, 레코드 집중의 분석 및 설계, 접근 경로 설계
-기본적 데이터 단위는 저장레코드
-성능에 중대한 영향을 미침
[해설작성자 : 나좀뽑아줘]

47. 다음 릴레이션의 Degree와 Cardinality는?(2022년 03월)

    

     1. Degree : 4, Cardinality : 3
     2. Degree : 3, Cardinality : 4
     3. Degree : 3, Cardinality : 12
     4. Degree : 12, Cardinality : 3

     정답 : []
     정답률 : 75%
     <문제 해설>
카디널리티=행
디그리(차수)=열
'카행', '디열(차열)'로 암기
[해설작성자 : 마산 양덕동 내년 사십]

*열차 = 열+차수(degree)
*비행기 = (비)+행+기수(cardinality)
[해설작성자 : 센딘]

48. 데이터 사전에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 시스템 카탈로그 또는 시스템 데이터베이스라고도 한다.
     2. 데이터 사전 역시 데이터베이스의 일종이므로 일반 사용자가 생성, 유지 및 수정 할 수 있다.
     3. 데이터베이스에 대한 데이터인 메타데이터(Metadata)를 저장하고 있다.
     4. 데이터 사전에 있는 데이터에 실제로 접근하는 데 필요한 위치 정보는 데이터 디렉토리(Data Directory)라는 곳에서 관리한다.

     정답 : []
     정답률 : 74%
     <문제 해설>
데이터 사전(Data Dictionary)
- 시스템 자신이 필요로 하는 여러 가지 객체(기본 테이블, 뷰, 인덱스, 데이터베이스, 패키지, 접근 권한 등)에 관한 정보를 포함하고 있는 시스템 데이터베이스이다.
- 시스템 카탈로그(System Catalog), 메타 데이터(Meta Data)라고도 한다.
- 시스템 카탈로그 자체도 시스템 테이블로 구성되어 있어 SQL 문을 이용하여 내용 검색이 가능하다.
- 사용자가 시스템 카탈로그를 직접 갱신할 수 없다.
- SQL 문으로 여러 가지 객체에 변화를 주면 시스템이 자동으로 갱신한다.
[해설작성자 : 두목넷]

49. 관계형 데이터베이스에서 다음 설명에 해당하는 키(Key)는?(2021년 08월)

    

     1. 후보키
     2. 대체키
     3. 슈퍼키
     4. 외래키

     정답 : []
     정답률 : 74%
     <문제 해설>
슈퍼키 : 유일성을 만족하는 속성 또는 속성들의 집합
후보키 : 유일성과 최소성을 만족하는 속성 또는 속성들의 집합
대체키 : 기본키로 선택되지 못한 후보키
외래키 : 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합
[해설작성자 : Ant]

기본키(Primary key)
기본키는 후보키 중에서 특별히 선정된 주키(Main Key)이며 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성이다. 기본키는 중복된 값을 가질 수 없으며 NULL값을 가질 수 없다.

대체키(Alternate Key)
대체키는 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 의미한다. 대체키를 보조키라고도 한다.

슈퍼키(Super Key)
슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키를 말한다. 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않는다. 슈퍼키는 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족하지 못한다.

외래키(Foreign Key)
외래키는 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미한다. 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인상에서 정의되었을 때의 속성 A를 외래키라고 한다. 외래키로 지정되면 참조 릴레이션의 기본키에 없는 값은 입력할 수 없다.

50. 데이터베이스에서의 뷰(View)에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 뷰는 다른 뷰를 기반으로 새로운 뷰를 만들 수 있다.
     2. 뷰는 일종의 가상 테이블이며, update에는 제약이 따른다.
     3. 뷰는 기본 테이블을 만드는 것처럼 create view를 사용하여 만들 수 있다.
     4. 뷰는 논리적으로 존재하는 기본 테이블과 다르게 물리적으로만 존재하며 카탈로그에 저장된다.

     정답 : []
     정답률 : 73%
     <문제 해설>
뷰는 논리적으로만 존재한다.
[해설작성자 : 칼방이]

51. 트랜잭션의 상태 중 트랜잭션의 마지막 연산이 실행된 직후의 상태로, 모든 연산의 처리는 끝났지만 트랜잭션이 수행한 최종 결과를 데이터베이스에 반영하지 않은 상태는?(2022년 04월)
     1. Active
     2. Partially Committed
     3. Committed
     4. Aborted

     정답 : []
     정답률 : 64%
     <문제 해설>
Partially Committed: 마지막 연산이 실행된 직후의 상태로 아직 Commit 연산 실행 전
Committed: 트랜잭션이 실행을 성공적으로 완료하여 Commit 연산을 수행한 상태
[해설작성자 : 칼방이]

                ->        partially committed    -> committed
active |                     |
             |                     V
                ->             failed                        -> aborted(rollback연산)
[해설작성자 : comcbt.com 이용자]

Partially Committed: 트랜잭션이 마지막 명령문을 실행한 직후의 상태
Active: 트랜잭션이 실행을 시작하여 실행 중인 상태
Committed: 트랜잭션이 실행을 성공적으로 완료하여 COMMIT연산을 수행한 상태
Aborted: 트랜잭션이 실행에 실패하여 ROLLBACK연산을 수행한 상태
[해설작성자 : 제발합격]

52. SQL과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. REVOKE 키워드를 사용하여 열 이름을 다시 부여할 수 있다.
     2. 데이터 정의어는 기본 테이블, 뷰 테이블, 또는 인덱스 등을 생성, 변경, 제거하는데 사용되는 명령어이다.
     3. DISTINCT를 활용하여 중복 값을 제거할 수 있다.
     4. JOIN을 통해 여러 테이블의 레코드를 조합하여 표현할 수 있다.

     정답 : []
     정답률 : 78%
     <문제 해설>
REVOKE는 DCL에 해당 하는 권한을 해제하는 명령어
[해설작성자 : 그렇다네요]

#### DDL(Data Define Language, 데이터 정의어)
>DDL은 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어이다.

- CREATE: SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의한다.
- ALTER: TABLE에 대한 정의를 변경하는 데 사용한다.
- DROP: SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 삭제한다.


#### DML(Data Manipulation Language, 데이터 조작어)
>DML은 데이터베이스 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는데 사용되는 언어이다.
데이터베이스 사용자와 데이터베이스 관리시스템 간의 인터페이스를 제공한다.

- SELECT: 테이블에서 조건에 맞는 튜플을 검색한다.
- INSERT: 테이블에 새로운 튜플을 삽입한다.
- DELETE: 테이블에서 조건에 맞는 튜플을 삭제한다.
- UPDATE: 테이블에서 조건에 맞는 튜플의 내용을 변경한다.

#### DCL(Data Control Language, 데이터 제어어)
> DCL은 데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는 데 사용되는 언어이다.
데이터 베이스 관리자가 데이터 관리를 목적으로 사용한다.

- COMMIT: 명령에 의해 수행된 결과를 실제 물리적 디스크로 저장하고, 데이터베이스 조작 작업이 정상적으로 완료되었음을 관리자에게 알려준다.
- ROLLBACK: 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구한다.
- GRANT: 데이터베이스 사용자에게 사용권한을 부여한다.
- REVOKE: 데이터베이스 사용자의 권한을 취소한다.
[해설작성자 : bboygg]

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

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

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

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

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

54. 뷰(VIEW)에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 뷰 위에 또 다른 뷰를 정의할 수 있다.
     2. 뷰에 대한 조작에서 삽입, 갱신, 삭제 연산은 제약이 따른다.
     3. 뷰의 정의는 기본 테이블과 같이 ALTER문을 이용하여 변경한다.
     4. 뷰가 정의된 기본 테이블이 제거되면 뷰도 자동적으로 제거된다.

     정답 : []
     정답률 : 66%
     <문제 해설>
뷰의 정의를 변경하려면 뷰를 삭제하고 재생성 해야된다.
[해설작성자 : 오씨]

55. DML에 해당하는 SQL 명령으로만 나열된 것은?(2020년 06월)
     1. DELETE, UPDATE, CREATE, ALTER
     2. INSERT, DELETE, UPDATE, DROP
     3. SELECT, INSERT, DELETE, UPDATE
     4. SELECT, INSERT, DELETE, ALTER

     정답 : []
     정답률 : 80%
     <문제 해설>
DML(Data Manipulation Language) 데이터 조작어
DML의 유형에는 SELECT, INSERT, DELETE, UPDATE 가 있다.
SELECT 데이터 조회 : 튜플 중 전체 또는 조건을 만족하는 튜플을 검색하여 주기억장치 상에 임시테이블로 구성
INSERT 데이터 생성 : 새로운 튜플을 삽입할 때 사용하는 명령문
DELETE 데이터 삭제 : 튜플들 중에서 특정 튜플을 삭제할 때 사용하는 명령문
UPDATE 데이터 변경 : 특정 튜플의 내용을 변경할 때 사용하는 명령문
[해설작성자 : 나좀뽑아줘]

CREATE : [DDL] 데이터베이스, 테이블 등을 생성하는 역할을 한다.
ALTER : [DDL] 테이블을 수정하는 역할을 한다.
DROP : [DDL] 데이터베이스, 테이블을 삭제하는 역할을 한다.
[해설작성자 : woolen]

56. 데이터 제어어(DCL)에 대한 설명으로 옳은 것은?(2022년 03월)
     1. ROLLBACK : 데이터의 보안과 무결성을 정의한다.
     2. COMMIT : 데이터베이스 사용자의 사용 권한을 취소한다.
     3. GRANT : 데이터베이스 사용자의 사용 권한을 부여한다.
     4. REVOKE : 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래 상태로 복구한다.

     정답 : []
     정답률 : 83%
     <문제 해설>
1. ROLLBACK : 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래 상태로 복구한다.
2. COMMIT : 데이터의 보안과 무결성을 정의한다.
3. GRANT : 데이터베이스 사용자의 사용 권한을 부여한다.
4. REVOKE : 데이터베이스 사용자의 사용 권한을 취소한다.
[해설작성자 : 독학하는자]

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

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

58. 동시성 제어를 위한 직렬화 기법으로 트랜잭션 간의 처리 순서를 미리 정하는 방법은?(2021년 08월)
     1. 로킹 기법
     2. 타임스탬프 기법
     3. 검증 기법
     4. 배타 로크 기법

     정답 : []
     정답률 : 76%
     <문제 해설>
로킹기법 : 같은 자원을 엑세스하는 다중 트랜잭션 환경에서 DB의 일관성과 무결성을 유지하기 위해 트랜젝션의 순차적 진행을 보장하는 직렬화 기법.
타임스탬프 기법 : 트랜젝션과 트랜잭션이 읽거나 갱신한 데이터에 대해 트랜잭션이 실행을 시작하기 전에 타임스탬프를 부여하여 부여된 시간에 따라 트랜젝션 작업을 수행하여 트랜잭션 간의 처리순서를 미리 정하는 기법
[해설작성자 : 야쿠르트]

59. 한 릴레이션 스키마가 4개 속성, 2개 후보키 그리고 그 스키마의 대응 릴레이션 인스턴스가 7개 튜플을 갖는다면 그 릴레이션의 차수(degree)는?(2020년 09월)
     1. 1
     2. 2
     3. 4
     4. 7

     정답 : []
     정답률 : 71%
     <문제 해설>
릴레이션에서 차수(degree)는 속성의 수를 말합니다.
[해설작성자 : 오씨]

스키마 : 속성(attribute)의 집합 = 열
인스턴스 : 튜플의 집합 = 행,레코드
속성의 개수 = 차수
튜플의 개수 = 카디날리티(cardinality)
[해설작성자 : comcbt.com 이용자]

60. 제3정규형 (3NF)에서 BCNF(Boyce-Codd Normal Form)가 되기 위한 조건은?(2021년 05월)
     1. 결정자가 후보키가 아닌 함수 종속 제거
     2. 이행적 함수 종속 제거
     3. 부분적 함수 종속 제거
     4. 원자값이 아닌 도메인 분해

     정답 : []
     정답률 : 79%
     <문제 해설>
비정규형 →
[도메인 분해 →] 제1정규형
[부분 함수 종속 제거 →] 제2정규형
[이행 함수 종속 제거 →] 제3정규형
[결정자가 후보키가 아닌 함수 종속 제거 →] 보이스 코드 정규형(BCNF)
[다중치 종속 제거 →] 제4정규형
[조인 종속제거 →] 제5정규형

앞글자만 따서 '도부이결다조'로 암기하자.
[해설작성자 : 해군본부 정체단 674기 수뱅]

두부 이걸 다줘?? (도부이결다조) 로 암기 추천
[해설작성자 : 꼼수]

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


61. 다음 설명에 해당하는 방식은?(2021년 05월)

    

     1. STA
     2. Collision Domain
     3. CSMA/CA
     4. CSMA/CD

     정답 : []
     정답률 : 60%
     <문제 해설>
- Collision Domain : 충돌 발생을 검출할 수 있는 브리지 간 혹은 다른 계층 장치 간의 이더넷 세그먼트 범위
- CSMA/CD : 이더넷에서 각 단말이 정송 공유 매체에 규칙있게 접근하기 위한 매체 엑세스 제어 방식
[해설작성자 : 해군본부 정체단 674기 수뱅]

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

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

- Collision Domain "충돌 도메인"
충돌 발생을 검출할 수 있는 브리지 간 혹은 다른 계층 장치 간의 이더넷 세그먼트 범위
[해설작성자 : 쑤지쑤지]

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

    

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

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

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

63. 운영체제를 기능에 따라 분류할 경우 제어 프로그램이 아닌 것은?(2021년 03월)
     1. 데이터 관리 프로그램
     2. 서비스 프로그램
     3. 작업 제어 프로그램
     4. 감시 프로그램

     정답 : []
     정답률 : 64%
     <문제 해설>
제어 프로그램
1) 감시 프로그램 (Supervisor) : 프로그램과 시스템 작동상태를 감시 감독
2) 작업 제어 프로그램 (Job Control) : 작업의 연속 처리를 위한 스케줄 및 시스템 자원 할당 등을 담당
3) 데이터 관리 프로그램 (Data Management) ​: 주기억장치와 보조기억장치 사이의 데이터 전송, 파일과 데이터를 처리 유지 보수 기능 수행
[해설작성자 : 또르링]

제어프로그램
- 감시 프로그램(Supervisior Program)
- 작업 프로그램(Job Management Program)
- 데이터 관리 프로그램(Data Management Program)
처리 프로그램
- 언어 번역 프로그램
- 서비스 프로그램
[해설작성자 : 그냥대 융티]

64. 운영체제에서 커널의 기능이 아닌 것은?(2020년 09월)
     1. 프로세스 생성, 종료
     2. 사용자 인터페이스
     3. 기억 장치 할당, 회수
     4. 파일 시스템 관리

     정답 : []
     정답률 : 71%
     <문제 해설>
커널(kernel) : 프로세스(CPU스케줄링)관리, 기억장치 관리, 파일관리, 입출력 관리, 프로세스간 통신, 데이터 전송 및 변환 등 여러가지 가능 수행

쉘(shell) : 시스템과 사용자간의 인터페이스 담당, 명령어 해석기
[해설작성자 : 뭉밍몽]

65. 기억공간이 15K, 23K, 22K, 21K 순으로 빈 공간이 있을 때 기억장치 배치 전략으로 “First Fit”을 사용하여 17K의 프로그램을 적재할 경우 내부단편화의 크기는 얼마인가?(2021년 03월)
     1. 5K
     2. 6K
     3. 7K
     4. 8K

     정답 : []
     정답률 : 84%
     <문제 해설>
순서대로

15k, 23k, 22k, 21k 중에서 17k가 들어갈 수 있는 공간 중
가장 처음에 만나는 공간은 23k이므로
23k - 17k = 6k
정답은 2번 6k
[해설작성자 : 밀양금성컴퓨터학원 ☎055-354-3344]

First Fit: 들어갈 수 있는 공간 중 가장 먼저
Best Fit: 최적 (단편화 제일 작은 공간)
Worst Fit: 최악 (단편화 제일 큰 공간)
[해설작성자 : 고앵고앵]

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

    

     1. A→B→C→D
     2. A→C→B→D
     3. D→B→C→A
     4. D→A→B→C

     정답 : []
     정답률 : 62%
     <문제 해설>
HRN 방식의 우선순위 산정 공식
(대기시간+서비스시간)/서비스 시간 (값이 클 수록 우선순위가 높다.)


따라서
A의 우선순위 (5+20)/20 = 1.25
B의 우선순위 (40+20)/20 = 3
C의 우선순위 (15+45)/45 = 1.333333
D의 우선순위 (20+2)/2 = 11

순서는 D B C A
[해설작성자 : comcbt.com 이용자]

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

[오류 신고 내용]
답이 없음.
HRRN(HRN)방식에서 우선순위를 산정하는 경우에는 다음작업이 시작하기 전마다 매번 재계산을 하기 때문에, 이를 고려하여야함.

따라서 각 작업마다 회차별로 계산이 필요함.

1회차
A의 우선순위 (5+20)/20=1.25
B의 우선순위 (40+20)/20=3.0
C의 우선순위 (15+45)/45=1.33
D의 우선순위 (20+2)/2=11.0
따라서 첫 번째 작업은 D가 실행됨.

2회차에서는 D가 실행되는 동안 대기한 시간을 포함하여 계산함.
A의 우선순위 (2+5+20)/20=1.35
B의 우선순위 (2+40+20)/20=3.1
C의 우선순위 (2+15+45)/45=1.378
2번 순서는 B가실행

3회차
A의 우선순위 (20+2+5+20)/20=2.35
C의 우선순위 (20+2+15+45)/45=1.82
A가 우선, 마지막으로 C가 실행되며

정답은 D B A C가 됨.
[해설작성자 : BlueNyang]

67. TCP/IP 계층 구조에서 IP의 동작 과정에서의 전송 오류가 발생하는 경우에 대비해 오류 정보를 전송하는 목적으로 사용하는 프로토콜은?(2022년 03월)
     1. ECP(Error Checking Protocol)
     2. ARP(Address Resolution Protocol)
     3. ICMP(Internet Control Message Protocol)
     4. PPP(Point-to-Point Protocol)

     정답 : []
     정답률 : 50%
     <문제 해설>
ARP : IP 네트워크 상에서 IP주소를 MAC주소로 변환하는 프로토콜
[해설작성자 : 2트를 노려야하나..]

ICMP : IP와 조합하여 통신 중에 발생하는 오류의 처리와 전송 경로 변경 등을 위한 제어 메시지를 관리하는 역할을 하는 프로토콜
ARP : 호스트의 IP주소를 호스트와 연결된 네트워크 접속 장치의 물리적 주소로 바꾸는 역할을 하는 프로트콜
PPP : 점대점 데이터링크를 통해 3계층 프로토콜들을 캡슐화시켜 전송하는 프로토콜
[해설작성자 : 주노쿠]

ECP(Error Checking Protocol)는 없음
[해설작성자 : 댕복치 ]

68. UNIX 운영체제에 관한 특징으로 틀린 것은?(2022년 04월)
     1. 하나 이상의 작업에 대하여 백그라운드에서 수행이 가능하다.
     2. Multi-User는 지원하지만 Multi-Tasking은 지원하지 않는다.
     3. 트리 구조의 파일 시스템을 갖는다.
     4. 이식성이 높으며 장치 간의 호환성이 높다.

     정답 : []
     정답률 : 71%
     <문제 해설>
UNIX 운영체제
주로 서버용 컴퓨터에서 사용됨
time sharing system을 위해 설계된 대화식 운영체제
c언어로 작성되어 이식성 높고, 장치간 호환성 높다.
Multi user, Multi tasking 모두 지원.
트리 구조의 파일시스템
[해설작성자 : 합격하자]

69. 다음과 같은 형태로 임계 구역의 접근을 제어하는 상호배제 기법은?(2022년 03월)

    

     1. Dekker Algorithm
     2. Lamport Algorithm
     3. Peterson Algorithm
     4. Semaphore

     정답 : []
     정답률 : 55%
     <문제 해설>
1. 데커의 알고리즘
- 프로세스가 두개일때 상호 배제를 보장하는 최초의 알고리즘
- flag와 turn 변수를 사용하여 조정
2. 램퍼드 알고리즘
- 프로세스 n개의 상호 배제 문제를 해결한 알고리즘
- 프로세스에게 고유한 번호를 부여하고, 번호를 기준으로 우선순위를 정하여 우선순위가 높은 프로세스가 먼저 임계구역에 진입하도록 구현.
3. 피터슨 알고리즘
- 프로세스가 두개일때 상호 배제를 보장, 데커의 알고리즘과 유사하지만 상대방에게 진입 기회를 양보한다는 차이가 있고 보다 더 간단하게 구현됨
4. 세마포어
- 공유된 자원의 데이터 혹은 임계영역 등에 따라 여러 Process 혹은 Thread가 접근하는 것을 막아줌(동기화 대상이 하나 이상)
[해설작성자 : 강썬]

P(S)는 자원 할당, V(S)는 자원 반환을 의미.
문제의 식을 몰라도 개념을 알고있다면 풀이를 통해 답을 유추할 수 있음.

P(S) : while S <= 0 do skip;
    => S(자원) 이 0 이하일 때 skip(반복문에서 대기) => 프로세스 대기
S := S - 1;
    => S > 0 이 되면 (자원이 생기면) S := S - 1 (프로세스에 자원 할당, 자원 1 감소)
V(S) : S := S + 1;
    => S(자원) + 1 (자원 반환)

P(S) 연산을 통해 자원유무를 판단하여 프로세스에 자원 할당 혹은 프로세스 대기
V(S) 연산을 통해 작업이 끝난 프로세스가 자원을 반환
    => 공유자원에대한 접근제한을 의미하므로 세마포어 알고리즘.
[해설작성자 : 밈]

70. C Class에 속하는 IP address는?(2021년 08월)
     1. 200.168.30.1
     2. 10.3.2.1
     3. 225.2.4.1
     4. 172.16.98.3

     정답 : []
     정답률 : 58%
     <문제 해설>
A class에 속하는 ip 주소 범위: 0.0.0.0 ~ 127.255.255.255
B class에 속하는 ip 주소 범위: 128.0.0.0 ~ 191.255.255.255
C class에 속하는 ip 주소 범위: 192.0.0.0 ~ 223.255.255.255

D class와 E class는 각각 멀티캐스트용, 연구용으로 사용됩니다.
D class ip 주소 범위: 224.0.0.0 ~ 239.255.255.255
E class ip 주소 범위: 240.0.0.0 ~ 255.255.255.255
[해설작성자 : ㄱㄱㅇ]

A = 0000 0000 ~ 0111 1111
B = 1000 0000 ~ 1011 1111
같은 방식으로
ABCD E111로 외우면 될듯합니당
[해설작성자 : ㅋㅋ루삥뽕]

A class -> B class = 128 차이
B class -> C class = 64 차이
C class -> D class = 32 차이
D class -> E class = 16 차이
[해설작성자 : 웅가리]

00000000 A 0
10000000 B 128
11000000 C 192
11100000 D 224
11110000 E 240
쉽게 2진법으로 하면 이해가 쉬움
[해설작성자 : 개발못하는개발자]

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

    

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

     정답 : []
     정답률 : 72%
     <문제 해설>
0부터 시작해서 4보다 작은 정수
+는 1씩 증가
[해설작성자 : 낼시험]

72. 스레드(Thread)에 대한 설명으로 옳지 않은 것은?(2020년 06월)
     1. 한 개의 프로세스는 여러 개의 스레드를 가질 수 없다.
     2. 커널 스레드의 경우 운영체제에 의해 스레드를 운용한다.
     3. 사용자 스레드의 경우 사용자가 만든 라이브러리를 사용하여 스레드를 운용한다.
     4. 스레드를 사용함으로써 하드웨어, 운영체제의 성능과 응용 프로그램의 처리율을 향상시킬 수 있다.

     정답 : []
     정답률 : 75%
     <문제 해설>
프로세스 내에서의 작업단위로 여러 자원을 할당받아 실행하는 프로그램 단위
한 개의 프로세스에는 하나 이상의 스레드가 존재
커널 스레드 : 운영체제 커널에 의해 스레드 운영 / 구현 쉬움 / 속도 느림
사용자 스레드 : 사용자가 만든 라이브러리를 사용해 스레드 운용 / 속도 빠름 / 구현 어렵
하드웨어 운용체제 성능과 처리율을 향상 가능
응용프로그램 응답시간 단축 가능
실행 환경을 공유시켜 기억장소 낭비 줄어듬
[해설작성자 : 거상 주작섭]

73. 결합도(Coupling)에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 데이터 결합도(Data Coupling)는 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
     2. 내용 결합도(Content Coupling)는 하나의 모듈이 직접적으로 다른 모듈의 내용을 참조할 때 두 모듈은 내용적으로 결합되어 있다고 한다.
     3. 공통 결합도(Common Coupling)는 두 모듈이 동일한 전역 데이터를 접근한다면 공통결합 되어 있다고 한다.
     4. 결합도(Coupling)는 두 모듈간의 상호작용, 또는 의존도 정도를 나타내는 것이다.

     정답 : []
     정답률 : 52%
     <문제 해설>
스탬프 결합도
- 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
- 두 모듈이 동일한 자료 구조를 조회함
[해설작성자 : 도라예몽]

자료 결합도(data coupling)
어떤 모듈이 다른 모듈을 호출하면서 매게변수나 인수를 넘겨주고, 호출 받은 모듈은 받은 데이터에 대한 처리결과를 다시 돌려주는 방식
[해설작성자 : comcbt.com 이용자]

74. 다음 설명의 ㉠과 ㉡에 들어갈 내용으로 옳은 것은?(2021년 03월)

    

     1. ㉠ : Paging, ㉡ : Segmentation
     2. ㉠ : Segmentation, ㉡ : Allocation
     3. ㉠ : Segmentation, ㉡ : Compaction
     4. ㉠ : Paging, ㉡ : Linking

     정답 : []
     정답률 : 81%
     <문제 해설>
가상기억장치의 구현 기법에는,
프로그램과 주기억장치의 영역을 '동일한 크기'로 나누는 페이징(Paging)기법과
프로그램을 '다양한 크기'로 나누는 세그먼테이션(Segmentation)기법이 있다.
[해설작성자 : 또르링]

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. 4개의 페이지를 수용할 수 있는 주기억장치가 있으며, 초기에는 모두 비어 있다고 가정한다. 다음의 순서로 페이지 참조가 발생할 때, LRU 페이지 교체 알고리즘을 사용할 경우 몇 번의 페이지 결함이 발생하는가?(2022년 04월)

    

     1. 5회
     2. 6회
     3. 7회
     4. 8회

     정답 : []
     정답률 : 55%
     <문제 해설>
1 | 1 [결함(부재)]
2 | 1 2 [결]
3 | 1 2 3 [결]
1 | 1 2 3 [적재되어 있는 1 참조]
2 | 1 2 3 [적재되어 있는 2 참조]
4 | 1 2 3 4 [결]
1 | 1 2 3 4 [적재되어 있는 1 참조]
2 | 1 2 3 4 [적재되어 있는 2 참조]
5 | 1 2 5 4 [결], [최근까지 남아있었던(LRU기법) 3을 제거, 5 적재]
총 결함 발생 횟수는 5회입니다.
[해설작성자 : COOKIE]

마지막 부분을 가장 오랫동안 사용하지 않은 페이지 제거 (LRU 기법)로 수정하면 더 좋을 것 같습니다.
[해설작성자 : boan]

77. 어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어신호를 이용하여 통신하는 경우이며, 하위 모듈에서 상위 모듈로 제어신호가 이동하여 상위 모듈에게 처리 명령을 부여하는 권리 전도현상이 발생하게 되는 결합도는?(2020년 08월)
     1. data coupling
     2. stamp coupling
     3. control coupling
     4. common coupling

     정답 : []
     정답률 : 77%
     <문제 해설>

문제 핵심 : 제어하기 위한 목적 / 권리 전도현상
= 제어 결합도 control coupling

data coupling ( = 자료 결합도 )
중요 : 자료요소로만 구성 / 처리값을 다시 돌려줌

stamp coupling ( = 스탬프 결합도 )
중요 : 모듈 간 자료 구조 전달될 때 변화가 생기면 그것을 조회하는 모든 모듈에 영향을 미침

common coupling ( = 공통 결합도 )
중요 : 공유되는 데이터 영역을 여러 모듈이 사용 / 공통 영역 내용 변경 시 영역을 사용하는 모든 모듈에 영향
[해설작성자 : !]

78. 다음 중 페이지 교체(Page Replacement)알고리즘이 아닌 것은?(2021년 08월)
     1. FIFO(First-In-First-Out)
     2. LUF(Least Used First)
     3. Optimal
     4. LRU(Least Recently Used)

     정답 : []
     정답률 : 45%
     <문제 해설>
페이지 교체 알고리즘의 종류

OPT - Optimal : 앞으로 가장 오랫동안 사용되지 않을 페이지 교체
FIFO - First In First Out
LRU - Least Recently Used : 가장 오랫동안 사용되지 않은 페이지 교체
LFU - Least Frequently Used : 참조 횟수가 가장 적은 페이지 교체
MFU - Most Frequently used : 참조 횟수가 가장 많은 페이지 교체
NUR - Not Used Recently : 최근에 사용하지 않은 페이지 교체
[해설작성자 : 몰]

79. 자바스크립트(JavaScript)와 관련한 설명으로 틀린 것은? (문제 오류로 가답안 발표시 2번으로 발표되었지만 확정 답안 발표시 모두 정답처리 되었습니다. 여기서는 가답안인 2번을 누르면 정답 처리 됩니다.)(2021년 05월)
     1. 프로토타입(Prototype)의 개념이 존재한다.
     2. 클래스 기반으로 객체 상속을 지원한다.
     3. Prototype Link와 Prototype Object를 활용할 수 있다.
     4. 객체지향 언어이다.

     정답 : []
     정답률 : 86%
     <문제 해설>
객체 기반으로 클래스 상속을 지원한다
[해설작성자 : 호롤라]

자바스크립트는 클래스가 없다. 대신 프로토타입을 이용해 상속을 흉내내도록 구현함
[해설작성자 : 합격하자]

Es6 부턴 클래스 지원함
문제 자체가 오류
[해설작성자 : Race]

ES6부터 클래스 문법을 지원하게 되었으나, 내부적으로는 프로토타입으로 구현되므로 "클래스 기반"이라는 표현에 오류가 있다.
[해설작성자 : 사자희]

80. 모듈화(Modularity)와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 시스템을 모듈로 분할하면 각각의 모듈을 별개로 만들고 수정할 수 있기 때문에 좋은 구조가 된다.
     2. 응집도는 모듈과 모듈 사이의 상호의존 또는 연관 정도를 의미한다.
     3. 모듈 간의 결합도가 약해야 독립적인 모듈이 될 수 있다.
     4. 모듈 내 구성 요소들 간의 응집도가 강해야 좋은 모듈 설계이다.

     정답 : []
     정답률 : 55%
     <문제 해설>
응집도 : 하나의 모듈이 하나의 기능을 수행하는 요소들간의 연관성 척도, 독립적인 모듈이 되기 위해서는 응집도가 강해야 한다.(결합도는 약해야 한다.)
[해설작성자 : 수도공고갤러리 갤주]

결합도: 모듈과 모듈 사이의 상호의존 또는 연관 정도를 의미한다.
응집도: 모듈이 독립적인 기능으로 정의되어 있는 정도를 의미한다.
[해설작성자 : 칼방이]

81. 이용자가 인터넷과 같은 공중망에 사설망을 구축하여 마치 전용망을 사용하는 효과를 가지는 보안 솔루션은?(2020년 09월)
     1. ZIGBEE
     2. KDD
     3. IDS
     4. VPN

     정답 : []
     정답률 : 83%
     <문제 해설>
4장 보안 솔루션-방화벽종류

1.IDS : 침입 탐지 시스템
2.VPN : 가상 사설 통신망 (네트워크 암호화)

KDD는 한국에 무슨 협회
ZIGBEE는 저전력 라디오를 이용한 개인 통신망
[해설작성자 : 정알못]

KDD : 데이터베이스 속의 지식 발견, knowledge-discovery in databases
[해설작성자 : 포아송]

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

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

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

83. 구글의 구글 브레인 팀이 제작하여 공개한 기계 학습(Machine learning)을 위한 오픈소스 소프트웨어 라이브러리는?(2021년 08월)
     1. 타조(Tajo)
     2. 원 세그(One Seg)
     3. 포스퀘어(Foursquare)
     4. 텐서플로(TensorFlow)

     정답 : []
     정답률 : 74%
     <문제 해설>
타조(Tajo) : 하둡(Hadoop) 기반 데이터웨어하우스 시스템
원 세그(One Seg) : 일본과 브라질에서 상용 중인 디지털 TV 방송 기술의 일종 (주로 모바일 기기를 대상으로)
포스퀘어(Foursquare) : 위치 기반 소셜 네트워크 서비스
텐서플로(Tensorflow) : 2015년 오픈소스로 공개된 구글 브레인 팀의 두 번째 기계 학습(Machine Learning) 시스템
[해설작성자 : 동그랑땡]

84. 다음 내용이 설명하는 스토리지 시스템은?(2022년 03월)

    

     1. DAS
     2. NAS
     3. BSA
     4. NFC

     정답 : []
     정답률 : 71%
     <문제 해설>
직접 연결 저장장치(Direct-attached storage,DAS)
Network Attached Storage. 네트워크 결합 스토리지
근거리 무선 통신(NFC)
[해설작성자 : 58]

85. CMM(Capability Maturity Model) 모델의 레벨로 옳지 않은 것은?(2020년 06월)
     1. 최적단계
     2. 관리단계
     3. 정의단계
     4. 계획단계

     정답 : []
     정답률 : 49%
     <문제 해설>
초기단계(initial) / 반복단계 (Repeatable) / 정의단계 (Defined) / 관리단계 (Managed)Tip. 정량적 프로세스 관리가 Keyworkd / 최적단계 (Optimizing)/
[해설작성자 : 정보처리Knight_MR.K]

86. 소프트웨어 개발 프레임워크와 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장 받을 수 있게하는 개발 소프트웨어이다.
     2. 개발해야 할 애플리케이션의 일부분이 이미구현되어 있어 동일한 로직 반복을 줄일 수있다.
     3. 라이브러리와 달리 사용자 코드가 직접호출하여 사용하기 때문에 소프트웨어 개발프레임워크가 직접 코드의 흐름을 제어할수 없다.
     4. 생산성 향상과 유지보수성 향상 등의 장점이 있다.

     정답 : []
     정답률 : 86%
     <문제 해설>
소프트웨어 개발 프레임워크(Framework)
- 소프트웨어 개발 프레임워크는 소프트웨어 개발에 공통적으로 사용되는 구성 요소와 아키텍처를 일반화
- 손쉽게 구현할 수 있도록 여러가지 기능들을 제공해주는 반제품 형태의 소프트웨어 시스템

특성
- 모듈화
    : 캡슐화를 통해 모듈화를 강화, 설계 및 구현의 변경에 따른 영향을 최소화
    : 개발 표준에 의한 모듈화로 인해 유지 보수가 용이
- 재사용
    : 재사용 가능한 모듈들을 제공함으로써 예산 절감, 생산성 향상, 품질 보증
- 확장성
    : 다형성을 통한 인터페이스 확장이 가능하여 다양한 형태와 기능을 가진 애플리케이션 개발이 가능
- 제어 반전
    :    외부 라이브러리의 코드를 호출해 이용, 제어를 프레임워크에 넘김으로써 생산성을 향상
[해설작성자 : 한비로]

사용자 코드가 직접 호출하지 않음 프레임 워크의 특성 중 제어의 역흐름(반전)에 반대됨
[해설작성자 : ㅈㅂ]

87. 크래커가 침입하여 백도어를 만들어 놓거나, 설정 파일을 변경했을 때 분석하는 도구는?(2020년 06월)
     1. trace
     2. tripwire
     3. udpdump
     4. cron

     정답 : []
     정답률 : 70%
     <문제 해설>
Cron : 작업 예약 스케줄러
- (초) / 분 / 일 / 시간 / 월 / 요일 / (년도)

[시스템 침입탐지 및 무결성 도구]
Tripwire : 크래커가 침입하여 백도어를 만들어 놓거나 설정 파일을 변경했을 때 분석하는 도구
- MD5, CRC-32, SHA 등의 알고리즘을 사용
Aide : Tripwire를 대신할 수 있는 도구로 파일의 무결성을 검사하는데 사용
sXid : MD5 체크섬을 사용하여 suid, sgid파일을 추적 루트키트가 설치되어있는지 검사. Cron 작업형태로 수행. 자동으로 파일을 추적하고 경고
Claymore : 침입탐지 및 무결성 모니터링 도구로 크론테이블을 이용하여 주기적으로 파일시스템의 변조유무를 확인하고 변조되었을 경우 관리자에게 메일로 통보해 주는 기능
Samhain : 시스템의 무결성을 점검하는 도구로 여러 시스템을 관리할 수 있는 수단을 제공한다. 모니터링 에이전트와 중앙 로그서버로 구성
Slipwire : 파일시스템의 무결성을 검사하는 도구로 파일의 SHA-1 hashes값을 비교하여 변경될 경우 사용자에게 경고하는 기능
Fcheck : 유닉스 파일시스템의 변조유무를 점검하기 위한 PERL script 도구로 syslog. console 등로 관리자에게 파일시스템 변화를 경보해 준다. tripwire와 비슷한 도구로 보다 설치 및 운영이 쉽다.

*Cron하고 Tripwire은 많이 나오는 개념이고 기출문제도 많이 출현하였으니 이 두개만 잘 알아놓아도 된다.


Tripwire : 크래커가 침입하여 시스템에 백도어를 만들어 놓거나 설정 파일을 변경해 놓았을 때 이러한 사실을 알 수 있게 분석하는 도구
ping : 인터넷으로 접속하려는 원격 호스트가 정상적으로 운영되고 있는지를 확인하는 진단 목적으로 사용하는 명령어
tcpdump : 네트워크 인터페이스들 거치는 패킷의 내용을 출력해주는 프로그램
cron : 유닉스/리눅스에서 시간 기반으로 정해진 작업을 스케줄링 하기 위한 소프트웨어 유틸리티
netcat : TCP, UDP 프로토콜을 사용하는 네트워크 연결에서 데이터를 읽고 쓰는 유틸리티 프로그램
[해설작성자 : 알비레오]

88. 소프트웨어 개발 프레임워크를 적용할 경우 기대효과로 거리가 먼 것은?(2020년 06월)
     1. 품질보증
     2. 시스템 복잡도 증가
     3. 개발 용이성
     4. 변경 용이성

     정답 : []
     정답률 : 86%
     <문제 해설>
프레임워크 : 특정 기능을 수행하기 위해 필요한 클래스 or 인터페이스 등을 모아둔 집합체
맨 땅에 헤딩하는게 복잡할까요 ? 정리된 것들이 사용하는게 복잡할까요?
[해설작성자 : 거상 주작섭]

89. 빅데이터 분석 기술 중 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관례를 규명하여 일정한 패턴을 찾아내는 기법은?(2020년 08월)
     1. Data Mining
     2. Wm-Bus
     3. Digital Twin
     4. Zigbee

     정답 : []
     정답률 : 80%
     <문제 해설>
Wm-Bus:무선 미터버스, 산업용 무선 프로토콜
Digital Twin:컴퓨터 시뮬레이션(가상화)을 통해 결과를 예측하는 기술
Zigbee:직비, 무선 메시 네트워크의 표준(저가, 저전력)
[해설작성자 : ㅇ]

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

90. 다음에서 설명하는 IT 스토리지 기술은?(2021년 08월)

    

     1. Software Defined Storage
     2. Distribution Oriented Storage
     3. Network Architected Storage
     4. Systematic Network Storage

     정답 : []
     정답률 : 55%
     <문제 해설>
두번째 단락의 '컴퓨팅 소프트웨어로(Software) 규정하는(Defined) 데이터 스토리지 체계이며,'
=> Software Defined Storage
[해설작성자 : 3.14]

- 소프트웨어 정의 스토리지 (Software-defined storage) (SDS) : 스토리지에 가상화를 적용, 소프트웨어로 전체 스토리지 자원을 관리하여 하나의 저장장치럼 사용할 수 있도록 하는 기법
[해설작성자 : 눈딱감꼬낙하아아]

91. 소프트웨어 비용 추정모형(estimation models)이 아닌 것은?(2020년 09월)
     1. COCOMO
     2. Putnam
     3. Function-Point
     4. PERT

     정답 : []
     정답률 : 64%
     <문제 해설>
PERT는 프로젝트 일정 관리 기법입니다.
[해설작성자 : 오씨]

92. 다음이 설명하는 용어로 옳은 것은?(2020년 06월)

    

     1. 하둡(Hadoop)
     2. 비컨(Beacon)
     3. 포스퀘어(Foursquare)
     4. 맴리스터(Memristor)

     정답 : []
     정답률 : 77%
     <문제 해설>
[DB]
- 하둡 : 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼
- 디지털 아카이빙 : 디지털 정보 자원을 장기적으로 보존하기 위한 작업
- 타조 : 우리나라가 주도적으로 개발 중인 하둡 기반의 분산 데이터 웨어하우스 프로젝트
- 데이터 다이어트 : 데이터를 삭제하는 것이 아닌 압축하고 중복된 정보를 배제하고 새로운 기분에 따라 나누어 저장하는 작업
- 메타 데이터 : 일련의 데이터를 정의하고 설명해주는 데이터

[네트워크]
- 비콘 : 블루투스 기반의 근거리 무선통신 장치
- NFC : 고주파를 이용한 근거리 무선 통신 기술
- NDN : 콘텐츠 자체의 정보와 라우터 기능만으로 데이터 전송을 수행하는 기술
- NGN : 유선망 기반의 차세대 통신망
- 포스퀘어 : 위치 기반 소셜 네트워크 서비스

[HW]
- 엠디스크 : 한 번의 기록만으로도 자료를 영구 보관할 수 있는 광 저장 장치
- 맴리스터 : 메모리와 레지스터의 합성어로 전류의 방향과 양 등 기존의 경험을 모두 기억하는 소자. 차세대 메모리 기술 (ex: M.2)
[해설작성자 : comcbt.com 이용자]

데이터 다이어트 : 데이터를 삭제하는 것이 아닌 압축하고 중복된 정보를 배제하고 새로운 기분에 따라 나누어 저장하는 작업
기분 -> 기준
[해설작성자 : 정보짱짱맨]

93. 소인수 분해 문제를 이용한 공개키 암호화 기법에 널리 사용되는 암호 알고리즘 기법은?(2020년 06월)
     1. RSA
     2. ECC
     3. PKI
     4. PEM

     정답 : []
     정답률 : 79%
     <문제 해설>
1. RSA : MIT의 라이베스트,샤미르,애들먼에 의해 제안된 공개키 암호화 알고리즘
     큰 숫자를 소인수분해 하기 어렵다는 것에 기반하여 만들어짐 / 공개키와 비밀키 사용
2. ECC : 오류 정정 코드 메모리 ( 데이터 손상 감지 및 수정하는 기억장치 / 이거 설명하는거 아닐 수도 /
3. PKI : 공개키 기반 구조
4. PEM : SSL 인증서 종류
[해설작성자 : 거상 주작섭]

[블록 암호] - 대칭키
DES : 구 미국 표준. 56비트 키를 사용
AES :    DES의 보안 취약점을 대체하기 위해 고안된 미국 표준 방식으로 현재 표준 대칭키 암호화 기법
ARIA : SEED 이후로 나온 대한민국의 국가 암호 표준(AES와 동일)

[공개키 암호] - 비대칭키
RSA : 공개키 암호화 기법의 사실상 표준. 매우 큰 수의 소인수분해가 수학적으로 어렵다는 이론에 기반
ECC : RSA의 키 길이가 너무 긴 결점을 보완하기 위해 타원곡선함수를 이용한 암호화 기법
DSS(DSA) : 디지털 서명 표준 인증서 서비스

94. Windows 파일 시스템인 FAT와 비교했을 때의 NTFS의 특징이 아닌 것은?(2022년 03월)
     1. 보안에 취약
     2. 대용량 볼륨에 효율적
     3. 자동 압축 및 안정성
     4. 저용량 볼륨에서의 속도 저하

     정답 : []
     정답률 : 57%
     <문제 해설>
- FAT
        - DOS때부터 사용되던 윈도우의 파일시스템
        - 저용량에 적합, 호환성이 좋음,    저장가능한 파일의 최대크기가 4GB
- NTFS
        - FAT시스템을 대체하기 위해 개발된 윈도우 파일 시스템
        - 사용자마다 다른 보안 적용 가능 즉 보안이 FAT보다 뛰어남
        - 대용량 저장 가능 및 안정성이 뛰어남
[해설작성자 : 강썬]

95. DES는 몇 비트의 암호화 알고리즘인가?(2022년 03월)
     1. 8
     2. 24
     3. 64
     4. 132

     정답 : []
     정답률 : 75%
     <문제 해설>
DES의 키는 7비트마다 오류 검출을 위한 정보가 1비트씩 들어가기 때문에 실질적으로는 56비트이다.
추가적으로 AES는 암호화 알고리즘은 AES-128, AES-192, AES-256로 나뉘어지며 숫자는 비트수 이다.
[해설작성자 : 구구구구]

DES는 블록크기는 64bit 이고    키 길이가 56비트이다.
[해설작성자 : 이직 하고 싶다]

96. 소프트웨어공학에 대한 설명으로 거리가 먼 것은?(2021년 03월)
     1. 소프트웨어공학이란 소프트웨어의 개발, 운용, 유지보수 및 파기에 대한 체계적인 접근 방법이다.
     2. 소프트웨어공학은 소프트웨어 제품의 품질을 향상시키고 소프트웨어 생산성과 작업 만족도를 증대시키는 것이 목적이다.
     3. 소프트웨어공학의 궁극적 목표는 최대의 비용으로 계획된 일정보다 가능한 빠른 시일 내에 소프트웨어를 개발하는 것이다.
     4. 소프트웨어공학은 신뢰성 있는 소프트웨어를 경제적인 비용으로 획득하기 위해 공학적 원리를 정립하고 이를 이용하는 것이다.

     정답 : []
     정답률 : 89%
     <문제 해설>
"최대의 비용으로"가 아닌 반대가 맞습니다.
[해설작성자 : sextuple_U]

소프트웨어공학의 궁극적 목표는 "최소의 비용"으로 계획된 일정보다 가능한 빠른 시일 내에 소프트웨어를 개발하는 것이다.
[해설작성자 : 합격]

97. 컴퓨터 운영체제의 커널에 보안 기능을 추가한 것으로 운영체제의 보안상 결함으로 인하여 발생 가능한 각종 해킹으로부터 시스템을 보호하기 위하여 사용되는 것은?(2020년 09월)
     1. GPIB
     2. CentOS
     3. XSS
     4. Secure OS

     정답 : []
     정답률 : 81%
     <문제 해설>
GPIB : EEE-488은 단거리 디지털 통신 버스이다. 1960년대 후반 전자 측정 장비에 사용되었으며 지금도 사용되고 있다. IEEE-488은 HP-IB(Hewlett-Packard Interface Bus)로서 개발되었으며, 보통 GPIB (General Purpose Interface Bus)로 불린다.

CentOS : 센트OS(영어: CentOS)는 센트OS 프로젝트에서 레드햇 제휴로 개발한 컴퓨터 운영 체제이다.

XSS : 웹 클라이언트가 제공하는 HTTP 쿼리 매개 변수 (예 : HTML 양식 제출)에서 적절하지 않고, 구문 분석 및 해당 사용자에 대한 결과의 페이지를 표시하는 공격 기법

출처 : https://ko.wikipedia.org/
[해설작성자 : 오씨]

98. 상향식 비용 산정 기법 중 LOC(원시 코드 라인 수) 기법에서 예측치를 구하기 위해 사용하는 항목이 아닌 것은?(2022년 03월)
     1. 낙관치
     2. 기대치
     3. 비관치
     4. 모형치

     정답 : []
     정답률 : 71%
     <문제 해설>
LOC 예측치를 구하기 위해서는 낙관치, 비관치, 기대치가 필요하다.
[해설작성자 : 한번에제발]

예측치 = (낙관치+비관치+기대치*4)/6
[해설작성자 : 이직마려움]

99. 실무적으로 검증된 개발보안 방법론 중 하나로써 SW보안의 모범 사례를 SDLC(Software Development Life Cycle)에 통합한 소프트웨어 개발 보안 생명주기 방법론은?(2020년 08월)
     1. CLASP
     2. CWE
     3. PIMS
     4. Seven Touchpoints

     정답 : []
     정답률 : 47%
     <문제 해설>
1. CLASP - Comprehensive, Lightweight Application Security Process. 소프트웨어 개발 생명주기(SDLC) 초기단계에 보안강화를 목적으로 하는 정형화된 프로세스로써, 활동중심·역할기반의 프로세스로 구성된 집합체로, 이미 운영중인 시스템에 적용하기 적합합니다.
2. CWE - Common Weakness Enumeration. 주요 보안 취약점, 보안 문제를 정리하는 프로젝트입니다.
3. PIMS - Personal Information Management System. 개인정보 보호관리체계입니다.
4. Seven Touchpoints - 소프트웨어 개발 생명주기(SDLC)의 각 단계에 관련된 7가지의 보안 강화 활동을 개발자에게 집중적으로 관리하도록 요구하여 실무적으로 검증된 개발보안 방법론입니다.
[해설작성자 : 반스트]

100. 공개키 암호에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 10명이 공개키 암호를 사용할 경우 5개의 키가 필요하다.
     2. 복호화키는 비공개 되어 있다.
     3. 송신자는 수신자의 공개키로 문서를 암호화한다.
     4. 공개키 암호로 널리 알려진 알고리즘은 RSA가 있다.

     정답 : []
     정답률 : 74%
     <문제 해설>
키 개수는
비밀키(대칭키)는 N(N-1)/2 이고
공개키(비대칭키) 2N개 입니다.
[해설작성자 : 밀양금성컴퓨터학원 ☎055-354-3344]


정 답 지

정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(8512014)

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


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

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


1과목 : 소프트웨어 설계


1. 요구사항 분석 시에 필요한 기술로 가장 거리가 먼 것은?(2020년 08월)
     1. 청취와 인터뷰 질문 기술
     2. 분석과 중재기술
     3. 설계 및 코딩 기술
     4. 관찰 및 모델 작성 기술

     정답 : []
     정답률 : 84%
     <문제 해설>
요구사항 개발 프로세스 : 도출 → 분석 → 명세 → 확인
요구사항 도출 단계 주요 기법은 인터뷰, 설문, 브레인스토밍 등이 있어 청취와 인터뷰 질문 기술이 필요함.

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

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

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

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

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

2. 코드 설계에서 일정한 일련번호를 부여하는 방식의 코드는?(2020년 06월)
     1. 연상 코드
     2. 블록 코드
     3. 순차 코드
     4. 표의 숫자 코드

     정답 : []
     정답률 : 83%
     <문제 해설>
연상코드 : 코드화 대상 항목의 명칭이나 약호와 관계있는 숫자나 문자, 기호를 이용하여 코드를 부여하는 방법

블록코드 : 코드화 대상 항목 중에서 공통성이 있는 것끼리 블록으로 구분하고, 각 블록 내에서 일련번호를 부여하는 방법 (=구분코드)

표의 숫자 코드 : 코드화 대상 항목의 성질, 물리적 수치를 그대로 코드에 적용시키는 방법 (=유효숫자코드)
[해설작성자 : 와우갓띵]

1. 연상 코드: 항목의 명칭이나 약호와 관계 있는 숫자, 문자, 기호를 이용하여 코드를 부여하는 방법
2. 블록 코드: 대상 항목에서 공통적인 것을 블록으로 구분하고 블록 내에 일련 번호를 부여하는 방법
3. 순차 코드: 일정 기준에 따라 최초의 자료부터 순차적으로 일련번호를 부여하는 방법
4. 표의 숫자 코드: 길이 넓이 부피 등 항목의 성질의 물리적인 수치를 그대로 코드에 적용시키는 방법
[해설작성자 : 합격현]

3. 익스트림 프로그래밍에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 대표적인 구조적 방법론 중 하나이다.
     2. 소규모 개발 조직이 불확실하고 변경이 많은 요구를 접하였을 때 적절한 방법이다.
     3. 익스트림 프로그래밍을 구동시키는 원리는 상식적인 원리와 경험을 최대한 끌어 올리는 것이다.
     4. 구체적인 실천 방법을 정의하고 있으며, 개발 문서 보다는 소스코드에 중점을 둔다.

     정답 : []
     정답률 : 62%
     <문제 해설>
1. 구조적 방법론이 아니라 애자일 방법론 중 하나이다.
[해설작성자 : 지나가는 행인]

구조적 방법론은 계획 중심의 접근 방식을 따르는 반면, 익스트림 프로그래밍은 반복적이고 점진적인 개발을 강조하여 변화에 유연하게 대응할 수 있도록 설계된 방법론으로 차이가 있다.
[해설작성자 : 노작가]

4. 소프트웨어 설계에서 사용되는 대표적인 추상화(Abstraction) 기법이 아닌 것은?(2021년 08월)
     1. 자료 추상화
     2. 제어 추상화
     3. 과정 추상화
     4. 강도 추상화

     정답 : []
     정답률 : 80%
     <문제 해설>
소프트웨어 설계에 사용되는 대표적인 3가지 추상화 기법
-제어 추상화: 제어의 정확한 메커니즘을 정의하지 않고 원하는 효과를 정하는데 이용하는 방법
-기능 추상화: 입력 자료를 출력자료로 변환하는 과정을 추상화하는 방법
-자료 추상화: 자료와 자료에 적용될 수 있는 기능을 함께 정의함으로써 자료 객체를 구성하는 방법
[해설작성자 : 오늘월급]

추상화(Abstraction) : 문제의 전체적이고 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화시켜 나가는 것.
- 과정추상화 : 자세한 수행 과정을 정의하지 않고, 전반적인 흐름만 파악할 수 있게 설계하는 방법
- 데이터 추상화 : 데이터의 세부적인 속성이나 용도를 정의하지 않고, 데이터 구조를 대표할 수 있는 표현으로 대체하는 방법
[해설작성자 : 김영주]

5. 응용프로그램의 프로시저를 사용하여 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어는?(2021년 03월)
     1. WAS(Web Application Server)
     2. MOM(Message Oriented Middleware)
     3. RPC(Remote Procedure Call)
     4. ORB(Object Request Broker)

     정답 : []
     정답률 : 81%
     <문제 해설>
1. WAS : 애플리케이션 수행 미들웨어
2. MOM : 메세지 지향 미들웨어
3. RPC : 원격 프로시저 호출
4. ORB : 네트워크 호출 미들웨어
[해설작성자 : .]

원격= Remote
[해설작성자 : 팁으로외우자]

보기에 답이 있습니다.
remote - 원격(리모컨생각하면 쉽습니다.)
procedure - 프로시저
call - 호출, 부름
문제가 원격 프로시저를 호출 하는 방식을 묻는것이므로 rpc로 유추할수있습니다.
[해설작성자 : 산업기사에서 기사로]

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. 미들웨어(Middleware)에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 여러 운영체제에서 응용 프로그램들 사이에 위치한 소프트웨어이다.
     2. 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있어야 한다.
     3. 소프트웨어 컴포넌트를 연결하기 위한 준비된 인프라 구조를 제공한다.
     4. 여러 컴포넌트를 1대 1, 1대 다, 다대 다 등 여러 가지 형태로 연결이 가능하다.

     정답 : []
     정답률 : 76%
     <문제 해설>
- 클라이언트와 서버 간의 통신을 담당하는 시스템 소프트웨어이다.
- 이기종 하드웨어, 소프트웨어, 네트워크, 프로토콜, PC 환경, 운영체제 환경 등에서 시스템 간의 표준화된 연결을 도와주는 소프트웨어이다.
- 표준화된 인터페이스를 통하여 시스템 간의 데이터 교환에 있어 일관성을 제공한다.
- 운영체제와 애플리케이션 사이에서 중간 매개 역할을 하는 다목적 소프트웨어이다.

오답
- 미들웨어 솔루션은 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 확인할 필요가 없다.
[해설작성자 : 행복한버거]

사용자가 미들웨어의 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있다면, 보안의 위협이 될 수 있으므로 확인할 수 없도록 해야함.
[해설작성자 : 항공대미녀]

미들웨어(Middleware)는 사용자에게 초점이 맞추어져 소프트웨어 시스템에서 여러 구성 요소 간에 정보를 전달하고 상호 작용하는 역할을 하는 소프트웨어로 사용자는 내부 동작을 일일이 확인 할 필요가 없다.
[해설작성자 : 선택결과]

사용자가 미들웨어의 내부 동작을 확인하기 위해서는 별도의 응용 소프트웨어가 사용되어야 함.
[해설작성자 : 공부하는중년]

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

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

9. 트랜잭션이 올바르게 처리되고 있는지 데이터를 감시하고 제어하는 미들웨어는?(2020년 06월)
     1. RPC
     2. ORB
     3. TP monitor
     4. HUB

     정답 : []
     정답률 : 82%
     <문제 해설>
1.RPC: remote procedure call 원격 절차 호출 또는 원격 프로시저 호출.
2.ORB: object request broker, 객체 간 메시지 전달을 지원하는 미들웨어
3.TP monitor: 트랜잭션 처리를 감시/제어하는 미들웨어
[해설작성자 : Koo]

ORB는 객체 지향 미들웨어로 코바 표준 스펙을 구현한 미들웨어이다.
[해설작성자 : ㅇㅇ]

10. 그래픽 표기법을 이용하여 소프트웨어 구성 요소를 모델링하는 럼바우 분석 기법에 포함되지 않는 것은?(2020년 09월)
     1. 객체 모델링
     2. 기능 모델링
     3. 동적 모델링
     4. 블랙박스 분석 모델링

     정답 : []
     정답률 : 95%
     <문제 해설>
럼바우하면 객동기를 떠올리세요
[해설작성자 : 럼바우는 객동기]

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

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

12. LOC기법에 의하여 예측된 총 라인수가 36000라인, 개발에 참여할 프로그래머가 6명, 프로그래머들의 평균 생산성이 월간 300라인일 때 개발에 소요되는 기간을 계산한 결과로 가장 옳은 것은?(2022년 03월)
     1. 5개월
     2. 10개월
     3. 15개월
     4. 20개월

     정답 : []
     정답률 : 92%
     <문제 해설>
노력(M/M)=원시 코드 라인 수(LOC)/(1인당 월 평균 생산 코드 라인 수)
=36,000라인/300라인=120M/M

개발 기간=(M/M)/참여 인원=120(M/M)/6명=20개월
[해설작성자 : KMJ2022]

개발 소요기간 계산방법
총 라인수 36000라인 / 월간 평균 생산성 300라인 = 120
120 / 참여 프로그래머 6 = 20
20개월
[해설작성자 : 양기모띄]

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

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

14. 럼바우(Rumbaugh)의 객체지향 분석 절차를 가장 바르게 나열한 것은?(2020년 06월)
     1. 객체 모형→동적 모형→기능 모형
     2. 객체 모형→기능 모형→동적 모형
     3. 기능 모형→동적 모형→객체 모형
     4. 기능 모형→객체 모형→동적 모형

     정답 : []
     정답률 : 84%
     <문제 해설>
럼바우 객체지향 분석 절차
1.객체 모델링
-객체 다이어그램(객체 관계)으로 표시
-가장 중요하며 선행되어야함
2.동적 모델링
-상태 다이어그램(상태도)를 이용해 시간의 흐름에 따른 객체들간의 제어흐름, 상호작용, 동작순서 등의 동적인 행위를 표현하는 모델링
3.기능 모델링
-자료 흐름도(DFD)를 이용하여 다수의 프로세스들 간의 자료흐름을 중심으로 처리
[해설작성자 : hdh]

럼바우는 객동기!
[해설작성자 : comcbt.com 이용자]

15. 럼바우(Rumbaugh)의 객체지향 분석 기법 중 자료 흐름도(DFD)를 주로 이용하는 것은?(2021년 08월)
     1. 기능 모델링
     2. 동적 모델링
     3. 객체 모델링
     4. 정적 모델링

     정답 : []
     정답률 : 51%
     <문제 해설>
럼바우 분석기법
객,동,기
객체모델링 = 객체 다이어그램
동적모델링 = 상태 다이어그램
기능 모델링 = 자료흐름도
[해설작성자 : ㅇㅈㅇ]

문제를 잘 읽으셔야합니다..
객동기만 기억하고 있다가 정적 모델링 해서 정답률이 낮은거같은데
객체 = 객체     객2
동적 = 상태     동상
기능 = 자료~    기자
로 외우면 편해요
[해설작성자 : comcbt.com 이용자]

(다음 설명에 이 "단어"가 있으면 해당 "모델링"이 정답)
객체 모델링 : 정보 모델링, 시스템에서 요구
동적 모델링 : 제어, 흐름, 동작
기능 모델링 : DFD
[해설작성자 : 팁으로 외우자]

16. 다음 중 상위 CASE 도구가 지원하는 주요기능으로 볼 수 없는 것은?(2021년 05월)
     1. 모델들 사이의 모순검사 기능
     2. 전체 소스코드 생성 기능
     3. 모델의 오류검증 기능
     4. 자료흐름도 작성 기능

     정답 : []
     정답률 : 71%
     <문제 해설>
CASE: 시스템 개발과정의 일부 또는 전체를 자동화시킨 것
- 소프트웨어 생명주기의 전체 단계를 연결해 주고 자동화해주는 통합된 도구를 제공
- 소프트웨어, 하드웨어, 데이터베이스, 테스트 등을 통합하여 소프트웨어를 개발하는 환경을 제공

상위 CASE: 요구 분석과 설계 단계를 지원
- 모델들 사이의 모순검사 기능
- 모델의 오류 검증 기능
- 자료흐름도 작성 기능

하위 CASE: 코드를 작성하고 테스트하며 문서화하는 과정 지원
- 원시코드 생성 기능

통합 CASE: 소프트웨어 개발 주기 전체과정을 지원
[해설작성자 : 컴린이]

17. 소프트웨어를 개발하기 위한 비즈니스(업무)를 객체와 속성, 클래스와 멤버, 전체와 부분 등으로 나누어서 분석해 내는 기법은?(2021년 03월)
     1. 객체지향 분석
     2. 구조적 분석
     3. 기능적 분석
     4. 실시간 분석

     정답 : []
     정답률 : 66%
     <문제 해설>
업무(비즈니스)를 객체, 속성 등의 개별요소로 추상화 하는 기법을 "객체지향 분석"이라고 합니다.
[해설작성자 : 지나가던 사람]

18. 애자일 소프트웨어 개발 기법의 가치가 아닌 것은?(2021년 03월)
     1. 프로세스의 도구보다는 개인과 상호작용에 더 가치를 둔다.
     2. 계약 협상보다는 고객과의 협업에 더 가치를 둔다.
     3. 실제 작동하는 소프트웨어보다는 이해하기 좋은 문서에 더 가치를 둔다.
     4. 계획을 따르기보다는 변화에 대응하는 것에 더 가치를 둔다.

     정답 : []
     정답률 : 93%
     <문제 해설>
애자일 방법론

- 공정과 도구보다 개인과 상호작용
- 계획을 따르기보다 변화에 대응하기
- 포괄적인 문서보다 동작하는 소프트웨어
- 계약 협상보다 고객과의 협력
[해설작성자 : 민쵸리]

19. GoF(Gangs of Four) 디자인 패턴 중 생성패턴으로 옳은 것은?(2021년 05월)
     1. singleton pattern
     2. adapter pattern
     3. decorator pattern
     4. state pattern

     정답 : []
     정답률 : 74%
     <문제 해설>
생성패턴: 객체를 생성하는 것에 대한 패턴
추상팩토리 패턴, 빌더 패턴, 팩토리 메소드 패턴, 프로토타입 패턴, 싱글톤 패턴

구조 패턴: 구조를 통해 확장성을 꾀하는 패턴
어댑터 패턴, 브릿지 패턴, 컴포지트 패턴, 데코레이터 패턴, 퍼사드 패턴, 플라이웨잇 패턴, 프록시 패턴

행위 패턴: 행위의 변경, 수정 등을 위한 패턴
역할 사슬 패턴, 커맨드 패턴, 인터프리터 패턴, 이터레이터 패턴, 미디에이터 패턴, 메멘토 패턴, 옵저버 패턴, 스테이트 패턴, 스트래티지 패턴, 템플릿 메소드 패턴, 비지터 패턴
[해설작성자 : 컴린이]

1. singleton pattern(단일체): 한 클래스에 한 객체만 존재하도록 제한한다(생성패턴)
2. adapter pattern(적응자): 인터페이스가 호환되지 않는 클래스들을 함께 이용할 수 있도록, 타 클래스의 인터페이스를 기존 인터페이스에 덧씌운다(구조패턴)
3. decorator pattern(장식자): 0개, 1개 혹은 그 이상의 객체를 묶어 하나의 객체로 이용할 수 있다(구조패턴)
4. state pattern(상태): 동일한 동작을 객체의 상태에 따라 다르게 처리해야 할 때 사용하는 디자인 패턴(행위패턴)
[해설작성자 : .]

20. 소프트웨어 설계시 제일 상위에 있는 main user function에서 시작하여 기능을 하위 기능들로 분할해 가면서 설계하는 방식은?(2021년 03월)
     1. 객체 지향 설계
     2. 데이터 흐름 설계
     3. 상향식 설계
     4. 하향식 설계

     정답 : []
     정답률 : 90%
     <문제 해설>
상향식 설계 : 최하위 수준에서 각각의 모듈들을 설계하고, 모듈이 완성되면 이들은 결합하여 검사
하향식 설계 : 주어진 문제를 분석하여 모듈의 전체적인 구조와 데이터를 개괄적으로 설계하고 이를 기반으로 하위 레벨에서 점차 세부적인 기능을 중심으로 모듈을 설계
[해설작성자 : 3회 합격하자]

2과목 : 소프트웨어 개발


21. 테스트를 목적에 따라 분류했을 때,강도(Stress) 테스트에 대한 설명으로 옳은것은?(2021년 08월)
     1. 시스템에 고의로 실패를 유도하고 시스템이 정상적으로 복귀하는지 테스트한다.
     2. 시스템에 과다 정보량을 부과하여 과부하 시에도 시스템이 정상적으로 작동되는지를 테스트한다.
     3. 사용자의 이벤트에 시스템이 응답하는 시간,특정 시간 내에 처리하는 업무량, 사용자 요구에 시스템이 반응하는 속도 등을 테스트한다.
     4. 부당하고 불법적인 침입을 시도하여 보안시스템이 불법적인 침투를 잘 막아내는지 테스트한다.

     정답 : []
     정답률 : 80%
     <문제 해설>
시스템 테스트의 종류
: 요구사항, 무결성, 부피, 메모리, 성능, 신뢰성, 부하, 수락, 회복, 안전, 구조, 회귀, 병행 등(50가지 이상)

강도(Stress) 테스트: 과다 정보량을 부과하여 시스템이 정상적으로 작동되는지 검증하는 테스트

1번. 회복(Recovery) 테스트
3번. 성능 테스트
4번. 안전(Security) 테스트
[해설작성자 : ㄱㄱㅇ]

22. EAI(Enterprise Application Integration) 구축유형 중 Hybrid에 대한 설명으로 틀린 것은?(2020년 09월)
     1. Hub & Spoke와 Message Bus의 혼합방식이다.
     2. 필요한 경우 한 가지 방식으로 EAI구현이 가능하다.
     3. 데이터 병목현상을 최소화할 수 있다.
     4. 중간에 미들웨어를 두지 않고 각 애플리케이션을 point to point로 연결한다.

     정답 : []
     정답률 : 75%
     <문제 해설>
EAI(Enterprise Application Integration) -> 모듈연계의 한 방식
EAI Hybrid = hub&spoke && messageBus

hub&spoke = 그룹내의 담당 허브가 고장나면 전체에 영향
messageBus = 그룹 담당
[해설작성자 : 가나다 ]

Hybrid 는 중간에 미들웨어를 둔다
[해설작성자 : comcbt.com 이용자]

23. 스택(Stack)에 대한 옳은 내용으로만 나열된 것은?(2022년 03월)

    

     1. ㉠, ㉡
     2. ㉡, ㉢
     3.
     4. ㉠, ㉡, ㉢, ㉣

     정답 : []
     정답률 : 78%
     <문제 해설>
FIFO-큐 방식
한쪽에서 삽입과 삭제가 모두 이루어 짐
[해설작성자 : 꾸꾸까까]

㉡ 큐 방식
㉢ 데크(Deque)설명
[해설작성자 : ITK]

스택은 LIFO방식으로 처리된다.
[해설작성자 : 코봉이]

24. 소프트웨어의 개발과정에서 소프트웨어의 변경사항을 관리하기 위해 개발된 일련의 활동을 뜻하는 것은?(2022년 04월)
     1. 복호화
     2. 형상관리
     3. 저작권
     4. 크랙

     정답 : []
     정답률 : 84%
     <문제 해설>
복호화 - 디코딩, 즉 부호화된 데이터를 부호화 되기 전 형태로 바꾸어, 사람이 읽을 수 있는 형태로 되돌려 놓는것
저작권 - 창작물을 만든이가 자기 저작물에 대해 가지는 법적권리
크랙 - 소프트웨어를 수정하여 소프트웨어를 크랙하는 사람이 원하지 않는 기능들, 보통은 수정 방식(복사 보호, 소프트웨어 조작 보호)을 비활성화하거나 제거하는 일
[해설작성자 : comcbt.com 이용자]

25. 소프트웨어 프로젝트 관리에 대한 설명으로 가장 옳은 것은?(2022년 03월)
     1. 개발에 따른 산출물 관리
     2. 소요인력은 최대화하되 정책 결정은 신속하게 처리
     3. 주어진 기간은 연장하되 최소의 비용으로 시스템을 개발
     4. 주어진 기간 내에 최소의 비용으로 사용자를 만족시키는 시스템을 개발

     정답 : []
     정답률 : 79%
     <문제 해설>
· 프로젝트 관리는 주어진 기간 내에 최소의 비용으로 사용자를 만족시키는 시스템을 개발하기 위한 전반적인 활동
· 프로젝트 관리는 소프트웨어 개발 계획을 세우고 분석, 설계, 구현 등의 작업을 통제하는 것으로 소프트웨어 생명 주기의 전 과정에 걸쳐 진행됨
· 소프트웨어 프로젝트를 성공적으로 수행하기 위해서는 수행할 작업의 범위, 필요한 자원, 수행 업무, 이정표, 비용 추진 일정들을 알아야 함
- 소요인력은 최소화 하는 것이 좋음
※ 프로젝트 관리는 제한된 시간과 비용으로 좋은 품질의 시스템을 개발하여 고객에게 제공함
[해설작성자 : 강썬]

26. 다음 트리를 전위 순회(preorder traversal)한 결과는?(2020년 06월)

    

     1. +*AB/*CDE
     2. AB/C*D*E+
     3. A/B*C*D+E
     4. +**/ABCDE

     정답 : []
     정답률 : 77%
     <문제 해설>
전위순회 : 루트를 먼저 방문 ex) +**/ABCDE
중위순회 : 왼쪽 하위트리를 방문한 뒤 루트를 방문 ex) A/B*C*D+E
후위순회 : 하위트리를 방문한 뒤 루트를 방문 ex) AB/C*D*E+
[해설작성자 : 윤지야보고싶다]

전위 : root → left → right
중위 : left → root → right
후위 : left → right → root
[해설작성자 : 합격하장!]

전위, 중위, 후위의 기준은 root를 언제 계산할지 생각하면 편함.

전위는 root를 가장 앞에
중위는 root를 중간 지점에
후위는 root를 마지막에 계산식을 만들어주면 된다.
[해설작성자 : comcbt.com 이용자]

27. 소프트웨어 형상 관리에 대한 설명으로 거리가 먼 것은?(2021년 05월)
     1. 소프트웨어에 가해지는 변경을 제어하고 관리한다.
     2. 프로젝트 계획, 분석서, 설계서, 프로그램, 테스트 케이스 모두 관리 대상이다.
     3. 대표적인 형상관리 도구로 Ant, Maven, Gradle 등이 있다.
     4. 유지 보수 단계뿐만 아니라 개발 단계에도 적용할 수 있다.

     정답 : []
     정답률 : 72%
     <문제 해설>
Ant, Maven, Gradle 은 빌드자동화 도구입니다.
[해설작성자 : 코로그]

대표적인 형상 관리 도구
GIT,CVS, Subversion 등
[해설작성자 : 군대에서정처기]

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년 08월)
     1. Divide and Conquer
     2. Greedy
     3. Static Block
     4. Backtracking

     정답 : []
     정답률 : 58%
     <문제 해설>
1.Divide and Conquer(분할 정복 알고리즘) : 그대로 해결할 수 없는 문제를 작은 문제로 분할하여 문제를 해결하는 알고리즘
2. Greedy(탐욕 알고리즘) : 현재 시점에서 가장 최적의 방법을 선택하는 알고리즘
4. Backtracking : 모든 조합을 시도하여 문제의 답을 찾는 알고리즘
[해설작성자 : ㅇㅎㅅ]

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

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

static block    : 클래스 로딩시 클래스 변수를 초기화 하려는 용도의 블록
[해설작성자 : 리신장인]

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. 소스코드 정적 분석(Static Analysis)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 소스 코드를 실행시키지 않고 분석한다.
     2. 코드에 있는 오류나 잠재적인 오류를 찾아내기 위한 활동이다.
     3. 하드웨어적인 방법으로만 코드 분석이 가능하다.
     4. 자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾을 수 있다.

     정답 : []
     정답률 : 78%
     <문제 해설>
소스코드 정적 분석
- 프로그램을 실행 시키지 않고 코드를 분석하는 방법
- 코드 내에 존재하는 보안 취약점, 잠재적 결함, 위험 등을 발견 가능
- 규칙과 흐름에 맞게 코드가 올바르게 작성되어 있는지 점검
[해설작성자 : 스태틱]

소스 코드 정적 분석 도구 중 pmd, cppcheck 등은 소프트웨어적인 방법으로 코드를 분석한다.
[해설작성자 : 내일시험임]

34. 소프트웨어를 보다 쉽게 이해할 수 있고 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부구조를 변경하는 것은?(2022년 04월)
     1. Refactoring
     2. Architecting
     3. Specification
     4. Renewal

     정답 : []
     정답률 : 75%
     <문제 해설>
1. Refactoring - 코드의 구조 재조정
2. Architecting - 설계관련
3. Specification - 명세서
4. Renewal - 유지보수
※ 리팩토링과 유지보수는 다른 개념이다.
[해설작성자 : 익명]

리팩토링: 소프트웨어를 보다 쉽게 이해할 수 있고 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부구조를 변경하는 것으로, 코드 스멜(code smell)을 고치고 다듬는 과정이다.
[해설작성자 : 제발합격]

35. 인터페이스 구현 검증 도구가 아닌 것은?(2021년 05월)
     1. Foxbase
     2. STAF
     3. watir
     4. xUnit

     정답 : []
     정답률 : 60%
     <문제 해설>
인터페이스 구현 검증 도구는 xUnit, STAF, Fitnesse, NTAF, Selenium, watir 등이 있습니다.
Foxbase는 프로그래밍 언어입니다.
[해설작성자 : 해군본부 정체단 674기 수뱅]

36. 소스코드 품질분석 도구 중 정적분석 도구가 아닌 것은?(2020년 06월)
     1. pmd
     2. cppcheck
     3. valMeter
     4. checkstyle

     정답 : []
     정답률 : 65%
     <문제 해설>
정적 분석 도구
pmd :소스 코드에 대한 미사용 변수 최적화안된 코드 등 결함을 유발할 수 있는 코드 검사
cppcheck : C/C++ 코드에 대한 메모리 누수 오버플로우 등 분석
SonarQube : 중복 코드 복잡도 코딩 설계 등을 분석하는 소스 분석 통합 플랫폼
checkstyle : 자바 코드에 대해 소스코드 표준을 따르고 있는지 검사한다.
ccm : 다양한 언어의 코드 복잡도를 분석한다.
cobertura : 자바 언어의 소스코드 복잡도 분석 및 테스트 커버리지 측정

동적 분석 도구
Avalanche : Valgrind 프레임워크 및 STP기반 / 프로그램 결함 및 취약점 분석
valgrind : 프로그램 내에 존재하는 메모리 및 쓰레드 결함 분석
[해설작성자 : 거상 주작섭]

valMeter : 전압계
[해설작성자 : AAA]

37. 검증 검사 기법 중 개발자의 장소에서 사용자가 개발자 앞에서 행하는 기법이며, 일반적으로 통제된 환경에서 사용자와 개발자가 함께 확인하면서 수행되는 검사는?(2020년 06월)
     1. 동치 분할 검사
     2. 형상 검사
     3. 알파 검사
     4. 베타 검사

     정답 : []
     정답률 : 75%
     <문제 해설>
동치 분할 검사 : 입력 자료에 초점을 맞춰 케이스를 만들고 검사하는 방법 - 블랙박스 테스트 종류
알파 테스트 : 개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법 - 인수 테스트 종류
베타 테스트 : 선정된 최종 사용자가 여러명의 사용자 앞에서 행하는 테스트 기법 - 인수 테스트 종류
[해설작성자 : 거상 주작섭]

형상 검사(구성 검토, 검사) : 구성 요소, 목록, 유지보수를 위한 모든 사항이 표현되었는가를 검사
[해설작성자 : 핫식스3029캔째]

38. 해싱함수 중 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식은?(2020년 09월)
     1. 제산법
     2. 폴딩법
     3. 기수변환법
     4. 숫자분석법

     정답 : []
     정답률 : 61%
     <문제 해설>
폴딩법 - 해싱함수    중 레코드 키를 여러부분으로 나누고 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용
[해설작성자 : comcbt.com 이용자]

제산법 - 레코드키를 해시표로 나눈 나머지를 홈 주소로 사용
기수변환법 - 키 숫자의 진수를 다른 진수로 변환시켜 주소 크기를 초과한 높은 자릿수 절단, 다시 주소 범위에 맞게 조정
숫자분석법 - 키 값을 이루는 숫자의 분포를 분석하여 비교적 고른 자리를 필요한 만큼 선택
[해설작성자 : 머리터져요]

39. 순서가 있는 리스트에서 데이터의 삽입(Push), 삭제(Pop)가 한 쪽 끝에서 일어나며 LIFO(Last-In-First-Out)의 특징을 가지는 자료구조는?(2022년 04월)
     1. Tree
     2. Graph
     3. Stack
     4. Queue

     정답 : []
     정답률 : 73%
     <문제 해설>
1. Stack = LIFO, 한 쪽 끝에서 일어남
2. Queue = FIFO, 양방향에서 일어남
3. Tree & Graph 는 비선형구조
[해설작성자 : IJH]

40. 다음 중 스택을 이용한 연산과 거리가 먼 것은?(2021년 05월)
     1. 선택정렬
     2. 재귀호출
     3. 후위표현(Post-fix expression)의 연산
     4. 깊이우선탐색

     정답 : []
     정답률 : 54%
     <문제 해설>
선택정렬은 큐를 이용해서 정렬합니다.
[해설작성자 : 수원대학교]

선택정렬 : 가장 작은값을 위치가 정렬되어지지 않은 최초의 값과 바꿈
스택은 중간값에대해 접근할 수 없으므로 선택정렬을 할 수 없음
[해설작성자 : 거상 백호섭]

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


41. 결과 값이 아래와 같을 때 SQL 질의로 옳은 것은?(2021년 03월)

    

     1. SELECT * FROM 공급자 WHERE
공급자명 LIKE '%신%';
     2. SELECT * FROM 공급자 WHERE
공급자명 LIKE '%대%';
     3. SELECT * FROM 공급자 WHERE
공급자명 LIKE '%사%';
     4. SELECT * FROM 공급자 WHERE
공급자명 IS NOT NULL;

     정답 : []
     정답률 : 92%
     <문제 해설>
"SELECT * FROM 공급자 WHERE 공급자명" 까지는 동일합니다.
공급자명이 NULL인 값은 없으니 제거하고
LIKE "%value%"
value에 공통적으로 들어갈 문자를 찾아주면 되겠습니다.
[해설작성자 : 김태환]

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

[오류 신고 내용]
대신공업사와 신촌상사의 공통 글자는 '신'과 '사' 입니다.
그러므로 1번뿐 아니라 3번도 맞는 답 아닌가요??
[해설작성자 : 이상하군]

[관리자 입니다.
문제지 사진원본 확인해 봤는데
확정답안은 1번이네요.
다른 문제집 확인 가능한분 계시면 확인 부탁 드립니다.
신고시 출판사명까지 기제 부탁 드립니다.]

[오류신고 반론]
저도 3번도 해당가능한 줄 알았는데..음
‘%사%’는 모든 공급자들이 ‘사’라는 단어를 포함하므로    결과값으로 모든 공급자들이 출력되야 맞습니다.
반면에 정답인 ‘신’이 들어가는 결과값은 2개가 맞습니다
[해설작성자 : 또르링]

[오류신고 반론]
3번의 경우 대신공업사, 삼진사, 삼양사, 진아공업사, 신촌상사 모두 해당됩니다.
다섯 개 모두 문자열에 '사'가 들어가니까요.
3번이 답이 되려면 '%신%사%'가 되야합니다.
[해설작성자 : 냠냠]

[오류신고 반론]
SELECT * FROM 공급자 WHERE
공급자명 LIKE '%신%';
-> 공급자명에 "신"이 포함된 : 대신공업사, 신촌상사

SELECT * FROM 공급자 WHERE
공급자명 LIKE '%대%
-> 공급자명에 "대"가 포함된 : 대신공업사

3.SELECT * FROM 공급자 WHERE
공급자명 LIKE '%사%';
-> 공급자명에 "사"가 포함된 : 대신공업사, 삼진사, 삼양사, 진아공업사, 신촌상사

4.SELECT * FROM 공급자 WHERE
공급자명 IS NOT NULL;
-> 공급자명이 NULL이 아닌 값 : 대신공업사, 삼진사, 삼양사, 진아공업사, 신촌상사
[해설작성자 : kecoz]

42. 다음 두 릴레이션에서 외래키로 사용된 것은? (단 밑줄 친 속성은 기본키이다.)(2020년 06월)

    

     1. 수강번호
     2. 과목번호
     3. 학번
     4. 과목명

     정답 : []
     정답률 : 85%
     <문제 해설>
외래키 - 타 릴레이션의 기본키를 참조하는 속성 or 속성들의 집합
문제 읽어보면 (밑줄 친 속성은 기본키이다.) 적혀있음
고로 수강쪽에 과목번호가 있거나 과목쪽에 수강번호가 있어야함
[해설작성자 : 거상 주작섭]

43. 다음 두 릴레이션 Rl과 R2의 카티션 프로덕트(cartesian product) 수행 결과는?(2021년 08월)

    

     1.
     2.
     3.
     4.

     정답 : []
     정답률 : 78%
     <문제 해설>
두 테이블 곱집합
두 개의 테이블은 카티션 프로덕트 후 튜플의 수는 각 테이블의 곱,
컬럼은 각 테이블의 컬럼을 더한 것 과 같다.
[해설작성자 : 사과씨앗]

44. 다음 테이블을 보고 강남지점의 판매량이 많은 제품부터 출력되도록 할 때 다음 중 가장 적절한 SQL 구문은? (단, 출력은 제품명과 판매량이 출력되도록 한다.)(2022년 04월)

    

     1. SELECT 제품명, 판매량 FROM 푸드
ORDER BY 판매량 ASC;
     2. SELECT 제품명, 판매량 FROM 푸드
ORDER BY 판매량 DESC;
     3. SELECT 제품명, 판매량 FROM 푸드
WHERE 지점명 = '강남지점'
ORDER BY 판매량 ASC;
     4. SELECT 제품명, 판매량 FROM 푸드
WHERE 지점명 = '강남지점'
ORDER BY 판매량 DESC;

     정답 : []
     정답률 : 72%
     <문제 해설>
- 판매량이 많은 제품부터 출력되도록 하려면 내림차순 정렬을 적용해야 한다. SQL에서 정렬은 ORDER BY을 사용하며 내림차순은 DESC를 사용한다. 오름차순의 경우 생략이나 ASC를 사용한다.
[해설작성자 : 두목넷]

DESC : descending 내림차순
ASC : ascending 오름차순
[해설작성자 : 주거니아빠]

45. 다음 중 기본키는 NULL 값을 가져서는 안되며, 릴레이션 내에 오직 하나의 값만 존재해야 한다는 조건을 무엇이라 하는가?(2021년 08월)
     1. 개체 무결성 제약조건
     2. 참조 무결성 제약조건
     3. 도메인 무결성 제약조건
     4. 속성 무결성 제약조건

     정답 : []
     정답률 : 81%
     <문제 해설>
1. 개체 무결성 : 기본키는 null 값이 될 수 없음
2. 참조 무결성 : 외래키는 참조할 수 없는 값을 가질 수 없음
3. 도메인 무결성 : 특정 속성값은 그 속성이 정의된 도메인에 속한 값이어야 함
[해설작성자 : 오니]

46. 데이터베이스의 논리적 설계(logical design) 단계에서 수행하는 작업이 아닌 것은?(2020년 06월)
     1. 레코드 집중의 분석 및 설계
     2. 논리적 데이터베이스 구조로 매핑(mapping)
     3. 트랜잭션 인터페이스 설계
     4. 스키마의 평가 및 정제

     정답 : []
     정답률 : 42%
     <문제 해설>
데이터 베이스의 논리적 설계(데이터모델링)
-현실 세계에서 발생하는 자료를 컴퓨터가 이해하고 처리할 수 있는 물리적 저장장치에 저장할 수 있도록 변환하기 위해 특정 DBMS가 지원하는 논리적 자료 구조로 변환시키는 과정
-개념 세계의 데이터를 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계로 표현되는 논리적 구조의 데이터로 모델화
-개념 스키마를 평가 및 정제하고 DBMS에 따라 서로 다른 논리적 스키마를 설계하는 단계(종속적인 논리 스키마)
-트랜잭션의 인터페이스 설계
-관계형 데이터베이스라면 테이블 설계
-특정목표 DBMS에 따른 스키마설계
-스키마의 평가 및 정제

①레코드 집중의 분석 및 설계는 물리적 설계(데이터구조화)이다

물리적 설계
-논리적 구조로 표현된 데이터를 물리적 구조의 데이터로 변환
-데이터 베이스 파일의 저장 구조 및 엑세스 경로 결정
-데이터가 컴퓨터에 저장되는 방법을 묘사
-저장 레코드의 양식 설계, 레코드 집중의 분석 및 설계, 접근 경로 설계
-기본적 데이터 단위는 저장레코드
-성능에 중대한 영향을 미침
[해설작성자 : 나좀뽑아줘]

47. 다음 릴레이션의 Degree와 Cardinality는?(2022년 03월)

    

     1. Degree : 4, Cardinality : 3
     2. Degree : 3, Cardinality : 4
     3. Degree : 3, Cardinality : 12
     4. Degree : 12, Cardinality : 3

     정답 : []
     정답률 : 75%
     <문제 해설>
카디널리티=행
디그리(차수)=열
'카행', '디열(차열)'로 암기
[해설작성자 : 마산 양덕동 내년 사십]

*열차 = 열+차수(degree)
*비행기 = (비)+행+기수(cardinality)
[해설작성자 : 센딘]

48. 데이터 사전에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 시스템 카탈로그 또는 시스템 데이터베이스라고도 한다.
     2. 데이터 사전 역시 데이터베이스의 일종이므로 일반 사용자가 생성, 유지 및 수정 할 수 있다.
     3. 데이터베이스에 대한 데이터인 메타데이터(Metadata)를 저장하고 있다.
     4. 데이터 사전에 있는 데이터에 실제로 접근하는 데 필요한 위치 정보는 데이터 디렉토리(Data Directory)라는 곳에서 관리한다.

     정답 : []
     정답률 : 74%
     <문제 해설>
데이터 사전(Data Dictionary)
- 시스템 자신이 필요로 하는 여러 가지 객체(기본 테이블, 뷰, 인덱스, 데이터베이스, 패키지, 접근 권한 등)에 관한 정보를 포함하고 있는 시스템 데이터베이스이다.
- 시스템 카탈로그(System Catalog), 메타 데이터(Meta Data)라고도 한다.
- 시스템 카탈로그 자체도 시스템 테이블로 구성되어 있어 SQL 문을 이용하여 내용 검색이 가능하다.
- 사용자가 시스템 카탈로그를 직접 갱신할 수 없다.
- SQL 문으로 여러 가지 객체에 변화를 주면 시스템이 자동으로 갱신한다.
[해설작성자 : 두목넷]

49. 관계형 데이터베이스에서 다음 설명에 해당하는 키(Key)는?(2021년 08월)

    

     1. 후보키
     2. 대체키
     3. 슈퍼키
     4. 외래키

     정답 : []
     정답률 : 74%
     <문제 해설>
슈퍼키 : 유일성을 만족하는 속성 또는 속성들의 집합
후보키 : 유일성과 최소성을 만족하는 속성 또는 속성들의 집합
대체키 : 기본키로 선택되지 못한 후보키
외래키 : 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합
[해설작성자 : Ant]

기본키(Primary key)
기본키는 후보키 중에서 특별히 선정된 주키(Main Key)이며 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성이다. 기본키는 중복된 값을 가질 수 없으며 NULL값을 가질 수 없다.

대체키(Alternate Key)
대체키는 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 의미한다. 대체키를 보조키라고도 한다.

슈퍼키(Super Key)
슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키를 말한다. 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않는다. 슈퍼키는 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족하지 못한다.

외래키(Foreign Key)
외래키는 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미한다. 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인상에서 정의되었을 때의 속성 A를 외래키라고 한다. 외래키로 지정되면 참조 릴레이션의 기본키에 없는 값은 입력할 수 없다.

50. 데이터베이스에서의 뷰(View)에 대한 설명으로 틀린 것은?(2022년 04월)
     1. 뷰는 다른 뷰를 기반으로 새로운 뷰를 만들 수 있다.
     2. 뷰는 일종의 가상 테이블이며, update에는 제약이 따른다.
     3. 뷰는 기본 테이블을 만드는 것처럼 create view를 사용하여 만들 수 있다.
     4. 뷰는 논리적으로 존재하는 기본 테이블과 다르게 물리적으로만 존재하며 카탈로그에 저장된다.

     정답 : []
     정답률 : 73%
     <문제 해설>
뷰는 논리적으로만 존재한다.
[해설작성자 : 칼방이]

51. 트랜잭션의 상태 중 트랜잭션의 마지막 연산이 실행된 직후의 상태로, 모든 연산의 처리는 끝났지만 트랜잭션이 수행한 최종 결과를 데이터베이스에 반영하지 않은 상태는?(2022년 04월)
     1. Active
     2. Partially Committed
     3. Committed
     4. Aborted

     정답 : []
     정답률 : 64%
     <문제 해설>
Partially Committed: 마지막 연산이 실행된 직후의 상태로 아직 Commit 연산 실행 전
Committed: 트랜잭션이 실행을 성공적으로 완료하여 Commit 연산을 수행한 상태
[해설작성자 : 칼방이]

                ->        partially committed    -> committed
active |                     |
             |                     V
                ->             failed                        -> aborted(rollback연산)
[해설작성자 : comcbt.com 이용자]

Partially Committed: 트랜잭션이 마지막 명령문을 실행한 직후의 상태
Active: 트랜잭션이 실행을 시작하여 실행 중인 상태
Committed: 트랜잭션이 실행을 성공적으로 완료하여 COMMIT연산을 수행한 상태
Aborted: 트랜잭션이 실행에 실패하여 ROLLBACK연산을 수행한 상태
[해설작성자 : 제발합격]

52. SQL과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. REVOKE 키워드를 사용하여 열 이름을 다시 부여할 수 있다.
     2. 데이터 정의어는 기본 테이블, 뷰 테이블, 또는 인덱스 등을 생성, 변경, 제거하는데 사용되는 명령어이다.
     3. DISTINCT를 활용하여 중복 값을 제거할 수 있다.
     4. JOIN을 통해 여러 테이블의 레코드를 조합하여 표현할 수 있다.

     정답 : []
     정답률 : 78%
     <문제 해설>
REVOKE는 DCL에 해당 하는 권한을 해제하는 명령어
[해설작성자 : 그렇다네요]

#### DDL(Data Define Language, 데이터 정의어)
>DDL은 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어이다.

- CREATE: SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의한다.
- ALTER: TABLE에 대한 정의를 변경하는 데 사용한다.
- DROP: SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 삭제한다.


#### DML(Data Manipulation Language, 데이터 조작어)
>DML은 데이터베이스 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는데 사용되는 언어이다.
데이터베이스 사용자와 데이터베이스 관리시스템 간의 인터페이스를 제공한다.

- SELECT: 테이블에서 조건에 맞는 튜플을 검색한다.
- INSERT: 테이블에 새로운 튜플을 삽입한다.
- DELETE: 테이블에서 조건에 맞는 튜플을 삭제한다.
- UPDATE: 테이블에서 조건에 맞는 튜플의 내용을 변경한다.

#### DCL(Data Control Language, 데이터 제어어)
> DCL은 데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는 데 사용되는 언어이다.
데이터 베이스 관리자가 데이터 관리를 목적으로 사용한다.

- COMMIT: 명령에 의해 수행된 결과를 실제 물리적 디스크로 저장하고, 데이터베이스 조작 작업이 정상적으로 완료되었음을 관리자에게 알려준다.
- ROLLBACK: 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구한다.
- GRANT: 데이터베이스 사용자에게 사용권한을 부여한다.
- REVOKE: 데이터베이스 사용자의 권한을 취소한다.
[해설작성자 : bboygg]

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

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

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

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

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

54. 뷰(VIEW)에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 뷰 위에 또 다른 뷰를 정의할 수 있다.
     2. 뷰에 대한 조작에서 삽입, 갱신, 삭제 연산은 제약이 따른다.
     3. 뷰의 정의는 기본 테이블과 같이 ALTER문을 이용하여 변경한다.
     4. 뷰가 정의된 기본 테이블이 제거되면 뷰도 자동적으로 제거된다.

     정답 : []
     정답률 : 66%
     <문제 해설>
뷰의 정의를 변경하려면 뷰를 삭제하고 재생성 해야된다.
[해설작성자 : 오씨]

55. DML에 해당하는 SQL 명령으로만 나열된 것은?(2020년 06월)
     1. DELETE, UPDATE, CREATE, ALTER
     2. INSERT, DELETE, UPDATE, DROP
     3. SELECT, INSERT, DELETE, UPDATE
     4. SELECT, INSERT, DELETE, ALTER

     정답 : []
     정답률 : 80%
     <문제 해설>
DML(Data Manipulation Language) 데이터 조작어
DML의 유형에는 SELECT, INSERT, DELETE, UPDATE 가 있다.
SELECT 데이터 조회 : 튜플 중 전체 또는 조건을 만족하는 튜플을 검색하여 주기억장치 상에 임시테이블로 구성
INSERT 데이터 생성 : 새로운 튜플을 삽입할 때 사용하는 명령문
DELETE 데이터 삭제 : 튜플들 중에서 특정 튜플을 삭제할 때 사용하는 명령문
UPDATE 데이터 변경 : 특정 튜플의 내용을 변경할 때 사용하는 명령문
[해설작성자 : 나좀뽑아줘]

CREATE : [DDL] 데이터베이스, 테이블 등을 생성하는 역할을 한다.
ALTER : [DDL] 테이블을 수정하는 역할을 한다.
DROP : [DDL] 데이터베이스, 테이블을 삭제하는 역할을 한다.
[해설작성자 : woolen]

56. 데이터 제어어(DCL)에 대한 설명으로 옳은 것은?(2022년 03월)
     1. ROLLBACK : 데이터의 보안과 무결성을 정의한다.
     2. COMMIT : 데이터베이스 사용자의 사용 권한을 취소한다.
     3. GRANT : 데이터베이스 사용자의 사용 권한을 부여한다.
     4. REVOKE : 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래 상태로 복구한다.

     정답 : []
     정답률 : 83%
     <문제 해설>
1. ROLLBACK : 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래 상태로 복구한다.
2. COMMIT : 데이터의 보안과 무결성을 정의한다.
3. GRANT : 데이터베이스 사용자의 사용 권한을 부여한다.
4. REVOKE : 데이터베이스 사용자의 사용 권한을 취소한다.
[해설작성자 : 독학하는자]

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

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

58. 동시성 제어를 위한 직렬화 기법으로 트랜잭션 간의 처리 순서를 미리 정하는 방법은?(2021년 08월)
     1. 로킹 기법
     2. 타임스탬프 기법
     3. 검증 기법
     4. 배타 로크 기법

     정답 : []
     정답률 : 76%
     <문제 해설>
로킹기법 : 같은 자원을 엑세스하는 다중 트랜잭션 환경에서 DB의 일관성과 무결성을 유지하기 위해 트랜젝션의 순차적 진행을 보장하는 직렬화 기법.
타임스탬프 기법 : 트랜젝션과 트랜잭션이 읽거나 갱신한 데이터에 대해 트랜잭션이 실행을 시작하기 전에 타임스탬프를 부여하여 부여된 시간에 따라 트랜젝션 작업을 수행하여 트랜잭션 간의 처리순서를 미리 정하는 기법
[해설작성자 : 야쿠르트]

59. 한 릴레이션 스키마가 4개 속성, 2개 후보키 그리고 그 스키마의 대응 릴레이션 인스턴스가 7개 튜플을 갖는다면 그 릴레이션의 차수(degree)는?(2020년 09월)
     1. 1
     2. 2
     3. 4
     4. 7

     정답 : []
     정답률 : 71%
     <문제 해설>
릴레이션에서 차수(degree)는 속성의 수를 말합니다.
[해설작성자 : 오씨]

스키마 : 속성(attribute)의 집합 = 열
인스턴스 : 튜플의 집합 = 행,레코드
속성의 개수 = 차수
튜플의 개수 = 카디날리티(cardinality)
[해설작성자 : comcbt.com 이용자]

60. 제3정규형 (3NF)에서 BCNF(Boyce-Codd Normal Form)가 되기 위한 조건은?(2021년 05월)
     1. 결정자가 후보키가 아닌 함수 종속 제거
     2. 이행적 함수 종속 제거
     3. 부분적 함수 종속 제거
     4. 원자값이 아닌 도메인 분해

     정답 : []
     정답률 : 79%
     <문제 해설>
비정규형 →
[도메인 분해 →] 제1정규형
[부분 함수 종속 제거 →] 제2정규형
[이행 함수 종속 제거 →] 제3정규형
[결정자가 후보키가 아닌 함수 종속 제거 →] 보이스 코드 정규형(BCNF)
[다중치 종속 제거 →] 제4정규형
[조인 종속제거 →] 제5정규형

앞글자만 따서 '도부이결다조'로 암기하자.
[해설작성자 : 해군본부 정체단 674기 수뱅]

두부 이걸 다줘?? (도부이결다조) 로 암기 추천
[해설작성자 : 꼼수]

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


61. 다음 설명에 해당하는 방식은?(2021년 05월)

    

     1. STA
     2. Collision Domain
     3. CSMA/CA
     4. CSMA/CD

     정답 : []
     정답률 : 60%
     <문제 해설>
- Collision Domain : 충돌 발생을 검출할 수 있는 브리지 간 혹은 다른 계층 장치 간의 이더넷 세그먼트 범위
- CSMA/CD : 이더넷에서 각 단말이 정송 공유 매체에 규칙있게 접근하기 위한 매체 엑세스 제어 방식
[해설작성자 : 해군본부 정체단 674기 수뱅]

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

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

- Collision Domain "충돌 도메인"
충돌 발생을 검출할 수 있는 브리지 간 혹은 다른 계층 장치 간의 이더넷 세그먼트 범위
[해설작성자 : 쑤지쑤지]

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

    

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

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

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

63. 운영체제를 기능에 따라 분류할 경우 제어 프로그램이 아닌 것은?(2021년 03월)
     1. 데이터 관리 프로그램
     2. 서비스 프로그램
     3. 작업 제어 프로그램
     4. 감시 프로그램

     정답 : []
     정답률 : 64%
     <문제 해설>
제어 프로그램
1) 감시 프로그램 (Supervisor) : 프로그램과 시스템 작동상태를 감시 감독
2) 작업 제어 프로그램 (Job Control) : 작업의 연속 처리를 위한 스케줄 및 시스템 자원 할당 등을 담당
3) 데이터 관리 프로그램 (Data Management) ​: 주기억장치와 보조기억장치 사이의 데이터 전송, 파일과 데이터를 처리 유지 보수 기능 수행
[해설작성자 : 또르링]

제어프로그램
- 감시 프로그램(Supervisior Program)
- 작업 프로그램(Job Management Program)
- 데이터 관리 프로그램(Data Management Program)
처리 프로그램
- 언어 번역 프로그램
- 서비스 프로그램
[해설작성자 : 그냥대 융티]

64. 운영체제에서 커널의 기능이 아닌 것은?(2020년 09월)
     1. 프로세스 생성, 종료
     2. 사용자 인터페이스
     3. 기억 장치 할당, 회수
     4. 파일 시스템 관리

     정답 : []
     정답률 : 71%
     <문제 해설>
커널(kernel) : 프로세스(CPU스케줄링)관리, 기억장치 관리, 파일관리, 입출력 관리, 프로세스간 통신, 데이터 전송 및 변환 등 여러가지 가능 수행

쉘(shell) : 시스템과 사용자간의 인터페이스 담당, 명령어 해석기
[해설작성자 : 뭉밍몽]

65. 기억공간이 15K, 23K, 22K, 21K 순으로 빈 공간이 있을 때 기억장치 배치 전략으로 “First Fit”을 사용하여 17K의 프로그램을 적재할 경우 내부단편화의 크기는 얼마인가?(2021년 03월)
     1. 5K
     2. 6K
     3. 7K
     4. 8K

     정답 : []
     정답률 : 84%
     <문제 해설>
순서대로

15k, 23k, 22k, 21k 중에서 17k가 들어갈 수 있는 공간 중
가장 처음에 만나는 공간은 23k이므로
23k - 17k = 6k
정답은 2번 6k
[해설작성자 : 밀양금성컴퓨터학원 ☎055-354-3344]

First Fit: 들어갈 수 있는 공간 중 가장 먼저
Best Fit: 최적 (단편화 제일 작은 공간)
Worst Fit: 최악 (단편화 제일 큰 공간)
[해설작성자 : 고앵고앵]

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

    

     1. A→B→C→D
     2. A→C→B→D
     3. D→B→C→A
     4. D→A→B→C

     정답 : []
     정답률 : 62%
     <문제 해설>
HRN 방식의 우선순위 산정 공식
(대기시간+서비스시간)/서비스 시간 (값이 클 수록 우선순위가 높다.)


따라서
A의 우선순위 (5+20)/20 = 1.25
B의 우선순위 (40+20)/20 = 3
C의 우선순위 (15+45)/45 = 1.333333
D의 우선순위 (20+2)/2 = 11

순서는 D B C A
[해설작성자 : comcbt.com 이용자]

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

[오류 신고 내용]
답이 없음.
HRRN(HRN)방식에서 우선순위를 산정하는 경우에는 다음작업이 시작하기 전마다 매번 재계산을 하기 때문에, 이를 고려하여야함.

따라서 각 작업마다 회차별로 계산이 필요함.

1회차
A의 우선순위 (5+20)/20=1.25
B의 우선순위 (40+20)/20=3.0
C의 우선순위 (15+45)/45=1.33
D의 우선순위 (20+2)/2=11.0
따라서 첫 번째 작업은 D가 실행됨.

2회차에서는 D가 실행되는 동안 대기한 시간을 포함하여 계산함.
A의 우선순위 (2+5+20)/20=1.35
B의 우선순위 (2+40+20)/20=3.1
C의 우선순위 (2+15+45)/45=1.378
2번 순서는 B가실행

3회차
A의 우선순위 (20+2+5+20)/20=2.35
C의 우선순위 (20+2+15+45)/45=1.82
A가 우선, 마지막으로 C가 실행되며

정답은 D B A C가 됨.
[해설작성자 : BlueNyang]

67. TCP/IP 계층 구조에서 IP의 동작 과정에서의 전송 오류가 발생하는 경우에 대비해 오류 정보를 전송하는 목적으로 사용하는 프로토콜은?(2022년 03월)
     1. ECP(Error Checking Protocol)
     2. ARP(Address Resolution Protocol)
     3. ICMP(Internet Control Message Protocol)
     4. PPP(Point-to-Point Protocol)

     정답 : []
     정답률 : 50%
     <문제 해설>
ARP : IP 네트워크 상에서 IP주소를 MAC주소로 변환하는 프로토콜
[해설작성자 : 2트를 노려야하나..]

ICMP : IP와 조합하여 통신 중에 발생하는 오류의 처리와 전송 경로 변경 등을 위한 제어 메시지를 관리하는 역할을 하는 프로토콜
ARP : 호스트의 IP주소를 호스트와 연결된 네트워크 접속 장치의 물리적 주소로 바꾸는 역할을 하는 프로트콜
PPP : 점대점 데이터링크를 통해 3계층 프로토콜들을 캡슐화시켜 전송하는 프로토콜
[해설작성자 : 주노쿠]

ECP(Error Checking Protocol)는 없음
[해설작성자 : 댕복치 ]

68. UNIX 운영체제에 관한 특징으로 틀린 것은?(2022년 04월)
     1. 하나 이상의 작업에 대하여 백그라운드에서 수행이 가능하다.
     2. Multi-User는 지원하지만 Multi-Tasking은 지원하지 않는다.
     3. 트리 구조의 파일 시스템을 갖는다.
     4. 이식성이 높으며 장치 간의 호환성이 높다.

     정답 : []
     정답률 : 71%
     <문제 해설>
UNIX 운영체제
주로 서버용 컴퓨터에서 사용됨
time sharing system을 위해 설계된 대화식 운영체제
c언어로 작성되어 이식성 높고, 장치간 호환성 높다.
Multi user, Multi tasking 모두 지원.
트리 구조의 파일시스템
[해설작성자 : 합격하자]

69. 다음과 같은 형태로 임계 구역의 접근을 제어하는 상호배제 기법은?(2022년 03월)

    

     1. Dekker Algorithm
     2. Lamport Algorithm
     3. Peterson Algorithm
     4. Semaphore

     정답 : []
     정답률 : 55%
     <문제 해설>
1. 데커의 알고리즘
- 프로세스가 두개일때 상호 배제를 보장하는 최초의 알고리즘
- flag와 turn 변수를 사용하여 조정
2. 램퍼드 알고리즘
- 프로세스 n개의 상호 배제 문제를 해결한 알고리즘
- 프로세스에게 고유한 번호를 부여하고, 번호를 기준으로 우선순위를 정하여 우선순위가 높은 프로세스가 먼저 임계구역에 진입하도록 구현.
3. 피터슨 알고리즘
- 프로세스가 두개일때 상호 배제를 보장, 데커의 알고리즘과 유사하지만 상대방에게 진입 기회를 양보한다는 차이가 있고 보다 더 간단하게 구현됨
4. 세마포어
- 공유된 자원의 데이터 혹은 임계영역 등에 따라 여러 Process 혹은 Thread가 접근하는 것을 막아줌(동기화 대상이 하나 이상)
[해설작성자 : 강썬]

P(S)는 자원 할당, V(S)는 자원 반환을 의미.
문제의 식을 몰라도 개념을 알고있다면 풀이를 통해 답을 유추할 수 있음.

P(S) : while S <= 0 do skip;
    => S(자원) 이 0 이하일 때 skip(반복문에서 대기) => 프로세스 대기
S := S - 1;
    => S > 0 이 되면 (자원이 생기면) S := S - 1 (프로세스에 자원 할당, 자원 1 감소)
V(S) : S := S + 1;
    => S(자원) + 1 (자원 반환)

P(S) 연산을 통해 자원유무를 판단하여 프로세스에 자원 할당 혹은 프로세스 대기
V(S) 연산을 통해 작업이 끝난 프로세스가 자원을 반환
    => 공유자원에대한 접근제한을 의미하므로 세마포어 알고리즘.
[해설작성자 : 밈]

70. C Class에 속하는 IP address는?(2021년 08월)
     1. 200.168.30.1
     2. 10.3.2.1
     3. 225.2.4.1
     4. 172.16.98.3

     정답 : []
     정답률 : 58%
     <문제 해설>
A class에 속하는 ip 주소 범위: 0.0.0.0 ~ 127.255.255.255
B class에 속하는 ip 주소 범위: 128.0.0.0 ~ 191.255.255.255
C class에 속하는 ip 주소 범위: 192.0.0.0 ~ 223.255.255.255

D class와 E class는 각각 멀티캐스트용, 연구용으로 사용됩니다.
D class ip 주소 범위: 224.0.0.0 ~ 239.255.255.255
E class ip 주소 범위: 240.0.0.0 ~ 255.255.255.255
[해설작성자 : ㄱㄱㅇ]

A = 0000 0000 ~ 0111 1111
B = 1000 0000 ~ 1011 1111
같은 방식으로
ABCD E111로 외우면 될듯합니당
[해설작성자 : ㅋㅋ루삥뽕]

A class -> B class = 128 차이
B class -> C class = 64 차이
C class -> D class = 32 차이
D class -> E class = 16 차이
[해설작성자 : 웅가리]

00000000 A 0
10000000 B 128
11000000 C 192
11100000 D 224
11110000 E 240
쉽게 2진법으로 하면 이해가 쉬움
[해설작성자 : 개발못하는개발자]

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

    

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

     정답 : []
     정답률 : 72%
     <문제 해설>
0부터 시작해서 4보다 작은 정수
+는 1씩 증가
[해설작성자 : 낼시험]

72. 스레드(Thread)에 대한 설명으로 옳지 않은 것은?(2020년 06월)
     1. 한 개의 프로세스는 여러 개의 스레드를 가질 수 없다.
     2. 커널 스레드의 경우 운영체제에 의해 스레드를 운용한다.
     3. 사용자 스레드의 경우 사용자가 만든 라이브러리를 사용하여 스레드를 운용한다.
     4. 스레드를 사용함으로써 하드웨어, 운영체제의 성능과 응용 프로그램의 처리율을 향상시킬 수 있다.

     정답 : []
     정답률 : 75%
     <문제 해설>
프로세스 내에서의 작업단위로 여러 자원을 할당받아 실행하는 프로그램 단위
한 개의 프로세스에는 하나 이상의 스레드가 존재
커널 스레드 : 운영체제 커널에 의해 스레드 운영 / 구현 쉬움 / 속도 느림
사용자 스레드 : 사용자가 만든 라이브러리를 사용해 스레드 운용 / 속도 빠름 / 구현 어렵
하드웨어 운용체제 성능과 처리율을 향상 가능
응용프로그램 응답시간 단축 가능
실행 환경을 공유시켜 기억장소 낭비 줄어듬
[해설작성자 : 거상 주작섭]

73. 결합도(Coupling)에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 데이터 결합도(Data Coupling)는 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
     2. 내용 결합도(Content Coupling)는 하나의 모듈이 직접적으로 다른 모듈의 내용을 참조할 때 두 모듈은 내용적으로 결합되어 있다고 한다.
     3. 공통 결합도(Common Coupling)는 두 모듈이 동일한 전역 데이터를 접근한다면 공통결합 되어 있다고 한다.
     4. 결합도(Coupling)는 두 모듈간의 상호작용, 또는 의존도 정도를 나타내는 것이다.

     정답 : []
     정답률 : 52%
     <문제 해설>
스탬프 결합도
- 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
- 두 모듈이 동일한 자료 구조를 조회함
[해설작성자 : 도라예몽]

자료 결합도(data coupling)
어떤 모듈이 다른 모듈을 호출하면서 매게변수나 인수를 넘겨주고, 호출 받은 모듈은 받은 데이터에 대한 처리결과를 다시 돌려주는 방식
[해설작성자 : comcbt.com 이용자]

74. 다음 설명의 ㉠과 ㉡에 들어갈 내용으로 옳은 것은?(2021년 03월)

    

     1. ㉠ : Paging, ㉡ : Segmentation
     2. ㉠ : Segmentation, ㉡ : Allocation
     3. ㉠ : Segmentation, ㉡ : Compaction
     4. ㉠ : Paging, ㉡ : Linking

     정답 : []
     정답률 : 81%
     <문제 해설>
가상기억장치의 구현 기법에는,
프로그램과 주기억장치의 영역을 '동일한 크기'로 나누는 페이징(Paging)기법과
프로그램을 '다양한 크기'로 나누는 세그먼테이션(Segmentation)기법이 있다.
[해설작성자 : 또르링]

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. 4개의 페이지를 수용할 수 있는 주기억장치가 있으며, 초기에는 모두 비어 있다고 가정한다. 다음의 순서로 페이지 참조가 발생할 때, LRU 페이지 교체 알고리즘을 사용할 경우 몇 번의 페이지 결함이 발생하는가?(2022년 04월)

    

     1. 5회
     2. 6회
     3. 7회
     4. 8회

     정답 : []
     정답률 : 55%
     <문제 해설>
1 | 1 [결함(부재)]
2 | 1 2 [결]
3 | 1 2 3 [결]
1 | 1 2 3 [적재되어 있는 1 참조]
2 | 1 2 3 [적재되어 있는 2 참조]
4 | 1 2 3 4 [결]
1 | 1 2 3 4 [적재되어 있는 1 참조]
2 | 1 2 3 4 [적재되어 있는 2 참조]
5 | 1 2 5 4 [결], [최근까지 남아있었던(LRU기법) 3을 제거, 5 적재]
총 결함 발생 횟수는 5회입니다.
[해설작성자 : COOKIE]

마지막 부분을 가장 오랫동안 사용하지 않은 페이지 제거 (LRU 기법)로 수정하면 더 좋을 것 같습니다.
[해설작성자 : boan]

77. 어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어신호를 이용하여 통신하는 경우이며, 하위 모듈에서 상위 모듈로 제어신호가 이동하여 상위 모듈에게 처리 명령을 부여하는 권리 전도현상이 발생하게 되는 결합도는?(2020년 08월)
     1. data coupling
     2. stamp coupling
     3. control coupling
     4. common coupling

     정답 : []
     정답률 : 77%
     <문제 해설>

문제 핵심 : 제어하기 위한 목적 / 권리 전도현상
= 제어 결합도 control coupling

data coupling ( = 자료 결합도 )
중요 : 자료요소로만 구성 / 처리값을 다시 돌려줌

stamp coupling ( = 스탬프 결합도 )
중요 : 모듈 간 자료 구조 전달될 때 변화가 생기면 그것을 조회하는 모든 모듈에 영향을 미침

common coupling ( = 공통 결합도 )
중요 : 공유되는 데이터 영역을 여러 모듈이 사용 / 공통 영역 내용 변경 시 영역을 사용하는 모든 모듈에 영향
[해설작성자 : !]

78. 다음 중 페이지 교체(Page Replacement)알고리즘이 아닌 것은?(2021년 08월)
     1. FIFO(First-In-First-Out)
     2. LUF(Least Used First)
     3. Optimal
     4. LRU(Least Recently Used)

     정답 : []
     정답률 : 45%
     <문제 해설>
페이지 교체 알고리즘의 종류

OPT - Optimal : 앞으로 가장 오랫동안 사용되지 않을 페이지 교체
FIFO - First In First Out
LRU - Least Recently Used : 가장 오랫동안 사용되지 않은 페이지 교체
LFU - Least Frequently Used : 참조 횟수가 가장 적은 페이지 교체
MFU - Most Frequently used : 참조 횟수가 가장 많은 페이지 교체
NUR - Not Used Recently : 최근에 사용하지 않은 페이지 교체
[해설작성자 : 몰]

79. 자바스크립트(JavaScript)와 관련한 설명으로 틀린 것은? (문제 오류로 가답안 발표시 2번으로 발표되었지만 확정 답안 발표시 모두 정답처리 되었습니다. 여기서는 가답안인 2번을 누르면 정답 처리 됩니다.)(2021년 05월)
     1. 프로토타입(Prototype)의 개념이 존재한다.
     2. 클래스 기반으로 객체 상속을 지원한다.
     3. Prototype Link와 Prototype Object를 활용할 수 있다.
     4. 객체지향 언어이다.

     정답 : []
     정답률 : 86%
     <문제 해설>
객체 기반으로 클래스 상속을 지원한다
[해설작성자 : 호롤라]

자바스크립트는 클래스가 없다. 대신 프로토타입을 이용해 상속을 흉내내도록 구현함
[해설작성자 : 합격하자]

Es6 부턴 클래스 지원함
문제 자체가 오류
[해설작성자 : Race]

ES6부터 클래스 문법을 지원하게 되었으나, 내부적으로는 프로토타입으로 구현되므로 "클래스 기반"이라는 표현에 오류가 있다.
[해설작성자 : 사자희]

80. 모듈화(Modularity)와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 시스템을 모듈로 분할하면 각각의 모듈을 별개로 만들고 수정할 수 있기 때문에 좋은 구조가 된다.
     2. 응집도는 모듈과 모듈 사이의 상호의존 또는 연관 정도를 의미한다.
     3. 모듈 간의 결합도가 약해야 독립적인 모듈이 될 수 있다.
     4. 모듈 내 구성 요소들 간의 응집도가 강해야 좋은 모듈 설계이다.

     정답 : []
     정답률 : 55%
     <문제 해설>
응집도 : 하나의 모듈이 하나의 기능을 수행하는 요소들간의 연관성 척도, 독립적인 모듈이 되기 위해서는 응집도가 강해야 한다.(결합도는 약해야 한다.)
[해설작성자 : 수도공고갤러리 갤주]

결합도: 모듈과 모듈 사이의 상호의존 또는 연관 정도를 의미한다.
응집도: 모듈이 독립적인 기능으로 정의되어 있는 정도를 의미한다.
[해설작성자 : 칼방이]

81. 이용자가 인터넷과 같은 공중망에 사설망을 구축하여 마치 전용망을 사용하는 효과를 가지는 보안 솔루션은?(2020년 09월)
     1. ZIGBEE
     2. KDD
     3. IDS
     4. VPN

     정답 : []
     정답률 : 83%
     <문제 해설>
4장 보안 솔루션-방화벽종류

1.IDS : 침입 탐지 시스템
2.VPN : 가상 사설 통신망 (네트워크 암호화)

KDD는 한국에 무슨 협회
ZIGBEE는 저전력 라디오를 이용한 개인 통신망
[해설작성자 : 정알못]

KDD : 데이터베이스 속의 지식 발견, knowledge-discovery in databases
[해설작성자 : 포아송]

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

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

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

83. 구글의 구글 브레인 팀이 제작하여 공개한 기계 학습(Machine learning)을 위한 오픈소스 소프트웨어 라이브러리는?(2021년 08월)
     1. 타조(Tajo)
     2. 원 세그(One Seg)
     3. 포스퀘어(Foursquare)
     4. 텐서플로(TensorFlow)

     정답 : []
     정답률 : 74%
     <문제 해설>
타조(Tajo) : 하둡(Hadoop) 기반 데이터웨어하우스 시스템
원 세그(One Seg) : 일본과 브라질에서 상용 중인 디지털 TV 방송 기술의 일종 (주로 모바일 기기를 대상으로)
포스퀘어(Foursquare) : 위치 기반 소셜 네트워크 서비스
텐서플로(Tensorflow) : 2015년 오픈소스로 공개된 구글 브레인 팀의 두 번째 기계 학습(Machine Learning) 시스템
[해설작성자 : 동그랑땡]

84. 다음 내용이 설명하는 스토리지 시스템은?(2022년 03월)

    

     1. DAS
     2. NAS
     3. BSA
     4. NFC

     정답 : []
     정답률 : 71%
     <문제 해설>
직접 연결 저장장치(Direct-attached storage,DAS)
Network Attached Storage. 네트워크 결합 스토리지
근거리 무선 통신(NFC)
[해설작성자 : 58]

85. CMM(Capability Maturity Model) 모델의 레벨로 옳지 않은 것은?(2020년 06월)
     1. 최적단계
     2. 관리단계
     3. 정의단계
     4. 계획단계

     정답 : []
     정답률 : 49%
     <문제 해설>
초기단계(initial) / 반복단계 (Repeatable) / 정의단계 (Defined) / 관리단계 (Managed)Tip. 정량적 프로세스 관리가 Keyworkd / 최적단계 (Optimizing)/
[해설작성자 : 정보처리Knight_MR.K]

86. 소프트웨어 개발 프레임워크와 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장 받을 수 있게하는 개발 소프트웨어이다.
     2. 개발해야 할 애플리케이션의 일부분이 이미구현되어 있어 동일한 로직 반복을 줄일 수있다.
     3. 라이브러리와 달리 사용자 코드가 직접호출하여 사용하기 때문에 소프트웨어 개발프레임워크가 직접 코드의 흐름을 제어할수 없다.
     4. 생산성 향상과 유지보수성 향상 등의 장점이 있다.

     정답 : []
     정답률 : 86%
     <문제 해설>
소프트웨어 개발 프레임워크(Framework)
- 소프트웨어 개발 프레임워크는 소프트웨어 개발에 공통적으로 사용되는 구성 요소와 아키텍처를 일반화
- 손쉽게 구현할 수 있도록 여러가지 기능들을 제공해주는 반제품 형태의 소프트웨어 시스템

특성
- 모듈화
    : 캡슐화를 통해 모듈화를 강화, 설계 및 구현의 변경에 따른 영향을 최소화
    : 개발 표준에 의한 모듈화로 인해 유지 보수가 용이
- 재사용
    : 재사용 가능한 모듈들을 제공함으로써 예산 절감, 생산성 향상, 품질 보증
- 확장성
    : 다형성을 통한 인터페이스 확장이 가능하여 다양한 형태와 기능을 가진 애플리케이션 개발이 가능
- 제어 반전
    :    외부 라이브러리의 코드를 호출해 이용, 제어를 프레임워크에 넘김으로써 생산성을 향상
[해설작성자 : 한비로]

사용자 코드가 직접 호출하지 않음 프레임 워크의 특성 중 제어의 역흐름(반전)에 반대됨
[해설작성자 : ㅈㅂ]

87. 크래커가 침입하여 백도어를 만들어 놓거나, 설정 파일을 변경했을 때 분석하는 도구는?(2020년 06월)
     1. trace
     2. tripwire
     3. udpdump
     4. cron

     정답 : []
     정답률 : 70%
     <문제 해설>
Cron : 작업 예약 스케줄러
- (초) / 분 / 일 / 시간 / 월 / 요일 / (년도)

[시스템 침입탐지 및 무결성 도구]
Tripwire : 크래커가 침입하여 백도어를 만들어 놓거나 설정 파일을 변경했을 때 분석하는 도구
- MD5, CRC-32, SHA 등의 알고리즘을 사용
Aide : Tripwire를 대신할 수 있는 도구로 파일의 무결성을 검사하는데 사용
sXid : MD5 체크섬을 사용하여 suid, sgid파일을 추적 루트키트가 설치되어있는지 검사. Cron 작업형태로 수행. 자동으로 파일을 추적하고 경고
Claymore : 침입탐지 및 무결성 모니터링 도구로 크론테이블을 이용하여 주기적으로 파일시스템의 변조유무를 확인하고 변조되었을 경우 관리자에게 메일로 통보해 주는 기능
Samhain : 시스템의 무결성을 점검하는 도구로 여러 시스템을 관리할 수 있는 수단을 제공한다. 모니터링 에이전트와 중앙 로그서버로 구성
Slipwire : 파일시스템의 무결성을 검사하는 도구로 파일의 SHA-1 hashes값을 비교하여 변경될 경우 사용자에게 경고하는 기능
Fcheck : 유닉스 파일시스템의 변조유무를 점검하기 위한 PERL script 도구로 syslog. console 등로 관리자에게 파일시스템 변화를 경보해 준다. tripwire와 비슷한 도구로 보다 설치 및 운영이 쉽다.

*Cron하고 Tripwire은 많이 나오는 개념이고 기출문제도 많이 출현하였으니 이 두개만 잘 알아놓아도 된다.


Tripwire : 크래커가 침입하여 시스템에 백도어를 만들어 놓거나 설정 파일을 변경해 놓았을 때 이러한 사실을 알 수 있게 분석하는 도구
ping : 인터넷으로 접속하려는 원격 호스트가 정상적으로 운영되고 있는지를 확인하는 진단 목적으로 사용하는 명령어
tcpdump : 네트워크 인터페이스들 거치는 패킷의 내용을 출력해주는 프로그램
cron : 유닉스/리눅스에서 시간 기반으로 정해진 작업을 스케줄링 하기 위한 소프트웨어 유틸리티
netcat : TCP, UDP 프로토콜을 사용하는 네트워크 연결에서 데이터를 읽고 쓰는 유틸리티 프로그램
[해설작성자 : 알비레오]

88. 소프트웨어 개발 프레임워크를 적용할 경우 기대효과로 거리가 먼 것은?(2020년 06월)
     1. 품질보증
     2. 시스템 복잡도 증가
     3. 개발 용이성
     4. 변경 용이성

     정답 : []
     정답률 : 86%
     <문제 해설>
프레임워크 : 특정 기능을 수행하기 위해 필요한 클래스 or 인터페이스 등을 모아둔 집합체
맨 땅에 헤딩하는게 복잡할까요 ? 정리된 것들이 사용하는게 복잡할까요?
[해설작성자 : 거상 주작섭]

89. 빅데이터 분석 기술 중 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관례를 규명하여 일정한 패턴을 찾아내는 기법은?(2020년 08월)
     1. Data Mining
     2. Wm-Bus
     3. Digital Twin
     4. Zigbee

     정답 : []
     정답률 : 80%
     <문제 해설>
Wm-Bus:무선 미터버스, 산업용 무선 프로토콜
Digital Twin:컴퓨터 시뮬레이션(가상화)을 통해 결과를 예측하는 기술
Zigbee:직비, 무선 메시 네트워크의 표준(저가, 저전력)
[해설작성자 : ㅇ]

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

90. 다음에서 설명하는 IT 스토리지 기술은?(2021년 08월)

    

     1. Software Defined Storage
     2. Distribution Oriented Storage
     3. Network Architected Storage
     4. Systematic Network Storage

     정답 : []
     정답률 : 55%
     <문제 해설>
두번째 단락의 '컴퓨팅 소프트웨어로(Software) 규정하는(Defined) 데이터 스토리지 체계이며,'
=> Software Defined Storage
[해설작성자 : 3.14]

- 소프트웨어 정의 스토리지 (Software-defined storage) (SDS) : 스토리지에 가상화를 적용, 소프트웨어로 전체 스토리지 자원을 관리하여 하나의 저장장치럼 사용할 수 있도록 하는 기법
[해설작성자 : 눈딱감꼬낙하아아]

91. 소프트웨어 비용 추정모형(estimation models)이 아닌 것은?(2020년 09월)
     1. COCOMO
     2. Putnam
     3. Function-Point
     4. PERT

     정답 : []
     정답률 : 64%
     <문제 해설>
PERT는 프로젝트 일정 관리 기법입니다.
[해설작성자 : 오씨]

92. 다음이 설명하는 용어로 옳은 것은?(2020년 06월)

    

     1. 하둡(Hadoop)
     2. 비컨(Beacon)
     3. 포스퀘어(Foursquare)
     4. 맴리스터(Memristor)

     정답 : []
     정답률 : 77%
     <문제 해설>
[DB]
- 하둡 : 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼
- 디지털 아카이빙 : 디지털 정보 자원을 장기적으로 보존하기 위한 작업
- 타조 : 우리나라가 주도적으로 개발 중인 하둡 기반의 분산 데이터 웨어하우스 프로젝트
- 데이터 다이어트 : 데이터를 삭제하는 것이 아닌 압축하고 중복된 정보를 배제하고 새로운 기분에 따라 나누어 저장하는 작업
- 메타 데이터 : 일련의 데이터를 정의하고 설명해주는 데이터

[네트워크]
- 비콘 : 블루투스 기반의 근거리 무선통신 장치
- NFC : 고주파를 이용한 근거리 무선 통신 기술
- NDN : 콘텐츠 자체의 정보와 라우터 기능만으로 데이터 전송을 수행하는 기술
- NGN : 유선망 기반의 차세대 통신망
- 포스퀘어 : 위치 기반 소셜 네트워크 서비스

[HW]
- 엠디스크 : 한 번의 기록만으로도 자료를 영구 보관할 수 있는 광 저장 장치
- 맴리스터 : 메모리와 레지스터의 합성어로 전류의 방향과 양 등 기존의 경험을 모두 기억하는 소자. 차세대 메모리 기술 (ex: M.2)
[해설작성자 : comcbt.com 이용자]

데이터 다이어트 : 데이터를 삭제하는 것이 아닌 압축하고 중복된 정보를 배제하고 새로운 기분에 따라 나누어 저장하는 작업
기분 -> 기준
[해설작성자 : 정보짱짱맨]

93. 소인수 분해 문제를 이용한 공개키 암호화 기법에 널리 사용되는 암호 알고리즘 기법은?(2020년 06월)
     1. RSA
     2. ECC
     3. PKI
     4. PEM

     정답 : []
     정답률 : 79%
     <문제 해설>
1. RSA : MIT의 라이베스트,샤미르,애들먼에 의해 제안된 공개키 암호화 알고리즘
     큰 숫자를 소인수분해 하기 어렵다는 것에 기반하여 만들어짐 / 공개키와 비밀키 사용
2. ECC : 오류 정정 코드 메모리 ( 데이터 손상 감지 및 수정하는 기억장치 / 이거 설명하는거 아닐 수도 /
3. PKI : 공개키 기반 구조
4. PEM : SSL 인증서 종류
[해설작성자 : 거상 주작섭]

[블록 암호] - 대칭키
DES : 구 미국 표준. 56비트 키를 사용
AES :    DES의 보안 취약점을 대체하기 위해 고안된 미국 표준 방식으로 현재 표준 대칭키 암호화 기법
ARIA : SEED 이후로 나온 대한민국의 국가 암호 표준(AES와 동일)

[공개키 암호] - 비대칭키
RSA : 공개키 암호화 기법의 사실상 표준. 매우 큰 수의 소인수분해가 수학적으로 어렵다는 이론에 기반
ECC : RSA의 키 길이가 너무 긴 결점을 보완하기 위해 타원곡선함수를 이용한 암호화 기법
DSS(DSA) : 디지털 서명 표준 인증서 서비스

94. Windows 파일 시스템인 FAT와 비교했을 때의 NTFS의 특징이 아닌 것은?(2022년 03월)
     1. 보안에 취약
     2. 대용량 볼륨에 효율적
     3. 자동 압축 및 안정성
     4. 저용량 볼륨에서의 속도 저하

     정답 : []
     정답률 : 57%
     <문제 해설>
- FAT
        - DOS때부터 사용되던 윈도우의 파일시스템
        - 저용량에 적합, 호환성이 좋음,    저장가능한 파일의 최대크기가 4GB
- NTFS
        - FAT시스템을 대체하기 위해 개발된 윈도우 파일 시스템
        - 사용자마다 다른 보안 적용 가능 즉 보안이 FAT보다 뛰어남
        - 대용량 저장 가능 및 안정성이 뛰어남
[해설작성자 : 강썬]

95. DES는 몇 비트의 암호화 알고리즘인가?(2022년 03월)
     1. 8
     2. 24
     3. 64
     4. 132

     정답 : []
     정답률 : 75%
     <문제 해설>
DES의 키는 7비트마다 오류 검출을 위한 정보가 1비트씩 들어가기 때문에 실질적으로는 56비트이다.
추가적으로 AES는 암호화 알고리즘은 AES-128, AES-192, AES-256로 나뉘어지며 숫자는 비트수 이다.
[해설작성자 : 구구구구]

DES는 블록크기는 64bit 이고    키 길이가 56비트이다.
[해설작성자 : 이직 하고 싶다]

96. 소프트웨어공학에 대한 설명으로 거리가 먼 것은?(2021년 03월)
     1. 소프트웨어공학이란 소프트웨어의 개발, 운용, 유지보수 및 파기에 대한 체계적인 접근 방법이다.
     2. 소프트웨어공학은 소프트웨어 제품의 품질을 향상시키고 소프트웨어 생산성과 작업 만족도를 증대시키는 것이 목적이다.
     3. 소프트웨어공학의 궁극적 목표는 최대의 비용으로 계획된 일정보다 가능한 빠른 시일 내에 소프트웨어를 개발하는 것이다.
     4. 소프트웨어공학은 신뢰성 있는 소프트웨어를 경제적인 비용으로 획득하기 위해 공학적 원리를 정립하고 이를 이용하는 것이다.

     정답 : []
     정답률 : 89%
     <문제 해설>
"최대의 비용으로"가 아닌 반대가 맞습니다.
[해설작성자 : sextuple_U]

소프트웨어공학의 궁극적 목표는 "최소의 비용"으로 계획된 일정보다 가능한 빠른 시일 내에 소프트웨어를 개발하는 것이다.
[해설작성자 : 합격]

97. 컴퓨터 운영체제의 커널에 보안 기능을 추가한 것으로 운영체제의 보안상 결함으로 인하여 발생 가능한 각종 해킹으로부터 시스템을 보호하기 위하여 사용되는 것은?(2020년 09월)
     1. GPIB
     2. CentOS
     3. XSS
     4. Secure OS

     정답 : []
     정답률 : 81%
     <문제 해설>
GPIB : EEE-488은 단거리 디지털 통신 버스이다. 1960년대 후반 전자 측정 장비에 사용되었으며 지금도 사용되고 있다. IEEE-488은 HP-IB(Hewlett-Packard Interface Bus)로서 개발되었으며, 보통 GPIB (General Purpose Interface Bus)로 불린다.

CentOS : 센트OS(영어: CentOS)는 센트OS 프로젝트에서 레드햇 제휴로 개발한 컴퓨터 운영 체제이다.

XSS : 웹 클라이언트가 제공하는 HTTP 쿼리 매개 변수 (예 : HTML 양식 제출)에서 적절하지 않고, 구문 분석 및 해당 사용자에 대한 결과의 페이지를 표시하는 공격 기법

출처 : https://ko.wikipedia.org/
[해설작성자 : 오씨]

98. 상향식 비용 산정 기법 중 LOC(원시 코드 라인 수) 기법에서 예측치를 구하기 위해 사용하는 항목이 아닌 것은?(2022년 03월)
     1. 낙관치
     2. 기대치
     3. 비관치
     4. 모형치

     정답 : []
     정답률 : 71%
     <문제 해설>
LOC 예측치를 구하기 위해서는 낙관치, 비관치, 기대치가 필요하다.
[해설작성자 : 한번에제발]

예측치 = (낙관치+비관치+기대치*4)/6
[해설작성자 : 이직마려움]

99. 실무적으로 검증된 개발보안 방법론 중 하나로써 SW보안의 모범 사례를 SDLC(Software Development Life Cycle)에 통합한 소프트웨어 개발 보안 생명주기 방법론은?(2020년 08월)
     1. CLASP
     2. CWE
     3. PIMS
     4. Seven Touchpoints

     정답 : []
     정답률 : 47%
     <문제 해설>
1. CLASP - Comprehensive, Lightweight Application Security Process. 소프트웨어 개발 생명주기(SDLC) 초기단계에 보안강화를 목적으로 하는 정형화된 프로세스로써, 활동중심·역할기반의 프로세스로 구성된 집합체로, 이미 운영중인 시스템에 적용하기 적합합니다.
2. CWE - Common Weakness Enumeration. 주요 보안 취약점, 보안 문제를 정리하는 프로젝트입니다.
3. PIMS - Personal Information Management System. 개인정보 보호관리체계입니다.
4. Seven Touchpoints - 소프트웨어 개발 생명주기(SDLC)의 각 단계에 관련된 7가지의 보안 강화 활동을 개발자에게 집중적으로 관리하도록 요구하여 실무적으로 검증된 개발보안 방법론입니다.
[해설작성자 : 반스트]

100. 공개키 암호에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 10명이 공개키 암호를 사용할 경우 5개의 키가 필요하다.
     2. 복호화키는 비공개 되어 있다.
     3. 송신자는 수신자의 공개키로 문서를 암호화한다.
     4. 공개키 암호로 널리 알려진 알고리즘은 RSA가 있다.

     정답 : []
     정답률 : 74%
     <문제 해설>
키 개수는
비밀키(대칭키)는 N(N-1)/2 이고
공개키(비대칭키) 2N개 입니다.
[해설작성자 : 밀양금성컴퓨터학원 ☎055-354-3344]


정 답 지

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년 12월 01일)(8512014)을 이용해 주셔서 감사합니다.
, 필기, 기출문제, 전자문제집, CBT, 온라인, 모의테스트, 모의고사



List of Articles
번호 제목 글쓴이 날짜 조회 수
65 신재생에너지발전설비기사 필기 기출문제(해설) 및 CBT 2021년05월15일 new 좋은아빠되기 2025.12.01 1
64 자기비파괴검사기사 필기 기출문제(해설) 및 CBT 2015년03월08일 new 좋은아빠되기 2025.12.01 1
63 건설기계정비기능사 필기 기출문제(해설) 및 CBT 2010년03월28일(2회) new 좋은아빠되기 2025.12.01 1
62 워드 2급 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(1758268) new 좋은아빠되기 2025.12.01 2
61 소방공무원(경력) 생활영어(구) 필기 기출문제(해설) 및 CBT 2020년06월20일 new 좋은아빠되기 2025.12.01 1
60 9급 국가직 공무원 정보시스템보안 필기 기출문제(해설) 및 CBT 2022년04월02일 new 좋은아빠되기 2025.12.01 1
59 9급 지방직 공무원 수학 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(8332415) new 좋은아빠되기 2025.12.01 1
58 화약류관리산업기사 필기 기출문제(해설) 및 CBT 2005년03월20일 new 좋은아빠되기 2025.12.01 1
57 소방공무원(공개) 행정법총론(구) 필기 기출문제(해설) 및 CBT 2022년04월09일 new 좋은아빠되기 2025.12.01 1
56 공인중개사 1차 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(7784306) new 좋은아빠되기 2025.12.01 1
55 수능(지구과학I) 필기 기출문제(해설) 및 CBT 2012년10월09일 new 좋은아빠되기 2025.12.01 1
54 수질환경기사 필기 기출문제(해설) 및 CBT 2011년03월20일 new 좋은아빠되기 2025.12.01 1
53 식물보호산업기사 필기 기출문제(해설) 및 CBT 2006년09월10일 new 좋은아빠되기 2025.12.01 1
52 항공기체정비기능사 필기 기출문제(해설) 및 CBT 2003년03월30일(2회) new 좋은아빠되기 2025.12.01 1
51 농기계정비기능사 필기 기출문제(해설) 및 CBT 2009년03월29일(2회) new 좋은아빠되기 2025.12.01 1
» 정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(8512014) new 좋은아빠되기 2025.12.01 2
49 자동차정비기능사 필기 기출문제(해설) 및 CBT 2014년07월20일(4회) new 좋은아빠되기 2025.12.01 1
48 <h2>미용사(피부) 필기 시험문제 및 CBT 2011년07월31일 new 좋은아빠되기 2025.12.01 1
47 수질환경기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 01일)(3672866) new 좋은아빠되기 2025.12.01 1
46 식품안전기사 필기 기출문제(해설) 및 CBT 2014년03월02일 new 좋은아빠되기 2025.12.01 1
Board Pagination Prev 1 ... 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 Next
/ 1249