2020년 정보처리기사실기 2회차 기출문제 정답·해설 페이지

2020년-정보처리기사실기-2회차
    12020년-정보처리기사실기-2회차
    정보시스템 운영 중 서버가 다운되거나 자연재해나 시스템 장애 등의 이유로 고객에게 서비스가 불가능한 경우가 종종 발생한다. 이와 같은 상황에서 비상사태 또는 업무중단 시정부터 업무가 복구되어 다시 정상 가동될때까지의 시간을 의미하는 용어가 무엇인지 쓰시오.
    해설
    재해 복구 시간 or RTO(Recovery Time Objective)


    [해설]

    재해나 시스템 장애로 업무가 중단된 시점부터 복구되어 다시 정상 가동될 때까지 허용되는 목표 복구 시간을 의미하는 용어가 RTO(Recovery Time Objective)다.

    복구해야 할 데이터의 기준 시점, 즉 허용 가능한 데이터 손실 범위를 뜻하는 RPO(Recovery Point Objective)와 혼동하기 쉬운데, RTO는 '중단 시간', RPO는 '데이터 시점'을 기준으로 한다는 점이 구분 포인트다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    22020년-정보처리기사실기-2회차
    2. 다음은 파이썬 코드이다. 출력 결과를 쓰시오.
    문제이미지
    해설
    {'중국','한국','베트남','홍콩','태국'}

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    32020년-정보처리기사실기-2회차
    브라우저가 가지고 있는 XMLHttpRequest 객체를 이용해서 전체 페이지를 새로 고치지 않고도 페이지의 일부분만을 위한 데이터를 로드하는 기법이며, 하이퍼텍스트 표기 언어(HTML)만으로 어려운 다양한 작업을 웹 페이지에서 구현해 이용자가 웹 페이지와 자유롭게 상호작용할 수 있도록 하는 기술명을 쓰시오.
    해설
    비동기 통신 기법 or AJAX(Asynchronous JavaScript and XML)


    [해설]

    브라우저의 XMLHttpRequest 객체를 이용해 전체 페이지를 새로 고치지 않고 필요한 부분의 데이터만 비동기로 주고받는 기법이 AJAX(Asynchronous JavaScript and XML)다.

    요청할 때마다 페이지 전체를 다시 불러오는 전통적 방식과 달리 화면 깜빡임 없이 부분 갱신이 가능해 사용자와의 상호작용성을 높인다는 점이 채점 키워드이며, 이름에 XML이 들어가지만 실제 전송 포맷으로는 JSON도 널리 쓰인다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    42020년-정보처리기사실기-2회차
    절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템을 개발할 수 있는 신속 적응적 경량 개발방법론으로, 개발 기간이 짧고 신속하며, 워터폴에 대비되는 방법론으로 최근 회사에서 각광받는 방법론은 무엇인가?
    해설
    애자일 방법론


    [해설]

    정해진 절차보다 사람과 협업을 중심에 두고 짧은 반복 주기로 변화에 유연하고 신속하게 대응하는 신속 적응적 경량 개발 방법론이 애자일(Agile)이다.

    요구사항을 사전에 확정하고 단계를 순차적으로 진행하는 워터폴(Waterfall)과 대비된다는 점이 채점 포인트이며, 스크럼·XP·기능 중심 개발(FDD) 등이 대표적인 애자일 방법론이다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    52020년-정보처리기사실기-2회차
    다음은 자바 코드이다. 다음 밑줄에 들어갈 키워드를 쓰시오.
    문제이미지
    해설
    new


    [해설]

    자바에서 클래스를 바탕으로 객체(인스턴스)를 생성할 때 사용하는 키워드가 new다. new는 힙 영역에 객체가 사용할 메모리를 할당하고 생성자를 호출한 뒤, 그 객체의 참조값을 반환한다.

    따라서 참조변수 = new 생성자() 형태로 선언과 생성을 함께 하며, 선언만 해 둔 참조 변수는 new로 실제 객체를 만들기 전까지 null 상태여서 멤버에 접근할 수 없다는 점이 함께 확인되는 개념이다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    62020년-정보처리기사실기-2회차
    학생 테이블은 학번, 이름, 학년, 수강과목, 점수, 연락처를 속성으로 가진다. 아래 조건을 만족하는 SQL문을 작성하시오. 1) 학생 테이블에서 3,4학년인 학번, 이름을 조회한다. 2) IN 연산자 사용해야 한다.
    문제이미지
    해설
    SELECT 학번, 이름 FROM 학생 WHERE 학년 IN (3,4);


    [해설]

    학년이 3 또는 4인 튜플만 조회하는 조건이므로 IN 연산자로 후보 값 목록을 한 번에 지정하는 것이 핵심이다.

    IN (3,4)는 학년 = 3 OR 학년 = 4와 같은 뜻으로, 여러 값 중 하나라도 일치하면 참이 되는 조건을 간결하게 표현한다.

    SELECT 절에는 요구된 학번, 이름만 나열하면 되고, 조건에만 쓰인 학년 컬럼은 결과 목록에 포함시키지 않아도 된다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    72020년-정보처리기사실기-2회차
    트랜잭션 Rollback에 대해 설명하시오.
    해설
    트랜잭션 처리 중 오류가 발생했을 때, 오류 이전의 특징 시점(SAVEPOINT, CHECKPOINT) 상태로 되돌려주는 제어어(명령문)이다.


    [해설]

    오류가 발생한 트랜잭션을 처리 이전 상태로 되돌려 데이터의 일관성을 지키는 것이 Rollback의 목적이다.

    트랜잭션 도중 오류가 나면 전체를 취소하고, 필요하면 SAVEPOINT로 지정해 둔 중간 지점까지만 되돌릴 수도 있다.

    커밋(Commit)과 짝을 이루는 트랜잭션 제어어(TCL)로, All-or-Nothing이라는 트랜잭션의 원자성(Atomicity)을 보장하는 수단이다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    82020년-정보처리기사실기-2회차
    무결성과 인증을 보장하는 인증해더(AH)와 기밀성을 보장하는 암호화(ESP)를 이용한 프로토콜로 네트워크 계층(Network Layer)인 인터넷 프로토콜(IP)에 보안성을 제공해주는 표준화된 기술에 대해 쓰시오.
    해설
    IPSec(Internet Protocol Security)


    [해설]

    네트워크 계층에서 IP 통신에 보안 기능을 추가하는 표준 프로토콜이므로 답은 IPSec이다.

    인증 헤더(AH)는 데이터 무결성과 송신자 인증을 담당하고, 캡슐화 보안 페이로드(ESP)는 데이터를 암호화해 기밀성을 제공한다.

    두 방식을 함께 또는 선택적으로 적용해 VPN 등에서 IP 패킷 전체를 보호하는 데 쓰인다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    92020년-정보처리기사실기-2회차
    애플리케이션을 실행하지 않고, 소스 코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도 및 남은 결함을 발견하기 위해 사용하는 도구는 무엇인지 쓰시오.
    해설
    정적 분석 도구


    [해설]

    프로그램을 실행하지 않고 소스 코드 자체를 점검한다는 점이 핵심이므로 답은 정적 분석(Static Analysis) 도구이다.

    코딩 표준 준수 여부, 스타일, 복잡도, 잠재적 결함을 코드 실행 전에 찾아내며, 대표 도구로 pmd, checkstyle, SonarQube 등이 있다.

    반대로 프로그램을 실제 실행시켜 결함을 찾는 방식은 동적 분석이라 하며, 이 문제의 핵심 구분점이다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    102020년-정보처리기사실기-2회차
    다음 보기가 설명하는 패턴을 쓰시오. (영문 Full-Name으로 작성하시오) [보기] 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들이 연락이 가고 자동으로 내용이 갱신되는 방법으로 일대 다의 의존성을 가지며 상호작용하는 객체 사이에서는 가능하면 느슨하게 결합하는 디자인을 사용해야 한다.
    해설
    Observer Pattern


    [해설]

    한 객체의 상태 변화를 여러 의존 객체에 자동으로 통지하는 구조이므로 답은 Observer Pattern이다.

    상태를 갖는 주체(Subject)와 이를 구독하는 다수의 관찰자(Observer)가 1:N 의존 관계를 이루며, 주체가 변경되면 등록된 관찰자에게 알림이 전파된다.

    주체와 관찰자를 인터페이스로 분리해 느슨한 결합(Loose Coupling)을 유지하는 것이 이 패턴의 설계 의도이며, 이벤트 리스너나 MVC의 View 갱신 구조가 대표적인 응용 사례다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    112020년-정보처리기사실기-2회차
    Linux 운영체제 위에서 구동하며 휴대폰 전화를 비롯한 휴대용 장치를 위한 운영체제와 미들웨어, 사용자 인터페이스 그리고 표준 응용프로그램(웹 브라우저 등) 등을 포함하고 있는 소프트웨어 스택이자 리눅스 모바일 운영체제로 개발자들이 자바와 코틀린 언어로 응용 프로그램을 작성할 수 있게 했고, 컴파일 된 바이트 코드를 구동할 수 있는 런타임 라이브러리를 제공하는 운영체제는 무언인지 쓰시오.
    해설
    안드로이드


    [해설]

    리눅스 커널 기반의 모바일 운영체제이자 소프트웨어 스택이므로 답은 안드로이드(Android)이다.

    운영체제, 미들웨어, UI, 기본 응용프로그램까지 포함하는 스택 구조를 가지며, 구글이 개발을 주도한다.

    개발자는 Java, Kotlin으로 앱을 작성하고, 컴파일된 바이트코드는 안드로이드 런타임(ART)에서 실행된다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    122020년-정보처리기사실기-2회차
    학생 테이블의 name속성에 IDX_NAME 이름으로 인덱스 생성하는 SQL문을 작성하시오.
    문제이미지
    해설
    CREATE INDEX IDX_NAME ON 학생(NAME)


    [해설]

    지정한 컬럼에 인덱스를 새로 만드는 DDL 문이므로 CREATE INDEX 구문을 사용한다.

    기본 문법은 CREATE INDEX 인덱스명 ON 테이블명(컬럼명) 순서이며, 문제의 조건대로 인덱스명 IDX_NAME과 대상 테이블 학생, 대상 컬럼 NAME을 그대로 대입하면 된다.

    인덱스는 검색 속도를 높이기 위한 객체로, 특정 컬럼의 조회·정렬이 잦을 때 생성한다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    132020년-정보처리기사실기-2회차
    다음 설명 중 빈칸에 들어갈 알맞는 용어를 작성하시오. HTTP, HTTPS SMTP를 통해서 XML 기반의 데이터를 주고받는 프로토콜로 웹 서비스 방식에 HTTP기반의 ( ) 을/를 사용하여 송수신한다. ( ) 대신 레스트풀(RESTful) 프로토콜로 대체할 수 있다.
    해설
    SOAP (Simple Object Access Protocol)


    [해설]

    HTTP·HTTPS·SMTP 위에서 XML 기반 메시지를 주고받는 프로토콜이므로 답은 SOAP(Simple Object Access Protocol)이다.

    메시지를 XML로 구조화해 플랫폼·언어에 독립적으로 웹 서비스를 호출할 수 있게 하며, 전송 프로토콜로 여러 프로토콜을 유연하게 사용할 수 있다.

    상대적으로 가볍고 HTTP 메서드를 그대로 활용하는 RESTful 방식이 SOAP의 대안으로 널리 쓰인다는 점이 문제에서 언급된 대체 관계다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    142020년-정보처리기사실기-2회차
    SQL Injection이 무엇인지 서술하시오.
    해설
    응용 프로그램의 보안 취약점을 이용해서 악의적인 SQL 구문을 삽입, 실행시켜서 데이터베이스의 접근을 통해 정보를 탈취하거나 조작 등의 행위를 하는 공격 기법


    [해설]

    애플리케이션의 입력 검증 취약점을 이용해 악의적인 SQL을 끼워 넣는 공격이므로 답은 SQL Injection이다.

    사용자 입력값이 그대로 쿼리문에 결합될 때 발생하며, 공격자는 이를 통해 인증을 우회하거나 데이터를 탈취·변조할 수 있다.

    대응책으로는 Prepared Statement(바인드 변수) 사용, 입력값 검증, 최소 권한 원칙 적용 등이 있다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    152020년-정보처리기사실기-2회차
    사용자에게 읽기 / 쓰기 / 실행 권한을 부여하고 그룹에게는 읽기 / 실행을 부여하고 그 이외에는 실행 권한을 a.txt에 부여하는 명령어를 한줄로 작성하시오 (8진법을 사용하시오)
    해설
    chmod 751 a.txt


    [해설]

    소유자·그룹·기타 사용자에게 각각 다른 권한을 부여하는 문제이므로 8진수 권한값을 조합해 chmod 751 a.txt로 작성한다.

    read=4, write=2, execute=1을 더해 계산하며, 소유자는 rwx(4+2+1=7), 그룹은 r-x(4+1=5), 그 외 사용자는 --x(1)이 되어 순서대로 7, 5, 1이 나온다.

    세 자리 숫자를 소유자·그룹·기타 순서대로 붙여 쓴 뒤 대상 파일명을 적는 것이 chmod 8진법 표기의 규칙이다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    162020년-정보처리기사실기-2회차
    UI 설계 원칙에서 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작할 수 있어야 한다. 다음 빈칸에 들어갈 특징은 무엇인가? 직관성 - 누구나 쉽게 이해하고 사용할 수 있어야 한다. 학습성 - 누구나 쉽게 배우고 익힐 수 있어야 한다. 유연성 - 사용자의 요구사항을 최대한 수용하며 오류를 최소화해야 한다. ( ) - 사용자의 목적을 정확하게 달성하여야 한다.
    해설
    유효성


    [해설]

    UI 설계 4대 원칙 중 사용자의 목표를 정확하게 달성시키는 특성을 묻는 문제이므로 답은 유효성이다.

    직관성·학습성·유연성이 사용하기 쉽고 배우기 쉬우며 요구를 수용하는 측면이라면, 유효성은 결과적으로 사용자의 목적을 정확하고 완벽하게 달성시키는지를 나타낸다.

    즉 앞의 세 원칙이 과정의 편의성에 가깝다면, 유효성은 결과의 정확성에 초점을 둔 원칙이라는 점이 구분 포인트다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    172020년-정보처리기사실기-2회차
    전 세계 오픈된 정보를 하나로 묶는 방식으로 link data와 open data의 합성어가 무엇인지 쓰시오.
    해설
    LOD (Linked Open Data)


    [해설]

    연결된(Linked) 데이터와 개방된(Open) 데이터를 결합한 개념이므로 답은 LOD(Linked Open Data)이다.

    전 세계에 흩어진 오픈 데이터를 RDF와 URI로 서로 연결해, 기계가 데이터 간의 관계를 이해하고 탐색할 수 있게 하는 방식이다.

    시맨틱 웹(Semantic Web)을 실현하기 위한 대표적인 데이터 발행·연결 방법으로 이해하면 된다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    182020년-정보처리기사실기-2회차
    다음은 데이터 모델링 절차이다. 절차에 맞도록 보기에서 찾아 채우시오. [보기] 1. 물리적 데이터 모델링 2. 개념적 데이터 모델링 3. 논리적 데이터 모델링 요구사항 분석 > ( 1. ) > ( 2. ) > ( 3. )
    해설
    1. 개념적 데이터 모델링 2. 논리적 데이터 모델링 3. 물리적 데이터 모델링


    [해설]

    데이터 모델링은 추상화 수준이 높은 단계에서 낮은 단계로 진행되므로, 빈칸은 순서대로 개념적 → 논리적 → 물리적 데이터 모델링이 된다.

    개념적 모델링은 업무를 개체와 관계 중심으로 표현하는 E-R 다이어그램 작성 단계이고, 논리적 모델링은 이를 정규화하여 키와 속성을 구체화하는 단계다.

    물리적 모델링은 특정 DBMS에 맞춰 테이블·인덱스 등 실제 저장 구조를 설계하는 마지막 단계다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    192020년-정보처리기사실기-2회차
    다음은 자바 코드이다. 출력 결과를 쓰시오.
    문제이미지
    해설
    a = 10

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

    202020년-정보처리기사실기-2회차
    소프트웨어 개발 과정에서 변경 사항을 관리하는 기법은 ( ) 기법이라고 하며, ( ) 기법을 활용한 도구로는 CVS, SVN, Git 등이 있다. 빈칸에 알맞은 용어를 쓰시오.
    해설
    형상관리


    [해설]

    소프트웨어 생명주기 동안 산출물의 변경 이력을 체계적으로 관리한다는 설명이므로 답은 형상관리(Configuration Management, SCM)이다.

    소스 코드뿐 아니라 설계 문서 등 형상 항목의 버전을 추적하고 변경을 통제해, 여러 개발자가 동시에 작업해도 이력을 되짚을 수 있게 한다.

    CVS, SVN, Git은 이러한 형상관리를 지원하는 대표적인 버전 관리 도구다.

    내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.

2020년 정보처리기사실기 2회차 시험지 PDF 다운로드·인쇄 →

2020년 정보처리기사실기 2회차 문항별 상세 페이지 전체 보기