-
(정보처리기사 실기) 인터페이스 구현정보처리기사/실기 2020. 7. 21. 11:55
인터페이스 설계 확인
인터페이스 설계서 : 이기종 시스템 및 컴포넌트 간 데이터 교환 및 처리를 위해 교환되는 데이터, 업무, 송수신 주체등이 정의된 문서
인터페이스 목록
-인터페이스 번호 : 같은 종류의 인터페이스 별로 부여된 번호
-일련번호 : 인터페이스 번호 내에서 부여된 순차적인 번호
-인터페이스 ID : 인터페이스를 구분하기 위한 식별자
-인터페이스 명 : 인터페이스의 목적을 나타냄
-송신 시스템 : 데이터 전송
-수신 시스템 : 수신한 데이터를 이용
-대내외 구분 : 기업 내부 시스템 또는 내/외부 시스템 간 발생 여부
-연계 방식 : 웹서비스, FTP, db link, socket등 아키텍처에서 정의한 인터페이스 방식
-통신 유형 : 동기/ 비동기
-처리 유형 : 실시간, 배치, 지연처리 등
-주기 : 발생 주기
-데이터 형식 : 고정길기, xml 같은 데이터 포맷
-요구사항 ID
인터페이스 명세 : 인터페이스가 되는 데이터, 데이터 형식, 송수신 시스템의 정보등을 구체화
상세 기능 인터페이스 정의서 : 데이터 송/수신 시스템간의 데이터 저장소와 속성등의 상세내역
상세 기능 인터페이스 정의서 주요 항목
- 인터페이스 ID : 인터페이스 구분을 위한 식별자
- 인터페이스 명 : 인터페이스를 나타내는 고유 명칭
- 오퍼레이션 명 : 해당 인터페이스의 세부 동작 명칭
- 오퍼레이션 개요 : 세부 동작에 대한 설명
- 사전 조건 : 정상적으로 작동하기 위한 사전 완료 조건 기술
- 사후 조건 : 동작이 정상적으로 작동된 이후에 발생되는 조건 기술
- 파라미터 : 구성 항목 값
- 변환 값 : 전송 후 반환 값
정적 동적 모형을통한 인터페이스 설계서 : 각 시스템의 구성요소를 표현한 다이어그램을 활용하여 시스템, 컴포넌트별 인터페이스와 요구조건을 확인
인터페이스 설계서의 내부 외부 모듈의 기능 확인
인터페이스 정의서를 통한 기능 확인
대상
- 시스템 인터페이스 정의서 : 외부 및 내부의 기능 확인
- 상세 기능 인터페이스 정의서 : 외부 및 내부의 상세 기능 확인
정적/동적 모형을 통한 기능 확인 : 다이어그램을 통해 내/외부 모듈의 기능 확인
공통적으로 제공되는 기능과 데이터의 인터페이스 확인
-인터페이스 설계서를 통한 공통 기능 확인 : 공통적으로 제공되는 기능 확인
-인터페이스 설계서를 통한 데이터 인터페이스 확인 : 공통 기능을 식별하고 이를 중심으로 데이터 인터페이스 항목 확인
외부, 내부 모듈 연계 방법 : EAI와 ESB
EAI : 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달,연계,통합 하는 솔루션
EAI 구축 유형
- 포인트 투 포인트 (Point to point) : 1:1 통합방법
- 허브 앤 스포크( hub & spoke) : 허브 시스템을 이용, 허브 장애시 전체 에러
- 메시지 버스 (message bus) : 애플리케이션 사이에 버스를 두는 미들웨어 통합 방식
- 하이브리드(hybrid) : 그룹 내는 허브 앤 스포크, 그룹 간에는 메시지 버스 방식 사용
ESB : 서로 다른 플랫폼 및 애플리케이션들 간 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향
버스를 중심으로 호환, 애플리케이션 통합을 느슨한 결합 방식으로 지원
느슨한 결합 : 서비스를 변경하더라도 연결된 다른 서비스에 영향을 주지 않는 구조
EAI 와 ESB 특징
EAI ESB
기업 내부의 이기종 모듈 통합 기업간의 서비스 교환을 위한 통합
어댑터, 브로커, 메시지 큐 웹서비스, 지능형 라우터, 포맷 변환
단단한 통합 느슨한 통합
기업 내부 기업 외부
송/수신 시스템 간 인터페이스 표준 확인 절차
1.데이터 인터페이스 입/출력 의미 파악
2.데이터 인터페이스 입/출력 의미 파악을 통한 데이터 표준 확인
3.인터페이스 데이터 항목 식별
4.데이터 표준 최종 확인
인터페이스 기능 구현
인터페이스 기능 구현 : 연계 대상 모듈간의 세부 설계서를 확인하여 일관되고 정형화 된 기능 구현
세부 설계서 종류
- 컴포넌트 명세서 : 컴포넌트의 개요, 내부 클래스의 동작, 인터페이스를 통해 외부와 통신하는 명세
-인터페이스 명세서 : 인터페이스 클래스의 세부적인 조건 및 기능을 명시한 명세서
- 인터페이스 ID
- 인터페이스 명
- 오퍼레이션 명
- 오퍼레이션 개요
- 사전 조건
- 사후 조건
- 파라미터
- 변환 값
인터페이스 기능 정의 사례
송신 측에서 필요한 대상을 선택하여 수신 측에 데이터 전송 : 대상자 선택, 인터페이스 데이터 생성
필요 항목에 대해서 데이터를 전달 : 인터페이스 데이터 전송, 인터페이스 데이터 수신
전달 후 수신 측으로부터 전달 여부에 대한 값을 반환 : 인터페이스 수신 결과 생성, 전송 , 수신측에서 처리한 인터페이스 결과 반환
정의된 인터페이스 기능에 대한 정형화
-기능을 표준화하고 사람들이 보기 쉽게 정형화
-하드웨어나 소프트웨어에 의존적이지 않게 작성하고 가독성을 높이기 위해 유스케이스 다이어그램으로 작성
정의된 인터페이스 기능 구현 분석
송신 측에서 필요한 대상을 선택하여 수신 측에 데이터 전송
-대상자 선택
-인터페이스 데이터 생성 : 제이슨 또는 테이블 형식에 맞게
-인터페이스 데이터 전송 요청
필요 항목에 대해서 데이터를 전달
-인터페이스 데이터 전송 : 레스트 방식, DB커넥션을 이용한 DB프로시저, 트리거 활용
-인터페이스 데이터 수신
-인터페이스 데이터 파싱
-인터페이스 데이터 검증
-후속 기능 수행
전달 후 수신 측으로부터 전달 여부에 대한 값을 반환
-인터페이스 수신 결과 생성, 전송
-수신측에서 처리한 인터페이스 결과 변환
인터페이스 구현 : 데이터 통신 이용 방법, 인터페이스 개체를 사용하여 구현하는 방법
데이터 통신을 이용한 인터페이스 구현
- 인터페이스 객체 생성 구현 : SQL을 통하여 선택하여 제이슨으로 생성
-인터페이스 객체 전송 후 전송 결과를 수신측에서 반환 받도록 처리 : AJAX 기술을 이용하여 수신측에 송신
수신측의 결과값은 송신측에 True / False 값 전달
AJAX : 자바 스크립트를 사용한 비동기 처리 통신 기술, 클라이언트와 서버가 XML데이터를 주고 받음
인터페이스 개체를 사용하여 인터페이스 구현
-송신 시스템의 인터페이스 테이블 : 데이터 전송을 위해 DB커넥션이 수신측 인터페이스 테이블과 연계 되게 구현
프로시저, 트리거, 배치작업으로 데이터 전송
-수신 시스템의 인터페이스 테이블 : 사전에 정의된 데이터 트랜잭션을 진행할 수 있게 구현
인터페이스 예외 처리 방안
데이터 통신을 사용한 인터페이스에서 예외 처리 사례
송신측에서 예외 처리 방법
시스템 환경 : 네트워크 불안정(404 오류)
프로그램 자체 원인 : 프로세스의 논리적 결함
수신측에서 예외 처리 방법
시스템 환경 : 네트워크 및 서버 불안정
수신 데이터 : 데이터 정합성 체크
프로그램 자체 원인 : 수신 인터페이스 데이터 처리 시 프로그램의 논리적 결함
인터페이스 개체를 사용하는 인터페이스에서 예외 처리 사례
송신 인터페이스 테이블에서 예외 처리 방법
-인터페이스 데이터 생성
-인터페이스 테이블 생성
-인터페이스 데이터 전송
수신 인터페이스 테이블에서 예외 처리 방법
-인터페이스 데이터 읽기
-데이터 트랜잭션
-처리 결과 응답
인터페이스 보안 기능 적용
인터페이스 보안 취약점
-데이터 통신 시 데이터 탈취 위협 : 송/수신 시스템 간의 데이터 통신 시 스니핑을 통해 데이터 감청 위협 존재
스니핑 : 직접 공격하지 않고 데이터만 몰래 들여다 보는 기법
-데이터 통신 시 데이터 위/변조 위협
시큐어 코딩 가이드
-입력 데이터 검증 및 표현
-보안 기능 : 인증,접근제어,기밀성,암호화 등의 적절
-시간 및 상태 : 공유 자원의 접근 직렬화, 병렬 실행 가능 프레임워크 사용
-에러 처리
-코드 오류
-캡슐화
-API 오용 : 취약 API 검증
직렬화 : 데이터 구조나 오브젝트를 다른 컴퓨팅 환경으로 재구성 가능할 수 있는 포맷
데이터베이스 암호화 알고리즘 : 양방향 암호화 알고리즘인 대칭키, 비대칭키, 일방향인 해시 알고리즘이 있다.
-대칭키 암호화 알고리즘 : 암/복호화에 같은 암호키 사용 (ARIA, SEED)
-비대칭키 암호화 알고리즘 : 공개키와 비밀키를 사용하는 알고리즘 (RSA, ECC, ECDSA)
-해시 암호화 알고리즘 : 원래 값을 알아낼 수 없는 일방향 알고리즘 (SHA-256,512, HAS-160)
데이터베이스 암호화 기법
-API 방식 : 애플리케이션 레벨에서 암호 모듈 작용
-Plug In 방식 : DB레벨의 확장성 프로시저 이용
-Hybrid 방식 : API + Plug In 방식
데이터 암호화 전송 : IPSec, SSL/TLS
IPSec : IP 계층(3계층)에서 무결성과 인증을 보장, 기밀성 보장 프로토콜
SSL/TLS : TCP/IP 계층 사이에서 웹 데이터 암호화 및 전송시 기밀성 보장 공개키 기반 프로토콜
네트워크 구간에 대한 보안 기능 적용 사례
전송 계층 보안
-상대방 인증 :IPSec AH, IKE
-데이터 기밀성 보장 : IPSec ESP
AH : 체크섬을 이용한 데이터 인증, 무결성 보장
IKE : 키 교환 알고리즘
ESP : 암호화 알고리즘을 활용한 캡슐화 기반 기밀성 보장 프로토콜
응용 계층 보안
-서버만 공개키 인증서를 가지고 통신 : SSL 인증
-연결 단위 외 메시지 단위로도 인증 및 암호화 필요 : S-HTTP로 메시지 암호화
애플리케이션 보안 기능 적용
-비인가자 접근 권한 관리
-악의적 코드 삽입 금지
-악의적 시도 시 에러 처리
데이터베이스 보안 기능 적용
-데이터베이스 접근 권한
-악의적 코드 삽입 금지
-민감 데이터 관리
-악의적 시도시 에러 처리
인터페이스 구현 검증
인터페이스 구현 검증 도구
-인터페이스 동작 검증 및 모니터링
-기능단위로 단위 테스트, 시나리오를 통한 통합 테스트
인터페이스 구현 검증 도구 종류
-xUnit : 자바, c++, .net등을 단위 테스트 지원
-STAF : 분산 환경에 데몬을 사용하여 테스트 수행
-FitNesse : 웹 기반 테스트 케이스 설계/실행/결과 확인
-Selenium : 웹 애플리케이션 테스트 프레임 워크
-watir : 루비 기반 웹 애플리케이션 프레임 워크
인터페이스 감시 도구
-인터페이스가 잘 동작하는지 확인을 위해 모니터링 툴(APM)을 사용
-데이터 베이스, 웹 애플리케이션의 트랜잭션, 변숫값, 호출 함수 등을 조회
- 대표적 도구 스카우터
인터페이스 구현 검증 수행
1. 최초 데이터 입력
2. DB에서 조회
3. 송신 객체 생성
4. 송신 객체 전송
5. 수신 및 파싱
6. 데이터 트랜잭션
7. 수신 결과 반환
인터페이스 오류 처리 방법
- 사용자 화면에서 오류를 인지하도록 구현
- 인터페이스 오류 로그 생성
- 인터페이스 관련 테이블에 오류 사항 기록
인터페이스 오류 처리 보고 시기에 따른 보고서
- 최초 발생 보고
- 오류 처리 경과보고
- 완료 보고
'정보처리기사 > 실기' 카테고리의 다른 글
(정보처리기사 실기) 애플리케이션 테스트 관리 (0) 2020.07.22 (정보처리기사 실기) 화면 설계 (0) 2020.07.21 (정보처리기사 실기) 서버 프로그램 구현 (0) 2020.07.20 (정보처리기사 실기) 통합구현 (0) 2020.07.20 (정보처리기사 실기) 데이터 입출력 구현 (0) 2020.07.20