728x90
728x90

이번 시간은 정보처리기사 실기에서 다루는 5장 인터페이스 구현에 대해서 정리를 해보았습니다.

 

* 이 글은 정보처리기사 공부 목적으로 쓴 글입니다. 그러다 보니 혹시 제가 잘못 작성한 부분이 있거나 수정이 필요하다면 댓글로 알려주시면 감사하겠습니다. 

 

 

인터페이스 종류 사용자 인터페이스 or 시스템 인터페이스
인터페이스 산출물 (인터페이스) 요구사항 → (인터페이스) 정의서 → (인터페이스) 명세서 → (인터페이스) 설계서
시스템 인터페이스 설계서 인터페이스 목록, 각 인터페이스 세부 정보를 정의한 문서
상세 기능별 인터페이스 명세서 주요항목 아명오개 전후파반
1. 인터페이스 ID
2. 인터페이스명
3. 오퍼레이션 이름
4. 오퍼레이션 개요
5. 사전 조건
6. 사후 조건
7. 파라미터
8. 반환값
인터페이스를 위한 모듈 연계 방식 1. EAI
2. ESB
EAI 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간 연계를 돕는 솔루션
EAI 구성요소 1. EAI 플랫폼
2. 어댑터 : 핵심장치. 데이터 입출력 도구
3. 브로커 : 포맷과 코드를 변환해주는 솔루션
4. 메시지 큐 : 비동기 메시지를 사용할 때 송수신하는 기술
5. 비즈니스 워크플로우 : 정의된 워크플로우에 따라 업무를 처리하는 기술
EAI 구축 유형 포허메하
1. Point-to-point : 가장 기초적인 1:1 단순 통합 방법
2. Hub & Spoke : 허브 시스템을 통한 중앙 집중 방식
3. Message Bus : 애플리케이션 사이에 미들웨어(버스)를 두어 연계
4. Hybrid : 그룹 내는 허브&스포크, 그룹 간은 메시지 버스
ESB 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션을 하나의 시스템으로 관리할 수 있도록 하는 아키텍처로, 미들웨어(버스)를 중심으로 애플리케이션 통합을 느슨한 결합 방식으로 지원
인터페이스 전송 시 데이터 표준 확인 절차 의미표준식별
1. 입출력 의미 파악
2. 데이터 표준 확인
3. 데이터 항목 식별
4. 데이터 표준 최종확인
컴포넌트 명세서 컴포넌트의 개요, 내부 클래스 동작과 같은 내용을 정의한 것 * 컴포넌트 : 특정 기능을 수행하기 위해 독립적으로 개발되고, 다른 부품과 조립되는 소프트웨어 프로그램
인터페이스 명세서 컴포넌트 명세서에 명시된 인터페이스 클래스의 세부 내용을 정의한 것
인터페이스 기능 구현 선생 전전수파 검후 결반
1. 대상자 선택 (대상이 될 데이터를 SQL로 선택)
2. 인터페이스 데이터 생성 (JSON 등 형식에 맞게 가공)
3. 인터페이스 데이터 전송 요청
4. 인터페이스 데이터 전송
5. 인터페이스 데이터 수신
6. 인터페이스 데이터 파싱
7. 인터페이스 데이터 검증 (포맷 및 제약조건 오류 검사)
8. 후속 기능 수행 (수신 시스템에 정의된 후속 기능 진행)
9. 수신 결과 생성 및 전송
10. 수신 측의 처리 결과 반환
JSON '키-값' 쌍으로 이루어진 데이터를 전달하기 위해, 인간이 읽을 수 있는 텍스트를 사용한 포맷 (AJAX에서 많이 사용)
JSON의 표현 자료형 1. 숫자
2. 문자열 (항상 "" 따옴표 사용!)
3. 배열 (대괄호 [ ] 표시)
4. 객체 (중괄호 { } 로 표시하며, 이름은 문자열을 쓴다)

----------------------------------------------------------------
{
  "이름": "코카콜라 제로",
  "가격": 2100,
  "판매처": ["쿠팡", "이마트", "롯데마트"]
}
----------------------------------------------------------------
XML HTML의 단점을 보완하여, 특수한 목적을 갖는 마크업 언어
XML의 특징 - 트리 구조이며, 모든 태그에는 종료 태그가 필수
- 속성값은 큰 따옴표(")로 묶고 대소문자를 구분함
AJAX 서버-클라 간 비동기적으로 데이터를 교환하기 위한 기술
AJAX의 주요기술 - XMLHttpRequest : 비동기 통신을 담당하는 자바스크립트 객체
- XML : HTML의 단점을 보완하여, 특수한 목적을 갖는 마크업 언어
- DOM : XML 문서를 트리 구조 형태로 접근하게 해주는 API
- XSLT (eXtensible Stylesheet Language Transformations) : XML 문서를 다른 XML 문서로 변환하는 데 사용하는 언어
- HTML : 웹 문서를 표현하는 마크업 언어
- CSS : 마크업 언어가 표시되는 방법을 기술하는 언어
AJAX의 동작 원리 1. 요청 이벤트 발생
2. 자바스크립트 호출
3. 자바스립트가 XMLHttpRequest 객체를 사용해 서버에 요청
    (비동기이므로 그동안 다른 일 처리)
4. 서버는 XMLHttpRequest 객체를 가지고 AJAX 요청 처리
5. 전달받은 데이터를 사용해 웹 페이지 일부만을 갱신하는 자바스크립트 호출
REST HTTP URI로 자원을 표시하고, HTTP 메서드를 통해 해당 자원에 대한 삽입, 삭제, 갱신 등의 명령을 적용하는 아키텍처
REST의 구성 리메메 1. 리소스 2. 메서드 3. 메시지
REST 메서드의 종류 1. POST [C]
2. GET [R]
3. PUT [D]
4. DELETE [D]
인터페이스 구현 방식 ① 데이터 통신 사용 : 인터페이스 객체 생성 후 데이터 통신으로 전송
② 인터페이스 개체(Entity) 사용 : 송신 시스템/수신 시스템에서 인터페이스 테이블 구현
DB 암호화 기법 애플티하
1. API 방식 : 애플리케이션 서버에 암호 모듈 적용 (애플리케이션 서버에 부하 발생)
2. 플러그인 방식 : DB 서버에 암호 모듈 적용 (DB서버에 부하 발생)
3. TDE 방식 : DBMS 커널이 자체적으로 암호화 기능 수행 (Transparent Data Encryption)
4. 하이브리드 방식 : API+플러그인 (부하 분산)
IPSec 네트워크 계층(3계층)에서 사용하는 보안 프로토콜.
인증 헤더(AH) + 암호화(ESP)를 이용
  - AH(인증) 프로토콜: MAC를 통해 인증 제공
  - ESP(암호화) 프로토콜 : MAC+암호화를 통해 인증+기밀성 제공
  - IKE(키관리) 프로토콜 : Key를 주고받는 알고리즘
SSL/TLS 전송계층(4계층)과 응용계층(7계층) 사이에서 안전한 데이터 전송을 보장하는 보안 프로토콜

구성요소 카흐르 CAHHR
 1. Change Ciper Spec Protocol : 협상된 Ciper Spec을 상대에게 알리는 프로토콜
 2. Alert Protocol : 경고 메시지 전달
 3. Heartbeat Protocol : 클라/서버가 정상 상태인지 확인
 4. Handshake Protocol : 클라/서버가 서로 인증하고 암호화 키를 협상
 5. Record Protocl : 협상된 Ciper Spec
S-HTTP 클라/서버 간 메시지를 암호화하는 보안 기술 (HTTP를 사용한 경우에만 가능)
인터페이스 구현 검증 도구 엑스피 엔셀웨
1. xUnit
2. STAF
3. FitNesse
4. NTAF
5. Selenium
6. Watir
xUnit Java, C++ 등 다양한 언어를 지원하는 단위 테스트 프레임워크
STAF 각 테스트 대상 분산 환경에 '데몬'을 사용하여 테스트를 수행
FitNesse
웹 기반 테스트 케이스를 지원
NTAF
STAF(재사용 및 확장성) + FitNesse(협업 기능) 장점을 통합한 NHN의 프레임워크
Selenium
다양한 브라우저와 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임워크
Watir
루비 기반의 웹 애플리케이션 테스트 프레임워크
인터페이스 감시 도구
1. 스카우터
2. 제니퍼
스카우터
애플리케이션 및 DB 모니터링 가능한 감시 도구
제니퍼
개발부터 운영에 이르기까지 전 생애주기 동안 모니터링 가능한 감시 도구
오류 처리 방법 화로테
1. 화면에서 오류를 인지하도록 구현
2. 오류 로그 생성
3. 관련 테이블에 오류 사항 기록
728x90
300x250