| | 제 목 | [정보처리기사] 22년 2회 정보처리기사 필기 | | 글쓴이 | 기사친구 | 작성일 | 2023-06-22 | 조회수 | 6444 | | 글공유 | |
| | |
2022년 제2회 정보처리기사 필기 기출문제 첨부파일을 다운로드 받으셔서 학습에 참고하시기 바랍니다. 합격을 기원합니다.
^^**
국 가 기 술 자 격 검 정
2022년도 제2회 정보처리기사 필기시험
2022년 04월 24일 시행
<제1과목> 소프트웨어 설계
1. UML 다이어그램 중 순차 다이어그램에 대한 설명으로 틀린 것은?
① 객체 간의 동적 상호작용을 시간 개념을 중심으로 모델링 하는 것이다.
② 주로 시스템의 정적 측면을 모델링 하기 위해 사용한다.
③ 일반적으로 다이어그램의 수직 방향이 시간의 흐름을 나타낸다.
④ 회귀 메시지(Self-Message), 제어블록(Statement block) 등으로 구성된다.
2. 메시지 지향 미들웨어(Message-Oriented Middleware, MOM)에 대한 설명으로 틀린 것은?
① 느리고 안정적인 응답보다는 즉각적인 응답이 필요한 온라인 업무에 적합하다.
② 독립적인 애플리케이션을 하나의 통합된 시스템으로 묶기 위한 역할을 한다.
③ 송신측과 수신측의 연결 시 메시지 큐를 활용하는 방법이 있다.
④ 상이한 애플리케이션 간 통신을 비동기 방식으로 지원한다.
3. 익스트림 프로그래밍에 대한 설명으로 틀린 것은?
① 대표적인 구조적 방법론 중 하나이다.
② 소규모 개발 조직이 불확실하고 변경이 많은 요구를 접하였을 때 적절한 방법이다.
③ 익스트림 프로그래밍을 구동시키는 원리는 상식적인 원리와 경험을 최대한 끌어 올리는 것이다.
④ 구체적인 실천 방법을 정의하고 있으며, 개발 문서 보다는 소스코드에 중점을 둔다.
4. 유스케이스(Use Case)의 구성 요소 간의 관계에 포함되지 않는 것은?
① 연관 ② 확장
③ 구체화 ④ 일반화
5. 요구사항 분석에서 비기능적(Nonfunctional) 요구에 대한 설명으로 옳은 것은?
① 시스템의 처리량(Throughput), 반응 시간 등의 성능 요구나 품질 요구는 비기능적 요구에 해당하지 않는다.
② ‘차량 대여 시스템이 제공하는 모든 화면이 3초 이내에 사용자에게 보여야 한다’는 비기능적 요구이다.
③ 시스템 구축과 관련된 안전, 보안에 대한 요구사항들은 비기능적 요구에 해당하지 않는다.
④ ‘금융 시스템은 조회, 인출, 입금, 송금의 기능이 있어야 한다’는 비기능적 요구이다.
6. 정보공학 방법론에서 데이터베이스 설계의 표현으로 사용하는 모델링 언어는?
① Package Diagram
② State Transition Diagram
③ Deployment Diagram
④ Entity-Relationship Diagram
7. 미들웨어(Middleware)에 대한 설명으로 틀린 것은?
① 여러 운영체제에서 응용 프로그램들 사이에 위치한 소프트웨어이다.
② 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있어야 한다.
③ 소프트웨어 컴포넌트를 연결하기 위한 준비된 인프라 구조를 제공한다.
④ 여러 컴포넌트를 1대 1, 1대 다, 다대 다 등 여러 가지 형태로 연결이 가능하다.
8. UI의 설계 지침으로 틀린 것은?
① 이해하기 편하고 쉽게 사용할 수 있는 환경을 제공해야 한다.
② 주요 기능을 메인 화면에 노출하여 조작이 쉽도록 하여야 한다.
③ 치명적인 오류에 대한 부정적인 사항은 사용자가 인지할 수 없도록 한다.
④ 사용자의 직무, 연령, 성별 등 다양한 계층을 수용하여야 한다.
9. 객체지향 개념에서 다형성(Polymorphism)과 관련한 설명으로 틀린 것은?
① 다형성은 현재 코드를 변경하지 않고 새로운 클래스를 쉽게 추가할 수 있게 한다.
② 다형성이란 여러 가지 형태를 가지고 있다는 의미로, 여러 형태를 받아들일 수 있는 특징을 말한다.
③ 메소드 오버라이딩(Overriding)은 상위 클래스에서 정의한 일반 메소드의 구현을 하위 클래스에서 무시하고 재정의할 수 있다.
④ 메소드 오버로딩(Overloading)의 경우 매개 변수 타입은 동일하지만 메소드명을 다르게 함으로써 구현, 구분할 수 있다.
10. 소프트웨어 개발 영역을 결정하는 요소 중 다음 사항과 관계있는 것은?
- 소프트웨어에 의해 간접적으로 제어되는 장치와 소프트웨어를 실행하는 하드웨어
- 기존의 소프트웨어와 새로운 소프트웨어를 연결하는 소프트웨어
- 순서적 연산에 의해 소프트웨어를 실행하는 절차
① 기능(Function) ② 성능(Performance)
③ 제약조건(Constraint) ④ 인터페이스(Interface)
11. 객체에 대한 설명으로 틀린 것은?
① 객체는 상태, 동작, 고유 식별자를 가진 모든 것이라 할 수 있다.
② 객체는 공통 속성을 공유하는 클래스들의 집합이다.
③ 객체는 필요한 자료 구조와 이에 수행되는 함수들을 가진 하나의 독립된 존재이다.
④ 객체의 상태는 속성값에 의해 정의된다.
12. 속성과 관련된 연산(Operation)을 클래스 안에 묶어서 하나로 취급하는 것을 의미하는 객체지향 개념은?
① Inheritance ② Class
③ Encapsulation ④ Association
13. 애자일(Agile) 프로세스 모델에 대한 설명으로 틀린 것은?
① 변화에 대한 대응보다는 자세한 계획을 중심으로 소프트웨어를 개발한다.
② 프로세스와 도구 중심이 아닌 개개인과의 상호소통을 통해 의견을 수렴한다.
③ 협상과 계약보다는 고객과의 협력을 중시한다.
④ 문서 중심이 아닌, 실행 가능한 소프트웨어를 중시한다.
14. 명백한 역할을 가지고 독립적으로 존재할 수 있는 시스템의 부분으로 넓은 의미에서는 재사용되는 모든 단위라고 볼 수 있으며, 인터페이스를 통해서만 접근할 수 있는 것은?
① Model ② Sheet
③ Component ④ Cell
15. GoF(Gang of Four) 디자인 패턴을 생성, 구조, 행동 패턴의 세 그룹으로 분류할 때, 구조 패턴이 아닌 것은?
① Adapter 패턴 ② Bridge 패턴
③ Builder 패턴 ④ Proxy 패턴
16. UI와 관련된 기본 개념 중 하나로, 시스템의 상태와 사용자의 지시에 대한 효과를 보여주어 사용자가 명령에 대한 진행 상황과 표시된 내용을 해석할 수 있도록 도와주는 것은?
① Feedback ② Posture
③ Module ④ Hash
17. UI의 종류로 멀티 터치(Multi-touch), 동작 인식(Gesture Recognition) 등 사용자의 자연스러운 움직임을 인식하여 서로 주고받는 정보를 제공하는 사용자 인터페이스를 의미하는 것은?
① GUK(Graphical User Interface)
② OUI(Organic User Interface)
③ NUI(Natural User Interface)
④ CLK(Command Line Interface)
18. 소프트웨어 모델링과 관련한 설명으로 틀린 것은?
① 모델링 작업의 결과물은 다른 모델링 작업에 영향을 줄 수 없다.
② 구조적 방법론에서는 DFD(Data Flow Diagram), DD(Data Dictionary) 등을 사용하여 요구 사항의 결과를 표현한다.
③ 객체지향 방법론에서는 UML 표기법을 사용한다.
④ 소프트웨어 모델을 사용할 경우 개발될 소프트웨어에 대한 이해도 및 이해 당사자 간의 의사소통 향상에 도움이 된다.
19. 유스케이스 다이어그램(Use Case Diagram)에 관련된 내용으로 틀린 것은?
① 시스템과 상호작용하는 외부 시스템은 액터로 파악해서는 안된다.
② 유스케이스는 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술한다.
③ 시스템 액터는 다른 프로젝트에서 이미 개발되어 사용되고 있으며, 본 시스템과 데이터를 주고받는 등 서로 연동되는 시스템을 말한다.
④ 액터가 인식할 수 없는 시스템 내부의 기능을 하나의 유스케이스로 파악해서는 안된다.
20. 소프트웨어 아키텍처 모델 중 MVC(Model-View-Controller)와 관련한 설명으로 틀린 것은?
① MVC 모델은 사용자 인터페이스를 담당하는 계층의 응집도를 높일 수 있고, 여러 개의 다른 UI를 만들어 그 사이에 결합도를 낮출 수 있다.
② 모델(Model)은 뷰(View) 와 제어(Controller) 사이에서 전달자 역할을 하며, 뷰마다 모델 서브시스템이 각각 하나씩 연결된다.
③ 뷰(View)는 모델(Model)에 있는 데이터를 사용자 인터페이스에 보이는 역할을 담당한다.
④ 제어(Controller)는 모델(Model)에 명령을 보냄으로써 모델의 상태를 변경할 수 있다.
<제2과목> 소프트웨어 개발
21. 통합 테스트(Integration Test)와 관련한 설명으로 틀린 것은?
① 시스템을 구성하는 모듈의 인터페이스와 결합을 테스트하는 것이다.
② 하향식 통합 테스트의 경우 넓이 우선(Breadth First) 방식으로 테스트를 할 모듈을 선택할 수 있다.
③ 상향식 통합 테스트의 경우 시스템 구조도의 최상위에 있는 모듈을 먼저 구현하고 테스트한다.
④ 모듈 간의 인터페이스와 시스템의 동작이 정상적으로 잘되고 있는지를 빨리 파악하고자 할 때 상향식 보다는 하향식 통합 테스트를 사용하는 것이 좋다.
22. 다음과 같이 레코드가 구성되어 있을 때, 이진 검색 방법으로 14를 찾을 경우 비교되는 횟수는?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
① 2 ② 3
③ 4 ④ 5
23. 소프트웨어 공학에서 워크스루(Walktiirough)에 대한 설명으로 틀린 것은?
① 사용사례를 확장하여 명세하거나 설계 다이어그램, 원시코드, 테스트 케이스 등에 적용할 수 있다.
② 복잡한 알고리즘 또는 반복, 실시간 동작, 병행 처리와 같은 기능이나 동작을 이해하려고 할 때 유용하다.
③ 인스펙션(Inspection)과 동일한 의미를 가진다.
④ 단순한 테스트 케이스를 이용하여 프로덕트를 수작업으로 수행해 보는 것이다.
24. 소프트웨어의 개발과정에서 소프트웨어의 변경사항을 관리하기 위해 개발된 일련의 활동을 뜻하는 것은?
① 복호화 ② 형상관리
③ 저작권 ④ 크랙
25. 테스트 케이스와 관련한 설명으로 틀린 것은?
① 테스트의 목표 및 테스트 방법을 결정하기 전에 테스트 케이스를 작성해야 한다.
② 프로그램에 결함이 있더라도 입력에 대해 정상적인 결과를 낼 수 있기 때문에 결함을 검사할 수 있는 테스트 케이스를 찾는 것이 중요하다.
③ 개발된 서비스가 정의된 요구 사항을 준수하는지 확인하기 위한 입력 값과 실행 조건, 예상 결과의 집합으로 볼 수 있다.
④ 테스트 케이스 실행이 통과되었는지 실패하였는지 판단하기 위한 기준을 테스트 오라클(Test Oracle)이라고 한다.
26. 객체지향 개념을 활용한 소프트웨어 구현과 관련한 설명 중 틀린 것은?
① 객체(Object)란 필요한 자료 구조와 수행되는 함수들을 가진 하나의 독립된 존재이다.
② JAVA에서 정보은닉(Information Hiding)을 표기할 때 private의 의미는 ‘공개’이다.
③ 상속(Inheritance)은 개별 클래스를 상속 관계로 묶음으로써 클래스 간의 체계화된 전체 구조를 파악하기 쉽다는 장점이 있다.
④ 같은 클래스에 속하는 개개의 객체이자 하나의 클래스에서 생성된 객체를 인스턴스(Instance)라고 한다.
27. DRM(Digital Rights Management)과 관련한 설명으로 틀린 것은?
① 디지털 콘텐츠와 디바이스의 사용을 제한하기 위해 하드웨어 제조업자, 저작권자, 출판업자 등이 사용할 수 있는 접근 제어 기술을 의미한다.
② 디지털 미디어의 생명 주기 동안 발생하는 사용 권한 관리, 과금, 유통 단계를 관리하는 기술로도 볼 수 있다.
③ 클리어링 하우스(Clearing House)는 사용자에게 콘텐츠 라이센스를 발급하고 권한을 부여해주는 시스템을 말한다.
④ 원본을 안전하게 유통하기 위한 전자적 보안은 고려하지 않기 때문에 불법 유통과 복제의 방지는 불가능하다.
28. 위험 모니터링의 의미로 옳은 것은?
① 위험을 이해하는 것
② 첫 번째 조치로 위험을 피할 수 있도록 하는 것
③ 위험 발생 후 즉시 조치하는 것
④ 위험 요소 징후들에 대하여 계속적으로 인지하는 것
29. 동시에 소스를 수정하는 것을 방지하며 다른 방향으로 진행된 개발 결과를 합치거나 변경 내용을 추적할 수 있는 소프트웨어 버전 관리 도구는?
① RCS(Revision Control System)
② RTS(Reliable Transfer Service)
③ RPC(Remote Procedure Call)
④ RVS(Relative Version System)
30. 화이트박스 테스트와 관련한 설명으로 틀린 것은?
① 화이트박스 테스트의 이해를 위해 논리흐름도(Logic-Flow Diagram)를 이용할 수 있다.
② 테스트 데이터를 이용해 실제 프로그램을 실행함으로써 오류를 찾는 동적 테스트(Dynamic Test)에 해당한다.
③ 프로그램의 구조를 고려하지 않기 때문에 테스트 케이스는 프로그램 또는 모듈의 요구나 명세를 기초로 결정한다.
④ 테스트 데이터를 선택하기 위하여 검증기준(Test Coverage)을 정한다.
31. 알고리즘과 관련한 설명으로 틀린 것은?
① 주어진 작업을 수행하는 컴퓨터 명령어를 순서대로 나열한 것으로 볼 수 있다.
② 검색(Searching)은 정렬이 되지 않은 데이터 혹은 정렬이 된 데이터 중에서 키값에 해당되는 데이터를 찾는 알고리즘이다.
③ 정렬(Sorting)은 흩어져있는 데이터를 키값을 이용하여 순서대로 열거하는 알고리즘이다.
④ 선형 검색은 검색을 수행하기 전에 반드시 데이터의 집합이 정렬되어 있어야 한다.
32. 버블 정렬을 이용하여 다음 자료를 오름차순으로 정렬할 경우 PASS 1의 결과는?
9, 6, 7, 3, 5
① 6, 9, 7, 3, 5 ② 3, 9, 6, 7, 5
③ 3, 6, 7, 9, 5 ④ 6, 7, 3, 5, 9
33. 다음은 인스펙션(Inspection) 과정을 표현한 것이다. (가)~(마)에 들어갈 말을 [보기]에서 찾아 바르게 연결한 것은?
[보기]
㉠ 준비 ㉡ 사전 교육
㉢ 인스펙션 회의 ㉣ 수정
㉤ 후속 조치
① (가) - ㉡, (나) - ㉢
② (나) - ㉠, (다) - ㉢
③ (다) - ㉢, (라) - ㉤
④ (라) - ㉣, (마) - ㉢
34. 소프트웨어를 보다 쉽게 이해할 수 있고 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부구조를 변경하는 것은?
① Refactoring
② Architecting
③ Specification
④ Renewal
35. 단위 테스트(Unit Test)와 관련한 설명으로 틀린 것은?
① 구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트한다.
② 모듈 내부의 구조를 구체적으로 볼 수 있는 구조적 테스트를 주로 시행한다.
③ 필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 스텁(Stub)이라고 한다.
④ 테스트할 모듈을 호출하는 모듈도 있고, 테스트할 모듈이 호출하는 모듈도 있다.
36. IDE(Integrated Development Environment) 도구의 각 기능에 대한 설명으로 틀린 것은?
① Coding - 프로그래밍 언어를 가지고 컴퓨터 프로그램을 작성할 수 있는 환경을 제공
② Compile - 저급언어의 프로그램을 고급언어 프로그램으로 변환하는 기능
③ Debugging - 프로그램에서 발견되는 버그를 찾아 수정할 수 있는 기능
④ Deployment - 소프트웨어를 최종 사용자에게 전달하기 위한 기능
37. 아래 Tree 구조에 대하여 후위 순회(Postorder) 한 결과는?
① a → b → d → c → e → g → h → f
② d → b → g → h → e → f → c → a
③ d → b → a → g → e → h → c → f
④ a → b → d → g → e → h → c → f
38. 인터페이스 구현 시 사용하는 기술로 속성-값 쌍(Attribute-Value Pairs)으로 이루어진 데이터 오브젝트를 전달하기 위해 사용하는 개방형 표준 포맷은?
① JSON ② HTML
③ AVPN ④ DOF
39. 순서가 있는 리스트에서 데이터의 삽입(Push), 삭제(Pop)가 한 쪽 끝에서 일어나며 LIFO(Last_In-First-Out)의 특징을 가지는 자료구조는?
① Tree ② Graph
③ Stack ④ Queue
40. 다음 중 단위 테스트 도구로 사용될 수 없는 것은?
① CppUnit
② JUnit
③ HttpUnit
④ IgpUnit
<제3과목> 데이터베이스 구축
41. 다음 조건을 모두 만족하는 정규형은?
- 테이블 R에 속한 모든 도메인이 원자값만으로 구성되어 있다.
- 테이블 R에서 키가 아닌 모든 필드가 키에 대해 함수적으로 종속되며, 키의 부분 집합이 결정자가 되는 부분 종속이 존재하지 않는다.
- 테이블 R에 존재하는 모든 함수적 종속에서 결정자가 후보키이다.
① BCNF ② 제1정규형
③ 제2정규형 ④ 제3정규형
42. 데이터베이스의 트랜잭션 성질들 중에서 다음 설명에 해당하는 것은?
트랜잭션의 모든 연산들이 정상적으로 수행 완료되거나 아니면 전혀 어떠한 연산도 수행되지 않은 원래 상태가 되도록 해야 한다.
① Atomicity ② Consistency
③ Isolation ④ Durability
43. 분산 데이터베이스 시스템과 관련한 설명으로 틀린 것은?
① 물리적으로 분산된 데이터베이스 시스템을 논리적으로 하나의 데이터베이스 시스템처럼 사용할 수 있도록 한 것이다.
② 물리적으로 분산되어 지역별로 필요한 데이터를 처리할 수 있는 지역 컴퓨터(Local Computer)를 분산 처리기(Distributed Processor)라고 한다.
③ 분산 데이터베이스 시스템을 위한 통신 네트워크 구조가 데이터 통신에 영향을 주므로 효율적으로 설계해야 한다.
④ 데이터베이스가 분산되어 있음을 사용자가 인식할 수 있도록 분산 투명성(Distribution Transparency)을 배제해야 한다.
44. 다음 테이블을 보고 강남지점의 판매량이 많은 제품부터 출력되도록 할 때 다음 중 가장 적절한 SQL 구문은? (단, 출력은 제품명과 판매량이 출력되도록 한다.)
〈푸드〉 테이블
지점명 |제품명 |판매량
강남지점 비빔밥 500
강북지점 도시락 300
강남지점 도시락 200
강남지점 미역국 550
수원지점 비빔밥 600
인천지점 비빔밥 800
강남지점 잡채밥 250
① SELECT 제품명, 판매 량 FROM 푸드 ORDER BY 판매 량 ASC;
② SELECT 제품명, 판매 량 FROM 푸드 ORDER BY 판매 량 DESC
③ SELECT 제품명, 판매 량 FROM 푸드 WHERE 지점명=‘강남지점’ ORDER BY 판매량 ASC;
④ SELECT 제품명, 판매 량 FROM 푸드 WHERE 지점명=‘강남지점’ ORDER BY 판매량 DESC;
45. 데이터베이스의 인덱스와 관련한 설명으로 틀린 것은?
① 문헌의 색인, 사전과 같이 데이터를 쉽고 빠르게 찾을 수 있도록 만든 데이터 구조이다.
② 테이블에 붙여진 색인으로 데이터 검색 시 처리속도 향상에 도움이 된다.
③ 인덱스의 추가, 삭제 명령어는 각각 ADD, DELETE이다.
④ 대부분의 데이터베이스에서 테이블을 삭제하면 인덱스도 같이 삭제된다.
46. 물리적 데이터베이스 구조의 기본 데이터 단위인 저장 레코드의 양식을 설계할 때 고려 사항이 아닌 것은?
① 데이터 타입 ② 데이터 값의 분포
③ 트랜잭션 모델링 ④ 접근 빈도
47. SQL의 기능에 따른 분류 중에서 REVOKE문과 같이 데이터의 사용 권한을 관리하는데 사용하는 언어는?
① DDL(Data Definition Language)
② DML(Data Manipulation Language)
③ DCL(Data Control Language)
④ DUL(Data User Language)
48. 데이터 사전에 대한 설명으로 틀린 것은?
① 시스템 카탈로그 또는 시스템 데이터베이스라고도 한다.
② 데이터 사전 역시 데이터베이스의 일종이므로 일반 사용자가 생성, 유지 및 수정 할 수 있다.
③ 데이터베이스에 대한 데이터인 메타데이터(Metadata)를 저장하고 있다.
④ 데이터 사전에 있는 데이터에 실제로 접근하는 데 필요한 위치 정보는 데이터 디렉토리(Data Directory)라는 곳에서 관리한다.
49. 데이터베이스에서 릴레이션에 대한 설명으로 틀린 것은?
① 모든 튜플은 서로 다른 값을 가지고 있다.
② 하나의 릴레이션에서 튜플은 특정한 순서를 가진다.
③ 각 속성은 릴레이션 내에서 유일한 이름을 가진다.
④ 모든 속성 값은 원자값(atomic value)을 가진다.
50. 데이터베이스에서의 뷰(View)에 대한 설명으로 틀린 것은?
① 뷰는 다른 뷰를 기반으로 새로운 뷰를 만들 수 있다.
② 뷰는 일종의 가상 테이블이며, update에는 제약이 따른다.
③ 뷰는 기본 테이블을 만드는 것처럼 create view를 사용하여 만들 수 있다.
④ 뷰는 논리적으로 존재하는 기본 테이블과 다르게 물리적으로만 존재하며 카탈로그에 저장된다.
51. 트랜잭션의 상태 중 트랜잭션의 마지막 연산이 실행된 직후의 상태로, 모든 연산의 처리는 끝났지만 트랜잭션이 수행한 최종 결과를 데이터베이스에 반영하지 않은 상태는?
① Active
② Partially Committed
③ Committed
④ Aborted
52. SQL의 명령을 사용 용도에 따라 DDL, DM L, DCL로 구분할 경우, 그 성격이 나머지 셋과 다른 것은?
① SELECT ② UPDATE
③ INSERT ④ GRANT
53. 키의 종류 중 유일성 과 최소성을 만족하는 속성 또는 속성들의 집합은?
① Atomic key ② Super key
③ Candidate key ④ Test key
54. 데이터베이스에서 개념적 설계 단계에 대한 설명으로 틀린 것은?
① 산출물로 E-R Diagram을 만들 수 있다.
② DBM S에 독립적인 개념스키마를 설계한다.
③ 트랜잭션 인터페이스를 설계 및 작성한다.
④ 논리적 설계 단계의 앞 단계에서 수행된다.
55. 테이블의 기본키(Primary Key)로 지정된 속성에 관한 설명으로 가장 거리가 먼 것은?
① NOT NULL로 널 값을 가지 지 않는다.
② 릴레이션에서 튜플을 구별할 수 있다.
③ 외래키로 참조될 수 있다.
④ 검색할 때 반드시 필요하다.
56. 데이터 모델의 구성 요소 중 데이터 구조에 따라 개념 세계나 컴퓨터 세계에서 실제로 표현된 값들을 처리하는 작업을 의미하는 것은?
① Relation ② Data Structure
③ Constraint ④ Operation
57. 다음 [조건]에 부합하는 SQL문을 작성하고자 할 때, [SQL문]의 빈칸에 들어갈 내용으로 옳은 것은? (단, ‘팀코드’ 및 ‘이름’은 속성이며, ‘직원’은 테이블이다.)
[조건]
이름이 ‘정도일’인 팀원이 소속된 팀코드를 이용하여 해당 팀에 소속된 팀원들의 이름을 출력하는 SQL문 작성
[SQL 문]
SELECT 이름
FROM 직원
WHERE 팀코드=( );
① WHERE 이름=‘정도일’
② SELECT 팀코드 FROM 이름 WHERE 직원=‘정도일’
③ WHERE 직원=‘정도일’
④ SELECT 팀코드 FROM 직원 WHERE 이름=‘정도일’
58. 무결성 제약조건 중 개체 무결성 제약조건에 대한 설명으로 옳은 것은?
① 릴레이션 내의 튜플들이 각 속성의 도메인에 정해진 값만을 가져야 한다.
② 기본키는 NULL 값을 가져서는 안되며 릴레이션 내에 오직 하나의 값만 존재해야 한다.
③ 자식 릴레이션의 외래키는 부모 릴레이션의 기본키와 도메인이 동일해야 한다.
④ 자식 릴레이션의 값이 변경될 때 부모 릴레이션의 제약을 받는다.
59. 관계 데이터 모델에 서 릴레이션(Relation)에 포함되어 있는 튜플(Tuple)의 수를 무엇이라고 하는가?
① Degree
② Cardinality
③ Attribute
④ Cartesian product
60. 사용자 ‘PARK’에게 테이블을 생성할 수 있는 권한을 부여하기 위한 SQL문의 구성으로 빈칸에 적합한 내용은?
[SQL 문]
GRANT ( ) PARK;
① CREATE TABLE TO
② CREATE TO
③ CREATE FROM
④ CREATE TABLE FROM
<제4과목> 프로그래밍 언어 활용
61. C언어에서 문자열 처리 함수의 서식과 그 기능의 연결로 틀린 것은?
① strlen(s) - s의 길이를 구한다.
② strcpy(s1, s2) - s2를 s1으로 복사한다.
③ strcmp(s1, s2) - s1과 s2를 연결한다.
④ strrev(s)-s를 거꾸로 변환한다.
62. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는?
#include <stdio.h>
int main(int argc, char *argv[]) {
int a=5, b=3, c=12;
int t1, t2, t3;
t1=a && b;
t2=a || b;
t3=!c;
printf("%d, t1+t2+t3);
return 0;
}
① 0 ② 2
③ 5 ④ 14
63. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는?
#include <stdio.h>
struct st{
int a;
int c[10];
};
int main (int argc, char *argv[]) {
int i=0;
struct st ob1;
struct st ob2;
ob1.a=0;
ob2.a=0;
for(i=0; i<10; i++) {
ob1.c[i]=i;
ob2.c[i]=ob1.c[i]+i;
}
for(i=0; i<10; i=i+2) {
ob1.a=ob1.a+ob1.c[i];
ob2.a=ob2.a+ob2.c[i];
}
printf("%d", ob1.a ob2.a);
return 0;
}
① 30 ② 60
③ 80 ④ 120
64. IP 프로토콜에서 사용하는 필드와 해당 필드에 대한 설명으로 틀린 것은?
① Header Length는 IP 프로토콜의 헤더 길이를 32비트 워드 단위로 표시한다.
② Packet Length는 IP 헤더를 제외한 패킷 전체의 길이를 나타내며 최대 크기는 232-1비트이다.
③ Time To Live는 송신 호스트가 패킷을 전송하기 전 네트워크에서 생존할 수 있는 시간을 지정한 것이다.
④ Version Number는 IP 프로토콜의 버전번호를 나타낸다.
65. 다음 Python 프로그램의 실행 결과가 [실행결과]와 같을 때, 빈칸에 적합한 것은?
x=20
if x==10:
print('10')
( ) x==20:
print('20')
else:
print('other')
[실행결과]
20
① either ② elif
③ else if ④ else
66. RIP 라우팅 프로토콜에 대한 설명으로 틀린 것은?
① 경로 선택 메트릭은 홉 카운트(hop count)이다.
② 라우팅 프로토콜을 IGP와 EGP로 분류했을 때 EGP에 해당한다.
③ 최단 경로 탐색에 Bellman-Ford 알고리즘을 사용한다.
④ 각 라우터는 이웃 라우터들로부터 수신한 정보를 이용하여 라우팅 표를 갱신한다.
67. 다음에서 설명하는 프로세스 스케줄링은?
최소 작업 우선(SJF) 기법의 약점을 보완한 비선점 스케줄링 기법으로 다음과 같은 식을 이용해 우선순위를 판별한다.
① FIFO 스케줄링 ② RR 스케줄링
③ HRN 스케줄링 ④ MQ 스케줄링
68. UNIX 운영체제에 관한 특징으로 틀린 것은?
① 하나 이상의 작업에 대하여 백그라운드에서 수행이 가능하다.
② Multi-User는 지원하지만 Multi-Tasking은 지원하지 않는다.
③ 트리 구조의 파일 시스템을 갖는다.
④ 이식성이 높으며 장치 간의 호환성이 높다.
69. UDP 프로토콜의 특징이 아닌 것은?
① 비연결형 서비스를 제공한다.
② 단순한 헤더 구조로 오버헤드가 적다.
③ 주로 주소를 지정하고, 경로를 설정하는 기능을 한다.
④ TCP와 같이 트랜스포트 계층에 존재한다.
70. Python 데이터 타입 중 시퀀스(Sequence) 데이터 타입에 해당하며 다양한 데이터 타입들을 주어진 순서에 따라 저장할 수 있으나 저장된 내용을 변경할 수 없는 것은?
① 복소수(complex) 타입
② 리스트(list) 타입
③ 사전(diet) 타입
④ 튜플(tuple) 타입
71. 다음 JAVA 프로그램이 실행되었을 때, 실행결과는?
public class Rarr {
static int[] marr() {
int temp[]=new int[4];
for(int i=0; i<temp.length; i++)
temp[i]=i;
return temp;
}
public static void main(String[] args) {
int iarr[];
iarr=marr();
for(int i=0; i<iarr.length; i++)
System.out.print(iarr[i]+’’ ");
}
}
① 1 2 3 4 ② 0 1 2 3
③ 1 2 3 ④ 0 1 2
72. 다음 JAVA 프로그램이 실행되었을 때의 결과는?
public class ovr {
public static void main(String[] args) {
int a=1, b=2, c=3, d=4;
int mx, mn;
mx=a<b? b : a;
if(mx==1) {
mn=a>mx? b : a;
}
else {
mn=b<mx? d : c;
}
System.out.println(mn);
}
}
① 1 ② 2
③ 3 ④ 4
73. 다음 중 Myers가 구분한 응집도(Cohesion)의 정도에서 가장 낮은 응집도를 갖는 단계는?
① 순차적 응집도(Sequential Cohesion)
② 기능적 응집도(Functional Cohesion)
③ 시간적 응집도(Temporal Cohesion)
④ 우연적 응집도(Coincidental Cohesion)
74. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는?
#include <stdio.h>
int main(int arge, char *argv[]) {
int n1=1, n2=2, n3=3;
int r1, r2, r3;
r1=(n2<=2) || (n3>3);
r2=!n3;
r3=(n1>1) && (n2<3);
printf("%d", r3-r2+r1 );
return 0;
}
① 0 ② 1
③ 2 ④ 3
75. IP 프로토콜의 주요 특징에 해당하지 않는 것은?
① 체크섬(Checksum) 기능으로 데이터 체크섬(Data Checksum)만 제공한다.
② 패킷을 분할, 병합하는 기능을 수행하기도 한다.
③ 비연결형 서비스를 제공한다.
④ Best Effort 원칙에 따른 전송 기능을 제공한다.
76. 4개의 페이지를 수용할 수 있는 주기억장치가 있으며, 초기에는 모두 비어 있다고 가정한다. 다음의 순서로 페이지 참조가 발생할 때, LRU 페이지 교체 알고리즘을 사용할 경우 몇 번의 페이지 결함이 발생하는가?
페이지 참조 순서 1, 2, 3, 1, 2, 4, 1, 2, 5
① 5회 ② 6회
③ 7회 ④ 8회
77. 사용자 수준에서 지원되는 스레드(thread)가 커널에서 지원되는 스레드에 비해 가지는 장점으로 옳은 것은?
① 한 프로세스가 운영체제를 호출할 때 전체 프로세스가 대기할 필요가 없으므로 시스템 성능을 높일 수 있다.
② 동시에 여러 스레드가 커널에 접근할 수 있으므로 여러 스레드가 시스템 호출을 동시에 사용할 수 있다.
③ 각 스레드를 개별적으로 관리할 수 있으므로 스레드의 독립적인 스케줄링이 가능하다.
④ 커널 모드로의 전환 없이 스레드 교환이 가능하므로 오버헤드가 줄어든다.
78. 한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 참조하는 경우의 결합도는?
① 내용 결합도(Content Coupling)
② 제어 결합도(Control Coupling)
③ 공통 결합도(Common Coupling)
④ 스탬프 결합도(Stamp Coupling)
79. a[0]의 주소값이 10일 경우 다음 C언어 프로그램이 실행되었을 때의 결과는? (단, int 형의 크기는 4Byte로 가정한다.)
#include <stdio.h>
int main(int argc, char *argv[]) {
int a[]={14, 22, 30, 38};
printf("%u, ", &a[2]);
printf("%u", a);
return 0;
}
① 14, 10 ② 14, M
③ 18, 10 ④ 18, M
80. 모듈화(Modularity)와 관련한 설명으로 틀린 것은?
① 시스템을 모듈로 분할하면 각각의 모듈을 별개로 만들고 수정할 수 있기 때문에 좋은 구조가 된다.
② 응집도는 모듈과 모듈 사이의 상호의존 또는 연관 정도를 의미한다.
③ 모듈 간의 결합도가 약해야 독립적인 모듈이 될 수 있다.
④ 모듈 내 구성 요소들 간의 응집도가 강해야 좋은 모듈 설계이다.
<제5과목> 정보시스템 구축관리
81. 소프트웨어 개발에서 정보보안 3요소에 해당 하지 않는 설명은?
① 기밀성 : 인가된 사용자에 대해서만 자원 접근이 가능하다.
② 무결성 : 인가된 사용자에 대해서만 자원 수정이 가능하며 전송 중인 정보는 수정되지 않는다.
③ 가용성 : 인가된 사용자는 가지고 있는 권한 범위 내에서 언제든 자원 접근이 가능하다.
④ 휘발성 : 인가된 사용자가 수행한 데이터는 처리 완료 즉시 폐기 되어야 한다.
82. 어떤 외부 컴퓨터가 접속되면 접속 인가 여부를 점검해서 인가된 경우에는 접속이 허용되고, 그 반대의 경우에는 거부할 수 있는 접근제어 유틸리티는?
① tcp wrapper ② trace checker
③ token finder ④ change detector
83. 기기를 키오스크에 갖다 대면 원하는 데이터를 바로 가져올 수 있는 기술로 10㎝ 이내 근접 거리에서 기가급 속도로 데이터 전송이 가능한 초고속 근접무선통신(NFC : Near Field Communication) 기술은?
① BcN(Broadband Convergence Network)
② Zing
③ Marine Navi
④ C-V2X(Cellular Vehicle To Everything)
84. 취약점 관리를 위한 응용 프로그램의 보안 설정과 가장 거리가 먼 것은?
① 서버 관리실 출입 통제서버 관리실 출입 통제
② 실행 프로세스 권한 설정
③ 운영체제의 접근 제한
④ 운영체제의 정보 수집 제한
85. 소프트웨어 개발 프레임워크와 관련한 설명으로 가장 적절하지 않은 것은?
① 반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장 받을 수 있게 하는 개발 소프트웨어이다.
② 라이브러리와는 달리 사용자 코드에서 프레임워크를 호출해서 사용하고, 그에 대한 제어도 사용자 코드가 가지는 방식이다.
③ 설계 관점에 개발 방식을 패턴화시키기 위한 노력의 결과물인 소프트웨어 디자인 패턴을 반제품 소프트웨어 상태로 집적화시킨 것으로 볼 수 있다.
④ 프레임워크의 동작 원리를 그 제어 흐름의 일반적인 프로그램 흐름과 반대로 동작한다고 해서 IoC(Inversion of Control)이라고 설명하기도 한다.
86. 클라우드 기반 HSM(Cloud-based Hardware Security Module)에 대한 설명으로 틀린 것은?
① 클라우드(데이터센터) 기반 암호화 키 생성, 처리, 저장 등을 하는 보안 기기이다.
② 국내에서는 공인인증제의 폐지와 전자서명법 개정을 추진하면서 클라우드 HSM 용어가 자주 등장하였다.
③ 클라우드에 인증서를 저장하므로 기존 HSM 기기나 휴대폰에 인증서를 저장해 다닐 필요가 없다.
④ 하드웨어가 아닌 소프트웨어적으로만 구현되기 때문에 소프트웨어식 암호 기술에 내재된 보안 취약점을 해결할 수 없다는 것이 주요 단점이다.
87. 다음 내용이 설명하는 기술로 가장 적절한 것은?
- 다른 국을 향하는 호출이 중계에 의하지 않고 직접 접속되는 그물 모양의 네트워크이다.
- 통신량이 많은 비교적 소수의 국 사이에 구성될 경우 경제적이며 간편하지만, 다수의 국 사이에는 회선이 세분화 되어 비경제적일 수도 있다.
- 해당 형태의 무선 네트워크의 경우 대용량을 빠르고 안전하게 전달할 수 있어 행사장이나 군 등에서 많이 활용된다.
① Virtual Local Area Network
② Simple Station Network
③ Mesh Network
④ Modem Network
88. 물리적 위협으로 인한 문제에 해당하지 않는 것은?
① 화재, 홍수 등 천재지변으로 인한 위협
② 하드웨어 파손, 고장으로 인한 장애
③ 방화, 테러로 인한 하드웨어와 기록장치를 물리적으로 파괴하는 행위
④ 방화벽 설정의 잘못된 조작으로 인한 네트워크, 서버 보안 위협
89. 악성코드의 유형 중 다른 컴퓨터의 취약점을 이용하여 스스로 전파하거나 메일로 전파되며 스스로를 증식하는 것은?
① Worm ② Rogue Ware
③ Adware ④ Reflection Attack
90. 다음 설명에 해 당하는 공격기법은?
시스템 공격 기법 중 하나로 허용범위 이상의 ICMP 패킷을 전송하여 대상 시스템의 네트워크를 마비시킨다.
① Ping of Death ② Session Hijacking
③ Piggyback Attack ④ XSS
91. 다음 설명에 해당하는 소프트웨어는?
- 개발해야 할 애플리케이션의 일부분이 이미 내장된 클래스 라이브러리로 구현이 되어 있다.
- 따라서, 그 기반이 되는 이미 존재하는 부분을 확장 및 이용하는 것으로 볼 수 있다.
- JAVA 기반의 대표적인 소프트웨어로는 스프링(Spring)이 있다.
① 전역 함수 라이브러리
② 소프트웨어 개발 프레임워크
③ 컨테이너 아키텍처
④ 어휘 분석기
92. 소프트웨어 개발 방법론 중 애자일(Agile) 방법론의 특징과 가장 거리가 먼 것은?
① 각 단계의 결과가 완전히 확인된 후 다음 단계 진행
② 소프트웨어 개발에 참여하는 구성원들 간의 의사소통 중시
③ 환경 변화에 대한 즉시 대응
④ 프로젝트 상황에 따른 주기적 조정
93. 대칭 암호 알고리즘과 비대칭 암호 알고리즘에 대한 설명으로 틀린 것은?
① 대칭 암호 알고리즘은 비교적 실행 속도가 빠르기 때문에 다양한 암호의 핵심 함수로 사용될 수 있다.
② 대칭 암호 알고리즘은 비밀키 전달을 위한 키 교환이 필요하지 않아 암호화 및 복호화의 속도가 빠르다.
③ 비대칭 암호 알고리즘은 자신만이 보관하는 비밀키를 이용하여 인증, 전자서명 등에 적용이 가능하다.
④ 대표적인 대칭키 암호 알고리즘으로는 AES, IDEA 등이 있다.
94. 두 명 의 개발자가 5개월에 걸쳐 10000 라인의 코드를 개발하였을 때, 월별(man-month) 생산성 측정을 위한 계산 방식으로 가장 적합한 것은?
① 10000/2 ② 10000/(5×2)
③ 10000/5 ④ (2×10000)/5
95. 접근 통제 방법 중 조직 내에서 직무, 직책 등 개인의 역할에 따라 결정하여 부여하는 접근 정책은?
① RBAC ② DAC
③ MAC ④ QAC
96. COCOMO(Constructive Cost Model) 모형의 특징이 아닌 것은?
① 프로젝트를 완성하는데 필요한 man-month로 산정 결과를 나타낼 수 있다.
② 보헴(Boehm)이 제안한 것으로 원시코드 라인 수에 의한 비용 산정 기법이다.
③ 비교적 작은 규모의 프로젝트 기록을 통계 분석하여 얻은 결과를 반영한 모델이며 중소 규모 소프트웨어 프로젝트 비용 추정에 적합하다.
④ 프로젝트 개발유형에 따라 object, dynamic, function의 3가지 모드로 구분한다.
97. 각 사용자 인증의 유형에 대한 설명으로 가장 적절하지 않은 것은?
① 지식 : 주체는 ‘그가 알고 있는 것’을 보여주며 예시로는 패스워드, PIN 등이 있다.
② 소유 : 주체는 ‘그가 가지고 있는 것’을 보여주며 예시로는 토큰, 스마트카드 등이 있다.
③ 존재 : 주체는 ‘그를 대체하는 것’을 보여주며 예시로는 패턴, QR 등이 있다.
④ 행위 : 주체는 ‘그가 하는 것’을 보여주며 예시로는 서명, 움직임, 음성 등이 있다.
98. 시스템의 사용자가 로그인하여 명령을 내리는 과정에 대한 시스템의 동작 중 다음 설명에 해당하는 것은?
- 자신의 신원(Identity)을 시스템에 증명하는 과정이다.
- 아이디와 패스워드를 입력하는 과정이 가장 일반적인 예시라고 볼 수 있다.
① Aging ② Accounting
③ Authorization ④ Authentication
99. 다음에서 설명하는 IT 기술은?
- 네트워크를 제어부, 데이터 전달부로 분리하여 네트워크 관리자가 보다 효율적으로 네트워크를 제어, 관리할 수 있는 기술
- 기존의 라우터, 스위치 등과 같이 하드웨어에 의존하는 네트워크 체계에서 안정성, 속도, 보안 등을 소프트웨어로 제어, 관리하기 위해 개발됨
- 네트워크 장비의 펌웨어 업그레이드를 통해 사용자의 직접적인 데이터 전송 경로 관리가 가능하고, 기존 네트워크에는 영향을 주지 않으면서 특정 서비스의 전송 경로 수정을 통하여 인터넷상에서 발생하는 문제를 처리할 수 있음
① SDN(Software Defined Networking)
② NFS(Network File System)
③ Network Mapper
④ AOE Network
100. 프로젝트 일정 관리 시 사용하는 PERT 차트에 대한 설명에 해당하는 것은?
① 각 작업들이 언제 시작하고 언제 종료되는지에 대한 일정을 막대 도표를 이용하여 표시한다.
② 시간선(Time-line) 차트라고도 한다.
③ 수평 막대의 길이는 각 작업의 기간을 나타낸다.
④ 작업들 간의 상호 관련성, 결정경로, 경계시간, 자원할당 등을 제시한다.
| | | 첨부파일 | / 205KB |
|
|