포스트

[정보처리기사] 정보처리기사 외울 것

Computer Science / 정보처리기사

정보처리기사 실기 대비 외워야할 것들 정리

view

문제 풀이 중 외울 것 정리


복구

  • RTO (Recovery Time Objective)
    • 시간 측면에서의 목표(중단 시점부터 얼마나 빨리 서비스 정상화를 할 것인가)
  • RPO (Recovery Point Objective)
    • 데이터 측면에서의 목표(장애가 발생했을 때 어느 시점으로 데이터를 복원할 것인가, 즉 허용 가능한 데이터 손실 범위)

DCL

  • COMMIT
    • 데이터의 조작 결과를 최종적으로 반영할 때 사용하는 언어
  • ROLLBACK
    • 데이터의 조작 내역을 이전으로 돌릴 때 사용하는 언어

OSI 7계층

0

UI

  • 직관성
    • 누구나 쉽게 이해하고 사용할 수 있어야 한다.
  • 유효성
    • 사용자의 목적을 정확하고 완벽하게 달성해야 한다.
  • 학습성
    • 누구나 쉽게 배우고 익힐 수 있어야 한다.
  • 유연성
    • 사용자의 요구사항을 최대한 사용하고 실수를 최소화해야 한다.

LOD (Linked Open Data)

  • 정의
    • 웹상에 존재하는 데이터를 개별 URI(Uniform Resource Identifier)로 식별하고, 각 URI에 링크 정보를 부여함으로써 상호 연결된 웹을 지향하는 모형이다. 링크 기느잉 강조된 시맨틱 웹의 모형에 속한다고 볼 수 있으며, 팀 버너스 리의 W3C를 중심으로 발전하고 있다.
  • 주요 기능
    1. 공개된 데이터를 이용하면 내가 원하는 데이터가 이미 존재하는지, 어디에 존재하는지를 알 수 있다.
    2. URI로 구별되는 데이터 리소스의 자유로운 접근 및 이용이 가능하므로 큰 노력 없이 데이터의 매쉬업이 가능하다.
    3. 내가 만든 데이터가 아니라도 URI를 이용하여 링크만 해주면 이용할 수 있다.
  • 4대 원칙
    1. 통합 자원 식별자(URI)를 사용한다.
    2. URI는 HTTP 프로토콜을 통해 접근할 수 있어야 한다.
    3. RDF나 스파클 같은 표준을 사용한다.
    4. 풍부한 링크 정보가 있어야 한다.
  • Linked Data와 Open Data를 결합한 용어이다.

DB 관련

데이터 모델의 구성 요소

  • 연산 (Operation)
    • 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 기본 도구에 해당한다.
  • 구조 (Structure)
    • 논리적으로 표현된 객체 타입들 간의 관계로서 데이터의 구성 및 정적 성질을 표현한다.
  • 제약 조건
    • 제약 조건은 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건을 의미한다.

DB 구축 단계

  1. 요구 사항 분석
  2. 개념적 설계
  3. 논리적 설계
  4. 물리적 설계
  5. DB 구현

스키마 3계층

스키마란? 데이터베이스의 구조와 각종 제약 조건을 기술한 논리적 청사진

  • 외부 스키마
    • 논리적 구조 정의, 사용자 뷰
    • 사용자가 근하는 뷰에 해당하며, 데이터베이스의 일부분만을 보여줌
  • 개념 스키마
    • 전체적인 논리적 구조
    • 데이터베이스의 전체적인 논리적 구조를 정의하며, 모든 사용자에게 공통적으로 보이는 뷰
  • 내부 스키마
    • 데이터를 물리적으로 저장하는 방식을 정의하며, 데이터베이스 시스템 내부에서 사용됨
    • 물리적 저장장치 관점을 어떻게 배열할지에 대한 내용

관계대수 연산자

  • 순수 관계 연산자
    • 셀렉션 (Selection, σ): 릴레이션에서 조건을 만족하는 행(Tuple, 데이터)을 선택
    • 프로젝션 (Projection, 𝜋): 릴레이션에서 특정 열(Attribute, 속성)만 추출
    • 조인 (Join, ⨝): 두 릴레이션을 공통 속성을 기준으로 결합
    • 디비전 (Division, ÷): R 테이블이 S 테이블의 모든 튜플과 연관된 R 테이블의 요소를 추출
  • 일반 집합 연산자
    • 합집합 (Union, ⋃): 두 릴레이션의 모든 튜플을 합침
    • 교집합 (Intersection, ⋂): 두 릴레이션의 공통 튜플만 추출
    • 차집합 (Difference, −): R 테이블에 존재하지만 S 테이블에는 없는 튜플을 추출
    • 카티션 곱 (Cartesian Product, ×): 두 릴레이션의 모든 조합 생성

관계해석

  • 관계 데이터의 연산을 표현하는 방법으로, 관계 데이터 모델의 제안자인 코드(E. F. Codd)가 수학의 술어 해석(Predicate Calculus)에 기반을 두고 관계 데이터베이스를 위해 제안했다.
  • 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 지니며, 원하는 정보를 정의할 때 계산 수식을 사용한다.
  • 튜플 해석식을 사용하는 튜플 관계해석과 도메인 해석식을 사용하는 도메인 관계해석으로 구분된다.

테스트

화이트박스 테스트 검증 기준

  • 문장 검증 기준 (Statement Coverage)
    • 문장 1회
    • 모든 문장이 한 번 이상 실행된다.
  • 분기(결정) 검증 기준 (Decision Coverage)
    • T/F
    • 분기점은 조건문에서의 각 분기 또는 논리적 분기 지점을 나타내고, 각 분기는 프로그램의 특정 경로를 나타내며, 조건문의 참/거짓에 따라 결정된다.
    • 모든 코드 분기가 테스트되었을 때 100%의 분기 커버리지가 달성된다.
  • 조건 검증 기준 (Condition Coverage)
    • T/F, F/T
    • 각 조건이 참과 거짓으로 평가되는 모든 가능한 경우를 테스트한다.
    • 각 조건이 최소한 한 번은 참으로, 한 번은 거짓으로 평가되도록 한다.
  • 분기/조건 기준 (Condition Devicion Coverage)
    • T/T, F/F
    • 프로그램의 모든 분기점이 최소한 한 번 실행되었는지를 나타낸다.
    • 모든 코드 분기가 테스트되었을 때 100%의 분기 커버리지가 달성된다.
    • 프로그램의 모든 조건이 참과 거짓으로 평가되었는지를 나타낸다.
    • 각 조건을 만족하거나 만족하지 않는 경우를 테스트하여 100%의 조건 커버리지를 달성한다.

UML

UML은 시스템 분석, 설계, 구현 등 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원할하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어로, 사물, 관계, 다이어그램으로 이루어져있다.

  • 관계는 사물과 사물 사이의 연관성을 표현하는 것으로, 연관, 집합, 포함, 일반화 등 다양한 형태의 관계가 존재한다.
  • 클래스는 UML에 표현되는 사물의 하나로, 객체가 갖는 속성과 동작을 표현한다. 일반적으로 직사각형으로 표현하며, 직사각형 안에 이름, 속성, 동작을 표기한다.
  • 인터페이스는 클래스와 같은 UML에 표현되는 사물의 하나로, 클래스나 컴포넌트의 동작을 모아 놓은 것이며, 외부적으로 가시화되는 행동을 표현한다. 단독으로 사용되는 경우는 없으며, 인터페이스 구현을 위한 클래스 또는 컴포넌트와 함께 사용된다.

OSPF의 특징

  • RIP의 단점을 해결하여 새로운 기능을 지원하는 인터넷 프로토콜이다.
  • 인터넷 망에서 이용자가 최단 경로를 선정할 수 있도록 라우팅 정보에 노드 간의 거리 정보, 링크 상태 정보를 실시간으로 반영하여 최단 경로로 라우팅을 지원한다.
  • 대규모 네트워크에서 많이 사용된다.
  • 최단 경로 탐색에 Dijkstra 알고리즘을 사용한다.
  • 라우팅 정보에 변화가 생길 경우 변화된 네트워크 내의 모든 라우터에 알린다.
  • 링크 스테이트 라우팅 알고리즘을 사용하며, 하나의 자율 시스템(AS)에서 동작하면서 내부 라우팅 프로토콜의 그룹에 도달한다.

접근 통제

  • MAC (Mandatory Access Control, 강제적 접근 통제)
    • 주체, 객체 등급 기반 접근 권한 부여
    • 자원의 보안 레벨과 사용자의 보안 취급 인가를 비교하여 접근 제어를 한다.
    • 어떤 주체가 어떤 객체에 접근하려 할 때 양자의 보안 레벨(보안 등급)을 비교한다.
    • 높은 보안을 요하는 정보가 낮은 레벨의 주체에게 노출되지 않도록 접근을 제한하는 방법이다.
  • DAC (Discretionary Access Control, 임의적 접근 통제)
    • 접근 주체 신분 기반 접근 권한 부여
    • 접근 주체가 속해 있는 그룹의 신원에 근거하여 객체에 대한 접근을 제한하는 방법이다.
    • 자원의 소유자가 접근을 요청하는 사용자의 식별자를 확인하여 객체에 대한 접근을 통제하는 방법이다.
  • RBAC (Role-Based Access Control, 역할 기반 접근 통제)
    • 주체, 객체 역할 기반 권한 부여
    • 주체와 객체가 어떻게 상호작용하는지 결정하기 위해 중앙에서 관리되는 통제 모음을 사용한다.
    • 어떤 주체가 적절한 역할(Role)에 할당되고 역할에 적합한 접근 권한이 할당된 경우만 객체에 접근할 수 있는 방법이다.
    • 비임의적 접근제어(Non DAC)로 전통적인 MAC, DAC의 대체 수단으로 사용된다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.