자격증

[정보처리기사 실기] 2020년도 기출 내용 정리

SeungbeomKim 2024. 4. 26. 22:57

2020년 1회

  • 살충제 패러독스: 동일한 테스트에 의한 반복적 테스트는 새로운 버그를 찾지못한다는 테스트의 원리
  • 데이터 마이닝: 대규모의 저장된 데이터에서 체계적이고 자동적인 통계적 규칙을 찾아내는 기술
  • 프로토콜의 3요소: 구문, 의미, 타이밍
  • XML: W3C, 웹 브라우저 문제, SGML의 복잡함 해결
  • JSON: 속성-값으로 이루어진 데이터 오브젝트를 전달하기 위해 사용하는 개방형 표준 포맷
  • HRN 계산 방식: (대기시간 + 서비스 시간) / 서비스 시간
  • 트랜잭션 특성: ACID
  • LAND attack: 패킷의 출발지 주소나 포트를 임의로 변경해 출발지와 목적지 주소를 동일하게 함으로써 대상 컴퓨터의 실행속도를 느리게 하는 공격
  • MD5: MD4 대체
  • 모듈간의 결합도는 줄이고, 응집도를 높이는 것을 권장
  • 제품 패키지 릴리스 노트의 작성 항목(헤더): 문서 이름, 제품 이름, 버전 번호, 릴리즈 날짜, 참고 날짜, 노트 버전 등의 정보
  • 비정규화: 정규화된 엔터티 속성, 관계에 대해 성능향상과 개발운영의 단순화를 위해 중복, 통합, 분리하는 과정
  • 물리계층 : 비트 전송 계층
  • 애플리케이션 성능 지표: 처리량, 응답 시간, 경과 시간, 자원 사용률 (처응경자)
  • fan-in, fan-out ..

 

2020년 2회

 

비즈니스 연속성 계획 용어

  • BIA: 장애나 재해로 인해 운영상의 주요 손실을 볼 것을 가정하고 시간 흐름에 따른 영향도 및 손실평가 조사
  • RTO: 업무중단 시점부터 업무가 다시 가동될 때까지의 시간
  • RPO: 업무중단 시점부터 데이터가 복구되어 다시 정상가동 될 때 데이터의 손실 허용 시점
  • DRP: 재난으로 장기간에 걸쳐 시설의 운영이 불가능한 경우를 대비한 재난 복구 계획
  • DRS: 재해 복구 센터

Ajax

  • ajax는 브라우저가 가지고 있는 XMLHttpRequest 객체를 이용해서 전체 ㅔㅍ이지를 새로 고치지 않고도 페이지 일부분만을 위한 데이터를 로드하는 기법

소프트웨어 방법론

 

구조적 방법론

  • 전체 시스템을 기능에 따라 나누어 개발하고, 이를 통합하는 분할과 정복 접근 방식의 방법론
  • 나씨-슈나이더만

정보공학 방법론

  • 정보 시스템 개발에 필요한 관리 절차와 작업 기법을 체계화한 방법론
  • 대형 프로젝트

객체지향 방법론

  • 객체라는 기본 단위로 시스템을 분석 및 개발하는 방법론, 객체 클래스, 메세지를 사용

컴포넌트 기반 방법론

  • 컴포넌트를 조립하여 하나의 새로운 응용 프로그램을 작성하는 방법론

애자일

  • 절차보다는 사람이 중심이 되어 변화에 유연하고 신속하게 적응하면서 효율적으로 시스템을 개발할 수 있는 개발방법론

 

SELECT 학번, 이름 FROM 학생 WHERE 학년 IN (3, 4);

 

ROLLBACK

  • 트랜잭션 중 오류가 발생했을 때, 오류 이전의 특정 시점(SavePoint, CheckPoint) 상태로 되돌려주는 명령어

 

IPSec

  • IP 계층에서 무결성과 인증을 보장하는 인증 헤더(AH)와 기밀성을 보장하는 ESP를 이용한 IP 보안 프로토콜

 

ESP

  • 메세지 인증 코드(MAC)와 암호화를 이용하여 인증과 송신처 인증과 기밀성을 제공하는 프로토콜

 

IKE

  • Key를 주고받는 알고리즘

 

Observer

  • 한 객체의 상태가 바뀌면 그 객체의 의존하는 다른 객체들에 연락이 가고 자동으로 내용이 갱신되는 방법

 

안드로이드

  • 구글에서 개발한 운영체제로 리눅스 위에서 구동하며 휴대폰 전화를 비롯한 휴대용 장치를 위한 운영체제와 미들웨어 등을 포함하는 리눅스 모바일 운영체제

 

인덱스 생성 명령어

  • CREATE INDEX IDX_NAME ON STUDENT(NAME);

 

SOAP

  • HTTP, HTTPS, SMTP 등을 상용해서 XML 기반의 메세지를 네트워크 상태에서 교환하는 프로토콜

 

입력 데이터 및 검증 및 표현에 대한 취약점

  • XSS: 검증되지 않은 외부 입력 데이터가 포함된 웹 페이지를 전송되는 경우, 사용자가 해당 웹 페이지를 열람함으로써 웹 페이지에 포함된 부적절한 스크립트가 실행되는 공격
  • CSRF: 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹 사이트에 요청하게 하는 공격
  • SQL Injection: 악의적인 SQL 삽입 → DB 정보 탈취

 

UI 설계 원칙 (직유학유)

  • 직관성: 누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 함
  • 유효성: 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작
  • 학습성: 초보와 숙련자 모두 쉽게 배우고 사용할 수 있게 제작
  • 유연성: 사용자의 인터랙션을 최대한 포용하고, 실수를 방지할 수 있도록 제작

 

LOD

  • 웹 상에 존재하는 데이터를 개별 URI로 식별하고, 각 URI에 링크 정보를 부여함으로써 상호 연결된 웹을 지향하는 데이터

 

데이터 모델링 절차 (개논물)

  • 개념적 데이터 모델링 → 논리적 데이터 모델링 → 물리적 데이터 모델링

 

형상관리 (식통감기)

  • 소프트웨어 개발 과정에서 변경 사항을 관리하는 기법 (CVS, SVN, Git)
  • 식별 → 통제 → 감사 → 기록

2020년 3회

 

리팩토링의 목적

  • 복잡한 코드의 단순화, 소스의 가독성을 통해 유지보수성 향상

 

OSPF

  • 대표적인 내부 라우팅 프로토콜로 다익스트라 알고리즘을 이용한 대규모 네트워크에 적합한 링크 상태 라우팅 프로토콜

 

형상통제

  • 형상 항목의 버전 관리를 위해 변경여부와 변경활동을 통제하는 활동

 

프로토콜

  • 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활히 하기 위한 표준화된 통신규약(톰 마릴)

 

ICMP

  • IP 패킷을 처리할 때 발생하는 문제를 알려주는 프로토콜

 

SELECT 과목이름, MIN(점수) AS 최소점수, MAX(점수) AS 최대점수 FROM 성적 GROUP BY 과목이름 HAVING AVG(점수) ≥ 90;

DELETE FROM 학생 WHERE 이름 = ‘민수’;

 

순수 관계 연산자 (셀프조디)

 

헝가리안 표기법

  • 식별자 표기 시 접두어에 자료형을 붙이는 표기법

 

블랙박스 테스트

  • 동등분할 테스트, 경계값 분석 테스트, 결정 테이블 테스트, 상태 전이 테스트, 유스케이스 테스트, 원인-결과 그래프 테스트, 비교 테스트, 오류 추정 테스트

 

DB 스키마

  • 데이터베이스의 구조, 제약조건 등의 정보를 담고 있는 기본적인 구조

 

DDL 대상 (도스테뷰인)

  • 도메인: 하나의 속성이 가질 수 있는 원자값들의 집합)
  • 스키마: 외부 스키마(사용자나 개발자 관점에서 필요로 하는 데이터베이스의 논리적 구조), 개념 스키마(데이터베이스의 전체적인 논리적 구조), 내부 스키마(물리적 저장장치 관점에서 보는 데이터베이스 구조)
  • 테이블: 데이터 저장 공간
  • 뷰: 하나 이상의 물리 테이블에서 유도되는 가상의 테이블
  • 인덱스: 검색을 빠르게 하기 위한 데이터 구조

 

UI 직관성

  • 누구나 쉽게 이해하고 쉽게 사용할 수 있어야 한다는 원칙

 

EAI 구축 유형 (포허메하)

  • 포인트 투 포인트, 허브 앤 스포크, 메세지 버스, 하이브리드

 

생성자

  • 클래스의 객체가 생성될 때 자동으로 호출되는 특수한 종류의 메서드

 

ALTER TABLE 테이블명 ADD/MODIFY/DROP 컬럼명

 

2020년 4회

 

IPv6: IPv4의 한계극복, 네트워크의 물리적 위치에 제한받지 않고 같은 주소를 유지

 

디자인 패턴 유형

  • 생성, 구조, 행위

 

클래스 다이어그램

  • 폴더모양의 패키지와 점선을 표시된 의존관계, <<import>>라는 스테레오 타입 표기를 통해 패키지 다이어그램인지 파악 가능

 

회복기법 종류 (로체그)

  • 로그 기반 회복 기법: 지연 갱신(트랜잭션 완료되기 전까지 DB 기록 X), 즉각 갱신(트랜잭션 수행 중 갱신 결과를 바로 DB에 반영)
  • 체크 포인트 회복 기법: 장애 발생 시 검사점 이후에 처리된 트랜잭션에 대해서만 장애 발생 이전의 상태로 복원시키는 회복 기법
  • 그림자 페이징 회복 기법: 데이터베이스 트랜잭션 수행 시 복제본을 생성하여 데이터베이스 장애 시 이를 이용해 복구하는 방법

 

네트워크 공격 기법

  • 스니핑: 공격 대상에게 직접 공격하지 않고 데이터만 몰래 들여다보는 수동적 공격 기법
  • 네트워크 스캐너: 네트워크 하드웨어 및 소프트웨어 구성의 취약점 파악을 위해 공격자가 취약점을 탐색하는 공격 도구
  • 패스워드 크래킹: 사전 크래킹 공격(id, pw 가능성 있는 것들 파일로 만들어둠), 무차별 크래킹 공격, 패스워드 하이브리드 공격(사전 크래킹 + 무차별 크래킹), 레인보우 테이블 공격(해시값 생성)
  • IP 스푸핑: 침입자가 인증된 컴퓨팅 시스템인 것처럼 속여서 타깃 시스템의 정보를 빼내기 위해서 본인의 패킷 헤더를 인증된 호스트의 IP 어드레스로 위조하여 타깃에 전송하는 공격 기법
  • ARP 스푸핑: 특정 호스트의 주소를 자신의 MAC 주소로 위조한 ARP Reply를 만들어 희생자에게 지속적으로 전송
  • ICMP Redirect: ICMP 리다이렉트는 3계층에서 스니핑 시스템을 네트워크에 존재하는 또 다른 라우터라고 알림으로써 패킷의 흐름을 바꾸는 공격 기법
  • 트로이 목마: 악성 루틴이 숨어있는 프로그램으로 겉보기에는 정상적인 프로그램으로 보이지만, 실행하면 악성 코드 실행

 

NAT

  • 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위해 사용
  • Static NAT: 사설 IP : 공인 IP = 1 : 1
  • Dynamic NAT: 사설 IP : 공인 IP가 N : 1, N : M 으로 연결되는 구성

 

하둡

  • 오픈 소스를 기반으로 한 분산 컴퓨팅 시스템으로 일반 PC급 컴퓨터들로 가상화된 대형 스토리지를 형성하고 그 안에 보관된 거대한 데이터 세트를 병렬로 처리할 수 있도록 개발된 자바 소프트웨어 프레임워크
    • HDFS: 대용량 파일을 분산된 서버에 저장
    • 맵리듀스: 대용량 데이터 세트를 분산 병렬 컴퓨팅에서 처리, 데이터를 Key-Value 쌍으로 구성

 

이상현상 (삽삭갱)

  • 삽입 이상: 정보 저장시 해당 정보의 불필요한 세부정보를 입력해야 하는 경우
  • 삭제 이상: 정보 삭제 시 원치않는 다른 정보가 같이 삭제되는 경우
  • 갱신 이상: 중복 데이터 중에서 특정 부분만 수정되어 중복된 값이 모순을 일으키는 경우

 

프로세스 상태 전이 (생준 실대완)

  • 생성상태, 준비상태, 실행상태, 대기상태, 완료상태

 

테스크 오라클

  • 참 오라클: 모든 입력값에 대해서 기대하는 결과를 생성함으로써 발생된 오류를 모두 검출할 수 있는 오라클
  • 샘플링 오라클: 특정한 몇 개의 입력값에 대해서만 기대하는 결과를 제공해주는 오라클
  • 휴리스틱 오라클: 샘플링 오라클 개선
  • 일관성 검사 오라클: 애플리케이션 변경이 있을 때, 수행 전과 후의 결과값이 동일한지 테스트

 

SELECT 학과, COUNT(학과) AS 학과별튜플수 FROM 학생 GROUP BY 학과;

 

유닉스

  • 데니스 리치, 켐톰슨 등이 함께 벨 연구소를 통해 만든 운영체제이며, 90%이상 C언어로 구현
  • 시스템 프로그램이 모듈화되어 있어 다른 하드웨어 기종으로 쉽게 이식이 가능

 

정보보안 3대 요소 (기무가)

  • 기밀성: 인가되지 않은 개인 혹은 시스템 접근에 따른 정보 공개 및 노출을 차단하는 특성
  • 무결성: 데이터 변경 X, 악의적으로 변경 및 훼손 불가능
  • 가용성: 권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속해서 사용할 수 있도록 보장하는 특성