1-1. 외부, 내부 모듈 간 공통 기능 및 데이터 인터페이스 확인
< 인터페이스 산출물 >
- 인터페이스 = 사용자 인터페이스 + 시스템 인터페이스
분석 단계 | 인터페이스 정의서 작성 |
명세 단계 | 인터페이스 명세서 작성 |
설계 단계 | 시스텀 인터페이스 설계서 = 시스템 인터페이스 목록 + 시스템 인터페이스 정의서 |
1-2. 외부 및 내부 모듈 연계를 위한 인터페이스 기능 식별
< EAI, ESB 연계 방법 >
- EAI 방식 : 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션
- 구축유형 : 포인트 투 포인트 / 허브 앤 스포크 / 메시지 버스 / 하이브리드
- ESB 방식 : 기어벵서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간을 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍처
2-1. 인터페이스 기능 구현 정의
< 모듈 간 세부 설계서 확인 >
- 각 모듈의 컴포넌트 명세서와 인터페이스 명세서 등 세부 설계서를 확인하여 인터페이스에 필요한 기능을 확인
- 컴포넌트 명세서 : 컴포넌트의 개요, 내부 클래스의 동작, 인터페이스를 통해 외부와 통신하는 명세를 정의
- 인터페이스 명세서 : 컴포넌트 명세서에 명시된 인터페이스 클래스의 세부적인 조건 및 기능을 명시한 명세서
2-2. 인터페이스 기능 구현
< 인터페이스 기능 구현 기술 >
JSON | - 속성-값 쌍 또는 키-값 쌍 으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포멧 - AJAX에서 많이 사용되고 XML을 대체하는 주요 데이터 포멧 - 자료형 : 숫자 / 문자열 / 배열 / 객체 |
XML | - HTML의 단점을 보완한 인터넷 언어로, SGML의 복잡한 단점을 개선한 특수한 목적을 갖는 마크업 언어 |
AJAX | - 자바스크립트를 사용하여 웹 서버와 클라이언트 간 비동기적으로 XML 데이터를 조작하기 위한 웹 기술 - 주요 기술 : XMLHttpRequest / JavaScript / XML / DOM / XSLT / HTML / CSS |
REST | - 웹과 같은 분산 하이퍼미디어 환경에서 자원의 존재/상태 정보를 표준화된 HTTP 메서드로 주고받는 웹 아키텍쳐 - 구성 요소 : 리소스, 메서드, 메시지 - 메서드 : POST / GET / PUT / DELETE |
2-4. 인터페이스 보안 기능 적용
< 인터페이스 보안 구현 방안 >
- 시큐어 코딩 가이드 적용 :
입력데이터 검증 및 표현 | 사용자 / 프로그램 입력 데이터에 대한 유효성 검증 체계를 수립하고 실패 시 처리 기능 설계 및 구현 |
보안 기능 | 권한 관리, 비밀번호 등의 정책이 절절하게 반영되도록 설계 및 구현 |
시간 및 상태 | 공유 자원의 접근 직렬화, 병렬 실행 가능 프레임워크 사용, 블록문 내에서만 재귀 함수 호출 |
에러 처리 | 에러 상황을 처리하지 않거나, 불충분하게 처리되어 중요 정보 유출 등 보안 약점 발생하지 않도록 시스템 설계 및 구현 |
코드 오류 | 코딩 규칙 도출 후 검증 가능한 스크립트 구성과 경고 순위의 최상향 조정 후 경고 메시지 코드 제거 |
캡슐화 | 디버거 코드 제거와 필수정보 외의 클래스내 프라이빗 접근자 지정 |
API 오용 | 개발 언어별 취약 API 확보 및 취약 API 검출 프로그램 사용 |
- 데이터베이스 암호화 알고리즘 : 대칭 키 암호화 알고리즘 / 비대칭 키 암호화 알고리즘 / 해시 암호화 알고리즘
- 데이터베이스 암호화 기법 :
API 방식 | 애플리케이션 레벨에서 암호모듈을 적용하는 애플리케이션 수정 방식 |
Plug-In 방식 | 암/복호화 모듈이 DB 서버에 설치된 방식 |
TDE 방식 | DB 서버의 DBMS 커널이 자체적으로 암/복호화 기능을 수행하는 방식 |
Hybrid 방식 | API 방식과 Plug-In 방식을 결합하는 방식 |
3-1. 인터페이스 구현 검증
- 인터페이스 구현 검증 도구 :
xUnit | 소프트웨어의 함수나 클래스 같은 서로 다른 구성 원소를 테스트할 수 있게 해주는 도구 |
STAF | 각 테스트 대상 분산 환경에 데몬을 사용하여 테스트 대상 프로그램을 통해 테스트를 수행하고, 통합하며 자동화하는 검증 도구 |
FitNesse | 웹 기반 테스트 케이스 설계/실행/결과 확인 등을 지원하는 테스트 프레임워크 |
NTAF | FitNesse의 장점인 협업 기능과 STAF의 장점인 재사용 및 확장성을 통합한 NHN의 테스트 자동화 프레임도구 |
Selenium | 테스트 스크립트 언어를 학습할 필요 없이 기능 테스트를 만들기 위한 도구 |
Watir | 루비 기반 웹 애플리케이션 테스트 프레임워크 |
- 인터페이스 감시 도구 :
스카우터 | 애플리케이션에 대한 모니터링 및 DB Agent를 통해 오픈 소스 DB 모니터링 기능, 인터페이스 감시 기능을 제공 |
제니퍼 | 애플리케이션의 개발부터 테스트, 오픈, 운영, 안정화까지 전 생애주기 단계 동안 성능을 모니터링하고 분석해주는 APM 소프트웨어 |
3-2. 인터페이스 오류 처리 확인 및 보고서 작성
< 인터페이스 오류 처리 방법 >
- 사용자 화면에서 오류를 인지하도록 구현 / 인터페이스 오류 로그 생성 / 인터페이스 관련 테이블에 오류 사항 기록
< 인터페이스 오류 처리 보고서 작성 >
- 최초 발생 보고서 / 오류 처리 경과 보고서 / 완료 보고서
'8. 자격증 > 8-1. 정보처리기사' 카테고리의 다른 글
정처기 실기 6-2. 언어 특성 활용하기 (0) | 2021.10.10 |
---|---|
정처기 실기 6-1. 기본 문법 활용하기 (0) | 2021.10.10 |
정처기 실기 4-1. 연계 데이터 구성 / 4-2. 연계 메커니즘 구성 / 4-3. 내외부 연계 모듈 구현 (0) | 2021.10.07 |
정처기 실기 3-2. 물리 데이터 저장소 설계 / 3-3. 데이터베이스 기초 활용하기 (0) | 2021.10.07 |
정처시 실기 3-1. 논리 데이터 저장소 확인 (0) | 2021.10.05 |