정보처리기사/필기 기출문제 풀이

2021년 3월

2021년 3월 정보처리기사 기출문제 풀이 후 작성한 오답노트입니다.

요약


과목과 목 명문항수맞힌수점수판정
1과목소프트웨어 설계20개16개80점통과
2과목소프트웨어 개발20개19개95점통과
3과목데이터베이스 구축20개15개75점통과
4과목프로그래밍 언어 활용20개12개60점통과
5과목정보시스템 구축관리20개17개85점통과
총 문항수총 맞힌 수총점판정
100개79개79점합격
  • 2021년 5월 기출고사 오답노트를 작성하지 않았는데, 아래와 같은 이유로 작성을 중단
    • 오답 개수가 너무 많아 오답노트 작성 시간이 많이 소요
    • 오답노트를 통해 확실한 복습이 이루어지지 않았고, 이는 같은 유형의 오답이 빈번하게 나오는 것을 통해 증명
  • 오답노트의 효율이 떨어진다고 판단하여 작성을 중단하고, 빠른 핵심 개념 리딩을 진행하기로 결정
  • 운이 좋았던 부분도 있었지만, 확실히 기존에 약한 과목이었던 4과목, 5과목의 점수가 많이 상승했다.
    • 특히, 얕고 넓은 개념 숙지가 필요한 5과목의 점수가 대폭 상승
  • 문제를 풀면서도 느꼈지만, 간단한 개념 학습 이후의 오답노트는 복습에 도움이 될 것 같다고 판단하여 확실한 정리에 의의를 두고 다시 작성하기로 결정
  • 더불어 개념 학습 이전의 시험 풀이도 도움이 되었다.
    • 시험을 풀면서 몰랐던 부분을 '이게 이런 개념이었구나' 하면서 더 각인되는 부분도 있었던 것 같음

2과목


7. 객체지향 분석 방법론

객체지향 분석 방법론 중 Coad-Yourdon 방법에 해당하는 것은?

  1. E-R 다이어그램을 사용하여 객체의 행위를 데이터 모델링하는데 초점을 둔 방법이다. → Coad-Yourdon
  2. 객체, 동적, 기능 모델로 나누어 수행하는 방법이다. → 럼바우(Rumbaugh) 분석 기법
  3. 미시적 개발 프로세스와 거시적 개발 프로세스를 모두 사용하는 방법이다. → 부치(Booch)
  4. Use-Case를 강조하여 사용하는 방법이다. → 제이콥슨(Jacobson)
방법론특징
Rumbaugh(럼바우)객체, 동적, 기능(객동기) 모델로 나누어 수행하는 방법
Coad-YourdonE-R 다이어그램을 사용하여 객체의 행위를 데이터 모델링하는데 초점을 둔 방법
Booch(부치)미시적 개발 프로세스거시적 개발 프로세스를 모두 사용하는 방법
Jacobson(제이콥슨)Use-Case를 사용하여 분석하는 방법
Wirfs-Brock분석과 설계 간 구분이 없으며, 고객 명세서를 평가하여 설계 작업까지 연속적으로 수행

럼바우의 객동기 모델링

럼바우 분석 기법의 객체, 동적, 기능 일명 객동기 모델링은 아래와 같은 특징을 갖는다.

  • 객체 모델링: 정보 모델링이라고도 하며, 객체들 간 관계를 객체 다이어그램으로 표현
  • 동적 모델링: 객체들 간 동적인 행위를 상태 다이어그램을 통해 표현
  • 기능 모델링: 자료 흐름을 자료 흐름도를 통해 표현

11. CASE

CASE(Computer Aided Software Engineering)에 대한 설명으로 틀린 것은?

  1. 소프트웨어 모듈의 재사용성이 향상된다.
  2. 자동화된 기법을 통해 소프트웨어 품질이 향상된다.
  3. 소프트웨어 사용자들에게 사용 방법을 신속히 숙지시키기 위해 사용된다.
  4. 소프트웨어 유지보수를 간편하게 수행할 수 있다.

CASE(Computer Aided Software Engineering)

소프트웨어 개발 과정 전체 또는 일부를 컴퓨터와 전용 소프트웨어 도구를 통해 자동화하는 것이다.

  • 원천 기술: 구조적 기법, 프로토타이핑, 자동 프로그래밍, 정보 저장소, 분산처리
  • 주요 기능: 소프트웨어 생명주기 전 단계 연결, 다양한 소프트웨어 개발 모형 지원, 모델들의 검사 및 오류 검증, 그래픽 지원, 자료 흐름도 작성

13. 유스케이스

기본 유스케이스 수행 시 특별한 조건을 만족할 때 수행하는 유스케이스는?

  1. 연관
  2. 확장
  3. 선택
  4. 특화
관계설명
연관use case와 actor의 관계
확장기본 use case 수행 시 특정한 조건을 만족할 때 선택적으로 수행되는 use case
포함use case가 다른 use case의 일부분을 포함하는 관계. 재사용성을 높이기 위해 사용
일반화하위 use case/actor가 상위 use case/actor의 기능/역할을 상속받음
그룹화여러 개의 use case를 단순화하는 방법

14. 요구사항 분석

다음 중 요구사항 모델링에 활용되지 않는 것은?

단계 다이어그램은 일반적으로 물리 화학에서 사용되는 다이어그램이며, 요구사항 모델링과 관계 없다.

  1. 애자일(Agile) 방법
  2. 유스케이스 다이어그램(Use Case Diagram)
  3. 시퀀스 다이어그램(Sequence Diagram)
  4. 단계 다이어그램(Phase Diagram)

2과목


22. 선택 정렬

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

초기 상태: 8, 3, 4, 9, 7
방식회전별 정렬 방식
버블 정렬n 번째 인덱스 요소와 n+1 번째 인덱스 요소를 배열_길이 - 비교_회차 만큼 비교하는 것을 배열_길이 - 1 만큼 반복
삽입 정렬인덱스 순서대로 해당 인덱스 이하 요소들과 비교하여 해당 인덱스 요소보다 큰 경우 제일 앞에 삽입하는 것을 반복. 2번째 요소부터 시작
선택 정렬인덱스 순서대로 해당 인덱스 이상 요소들과 비교하여 교체하는 것을 반복.

3과목


42. 데이터베이스 스키마

다음에서 설명하는 스키마(Schema)는?

데이터베이스 전체를 정의한 것으로 데이터개체, 관계, 제약조건, 접근권한, 무결성 규칙 등을 명세한 것

  • 외부 스키마
    • 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
  • 개념 스키마
    • 데이터베이스의 전체적인 논리적 구조개체 간 관계, 제약 조건, 접근 권한, 보안 및 무결성 규칙에 대한 명세를 정의한 것
  • 내부 스키마
    • 물리적 저장장치 입장에서 본 데이터베이스 구조, 실제로 저장될 데이터베이스 레코드 형식, 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 정의

43. 데이터베이스 설계

데이터베이스 설계 단계 중 저장 레코드 양식설계, 레코드 집중의 분석 및 설계, 접근 경로 설계와 관계되는 것은?

  1. 논리적 설계
  2. 요구 조건 분석
  3. 개념적 설계
  4. 물리적 설계
  • 개념적 설계(정보 모델링, 개념화)
    • 현실세계에 대한 인식을 추상적 개념으로 표현하는 과정
    • 개념 스키마 모델링트랜잭션 모델링을 병행 수행
  • 논리적 설계(데이터 모델링)
    • 자료를 특정 DBMS가 지원하는 논리적 구조로 변환하는 과정
    • 트랜잭션 인터페이스 설계개념 스키마 평가 및 정제
  • 물리적 설계
    • 논리적 구조로 표현된 데이터를 물리적 구조의 데이터로 변환
    • 파일 저장 구조 및 액세스 경로를 설정하고 레코드 집중의 분석 설계를 진행

44. 카디널리티와 차수

다음 릴레이션의 카디널리티와 차수가 옳게 나타낸 것은?

문제 예시 → 5 X 6의 표 이미지 (헤더 포함)

카디널리티튜플의 수 즉, 행의 개수를 의미하며 차수속성의 수 즉, 행의 개수를 의미한다.


53. 이상

정규화를 거치지 않아 발생하게 되는 이상(anomaly) 현상의 종류에 대한 설명으로 옳지 않은 것은?

종속 이상은 존재하지 않는 이상이다.
  1. 삭제 이상이란 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 삭제 현상이다.
  2. 삽입 이상이란 릴레이션에서 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들도 함께 삽입되는 현상이다.
  3. 갱신 이상이란 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상이다.
  4. 종속 이상이란 하나의 릴레이션에 하나 이상의 함수적 종속성이 존재하는 현상이다.

54. 릴레이션

관계 데이터 모델에서 릴레이션(relation)에 관한 설명으로 옳은 것은?

릴레이션테이블에 해당하며 각 튜플, 각 속성이라고 정의한다. 또한, 릴레이션의 논리적인 구조를 정의한 것은 릴레이션 스키마이다.

  1. 릴레이션의 각 행을 스키마(schema)라 하며, 예로 도서 릴레이션을 구성하는 스키마에서는 도서번호, 도서명, 저자, 가격 등이 있다.
  2. 릴레이션의 각 열을 튜플(tuple)이라 하며, 하나의 튜플은 각 속성에서 정의된 값을 이용하여 구성된다.
  3. 도메인(domain)은 하나의 속성이 가질 수 있는 같은 타입의 모든 값의 집합으로 각 속성의 도메인은 원자값을 갖는다.
  4. 속성(attribute)은 한 개의 릴레이션의 논리적인 구조를 정의한 것으로 릴레이션의 이름과 릴레이션에 포함된 속성들의 집합을 의미한다.

4과목


61. 응집도

다음 중 응집도가 가장 높은 것은?

응집도 수준 비교

능적 < 차적 > 환적 > 차적 > 간적 > 리적 > 연적 (우논시절교순기)


62. OSI 7계층

OSI 7계층에서 물리적 연결을 이용해 신뢰성 있는 정보를 전송하려고 동기화, 오류제어, 흐름제어 등의 전송에러를 제어하는 계층은?

  1. 데이터 링크 계층 → 네트워크 기기 간 데이터 전송 및 오류 제어
  2. 물리 계층 → 데이터를 전기적 신호로 변환
  3. 응용 계층 → 응용 소프트웨어 지원
  4. 표현 계층 → 데이터 형식 변환, 암호화, 압축

63. 운영체제

운영체제를 기능에 따라 분류할 경우 제어 프로그램이 아닌 것은?

제어 프로그램

시스템 작동 감시, 순서 지정, 데이터 관리 등의 역할을 수행하는 프로그램으로 아래와 같은 유형이 존재한다.

  • 감시 프로그램(Supervisor): 프로그램과 시스템 작동 상태를 감시 감독
  • 작업 제어 프로그램(Job Control): 작업 연속 처리를 위한 스케쥴 및 시스템 자원 할당
  • 데이터 관리 프로그램(Data Management): 주기억장치와 보조기억장치 사이의 데이터 전송, 파일과 데이터를 처리 유지 보수하는 기능 수행
  1. 데이터 관리 프로그램
  2. 서비스 프로그램 → 처리 프로그램에 해당
  3. 작업 제어 프로그램
  4. 감시 프로그램

66. 교착상태

교착상태가 발생할 수 있는 조건이 아닌 것은?

선형 대기가 아니라 환형 대기(Circular wait)
  1. Mutual exclusion → 상호 배제
  2. Hold and wait → 점유와 대기
  3. Non-preemption → 비선점
  4. Linear wait

68. TCP/IP 프로토콜

TCP/IP 프로토콜에서 TCP가 해당하는 계층은?

TCP/IP 프로토콜에서 TCP는 전송 계층(3 Layer), IP는 **인터넷 계층(2 Layer)**에 해당한다.


69. C언어

C언어에서 변수로 사용할 수 없는 것은?

short시스템 예약어에 해당한다.
  1. data02
  2. int01
  3. _sub
  4. short

70. JAVA

다음 JAVA 코드 출력문의 결과는?

...
System.out.printIn("5 + 2 = ", + 3 + 4);
System.out.printIn("5 + 2 = ", + (3 + 4));
...

문자열 뒤 연산 대상인 숫자형 데이터는 형변환이 이루어진다.


74. 가상기억장치 구현 기법

다음 설명의 ㉠과 ㉡에 들어갈 내용으로 옳은 것은?

가상기억장치의 일반적인 구현 방법에는 프로그램을 고정된 크기의 일정한 블록으로 나누는 ( ㉠ ) 기법과 가변적인 크기의 블록으로 나누는 ( ㉡ ) 기법이 있다.

가상기억장치 구현 기법

  • 페이징(Paging): 프로그램과 주기억장치의 영역을 동일한 크기로 나누는 기법
  • 세그먼테이션(Segmantation): 프로그램을 다양한 크기로 나누는 기법

5과목


81. 암호화 알고리즘

다음 암호 알고리즘 중 성격이 다른 하나는?

  1. MD4 → 해시 암호화 알고리즘
  2. MD5 → 해시 암호화 알고리즘
  3. SHA-1 → 해시 암호화 알고리즘
  4. AES → 대칭키 암호화 알고리즘

85. 접근통제 정책

정보 보안을 위한 접근통제 정책 종류에 해당하지 않는 것은?

  1. 임의적 접근 통제 → DAC(Discretionary Access Control)
  2. 데이터 전환 접근 통제
  3. 강제적 접근 통제 → MAC(Mandatory Access Control)
  4. 역할 기반 접근 통제 → RBAC(Role-Based Access Control)

95. 세션 하이재킹

세션 하이재킹을 탐지하는 방법으로 거리가 먼 것은?

  1. FTP SYN SEGNENT 탐지
  2. 비동기화 상태 탐지 → 서버와 시퀀스 넘버를 주기적으로 탐지
  3. ACK STORM 탐지 → 급격한 ACK 비율 증가 탐지
  4. 패킷의 유실 및 재전송 증가 탐지 → 공격자가 중간에 끼어서 작동하므로 패킷 유실 및 서비스 응답 지연 발생

Last updated on