정보처리기사 필기발행일 2024. 3. 2.원본 https://blog.naver.com/jword_/223371023207 ↗

2021 정보처리기사 필기 기출 오답노트

2021 정보처리기사 필기 기출 오답노트 — #정보처리기사 #개발자의도구들 #2021정보처리기사 #2021정보처리기사필기 #2021정보처리기사기출 #c언어비...

#정보처리기사 필기#Naver Blog

#정보처리기사 #개발자의도구들 #2021정보처리기사 #2021정보처리기사필기 #2021정보처리기사기출 #c언어비트연산자예제

​

24년도 1회차 정보처리기사 필기 시험대비 공부를 진행하였습니다.

\* 본글은 PC버전에 최적화 되어있습니다.

​

**\\ **공부방법론은 가장 첫글에 있습니다. 참고하실 분들은 참고하세요! \\ - 개발자의도구들

\\ 정보처리기사 전체 총 정리는 여기 있습니다!! \\

이미지

2021. 5월 기출문제

오답노트

2023부터 2021까지 기출 문제를 풀고 있는데, 개인적으로 가장 어려웠던 문제가 2021.5월 이었던 것 같습니다.

​

아직 공부가 덜되어서 그런지 생소한 용어가 많았네요 ㅠ.ㅠ

​

간당 간당하게 통과점수가 나와서... 시험 몇일 안남았지만, 더 촘촘히 공부해야겠다는 생각이 들었습니다.


Q. CASE의 원천 기술이 아닌 것은?

  1. 구조적 기법
  2. 프로토타이핑 기술
  3. 정보 저장소 기술
  4. 일괄처리 기술

​

​

​

정답: 4

​

CASE의 원천 기술: 구조적 기법, 프로토타이핑, 자동 프로그래밍, 정보 저장소, 분산처리

​

-> CASE는 요구 분석, 설계, 구현, 검사 맟 디버깅 과정까지 소프트웨어 도구로 자동화한 것을 말함

-> 그래픽 지원, 자료흐름도 작성 등도 가능함

​

암기법)

구조적으로 정보가 저장되어 있는 자료흐름도를 프로토 타이핑으로 분산해서 자동으로 만들어 준다.


Q. 요구 사항 개발 프로세스의 순서?

  1. 도출
  2. 분석
  3. 명세
  4. 확인

​

정답: 1 -> 2 -> 3 -> 4

​

​

-> 요구사항을 도출하고, 도출한 요구사항을 분석하고, 분석 완료되면 명세하고, 명세 끄탄면 점검(확인)한다.


Q. 소프트웨어 아키텍쳐 설계에서 시스템 품질 속성이 아닌 것은?

  1. 가용성(Availability)
  2. 독립성(Isolation)
  3. 변경용이성(Modifiability)
  4. 사용성(Usability)

​

​

정답: 2

​

​

소프트웨어 아키텍처의 시스템 품질 속성

아키텍쳐가 이해 관계자들의 요구하는 수준의 품질을 유지 및 보장할 수 있게 설계 되었는지 확인 하기 위한 평가 요소들을 품질 속성이라고 부른다.

​

시스템 = 하나의 큰 덩어리 개념

​

품질 속성을 측면에 따라 나눔

  • 시스템 측면: 성능, 보안, 가용성, 기능성, 사용성, 변경 용이성, 확장성
  • 비즈니스 : 시장 적시성, 비용과 혜택, 예상 시스템 수명(돈과 관련된거, 시장에서 팔리는가? 언제까지 팔릴까?)
  • 아키텍처: 개념적 무결성, 정확성, 완결성, 구축 가능성

​

-> 독립성은 전체적인 맥락에서 맞지 않는 속성

​

(공부하다 보면 진짜 말장난 하는 느낌이 드네요..)


Q. 다음 설명에 해당하는 시스템으로 옳은 것은?

시스템 인터페이스를 구성하는 시스템으로, 연계할 데이터를 데이터베이스와 애플리케이션으로부터 연계 테이블 또는 파일 형태로 생성하며 송신하는 시스템이다.
  1. 연계 서버
  2. 중계 서버
  3. 송신 시스템
  4. 수신 시스템

​

​

정답: 3

​

연계 메커니즘 구성요소

송신 시스템: 연계 프로그램으로 부터 생산된 데이터를 전송 형식에 맞게 변환 후 송신하는 시스템

​

수신 시스템: 수신한 인터페이스 테이블, 파일을 연계 프로그램에서 처리할 수 있는 형식으로 반영 후 연계 프로그램에 반영하는 시스템

​

연계 서버: 송-수신 시스템 사이에 위치하여 데이터의 송-수신 형황을 모니터링 하는 역할

​

-> 이건 문제에 답이 나와있습니다.. 그냥 연계 메커니즘이라는게 있어서 정리해봤습니다..(사실 문제 똑바로 안보고 틀렸죠?)


Q. EAI 구축 유형에서 애플리케이션 사이에 미들웨어를 두어 처리하는 것은?

  1. Message Bus
  2. Point-to-Point
  3. Hub & Spoke
  4. Hybrid

​

​

정답: 1, 3 ,4

​

​

이번 회차는 왜이렇게 복수 정답이 많은지 모르겠다... 시험풀다가 복수정답일 가능성도 고려하면서 풀면 될 듯하다.

​

​

EAI구축유형

point-to-point: 가장 기본적인 통합방식, 1:1로 연결, 변경 및 재사용이 어렵다

​

Hub & Spoke: 단일 접점 허브 시스템을 통해 데이터를 전송하는 중앙 집중 방식이다. 확장 및 유지 보수는 용이하나, 허브 장애시 전체 시스템에 영향을 줄 수 있다.

​

Message Bus(ESB): 미들웨어를 두어 처리하는 방식으로, 확장성이 뛰어나고 대용량 처리가 가능하다.

​

Hybrid: hub & spoke와 message bus를 혼합한 방식으로, 그룹내에서는 전자를, 그룹간에는 후자를 사용한다.

​

​


Q. 병렬 데이터베이스 환경 중 수평 분할에서 활용되는 분할 기법이 아닌 것은?

  1. 라운드 - 로빈
  2. 범위 분할
  3. 예측 분할
  4. 해시 분할

​

​

정답: 3

​

​

파티셔닝

종류: 범위, 해시, 조합, 목록, 라운드 로빈

​

범위분할: 지정한 열 값의 기준으로 범위를 지정하여 분할한다.

​

해시분할: 해시 함수를 적용한 값의 결과에 따라 데이터를 분할한다.

  • 고객번호, 주민번호 같이 데이터가 고른 칼럼에 적용 하기에 좋다.

​

조합 분할: 범위 분할로 분할한 다음 해시 함수를 적용하여 다시 분할하는 방식

  • 범위 분할한 파티션이 너무커 관리하기 어려울 때 사용하면 좋다

​

목록분할: 지정한 열 값에 대한 목록을 만들어 이를 기준으로 분할한다.

라운드 로빈 분할 : 레코드를 균일하게 분할하는 방식, 각 레코드가 순차적으로 분배, 기본키가 필요 없다.


Q. 다음 C언어 프로그램이 실행되었을 때의 결과는?

int main(--생략--){ int a = 4; int b = 7; int c = a | b; print("%d", c);}

​

정답: 7(%d)

​

​

여기서 |는 비트연산을 의미합니다. 보통 | 는 or로 사용되는데 비트연산에서도 마찬가지 입니다. 다만, 비트내에서 연산해야한다는 것을 잊지 마세요!

​

​

4 = 0100

7 = 0111


​


Q. 다음 JAVA 프로그램이 실행되었을 때의 결과는?

public static void main(String\[\] args){ int x = 5, y = 0, z = 0; y = x++; z = --x; system.out.print(x + ", " + y + ", " + z);}

​

​

정답: 5, 5, 5

​

​

후치와 전치 연산자

y = x++; -> y에 x값을 먼저 대입, 이후 x의 값을 1 증가 (y가 아니다)

z = --x; -> z에 x의 값에 -1한 값을 계산 후 x를 대입


Q. C언어에서 연산자 우선순위가 높은 것에서 낮은 것으로 바르게 나열한 것은?

a. ()

b. ==

c. <

d. <<

e. ||

g. /

​

​

​

정답: a, g, d, c, b, e

​

C언어 연산자 우선순위

: 괄호

: 단항, 산술, 시프트, 관계, 비트, 논리, 조건, 대입, 순서

​

단산시 관비논조 대순

​

단산시 앞 관청에는 비가내려 논이 조금 커졌습니다 . 순식간에

​

​

\* 관계연산자 내부순서 : <, <=, >=, >, ==, !=

​

\* 비트연산자: &(and), ^(xor), |(or)

​

a. () ==> 괄호 무조건 1순위

b. == -> 관계

c. < -> 관계

d. << -> 비트

e. || -> 논리

g. / -> 산술

​

​


Q. 리눅스 bash 쉘(Shell)에서 export와 관련한 설명으로 틀린 것은?

  1. 변수를 출력하고자 할 때는 export를 사용해야 한다.
  2. export가 매개변수 없이 쓰일 경우 현재 설정된 환경변수들이 출력된다.
  3. 사용자가 생성하는 변수는 export 명령어로 표시하지 않는 한 현재 쉘에 국한된다.
  4. 변수를 export 시키면 전역(Global)변수처럼 되어 끝까지 기억된다.

​

​

​

정답: 1

​

UNIX / LINUX의 주요 환경 변수

  • 환경 변수를 명령어나 스크립트에서 사용하려면 변수명 앞에 $를 입력해야한다.
  • UNIX나 LINUX에서는 set, env, printenv, setenv 중 하나를 입력하면 모든 환경 변수 값을 표시한다.
  • 기존 환경 변수의 값을 변경하거나 새로운 환경 변수를 추가하고자 할때 export 명령어를 사용한다.

​

환경변수 용도

$DISPLAY: 현재 X 윈도 디스플레이 위치

$HOME: 사용자의 홈 디렉터리

$LANG: 프로그램 사용시 기본적으로 지원되는 언어

$MAL: 메일을 보관하는 경로

$PATH: 실행 파일을 찾는 경로

$PS1: 쉘 프롬프트 정보

$PWD: 현재 작업하는 디렉터리

$TERM: 로간 터미널 타입

$USER: 사용자 이름