본문 바로가기
지식 아카이브/정보처리기사

2020 정보처리기사 실기 대비 내용 정리 61-70

by canoe726 2020. 11. 12.
728x90

2020 정보처리기사 실기를 대비하기 위해 보았던 관련 실기 책의 내용을 정리한 노트를 공유하는 포스팅입니다.

 

정보처리기사 실기를 공부하면서 개인적으로 중요하다고 생각되는 부분을 모아 정리하였습니다.

 

2020년 실기 3회 까지는 개념에 대한 설명 (서술형), 설명하는 개념에 대한 정답 서술 (단답형), SQL, 프로그래밍 (C++, Java, Python) 정도의 유형으로 출제되는 것 같습니다.

 

P.S. 전산영어 파트, 컴퓨터 구조와 같이 없어진 과목들을 제외한 범위에서 개정 이전 필기 기출, 2020년도 정보처리기사 필기 책에 있는 개념 들을 익히는 것이 더 많은 실기 문제를 맞추는데 유리할 것 같습니다.

 

 

- 키워드 : SSL, DAT, DTO, VO, 배치 프로그램, 모듈 설계서, 데이터베이스 암호화 기법, 정규형, 버전관리 도구 유형, JSON

 

 

61.  SSL / DAO / DTO / VO

1) SSL (Secure Socket Layer) : TCP/IP 상에서 웹 브라우저와 웹 서버간에 데이터를 안전하게 주고 받기 위한 표준 전송 프로토콜

 

2) DAO (Data Access Object) : DB를 사용해 데이터를 조회, 조작하는 기능을 전담하도록 만든 오브젝트

 

3) DTO (Data Transfer Object) : 프로세스 사이에서 데이터를 전송하는 객체, 전송될 데이터를 DTO를 통해 한 번만 호출, 데이터 저장, 회수 기능만 존재 (getter, setter)

 

4) VO (Value Object) : 간단한 독립체(Entity)를 의미하는 작은 객체, read only (getter), DTO와 동일 개념

 

 

62. 배치 프로그램

- 정의 : 사용자와의 상호작용없이 일련의 작업들을 작업 단위로 묶어 정기적으로 반복 수행, 규칙에 따라 일괄처리하는 프로그램

 

- 필수 요소

 

1) 대용량

 

2) 자동화 : 심각한 오류 상황 외에는 사용자 개입없이 동작해야 함

 

3) 견고함 : 유요하지 않은 데이터도 처리해서 비정상적 중단이 없어야 함

 

4) 안정성 : 문제 발생 시기를 추적가능해야 함

 

5) 성능 : 주어진 시간 내 처리 가능, 동시에 다른 애플리케이션 방해가 없어야 함

 

 

- 배치 스케줄러 : 일괄처리를 위해 주기적으로 발생하거나 반복적으로 발생하는 작업을 지원하는 도구

 

ex1) 스프링 패치 특징

 

1) 스프링 프레임 워크 기반

 

2) 자체 제공 컴포넌트

 

3) 견고함과 안정성

 

ex2) Quartz 스케줄러

 

- Sprint Framework에 플러그인 되어 수행하는 job, 스케줄을 정의하는 트리거를 분리해 유연성 제공

 

 

* 디버그, 디버거

 

- 디버그 : 프로그램의 논리적 오류를 찾아내는 과정

 

- 디버거 : 버그를 찾고 수정하기 위한 도구

 


63. 모듈 세부 설계서

 

1) 컴포넌트 명세서 : 컴포넌트의 개요, 내부 클래스의 동작, 인터페이스를 통해 외부와 통신하는 명세를 정의한다.

 

2) 인터페이스 명세서 : 컴포넌트 명세서에 명시된 인터페이스 클래스의 세부적인 조건 및 기능을 명시한 명세서

 

 

* JSON (Javascript Object Notation) : 속성-값 쌍으로 이루어진 데이터를 전달하기 위해 사용하는 개방형 표준 포맷, AJAX (Asynchronous Javascript and XML) 에서 많이 사용되고 XML을 대체하는 주요 데이터 포맷

 

 

64. 데이터베이스 암호화 기법

1) API 방식 : APP 레벨에서 암호모듈 (API)를 적용하는 APP 수정 방식

 

-> 별도 APP 개발/통합, APP 서버에 암/복호화 정책 관리, APP 개발 통합 기간 필요, APP 변경에 따른 유지 보수 필요

 

 

2) Filter(Plug-in) 방식 : DB 레벨의 확장성 프로시저 기능을 이용, DBMS에 plug-in 또는 snap-in 모듈로 동작하는 방식

 

-> DB 내 설치/연동, DB 서버에 암/복호화 정책 관리, APP 변경 불필요, 다수 DB 통합 관리기능 편의성 높음

 

 

3) Hybrid 방식 : API, Filter 방식을 결합하거나, Filter 방식에 추가적으로 SQL문에 대한 최적화 대행 어플라이언스 제공

 

-> 어플라이언스 / DB 내 설치, DB와 어플라이언스에서 부하 분산, APP 변경 불필요, 다수 DB 통합 관리기능 편의성 높음

 


65. 테스트 오라클

- 정의 : 테스트 대상 소프트웨어의 실제 결과와 비교할 목적으로 예상 결과를 결정하는 근거, 테스트의 결과가 참인지 거짓인지를 판단하기 위해서 사전에 정의된 참 값을 입력하여 비교함

 

1) 참 오라클 : 모든 테스트케이스 입력값이 기대한 결과값에 대한 확인, 오류 검출 가능 (크리티컬한 업무)

 

2) 샘플링 오라클 : 특정 입력값에 대해서만 결과 제공 (일반적 업무)

 

3) 휴리스틱 오라클 : 특정 입력값에 대해 올바른 결과, 나머지는 추정, 수치데이터 처리

 

4) 일관성 검사 오라클 : 애플리케이션 변경 시 수행 전 후가 동일한지 확인



66. V 모델

 

- 정의 : 폭포수 모델에 근건, 개발 단계에 대응하는 테스트레벨 존재

 

 

 


67. 애플리케이션 성능 측정 지표

1) 처리량 (Throughput) : 주어진 시간에 처리가능한 트랜잭션의 수

 

2) 응답시간 (Response Time) : 입력 후 응답 출력이 개시될때까지의 시간

 

3) 경과시간 (Turnaround Time) : 요구를 입력한 시점부터 그 결과의 출력이 완료할 때까지 걸리는 시간

 

4) 자원사용률 (Resource Usage) : CPU, 메모리, 네트워크 사용량



* 시큐어 코딩의 목적

 

1) 보안 취약점과 결함 방지

 

2) 안전한 대고객 서비스 확대

 

3) 안정성 및 신뢰성 확보

 

 

68. 그 외 지식

 

1) 비트 (Binary Digit) : Byte(8bit) -> KB -> MB -> GB -> TB -> PB -> EB

 

2) CPU 연산 : CPU 에서는 목적에 따라 연산을 수행하는데, 연산을 위한 명령어가 실행되고 기록되기 위해서는 4단계를 거쳐야 한다.

 

- 단계 : 인출 -> 해석 -> 실행 -> 기록

 

 

3) 명령어 형식과 오퍼랜드

 

- 명령어 형식 : 필드의 수, 배치방법, 필드의 0과 1 개수를 정의한 것

 

- 오퍼랜드 : 연산 수행시 필요한 데이터, 데이터 주소

 

 

4) 자료구조

 

- 정의 : 데이터의 삽입, 삭제, 수정을 위한 논리적 공간 구조

 

- 종류 : 선형 (큐, 스택), 비선형 (트리, 그래프), 파일 (순차파일, 색인 파일)

 

 

5) 알고리즘

 

- 정의 : 프로그램 구성요소, 답을 찾는 해법

 

- 구성요소 : 입력, 출력, 명확성, 유한성, 유효성

 

 

69. 정규형 (Normalization)

1) 1NF : 특정 릴레이션 R의 모든 도메인 값이 원자 값 만으로 구성

 

2) 2NF : 특정 릴레이션 R이 1NF 이고 키가아닌 모든 속성이 기본키에 완전 함수 종속

 

3) 3NF : 특정 릴레이션 R이 2NF 이고 키가아닌 모든 속성이 비이행적으로 기본키에 종속

 

4) 보이스/코드 정규형 (BCNF) : 릴레이션 R의 모든 결정자가 후보키

 

5) 4NF : 릴레이션 R의 모든 속성들이 A에 함수 종속하는 경우(다치종속)

 

6) 5NF : 릴레이션 R에 존재하는 모든 조인 종석성이 R의 후보키로 유추 되는 경우

 



70. 버전관리 도구 유형

 

1) 공유폴더 방식

 

- 설명 : 개발 완료 파일은 약속된 위치의 공유 폴터에 복사

 

- 특징 : 정상동작일 경우 다음날 동작여부 확인, 담당자 한 명이 개인 PC로 복사하고 컴파일 해 에러, 정상 동작 여부 확인

 

- 예시 : RCS, SCSS

 

 

2) 클라이언트 서버 방식

 

- 설명 : 중앙에 버전관리 시스템이 항시 동작, 현재 또는 이전 작업 내용 축적에 용이

 

- 특징 : 다른 개발자가 같은 파일 수정시 경고 출력, CVS view 로 GUI 모니터링 가능

 

- 예시 : CVS, SVN

 

 

3) 분산 저장소 방식

 

- 설명 : 로컬 / 원격 저장소 구축

 

- 특징 : 중앙 -> 로컬에 복사한 순간 자신만의 로컬 저장소 생성

 

- 예시 : Git, Bitkeeper

 

 

* 보안 취약점 진단을 수행하기 위한 환경 구축

 

1) 스토리지 : 취약점 진단을 수행하기 위해 필요한 데이터를 담아두는 저장 공간

 

2) 진단서버 : 취약점 진단을 수행하기 위해 필요한 CPU, 메모리 등 하드웨어

 

3) 네트워크 : 서버와 클라이언트를 연결해주는 연결망으로 기업 내부에서는 LAN으로 구성

 

 

728x90

댓글