AngelPlayer`s Diary


해당 포스트는 제가 정보처리기사를 준비하면서 공부한 내용을 요약한 문서입니다.

요약한 내용은 대체적으로 이전 기출문제를 풀기 위해서 알아야 할 중요한 개념 중심으로 정리하였습니다.

일부 임의로 요약한 내용이나 암기를 쉽게 하기 위해서 개념이 조금 틀리지만 수정한 내용이 있을 수 있습니다.

각 개인마다 공부 방식이 다르니 해당 포스트의 내용을 무조건 맹신하기보다는 참고하시는 방법을 권장 드립니다. 

오늘도 공부하시느라 애쓰시는 모든 분들에게 좋은 결과가 있으시길 바랍니다.


(해당 포스트는 시나공, 수제비 정보처리기사 실기 책을 참고하여 작성하였습니다.)

(포스트 내용을 개인 공부를 위해서 로컬 저장소에 저장하는 것은 가능하나,

내용을 그대로 복사하여 다른 곳에 재업로드하는 것은 자제해주시면 감사하겠습니다.)

 

 

 

IPSec, SSL, S-HTTP : 인터페이스 보안 솔루션

 

 

화이트박스 테스트 : 원시 코드를 오픈 시킨 상태에서 논리적인 경로를 검사

경로, 구조, 루프, 흐름 검사 등

 

블랙박스 테스트 : 기능이 완전히 동작하는지를 검사, 모든 코드를 무조건 1회 이상 수행

결과 값, 경계 값, 분할 (동치 분할 검사, 경계 값 분석, 원인-효과 그래프 검사, 오류 예측, 비교 검사 등)

 

 

McCabe cyclomatic수 구하기 : 화살표 수 - 노드 수 + 2 (화노이)

 

 

삽입 정렬 : 한 칸씩 비교 대상을 늘려가면서 정렬 진행

 

선택 정렬 : 젤 앞부터 차례대로 하나씩 정렬을 완료시킴 (한 차례에 맨 앞에 값이 하나씩 정렬 됨)

 

버블 정렬 : 인접한 두 가지 끼리 비교하여 값을 정렬 (한 차례에 맨 뒤에 값이 하나씩 정렬 됨)

 

힙 정렬 : 완전 이진 트리, 루트 노드를 제거하는 방식으로 진행

 

쉘 정렬 : 레코드 키

 

퀵 정렬 : 파일을 부분적으로 나누어 정렬

 

기수 정렬 : 레코드, 버킷

 

 

힙 정렬, 2-way 합병 정렬 : O(nlog2n)

나머지 : n^2

 

 

트리 운행법 (루트의 위치에 따라 이름이 바뀜)

Pre : Root - L - R

In : L - Root - R

Post : L - R - Root

 

 

트리의 차수 : 가장 많은 자식을 가지는 노드의 자식 수

 

 

분할의 종류 : 범위, 해시, 조합, 목록, 라운드로빈 (목범해조라)

 

 

EAI : 플랫폼 간 상호 연결해주는 기능

- point to point : 1:1 연결, 변경 및 재사용 어려움

- Hub & Spoke : 허브를 통해 데이터 전송, 중앙 집중형 방식

- Message Bus(ESB) : 미들웨어를 통해 처리

- Hybrid : ESB + Hub 방식, 한 가지로도 가능함, 병목현상 최소화

 

 

무방향 그래프 간선 수 : n(n-1)/2

 

 

테스트 오라클 : 사전에 정의된 참 값을 입력하여 비교하는 테스트

 

 

Jenkinsjava 기반, GradleGroovy 기반

 

 

DRM : , 암호화, 식별, 저작권, 정책 (복구는 없음)

클리어링 하우스 : 사용 권한, 라이선스 발급, 결제 관리

패키저 : 콘텐츠를 메타 데이터와 배포 형태로 묶어 암호화

콘텐츠 제공자 : 저작권자

콘텐츠 분배자 : 유통

DRM 컨트롤러 : 콘텐츠 이용 권한을 통제

보안 컨테이너 : 원본을 유지하기 위한 보안 장치

 

 

Pareto(Defect Clustering) : 특정 모듈에 결함이 집중

Pesticide Paradox : 동일 테스트 반복 시 더 이상 결함이 발견되지 않음

Absence of Errors Fallacy : 결함을 모두 제거하였지만 사용자의 요구를 충족하지 못하는 경우

 

 

버전 관리 도구 방식

공유 폴더 방식 : 로컬 컴퓨터의 공유 폴더에 저장 (SCCS, RCS, PVCS, QVCS)

클라이언트/서버 방식 : 중앙 집중형 (CVS, SVN, SVSNT, Clear Case, CMVC)

분산 저장소 방식 : 로컬 및 원격 둘다 사용 (git)

 

 

인터페이스 구현 검증 도구

xUnit : 여러 언어 지원, 단위 테스트

STAF : 서비스 호출, 컴포넌트 재사용

FitNesse : 웹 기반 테스트

NTAF : 네이버

Selenium : 웹 앱 테스트

watir : Ruby

 

 

기초 경로 : 수행 가능한 모든 경로

 

 

테스트는 오류를 찾는 작업, 디버깅은 오류를 수정하는 작업

 

 

스택의 종류 : 후위 표현, 깊이 우선 탐색, 재귀 호출

하향식 테스트는 스텁, 상향식 테스트는 드라이브 사용

 

 

비선형 구조 : 트리, 그래프

선형 구조 : 스택, , 데크, 리스트, 배열

 

 

검증 : 개발자 입장, 개발 과정 테스트

확인 : 사용자 입장, 개발 결과 테스트

 

 

형상 통제(변경 관리) : 기준선에 맞게 잘 반영되도록 조정

 

 

Functionality : 요구사항을 만족하는 기능을 제공하는지 여부

Reliabiliy : 오류 없이 수행하는 정도

Usability : 사용자가 쉽게 배우고 사용하는 정도

Effciency : 한정 자원으로 얼마나 빠르게 처리할 수 있는지 정도

Maintainability : 새로운 요구사항 발생 시 개선하거나 확장하는 정도

Portability : 다른 환경에서 적응하는 정도

 

 

라디오 : 여러 개 중 하나를 선택

체크 : 여러 개 선택 가능

콤보 : 지정된 목록 + 새로운 사용자 목록

목록 : 지정된 목록만 사용 가능

 

 

이진 탐색

데이터가 정렬되어 있어야 함

자료를 반으로 나누어 반만 검색하는 방법을 사용

피보나치랑 상관이 없음

 

 

결함 : 고장, 오류 발생, 작동 실패 등 개발자가 설계한 것과 다른 결과가 발생하는 것

 

 

 

 

공유하기

facebook twitter kakaoTalk kakaostory naver band