본문 바로가기

정보처리기사/실기기출

[정처기실기] 2021년 1회

 

https://chobopark.tistory.com/191

 

[2021년 1회] 정보처리기사 실기 기출문제!!

안녕하세요. 2021년 1회 정보처리기사 실기 기출문제를 정리해보았습니다. 기출문제이면서 보완설명을 덧붙여 정리하였으니 도움이 되었으면 좋겠습니다. (녹색은 답 / 파랑색은 해설입니다.) 정

chobopark.tistory.com

 

 

 


 

( * 프로토콜, ARP, RARP * )

1. 물리 네트워크(MAC) 주소에 해당하는 IP 주소를 알려주는 프로토콜로 역순 주소 결정 프로토콜을 무엇이라고 하는지 쓰시오.  (물리주소 (MAC Address)를 IP주소로 변화하는 프로토콜)

 

 

더보기

 

RARP (Reverse Address Resolution Protocol)


 

    IP주소            ==  ARP  ==>     MAC Address

MAC Address    ==  RARP  ==>         IP주소


 

* 네트워크 계층 

 

IP, ICMP, ARP, RARP,

라우팅 프로토콜

 > 내부 라우팅 프로토콜 (RIP, OSPF)

 > 외부 라우팅 프로토콜 (BGP)

 

 

 

 

 

( * 데이터베이스 설계, 개논물 * )

2. 다음은 DB 설계 절차에 관한 설명이다. 다음 빈칸에 들어갈 알맞은 용어를 쓰시오.

 

 

 - (   1.   )은/는 특정 DBMS의 특성 및 성능을 고려하여 데이터베이스 저장 구조로 변환하는 과정으로 결과로 나오는 명세서는 테이블 정의서 등이 있다.

(실제 저장장치에 어떻게 저장할지 설계하는 단계)

 

  - (   2.   )은/는 현실 세계에 대한 인식을 추상적, 개념적으로 표현하여 개념적 구조를 도출하는 과정으로 주요 산출물에는 E-R 다이어그램이 있다.

  (현실 세계에 있는 그대로 사람이 이해할 수 있는 형태의 정보구조로 만들어가는 과정을 의미하기 때문에 정보 모델이라고 한다.)

 

 - (    3.   )은/는 목표 DBMS에 맞는 스키마 설계, 트랜잭션 인터페이스를 설계하는 정규화 과정을 수행한다.

(추출된 엔티티와 속성들의 관계를 구조적으로 정의하는 단계로 2에서 만들어진 구조를 컴퓨터가 이해하고 처리할 수 있도록 변환하는 과정)

 

 

더보기

 

1. 물리적 설계

2. 개념적 설계

3. 논리적 설계 

 

 

 

 

 

( * 기능적 / 비기능적 요구사항 * )

3. 다음은 요구사항의 분류에 대한 설명이다. 괄호 (   ) 안에 들어갈 요구사항의 유형에 대해서 쓰시오.

 

 

- (   1.   ) 요구사항은 시스템이 제공하는 기능, 서비스에 대한 요구사항이다.

 

- (   2.   ) 요구사항은 시스템이 수행하는 기능 이외의 사항, 시스템 구축에 대한 제약사항에 관한 요구사항이다.

 

 

더보기

 

1. 기능적

2. 비기능적


 

* 기능적 요구사항 (Functional requirements)

제품을 구현하기 위해 소프트웨어가 가져야할 기능적 속성.

 

* 비기능적 요구사항 (Non-functional requirements)

제품 품질 기준 등의 만족을 위해 소프트웨어가 가져야 할 특성.

 

 

 

 

 

 

(2020_2회) ( * SOAP, WSDL * )

4. 웹 서비스명, 제공 위치, 메세지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구성된 언어를 무엇이라고 하는지 쓰시오. 

 

더보기

 

WSDL (Web Services Description Language)


SOAP 프로토콜을 이용할 때

여러가지 정보들이 기술된 XML 형식의 언어가 WSDL

이게 저장된 곳이 UDDI (Universal Description, Discovery, and Integration)

 

 

 

 

 

( * 파이썬 * )

5. 다음은 파이썬 코드이다. 출력 결과를 쓰시오.

 

class good :
	li = ["seoul", "kyeonggi","inchon","daejeon","daegu","pusan"]

g = good()
str01 = ''
for i in g.li:
	str01 = str01 + i[0]
    
print(str01)

 

 

더보기

 

skiddp

 

 

 

 

 

 

6. 다음 SQL 실행 결과를 숫자만 쓰시오.

 

EMPNO SAL
100 1000
200 3000
300 1500

 

SELECT COUNT(*) FROM 급여

WHERE EMPNO > 100 AND SAL >= 3000 OR EMPNO = 200;

 

더보기

 

1

 

 

 

 

 

 

7. 다음 Java 프로그램 결과를 쓰시오.

 

public class good{
	public static void main(String[] args){
    	int[][]arr = new int[][]{{45,50,75},{89}};
        System.out.println(arr[0].length);
        System.out.println(arr[1].length);
        System.out.println(arr[0][0]);
        System.out.println(arr[0][1]);
        System.out.println(arr[1][0]);

 

 

더보기

 

3

1

45

50

89

 

 

 

 

 

( * 정규화, 반정규화 * )

8. 정규화된 엔티티, 속성, 관계에 대해 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링의 기법을 무엇이라고 하는지 쓰시오.

 

( 시스템의 성능 향상, 개발 과정의 편의성 등을 위해 정규화된 데이터 모델을 분할, 통합, 추가하는 과정으로, 의도적으로 정규화에 위배되는 행위 )

 

더보기

 

비정규화 / 반정규화 / 역정규화

 

 

 

 

 

 

(2020_3회, 4회) ( * 애플리케이션 테스트, 블랙박스 * )

9. 다음은 블랙박스 기법에 대한 예제이다. 블랙박스 기법 두 가지를 쓰시오.

 

예)

 

1. 0 <= x <= 10이면 -1 0 10 11 검사

 

2. 입력 데이터의 영역을 유사한 도메인별로 유횻값 / 무횻값을 그룹핑하여 나누어서 검사

 

 

더보기

 

1. 경계값 분석

2. 동등분할 테스트 


 

 * 블랙박스 테스트 (Black Box Test) _ 동작상태 (입출력값)

 

  - 동등 분할 기법 (Equivalence Partitioning Testing)

  - 경계값 분석 (Boundary Value Analysis)

  - 원인-효과 그래프 검사 (Cause-Effect Graphing Testing)

  - 오류 예측 검사 (Error Guessing)

  - 비교 검사 (Comparison Testing)

 

 

* 화이트박스 테스트 (White Box Test) _ 소스코드

 - 기초 경로 검사

 - 제어 구조 검사 (조건검사, 루프검사, 데이터흐름 검사)

 

 

 

 

 

( * 애플리케이션 테스트 * )

10. 다음은 테스트 종류에 대한 설명이다. 빈칸에 들어갈 알맞은 용어를 보기에서 찾아 기호로 쓰시오.

 

- (   1.   ) 은/는 개별 모듈, 서브루틴이 정상적으로 실행되는지 확인

 (개발자가 원시 코드를 대상으로 다른 부분과 연계되는 부분은 고려하지 않고, 각각의 단위 자체에만 집중하여 테스트)

 

- (   2.   ) 은/는 인터페이스 간 시스템이 정상적으로 실행되는지 확인

 

 

[보기] : 시스템 테스트 / 인수 테스트 / 알파 테스트 / 단위 테스트 / 통합 테스트 / 회귀 테스트

 

더보기

 

1. 단위테스트

2. 통합 테스트


 

* V-모델 * (개발 단계에 따른 애플리케이션 테스트)

 

요구사항 (Requirements)                                                인수 테스트 (Acceptance Test)  _알파/베타 테스트

                  분석 (Specification)                             시스템 테스트 (System Test)  _ 기능/비기능 요구사항

                         설계 (Design)                        통합테스트 (Integration Test) _ 상향식/하향식/빅뱅/백본 테스트 

                                    구현 (Code)       단위테스트 (Unti Test) _ 정적/동적 테스트

 

 

 

 

 

 

 

(2020_4회)

11. 다음은 빈칸에 들어갈 알맞은 용어를 쓰시오.

 

- IPv6는 (   1.   )  비트 길이를 가진다.

 

- IPv4는 길이 32bit이며, (   2.  ) 비트씩 네 부분으로 나눈다.

 

 

더보기

 

1. 128

2. 8


 

IPv6 => 유니캐스트, 멀티캐스트, 애니캐스트

IPv4 => 유니캐스트, 멀티캐스트, 브로드캐스트

 

 

 

 

 

 

12. 공유메모리, 소켓, 세마포어, 메세지 큐, 파이 등 프로세스 간 통신하는 기술을 무엇이라고 하는지 쓰시오.

 

 

더보기

 

IPC (Inter Process Communication)

 

 

 

 

 

 

(2020_4회) ( * EAI * )

13. 시스템 통합에 사용되는 솔루션으로 구축 유형에는 Point to Point, Hub & Spoke, Message Bus가 있다. 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계 , 통합이 가능하도록 해주는 솔루션을 무엇이라고 하는지 쓰시오.

 

 

더보기

 

EAI (Enterprise Application integration)

 


 

* EAI 구축유형

 - Point-to-Point

 - Hub & Spoke

 - Message Bus (ESB 방식)

 - Hybrid _  Hub & Spoke + Message Bus

 

 

 

 

 

 

 

14. 주어진 테이블의 Cardinality / Degree를 구하시오.

 

학번 이름 학년 학과
20202020 김제원 3 무역과
20202021 김한국 1 통신과
20202022 허달력 4 영어과
20202023 이소파 2 영어과
20202024 장가위 3 중국어과

 

 

더보기

 

Cardinality  : 5  

Degree : 4

 

 

 

 

 

 

15. 다음은 C언어 프로그램이다. 실행 결과를 쓰시오.

 

#include <stdio.h>

struct good {
	char name[10];
    int age;
 };
 
 void main(){
 	struct good s[] = {"Kim",28,"Lee",38,"Seo",50,"Park",35};
    
    struct good *p;
    p = s;
    p++;
    printf("%s\n", p-> name);
    printf("%d\n", p-> age);

 

 

더보기

 

Lee 38


 

s[] = {"Kim",28,"Lee",38,"Seo",50,"Park",35};

  a          100         200         300        400

 

100  Kim   28   P

200  Lee   38

300  Seo   50

400  Park  35

 

 

 

 

 

 

16. 데이터 모델 구성요소 3가지를 쓰시오.

 

- 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 기본 도구이다.

 

- 개체 데이터 모델에서는 (  1.  ) 을/를 이용하여 실제 데이터를 처리하는 작업에 대한 명세를 나타내는데 논리 데이터 모델에서는 (  2.  ) 을/를 어떻게 나타낼 것인지 표현한다.

 

- (  3.  ) 은/는 데이터 무결성 유지를 위한 db의 보편적 방법으로 릴레이션의 특정 칼럼에 설정하는 제약을 의미하며, 개체무결성과 참조 무결성 등이 있다. 

 

 

더보기

 

1. 연산

2. 구조

3. 제약조건


 

* 연산 : 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로 데이터베이스를 조작하는 도구.

* 구조 : 논리적으로 표현된 개체 타입들 간의 관계로서 데이터 구조 및 정적 성질을 표현.

* 제약조건 : 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건.

 

 

 

 

 

 

17. 다음은 Java 프로그램이다. 실행 결과를 쓰시오.

 

public class good {
	public static void main(String[] args){
    int i, j;
    for(j=0, i=0; i<=5; i++){
    j+=i;
    System.out.print(i);
    if(i==5){
    System.out.print("=");
    System.out.print(j);
   }else{
   	System.out.print("+");
	}
   }
  }
 }

 

 

더보기

 

0 + 1 + 2 + 3 + 4 + 5 = 15

 

 

 

 

 

( * 접근제어 * )

18. 시스템 객체의 접근을 개인 또는 그룹의 식별자에 기반을 둔 방법, 어떤 종류의 접근 권한을 가진 사용자가 다른 사용자에 자신의 판단에 따라 권한을 허용하는 접근제어 방식은 ?

 

 

더보기

 

DAC (Discretionary Access Control) 

임의적 접근 통제 


 

* 접근제어

 - 강제 접근통제 (MAC, Mandatory Access Control) : 사용자의 등급에 따라 접근 권한 부여

 - 임의 접근통제 (DAC, Discretionary Access Control) : 데이터 소유자가 접근통제 권한을 지정

 - 역할기반 접근통제 (RBAC, Role Based Access Control) : 사용자의 역할에 따라 접근 권한 부여

 

 

 

 

 

( * 결합도 * )

19. 다음은 결합도에 대한 설명이다. 빈칸에 들어갈 알맞은 용어를 보기에서 찾아 기호로 쓰시오.

 

 

- (  1.  ) 은/는 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도

 

- (  2.  ) 은/는 모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도

 

- (  3.  ) 은/는 파라미터가 아닌 모듈 밖에 선언된 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용하는 경우의 결합도

 

 

[보기] : 자료 결합도 / 스탬프 결합도 / 제어 결합도 / 공통 결합도 / 내용 결합도 / 외부 결합도

 

 

더보기

 

1. 내용 결합도

2. 스탬프 결합도

3. 공통 결합도 


 

모듈의 독립성을 위해 응집도는 높고 결합도는 낮아야 한다.

                                                          모듈과 모듈 사이의 (연관)관계


* 결합도 (Coupling) (약 -> 강) *

 

데이터(자료) 결합도 (Data Coupling)

스탬프 결합도 (Stamp Coupling)

제어 결합도 (Control Coupling)

외부 결합도 (External Coupling)

공통(공유) 결합도 (Common Coupling) : 여러 모듈이 공통 자료 영역을 사용하는 경우 (전역변수)

내용 결합도 (Content Coupling) : 한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 조회하도록 설계되었을 경우


 

* 응집도 (Cohesion)  (약 -> 강) *

 

우연적 응집도 (Coincidental Cohesion)

논리적 응집도 (Logical Cohesion)

시간적 응집도 (Temporal Cohesion)

절차적 응집도 (Procedural Cohesion) : 모듈의 기능들이 순차적으로 실행. 

통신(교환)적 응집도 (Communication Cohesion) : 동일한 입력, 출력 사용. 

순차적 응집도 (Sequential) : 모듈 내 하나의 활동으로부터 나온 출력 데이터를 다음 활동의 입력 데이터로 사용. 

기능적 응집도 (Functional Cohesion)

 

 

 

 

 

( * 공격 * )

20. 괄호 안에 공통으로 들어갈 공격 기법을 적으시오.

 

 

- (      ) 은/는 '세션을 가로채다' 라는 의미로 정상적 연결을 RST 패킷을 통해 종료시킨 후 재연결 시 희생자가 아닌 공격자에게 연결한다.

 

- (      ) 은/는 세션 관리 취약점을 이용한 공격 기법이다.

 

 

더보기

 

세션 하이재킹


 

*세션 하이재킹

 

 - 시스템 간 연결이 활성화된 상태, 즉 로그인(Login) 된 상태를 가로채는 것을 뜻한다.

 

 - TCP의 고유한 취약점을 이용해 정상적인 접속을 빼앗는 방법이다. 서버와 클라이언트 통신 시 TCP의 시퀀스 넘버를 제어하는 데 발생하는 문제를 공격한다. TCP는 클라이언트와 서버 간 통신을 할 때 패킷의 연속성을 보장하기 위해 각각 시퀀스 넘버를 사용한다. 이 시퀀스 넘버가 잘못되면 이를 바로잡기 위한 작업을 하는데, 세션 하이재킹은 서버와 클라이언트에 각각 잘못된 시퀀스 넘버를 위조해서 연결된 세션에 잠시 혼란을 준 뒤 자신이 끼어들어 가는 방식이다.


 

* 서비스 공격 유형의 종류

 - DDoS (Distributed Denial of Service, 분산 서비스 거부) _ Dos는 내가 공격, DDoS는 쫄병시켜서 공격

 - 피싱 (Phishing) _ 이메일, 메시지, 웹사이트로 속여 정보 수집.

 - 파밍 (Pharming) _ DNS를 조작하여 악성사이트로 유도(리디렉션)

 - 스니핑 (Sniffing)

 - 스미싱 (Smishing) _ 문자메시지(SNS)로 속여 정보 수집.

 - 큐싱 (Qshing)  _ 가짜 웹사이트로 유도하여 개인정보 수집.

 - 랜섬웨어 (Ransomware) _ 사용자 컴퓨터에 잠입해 내부문서/파일을 암호화

 - 키 로거 (Key Logger) _ 키보드 움직임을 탐지

 - SQL 삽입 (SQL Injection)  

 - XSS (Cross Site Scripting) _ 악의적인 스크립트를 웹페이지에 삽입

 

 

'정보처리기사 > 실기기출' 카테고리의 다른 글

[정처기실기] 2021년 3회  (0) 2024.03.11
[정처기실기] 2021년 2회  (0) 2024.02.22
[정처기실기] 2020년 2회  (0) 2024.02.08
[정처기실기] 2020년 4회  (0) 2024.02.03
[정처기실기] 2020년 3회  (0) 2024.01.29