정보처리기사

[문제 & 풀이] 정보처리기사 실기 족보_5

김꼬알 2023. 4. 22. 22:47

1. 애자일 방법론 중 하나인 스크럼 기법에서 사용되는 스프린트 회고(Sprint Retrospective)란 무엇인지 서술하시오.

▷ 스프린트가 끝난 시점이나 일정 주기별로 스프린트 주기를 되돌아보며 정해놓은 규칙 준수 여부, 개선점 등을 확인하고 기록하는 과정

 

 

2. 다음은 급여 테이블이다. 팀과 직급별 성과급 합계를 구하는 쿼리를 쓰시오.

[급여]

이름 직급 팀명 성과급
jhon 팀장 인사팀 5,000
mike 팀장 회계팀 6,000
bill 직원 인사팀 4,000
steve 직원 인사팀 3,000

▷ SELECT 팀명, 직급, SUM(성과급) AS 성과급,

FROM 급여,

GROUP BY 팀명, 직급;

 

 

3. 다음은 자바 코드이다. 출력 결과를 쓰시오.

class SuperClass{
    SuperClass(){
        System.out.print("Super");
    }
}
class SubClass extends SuperClass{
    SubClass(){
        System.out.print("Sub");
    }
}
class Sujebi{
    public static void main(String[] args){
        SuperClass s = new SubClass();
    }
}

▷ SuperSub

main 함수에서 SuperClass의 객체 s를 SubClass 생성자 메소드를 이용하여 생성한다.

생성자는 new 연산자를 이용하여 호출한다.

자식 클래스의 생성자가 호출이 되기 전에 부모 클래스의 생성자가 호출이 된다.

 

 

4. 얼마 전 포털사이트 네이버가 대규모 DDoS 공격을 받았다. 이처럼 국내 기업을 대상으로 Dos 및 DDoS 공격이 심화되고 있다. 아래는 DoS 및 DDoS 공격과 관련된 공격 도구와 공격 기법에 대한 설명이다. 괄호 안에 들어갈 용어를 쓰시오.

  • DDoS 공격자들은 trinoo와 거의 유사한 분산 도구로 많은 소스에서 하나 혹은 여러 개의 목표 시스템에 대해 서비스 거부 공격을 수행할 수 있는 도구인 (    1    ) 을/를 이용하여 간편하게 DDoS 공격을 시도하고 있고,
  • 이러한 공격도구를 이용해 출발지 주소를 공격 대상 서버의 IP로 설정하여 네트워크 전체에게 ICMP Echo 패킷을 직접 브로드캐스팅(Directed Broadcasting)하여 마비시키는 (    2    ) 공격을 기업들에게 시도하고 있다.

▷ 1: Tribe Flood Network(TFN) / 2: Smurfing

 

 

5. 블랙박스 테스트 기법 중 페어와이즈 테스트(Pairwise testing)에 대해서 서술하시오.

▷ 테스트 데이터 값들 간에 최소한 한 번씩을 조합하는 방식이며, 이는 커버해야 할 기능적 범위를 모든 조합에 비해 상대적으로 적은 양의 테스트 세트를 구성하기 위한 테스트 기법이다. 

 

 

6. 편의점 테이블의 컬럼은 편의점 코드, 광역시, 판매액으로 되어 있다. 아래 조건을 만족하는 SQL 구문을 작성할 수 있도록 괄호 안에 들어갈 올바른 SQL 구문을 쓰시오.

 

[조건]

  • 편의점이 네 군데 이상 있는 광역시에 대해 각 광역시별 판매액이 1,000,000을 넘는 편의점들의 평균 판매액을 구하는 SQL 구문

[SQL 구문]

SELECT 광역시, AVG(판매액)
FROM 편의점 WHERE (    1    )
GROUP BY (   2   )
HAVING COUNT(*) >= (   3   )

▷ 1: 판매액 > 1,000,000 / 2: 광역시 / 3: 4

광역시 그룹으로 기준을 지정하고, 그룹으로 지정한 '광역시'에서 편의점의 수가 네 군데 이상인 광역시 만을 표시한다.

 

 

7. XSS에 대해서 약술하시오.

▷ 검증되지 않은 외부 입력 데이터가 포함된 웹페이지가 전송되는 경우, 사용자가 해당 웹페이지를 열람함으로써 웹페이지에 포함된 부적절한 스크립트가 실행되는 공격이다.

 

 

8. 아래는 트랜잭션의 특성에 대한 설명이다. 괄호 안에 들어갈 특성을 쓰시오.

원자성(Atomicity) 연산 전체가 성공 또는 실패(All or Nothing)
일관성(Consistency) 트랜잭션이 실행 성공 후 항상 일관된 데이터베이스 상태를 보존해야 하는 특성
(   1   ) 트랜잭션 실행 중 생성하는 연산의 중간 결과를 다른 트랜잭션이 접근 불가한 특성
(   2   ) 성공이 완료된 트랜잭션의 결과는 계속적으로 데이터베이스에 저장하는 특성

▷ 1: 독립성(Isolation) / 2: 지속성(Durability)

 

 

9. 다음은 C 언어 소스코드이다. 출력 결과를 쓰시오.

#include <stdio.h>

void main(){
    int i = 0;
    int sum = 0;
    for(i = 1; i <= 10; i++){
        if(i%3 == 0){
            sum += i;
        }
    }
    printf("%d", sum);
}

i = 1 2 3 4 5 6 7 8 9

sum = 0 3 9 18

▷ 18

 

 

10. 다음 주어진 조건과 결과 테이블을 참고하여 SQL 구문을 작성하시오.

 

[조건]

  • 성적 테이블에서 학점을 출력한다.
  • 학점의 중복은 제거한다.
  • 세미콜론은 생략 가능하다.

 

[성적] 테이블

학번 과목 학점
1000 C언어 A
1001 자바 A
1002 자바 A
1003 파이썬 B

[결과] 테이블

학점
A
B

▷ SELECT DISTINCT 학점 FROM 성적;

 

 

11. 여러 개의 하드 디스크로 디스크 배열을 구성하고 있는 데이터 블록들을 서로 다른 디스크들에 분산 저장하는 기술을 무엇이라고 하는가?

▷ RAID(Redundant Array of Independent Disks, 복수 배열 독립 디스크)

RAID는 여러 개의 하드 디스크에 일부 중복된 데이터를 나눠서 저장하는 기술이고 디스크 어레이라고도 한다.

데이터를 나누는 다양한 방법이 존재하며, 이 방법들을 레벨이라 하는데, 레벨에 따라 저장 장치의 신뢰성을 높이거나 전체적인 성능을 향상시키는 등의 다양한 목적을 만족시킬 수 있다.

 

 

12. 다음은 DoS 공격의 종류 중 무엇에 대한 설명인지 쓰시오.

  • ICMP 패킷(Ping)을 정상적인 크기보다 아주 크게 만들어 전송하면 다수의 IP 단편화가 발생하고, 수신 측에서는 단편화된 패킷을 처리(재조합)하는 과정에서 많은 부하가 발생하거나, 재조합 버퍼의 오버플로우가 발생하여 정상적인 서비스를 하지 못하도록 하는 공격 기법

▷ Ping of Death

 

 

13. 아래는 시스템이 어떤 기능을 수행하는지를 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서대로 표현하는 다이어그램인 활동 다이어그램(Activity Diagram)의 구성요소에 대한 설명이다. 괄호 안에 들어갈 올바른 구성요소를 쓰시오.

  • (   1   ) - 평행적으로 수행되는 흐름을 나누는 노드로 굵은 가로선으로 표현하고 들어오는 액티비티 흐름은 한 개이고, 나가는 액티비티 흐름은 여러 개가 있다.
  • (   2   ) - 조건에 따른 제어 흐름의 분리를 표현하는 구성요소로 마름모로 표현하고 들어오는 제어 흐름은 한 개이고, 나가는 제어 흐름은 여러 개로 표현한다.
  • 구획면(Swim Lane) - 액티비티 수행을 담당하는 주체를 구분하는 면으로 가로 또는 세로 실선을 그어 구분한다.

▷ 1: 포크 노드 / 2: 조건(판단) 노드

 

 

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

lol = [[1,2,3],[4,5,6],[7,8,9]]
for sub in lol:
    for item in sub:
        print(item, end="")

▷ 123456789

2중 for문이 수행되면서 lol은 sub 단위로 반복되고 sub는 item 단위로 반복이 된다.

print 함수는 item을 출력하며 end="" 옵션을 지정하면 개행없이 결과값을 출력한다.

 

 

15. 다음은 C언어 코드이다. 출력 결과를 쓰시오.

#include <stdio.h>
void main(){
    int num = 0;
    int i, j;
    for(i = 1; i <= 3; i++){
        for(j = 1; j <= 5; j++){
            num = i*j;
        }
    }
    printf("%d", num);
}

num = 2 4 6 8 10 3 6 9 12 15

i = 1 2 3 4

j = 1 2 3 4 5

▷ 15

 

 

16. 디자인 패턴 종류 중 객체들의 관계를 트리 구조로 구성하여 부분-전체 계층을 표현하는 패턴으로, 사용자가 단일 객체와 복합 객체 모두 동일하게 다루도록 하는 구조 패턴은 무엇인가?

구 브데 퍼플 프록 컴어

▷ 컴포지트

 

 

17. 다음은 인터페이스 전송 보안 관련 내용이다. 빈칸에 들어갈 알맞은 용어를 쓰시오.

  • (   1   ) 는 IP 계층(3계층)에서 무결성과 인증을 보장하는 (   2   ) 와 (   3   )을 보장하는 암호화(ESP)를 이용한 IP 보안 프로토콜이다.

▷ 1: IPSec / 2: 인증 헤더 / 3: 기밀성 

 

 

18. 다음은 OSI 7계층에 대한 설명이다. 괄호 안에 들어갈 용어를 영어로 쓰시오.

(   1   ) Layer: 송수신 간의 논리적인 연결을 수행하고, 대표적인 프로토콜에는 RPC, NetBIOS가 있다.

(   2   ) Layer: 송수신 프로세스 간의 연결, 신뢰성 있는 통신 보장, 데이터 분할과 재조립, 혼잡 제어 등을 수행하고, 대표적인 프로토콜에는 TCP, UDP가 있다.

▷ 1: Session , 2: Transport

응표세전네데물

 

 

19. 다음 성적 테이블에 학번이 1004, 과목은 파이썬, 학점은 A인 튜플을 insert 하는 쿼리를 작성하시오.

 

[성적] 테이블

학번 과목 학점
1000 C언어 A
1001 자바 A
1002 자바 A
1003 파이썬 B

▷ INSERT INTO 성적 VALUES (1004, '파이썬', 'A');

 

 

20. 4개의 프레임을 수용할 수 있는 주기억장치가 있으며, 초기에는 모두 비어있다고 가정한다. 다음의 순서로 페이지 참조가 발생할 때, FIFO 페이지 교체 알고리즘을 사용할 경우 페이지 결함의 발생 횟수는?

  • 페이지 참조 순서: 1, 2, 3, 1, 2, 4, 5, 1, 4
1 2 3 3 3 4 5 1 1
  1 2 2 2 3 4 5 5
    1 1 1 2 3 4 4
          1 2 3 3

▷ 6번

FIFO 알고리즘은 주기억장치 페이지에 순차적으로 참조 스트링이 들어오고, 페이지 교체는 가장 먼저 들어온 페이지부터 교체하는 알고리즘이다.