믿고 공부해주세요!!💪
(+ 시험지 보내주신 "스택"님 감사합니다😘)
<정보처리기사 4회 필기시험>
1. 소프트웨어 설계
[2020년 정보처리기사 4회 필기시험]
1. XP(eXtreme Programming)의 기본원리로 볼 수 없는 것은?
① Linear Sequential Method
② Pair Programming
③ Collective Ownership
④ Continuous Integration
XP의 기본원리 Whole Team(전체 팀) Small Releases(소규모 릴리즈) Test-Driven Development(테스트 주도 개발) Continuous Integration(계속적인 통합) Collective Ownership(공동 소유권) Pair Programming(짝 프로그래밍) Design Improvement(디자인 개선) 또는Refactoring(리팩토링) |
#전소테 계공짝디 |
[2020년 정보처리기사 4회 필기시험]
2. 럼바우(Rumbaugh) 객체지향 분석 기법에서 동적 모델링에 활용되는 다이어그램은?
① 객체 다이어그램(Object Diagram)
② 패키지 다이어그램(Package Diagram)
③ 상태 다이어그램(State Diagram)
④ 자료 흐름도(Data Flow Diagram)
럼바우의 객체 지향 분석 / 객체 모델링 기법(OMT) - 객체 모델링: 객체 다이어그램 - 동적 모델링: 상태도 (상태 다이어그램) - 기능 모델링: 자료 흐름도 |
#객동기 |
[2020년 정보처리기사 4회 필기시험]
3. CASE(Computer Aided Software Engineering)의 주요 기능으로 옳지 않은 것은?
① S/W 라이프 사이클 전 단계의 연결
② 그래픽 지원
③ 다양한 소프트웨어 개발 모형 지원
④ 언어 번역
CASE(Computer-Aided Software Engineering) 도구의 분류 - 상위 CASE: 계획수립, 요구분석, 기본설계 단계를 다이어그램으로 표현 # 모순 검사, 오류 검증, 자료흐름도 작성 지원 - 중위 CASE # 상세 설계 작업, 화면 출력 작성 지원 - 하위 CASE # 시스템 명세서, 소스 코드 생성 지원 |
- 소프트웨어 개발 과정의 일부 또는 전체를 자동화하기 위한 도구 |
주요기능: S/W 라이프 사이클 전 단계의 연결, 그래픽 지원, 다양한 소프트웨어 개발 모형 지원 |
[2020년 정보처리기사 4회 필기시험]
13. 다음 중 자료사전(Data Dictionary)에서 선택의 의미를 나타내는 것은?
① [ ]
② { }
③ +
④ =
기호 |
의미 |
= |
자료의 정의: ~로 구성되어 있다(is composed of) |
+ |
자료의 연결: 그리고(and) |
( ) |
자료의 생략: 생략 가능한 자료(Optional) |
[ | ] |
자료의 선택: 또는(or) |
{ } |
자료의 반복: 자료 반복(Iteration of) |
* * |
자료의 설명: 주석(Comment) |
[2020년 정보처리기사 4회 필기시험]
17. 애자일 방법론에 해당하지 않는 것은?
① 기능중심 개발
② 스크럼
③ 익스트림 프로그래밍
④ 모듈중심 개발
애자일 모형(Agile Model) - 애자일은 민첩함, 기민함 의미 - 변화에 유연하게 대응 - 일정한 주기(Iteration, Sprint)를 반복하면서 개발과정 진행 - 절차와 도구보다 고객(개인)과의 소통에 초점을 맞춤 |
ex) XP(eXtreme Programming), 스크럼(Scrum), 칸반(Kanban), 크리스탈(Crystal), 린(LEAN) #엑스칸크린 + 기능중심 개발 |
[2020년 정보처리기사 4회 필기시험]
19. Gof(Gangs of Four) 디자인 패턴 분류에 해당하지 않는 것은?
① 생성 패턴
② 구조 패턴
③ 행위 패턴
④ 추상 패턴
디자인 패턴 - 아키텍처 패턴이 디자인 패턴보다 상위 수준의 설계에 사용됨 - 서브시스템에 속하는 컴포넌트들과 그 관계를 설계하기 위한 참조 모델 cf) 아키텍처 패턴은 전체 시스템의 구조를 설계하기 위한 참조 모델 - 생성 패턴, 구조 패턴, 행위 패턴 |
#생구행 |
2. 소프트웨어 개발
[2020년 정보처리기사 4회 필기시험]
23. 소스코드 품질분석 도구 중 정적분석 도구가 아닌 것은?
① pmd
② checkstyle
③ valance
④ cppcheck
소스 코드 품질분석 도구의 종류 - 정적 분석 도구: pmd, cppcheck, checkstyle, SonarQube, ccm, cobertuna - 동적 분석 도구: Avalanche, Valgrind |
[2020년 정보처리기사 4회 필기시험]
31. 다음 설명에 해당하는 것은?
" 물리적 저장 장치의 입장에서 본 데이터베이스 구조로서 실제로 데이터베이스에 저장될 레코드의 형식을 정의하고 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타낸다."
① 외부 스키마
② 내부 스키마
③ 개념 스키마
④ 슈퍼 스키마
스키마(Schema) - 외부 스키마(External Schema) 사용자의 관점에서 보여주는 데이터베이스 구조로 전체 데이터베이스의 일부이므로 서브 스키마로고도 함 - 내부 스키마(Internal Schema) 저장장치의 입장에서 데이터베이스 전체가 저장되는 방법을 명세한 것으로 단 하나만 존재함 - 개념 스키마(Conceptual Schema) 전체 사용자 또는 모든 응용 시스템이 필요한 데이터베이스 구조로 조직 전체의 데이터베이스로 단 하나만 존재함 |
[2020년 정보처리기사 4회 필기시험]
35. 빌드 자동화 도구에 대한 설명으로 틀린 것은?
① Gradle은 실행할 처리 명령들을 모아 태스크로 만든 후 태스크 단위로 실행한다.
② 빌드 자동화 도구는 지속적인 통합개발환경에서 유용하게 활용된다.
③ 빌드 자동화 도구에는 Ant, Gradle, Jenkins등이 있다.
④ Jenkins는 Groovy기반으로 한 오픈소스로 안드로이드 앱 개발 환경에서 사용된다.
빌드 자동화 도구 - 소스 코드를 소프트웨어로 변환하는 과정에 필요한 전처리(Preprocessing), 컴파일(Complie) 등의 작업들을 수행하는 소프트웨어 |
Ant(Another Neat Tool) -아파치 소프트웨어 재단에서 개발한 소프트웨어 -자바 프로젝트의 공식적인 빌드 자동화 도구 -XML 기반의 빌드 스크립트를 사용 -정해진 규칙이나 표준이 없어 개발자가 모든 것을 정의 -스크립트의 재사용이 어려움 |
Maven -아파치 소프트웨어 재단에서 Ant의 대안으로 개발 -규칙이나 표준이 존재해 예외 사항만 기록됨 -컴파일과 빌드를 동시에 수행할 수 있음 -의존성(Dependency)을 설정하여 라이브러리를 관리 |
Gradle -기존의 Ant와 Maven을 보완해 개발된 빌드 자동화 도구 -안드로이드 스튜디오(안드로이드 앱 개발)의 공식 빌드 도구 -Maven과 동일하게 의존성(Dependency) 활용 -그루비(Groovy) 기반의 빌드 스크립트 사용 -플러그인을 설정하면, JAVA, C/C++, Python 등의 언어도 빌드 가능 -실행할 처리 명령들을 모아 태스크(Task)로 만든 후 태스크 단위로 실행 -이전에 사용했던 태스크를 재사용하거나 다른 시스템의 태스크를 공유할 수 있는 빌드 캐시 기능 지원 → 빌드의 속도 향상 |
Jenkins JAVA 기반의 오픈 소스 형태로 가장 많이 사용되는 빌드 자동화 도구 서블릿 컨테이너에서 실행되는 서버 기반 도구 SVN, Git 등 대부분의 형상 관리 도구와 연동 가능 친숙한 Web GUI 제공 여러 대의 컴퓨터를 이용한 분산 빌드나 테스트 가능 |
[2020년 정보처리기사 4회 필기시험]
38. 해싱함수 중 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식은?
① 제산법
② 폴딩법
③ 기수변환법
④ 숫자분석법
종류 |
특징 |
폴딩법 |
레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식 |
제산법 |
레코드키로 해시표의 크기보다 큰 수 중에서 가장 작은소수로 나눈 나머지를 홈 주소로 삼는 방식 |
기수변환법 |
키 숫자의 진수를 다른 진수로 변환시켜 주소 크기를 초과한 높은 자릿수를 절단하고, 이를 다시 주소 범위에 맞게 조정하는 방법 |
숫자분석법 (계수분석법) |
키 값을 이루는 숫자의 분포를 분석하여 비교적 고른 자리를 필요한 만큼 택해서 홈 주소로 삼는 방식 |
3. 데이터베이스 구축
[2020년 정보처리기사 4회 필기시험]
48. 릴레이션에 있는 모든 튜플에 대해 유일성은 만족시키지만 최소성은 만족시키지 못하는 키는?
① 후보키
② 기본키
③ 슈퍼키
④ 외래키
1) 후보키(Candidate Key) - 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합, 즉 기본키로 사용할 수 있는 속성들, 모든 릴레이션에는 반드시 하나 이상의 후보키가 존재 - 릴레이션에 있는 모든 튜플에 대해 유일성과 최소성을 만족시켜야 함 유일성(Unique): 하나의 키 값으로 하나의 튜플만을 유일하게 식별할 수 있어야 함 최소성(Minimality): 모든 레코드들을 유일하게 식별하는 데 꼭 필요한 속성으로만 구성되어야 함
2) 기본키(Primary Key) - 후보키 중에서 특별히 선정된 주키(Main Key)로, 중복된 값과 NULL값을 가질 수 없음 - 후보키의 성질인 유일성과 최소성을 가지며 튜플을 식별하기 위해 반드시 필요한 키
3) 대체키(Alternate Key) - 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키를 의미
4) 슈퍼키(Super Key) - 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키 - 모든 튜플에 대해 유일성은 만족시키지만, 최소성은 만족시키지 못함
5) 외래키(Foreign Key) - 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합 - 참조되는 릴레이션의 기본키와 대응돼 릴레이션 간의 참조 관계를 표현 |
[2020년 정보처리기사 4회 필기시험]
55. 데이터 모델에 표시해야 할 요소로 거리가 먼 것은?
① 논리적 데이터 구조
② 출력 구조
③ 연산
④ 제약조건
데이터 모델에 표시할 요소 - 구조(Structure): 논리적인 개체 타입들 간의 관계, 데이터 구조 및 정적 성질을 표현 - 연산(Operation): 실제 데이터를 처리하는 작업에 대한 명세로, 조작하는 기본 도구 - 제약 조건(Constraint): DB에 저장될 수 있는 실제 데이터의 논리적인 제약 조건 |
#구연제 |
4. 프로그래밍 언어 활용
[2020년 정보처리기사 4회 필기시험]
63. Java에서 사용되는 출력 함수가 아닌 것은?
① System.out.print()
② System.out.printIn()
③ System.out.printing()
④ System.out.printf()
명령어 |
설명 |
system.out.print() |
기본 출력 (줄바꿈 X → \n 써서 줄바꿈 가능) |
system.out.printIn() |
출력 시 자동으로 줄바꿈 |
system.out.printf() |
연산도 출력할 수 있음 (가장 다양한 표현 가능) |
[2020년 정보처리기사 4회 필기시험]
68. 다음 파이썬으로 구현된 프로그램의 실행 결과로 옳은 것은?
① [20, 60]
② [60, 20]
③ [0, 20, 40, 60]
④ [10, 30, 50, 70]
Python - 리스트 슬라이싱 ① a[2::4] ② a[6::-4] ③ a[:7:2] ④ a[1:8:2] *정리: a[시작인덱스:종료인덱스:step] |
[2020년 정보처리기사 4회 필기시험]
79. C언어에서 구조체를 사용하여 데이터를 처리할 때 사용하는 것은?
① for
② Scanf
③ Struct
④ abstract
종류 |
설명 |
열거체 |
서로 연관된 정수형 상수들의 집합으로, 정수형 상수에 이름을 붙여 코드를 이해하기 쉽게 하고, enum으로 선언해 사용하는 사용자 정의 자료형 |
구조체 |
각 변수가 다른 메모리에 할당되어 있고 C, C++에서 struct로 선언하여 사용자가 기본 타입을 가지고 새롭게 정의할 수 있는 사용자 정의 자료형 |
공용체 |
모든 멤버 변수가 하나의 메모리 공간을 공유하며 C, C++에서 union으로 선언하여 사용하는 사용자 정의 자료형 |
[2020년 정보처리기사 4회 필기시험]
80. PHP에서 사용 가능한 연산자가 아닌 것은?
① @
② #
③ <>
④ ===
종류 |
설명 |
@ |
함수 사용시 발생되는 오류메시지를 표시하지 않음 |
<> |
값이 서로 같지 않을 때 (!=) |
= |
값을 지정할 때 사용 |
== |
두 값이 같은지 확인하기 |
=== |
두 값이 같고, 형식도 같은지 확인하기 (좀 더 깐깐) |
:: |
new 지시자로 class를 미리 객체화 시켜놓지 않고, 사용하는 시점에서 객체가 생성되고 지정된 method가 실행되도록 하는 접근자 |
5. 정보시스템 구축 관리
[2020년 정보처리기사 4회 필기시험]
82. CMM(Capability Maturity Model) 모델의 레벨로 옳지 않은 것은?
① 최적단계
② 관리단계
③ 계획단계
④ 정의단계
단계 |
프로세스 |
특징 |
초기(Initial) |
정의된 프로세스 없음 |
작업자 능력에 따라 성공 여부 결정 |
관리(Managed) |
규칙화된 프로세스 |
특정한 프로젝트 내의 프로세스 정의 및 수행 |
정의(Defined) |
표준화된 프로세스 |
조직의 표준 프로세스를 활용하여 업무 수행 |
정량적 관리 (Quantitatively Managed) |
예측 가능한 프로세스 |
프로젝트를 정량적으로 관리 및 통제 |
최적화(Optimizing) |
지속적 개선 프로세스 |
프로세스 역량 향상을 위해 지속적인 프로세스 개선 |
#초관정량최 |
[2020년 정보처리기사 4회 필기시험]
87. SoftTech사에서 개발된 것으로 구조적 요구분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구는?
① SREM
② PSL/PSA
③ HIPO
④ SADT
종류 |
설명 |
SREM |
TRW사가 우주 국방 시스템 그룹에 의해 실시간 처리 소프트웨어 시스템에서 요구사항을 명확히 기술하도록 할 목적으로 개발한 것으로, RSL과 REVS를 사용하는 자동화 도구 |
PSL/PSA |
미시간 대학에서 개발한 것으로 PSL과 PSA를 사용하는 자동화 도구 |
HIPO |
시스템의 분석 및 설계나 문서화할 때 사용되는 기법으로 시스템 실행 과정의 입력, 처리, 출력의 기능을 나타내고, 종류로는 가시적 도표, 총체적 도표, 세부적 도표가 있음 |
SADT |
SoftTech사에서 개발된 것으로 구조적 요구분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구 |
TAGS |
시스템 공학 방법 응용에 대한 자동 접근 방법으로, 개발 주기의 전 과정에 이용할 수 있는 통합 자동화 도구 |
[2020년 정보처리기사 4회 필기시험]
95. CBD(Component Based Development)에 대한 설명으로 틀린 것은?
① 개발 기간 단축으로 인한 생산성 향상
② 새로운 기능 추가가 쉬운 확장성
③ 소프트웨어 재사용이 가능
④ 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법
컴포넌트 기반(CBD; Component Based Design) 방법론 - 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조합하여 하나의 새로운 애플리케이션을 만드는 방법론 - 컴포넌트 및 소프트웨어의 재사용이 가능하여 시간과 노력을 절감할 수 있음 - 새로운 기능 추가가 쉬운 확장성 - 개발 기간 단축으로 인한 생산성 향상 |
[2020년 정보처리기사 4회 필기시험]
97. 컴퓨터 운영체제의 커널에 보안 기능을 추가한 것으로 운영체제의 보안상 결함으로 인하여 발생 가능한 각종 해킹으로부터 시스템을 보호하기 위하여 사용되는 것은?
① GPIB
② Cent OS
③ XSS
④ Secure OS
종류 |
설명 |
Secure OS |
기존의 운영체제(OS)에 내재된 보안 취약점을 해소하기 위해 보안 기능을 갖춘 커널을 이식하여 외부의 침입으로부터 시스템 자원을 보호하는 운영체제 |
Cent OS |
레드햇 엔터프라이즈 리눅스와 완전하게 호환되는 무료 기업용 리눅스 운영체제 |
GPIB |
컴퓨터와 주변기기를 연결하기 위한 외부 버스의 일종으로, 비동기 병렬 전송방식을 갖고있음 |
XSS |
사용자가 특정 게시물이나 이메일의 링크를 클릭하면 악성 스크립트가 실행되어 페이지가 깨지거나, 사용자의 컴퓨터에 있는 로그인 정보나 개인정보, 내부 자료 등이 해커에게 전달되는 해킹 기법 |
[2020년 정보처리기사 4회 필기시험]
98. NS(Nassi-Schneiderman) chart에 대한 설명으로 거리가 먼 것은?
① 논리의 기술에 중점을 둔 도형식 표현 방법이다.
② 연속, 선택 및 다중 선택, 반복 등의 제어논리 구조로 표현한다.
③ 주로 화살표를 사용하여 논리적인 제어구조로 흐름을 표현한다.
④ 조건이 복합되어 있는 곳의 처리를 시각적으로 명확히 식별하는데 적합하다.
NS(Nassi-Schneiderman) chart |
● 논리의 기술에 중점을 둔 도형식 표현 방법 ● 전문성이 있어야 그리기 쉬움 (그리기 어려움) ● 연속, 선택 및 다중 선택, 반복 등의 제어논리 구조로 표현함 ● 임의의 제어 이동이 어려움 → goto구조가 어려움 ● 그래픽 설계 도구임 ● 상자 도표라고도 함 ● 프로그램으로 구현이 쉬움 ● 조건이 복합되어 있는 곳의 처리를 시각적으로 명확히 식별하는데 적합함 |
[2020년 정보처리기사 4회 필기시험]
99. 다음 내용에 적합한 용어는?
- 대용량 데이터를 분산처리하기 위한 목적으로 개발된 프로그램이 모델이다.
- Google에 의해 고안된 기술로써 대표적인 대용량 데이터 처리를 위한 병렬처리 기법을 제공한다.
- 임의의 순서로 정렬된 데이터를 분산 처리하고 이를 다시 합치는 과정을 거친다.
① Map Reduce
② SQL
③ Hijacking
④ Logs
Map Reduce (맵리듀스) |
흩어져 있는 데이터를 연관성 있는 데이터 분류로 묶는 Mapping(매핑, 연결)작업을 수행한 후 중복 데이터를 제거하고 원하는 데이터를 추출하는 Reduce 작업을 수행하는 것 |
이것으로 길고 길었던 정보처리기사
4회 필기시험 오답을 마쳐보도록 하겠습니다👏
실기시험으로 연계되서 나올만한 문제들을 오답했으니
필기시험 합격하고 실기시험 준비하시는 분들은
봤던 시험이어도 한번씩 더 확인해보면 좋을 것 같습니다.
틀린 부분이나 질문사항
그리고 추가로 알면 좋을 것 같은 내용은
댓글 남겨주셔서 같이 공부하면 좋을 것 같습니다🥰
작지만 소중한 공감과 댓글은
블로그를 운영하는데 큰 힘이 됩니다!!😘😘
그럼 다들 좋은 결과 있으시도록 응원하겠습니다!!🤗
직접 구글링하면서 저작권에 위배되지 않게끔 정리한 정보처리기사 실기 자료집입니다.
(출처: 위키백과, IT위키, MDN, 해시넷, 기출문제)
'정보처리기사 > 필기자료' 카테고리의 다른 글
2021년 정보처리기사 1회 필기시험 기출문제 오답 (0) | 2021.03.07 |
---|---|
2024 정보처리기사 필기 총정리 (시나공, 수제비) (3) | 2020.09.29 |
정보처리기사 필기, 2020년 3회 필기 기출문제 오답 (4) | 2020.08.25 |
정보처리기사 필기, 2020년 1·2회 필기 기출문제 오답 (0) | 2020.06.09 |
정보처리기사 필기, 비전공자 합격 & 필기 공부방법 (Feat. 수제비, 시나공, 기출문제) (22) | 2020.06.08 |
댓글