[정보처리기사] 실기 이건 외우자

SSOYEONG·2022년 4월 27일
0

정보처리기사

목록 보기
1/2
post-thumbnail

1. 요구사항 확인

소프트웨어 생명주기 모델 프로세스

  1. 요구사항 분석
  2. 설계
  3. 구현
  4. 테스트
  5. 유지보수

현행 시스템 파악 절차

  1. 구성/기능/인터페이스 파악
  2. 아키텍처 및 소프트웨어 구성 파악
  3. 하드웨어 및 네트워크 구성 파악

소프트웨어 아키텍처 4+1 뷰

  • 고객의 요구사항을 정리해 놓은 시나리오를 4개의 관점에서 바라보는 sw적인 접근 방법
  • 유스케이스 뷰
  • 논리 뷰
  • 프로세스 뷰
  • 구현 뷰
  • 배포 뷰

소프트웨어 아키텍처 패턴

  • SW를 설계할 때 참조할 수 있는 전형적인 해결 방식

디자인 패턴

  • SW 설계에서 공통으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴

생성 패턴

  • Builder: 생성과 구현을 분리해서 복잡한 객체를 생성
  • Prototype: 원형을 복사하여 필요한 부분만 수정하여 사용
  • Factory Method: 상위 클래스는 인터페이서 정의, 하위 클래스에서 오버라이딩해서.
  • Abstract Factory: 구체적인 클래스에 의존x, 동일한 주제의 다른 팩토리를 묶음
  • Singleton: 한 클래스에 한 객체만 존재하도록 제한

구조 패턴

  • Bridge: 추상화된 부분과 실제 구현 부분을 독립적으로 확장 가능
  • Decorator: 클래스에 필요한 기능을 추가해 나가는 패턴
  • Facade: 단순한 인터페이스 제공
  • Flyweight: 가상 인스턴스 제공, 클래스의 경량화
  • Proxy: 실제 객체에 대한 대리 객체
  • Composite: 객체들의 관계를 트리로 구성. 복합 객체와 단일 객체를 동일하게 취급
  • Adapter: 기존에 생성된 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할

행위 패턴

  • Chain of Responsibility: 한 객체가 처리하지 못하면 다음 객체로 넘어감
  • Command: 요청을 객체 형태로 캡슐화
  • Interpreter: 언어에 문법 표현을 정의하는 패턴
  • Iterator: 접근 잦은 객체에 대해 동일 인터페이스를 사용하도록
  • Mediator: 객체들 간 복잡한 상호작용을 캡슐화
  • Template Method: 캡슐화 하여 상위 작업의 구조를 바꾸지 않으면서 서브 클래스로 작업의 일부분을 수행
  • Observer: 상태가 바뀌면 의존하는 객체들에 연락이 간다.
  • Strategy: 행위를 클래스로 캡슐화해 동적으로 행위를 자유롭게 변경
  • Mememto: Undo 요청 가능
  • State: 상태에 따라 동일 동작을 다르게 처리해야 할 때
  • Visitor: 처리 기능을 분리하여 별도의 클래스로 구성

개발 기술 환경 현행 시스템

운영체제 현행 시스템 분석

  • PC - 윈도즈, 유닉스, 리눅스
  • 모바일 - 안드로이드, iOS

네트워크 현행 시스템 분석

  • OSI 7계층

DBMS 현행 시스템 분석

미들웨어 현행 시스템 분석

요구사항 개발 단계 구성

  • 도출 > 분석 > 명세 > 확인

2. 화면 설계

UI 설계 원칙

  • 직관성: 누구나 쉽게 이해하고 사용할 수 있어야 함
  • 유효성: 정확하고 완벽하게 사용자의 목표가 달성될 수 있어야 함
  • 학습성: 모두가 쉽게 배우고 사용할 수 있어야 함
  • 유연성: 사용자의 요구사항을 최대한 수용하고, 실수를 방지할 수 있어야 함

UI 화면 설계 구분

  • 와이어프레임: 간략한 흐름을 공유하기 위해 화면 단위의 레이아웃을 설계
  • 스토리보드: 모든 정보가 담겨 있는 설계 산출물
  • 프로토타입: 와이어프레임 또는 스토리보드에 동적 효과를 적용하여 시뮬레이션 가능한 시제품

UML의 구성요소

  • 사물 / 관계 / 다이어그램

UML 다이어그램

구조적(정적) 다이어그램

  • 클래스
    • 연관(Association)
    • 의존(Dependency)
    • 일반화(Generalization)
      개념화, 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지 표현
    • 실체화(Realization)
    • 추상 클래스나 인터페이스를 상속 받아 자식 클래스가 추상 메서드를 구현할 때 사용
      사물이 할 수 있거나, 해야 하는 기능으로 서로를 그룹화할 수 있는 관계를 표현
    • 포함(Composition)
    • 집합(Aggregation)
      추상화, 하나의 사물이 다른 사물에 포함되어 있는 관계 표현
  • 객체
  • 컴포넌트
  • 배치
  • 복합체 구조
  • 패키지

행위적(동적) 다이어그램

  • 유즈케이스
  • 시퀀스
  • 커뮤니케이션: 시스템이나 객체들이 메시지를 주고받으며 시간에 따라 상호 작용하는 과정을 표현
  • 상태: 하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 상호 작용에 따른 상태 변화를 표현
  • 활동: 시스템이 어떤 기능을 수행하는지 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서대로 표현
  • 타이밍

3. 데이터 입출력 구현

데이터 모델 표시요소

  • 연산
  • 구조
  • 제약 조건

데이터 모델 절차

  • 요구조건 분석
  • 개념적 설계
    현실 세계에 대한 인식을 추상적, 개념적으로 표혀하여 개념적 구조를 도출하는 과정으로 주요 산출물에는 E-R 다이어그램이 있다.
  • 논리적 설계
    목표 DBMS에 맞는 스키마 설계, 트랜잭션 인터페이스를 설계하는 정규화 과정을 수행한다.
  • 물리적 설계
    특정 DBMS의 특성 및 성능을 고려하여 데이터베이스 저장 구조로 변환하는 과정으로 결과로 나오는 명세서는 테이블 정의서 등이 있다.

논리 데이터 모델링의 속성

  • 개체
  • 속성
  • 관계
  • // E-R 모델

정규화의 단계

  • 1정규형(1NF)
    원자값으로 구성
  • 2정규형(2NF)
    부분 함속 종속 제거. 완전 함수적 종속 관계
  • 3정규형(3NF)
    이행함수 종속 제거
  • 보이스-코드 정규형(BCNF)
    결정자 후보 키가 아닌 함수 종속 제거. 모든 결정자가 후보키가 되도록.
  • 4정규형(4NF)
    다치 종속 제거
  • 5정규형(5NF)
    조인 종속 제거

정규화의 개념

  • 정규화는 관계형 데이터 모델에서 데이터의 중복성을 제거하여 이상 현상을 방지하고, 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는 과정이다.

이상 현상

  • 이상 현상은 데이터의 중복성으로 인해 릴레이션을 조작할 때 발생하는 비합리적 현상이다.
  • 삽입 이상 / 삭제 이상 / 갱신 이상

반 정규화의 개념

  • 반 정규화는 정규화된 엔티티, 속성 ,관계에 대해 성능 향상과 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법이다.

데이터베이스의 개념

  • 데이터베이스는 다수의 인원, 시스템 혹은 프로그램이 사용할 목적으로 통합하여 관리되는 데이터의 집합이다.
  • 통합 / 저장 / 운영 / 공용 데이터이다.

4. 통합 구현

주요 연계 기술

  • 직접연계방식 / 간접연계방식

  • DB 링크: 데이터베이스에서 제공하는 DB 링크 객체를 이용

  • DB 연결: DB 커넥션 풀을 생성하고 이용하여 연결
    커넥션 풀: DB와 연결된 커넥션을 미리 만들어서 풀에 저장해 두고 필요할 때 커넥션을 풀에서 가져다 쓰고 다시 풀에 반환하는 기법

  • API: 데이터를 주고받기 위해 규격을 정해놓은 인터페이스

  • JDBC: 수신 시스템의 프로그램에서 JDBC 드라이버를 이용하여 송신 시스템 DB와 연결
    JDBC: 자바에서 DB에 접속할 수 있도록 하는 자바 API

  • 하이퍼 링크: 다른 페이지로 이동하게 해주는속성

  • EAI

  • 웹 서비스 / ESB

  • 소켓: 소켓을 생성하여 포트를 할당하고, 클라이언트의 요청을 연결하여 통신

연계 모듈 기능 구현

  • EAI/ESB 방식과 웹 서비스 방식으로 구분된다.

EAI 방식

  • 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션이다.
  • 포인트 투 포인트
  • 허브 앤 스포크
  • 메시지 버스
  • 하이브리드

ESB 방식

  • 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간을 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍처이다.

웹 서비스 방식

  • 웹 서비스는 네트워크에 분산된 정보를 서비스 형태로 개방하여 표준화된 방식으로 공유하는 기술로써 서비스 지향 아키텍처 개념을 실현한다.
  • SOAP, WSDL, UDDI 방식 존재

SOAP

  • SOAP는 HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜이다.

WSDL

  • WSDL은 웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구현되어 있는 언어이다.

UDDI

  • 웹 서비스에 대한 정보인 WSDL을 등록하고 검색하기 위한 저장소로 공개적으로 접근, 검색이 가능한 레지스트리이자 표준이다.

IPC 개념

  • IPC(Inter-Process Communication)
  • 운영체제에서 프로세스 간 서로 데이터를 주고받기 위한 통신 기술이다.
  • 주요 기법: 메시지 큐 / 공유메모리 / 소켓 / 세마포어

5. 인터페이스 구현

JSON

  • JSON은 "key-value 쌍"으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다.
  • AJAX에서 많이 사용되고 XML을 대체하는 주요 데이터 포맷이다.

XML

  • XML은 HTML의 단점을 보완한 인터넷 언어로, 특수한 목적을 갖는 마크업 언어이다.

AJAX

  • AJAX는 자바스크립트를 사용하여 웹 서버와 클라이언트 간 비동기적으로 XML 데이터를 교환하고 조작하기 위한 웹 기술이다.
  • 브라우저가 가지고 있는 XMLHttpRequest 객체를 이용해서 전체 페이지를 새로 로드하지 않고 필요한 일부 페이지의 데이터만을 로드하는 기법이다.

REST

  • REST는 웹과 같은 분산 하이퍼미디어 환경에서 자원의 존재/상태 정보를 표준화된 HTTP 메서드로 주고받는 웹 아키텍처이다.
  • 리소스, 메서드, 메시지의 3가지 요소로 구성된다.

데이터 통신 시 데이터 탈취 위험 - 스니핑

  • 스니핑이란 공격 대상에게 직접 공격을 하지 않고 데이터만 몰래 들여다보는 수동적 공격기법이다.

시큐어 코딩 가이드

  • 입보시 에코캡아
  • 입력데이터 검증 및 표현
  • 보안 기능
  • 시간 및 상태
  • 에러 처리
  • 코드 오류
  • 캡슐화
  • API 오용

6. 프로그래밍 언어 활용

식별자 표기법

  • 카멜 표기법
    여러 단어가 이어지면 첫 단어 시작만 소문자, 나머지 단어의 첫 글자는 대문자로
    ex) inputFunction
  • 파스칼 표기법
    여러 단어가 이어지면 각 단어의 첫 글자는 대문자로
    ex) InputFunction
  • 스네이크 표기법
    여러 단어가 이어지면 단어 사이에 언더바를 넣는
    ex) input_function
  • 헝가리안 표기법
    두어에 자료형을 붙이는
    ex) nScore, cCharacter, szStr

라이브러리의 개념

  • 필요한 프로그램을 모아둔 집합

패키지의 개념

  • 모듈을 디렉터리 형식으로 구조화한 라이브러리

7. SQL 응용

트랜잭션의 특성

  • ACID
  • Atomicity 원자성
  • Consistency 일관성
  • Isolation 고립성, 격리성
  • Durability 영속성

스키마 종류

  • 외부 스키마: 사용자나 개발자의 관점에서 필요로 하는 DB의 논리적 구조
  • 개념 스키마: DB의 전체적인 논리적 구조
  • 내부 스키마: 물리적 저장장치의 관점에서 보는 DB 구조

절차형 SQL 종류

  • 프로시저
    일련의 쿼리들을 마치 하나의 함수처럼 실행하기 위한 쿼리의 집합
    SQL을 이용해 생성된 데이터를 조작하는 프로그램으로 데이터베이스 내부에 저장되고 일정한 조건이 되면 자동으로 수행하는 프로그램
  • 사용자 정의 함수
    일련의 SQL 처리를 수행하고, 수행 결과를 단일 값으로 반환할 수 있는 절차형 SQL
  • 트리거
    DB 시스템에서 삽입, 갱신, 삭제 등의 이벤트가 발생할 때마다 관련 작업이 자동으로 수행되는 절차형 SQL

사원 테이블에서 생년월일이라는 컬럼을 삭제

ALTER TABLE 사원 DROP 생년월일;

관리자가 사용자 홍길동에게 '사원'테이블에 대해 SELECT할 수 있는 권한을 부여

GRANT SELECT ON 사원 TO 홍길동;

RANK 함수를 이용하여 연봉을 높은 순에서 낮은 순으로 정렬함

SELECT 이름, 연봉, RANK() OVER (ORDER BY 연봉 DESC) 순위 FROM 사원;

student 테이블의 name 속성에 idx_name를 인덱스 명으로 하는 인덱스를 생성하는 SQL문을 작성하시오.

CREATE INDEX idx_name ON student(name);

8. 서버 프로그램 구현

개발 도구의 분류

  • 빌드 도구
  • 구현 도구
  • 테스트 도구
  • 형상 관리 도구

서버 하드웨어 개발환경

  • 웹 서버
  • 웹 애플리케이션 서버
  • 데이터베이스 서버
  • 파일 서버

클라이언트 하드웨어 개발환경

  • 클라이언트 프로그램
  • 웹 브라우저
  • 모바일 앱
  • 모바일 웹

소프트웨어 개발환경

  • 운영체제
  • 미들웨어
  • DBMS

형상 관리의 절차

형상 식별 > 형상 통제 > 형상 감사 > 형상 기록

소프트웨어 모듈 결합도

  • 자료 결합도
    전달되는 파라미터를 통해서만 모듈 간의 상호 작용이 일어나는 경우
  • 스탬프 결합도
    배열이나 오브젝트 등 자료구조가 전달되는 경우
  • 제어 결합도
    처리 대상의 값만 전달되는 것이 아니라 어떻게 처리해야 하는지 제어 요소도 전달되는 경우
  • 외부 결합도
    어떤 모듈에서 반환한 값을 다른 모듈에서 참조해서 사용하는 경우
  • 공통 결합도
    파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 갱신하는 경우
  • 내용 결합도
    다른 모듈 내부에 있는 변수나 기능을 사용하는 경우

소프트웨어 모듈 응집도

  • 기능적 응집도
    하나의 기능에 모두 기여하고 밀접하게 관련되어 있다.
  • 순차적 응집도
    모듈 내의 한 활동으로부터 나온 출력값을 모듈 내의 다른 활동이 사용하는 경우
  • 통신적 응집도
    서로 다른 기능을 수행하지만 동일한 입출력을 사용한다.
  • 절차적 응집도
    입출력 간 연관성은 없으나, 순서에 따라 수행할 필요가 있다.
  • 시간적 응집도
    특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리하는 경우
  • 논리적 응집도
    논리적으로만 같은 그룹으로 분류되는
  • 우연적 응집도
    모듈 내부의 각 구성요소들이 연관이 없을 경우

9. 소프트웨어 개발 보안 구축

SW 개발 보안의 3대 요소

  • 기밀성: 인가되지 않은 개인 혹은 시스템 접근을 차단하는 특성
  • 무결성: 정당한 방법이 아니라면 데이터가 변경될 수 없음
  • 가용성: 권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속해서 사용할 수 있음을 보장하는 특성

DoS 공격의 종류

  • 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격
  • SYN Flooding: TCP 프로토콜의 구조적 문제 이용. SYN 패킷만 보내고 ACK 발송 X.
  • Smufing(스머핑): 출발 주소를 공격 대상의 IP로 설정. 직접 브로드캐스팅.
  • PoD(죽음의 핑): ICMP 패킷 크게 만들어 재조합 과정에서 부하 발생
  • Land Attack(랜드 어택): 출발지 IP == 목적지 IP
  • Tear Drop(티어 드롭): IP패킷 재조합 과정에서 잘못된 Fragment offset에 의해.

DRDos 공격

  • 세션 하이재킹: TCP의 세션 관리 취약점을 이용한 공격기법

인증 기술의 유형

  • 지식기반 인증: ID/패스워드
  • 소지기반 인증: 공인인증서, OTP
  • 생체기반 인증: 홍채, 정맥, 얼굴, 지문
  • 특징기반 인증: 서명, 발걸음, 몸짓

서버 접근 통제의 유형

  • 임의적 접근통제 (DAC): 주체의 신분에 근거하여 객체에 대한 접근을 제한
  • 강제적 접근통제 (MAC): 객체에 포함된 정보의 허용등급에 대하여
  • 역할 기반 접근 통제 (RBAC): 중앙 관리자가 사용자와 시스템의 상호관계를 통제하며 조직 내 맡은 역할에 기초하여

3A

  • 3A는 유무선 이동 및 인터넷 환경에서 가입자에 대한 안전하고 신뢰성 있는 인증 등을 제공하는 정보 보호 기술이다.
  • 인증 (Authentication)
  • 권한 부여 (Authorization)
  • 계정 관리 (Accounting)

암호 알고리즘 방식

대칭 키 암호화 알고리즘

  • DES: 1975년 IBM 개발 / 블록 암호화 알고리즘 / 블록 크기 64bit
  • SEED: 1999년 국내 한국인터넷진흥원 / 블록 암호화 알고리즘 / 블록 크기 128bit
  • AES: 블록 암호화 알고리즘 / DES 문제 극복 / 라운드 수 분류

비대칭 키 암호화 알고리즘

  • RSA: 소인수 분해 기반 / 공개키 암호화 알고리즘

해시 암호화 알고리즘

  • MD5: MD4를 개선한 암호화 알고리즘 / 512비트 입력에 대해 128비트 해시값 생성
  • SHA-1: 1993년 NSA 미 정부 표준 / 160비트 해시값 생성

데이터 암호화 전송

  • 민감한 정보를 통신 채널을 통하여 전송 시 다음과 같은 보안 채널을 활용한다.
  • IPSec: IP 계층에서 무결성과 인증을 보장하는 인증 헤더(AH)와 기밀성을 보장하는 암호화(ESP)를 이용한 IP 보안 프로토콜
  • SSL/TLS: Transport 계층과 Presentation 계층 사이에서 클라이언트와 서버 간의 데이터 무결성을 보장하는 보안 프로토콜
  • S-HTTP: 웹 상에서 네트워크 트래픽을 암호화하는 방법. 모든 메시지를 각각 암호화하여 전송

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

  • XSS: 웹페이지에 포함된 부적절한 스크립트가 실행되는 공격
  • 사이트 간 요청 위조(CSRF): 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격
  • SQL 삽입: 악의적인 SQL 구문을 삽입, 실행시켜서 정보 탈취 및 조작

10. 애플리케이션 테스트 관리

화이트박스 테스트

  • 각 응용 프로그램의 내부 구조와 동작을 검사하는 소프트웨어 테스트
  • 구문(문장) 커버리지: 모든 명령문을 적어도 한 번 수행
  • 결정(선택, 분기) 커버리지: 결정 포인트 내의 전체 조건식이 적어도 한 번은 참과 거짓의 결과를 수행
  • 조건 커버리지: 결정 포인트 내의 개별 조건식이 적어도 한 번은 참과 거짓의 결과가 되도록 수행
  • 조건/결정 커버리지: 전체 조건식뿐만 아니라 개별 조건식도 참 한 번, 거짓 한 번 결과가 되도록 수행

블랙박스 테스트

  • 외부 사용자의 요구사항 명세를 보면서 수행하는 기능 테스트
  • 동등분할 테스트: 입력 데이터의 영역을 유사한 도메인별로 그룹핑하여 대푯값 테스트
  • 경계값 분석 테스트

테스트 목적에 따른 분류

  • 회복 테스트: 시스템의 정상적 복귀 여부를 테스트
  • 안전 테스트: 불법적인 sw가 시스템을 파괴하지 못하도록 결함을 미리 점검
  • 성능 테스트: 응답 시간, 특정 시간 내 업무 처리량, 반응 속도 등을 측정
  • 구조 테스트: 시스템의 내부 논리 경로, 소스 코드의 복잡도를 평가
  • 회귀 테스트: 수정한 시스템에서 새롭게 유입된 오류가 없는지 확인하는 반복 테스트 기법
  • 병행 테스트: 변경된 시스템과 기존 시스템에 동일한 데이터를 입력 후 결과를 비교

정적 테스트

  • 동료 검토: 요구사항 명세서 작성자가 요구사항 명세서를 설명하며 결함을 발견
  • 인스펙션: 다른 전문가 또는 팀이 검사하여 문제를 식별하고 해결을 찾아냄
  • 워크스루: 검토 자료를 바탕으로 사전 검토한 후 짧은 시간 동안 회의를 진행

테스트 케이스 구성요소

  • 테스트 조건 / 테스트 데이터 / 예상 결과

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

  • 처리량 / 응답 시간 / 경과 시간 / 자원 사용률

리팩토링

  • 기능을 변경하지 않고, 소스 코드를 수정하여 가용성 및 가독성을 높이는 기법
  • 유지보수성 향상 / 유연한 시스템 / 생산성 향상 / 품질 향상

11. 응용 SW 기초 기술 활용

네트워크란?

  • 원하는 정보를 원하는 수신자 또는 기기에 정확하게 전송하기 위한 기반 인프라이다.

OSI 7계층

  • 아파서 티내다 피
  • Application Layer(응용)
    사용자와 네트워크 간 응용서비스 연결, 데이터 생성
  • Presentation Layer(표현)
    데이터 형식 설정, 부호교환, 암/복호화
  • Session Layer(세션)
    송수신 간의 논리적인 연결, 연결 접속, 동기제어, 응용 프로그램 간의 대화를 유지하기 위한 구조
  • Transport Layer(전송)
    프로세스 간 데이터 분할, 재조립, 흐름 제어, 오류 제어, 혼잡 제어
  • Network Layer(네트워크)
    단말기 간 데이터 전송을 위한 최적화된 경로 제공
  • Data Link Layer(데이터 링크)
    인접 시스템 간 데이터 전송, 회선 제어, 흐름 제어, 전송오류 제어, 오류 검출 / 재전송
  • Physical Layer(물리)
    두 장치 간 기계적, 전기적, 기능적 특성에 대한 규칙 정의
    0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환

네트워크 장비

  • 1계층 장비 - 허브
    여러 대의 컴퓨터를 연결하여 네트워크로 보내거나, 하나의 네트워크로 수신된 정보를 여러 대의 컴퓨터로 송신하기 위한 장비

  • 2계층 장비 - 브리지
    두 개의 근거리통신망(LAN)을 서로 연결해 주는 통신망 연결 장치

  • 3계층 장비 - 라우터
    LAN-LAN 혹인 LAN-WAN을 연결하기 위한 인터넷 네트워킹 장비
    패킷 위치 추출, 최적 경로 지정, 경로를 따라 패킷을 전송

프로토콜

  • 프로토콜은 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활히 하기 위한 표준화된 통신규약이다.
  • 프로토콜의 3요소 - 구문 / 의미 / 타이밍
  • 특징
    단편화: 전송이 가능한 작은 블록으로 나누어지는 기법
    재조립: 단편화되어 온 조각들을 원래 데이터로 복원하는 기법
    캡술화: 상위 계층의 데이터에 각종 정보를 추가하여 하위 계층으로 보내는 기법
    연결 제어: 데이터의 전송량이나 속도를 제어하는 기법
    오류 제어: 전송 중 잃어버리는 데이터나 오류가 발생한 데이터를 검증하는 제어 기법
    동기화: 송신과 수신 측의 시점을 맞추는 기법
    다중화: 하나의 통신 회선에 여러 기기들이 접속할 수 있는 기술
    주소 지정: 송신과 수신지의 주소를 부여하여 정확한 데이터 전송을 보장하는 기법

패킷 교환 방식 (<-> 서킷 교환 방식)

  • 데이터를 패킷 단위로 전송
  • 데이터그램 방식: 연결 경로를 확립하지 않고 순서에 무관하게 패킷을 독립적으로 전송
  • 가상회선 방식: 패킷 전송 전, 송수신 간의 논리적 통신 경로를 미리 설정

애드 혹 네트워크

  • 에드 혹 네트워크는 노드들에 의해 자율적으로 구성되는 기반 구조가 없는 네트워크이다.
  • 기반 네트워크 장치 필요 x
  • 활용분야: 긴급 구조, 긴급 회의, 전쟁터에서의 군사 네트워크

12. 제품 소프트웨어 패키징

제품 소프트웨어 패키징

  • 개발이 완료된 제품 소프트웨어를 고객에게 전달하기 위한 형태로 포장하는 것

릴리즈 노트

  • 최종 사용자인 고객에게 개발 과정에서 정리된 제품의 릴리지 정보를 제공하는 문서
  • 헤더: 문서 이름, 제품 이름, 버전 번호, 릴리즈 날짜, 참고 날짜, 노트 버전
  • 개요 | 목적 | 이슈 요약

디지털 저작권 관리(DRM)

DRM 구성요소

  • 콘텐츠 제공자 | 콘텐츠 소비자 | 콘텐츠 분배자
  • 클리어링 하우스: 저작권에 대한 사용 권한, 라이센스 발급, 사용량에 따른 관리 등을 수행
  • DRM 컨트롤러: 배포된 디지털 콘텐츠의 이용 권한을 통제
  • DRM 컨텐츠 | 패키저 | 보안 컨테이너

제품 소프트웨어 매뉴얼

  • 사용자 측면에서 패키징 이후 설치, 제품 소프트웨어를 사용하는 데 필요한 주요 내용을 기록한 문서
  • 설치 매뉴얼 / 사용자 매뉴얼이 있다.

제품 소프트웨어 사용자 매뉴얼

작성 프로세스

  1. 작성 지침 정의
  2. 사용자 매뉴얼 구성요소 정의
  3. 구성요소별 내용 작성
  4. 사용자 매뉴얼 검토

백업의 유형

  • 전체 백업: 데이터 전체를 백업
  • 차등 백업: 마지막 전체 백업 이후 변경된 데이터를 백업
  • 증분 백업: 정해진 시간을 기준으로 그 이후 변경된 데이터만을 백업
profile
Übermensch

0개의 댓글