자격증 필기 기출문제



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

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


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

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


1과목 : 소프트웨어 설계


1. 검토회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후 짧은 검토 회의를 통해 오류를 조기에 검출하는데 목적을 두는 요구 사항 검토 방법은?(2020년 06월)
     1. 빌드 검증
     2. 동료 검토
     3. 워크 스루
     4. 개발자 검토

     정답 : []
     정답률 : 82%
     <문제 해설>
2.동료검토: 2~3명이 진행하는 리뷰형태로 작성자가 설명하고 이해관계자들이 설명을 들으면서 결함을 발견하는 형태
3.워크스루: 검토자료를 회의전에 배포하여 사전 검토한 후, 짧은 시간 동안 회의를 진행하는 형태로 리뷰를 통해 오류를 조기에 검출하는데 목적은 둔 검증기법
[해설작성자 : Koo]

요구사항 검토 방법
동료 검토 : 작성자가 명세서 내용 설명 동료들이 결함 발견하는 형태
워크 스루 : 검토 회의 전 명세서를 미리 배포하여 사전 검토 후 짧은 검토 회의를 통해 오류 조기 검출
인스펙션    : 명세서 작성자를 제외한 다른 검토 전문가들이 확인하면서 결함을 발견하는 형태
[해설작성자 : comcbt.com 이용자]

검토자료를 회의전에 배포하여 사전 검토한 후, 짧은 시간 동안 회의를 진행하는 형태로 리뷰를 통해 오류를 조기에 검출하는데 목적'을' 둔 검증기법
[해설작성자 : ramsey]

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

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

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

3. CASE(Computer Aided Software Engineering)의 주요 기능으로 옳지 않은 것은?(2020년 09월)
     1. S/W 라이프 사이클 전 단계의 연결
     2. 그래픽 지원
     3. 다양한 소프트웨어 개발 모형 지원
     4. 언어 번역

     정답 : []
     정답률 : 87%
     <문제 해설>
컴퓨터 지원 소프트웨어 공학(computer-aided software engineering: CASE)= 컴퓨터 지원 시스템 공학
- 시스템 개발 방법론들의 자동화를 지원하는 소프트웨어 도구를 제공해 개발자의 반복적인 작업량을 줄이도록 하는 것
- CASE 도구들은 차트와 다이어그램을 자동으로 생성하는 그래픽 기능, 화면과 리포트 생성기, 데이터사전, 분석과 검사 도구, 코드 생성기, 문서 생성기 등을 제공
- 기능: 1. 소프트웨어 생명주기(Software Lifecycle) 전 단계의 연결
                2. 그래픽 지원
                3. 다양한 소프트웨어 개발 모형 지원
# 20년 3회 19번 # 20년 3회 17번
[해설작성자 : 저질체력]

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

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

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

5. 소프트웨어 설계시 구축된 플랫폼의 성능특성 분석에 사용되는 측정 항목이 아닌 것은?(2020년 06월)
     1. 응답시간(Response Time)
     2. 가용성(Availability)
     3. 사용률(Utilization)
     4. 서버 튜닝(Server Tuning)

     정답 : []
     정답률 : 89%
     <문제 해설>
응답 시간 : 사용자가 응답을 받기까지 걸리는 총 시간
가용성 : 서비스가 다운되지 않고 정상적으로 유지되는 시간
사용률 : 측정 대상 작업을 수행하기 위해 사용된 자원의 사용량
서버 튜닝 : 서버의 효율성을 높이기 위하여 사용되는 일련의 개선 작업
[해설작성자 : LEE]

플랫폼 성능특성 분석에 사용되는 측정항목은
경과시간(Turnaround TIme), 사용률(Utilization), 응답시간(Response TIme), 가용성(Availability) 입니다.
[해설작성자 : comcbt.com 이용자]

플랫폼의 성능을 측정하는 기준
1. 가용성(Availability) : 필요할 때 즉시 사용 가능한 정도, 여유 자원
2. 응답시간(Response Time) : 명령에 반응하는 시간
3. 정확성(Accuracy) : 기대한 값과 비교해서 얼마나 정확한지
4. 사용률(Utilization) : 데이터 처리에 시스템 자원을 사용하는 정도

+ 시스템 성능 평가 기준
1. 처리 능력 (Troughput) : 단위 시간 내 작업 처리량
2. 처리 시간 (Turn Around Time) : 작업 의뢰부터 처리까지의 시간
3. 사용 가능도 (Availability) : 필요할 때 즉시 사용 가능한 정도 (가용성)
4. 신뢰도 (Reliability) : 주어진 문제를 정확하게 해결하는 정도
[해설작성자 : 컴공생]

6. GoF (Gangs of Four) 디자인 패턴에 대한 설명으로 틀린 것은?(2021년 05월)
     1. factory method pattern은 상위클래스에서 객체를 생성하는 인터페이스를 정의하고, 하위클래스에서 인스턴스를 생성하도록 하는 방식이다.
     2. prototype pattern은 prototype을 먼저 생성하고 인스턴스를 복제하여 사용하는 구조이다.
     3. bridge pattern은 기존에 구현되어 있는 클래스에 기능 발생 시 기존 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할을 한다.
     4. mediator pattern은 객체간의 통제와 지시의 역할을 하는 중재자를 두어 객체지향의 목표를 달성하게 해준다.

     정답 : []
     정답률 : 56%
     <문제 해설>
bridge pattern은 구현부에서 추상층을 분리하여 각자 독립적으로 확장이 가능하게 하는 패턴이다
[해설작성자 : comcbt.com 이용자]

3은 Adapter pattern의 설명
[해설작성자 : 합격]

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

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

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

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

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

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

8. 다음은 어떤 프로그램 구조를 나타낸다. 모듈 F에서의 fan-in과 fan-out의 수는 얼마인가?(2021년 03월)

   

     1. fan-in : 2, fan-out : 3
     2. fan-in : 3, fan-out : 2
     3. fan-in : 1, fan-out : 2
     4. fan-in : 2, fan-out : 1

     정답 : []
     정답률 : 91%
     <문제 해설>
모듈 F를 제어하는 수는 B,C,D 총 3개(fan-in)
모듈 F가 제어하는 수는 G,H 총 2개(fan-out)
[해설작성자 : 퇴근하고 싶다]

9. 다음 내용이 설명하는 UI설계 도구는?(2022년 03월)

   

     1. 스토리보드(Storyboard)
     2. 목업(Mockup)
     3. 프로토타입(Prototype)
     4. 유스케이스(Usecase)

     정답 : []
     정답률 : 80%
     <문제 해설>
스토리보드 : 디자이너와 개발자가 최종적으로 참고하는 작업지침서
상단이나 우측에 제목,작성자등을 입력하고 좌측에는 UI화면,우측엔 디스크립션을 기입한다.
프로토타입 : 와이어프레임이나 스토리보드등에 인터랙션을 적용함으로써 실제 구현된 것처럼 테스트가 가능한 동적인 형태의 모형
유스케이스 : 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술한다.
[해설작성자 : 코라투]

10. CASE(Computer-Aided Software Engineering)의 원천 기술이 아닌 것은?(2021년 05월)
     1. 구조적 기법
     2. 프로토타이핑 기술
     3. 정보 저장소 기술
     4. 일괄처리 기술

     정답 : []
     정답률 : 55%
     <문제 해설>
CASE의 원천 기술은
구조적 기법, 프로토타이핑 기술, 자동프로그래밍 기술, 정보 저장소 기술, 분산 처리 기술
이 있다.
[해설작성자 : comcbt.com 이용자]

CASE(Computer-Aided Software Engineering)는 소프트웨어 개발에 컴퓨터 기술을 활용하여 효율성과 품질을 향상시키는 방법론입니다. CASE는 다양한 원천 기술을 기반으로 합니다.
1. **구조적 기법(Structured Technique):** 이는 복잡한 시스템을 여러 개의 작은 부분으로 분할하여 문제를 해결하는 방법으로, 설계 및 개발 과정을 구조화합니다.
2. **프로토타이핑 기술(Prototyping Technique):** 이는 초기 단계에서 사용자와 시스템 간의 상호 작용을 모방한 모형을 생성하여 시스템 요구사항을 더 잘 이해하는 데 도움이 됩니다.
3. **정보 저장소 기술(Information Repository Technique):** 이는 시스템의 모든 정보를 중앙에 모아 시스템의 모든 관련 정보를 쉽게 액세스하고 업데이트할 수 있도록 하는 방법입니다.
그러나,
4. **일괄처리 기술(Batch Processing Technique):** 이는 누적된 작업을 한 번에 처리하는 기술로, 일반적으로 CASE의 원천 기술로 간주되지는 않습니다.
따라서, CASE의 원천 기술이 아닌 것은 '4. 일괄처리 기술'입니다.
[해설작성자 : 계란청년]

11. UML 다이어그램 중 정적 다이어그램이 아닌 것은?(2022년 03월)
     1. 컴포넌트 다이어그램
     2. 배치 다이어그램
     3. 순차 다이어그램
     4. 패키지 다이어그램

     정답 : []
     정답률 : 79%
     <문제 해설>
정적(구조적)다이어그램 : 클객컴배복패
[해설작성자 : 함초롬다솜]

UML 다이어그램의 분류
정적구조: [ 클래스, 객체, 패키지, 컴포넌트, 복합구조, 배치]
동적구조: [ 유스케이스, 상태, 활동, 시퀀스, 통신, 상호작용, 타이밍]
1) 클래스 다이어그램: 객체를 생성하기 위한 도구
2) 객체 다이어그램: 객체 간의 연결관계를 표현
3) 패키지 다이어그램: 객체들의 그룹화된 표현
4) 컴포넌트 다이어그램: 시스템을 구성하는 컴포넌트 사이에 의존관계를 표현
* 컴포넌트는 1개이상의 클래스로 구현됨.
5) 복합구조 다이어그램: 컴포넌트나 클래스의 내부 구조를 보여주기 위해 사용  내부 연결 형태를 표현
6) 배치 다이어그램: H/W자원에 연결된 S/W컴포넌트 배치를 표현

7) 유스케이스 다이어그램: 사용자의 시각에서 소프트웨어의 범위와 기능을 표현
8) 상태 다이어그램: 시간에 따라 객체가 변하는 상태를 표현
9) 활동 다이어그램: 객체의 동적행위를 활동으로 표현
10) 시퀀스 다이어그램: 객체간 상호작용을 시간 순서에 따른 메시지로 표현
11) 통신 다이어그램: 객체간 상호작용을 관계형태의 메세지로 표현
12) 상호작용 다이어그램: 객체들의 상호작용 관계를 표현
13) 타이밍 다이어그램: 객체간 상태변화를 구체적인 시간으로 표현
[해설작성자 : SD.신동]

오답해설) 순차(sequence,시퀀스) 다이어그램은 동적 다이어그램
[해설작성자 : 코봉이]

12. 소프트웨어의 상위설계에 속하지 않는 것은?(2020년 09월)
     1. 아키텍처 설계
     2. 모듈 설계
     3. 인터페이스 정의
     4. 사용자 인터페이스 설계

     정답 : []
     정답률 : 49%
     <문제 해설>
상위 설계 : 아키텍처 설계, 데이터 설계, 시스템 분할, 인터페이스 정의, 사용자 인터페이스 설계(UI 설계)

하위 설계 : 모듈 설계, 인터페이스 작성
[해설작성자 : 도라예몽]

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

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

14. 소프트웨어의 사용자 인터페이스개발시스템(User Interface Development System)이 가져야 할 기능이 아닌 것은?(2020년 09월)
     1. 사용자 입력의 검증
     2. 에러 처리와 에러 메시지 처리
     3. 도움과 프롬프트(prompt) 제공
     4. 소스 코드 분석 및 오류 복구

     정답 : []
     정답률 : 84%
     <문제 해설>
소스코드분석 및 오류복구는 보통 back-end에서 컴파일러가 하는 역할로 User Interface Development System의 기능과는 거리가 멀다고 볼 수 있다.
[해설작성자 : 오씨]

15. GoF(Gang of Four) 디자인 패턴을 생성, 구조, 행동 패턴의 세 그룹으로 분류할 때, 구조 패턴이 아닌 것은?(2022년 04월)
     1. Adapter 패턴
     2. Bridge 패턴
     3. Builder 패턴
     4. Proxy 패턴

     정답 : []
     정답률 : 63%
     <문제 해설>
[구조패턴]
-어댑터
-브릿지
-컴포지트
-데코레이터
-퍼싸트
-플라이웨이트
-프록시
[해설작성자 : 아기재혁]

생성패턴 : 객체를 생성하는 것에 대한 패턴
- 추상 팩토리 패턴(abstract factory), 빌더 패턴(builder), 팩토리 메소드 패턴(factory method), 프로토타입 패턴(prototype), 싱글톤 패턴(singleton)

구조패턴 : 구조를 통해 확장성을 꾀하는 패턴
- 어댑터 패턴(adapter), 브릿지 패턴(bridge), 컴포지트 패턴(composite), 데코레이터 패턴(decorator), 퍼사드 패턴(facade), 플라이웨잇 패턴(flysweight), 프록시 패턴(proxy)

행위 패턴 : 행위의 변경, 수정 등을 위한 패턴
- 역할 사슬 패턴(책임 연쇄, chain of reposibility), 커맨드 패턴(command), 인터프리터 패턴(interpreter), 이터레이터 패턴(반복자, iterator), 미디에이터 패턴(중재자, mediator), 메멘토 패턴(memento), 옵저버 패턴(observer), 상태 패턴(state), 전략 패턴(strategy), 템플릿 메소드 패턴(template method), 비지터 패턴(방문자, visitor)
[해설작성자 : ㅈㅇㅎ]

16. UI와 관련된 기본 개념 중 하나로, 시스템의 상태와 사용자의 지시에 대한 효과를 보여주어 사용자가 명령에 대한 진행 상황과 표시된 내용을 해석할 수 있도록 도와주는 것은?(2022년 04월)
     1. Feedback
     2. Posture
     3. Module
     4. Hash

     정답 : []
     정답률 : 77%
     <문제 해설>
피드백(feedback): 처리된 결과를 측정하고 목표에 도달되었는가를 검사하며 불충분할 경우 다시 입력하는 요소로 사용.
[해설작성자 : 내일시험임..]

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

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

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

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

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

19. CASE(Computer-Aided Software Engineering)도구에 대한 설명으로 거리가 먼 것은?(2020년 08월)
     1. 소프트웨어 개발 과정의 일부 또는 전체를 자동화하기 위한 도구이다.
     2. 표준화된 개발 환경 구축 및 문서 자동화 기능을 제공한다.
     3. 작업 과정 및 데이터 공유를 통해 작업자간 커뮤니케이션을 증대한다.
     4. 2000년대 이후 소개되었으며, 객체지향 시스템에 한해 효과적으로 활용된다.

     정답 : []
     정답률 : 80%
     <문제 해설>
소프트웨어 공학의 자동화를 의미, 소프트웨어 공학작업을 자동화한 소프트웨어 패키지를 CASE도구라고 한다.
CASE도구들은 소프트웨어 관리자들과 실무자들이 소프트웨어 프로세스와 관련된 활동을 지원한다. 즉, 프로젝트 관리 활동을 자동화하고, 결과물을 관리하며, 엔지니어들의 분석, 설계 및 코딩과 테스트작업을 도운다.

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

CASE는 1980년대에 소개되었으며, 1990년대부터 자주 사용되었습니다.
[해설작성자 : 소현진]

CASE는 객체지향 시스템 뿐만 아니라 구조 시스템등 모든분야에 적용됨
[해설작성자 : 닉녬]

20. 사용자 인터페이스(UI)의 특징으로 틀린 것은?(2021년 05월)
     1. 구현하고자 하는 결과의 오류를 최소화한다.
     2. 사용자의 편의성을 높임으로써 작업시간을 증가시킨다.
     3. 막연한 작업 기능에 대해 구체적인 방법을 제시하여 준다.
     4. 사용자 중심의 상호 작용이 되도록 한다.

     정답 : []
     정답률 : 90%
     <문제 해설>
편의성을 높임으로써 작업시간을 '단축'시킨다
[해설작성자 : 유녀기]

2과목 : 소프트웨어 개발


21. 통합 테스트(Integration Test)와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 시스템을 구성하는 모듈의 인터페이스와 결합을 테스트하는 것이다.
     2. 하향식 통합 테스트의 경우 넓이 우선(Breadth First) 방식으로 테스트를 할 모듈을 선택할 수 있다.
     3. 상향식 통합 테스트의 경우 시스템 구조도의 최상위에 있는 모듈을 먼저 구현하고 테스트한다.
     4. 모듈 간의 인터페이스와 시스템의 동작이 정상적으로 잘되고 있는지를 빨리 파악하고자 할 때 상향식 보다는 하향식 통합 테스트를 사용하는 것이 좋다.

     정답 : []
     정답률 : 65%
     <문제 해설>
상향식 통합 테스트 (Bottom Up Integration Test)
- 프로그램의 하위 모듈에서 상위 모듈 방향으로 통합
- 하나의 주요 제어 모듈과 관련된 종속 모듈의 그룹인 클러스터(Cluster)필요
하향식 통합 테스트 (Top Down Integration Test)
- 상위 모듈에서 하위 모듈 방향으로 통합
- 깊이 우선 통합법, 넓이 우선 통합법 사용
- 초기부터 사용자에게 시스템 구조를 보여줌
[해설작성자 : 전자공학도]

상향식 테스트 : 드라이버(Driver) 이용(하위 모듈 호출, 매개변수 전달, 테스트 후 결과 도출)
하향식 테스트 : 스텁(Stub) 이용(모듈 기능만 수행)
[해설작성자 : 공부하자]

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

    

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

     정답 : []
     정답률 : 70%
     <문제 해설>
정적 분석 도구 - pmd, cppcheck, SonarQube, ccm등이 있다.
valance는 동적 분석 도구중 하나 이다.
[해설작성자 : 정보처리지기]

pmd - 코드 결함 분석
checkstyle - java코드 표준 준수 검사
cppcheck     - c/c++ 오버플로우 검사
[해설작성자 : 시험이틀남았다]

동적 분석 도구 - valance, Avalanche, Valgrind
[해설작성자 : 해설작성자]

24. 인터페이스 구현 검증도구 중 아래에서 설명하는 것은?(2020년 06월)

    

     1. xUnit
     2. STAF
     3. FitNesse
     4. RubyNode

     정답 : []
     정답률 : 61%
     <문제 해설>
인터페이스 구현 검증 도구
xUnit : Java, C++ 등 다양한 언어 지원하는 단위 테스트 프레임워크
STAF : 서비스 호출 및 컴포넌트 재사용 등 환경 지원하는 테스트 프레임워크
FitNesse : 웹 기반 테스트케이스 설계, 실행, 결과 확인 등을 지원하는 테스트 프레임워크
NTAF : FitNesse의 장점인 협업 기능과    STAF의 장점인 재사용 및 확장성을 통합한 네이버의 테스트 자동화 프레임워크이다.
Selenium : 다양한 브라우저 및 개발 언어 지원하는 웹 애플리케이션 테스트 프레임워크
Watir : Ruby를 사용하는 애플리케이션 테스트 프레임워크
Ruby : 인터프리터 방식의 객체지향 스크립트 언어
[해설작성자 : 거상 주작섭]

25. EAI(Enterprise Application Integration)의 구축 유형으로 옳지 않은 것은?(2020년 06월)
     1. Point-to-Point
     2. Hub&Spoke
     3. Message Bus
     4. Tree

     정답 : []
     정답률 : 70%
     <문제 해설>
EAI 구축 유형 : 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달 연계 통합등 상호연동이 가능하게 해주는 솔루션 // 그림 확인해야함
Point - to - Point : 가장 기본적인 애플리케이션 통합 방식 1:1로 연결
Hub & Spoke : 단일 접점인 허브 시스템을 통해 데이터 전송하는 중앙 집중형 방식
Message Bus : 애플리케이션 사이에 미들웨어를 두어 처리하는 방식
Hybrid : Hub & Spoke 와 Message Bus 혼합 방식
[해설작성자 : 거상 주작섭]

26. 정형 기술 검토(FTR)의 지침으로 틀린 것은?(2022년 03월)
     1. 의제를 제한한다.
     2. 논쟁과 반박을 제한한다.
     3. 문제 영역을 명확히 표현한다.
     4. 참가자의 수를 제한하지 않는다.

     정답 : []
     정답률 : 78%
     <문제 해설>
### 정형기술검토(FTR)의 지침
- 오류 검출에 초점을 두고 해결책을 나중으로 미룸(제품 검토의 집중성)
- 검토를 위한 자료를 사전에 배포하여 검토하도록 한다(사전 준비성)
- 의견을 제한하되 충분히 받아들인다(의제의 제한성)
- 안건을 세우면 고수한다(안건 고수성)
- 논쟁과 반박을 제한한다(논쟁 반박의 제한성)
- 문제 영역을 공개한다(문제 공개성)
- 참가자의 수를 제한한다(참가 인원의 제한성)
- 발견된 오류는 문서화한다(문서성)
[해설작성자 : 강썬]

FTR 지침 사항 : 한번 더 리뷰하세요~~
제품 검토에만 집중하라
의제를 제한하여 진행하라
논쟁과 반박을 제한하라
문제영역을 정확히 표현하라
해결책이나 개선책에 대해서는 논하지 말라
참가자수를 제한하고 사전준비를 강요하라
자원과 시간 일정을 할당하라    
모든 검토자들을 위해 의미있는 훈련을 시행하라
검토자들은 사전에 작성한 메모들을 공유하라
검토의 과정과 결과를 재검토하라
[해설작성자 : -학습자-]

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

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

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

28. 정보시스템 개발 단계에서 프로그래밍 언어 선택 시 고려할 사항으로 가장 거리가 먼 것은?(2022년 03월)
     1. 개발 정보시스템의 특성
     2. 사용자의 요구사항
     3. 컴파일러의 가용성
     4. 컴파일러의 독창성

     정답 : []
     정답률 : 85%
     <문제 해설>
프로그래밍 언어의 선정 기준
- 친밀감
- 언어의 능력
- 처리의 효율성
- 프로그램 구조
- 프로그램의 길이
[해설작성자 : 지나가던 이용자]

프로그래밍 언어의 선정 기준 :
친밀감, 언어의 능력, 처리의 효율성, 프로그램 구조, 프로그램의 길이, 이식성, 과거의 개발 실적, 알고리즘과 계산상의 난이도, 자료 구조의 난이도, 성능 고려 사항들, 대상 업무의 성격, 소프트웨어의 수행 환경, 개발 담당자의 경험과 지식, 사용자의 요구사항, 컴파일러의 이용 가능성
[해설작성자 : 지나가던 이용자]

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

    

     1. A
     2. B
     3. D
     4. G

     정답 : []
     정답률 : 80%
     <문제 해설>
< 이진 트리 운행법 >
- Preorder 운행 : Root → Left → Right 순으로 운행
- Inorder 운행 : Left → Root → Right 순으로 운행
- Postorder 운행 : Left → Right → Root    순으로 운행
[해설작성자 : ㅇㅎㅅ]

Preorder : ABDCEGHF
Inorder : DBAGEHCF
Postorder : DBGHEFCA
[해설작성자 : 안녕상용]

30. 소프트웨어 테스트에서 검증(Verification)과 확인 (Validation)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 소프트웨어 테스트에서 검증과 확인을 구별하면 찾고자 하는 결함 유형을 명확하게 하는 데 도움이 된다.
     2. 검증은 소프트웨어 개발 과정을 테스트하는 것이고, 확인은 소프트웨어 결과를 테스트 하는 것이다.
     3. 검증은 작업 제품이 요구 명세의 기능, 비기능 요구사항을 얼마나 잘 준수하는지 측정하는 작업이다.
     4. 검증은 작업 제품이 사용자의 요구에 적합한지 측정하며, 확인은 작업 제품이 개발자의 기대를 충족시키는지를 측정한다.

     정답 : []
     정답률 : 64%
     <문제 해설>
검증(Verification): 소프트웨어가 요구사항에 부합하게 구현되었음을 보장하는 활동
확인(Validation): 소프트웨어가 고객의 의도에 따라 구현되었음을 보장하는 활동
[해설작성자 : ㄱㄱㅇ]

검증 -> 개발자
확인 -> 사용자
[해설작성자 : 합격길걷자ㅡ]

31. 알고리즘과 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 주어진 작업을 수행하는 컴퓨터 명령어를 순서대로 나열한 것으로 볼 수 있다.
     2. 검색(Searching)은 정렬이 되지 않은 데이터 혹은 정렬이 된 데이터 중에서 키값에 해당되는 데이터를 찾는 알고리즘이다.
     3. 정렬(Sorting)은 흩어져있는 데이터를 키값을 이용하여 순서대로 열거하는 알고리즘이다.
     4. 선형 검색은 검색을 수행하기 전에 반드시 데이터의 집합이 정렬되어 있어야 한다.

     정답 : []
     정답률 : 66%
     <문제 해설>
선형 검색 - 처음부터 끝까지 하나씩 순서대로 비교하며 원하는 값을 찾아내는 검색
[해설작성자 : 전자공학도]

이진검색 - 검색을 수행하기 전에 반드시 데이터의 집합이 정렬되어 있어야 한다.
[해설작성자 : 문은식]

검색 알고리즘
- 선형 검색(Linear Search) : 데이터가 모인 집합(배열, 리스트 등)의 처음부터 끝까지 하나씩 순서대로 비교하며 검색(순차검색)
- 이진 검색(Binary Search) : 데이터가 오름차순 혹은 내림차순으로 정렬된 배열에서 검색하는 알고리즘(이분 검색)
[해설작성자 : 공부하자]

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. 소프트웨어 품질목표 중 쉽게 배우고 사용할 수 있는 정도를 나타내는 것은?(2021년 03월)
     1. Correctness
     2. Reliability
     3. Usability
     4. Integrity

     정답 : []
     정답률 : 88%
     <문제 해설>
* 정확성(correctness): 시스템의 사양과 설계, 구현에 있어서 오류가 없는 정도
* 유용성(usability): 사용자가 시스템을 배우고 사용하는 데 있어서의 용이함
* 효율성(efficiency): 메모리와 실행 시간 같은 시스템 리소스의 최소 사용
* 신뢰성(reliability): 정해진 상황에서 언제든지 필요한 기능을 수행할 수 있는 시스템의 능력 - 고장 사이의 시간
* 무결성(integrity): 시스템이 프로그램이나 데이터에 대한 허용되지 않거나 잘못된 접근을 막는 정도. 무결성의 기본 개념에는 데이터의 적절한 접근을 보장할 뿐만 아니라 권한이 없는 사용자의 접근 제한 기능이 포한된다. 즉, 병렬 데이터를 갖는 데이블은 병렬로 변경되고 날짜 필드는 타당한 날짜만을 포함하는 식이다.
* 적응성(adaptablility): 시스템을 변경하지 않고 설계된 환경에서 뿐만 아니라 다른 응용 분야나 환경에서도 사용될 수 있는 정도
* 정밀성(accuracy): 구성된 시스템에 오류가 없는 정도. 특히 대량의 데이터를 고려한다. 정밀성은 정확성과 다르다. 정밀성은 시스템이 정확하게 구성되었는지가 아닌 시스템이 용도대로 얼마나 잘 수행하는지를 결정한다.
* 견고성(robustness): 시스템이 잘못된 입력이나 악조건에서도 기능을 계속해서 수행할 수 있는 정도
[해설작성자 : comcbt.com 이용자]

Correctness 정확성
Reliability 신뢰성
Usability 사용 용이성
Integrity 무결성
[해설작성자 : ㅇ]

34. 다음이 설명하는 테스트 용어는?(2020년 09월)

    

     1. 테스트 케이스
     2. 테스트 시나리오
     3. 테스트 오라클
     4. 테스트 데이터

     정답 : []
     정답률 : 66%
     <문제 해설>
테스트 케이스 : 구현된 소프트웨어가 사용자의 요구사항을 정확하게 준수했는지를 확인하기 위해 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서

테스트 시나리오 : 테스트 케이스를 적용하는 순서에 따라 여러 개의 테스트 케이스들을 묶은 집합

테스트 오라클 : 문제 참조

[해설작성자 : 한기대 황치열]

35. 단위 테스트(Unit Test)와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트한다.
     2. 모듈 내부의 구조를 구체적으로 볼 수 있는 구조적 테스트를 주로 시행한다.
     3. 필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 스텁(Stub)이라고 한다.
     4. 테스트할 모듈을 호출하는 모듈도 있고, 테스트할 모듈이 호출하는 모듈도 있다.

     정답 : []
     정답률 : 55%
     <문제 해설>
필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 드라이버(test driver)라고 한다. 반대로 테스트 스텁(test stub)은 인자를 통해 받은 값을 가지고 수행한 후 그 결과를 테스트할 모듈에 넘겨주는 역할을 한다.
[해설작성자 : 물집메고먐미밌다]

36. 클린코드 작성원칙에 대한 설명으로 틀린 것은?(2021년 05월)
     1. 코드의 중복을 최소화 한다.
     2. 코드가 다른 모듈에 미치는 영향을 최대화하도록 작성한다.
     3. 누구든지 코드를 쉽게 읽을 수 있도록 작성한다.
     4. 간단하게 코드를 작성한다.

     정답 : []
     정답률 : 92%
     <문제 해설>
중복성 최소화 : 중복된 코드는 삭제, 공통된 코드 사용
가독성 : 누구나 코드를 쉽게 읽을 수 있도록 작성
단순성 : 한번에 한 가지를 처리하도록 코드를 간단하게 작성

2. 의존성 배제 : 코드가 다른 모듈에 미치는 영향을 최소화 할것, 코드 변경시 다른 부분에 영향이 없도록 작성
[해설작성자 : comcbt.com 이용자]

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

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

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

38. 소프트웨어 재공학이 소프트웨어의 재개발에 비해 갖는 장점으로 거리가 먼 것은?(2020년 08월)
     1. 위험부담 감소
     2. 비용 절감
     3. 시스템 명세의 오류억제
     4. 개발시간의 증가

     정답 : []
     정답률 : 92%
     <문제 해설>
상식적으로 생각하였을 경우, SW를 첨부터 다시 개발하는거보다는 재공학 하는것이 더 시간적으로 절약된다.
[해설작성자 : zz]

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

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

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

40. 외계인코드(Alien Code)에 대한 설명으로 옳은 것은?(2020년 06월)
     1. 프로그램의 로직이 복잡하여 이해하기 어려운 프로그램을 의미한다.
     2. 아주 오래되거나 참고문서 또는 개발자가 없어 유지보수 작업이 어려운 프로그램을 의미한다.
     3. 오류가 없어 디버깅 과정이 필요 없는 프로그램을 의미한다.
     4. 사용자가 직접 작성한 프로그램을 의미한다.

     정답 : []
     정답률 : 84%
     <문제 해설>
외계인코드 : 외계인 → 없는 존재 = 코드에 대해 아는 사람이 없음 → 유지 보수 어려움
[해설작성자 : 거상 주작섭]

스파게티 코드 : 프로그램의 로직이 복잡하여 이해하기 어려운 프로그램을 의미한다.
→나쁜코드, 코드의 로직이 얽혀 스파게티 코드라고도 함.
[해설작성자 : 자몽자몽]

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


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

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

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

42. 다음에서 설명하는 스키마(Schema)는?(2021년 03월)

    

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

     정답 : []
     정답률 : 80%
     <문제 해설>
-개념 스키마
사용자와 데이터베이스 관리자 관점의 스키마/ 데이터베이스에 실제로 어떤 데이터가 저장되었으며, 데이터 간의 관계는 어떻게 되는지를 정의하는 스키마로 전체 관점으로 한개만 존재하며 접근권한, 보안 및 무결성등에 관한 정의를 포함

-내부 스키마
저장장치와 데이터베이스 설계자 및 개발자 관점의 스키마/ 개념 스키마를 물리적 저장장치에 구현하는 방법을 정의하는 데 사용하고 물리적 구조 및 내부 레코드의 물리적 순서 등을 표현

-외부 스키마
사용자 관점의 스키마/사용자 또는 프로그램의 입장에서의 논리적 구조로 여러개가 존재
​[해설작성자 : 또르링]

43. 데이터베이스 설계 단계 중 저장 레코드 양식설계, 레코드 집중의 분석 및 설계, 접근 경로 설계와 관계되는 것은?(2021년 03월)
     1. 논리적 설계
     2. 요구 조건 분석
     3. 개념적 설계
     4. 물리적 설계

     정답 : []
     정답률 : 65%
     <문제 해설>
*요구조건 분석 / 명세 : 데이터베이스의 사용자, 사용목적, 사용범위, 제약조건 등에 대한 내용을 정리하고 명세서를 작성
*개념적 설계 : 정보를 구조화 하기 위해 추상적 개념으로 표현하는 과정으로 개념 스키마 모델링과 트랜잭션 모델링을 병행하고, 요구조건 분석을 통해 DBMS 독립적인 E-R 다이어그램을 작성
*논리적 설계 : 자료를 컴퓨터가 이해할 수 있도록 특정 DBMS의 논리적 자료 구조로 변환하는 과정
*물리적 설계 : 논리적 구조로 표현된 데이터를 물리적 구조의 데이터로 변환하는 과정
[해설작성자 : 분홍쨔응]

개념적 설계
:개념스키마 모델링 / 트렌젝션 모델링 / 독립적인 개념스키마설계 / E-R 다이어그램

논리적설계
:트렌젝션 인터페이스 설계 / 스키마 평가 및 정제 / 목표 DBMS에 맞는 논리스키마 설계 / 논리적구조의 데이터로 모델화

물리적설계
:저장구조 및 액세스 경로 설정 / 레코드 집중의 분석,설계 / 저장 레코드 양식 설계
[해설작성자 : 또르링]

44. SQL에서 VIEW를 삭제할 때 사용하는 명령은?(2021년 05월)
     1. ERASE
     2. KILL
     3. DROP
     4. DELETE

     정답 : []
     정답률 : 83%
     <문제 해설>
DELETE = 조건을 달아서 특정 행을 삭제할 때 사용
DROP = VIEW, TABLE, DATABASE를 완전 삭제할 때 사용
[해설작성자 : 컴알못]

추가적으로 VIEW에서는 ALTER 사용 불가능
[해설작성자 : 3회 합격하자]

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. SQL의 기능에 따른 분류 중에서 REVOKE문과 같이 데이터의 사용 권한을 관리하는데 사용하는 언어는?(2022년 04월)
     1. DDL(Data Definition Language)
     2. DML(Data Manipulation Language)
     3. DCL(Data Control Language)
     4. DUL(Data User Language)

     정답 : []
     정답률 : 70%
     <문제 해설>
DCL 종류
- COMMIT : 명령어로 수행된 결과를 실제 물리적 디스크로 저장하고, 명령어로 수행을 성공적으로 완료하였음을 선언한다.
- ROLLBACK : 명령어로 수행을 실패하였음을 알리고, 수행된 결과를 원상복구시킨다.
- GRANT : 데이터베이스 사용자에게 사용 권한 부여한다.
- REVOKE : 데이터베이스 사용자로부터 사용 권한 취소한다.
[해설작성자 : 두목넷]

DDL
- CREATE : SCHEMA(스키마), DOMAIN(도메인), TABLE(테이블), VIEW(뷰), INDEX(인덱스)를 정의
- ALTER : TABLE에 대한 정의를 변경하는 데 사용
- DROP : SCHEMA(스키마), DOMAIN(도메인), TABLE(테이블), VIEW(뷰), INDEX(인덱스)를 삭제
DML
- SELECT : 테이블에서 조건에 맞는 튜플을 검색
- INSERT : 테이블에 새로운 튜플을 삽입
- DELETE : 테이블에서 조건에 맞는 튜플을 삭제
- UPDATE : 테이블에서 조건에 맞는 튜플의 내용 변경
[해설작성자 : 전자공학도]

48. 릴레이션에 있는 모든 튜플에 대해 유일성은 만족시키지만 최소성은 만족시키지 못하는 키는?(2020년 09월)
     1. 후보키
     2. 기본키
     3. 슈퍼키
     4. 외래키

     정답 : []
     정답률 : 78%
     <문제 해설>
- 후보키(Candidate Key) : 릴레이션을 구성하는 속성 중 튜플을 유일하게 식별하기 위한 기본키로 사용할 수 있는 속성들을 뜻한다.

- 기본키(Primary Key) : 후보키 중에서 선택된 주키(Main Key)이다.

- 슈퍼키(Super Key) : 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키이다. 슈퍼키는 릴레이션에 있는 튜플에 대해 유일성을 만족시키지만, 최소성은 만족 시키지 못한다.

- 외래키(Foregin Key): 관계를 맺고 있는 릴레이션 R1, R2에서 릴레이션 R1이 참조하고 있는 릴레이션 R2의 기본키와 같은 R1릴레이션의 속성 말한다.
[해설작성자 : 정보처리지기]

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. 시스템 카탈로그에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 시스템 카탈로그의 갱신은 무결성 유지를 위하여 SQL을 이용하여 사용자가 직접 갱신하여야 한다.
     2. 데이터베이스에 포함되는 데이터 객체에 대한 정의나 명세에 대한 정보를 유지관리한다.
     3. DBMS가 스스로 생성하고 유지하는 데이터베이스 내의 특별한 테이블의 집합체이다.
     4. 카탈로그에 저장된 정보를 메타 데이터라고도 한다.

     정답 : []
     정답률 : 82%
     <문제 해설>
사용자가 갱신하는게 아니라 시스템에서 자동갱신
[해설작성자 : 소다]

시스템 카탈로그
- 시스템 그 자체에 관련 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터베이스이다.
- 시스템 카탈로그 내의 각 테이블은 사용자를 포함하여 DBMS에서 지원하는 모든 데이터 객체에 대한 정의나 명세에관한 정보를 유지 관리하는 시스템 테이블이다.
[해설작성자 : comcbt.com 이용자]

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

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

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

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

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

53. 정규화를 거치지 않아 발생하게 되는 이상(anomaly) 현상의 종류에 대한 설명으로 옳지 않은 것은?(2021년 03월)
     1. 삭제 이상이란 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 삭제 현상이다.
     2. 삽입 이상이란 릴레이션에서 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들도 함께 삽입되는 현상이다.
     3. 갱신 이상이란 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상이다.
     4. 종속 이상이란 하나의 릴레이션에 하나 이상의 함수적 종속성이 존재하는 현상이다.

     정답 : []
     정답률 : 73%
     <문제 해설>
이상(Anomaly)의 종류에는 삽입이상, 삭제이상, 갱신이상만 존재한다.
[해설작성자 : 또르링]

54. 다음 SQL문에서 사용된 BETWEEN 연산의 의미와 동일한 것은?(2022년 03월)

    

     1. 점수 >= 90 AND 점수 <= 95
     2. 점수 > 90 AND 점수 < 95
     3. 점수 > 90 AND 점수 <= 95
     4. 점수 >= 90 AND 점수 < 95

     정답 : []
     정답률 : 82%
     <문제 해설>
SQL문의 조건은 성적 테이블에 성적(점수)가 90이상 95이하인 학과를 찾아라 이다.
[해설작성자 : 독학하는자]

55. 3NF에서 BCNF가 되기 위한 조건은?(2021년 03월)
     1. 이행적 함수 종속 제거
     2. 부분적 함수 종속 제거
     3. 다치 종속 제거
     4. 결정자이면서 후보 키가 아닌 것 제거

     정답 : []
     정답률 : 79%
     <문제 해설>
1NF(도)-2NF(부)-3NF(이)-BCNF(결)-4NF(다)-5NF(조)

도부이결다줘 = 두부이걸다줘?
앞글자만 따서 순서외우면 편함
[해설작성자 : 또르링]

56. 데이터 제어언어(DCL)의 기능으로 옳지 않은 것은?(2020년 06월)
     1. 데이터 보안
     2. 논리적, 물리적 데이터 구조 정의
     3. 무결성 유지
     4. 병행수행 제어

     정답 : []
     정답률 : 65%
     <문제 해설>
DCL 데이터 제어 언어는 데이터 베이스 관리자가 데이터 보안, 무결성 유지, 병행 제어, 회복을 하기 위해 DBA가 사용하는 제어용 언어
[해설작성자 : G다다]

DDL(데이터 정의어)의 기능 중 논리적 데이터 구조와 물리적 데이터 구조의 사상을 정의하기가 있다.
[해설작성자 : 취업뿌숨]

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

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

58. 다음 중 SQL의 집계 함수(aggregation function)가 아닌 것은?(2020년 08월)
     1. AVG
     2. COUNT
     3. SUM
     4. CREATE

     정답 : []
     정답률 : 91%
     <문제 해설>
AVG: 해당 집계행의 평균
SUM: 해당 집계행의 합
COUNT: 집계행의 수

SCR_TBL
ID SUBJECT SCORE
1 국어 90
2 영어 95
3 수학 100

인 테이블이 있을때
SELECT AVG(SCORE), SUM(SCORE), COUNT(*) FROM SCR_TBL;
결과는
95, 285, 3이 나옵니다.
[해설작성자 : 소현진]

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

    

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

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

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

60. 제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. C언어에서 비트 논리연산자에 해당하지 않는 것은?(2020년 06월)
     1. ^
     2. ?
     3. &
     4. ~

     정답 : []
     정답률 : 66%
     <문제 해설>
C언어에서 비트 논리 연산 : & , ^ , | , ~
[해설작성자 : 거상 주작섭]

? 는 조건연산자
[해설작성자 : 합격하고싶다]

비트 연산자 ^, l, &, ~
시프트 연산자 >>, <<
[해설작성자 : comcbt.com 이용자]

^(XOR)
? 조건문
&(AND)
~(NOT)
[해설작성자 : 전자공학도]

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

    

     1. 45
     2. 55
     3. 66
     4. 78

     정답 : []
     정답률 : 66%
     <문제 해설>
range([시작,] 끝[, 간격])으로 ( []은 생략할 수 있는 인자를 말함 )
끝은 포함하지 않음 따라서 0~11까지의 숫자의 합
[해설작성자 : 수성구 불주먹]

Python의 ranger 함수
range(A) : 0부터 A-1까지의 정수 범위를 반환한다
ranger(A,B) : A부터 B-1까지의 정수 범위를 반환한다.
ranger(A,B,C) : A부터 B-1까지 C만큼의 간격으로 정수를 반환한다.

문제    : ranger(n+1) → ranger(11+1) → ranger(12) 즉, 0부터 11까지의 숫자를 반환한다
근데 s+=num 이니깐 s에다가 for문을 돌리면서 나온 num 변수(0부터 11까지의 숫자)를 누적해서 더하라
[해설작성자 : 합격드가자~]

for num in range(11) 일경우
반복을 0부터 10번 까지 반복을 합니다.
S += num <<-- 뜻은 반복 할때 마다 S 값에 num 값을 추가하라는 뜻이고
반복되는 과정은
num 값은 0 , 1 , 2 , 3 , 4 , 5, 6 , 7 , 8 , 9 , 10 값이 추가됩니다.
즉 해당 숫자를 전부 더하는 값이 결과 이며,
for num in range(n+1)    <<-- 은 즉 11+1 하라는 뜻으로 12이므로
0부터 11까지 숫자를 더하여 결과 값을 제출하면 됩니다.
[해설작성자 : 지나가던 행인]

64. 시스템에서 모듈 사이의 결합도(Coupling)에 대한 설명으로 옳은 것은?(2020년 06월)
     1. 한 모듈 내에 있는 처리요소들 사이의 기능적인 연관 정도를 나타낸다.
     2. 결합도가 높으면 시스템 구현 및 유지보수 작업이 쉽다.
     3. 모듈간의 결합도를 약하게 하면 모듈 독립성이 향상된다.
     4. 자료결합도는 내용결합도 보다 결합도가 높다.

     정답 : []
     정답률 : 69%
     <문제 해설>
결합도
모듈 외에 있는 처리요소들 사이의 기능적인 연관 정도
(1.x    응집도에 대한 설명)
결합도가 강할수록 품질이 낮으며, 시스템 구현 및 유지보수 작업이 어렵다.
(2. x)
모듈 간의 결합도를 약하게 하면 모듈 독립성이 향상된다.
(3. o 결합도와 응집도 반비례라고 생각하면 편함 결합이 약하다 -> 응집이 강하다 -> 모듈 독립성이 향상된다.
4.x
(자료 / 스탬프 / 제어 / 외부 / 공통 / 내용 /    -> 갈수록 결합도 강함) 이거 순서 맞춰라고 문제내는 경우도 이전 기출에 있었는데 영어임)
[해설작성자 : 거상 주작섭]

65. IPv6에 대한 특성으로 틀린 것은?(2022년 03월)
     1. 표시방법은 8비트씩 4부분의 10진수로 표시한다.
     2. 2128개의 주소를 표현할 수 있다.
     3. 등급별, 서비스별로 패킷을 구분할 수 있어 품질보장이 용이하다.
     4. 확장기능을 통해 보안기능을 제공한다.

     정답 : []
     정답률 : 71%
     <문제 해설>
IPv6 : 16비트씩 8부분의 16진수로 표시
[해설작성자 : 정처기 공부]

66. 다음 쉘 스크립트의 의미로 옳은 것은?(2020년 09월)

    

     1. wow 사용자가 로그인한 경우에만 반복문을 수행한다.
     2. wow 사용자가 로그인할 때까지 반복문을 수행한다.
     3. wow 문자열을 복사한다.
     4. wow 사용자에 대한 정보를 무한 반복하여 출력한다.

     정답 : []
     정답률 : 70%
     <문제 해설>
who 명령어는 현재 시스템에 로그인한 유저의 목록을 보여 준다.
|(파이프)는 앞의 who 명령어의 출력 결과를 뒤의 grep 명령어로 전달한다.
grep 명령어는 who 명령문의 결과 중 wow 유저가 로그인하면 그 결과를 필터링하여 출력한다.
sleep 명렁문 뒤의 숫자(초)만큼 잠시 수행을 대기한다.
[해설작성자 : 오씨]

until....do : 조건문이 참이 될 때까지 실행
[해설작성자 : 지원]

67. IPv6에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 멀티캐스트(Multicast) 대신 브로드캐스트(Broadcast)를 사용한다.
     2. 보안과 인증 확장 헤더를 사용함으로써 인터넷 계층의 보안기능을 강화하였다.
     3. 애니캐스트(Anycast)는 하나의 호스트에서 그룹 내의 가장 가까운 곳에 있는 수신자에게 전달하는 방식이다.
     4. 128비트 주소체계를 사용한다.

     정답 : []
     정답률 : 77%
     <문제 해설>
브로드캐스팅은 IPv4에 해당합니다.
[해설작성자 : comcbt.com 이용자]

IPv4 : 유니캐스트, 멀티캐스트, 브로드캐스트
IPv6 : 유니캐스트, 애니캐스트, 멀티캐스트

IPv6는 브로드캐스트 대신 애니캐스트 사용
[해설작성자 : 지나가요]

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

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

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

71. 빈 기억공간의 크기가 20KB, 16KB, 8KB, 40KB 일 때 기억장치 배치 전략으로 “Best Fit"을 사용하여 17KB의 프로그램을 적재할 경우 내부단편화의 크기는 얼마인가?(2022년 03월)
     1. 3KB
     2. 23KB
     3. 64KB
     4. 67KB

     정답 : []
     정답률 : 78%
     <문제 해설>
문제에서 Best Fit을 물을 시 내부단편화가 제일 작은 보기를 찾으면 됨
1) 20KB - 17KB = 3KB
2) 16KB - 17KB = 불가
3) 8KB - 17KB = 불가
4) 40KB - 17KB = 23KB
따라서 1번이 정답
[해설작성자 : 단기합격은 유튜브 윤파고]

- First Fit: 들어갈 수 있는 첫 번째 공간에 넣음
- Best Fit: 내부 단편화(자투리)가 가장 적게 남는 공간에 넣음
- Worst Fit: 가장 큰 공간에 넣음
[해설작성자 : 민트초코담금주]

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

    

     1. 1
     2. 11
     3. 66
     4. 98

     정답 : []
     정답률 : 75%
     <문제 해설>
ASCII code table을 참조하면

A는 10진수로 나타냈을 때, 65
a는 10진수로 나타냈을 때, 97
부터 알파벳이 시작한다.
[해설작성자 : 해군본부 정체단 674기 수뱅]

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

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

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

74. 페이징 기법에서 페이지 크기가 작아질수록 발생하는 현상이 아닌 것은?(2021년 05월)
     1. 기억장소 이용 효율이 증가한다.
     2. 입·출력 시간이 늘어난다.
     3. 내부 단편화가 감소한다.
     4. 페이지 맵 테이블의 크기가 감소한다.

     정답 : []
     정답률 : 48%
     <문제 해설>
페이징 기법 : 컴퓨터가 메인 메모리에서 사용하기 위해 데이터를 저장하고 검색하는 메모리 관리 기법
페이징기법을 통해 물리적 메모리는 연속적으로 할당되어 존재할 필요가 없음
페이징기법을 통해 비연속적 메모리를 연속적메모리처럼 만들 수 있음

*페이지 크기가 작은경우
더 많은 페이징 사상테이블 필요
내부 단편화 감소
페이지의 집합을 효율적으로 운영가능
기억장치의 효율이 좋음
총 입출력 시간 증가

*페이지크기가 큼
주기억 장치 공간 절약
참조되는 정보와 무관한 양의 정보가 주기억 장치에 남게 됨
테이블이 복잡하지 않아 관리 용이
[해설작성자 : comcbt.com 이용자]

75. 모듈의 독립성을 높이기 위한 결합도(Coupling)와 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 오류가 발생했을 때 전파되어 다른 오류의 원인이 되는 파문 효과(Ripple Effect)를 최소화해야 한다.
     2. 인터페이스가 정확히 설정되어 있지 않을 경우 불필요한 인터페이스가 나타나 모듈 사이의 의존도는 높아지고 결합도가 증가한다.
     3. 모듈들이 변수를 공유하여 사용하게 하거나 제어 정보를 교류하게 함으로써 결합도를 낮추어야 한다.
     4. 다른 모듈과 데이터 교류가 필요한 경우 전역변수(Global Variable)보다는 매개변수(Parameter)를 사용하는 것이 결합도를 낮추는 데 도움이 된다.

     정답 : []
     정답률 : 57%
     <문제 해설>
모듈들이 변수를 공유하여 사용하게 하거나 제어 정보를 교류하게 하면 모듈 간의 결합도가 높아집니다.
[해설작성자 : ㄱㄱㅇ]

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

    

     1. E
     2. V
     3. R
     4. O

     정답 : []
     정답률 : 58%
     <문제 해설>
str1[1]=str2[2] => str1의 KOREA중 O가 V로 변경
str1= KVREA
str2[3]=str1[4] =>str2의 LOVE중 E가 A로 변경
str2=LOVA

p1+2= str1[2]= R
[해설작성자 : 영남이공대 소프트웨어콘텐츠과]

덧붙이자면
strcat(str1, str2);에 의해
str1 => "KVREALOVA"가 됩니다.
[해설작성자 : 현직]

char str1 [20] = KOREA
*20개의 칸이 있고, 맨앞에서부터 KOREA가 들어감
char str2 [20] = LOVE
*20개의 칸이 있고, 맨앞에서부터 LOVE가 들어감

p1=str1 (p1을 str1이라고 여김)
p2=str2 (p2을 str2이라고 여김)

str1[1]=p2[2]
*p2(str2)의 2번째인 O를 str1(p1)의 1번째인 O에 삽입.
str1 = KVREA

str2[3]=p1[4]
*p1(str1)의 4번째 A를 str2(p2)의 3번째인 V에 삽입.
str2=LOVA

strcat에 의해 str2를 str1 뒤로 붙임.
KVREALOVE라는 값이 나옴.

여기서 p1+2(str1[2])를 구하면 2번째인 R.

**혹시나 해서 말하지만 첫칸은 1이 아니라, 0이에요.
[해설작성자 : 친절한 설명]

77. UDP 특성에 해당되는 것은?(2021년 03월)
     1. 양방향 연결형 서비스를 제공한다.
     2. 송신중에 링크를 유지관리하므로 신뢰성이 높다.
     3. 순서제어, 오류제어, 흐름제어 기능을 한다.
     4. 흐름제어나 순서제어가 없어 전송속도가 빠르다.

     정답 : []
     정답률 : 71%
     <문제 해설>
제어가 없으니 신뢰성이 낮음
4번을 제외한 나머지는 전부 TCP에관한 설명
[해설작성자 : 또르링]

78. 다음 C 프로그램의 결과 값은?(2020년 08월)

    

     1. 15
     2. 19
     3. 25
     4. 27

     정답 : []
     정답률 : 82%
     <문제 해설>
i sum
1 1
3 4
5 9
7 16
9 25
11 36 X ( i<=10; 때문에 적용 안됨)
[해설작성자 : !]

해당 C프로그램 알고리즘은 반복문을 보시면 1부터 10까지 홀수의 합입니다.
sum = 1+3+5+7+9 = 25 입니다.
[해설작성자 : 24년 정처기 공부]

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

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

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

80. WAS(Web Application Server)가 아닌 것은?(2021년 03월)
     1. JEUS
     2. JVM
     3. Tomcat
     4. WebSphere

     정답 : []
     정답률 : 63%
     <문제 해설>
JVM은 자바 가상 머신
Java Virtual Machine
[해설작성자 : 정보처리산업기사 2020년 취득자]

웹 애플리케이션 서버의 종류에는
Tomcat, GlassFish, JBoss, Jetty, JEUS, Resin, WebLogic, WebSphere 등이 있다.
[해설작성자 : 두루두루]

81. Rayleigh-Norden 곡선의 노력 분포도를 이용한 프로젝트 비용 산정기법은?(2020년 06월)
     1. Putnam 모형
     2. 델파이 모형
     3. COCOMO 모형
     4. 기능점수 모형

     정답 : []
     정답률 : 56%
     <문제 해설>
비용 산정 기법
전문가 감정 기법 : 조직 내에 있는 경험 많은 두 명 이상의 전문가에게 비용 산정을 의뢰하는 기법
델파이 기법 : 전문가 감정 기법의 주관적 편견을 보완하기 위해 많은 전문가의 의견을 종합
LOC 기법 : 원시 코드 라인 수 기법으로서 원시 코드 라인 수의 비관치 낙관치 기대치를 측정하여 산정하는 기법
개발 단계별 인월수 기법 : LOC를 보완하기 위한 기법, 필요 노력을 생명 주기의 각 단계별로 선정
COCOMO : 보헴이 제안한 것으로 LOC에 의한 비용 산정 기법

유형별 COCOMO
Organic : 조직형 / 소규모 소프트웨어 일괄 자료 처리 /5만 라인 이하
Semi-detached : 반분리형 / 트랜잭션 처리 시스템이나 운영체제, DB / 30만 라인 이하
Embedded : 내장형 / 최대형 규모 트랜잭션 처리 시스템이나 운영체제 / 30만 라인 이상

COCOMO 종류
Basic (기본): 소프트웨어 크기 및 개발 유형만 이용
Intermediate(중간) : 기본형의 공식 토대로 사용하나 4가지 특성 및 15가지 요인에 의해 비용 산정
제품 특성 : 신뢰도 / DB크기 / 복잡도
컴퓨터 특성 : 수행시간제한 / 기억장소제한 / 가상 기계의 안정성 / Turn Around Time
개발 요원의 특성 : 분석가 능력 / 개발 분야 경험 / 가상 기계 경험 / 프로그래머 능력 및 언어 경험
프로젝트 특성 : 소프트웨어 도구 이용 / 프로젝트 개발 일정 / 최신 프로그래밍 기법 이용
Detailed(발전) : 중간형 COCOMO 보완하여 만들어진 방법으로 개발 공정별보다 자세하고 정확하게 비용 산정
Putnam 기법 : 소프트웨어 생명 주기의 전 과정 동안에 사용될 곡선의 노력의 분포를 가정해주는 모형
Rayleigh-Norden 곡선의 노력 분포도를 기초로 한다.
FP 기법 : 기능 점수 모형으로 알브레히트가 제안 / 요인별 가중치를 합산하여 총 기능 점수를 산출하여 점수와 영향도를 이용 비용 산정
[해설작성자 : 거상 주작섭]

82. 메모리상에서 프로그램의 복귀 주소와 변수사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?(2020년 06월)
     1. 모드체크
     2. 리커버리 통제
     3. 시스로그
     4. 스택가드

     정답 : []
     정답률 : 74%
     <문제 해설>
Stack Protection : Stack Overflow를 탐지하고 보안을 강화시키는 기법
Stack Guard : Stack 상에 일정한 주소번지에 프로그램이 선언한 canary를 심어 두어, 스택의 변조 된 경우에, canary를 체크하여 프로그램이 비정상적으로 종료 시키는 기법
Stack Shield : 함수의 리턴주소를 복사하여 실제 리턴주소를 참조하지 않고 함수를 리턴해주는 기법
Syslog : 시스템에서 로그메시지를 처리하기 위해서 제공
Recovery Control : 부적절한 사건/상황으로 인해 발생한 피해를 극복, 장애/혼란을 정돈하고 정상상태로 회복

+ 카나리(Canary 또는 Canaries) : buffer와 SFP 사이에 buffer overflow를 탐지하기 위한 특정 값(canary value)를 삽입하는 기법
+ Canary    종류 : terminator, random, random XOR (스택가드는 canary 세 가지 모두를 지원)
+ ProPolice 종류 : terminator와 random
+ StackGuard와 ProPolice는 (함수 포인터들을 오버플로우하는) 자동으로 할당된 구조체들에서 오버플로우를 방어하지 못한다.

83. 위조된 매체 접근 제어(MAC) 주소를 지속적으로 네트워크로 흘려보내, 스위치 MAC 주소 테이블의 저장 기능을 혼란시켜 더미 허브(Dummy Hub)처럼 작동하게 하는 공격은?(2022년 03월)
     1. Parsing
     2. LAN Tapping
     3. Switch Jamming
     4. FTP Flooding

     정답 : []
     정답률 : 60%
     <문제 해설>
- Parsing
        - 하나의 프로그램을 런타임 환경(예를 들면, 브라우저 내 자바스크립트 엔진)이 실제로 실행할 수 있는 내부 포맷으로 분석하고 변환하는 것을 의미함
- LAN Tapping
        - 처음 들어보는 용어이고, 찾아도 제대로된 정의가 나오지 않으나 Lan+Tapping으로 해석한다면 LAN신호를 직접 자신에게 끌어오는 방식의 공격정도로 해석 가능함
- Switch Jamming
        - 스위치의 기능이 방해 받아 정상 동작을 하지 못해 스위치가 더미 허브처럼 작동 하게 되는 것
        - Switch + Jamming(방해)
- FTP(SYN) Flooding
        - TCP의 3 Way Handshake 취약점을 이용한 DoS 공격으로 다량의 SYN패킷을 보내 백로그큐를 가득 채우는 공격
        - 통상적으로 위의 공격법을 TCP SYN Flooding 이라고 칭하는 경우가 많음
        - FTP프로토콜을 사용한 서버에 다량의 SYN 패킷을 보내 마비시키는것을 FTP Flooding이라고 볼 수 있음.
[해설작성자 : 강썬]

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

    

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

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

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

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

85. 취약점 관리를 위해 일반적으로 수행하는 작업이 아닌 것은?(2022년 03월)
     1. 무결성 검사
     2. 응용 프로그램의 보안 설정 및 패치(Patch) 적용
     3. 중단 프로세스 및 닫힌 포트 위주로 확인
     4. 불필요한 서비스 및 악성 프로그램의 확인과 제거

     정답 : []
     정답률 : 84%
     <문제 해설>
중단된 프로세스와 닫힌 포트가 아니라, 활성화된 프로세스와 열린 포트를 중심으로 확인해야 취약점이 관리될 수 있음.
[해설작성자 : 동차합격가즈아]

86. 소프트웨어 생명주기 모델 중 V 모델과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. 요구 분석 및 설계단계를 거치지 않으며 항상 통합 테스트를 중심으로 V 형태를 이룬다.
     2. Perry에 의해 제안되었으며 세부적인 테스트 과정으로 구성되어 신뢰도 높은 시스템을 개발하는데 효과적이다.
     3. 개발 작업과 검증 작업 사이의 관계를 명확히 드러내 놓은 폭포수 모델의 변형이라고 볼 수 있다.
     4. 폭포수 모델이 산출물 중심이라면 V 모델은 작업과 결과의 검증에 초점을 둔다.

     정답 : []
     정답률 : 66%
     <문제 해설>
V 모델(V-model)은 소프트웨어 개발 프로세스로 폭포수 모델의 확장된 형태 중 하나로 볼 수 있다. 아래 방향으로 선형적으로 내려가면서 진행되는 폭포수 모델과 달리, 이 프로세스는 오른쪽 그림과 같이 코딩 단계에서 위쪽으로 꺾여서 알파벳 V자 모양으로 진행된다

검증(Verification)단계
1. 요구사항 분석
2. 시스템 설계
3. 아키텍처 설계
4. 모듈 설계
[해설작성자 : 58]

요구 분석 및 설계단계를 거치며, 구현 후 단위 > 통합 > 시스템 > 인수 테스트로 각 개발 단계를 검증한다.
[해설작성자 : 놀고싶다.]

87. 다음 내용이 설명하는 기술로 가장 적절한 것은?(2022년 04월)

    

     1. Virtual Local Area Network
     2. Simple Station Network
     3. Mesh Network
     4. Modem Network

     정답 : []
     정답률 : 69%
     <문제 해설>
그물 = mesh
[해설작성자 : 산익]

88. SQL Injection 공격과 관련한 설명으로 틀린것은?(2021년 08월)
     1. SQL Injection은 임의로 작성한 SQL 구문을 애플리케이션에 삽입하는 공격방식이다.
     2. SQL Injection 취약점이 발생하는 곳은 주로웹 애플리케이션과 데이터베이스가 연동되는 부분이다.
     3. DBMS의 종류와 관계없이 SQL Injection공격 기법은 모두 동일하다.
     4. 로그인과 같이 웹에서 사용자의 입력 값을 받아 데이터베이스 SQL문으로 데이터를요청하는 경우 SQL Injection을 수행할 수 있다.

     정답 : []
     정답률 : 84%
     <문제 해설>
SQL Injection : 웹 응용 프로그램에 SQL을 삽입하여 내부 데이터베이스 서버의 데이터를 유출 및 변조하고, 관리자 인증을 우회하는 보안 약점, 동적 쿼리에 사용되는 입력 데이터에 예약어 및 특수문자가 입력되지 않게 필터링 되도록 설정하여 방지할 수 있다.
[해설작성자 : comcbt.com 이용자]

DBMS 종류에 따라 SQL 구문의 문법이 달라짐
[해설작성자 : 박세모]

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. 소프트웨어 비용 산정 기법 중 개발 유형으로 organic, semi-detached, embedded로 구분되는 것은?(2021년 05월)
     1. PUTNAM
     2. COCOMO
     3. FP
     4. SLIM

     정답 : []
     정답률 : 86%
     <문제 해설>
COCOMO : 시스템의 비용을 산정하기 위해 시스템을 구성하고 있는 모듈과 서브 시스템의 비용 합계를 계산하는 방식. (소프트웨어 개발의 공정 개발 기간의 견적 방법 중 하나)
[해설작성자 : comcbt.com 이용자]

COCOMO모형의 개발유형 : 소프트웨어의 복잡도 or 원시 프로그램의 규모에 따라 분류
① 조직형(Organic Mode) : 5만 라인 이하 / 기관 내부에서 개발된 중·소규모의 소프트웨어
② 반분리형(Semi-Detached Mode) : 30만 라인 이하 / 트랜잭션 처리 시스템, 운영체제 DBMS 등
③ 내장형(Embedded Mode) : 30만 라인 이상 / 최대형 규모의 트랜잭션 처리시스템이나 운영체제
[해설작성자 : anne]

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. 소프트웨어 생명주기 모형 중 고전적 생명주기 모형으로 선형 순차적 모델이라고도 하며, 타당성 검토, 계획, 요구사항 분석, 구현, 테스트, 유지보수의 단계를 통해 소프트웨어를 개발하는 모형은?(2020년 08월)
     1. 폭포수 모형
     2. 애자일 모형
     3. 컴포넌트 기반 방법론
     4. 6GT 모형

     정답 : []
     정답률 : 90%
     <문제 해설>
핵심 : 고전적 생명주기 모형 / 선형 순차적 모델
폭포수 모형 : 타당성 검토 -> 계획 -> 요구사항분석 -> 구현 -> 테스트 - > 유지보수 단계
[해설작성자 : !]

95. CBD(Component Based Development) 에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 개발 기간 단축으로 인한 생산성 향상
     2. 새로운 기능 추가가 쉬운 확장성
     3. 소프트웨어 재사용이 가능
     4. 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법

     정답 : []
     정답률 : 80%
     <문제 해설>
CBD: 컴포넌트 기반 개발
- 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조립하여 새로운 응용프로그램을 만드는 소프트웨어 개발 방법론
- 기존에 있던것들을 활용하기 때문에 생산성 향상 , 확장성 용이 , 재사용 특징이있음
[해설작성자 : mks]

4) 1960년대까지 많이 적용된 기법은 초기 방법인 "구조적 개발 방법론"이다
그 이후 "정보 공학 방법론" -> "객체 지향 방법론" 순으로 등장하였으며
"CBD(컴포넌트 기반 개발 방법론)"는 객체 지향 방법론의 단점 중 하나인 S/W 재사용성을 보완하여 등장함(1990년대)
[해설작성자 : 합격드가자~]

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

    

     1. Block Host
     2. Tree Host
     3. Screened Subnet
     4. Ring Homed

     정답 : []
     정답률 : 49%
     <문제 해설>
스크린 서브넷(Screen Subnet) : 외부 네트워크와 내부 네트워크 사이에 두는 완충적인 통신망
[해설작성자 : comcbt.com 이용자]

97. 테일러링(Tailoring) 개발 방법론의 내부 기준에 해당하지 않는 것은?(2020년 06월)
     1. 납기/비용
     2. 기술환경
     3. 구성원 능력
     4. 국제표준 품질기준

     정답 : []
     정답률 : 56%
     <문제 해설>
테일러링 (Tailoring)
프로젝트 상황 특성에 맞게 정의된 소프트웨어 개발 방법론 절차, 사용기법 등을 수정 및 보완하는 작업
내부적 요건 : 목표환경 / 요구사항 / 프로젝트규모 / 보유기술 /
외부적 요건 : 법적 제약사항 / 표준 품질 기준
[해설작성자 : 거상 주작섭]

테일러링
내부적 요건 : 납기/비용, 기술환경, 구성원 능력, 고객요구 사항
외부적 요건 : 법적 제약사항, 국제표준 품질 기준
[해설작성자 : 마젤토브힘내봐마젤토브웃어봐]

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

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

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

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. 소프트웨어 개발 방법론의 테일러링(Tailoring)과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. 프로젝트 수행 시 예상되는 변화를 배제하고 신속히 진행하여야 한다.
     2. 프로젝트에 최적화된 개발 방법론을 적용하기 위해 절차, 산출물 등을 적절히 변경하는 활동이다.
     3. 관리 측면에서의 목적 중 하나는 최단기간에 안정적인 프로젝트 진행을 위한 사전 위험을 식별하고 제거하는 것이다.
     4. 기술적 측면에서의 목적 중 하나는 프로젝트에 최적화된 기술 요소를 도입하여 프로젝트 특성에 맞는 최적의 기법과 도구를 사용하는 것이다.

     정답 : []
     정답률 : 67%
     <문제 해설>
테일러링 (Tailoring) : 프로젝트 상황 특성에 맞게 정의된 소프트웨어 개발 방법론 절차, 사용기법 등을 수정 및 보완하는 작업
[해설작성자 : 땅혁]


정 답 지

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

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


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

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


1과목 : 소프트웨어 설계


1. 검토회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후 짧은 검토 회의를 통해 오류를 조기에 검출하는데 목적을 두는 요구 사항 검토 방법은?(2020년 06월)
     1. 빌드 검증
     2. 동료 검토
     3. 워크 스루
     4. 개발자 검토

     정답 : []
     정답률 : 82%
     <문제 해설>
2.동료검토: 2~3명이 진행하는 리뷰형태로 작성자가 설명하고 이해관계자들이 설명을 들으면서 결함을 발견하는 형태
3.워크스루: 검토자료를 회의전에 배포하여 사전 검토한 후, 짧은 시간 동안 회의를 진행하는 형태로 리뷰를 통해 오류를 조기에 검출하는데 목적은 둔 검증기법
[해설작성자 : Koo]

요구사항 검토 방법
동료 검토 : 작성자가 명세서 내용 설명 동료들이 결함 발견하는 형태
워크 스루 : 검토 회의 전 명세서를 미리 배포하여 사전 검토 후 짧은 검토 회의를 통해 오류 조기 검출
인스펙션    : 명세서 작성자를 제외한 다른 검토 전문가들이 확인하면서 결함을 발견하는 형태
[해설작성자 : comcbt.com 이용자]

검토자료를 회의전에 배포하여 사전 검토한 후, 짧은 시간 동안 회의를 진행하는 형태로 리뷰를 통해 오류를 조기에 검출하는데 목적'을' 둔 검증기법
[해설작성자 : ramsey]

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

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

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

3. CASE(Computer Aided Software Engineering)의 주요 기능으로 옳지 않은 것은?(2020년 09월)
     1. S/W 라이프 사이클 전 단계의 연결
     2. 그래픽 지원
     3. 다양한 소프트웨어 개발 모형 지원
     4. 언어 번역

     정답 : []
     정답률 : 87%
     <문제 해설>
컴퓨터 지원 소프트웨어 공학(computer-aided software engineering: CASE)= 컴퓨터 지원 시스템 공학
- 시스템 개발 방법론들의 자동화를 지원하는 소프트웨어 도구를 제공해 개발자의 반복적인 작업량을 줄이도록 하는 것
- CASE 도구들은 차트와 다이어그램을 자동으로 생성하는 그래픽 기능, 화면과 리포트 생성기, 데이터사전, 분석과 검사 도구, 코드 생성기, 문서 생성기 등을 제공
- 기능: 1. 소프트웨어 생명주기(Software Lifecycle) 전 단계의 연결
                2. 그래픽 지원
                3. 다양한 소프트웨어 개발 모형 지원
# 20년 3회 19번 # 20년 3회 17번
[해설작성자 : 저질체력]

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

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

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

5. 소프트웨어 설계시 구축된 플랫폼의 성능특성 분석에 사용되는 측정 항목이 아닌 것은?(2020년 06월)
     1. 응답시간(Response Time)
     2. 가용성(Availability)
     3. 사용률(Utilization)
     4. 서버 튜닝(Server Tuning)

     정답 : []
     정답률 : 89%
     <문제 해설>
응답 시간 : 사용자가 응답을 받기까지 걸리는 총 시간
가용성 : 서비스가 다운되지 않고 정상적으로 유지되는 시간
사용률 : 측정 대상 작업을 수행하기 위해 사용된 자원의 사용량
서버 튜닝 : 서버의 효율성을 높이기 위하여 사용되는 일련의 개선 작업
[해설작성자 : LEE]

플랫폼 성능특성 분석에 사용되는 측정항목은
경과시간(Turnaround TIme), 사용률(Utilization), 응답시간(Response TIme), 가용성(Availability) 입니다.
[해설작성자 : comcbt.com 이용자]

플랫폼의 성능을 측정하는 기준
1. 가용성(Availability) : 필요할 때 즉시 사용 가능한 정도, 여유 자원
2. 응답시간(Response Time) : 명령에 반응하는 시간
3. 정확성(Accuracy) : 기대한 값과 비교해서 얼마나 정확한지
4. 사용률(Utilization) : 데이터 처리에 시스템 자원을 사용하는 정도

+ 시스템 성능 평가 기준
1. 처리 능력 (Troughput) : 단위 시간 내 작업 처리량
2. 처리 시간 (Turn Around Time) : 작업 의뢰부터 처리까지의 시간
3. 사용 가능도 (Availability) : 필요할 때 즉시 사용 가능한 정도 (가용성)
4. 신뢰도 (Reliability) : 주어진 문제를 정확하게 해결하는 정도
[해설작성자 : 컴공생]

6. GoF (Gangs of Four) 디자인 패턴에 대한 설명으로 틀린 것은?(2021년 05월)
     1. factory method pattern은 상위클래스에서 객체를 생성하는 인터페이스를 정의하고, 하위클래스에서 인스턴스를 생성하도록 하는 방식이다.
     2. prototype pattern은 prototype을 먼저 생성하고 인스턴스를 복제하여 사용하는 구조이다.
     3. bridge pattern은 기존에 구현되어 있는 클래스에 기능 발생 시 기존 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할을 한다.
     4. mediator pattern은 객체간의 통제와 지시의 역할을 하는 중재자를 두어 객체지향의 목표를 달성하게 해준다.

     정답 : []
     정답률 : 56%
     <문제 해설>
bridge pattern은 구현부에서 추상층을 분리하여 각자 독립적으로 확장이 가능하게 하는 패턴이다
[해설작성자 : comcbt.com 이용자]

3은 Adapter pattern의 설명
[해설작성자 : 합격]

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

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

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

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

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

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

8. 다음은 어떤 프로그램 구조를 나타낸다. 모듈 F에서의 fan-in과 fan-out의 수는 얼마인가?(2021년 03월)

   

     1. fan-in : 2, fan-out : 3
     2. fan-in : 3, fan-out : 2
     3. fan-in : 1, fan-out : 2
     4. fan-in : 2, fan-out : 1

     정답 : []
     정답률 : 91%
     <문제 해설>
모듈 F를 제어하는 수는 B,C,D 총 3개(fan-in)
모듈 F가 제어하는 수는 G,H 총 2개(fan-out)
[해설작성자 : 퇴근하고 싶다]

9. 다음 내용이 설명하는 UI설계 도구는?(2022년 03월)

   

     1. 스토리보드(Storyboard)
     2. 목업(Mockup)
     3. 프로토타입(Prototype)
     4. 유스케이스(Usecase)

     정답 : []
     정답률 : 80%
     <문제 해설>
스토리보드 : 디자이너와 개발자가 최종적으로 참고하는 작업지침서
상단이나 우측에 제목,작성자등을 입력하고 좌측에는 UI화면,우측엔 디스크립션을 기입한다.
프로토타입 : 와이어프레임이나 스토리보드등에 인터랙션을 적용함으로써 실제 구현된 것처럼 테스트가 가능한 동적인 형태의 모형
유스케이스 : 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술한다.
[해설작성자 : 코라투]

10. CASE(Computer-Aided Software Engineering)의 원천 기술이 아닌 것은?(2021년 05월)
     1. 구조적 기법
     2. 프로토타이핑 기술
     3. 정보 저장소 기술
     4. 일괄처리 기술

     정답 : []
     정답률 : 55%
     <문제 해설>
CASE의 원천 기술은
구조적 기법, 프로토타이핑 기술, 자동프로그래밍 기술, 정보 저장소 기술, 분산 처리 기술
이 있다.
[해설작성자 : comcbt.com 이용자]

CASE(Computer-Aided Software Engineering)는 소프트웨어 개발에 컴퓨터 기술을 활용하여 효율성과 품질을 향상시키는 방법론입니다. CASE는 다양한 원천 기술을 기반으로 합니다.
1. **구조적 기법(Structured Technique):** 이는 복잡한 시스템을 여러 개의 작은 부분으로 분할하여 문제를 해결하는 방법으로, 설계 및 개발 과정을 구조화합니다.
2. **프로토타이핑 기술(Prototyping Technique):** 이는 초기 단계에서 사용자와 시스템 간의 상호 작용을 모방한 모형을 생성하여 시스템 요구사항을 더 잘 이해하는 데 도움이 됩니다.
3. **정보 저장소 기술(Information Repository Technique):** 이는 시스템의 모든 정보를 중앙에 모아 시스템의 모든 관련 정보를 쉽게 액세스하고 업데이트할 수 있도록 하는 방법입니다.
그러나,
4. **일괄처리 기술(Batch Processing Technique):** 이는 누적된 작업을 한 번에 처리하는 기술로, 일반적으로 CASE의 원천 기술로 간주되지는 않습니다.
따라서, CASE의 원천 기술이 아닌 것은 '4. 일괄처리 기술'입니다.
[해설작성자 : 계란청년]

11. UML 다이어그램 중 정적 다이어그램이 아닌 것은?(2022년 03월)
     1. 컴포넌트 다이어그램
     2. 배치 다이어그램
     3. 순차 다이어그램
     4. 패키지 다이어그램

     정답 : []
     정답률 : 79%
     <문제 해설>
정적(구조적)다이어그램 : 클객컴배복패
[해설작성자 : 함초롬다솜]

UML 다이어그램의 분류
정적구조: [ 클래스, 객체, 패키지, 컴포넌트, 복합구조, 배치]
동적구조: [ 유스케이스, 상태, 활동, 시퀀스, 통신, 상호작용, 타이밍]
1) 클래스 다이어그램: 객체를 생성하기 위한 도구
2) 객체 다이어그램: 객체 간의 연결관계를 표현
3) 패키지 다이어그램: 객체들의 그룹화된 표현
4) 컴포넌트 다이어그램: 시스템을 구성하는 컴포넌트 사이에 의존관계를 표현
* 컴포넌트는 1개이상의 클래스로 구현됨.
5) 복합구조 다이어그램: 컴포넌트나 클래스의 내부 구조를 보여주기 위해 사용  내부 연결 형태를 표현
6) 배치 다이어그램: H/W자원에 연결된 S/W컴포넌트 배치를 표현

7) 유스케이스 다이어그램: 사용자의 시각에서 소프트웨어의 범위와 기능을 표현
8) 상태 다이어그램: 시간에 따라 객체가 변하는 상태를 표현
9) 활동 다이어그램: 객체의 동적행위를 활동으로 표현
10) 시퀀스 다이어그램: 객체간 상호작용을 시간 순서에 따른 메시지로 표현
11) 통신 다이어그램: 객체간 상호작용을 관계형태의 메세지로 표현
12) 상호작용 다이어그램: 객체들의 상호작용 관계를 표현
13) 타이밍 다이어그램: 객체간 상태변화를 구체적인 시간으로 표현
[해설작성자 : SD.신동]

오답해설) 순차(sequence,시퀀스) 다이어그램은 동적 다이어그램
[해설작성자 : 코봉이]

12. 소프트웨어의 상위설계에 속하지 않는 것은?(2020년 09월)
     1. 아키텍처 설계
     2. 모듈 설계
     3. 인터페이스 정의
     4. 사용자 인터페이스 설계

     정답 : []
     정답률 : 49%
     <문제 해설>
상위 설계 : 아키텍처 설계, 데이터 설계, 시스템 분할, 인터페이스 정의, 사용자 인터페이스 설계(UI 설계)

하위 설계 : 모듈 설계, 인터페이스 작성
[해설작성자 : 도라예몽]

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

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

14. 소프트웨어의 사용자 인터페이스개발시스템(User Interface Development System)이 가져야 할 기능이 아닌 것은?(2020년 09월)
     1. 사용자 입력의 검증
     2. 에러 처리와 에러 메시지 처리
     3. 도움과 프롬프트(prompt) 제공
     4. 소스 코드 분석 및 오류 복구

     정답 : []
     정답률 : 84%
     <문제 해설>
소스코드분석 및 오류복구는 보통 back-end에서 컴파일러가 하는 역할로 User Interface Development System의 기능과는 거리가 멀다고 볼 수 있다.
[해설작성자 : 오씨]

15. GoF(Gang of Four) 디자인 패턴을 생성, 구조, 행동 패턴의 세 그룹으로 분류할 때, 구조 패턴이 아닌 것은?(2022년 04월)
     1. Adapter 패턴
     2. Bridge 패턴
     3. Builder 패턴
     4. Proxy 패턴

     정답 : []
     정답률 : 63%
     <문제 해설>
[구조패턴]
-어댑터
-브릿지
-컴포지트
-데코레이터
-퍼싸트
-플라이웨이트
-프록시
[해설작성자 : 아기재혁]

생성패턴 : 객체를 생성하는 것에 대한 패턴
- 추상 팩토리 패턴(abstract factory), 빌더 패턴(builder), 팩토리 메소드 패턴(factory method), 프로토타입 패턴(prototype), 싱글톤 패턴(singleton)

구조패턴 : 구조를 통해 확장성을 꾀하는 패턴
- 어댑터 패턴(adapter), 브릿지 패턴(bridge), 컴포지트 패턴(composite), 데코레이터 패턴(decorator), 퍼사드 패턴(facade), 플라이웨잇 패턴(flysweight), 프록시 패턴(proxy)

행위 패턴 : 행위의 변경, 수정 등을 위한 패턴
- 역할 사슬 패턴(책임 연쇄, chain of reposibility), 커맨드 패턴(command), 인터프리터 패턴(interpreter), 이터레이터 패턴(반복자, iterator), 미디에이터 패턴(중재자, mediator), 메멘토 패턴(memento), 옵저버 패턴(observer), 상태 패턴(state), 전략 패턴(strategy), 템플릿 메소드 패턴(template method), 비지터 패턴(방문자, visitor)
[해설작성자 : ㅈㅇㅎ]

16. UI와 관련된 기본 개념 중 하나로, 시스템의 상태와 사용자의 지시에 대한 효과를 보여주어 사용자가 명령에 대한 진행 상황과 표시된 내용을 해석할 수 있도록 도와주는 것은?(2022년 04월)
     1. Feedback
     2. Posture
     3. Module
     4. Hash

     정답 : []
     정답률 : 77%
     <문제 해설>
피드백(feedback): 처리된 결과를 측정하고 목표에 도달되었는가를 검사하며 불충분할 경우 다시 입력하는 요소로 사용.
[해설작성자 : 내일시험임..]

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

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

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

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

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

19. CASE(Computer-Aided Software Engineering)도구에 대한 설명으로 거리가 먼 것은?(2020년 08월)
     1. 소프트웨어 개발 과정의 일부 또는 전체를 자동화하기 위한 도구이다.
     2. 표준화된 개발 환경 구축 및 문서 자동화 기능을 제공한다.
     3. 작업 과정 및 데이터 공유를 통해 작업자간 커뮤니케이션을 증대한다.
     4. 2000년대 이후 소개되었으며, 객체지향 시스템에 한해 효과적으로 활용된다.

     정답 : []
     정답률 : 80%
     <문제 해설>
소프트웨어 공학의 자동화를 의미, 소프트웨어 공학작업을 자동화한 소프트웨어 패키지를 CASE도구라고 한다.
CASE도구들은 소프트웨어 관리자들과 실무자들이 소프트웨어 프로세스와 관련된 활동을 지원한다. 즉, 프로젝트 관리 활동을 자동화하고, 결과물을 관리하며, 엔지니어들의 분석, 설계 및 코딩과 테스트작업을 도운다.

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

CASE는 1980년대에 소개되었으며, 1990년대부터 자주 사용되었습니다.
[해설작성자 : 소현진]

CASE는 객체지향 시스템 뿐만 아니라 구조 시스템등 모든분야에 적용됨
[해설작성자 : 닉녬]

20. 사용자 인터페이스(UI)의 특징으로 틀린 것은?(2021년 05월)
     1. 구현하고자 하는 결과의 오류를 최소화한다.
     2. 사용자의 편의성을 높임으로써 작업시간을 증가시킨다.
     3. 막연한 작업 기능에 대해 구체적인 방법을 제시하여 준다.
     4. 사용자 중심의 상호 작용이 되도록 한다.

     정답 : []
     정답률 : 90%
     <문제 해설>
편의성을 높임으로써 작업시간을 '단축'시킨다
[해설작성자 : 유녀기]

2과목 : 소프트웨어 개발


21. 통합 테스트(Integration Test)와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 시스템을 구성하는 모듈의 인터페이스와 결합을 테스트하는 것이다.
     2. 하향식 통합 테스트의 경우 넓이 우선(Breadth First) 방식으로 테스트를 할 모듈을 선택할 수 있다.
     3. 상향식 통합 테스트의 경우 시스템 구조도의 최상위에 있는 모듈을 먼저 구현하고 테스트한다.
     4. 모듈 간의 인터페이스와 시스템의 동작이 정상적으로 잘되고 있는지를 빨리 파악하고자 할 때 상향식 보다는 하향식 통합 테스트를 사용하는 것이 좋다.

     정답 : []
     정답률 : 65%
     <문제 해설>
상향식 통합 테스트 (Bottom Up Integration Test)
- 프로그램의 하위 모듈에서 상위 모듈 방향으로 통합
- 하나의 주요 제어 모듈과 관련된 종속 모듈의 그룹인 클러스터(Cluster)필요
하향식 통합 테스트 (Top Down Integration Test)
- 상위 모듈에서 하위 모듈 방향으로 통합
- 깊이 우선 통합법, 넓이 우선 통합법 사용
- 초기부터 사용자에게 시스템 구조를 보여줌
[해설작성자 : 전자공학도]

상향식 테스트 : 드라이버(Driver) 이용(하위 모듈 호출, 매개변수 전달, 테스트 후 결과 도출)
하향식 테스트 : 스텁(Stub) 이용(모듈 기능만 수행)
[해설작성자 : 공부하자]

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

    

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

     정답 : []
     정답률 : 70%
     <문제 해설>
정적 분석 도구 - pmd, cppcheck, SonarQube, ccm등이 있다.
valance는 동적 분석 도구중 하나 이다.
[해설작성자 : 정보처리지기]

pmd - 코드 결함 분석
checkstyle - java코드 표준 준수 검사
cppcheck     - c/c++ 오버플로우 검사
[해설작성자 : 시험이틀남았다]

동적 분석 도구 - valance, Avalanche, Valgrind
[해설작성자 : 해설작성자]

24. 인터페이스 구현 검증도구 중 아래에서 설명하는 것은?(2020년 06월)

    

     1. xUnit
     2. STAF
     3. FitNesse
     4. RubyNode

     정답 : []
     정답률 : 61%
     <문제 해설>
인터페이스 구현 검증 도구
xUnit : Java, C++ 등 다양한 언어 지원하는 단위 테스트 프레임워크
STAF : 서비스 호출 및 컴포넌트 재사용 등 환경 지원하는 테스트 프레임워크
FitNesse : 웹 기반 테스트케이스 설계, 실행, 결과 확인 등을 지원하는 테스트 프레임워크
NTAF : FitNesse의 장점인 협업 기능과    STAF의 장점인 재사용 및 확장성을 통합한 네이버의 테스트 자동화 프레임워크이다.
Selenium : 다양한 브라우저 및 개발 언어 지원하는 웹 애플리케이션 테스트 프레임워크
Watir : Ruby를 사용하는 애플리케이션 테스트 프레임워크
Ruby : 인터프리터 방식의 객체지향 스크립트 언어
[해설작성자 : 거상 주작섭]

25. EAI(Enterprise Application Integration)의 구축 유형으로 옳지 않은 것은?(2020년 06월)
     1. Point-to-Point
     2. Hub&Spoke
     3. Message Bus
     4. Tree

     정답 : []
     정답률 : 70%
     <문제 해설>
EAI 구축 유형 : 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달 연계 통합등 상호연동이 가능하게 해주는 솔루션 // 그림 확인해야함
Point - to - Point : 가장 기본적인 애플리케이션 통합 방식 1:1로 연결
Hub & Spoke : 단일 접점인 허브 시스템을 통해 데이터 전송하는 중앙 집중형 방식
Message Bus : 애플리케이션 사이에 미들웨어를 두어 처리하는 방식
Hybrid : Hub & Spoke 와 Message Bus 혼합 방식
[해설작성자 : 거상 주작섭]

26. 정형 기술 검토(FTR)의 지침으로 틀린 것은?(2022년 03월)
     1. 의제를 제한한다.
     2. 논쟁과 반박을 제한한다.
     3. 문제 영역을 명확히 표현한다.
     4. 참가자의 수를 제한하지 않는다.

     정답 : []
     정답률 : 78%
     <문제 해설>
### 정형기술검토(FTR)의 지침
- 오류 검출에 초점을 두고 해결책을 나중으로 미룸(제품 검토의 집중성)
- 검토를 위한 자료를 사전에 배포하여 검토하도록 한다(사전 준비성)
- 의견을 제한하되 충분히 받아들인다(의제의 제한성)
- 안건을 세우면 고수한다(안건 고수성)
- 논쟁과 반박을 제한한다(논쟁 반박의 제한성)
- 문제 영역을 공개한다(문제 공개성)
- 참가자의 수를 제한한다(참가 인원의 제한성)
- 발견된 오류는 문서화한다(문서성)
[해설작성자 : 강썬]

FTR 지침 사항 : 한번 더 리뷰하세요~~
제품 검토에만 집중하라
의제를 제한하여 진행하라
논쟁과 반박을 제한하라
문제영역을 정확히 표현하라
해결책이나 개선책에 대해서는 논하지 말라
참가자수를 제한하고 사전준비를 강요하라
자원과 시간 일정을 할당하라    
모든 검토자들을 위해 의미있는 훈련을 시행하라
검토자들은 사전에 작성한 메모들을 공유하라
검토의 과정과 결과를 재검토하라
[해설작성자 : -학습자-]

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

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

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

28. 정보시스템 개발 단계에서 프로그래밍 언어 선택 시 고려할 사항으로 가장 거리가 먼 것은?(2022년 03월)
     1. 개발 정보시스템의 특성
     2. 사용자의 요구사항
     3. 컴파일러의 가용성
     4. 컴파일러의 독창성

     정답 : []
     정답률 : 85%
     <문제 해설>
프로그래밍 언어의 선정 기준
- 친밀감
- 언어의 능력
- 처리의 효율성
- 프로그램 구조
- 프로그램의 길이
[해설작성자 : 지나가던 이용자]

프로그래밍 언어의 선정 기준 :
친밀감, 언어의 능력, 처리의 효율성, 프로그램 구조, 프로그램의 길이, 이식성, 과거의 개발 실적, 알고리즘과 계산상의 난이도, 자료 구조의 난이도, 성능 고려 사항들, 대상 업무의 성격, 소프트웨어의 수행 환경, 개발 담당자의 경험과 지식, 사용자의 요구사항, 컴파일러의 이용 가능성
[해설작성자 : 지나가던 이용자]

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

    

     1. A
     2. B
     3. D
     4. G

     정답 : []
     정답률 : 80%
     <문제 해설>
< 이진 트리 운행법 >
- Preorder 운행 : Root → Left → Right 순으로 운행
- Inorder 운행 : Left → Root → Right 순으로 운행
- Postorder 운행 : Left → Right → Root    순으로 운행
[해설작성자 : ㅇㅎㅅ]

Preorder : ABDCEGHF
Inorder : DBAGEHCF
Postorder : DBGHEFCA
[해설작성자 : 안녕상용]

30. 소프트웨어 테스트에서 검증(Verification)과 확인 (Validation)에 대한 설명으로 틀린 것은?(2021년 08월)
     1. 소프트웨어 테스트에서 검증과 확인을 구별하면 찾고자 하는 결함 유형을 명확하게 하는 데 도움이 된다.
     2. 검증은 소프트웨어 개발 과정을 테스트하는 것이고, 확인은 소프트웨어 결과를 테스트 하는 것이다.
     3. 검증은 작업 제품이 요구 명세의 기능, 비기능 요구사항을 얼마나 잘 준수하는지 측정하는 작업이다.
     4. 검증은 작업 제품이 사용자의 요구에 적합한지 측정하며, 확인은 작업 제품이 개발자의 기대를 충족시키는지를 측정한다.

     정답 : []
     정답률 : 64%
     <문제 해설>
검증(Verification): 소프트웨어가 요구사항에 부합하게 구현되었음을 보장하는 활동
확인(Validation): 소프트웨어가 고객의 의도에 따라 구현되었음을 보장하는 활동
[해설작성자 : ㄱㄱㅇ]

검증 -> 개발자
확인 -> 사용자
[해설작성자 : 합격길걷자ㅡ]

31. 알고리즘과 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 주어진 작업을 수행하는 컴퓨터 명령어를 순서대로 나열한 것으로 볼 수 있다.
     2. 검색(Searching)은 정렬이 되지 않은 데이터 혹은 정렬이 된 데이터 중에서 키값에 해당되는 데이터를 찾는 알고리즘이다.
     3. 정렬(Sorting)은 흩어져있는 데이터를 키값을 이용하여 순서대로 열거하는 알고리즘이다.
     4. 선형 검색은 검색을 수행하기 전에 반드시 데이터의 집합이 정렬되어 있어야 한다.

     정답 : []
     정답률 : 66%
     <문제 해설>
선형 검색 - 처음부터 끝까지 하나씩 순서대로 비교하며 원하는 값을 찾아내는 검색
[해설작성자 : 전자공학도]

이진검색 - 검색을 수행하기 전에 반드시 데이터의 집합이 정렬되어 있어야 한다.
[해설작성자 : 문은식]

검색 알고리즘
- 선형 검색(Linear Search) : 데이터가 모인 집합(배열, 리스트 등)의 처음부터 끝까지 하나씩 순서대로 비교하며 검색(순차검색)
- 이진 검색(Binary Search) : 데이터가 오름차순 혹은 내림차순으로 정렬된 배열에서 검색하는 알고리즘(이분 검색)
[해설작성자 : 공부하자]

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. 소프트웨어 품질목표 중 쉽게 배우고 사용할 수 있는 정도를 나타내는 것은?(2021년 03월)
     1. Correctness
     2. Reliability
     3. Usability
     4. Integrity

     정답 : []
     정답률 : 88%
     <문제 해설>
* 정확성(correctness): 시스템의 사양과 설계, 구현에 있어서 오류가 없는 정도
* 유용성(usability): 사용자가 시스템을 배우고 사용하는 데 있어서의 용이함
* 효율성(efficiency): 메모리와 실행 시간 같은 시스템 리소스의 최소 사용
* 신뢰성(reliability): 정해진 상황에서 언제든지 필요한 기능을 수행할 수 있는 시스템의 능력 - 고장 사이의 시간
* 무결성(integrity): 시스템이 프로그램이나 데이터에 대한 허용되지 않거나 잘못된 접근을 막는 정도. 무결성의 기본 개념에는 데이터의 적절한 접근을 보장할 뿐만 아니라 권한이 없는 사용자의 접근 제한 기능이 포한된다. 즉, 병렬 데이터를 갖는 데이블은 병렬로 변경되고 날짜 필드는 타당한 날짜만을 포함하는 식이다.
* 적응성(adaptablility): 시스템을 변경하지 않고 설계된 환경에서 뿐만 아니라 다른 응용 분야나 환경에서도 사용될 수 있는 정도
* 정밀성(accuracy): 구성된 시스템에 오류가 없는 정도. 특히 대량의 데이터를 고려한다. 정밀성은 정확성과 다르다. 정밀성은 시스템이 정확하게 구성되었는지가 아닌 시스템이 용도대로 얼마나 잘 수행하는지를 결정한다.
* 견고성(robustness): 시스템이 잘못된 입력이나 악조건에서도 기능을 계속해서 수행할 수 있는 정도
[해설작성자 : comcbt.com 이용자]

Correctness 정확성
Reliability 신뢰성
Usability 사용 용이성
Integrity 무결성
[해설작성자 : ㅇ]

34. 다음이 설명하는 테스트 용어는?(2020년 09월)

    

     1. 테스트 케이스
     2. 테스트 시나리오
     3. 테스트 오라클
     4. 테스트 데이터

     정답 : []
     정답률 : 66%
     <문제 해설>
테스트 케이스 : 구현된 소프트웨어가 사용자의 요구사항을 정확하게 준수했는지를 확인하기 위해 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서

테스트 시나리오 : 테스트 케이스를 적용하는 순서에 따라 여러 개의 테스트 케이스들을 묶은 집합

테스트 오라클 : 문제 참조

[해설작성자 : 한기대 황치열]

35. 단위 테스트(Unit Test)와 관련한 설명으로 틀린 것은?(2022년 04월)
     1. 구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트한다.
     2. 모듈 내부의 구조를 구체적으로 볼 수 있는 구조적 테스트를 주로 시행한다.
     3. 필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 스텁(Stub)이라고 한다.
     4. 테스트할 모듈을 호출하는 모듈도 있고, 테스트할 모듈이 호출하는 모듈도 있다.

     정답 : []
     정답률 : 55%
     <문제 해설>
필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 드라이버(test driver)라고 한다. 반대로 테스트 스텁(test stub)은 인자를 통해 받은 값을 가지고 수행한 후 그 결과를 테스트할 모듈에 넘겨주는 역할을 한다.
[해설작성자 : 물집메고먐미밌다]

36. 클린코드 작성원칙에 대한 설명으로 틀린 것은?(2021년 05월)
     1. 코드의 중복을 최소화 한다.
     2. 코드가 다른 모듈에 미치는 영향을 최대화하도록 작성한다.
     3. 누구든지 코드를 쉽게 읽을 수 있도록 작성한다.
     4. 간단하게 코드를 작성한다.

     정답 : []
     정답률 : 92%
     <문제 해설>
중복성 최소화 : 중복된 코드는 삭제, 공통된 코드 사용
가독성 : 누구나 코드를 쉽게 읽을 수 있도록 작성
단순성 : 한번에 한 가지를 처리하도록 코드를 간단하게 작성

2. 의존성 배제 : 코드가 다른 모듈에 미치는 영향을 최소화 할것, 코드 변경시 다른 부분에 영향이 없도록 작성
[해설작성자 : comcbt.com 이용자]

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

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

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

38. 소프트웨어 재공학이 소프트웨어의 재개발에 비해 갖는 장점으로 거리가 먼 것은?(2020년 08월)
     1. 위험부담 감소
     2. 비용 절감
     3. 시스템 명세의 오류억제
     4. 개발시간의 증가

     정답 : []
     정답률 : 92%
     <문제 해설>
상식적으로 생각하였을 경우, SW를 첨부터 다시 개발하는거보다는 재공학 하는것이 더 시간적으로 절약된다.
[해설작성자 : zz]

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

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

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

40. 외계인코드(Alien Code)에 대한 설명으로 옳은 것은?(2020년 06월)
     1. 프로그램의 로직이 복잡하여 이해하기 어려운 프로그램을 의미한다.
     2. 아주 오래되거나 참고문서 또는 개발자가 없어 유지보수 작업이 어려운 프로그램을 의미한다.
     3. 오류가 없어 디버깅 과정이 필요 없는 프로그램을 의미한다.
     4. 사용자가 직접 작성한 프로그램을 의미한다.

     정답 : []
     정답률 : 84%
     <문제 해설>
외계인코드 : 외계인 → 없는 존재 = 코드에 대해 아는 사람이 없음 → 유지 보수 어려움
[해설작성자 : 거상 주작섭]

스파게티 코드 : 프로그램의 로직이 복잡하여 이해하기 어려운 프로그램을 의미한다.
→나쁜코드, 코드의 로직이 얽혀 스파게티 코드라고도 함.
[해설작성자 : 자몽자몽]

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


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

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

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

42. 다음에서 설명하는 스키마(Schema)는?(2021년 03월)

    

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

     정답 : []
     정답률 : 80%
     <문제 해설>
-개념 스키마
사용자와 데이터베이스 관리자 관점의 스키마/ 데이터베이스에 실제로 어떤 데이터가 저장되었으며, 데이터 간의 관계는 어떻게 되는지를 정의하는 스키마로 전체 관점으로 한개만 존재하며 접근권한, 보안 및 무결성등에 관한 정의를 포함

-내부 스키마
저장장치와 데이터베이스 설계자 및 개발자 관점의 스키마/ 개념 스키마를 물리적 저장장치에 구현하는 방법을 정의하는 데 사용하고 물리적 구조 및 내부 레코드의 물리적 순서 등을 표현

-외부 스키마
사용자 관점의 스키마/사용자 또는 프로그램의 입장에서의 논리적 구조로 여러개가 존재
​[해설작성자 : 또르링]

43. 데이터베이스 설계 단계 중 저장 레코드 양식설계, 레코드 집중의 분석 및 설계, 접근 경로 설계와 관계되는 것은?(2021년 03월)
     1. 논리적 설계
     2. 요구 조건 분석
     3. 개념적 설계
     4. 물리적 설계

     정답 : []
     정답률 : 65%
     <문제 해설>
*요구조건 분석 / 명세 : 데이터베이스의 사용자, 사용목적, 사용범위, 제약조건 등에 대한 내용을 정리하고 명세서를 작성
*개념적 설계 : 정보를 구조화 하기 위해 추상적 개념으로 표현하는 과정으로 개념 스키마 모델링과 트랜잭션 모델링을 병행하고, 요구조건 분석을 통해 DBMS 독립적인 E-R 다이어그램을 작성
*논리적 설계 : 자료를 컴퓨터가 이해할 수 있도록 특정 DBMS의 논리적 자료 구조로 변환하는 과정
*물리적 설계 : 논리적 구조로 표현된 데이터를 물리적 구조의 데이터로 변환하는 과정
[해설작성자 : 분홍쨔응]

개념적 설계
:개념스키마 모델링 / 트렌젝션 모델링 / 독립적인 개념스키마설계 / E-R 다이어그램

논리적설계
:트렌젝션 인터페이스 설계 / 스키마 평가 및 정제 / 목표 DBMS에 맞는 논리스키마 설계 / 논리적구조의 데이터로 모델화

물리적설계
:저장구조 및 액세스 경로 설정 / 레코드 집중의 분석,설계 / 저장 레코드 양식 설계
[해설작성자 : 또르링]

44. SQL에서 VIEW를 삭제할 때 사용하는 명령은?(2021년 05월)
     1. ERASE
     2. KILL
     3. DROP
     4. DELETE

     정답 : []
     정답률 : 83%
     <문제 해설>
DELETE = 조건을 달아서 특정 행을 삭제할 때 사용
DROP = VIEW, TABLE, DATABASE를 완전 삭제할 때 사용
[해설작성자 : 컴알못]

추가적으로 VIEW에서는 ALTER 사용 불가능
[해설작성자 : 3회 합격하자]

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. SQL의 기능에 따른 분류 중에서 REVOKE문과 같이 데이터의 사용 권한을 관리하는데 사용하는 언어는?(2022년 04월)
     1. DDL(Data Definition Language)
     2. DML(Data Manipulation Language)
     3. DCL(Data Control Language)
     4. DUL(Data User Language)

     정답 : []
     정답률 : 70%
     <문제 해설>
DCL 종류
- COMMIT : 명령어로 수행된 결과를 실제 물리적 디스크로 저장하고, 명령어로 수행을 성공적으로 완료하였음을 선언한다.
- ROLLBACK : 명령어로 수행을 실패하였음을 알리고, 수행된 결과를 원상복구시킨다.
- GRANT : 데이터베이스 사용자에게 사용 권한 부여한다.
- REVOKE : 데이터베이스 사용자로부터 사용 권한 취소한다.
[해설작성자 : 두목넷]

DDL
- CREATE : SCHEMA(스키마), DOMAIN(도메인), TABLE(테이블), VIEW(뷰), INDEX(인덱스)를 정의
- ALTER : TABLE에 대한 정의를 변경하는 데 사용
- DROP : SCHEMA(스키마), DOMAIN(도메인), TABLE(테이블), VIEW(뷰), INDEX(인덱스)를 삭제
DML
- SELECT : 테이블에서 조건에 맞는 튜플을 검색
- INSERT : 테이블에 새로운 튜플을 삽입
- DELETE : 테이블에서 조건에 맞는 튜플을 삭제
- UPDATE : 테이블에서 조건에 맞는 튜플의 내용 변경
[해설작성자 : 전자공학도]

48. 릴레이션에 있는 모든 튜플에 대해 유일성은 만족시키지만 최소성은 만족시키지 못하는 키는?(2020년 09월)
     1. 후보키
     2. 기본키
     3. 슈퍼키
     4. 외래키

     정답 : []
     정답률 : 78%
     <문제 해설>
- 후보키(Candidate Key) : 릴레이션을 구성하는 속성 중 튜플을 유일하게 식별하기 위한 기본키로 사용할 수 있는 속성들을 뜻한다.

- 기본키(Primary Key) : 후보키 중에서 선택된 주키(Main Key)이다.

- 슈퍼키(Super Key) : 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키이다. 슈퍼키는 릴레이션에 있는 튜플에 대해 유일성을 만족시키지만, 최소성은 만족 시키지 못한다.

- 외래키(Foregin Key): 관계를 맺고 있는 릴레이션 R1, R2에서 릴레이션 R1이 참조하고 있는 릴레이션 R2의 기본키와 같은 R1릴레이션의 속성 말한다.
[해설작성자 : 정보처리지기]

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. 시스템 카탈로그에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 시스템 카탈로그의 갱신은 무결성 유지를 위하여 SQL을 이용하여 사용자가 직접 갱신하여야 한다.
     2. 데이터베이스에 포함되는 데이터 객체에 대한 정의나 명세에 대한 정보를 유지관리한다.
     3. DBMS가 스스로 생성하고 유지하는 데이터베이스 내의 특별한 테이블의 집합체이다.
     4. 카탈로그에 저장된 정보를 메타 데이터라고도 한다.

     정답 : []
     정답률 : 82%
     <문제 해설>
사용자가 갱신하는게 아니라 시스템에서 자동갱신
[해설작성자 : 소다]

시스템 카탈로그
- 시스템 그 자체에 관련 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터베이스이다.
- 시스템 카탈로그 내의 각 테이블은 사용자를 포함하여 DBMS에서 지원하는 모든 데이터 객체에 대한 정의나 명세에관한 정보를 유지 관리하는 시스템 테이블이다.
[해설작성자 : comcbt.com 이용자]

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

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

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

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

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

53. 정규화를 거치지 않아 발생하게 되는 이상(anomaly) 현상의 종류에 대한 설명으로 옳지 않은 것은?(2021년 03월)
     1. 삭제 이상이란 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 삭제 현상이다.
     2. 삽입 이상이란 릴레이션에서 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들도 함께 삽입되는 현상이다.
     3. 갱신 이상이란 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상이다.
     4. 종속 이상이란 하나의 릴레이션에 하나 이상의 함수적 종속성이 존재하는 현상이다.

     정답 : []
     정답률 : 73%
     <문제 해설>
이상(Anomaly)의 종류에는 삽입이상, 삭제이상, 갱신이상만 존재한다.
[해설작성자 : 또르링]

54. 다음 SQL문에서 사용된 BETWEEN 연산의 의미와 동일한 것은?(2022년 03월)

    

     1. 점수 >= 90 AND 점수 <= 95
     2. 점수 > 90 AND 점수 < 95
     3. 점수 > 90 AND 점수 <= 95
     4. 점수 >= 90 AND 점수 < 95

     정답 : []
     정답률 : 82%
     <문제 해설>
SQL문의 조건은 성적 테이블에 성적(점수)가 90이상 95이하인 학과를 찾아라 이다.
[해설작성자 : 독학하는자]

55. 3NF에서 BCNF가 되기 위한 조건은?(2021년 03월)
     1. 이행적 함수 종속 제거
     2. 부분적 함수 종속 제거
     3. 다치 종속 제거
     4. 결정자이면서 후보 키가 아닌 것 제거

     정답 : []
     정답률 : 79%
     <문제 해설>
1NF(도)-2NF(부)-3NF(이)-BCNF(결)-4NF(다)-5NF(조)

도부이결다줘 = 두부이걸다줘?
앞글자만 따서 순서외우면 편함
[해설작성자 : 또르링]

56. 데이터 제어언어(DCL)의 기능으로 옳지 않은 것은?(2020년 06월)
     1. 데이터 보안
     2. 논리적, 물리적 데이터 구조 정의
     3. 무결성 유지
     4. 병행수행 제어

     정답 : []
     정답률 : 65%
     <문제 해설>
DCL 데이터 제어 언어는 데이터 베이스 관리자가 데이터 보안, 무결성 유지, 병행 제어, 회복을 하기 위해 DBA가 사용하는 제어용 언어
[해설작성자 : G다다]

DDL(데이터 정의어)의 기능 중 논리적 데이터 구조와 물리적 데이터 구조의 사상을 정의하기가 있다.
[해설작성자 : 취업뿌숨]

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

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

58. 다음 중 SQL의 집계 함수(aggregation function)가 아닌 것은?(2020년 08월)
     1. AVG
     2. COUNT
     3. SUM
     4. CREATE

     정답 : []
     정답률 : 91%
     <문제 해설>
AVG: 해당 집계행의 평균
SUM: 해당 집계행의 합
COUNT: 집계행의 수

SCR_TBL
ID SUBJECT SCORE
1 국어 90
2 영어 95
3 수학 100

인 테이블이 있을때
SELECT AVG(SCORE), SUM(SCORE), COUNT(*) FROM SCR_TBL;
결과는
95, 285, 3이 나옵니다.
[해설작성자 : 소현진]

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

    

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

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

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

60. 제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. C언어에서 비트 논리연산자에 해당하지 않는 것은?(2020년 06월)
     1. ^
     2. ?
     3. &
     4. ~

     정답 : []
     정답률 : 66%
     <문제 해설>
C언어에서 비트 논리 연산 : & , ^ , | , ~
[해설작성자 : 거상 주작섭]

? 는 조건연산자
[해설작성자 : 합격하고싶다]

비트 연산자 ^, l, &, ~
시프트 연산자 >>, <<
[해설작성자 : comcbt.com 이용자]

^(XOR)
? 조건문
&(AND)
~(NOT)
[해설작성자 : 전자공학도]

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

    

     1. 45
     2. 55
     3. 66
     4. 78

     정답 : []
     정답률 : 66%
     <문제 해설>
range([시작,] 끝[, 간격])으로 ( []은 생략할 수 있는 인자를 말함 )
끝은 포함하지 않음 따라서 0~11까지의 숫자의 합
[해설작성자 : 수성구 불주먹]

Python의 ranger 함수
range(A) : 0부터 A-1까지의 정수 범위를 반환한다
ranger(A,B) : A부터 B-1까지의 정수 범위를 반환한다.
ranger(A,B,C) : A부터 B-1까지 C만큼의 간격으로 정수를 반환한다.

문제    : ranger(n+1) → ranger(11+1) → ranger(12) 즉, 0부터 11까지의 숫자를 반환한다
근데 s+=num 이니깐 s에다가 for문을 돌리면서 나온 num 변수(0부터 11까지의 숫자)를 누적해서 더하라
[해설작성자 : 합격드가자~]

for num in range(11) 일경우
반복을 0부터 10번 까지 반복을 합니다.
S += num <<-- 뜻은 반복 할때 마다 S 값에 num 값을 추가하라는 뜻이고
반복되는 과정은
num 값은 0 , 1 , 2 , 3 , 4 , 5, 6 , 7 , 8 , 9 , 10 값이 추가됩니다.
즉 해당 숫자를 전부 더하는 값이 결과 이며,
for num in range(n+1)    <<-- 은 즉 11+1 하라는 뜻으로 12이므로
0부터 11까지 숫자를 더하여 결과 값을 제출하면 됩니다.
[해설작성자 : 지나가던 행인]

64. 시스템에서 모듈 사이의 결합도(Coupling)에 대한 설명으로 옳은 것은?(2020년 06월)
     1. 한 모듈 내에 있는 처리요소들 사이의 기능적인 연관 정도를 나타낸다.
     2. 결합도가 높으면 시스템 구현 및 유지보수 작업이 쉽다.
     3. 모듈간의 결합도를 약하게 하면 모듈 독립성이 향상된다.
     4. 자료결합도는 내용결합도 보다 결합도가 높다.

     정답 : []
     정답률 : 69%
     <문제 해설>
결합도
모듈 외에 있는 처리요소들 사이의 기능적인 연관 정도
(1.x    응집도에 대한 설명)
결합도가 강할수록 품질이 낮으며, 시스템 구현 및 유지보수 작업이 어렵다.
(2. x)
모듈 간의 결합도를 약하게 하면 모듈 독립성이 향상된다.
(3. o 결합도와 응집도 반비례라고 생각하면 편함 결합이 약하다 -> 응집이 강하다 -> 모듈 독립성이 향상된다.
4.x
(자료 / 스탬프 / 제어 / 외부 / 공통 / 내용 /    -> 갈수록 결합도 강함) 이거 순서 맞춰라고 문제내는 경우도 이전 기출에 있었는데 영어임)
[해설작성자 : 거상 주작섭]

65. IPv6에 대한 특성으로 틀린 것은?(2022년 03월)
     1. 표시방법은 8비트씩 4부분의 10진수로 표시한다.
     2. 2128개의 주소를 표현할 수 있다.
     3. 등급별, 서비스별로 패킷을 구분할 수 있어 품질보장이 용이하다.
     4. 확장기능을 통해 보안기능을 제공한다.

     정답 : []
     정답률 : 71%
     <문제 해설>
IPv6 : 16비트씩 8부분의 16진수로 표시
[해설작성자 : 정처기 공부]

66. 다음 쉘 스크립트의 의미로 옳은 것은?(2020년 09월)

    

     1. wow 사용자가 로그인한 경우에만 반복문을 수행한다.
     2. wow 사용자가 로그인할 때까지 반복문을 수행한다.
     3. wow 문자열을 복사한다.
     4. wow 사용자에 대한 정보를 무한 반복하여 출력한다.

     정답 : []
     정답률 : 70%
     <문제 해설>
who 명령어는 현재 시스템에 로그인한 유저의 목록을 보여 준다.
|(파이프)는 앞의 who 명령어의 출력 결과를 뒤의 grep 명령어로 전달한다.
grep 명령어는 who 명령문의 결과 중 wow 유저가 로그인하면 그 결과를 필터링하여 출력한다.
sleep 명렁문 뒤의 숫자(초)만큼 잠시 수행을 대기한다.
[해설작성자 : 오씨]

until....do : 조건문이 참이 될 때까지 실행
[해설작성자 : 지원]

67. IPv6에 대한 설명으로 틀린 것은?(2021년 03월)
     1. 멀티캐스트(Multicast) 대신 브로드캐스트(Broadcast)를 사용한다.
     2. 보안과 인증 확장 헤더를 사용함으로써 인터넷 계층의 보안기능을 강화하였다.
     3. 애니캐스트(Anycast)는 하나의 호스트에서 그룹 내의 가장 가까운 곳에 있는 수신자에게 전달하는 방식이다.
     4. 128비트 주소체계를 사용한다.

     정답 : []
     정답률 : 77%
     <문제 해설>
브로드캐스팅은 IPv4에 해당합니다.
[해설작성자 : comcbt.com 이용자]

IPv4 : 유니캐스트, 멀티캐스트, 브로드캐스트
IPv6 : 유니캐스트, 애니캐스트, 멀티캐스트

IPv6는 브로드캐스트 대신 애니캐스트 사용
[해설작성자 : 지나가요]

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

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

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

71. 빈 기억공간의 크기가 20KB, 16KB, 8KB, 40KB 일 때 기억장치 배치 전략으로 “Best Fit"을 사용하여 17KB의 프로그램을 적재할 경우 내부단편화의 크기는 얼마인가?(2022년 03월)
     1. 3KB
     2. 23KB
     3. 64KB
     4. 67KB

     정답 : []
     정답률 : 78%
     <문제 해설>
문제에서 Best Fit을 물을 시 내부단편화가 제일 작은 보기를 찾으면 됨
1) 20KB - 17KB = 3KB
2) 16KB - 17KB = 불가
3) 8KB - 17KB = 불가
4) 40KB - 17KB = 23KB
따라서 1번이 정답
[해설작성자 : 단기합격은 유튜브 윤파고]

- First Fit: 들어갈 수 있는 첫 번째 공간에 넣음
- Best Fit: 내부 단편화(자투리)가 가장 적게 남는 공간에 넣음
- Worst Fit: 가장 큰 공간에 넣음
[해설작성자 : 민트초코담금주]

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

    

     1. 1
     2. 11
     3. 66
     4. 98

     정답 : []
     정답률 : 75%
     <문제 해설>
ASCII code table을 참조하면

A는 10진수로 나타냈을 때, 65
a는 10진수로 나타냈을 때, 97
부터 알파벳이 시작한다.
[해설작성자 : 해군본부 정체단 674기 수뱅]

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

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

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

74. 페이징 기법에서 페이지 크기가 작아질수록 발생하는 현상이 아닌 것은?(2021년 05월)
     1. 기억장소 이용 효율이 증가한다.
     2. 입·출력 시간이 늘어난다.
     3. 내부 단편화가 감소한다.
     4. 페이지 맵 테이블의 크기가 감소한다.

     정답 : []
     정답률 : 48%
     <문제 해설>
페이징 기법 : 컴퓨터가 메인 메모리에서 사용하기 위해 데이터를 저장하고 검색하는 메모리 관리 기법
페이징기법을 통해 물리적 메모리는 연속적으로 할당되어 존재할 필요가 없음
페이징기법을 통해 비연속적 메모리를 연속적메모리처럼 만들 수 있음

*페이지 크기가 작은경우
더 많은 페이징 사상테이블 필요
내부 단편화 감소
페이지의 집합을 효율적으로 운영가능
기억장치의 효율이 좋음
총 입출력 시간 증가

*페이지크기가 큼
주기억 장치 공간 절약
참조되는 정보와 무관한 양의 정보가 주기억 장치에 남게 됨
테이블이 복잡하지 않아 관리 용이
[해설작성자 : comcbt.com 이용자]

75. 모듈의 독립성을 높이기 위한 결합도(Coupling)와 관련한 설명으로 틀린 것은?(2021년 08월)
     1. 오류가 발생했을 때 전파되어 다른 오류의 원인이 되는 파문 효과(Ripple Effect)를 최소화해야 한다.
     2. 인터페이스가 정확히 설정되어 있지 않을 경우 불필요한 인터페이스가 나타나 모듈 사이의 의존도는 높아지고 결합도가 증가한다.
     3. 모듈들이 변수를 공유하여 사용하게 하거나 제어 정보를 교류하게 함으로써 결합도를 낮추어야 한다.
     4. 다른 모듈과 데이터 교류가 필요한 경우 전역변수(Global Variable)보다는 매개변수(Parameter)를 사용하는 것이 결합도를 낮추는 데 도움이 된다.

     정답 : []
     정답률 : 57%
     <문제 해설>
모듈들이 변수를 공유하여 사용하게 하거나 제어 정보를 교류하게 하면 모듈 간의 결합도가 높아집니다.
[해설작성자 : ㄱㄱㅇ]

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

    

     1. E
     2. V
     3. R
     4. O

     정답 : []
     정답률 : 58%
     <문제 해설>
str1[1]=str2[2] => str1의 KOREA중 O가 V로 변경
str1= KVREA
str2[3]=str1[4] =>str2의 LOVE중 E가 A로 변경
str2=LOVA

p1+2= str1[2]= R
[해설작성자 : 영남이공대 소프트웨어콘텐츠과]

덧붙이자면
strcat(str1, str2);에 의해
str1 => "KVREALOVA"가 됩니다.
[해설작성자 : 현직]

char str1 [20] = KOREA
*20개의 칸이 있고, 맨앞에서부터 KOREA가 들어감
char str2 [20] = LOVE
*20개의 칸이 있고, 맨앞에서부터 LOVE가 들어감

p1=str1 (p1을 str1이라고 여김)
p2=str2 (p2을 str2이라고 여김)

str1[1]=p2[2]
*p2(str2)의 2번째인 O를 str1(p1)의 1번째인 O에 삽입.
str1 = KVREA

str2[3]=p1[4]
*p1(str1)의 4번째 A를 str2(p2)의 3번째인 V에 삽입.
str2=LOVA

strcat에 의해 str2를 str1 뒤로 붙임.
KVREALOVE라는 값이 나옴.

여기서 p1+2(str1[2])를 구하면 2번째인 R.

**혹시나 해서 말하지만 첫칸은 1이 아니라, 0이에요.
[해설작성자 : 친절한 설명]

77. UDP 특성에 해당되는 것은?(2021년 03월)
     1. 양방향 연결형 서비스를 제공한다.
     2. 송신중에 링크를 유지관리하므로 신뢰성이 높다.
     3. 순서제어, 오류제어, 흐름제어 기능을 한다.
     4. 흐름제어나 순서제어가 없어 전송속도가 빠르다.

     정답 : []
     정답률 : 71%
     <문제 해설>
제어가 없으니 신뢰성이 낮음
4번을 제외한 나머지는 전부 TCP에관한 설명
[해설작성자 : 또르링]

78. 다음 C 프로그램의 결과 값은?(2020년 08월)

    

     1. 15
     2. 19
     3. 25
     4. 27

     정답 : []
     정답률 : 82%
     <문제 해설>
i sum
1 1
3 4
5 9
7 16
9 25
11 36 X ( i<=10; 때문에 적용 안됨)
[해설작성자 : !]

해당 C프로그램 알고리즘은 반복문을 보시면 1부터 10까지 홀수의 합입니다.
sum = 1+3+5+7+9 = 25 입니다.
[해설작성자 : 24년 정처기 공부]

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

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

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

80. WAS(Web Application Server)가 아닌 것은?(2021년 03월)
     1. JEUS
     2. JVM
     3. Tomcat
     4. WebSphere

     정답 : []
     정답률 : 63%
     <문제 해설>
JVM은 자바 가상 머신
Java Virtual Machine
[해설작성자 : 정보처리산업기사 2020년 취득자]

웹 애플리케이션 서버의 종류에는
Tomcat, GlassFish, JBoss, Jetty, JEUS, Resin, WebLogic, WebSphere 등이 있다.
[해설작성자 : 두루두루]

81. Rayleigh-Norden 곡선의 노력 분포도를 이용한 프로젝트 비용 산정기법은?(2020년 06월)
     1. Putnam 모형
     2. 델파이 모형
     3. COCOMO 모형
     4. 기능점수 모형

     정답 : []
     정답률 : 56%
     <문제 해설>
비용 산정 기법
전문가 감정 기법 : 조직 내에 있는 경험 많은 두 명 이상의 전문가에게 비용 산정을 의뢰하는 기법
델파이 기법 : 전문가 감정 기법의 주관적 편견을 보완하기 위해 많은 전문가의 의견을 종합
LOC 기법 : 원시 코드 라인 수 기법으로서 원시 코드 라인 수의 비관치 낙관치 기대치를 측정하여 산정하는 기법
개발 단계별 인월수 기법 : LOC를 보완하기 위한 기법, 필요 노력을 생명 주기의 각 단계별로 선정
COCOMO : 보헴이 제안한 것으로 LOC에 의한 비용 산정 기법

유형별 COCOMO
Organic : 조직형 / 소규모 소프트웨어 일괄 자료 처리 /5만 라인 이하
Semi-detached : 반분리형 / 트랜잭션 처리 시스템이나 운영체제, DB / 30만 라인 이하
Embedded : 내장형 / 최대형 규모 트랜잭션 처리 시스템이나 운영체제 / 30만 라인 이상

COCOMO 종류
Basic (기본): 소프트웨어 크기 및 개발 유형만 이용
Intermediate(중간) : 기본형의 공식 토대로 사용하나 4가지 특성 및 15가지 요인에 의해 비용 산정
제품 특성 : 신뢰도 / DB크기 / 복잡도
컴퓨터 특성 : 수행시간제한 / 기억장소제한 / 가상 기계의 안정성 / Turn Around Time
개발 요원의 특성 : 분석가 능력 / 개발 분야 경험 / 가상 기계 경험 / 프로그래머 능력 및 언어 경험
프로젝트 특성 : 소프트웨어 도구 이용 / 프로젝트 개발 일정 / 최신 프로그래밍 기법 이용
Detailed(발전) : 중간형 COCOMO 보완하여 만들어진 방법으로 개발 공정별보다 자세하고 정확하게 비용 산정
Putnam 기법 : 소프트웨어 생명 주기의 전 과정 동안에 사용될 곡선의 노력의 분포를 가정해주는 모형
Rayleigh-Norden 곡선의 노력 분포도를 기초로 한다.
FP 기법 : 기능 점수 모형으로 알브레히트가 제안 / 요인별 가중치를 합산하여 총 기능 점수를 산출하여 점수와 영향도를 이용 비용 산정
[해설작성자 : 거상 주작섭]

82. 메모리상에서 프로그램의 복귀 주소와 변수사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?(2020년 06월)
     1. 모드체크
     2. 리커버리 통제
     3. 시스로그
     4. 스택가드

     정답 : []
     정답률 : 74%
     <문제 해설>
Stack Protection : Stack Overflow를 탐지하고 보안을 강화시키는 기법
Stack Guard : Stack 상에 일정한 주소번지에 프로그램이 선언한 canary를 심어 두어, 스택의 변조 된 경우에, canary를 체크하여 프로그램이 비정상적으로 종료 시키는 기법
Stack Shield : 함수의 리턴주소를 복사하여 실제 리턴주소를 참조하지 않고 함수를 리턴해주는 기법
Syslog : 시스템에서 로그메시지를 처리하기 위해서 제공
Recovery Control : 부적절한 사건/상황으로 인해 발생한 피해를 극복, 장애/혼란을 정돈하고 정상상태로 회복

+ 카나리(Canary 또는 Canaries) : buffer와 SFP 사이에 buffer overflow를 탐지하기 위한 특정 값(canary value)를 삽입하는 기법
+ Canary    종류 : terminator, random, random XOR (스택가드는 canary 세 가지 모두를 지원)
+ ProPolice 종류 : terminator와 random
+ StackGuard와 ProPolice는 (함수 포인터들을 오버플로우하는) 자동으로 할당된 구조체들에서 오버플로우를 방어하지 못한다.

83. 위조된 매체 접근 제어(MAC) 주소를 지속적으로 네트워크로 흘려보내, 스위치 MAC 주소 테이블의 저장 기능을 혼란시켜 더미 허브(Dummy Hub)처럼 작동하게 하는 공격은?(2022년 03월)
     1. Parsing
     2. LAN Tapping
     3. Switch Jamming
     4. FTP Flooding

     정답 : []
     정답률 : 60%
     <문제 해설>
- Parsing
        - 하나의 프로그램을 런타임 환경(예를 들면, 브라우저 내 자바스크립트 엔진)이 실제로 실행할 수 있는 내부 포맷으로 분석하고 변환하는 것을 의미함
- LAN Tapping
        - 처음 들어보는 용어이고, 찾아도 제대로된 정의가 나오지 않으나 Lan+Tapping으로 해석한다면 LAN신호를 직접 자신에게 끌어오는 방식의 공격정도로 해석 가능함
- Switch Jamming
        - 스위치의 기능이 방해 받아 정상 동작을 하지 못해 스위치가 더미 허브처럼 작동 하게 되는 것
        - Switch + Jamming(방해)
- FTP(SYN) Flooding
        - TCP의 3 Way Handshake 취약점을 이용한 DoS 공격으로 다량의 SYN패킷을 보내 백로그큐를 가득 채우는 공격
        - 통상적으로 위의 공격법을 TCP SYN Flooding 이라고 칭하는 경우가 많음
        - FTP프로토콜을 사용한 서버에 다량의 SYN 패킷을 보내 마비시키는것을 FTP Flooding이라고 볼 수 있음.
[해설작성자 : 강썬]

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

    

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

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

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

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

85. 취약점 관리를 위해 일반적으로 수행하는 작업이 아닌 것은?(2022년 03월)
     1. 무결성 검사
     2. 응용 프로그램의 보안 설정 및 패치(Patch) 적용
     3. 중단 프로세스 및 닫힌 포트 위주로 확인
     4. 불필요한 서비스 및 악성 프로그램의 확인과 제거

     정답 : []
     정답률 : 84%
     <문제 해설>
중단된 프로세스와 닫힌 포트가 아니라, 활성화된 프로세스와 열린 포트를 중심으로 확인해야 취약점이 관리될 수 있음.
[해설작성자 : 동차합격가즈아]

86. 소프트웨어 생명주기 모델 중 V 모델과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. 요구 분석 및 설계단계를 거치지 않으며 항상 통합 테스트를 중심으로 V 형태를 이룬다.
     2. Perry에 의해 제안되었으며 세부적인 테스트 과정으로 구성되어 신뢰도 높은 시스템을 개발하는데 효과적이다.
     3. 개발 작업과 검증 작업 사이의 관계를 명확히 드러내 놓은 폭포수 모델의 변형이라고 볼 수 있다.
     4. 폭포수 모델이 산출물 중심이라면 V 모델은 작업과 결과의 검증에 초점을 둔다.

     정답 : []
     정답률 : 66%
     <문제 해설>
V 모델(V-model)은 소프트웨어 개발 프로세스로 폭포수 모델의 확장된 형태 중 하나로 볼 수 있다. 아래 방향으로 선형적으로 내려가면서 진행되는 폭포수 모델과 달리, 이 프로세스는 오른쪽 그림과 같이 코딩 단계에서 위쪽으로 꺾여서 알파벳 V자 모양으로 진행된다

검증(Verification)단계
1. 요구사항 분석
2. 시스템 설계
3. 아키텍처 설계
4. 모듈 설계
[해설작성자 : 58]

요구 분석 및 설계단계를 거치며, 구현 후 단위 > 통합 > 시스템 > 인수 테스트로 각 개발 단계를 검증한다.
[해설작성자 : 놀고싶다.]

87. 다음 내용이 설명하는 기술로 가장 적절한 것은?(2022년 04월)

    

     1. Virtual Local Area Network
     2. Simple Station Network
     3. Mesh Network
     4. Modem Network

     정답 : []
     정답률 : 69%
     <문제 해설>
그물 = mesh
[해설작성자 : 산익]

88. SQL Injection 공격과 관련한 설명으로 틀린것은?(2021년 08월)
     1. SQL Injection은 임의로 작성한 SQL 구문을 애플리케이션에 삽입하는 공격방식이다.
     2. SQL Injection 취약점이 발생하는 곳은 주로웹 애플리케이션과 데이터베이스가 연동되는 부분이다.
     3. DBMS의 종류와 관계없이 SQL Injection공격 기법은 모두 동일하다.
     4. 로그인과 같이 웹에서 사용자의 입력 값을 받아 데이터베이스 SQL문으로 데이터를요청하는 경우 SQL Injection을 수행할 수 있다.

     정답 : []
     정답률 : 84%
     <문제 해설>
SQL Injection : 웹 응용 프로그램에 SQL을 삽입하여 내부 데이터베이스 서버의 데이터를 유출 및 변조하고, 관리자 인증을 우회하는 보안 약점, 동적 쿼리에 사용되는 입력 데이터에 예약어 및 특수문자가 입력되지 않게 필터링 되도록 설정하여 방지할 수 있다.
[해설작성자 : comcbt.com 이용자]

DBMS 종류에 따라 SQL 구문의 문법이 달라짐
[해설작성자 : 박세모]

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. 소프트웨어 비용 산정 기법 중 개발 유형으로 organic, semi-detached, embedded로 구분되는 것은?(2021년 05월)
     1. PUTNAM
     2. COCOMO
     3. FP
     4. SLIM

     정답 : []
     정답률 : 86%
     <문제 해설>
COCOMO : 시스템의 비용을 산정하기 위해 시스템을 구성하고 있는 모듈과 서브 시스템의 비용 합계를 계산하는 방식. (소프트웨어 개발의 공정 개발 기간의 견적 방법 중 하나)
[해설작성자 : comcbt.com 이용자]

COCOMO모형의 개발유형 : 소프트웨어의 복잡도 or 원시 프로그램의 규모에 따라 분류
① 조직형(Organic Mode) : 5만 라인 이하 / 기관 내부에서 개발된 중·소규모의 소프트웨어
② 반분리형(Semi-Detached Mode) : 30만 라인 이하 / 트랜잭션 처리 시스템, 운영체제 DBMS 등
③ 내장형(Embedded Mode) : 30만 라인 이상 / 최대형 규모의 트랜잭션 처리시스템이나 운영체제
[해설작성자 : anne]

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. 소프트웨어 생명주기 모형 중 고전적 생명주기 모형으로 선형 순차적 모델이라고도 하며, 타당성 검토, 계획, 요구사항 분석, 구현, 테스트, 유지보수의 단계를 통해 소프트웨어를 개발하는 모형은?(2020년 08월)
     1. 폭포수 모형
     2. 애자일 모형
     3. 컴포넌트 기반 방법론
     4. 6GT 모형

     정답 : []
     정답률 : 90%
     <문제 해설>
핵심 : 고전적 생명주기 모형 / 선형 순차적 모델
폭포수 모형 : 타당성 검토 -> 계획 -> 요구사항분석 -> 구현 -> 테스트 - > 유지보수 단계
[해설작성자 : !]

95. CBD(Component Based Development) 에 대한 설명으로 틀린 것은?(2020년 09월)
     1. 개발 기간 단축으로 인한 생산성 향상
     2. 새로운 기능 추가가 쉬운 확장성
     3. 소프트웨어 재사용이 가능
     4. 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법

     정답 : []
     정답률 : 80%
     <문제 해설>
CBD: 컴포넌트 기반 개발
- 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조립하여 새로운 응용프로그램을 만드는 소프트웨어 개발 방법론
- 기존에 있던것들을 활용하기 때문에 생산성 향상 , 확장성 용이 , 재사용 특징이있음
[해설작성자 : mks]

4) 1960년대까지 많이 적용된 기법은 초기 방법인 "구조적 개발 방법론"이다
그 이후 "정보 공학 방법론" -> "객체 지향 방법론" 순으로 등장하였으며
"CBD(컴포넌트 기반 개발 방법론)"는 객체 지향 방법론의 단점 중 하나인 S/W 재사용성을 보완하여 등장함(1990년대)
[해설작성자 : 합격드가자~]

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

    

     1. Block Host
     2. Tree Host
     3. Screened Subnet
     4. Ring Homed

     정답 : []
     정답률 : 49%
     <문제 해설>
스크린 서브넷(Screen Subnet) : 외부 네트워크와 내부 네트워크 사이에 두는 완충적인 통신망
[해설작성자 : comcbt.com 이용자]

97. 테일러링(Tailoring) 개발 방법론의 내부 기준에 해당하지 않는 것은?(2020년 06월)
     1. 납기/비용
     2. 기술환경
     3. 구성원 능력
     4. 국제표준 품질기준

     정답 : []
     정답률 : 56%
     <문제 해설>
테일러링 (Tailoring)
프로젝트 상황 특성에 맞게 정의된 소프트웨어 개발 방법론 절차, 사용기법 등을 수정 및 보완하는 작업
내부적 요건 : 목표환경 / 요구사항 / 프로젝트규모 / 보유기술 /
외부적 요건 : 법적 제약사항 / 표준 품질 기준
[해설작성자 : 거상 주작섭]

테일러링
내부적 요건 : 납기/비용, 기술환경, 구성원 능력, 고객요구 사항
외부적 요건 : 법적 제약사항, 국제표준 품질 기준
[해설작성자 : 마젤토브힘내봐마젤토브웃어봐]

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

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

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

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. 소프트웨어 개발 방법론의 테일러링(Tailoring)과 관련한 설명으로 틀린 것은?(2022년 03월)
     1. 프로젝트 수행 시 예상되는 변화를 배제하고 신속히 진행하여야 한다.
     2. 프로젝트에 최적화된 개발 방법론을 적용하기 위해 절차, 산출물 등을 적절히 변경하는 활동이다.
     3. 관리 측면에서의 목적 중 하나는 최단기간에 안정적인 프로젝트 진행을 위한 사전 위험을 식별하고 제거하는 것이다.
     4. 기술적 측면에서의 목적 중 하나는 프로젝트에 최적화된 기술 요소를 도입하여 프로젝트 특성에 맞는 최적의 기법과 도구를 사용하는 것이다.

     정답 : []
     정답률 : 67%
     <문제 해설>
테일러링 (Tailoring) : 프로젝트 상황 특성에 맞게 정의된 소프트웨어 개발 방법론 절차, 사용기법 등을 수정 및 보완하는 작업
[해설작성자 : 땅혁]


정 답 지

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



List of Articles
번호 제목 글쓴이 날짜 조회 수
26091 농작업안전보건기사 필기 기출문제(해설) 및 CBT 2018년12월22일 new 좋은아빠되기 2025.12.04 1
26090 금속재료산업기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 04일)(5516656) new 좋은아빠되기 2025.12.04 1
26089 유기농업기능사 필기 기출문제(해설) 및 CBT 2011년04월17일(2회) new 좋은아빠되기 2025.12.04 1
26088 건설재료시험기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 04일)(9780295) new 좋은아빠되기 2025.12.04 1
26087 수능(지구과학II) 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 04일)(1750903) new 좋은아빠되기 2025.12.04 1
26086 변리사 1차(1교시) 필기 기출문제(해설) 및 CBT 2008년03월09일 new 좋은아빠되기 2025.12.04 1
26085 배관기능사 필기 기출문제(해설) 및 CBT 2012년02월12일(1회) new 좋은아빠되기 2025.12.04 1
» 정보처리기사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 04일)(2140407) new 좋은아빠되기 2025.12.04 1
26083 컴퓨터응용선반기능사 필기 기출문제(해설) 및 CBT 2009년03월29일(2회) new 좋은아빠되기 2025.12.04 1
26082 청소년상담사 3급(1교시)(구) 필기 기출문제(해설) 및 CBT 2014년03월29일 new 좋은아빠되기 2025.12.04 1
26081 의료전자기능사 필기 기출문제(해설) 및 CBT 2013년07월21일(4회) new 좋은아빠되기 2025.12.04 1
26080 금속재료산업기사 필기 기출문제(해설) 및 CBT 2009년08월30일 new 좋은아빠되기 2025.12.04 1
26079 산업보건지도사 필기 기출문제(해설) 및 CBT 2021년03월13일 new 좋은아빠되기 2025.12.04 1
26078 9급 국가직 공무원 형사소송법 필기 기출문제(해설) 및 CBT 2024년03월23일 new 좋은아빠되기 2025.12.04 1
26077 9급 지방직 공무원 컴퓨터일반 필기 기출문제(해설) 및 CBT 2021년06월05일 new 좋은아빠되기 2025.12.04 2
26076 바리스타 2급 필기 기출문제(해설) 및 CBT 2012년03월10일 new 좋은아빠되기 2025.12.04 1
26075 조경기능사 필기 기출문제(해설) 및 CBT 모의고사(2025년 12월 04일)(5959487) new 좋은아빠되기 2025.12.04 2
26074 수능(생명과학I) 필기 기출문제(해설) 및 CBT 2011년02월28일 new 좋은아빠되기 2025.12.04 1
26073 9급 지방직 공무원 서울시 식용작물 필기 기출문제(해설) 및 CBT 2019년06월15일 new 좋은아빠되기 2025.12.04 4
26072 9급 국가직 공무원 회계원리 필기 기출문제(해설) 및 CBT 2017년04월08일 new 좋은아빠되기 2025.12.04 1
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 1307 Next
/ 1307