[정보처리기사 필기] 2-5. 인터페이스 구현
2020 시나공 정보처리기사 필기책 참고
주의! 중요도가 낮은 항목(C)은 제외
1. 모듈 연계를 위한 인터페이스 기능 식별 – A
- 모듈 연계의 개요
- 모듈 또는 내부 모듈 간 데이터의 교환을 위해 관계를 설정하는 것
@ EAI(Enterprise Application Integration)
- 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달, 연계, 통합 등 상호 연동이 가능하게 해주는 솔루션
- 비즈니스 간 통합 및 연계성을 증대시켜 효율성 및 각 시스템 간의 확장성을 높임
- Point-to-Point
- 1 : 1 연결
- 변경 및 재사용이 어려움
- Hub & Spoke
- 허브 시스템을 통해 데이터를 전송하는 중앙 집중형 방식
- 확장 및 유지 보수가 용이
- 허브 장애 발생 시 시스템 전체에 영향을 미침
- Message Bus(ESB 방식)
- 미들웨어를 두어 처리하는 방식
- 확장성이 뛰어나며 대용량 처리가 가능
- Hybrid
- Hub & Spoke와 Message Bus의 혼합 방식
- 그룹 내에서는 Hub & Spoke, 그룹 간에는 Message Bus 방식 사용
- 한 가지 방식으로 EAI 구현 가능
- 데이터 병목 현상을 최소화
@ ESB(Enterprise Service Bus)
- 애플리케이션 간 연계, 데이터 변환, 웹 서비스 지원 등 표준 기반의 인터페이스를 제공하는 솔루션
- 통합 측면에서 EAI와 유사하지만, 애플리케이션 보다는 서비스 중심의 통합을 지향
- 특정 서비스에 국한되지 않고 범용적으로 사용하기 위해 결합도를 약하게 유지
- 관리 및 보안 유지가 쉽고, 높은 수준의 품질 지원 가능
2. 인터페이스 기능 구현 정의 – B
- 인터페이스 기능 구현 정의에 대한 개요
- 인터페이스를 실제로 구현하기 위해 인터페이스 기능에 대한 구현 방법을 기능별로 기술
- 컴포넌트 명세서 확인 -> 인터페이스 명세서 확인 -> 일관된 인터페이스 기능 구현 정의 -> 정의된 인터페이스 기능 구현 정형화
- 모듈 세부 설계서
- 모듈의 구성 요소와 세부적인 동작 등을 정의한 설계서
- 컴포넌트 명세서
- 컴포넌트의 개요 및 내부 클래스의 동작, 인터페이스를 통해 외부와 통신하는 명세 등을 정의
- 인터페이스 명세서
- 컴포넌트 명세서의 항목 중 인터페이스 클래스의 세부 조건 및 기능 등을 정의
3. 인터페이스 예외 처리 – B
- 인터페이스 예외 처리의 개요
- 구현된 인터페이스가 동작하는 과정에서 기능상 예외 상황이 발생 했을 때 이를 처리하는 절차
- 데이터 통신을 이용한 인터페이스 예외 처리
- JSON, XML 등 인터페이스 객체를 이용해 구현한 인터페이스 동작이 실패한 경우를 대비
- 예외 케이스를 정의하고 각 예외 케이스마다 예외 처리 방법을 기술
- 인터페이스 엔티티를 이용한 인터페이스 예외 처리
- 동작이 실패할 경우를 대비해 해당 엔티티에 인터페이스의 실패 상황과 원인 등을 기록하고 사용자 및 관리자에서 알려주는 방식
4. 인터페이스 보안 – B
- 인터페이스 보안의 개요
- 보안 취약점을 분석한 후 적절한 보안 기능을 적용
- 인터페이스 보안 기능 적용
- 네트워크 영역
- 스니핑 등을 이용한 데이터 탈취 및 변조 위협을 방지하기 위해 네트워크 트래픽에 대한 암호화 설정
- IPSec, SSL, S-HTTP 등의 방식으로 적용
- 애플리케이션 영역
- 애플리케이션 코드 상의 보안 취약점을 보완하는 방향
- 데이터베이스 영역
- 접근 권한과 프로시저, 트리거 등 DB 동작 객체의 보안 취약점에 보안 기능을 적용
- 암호화나 익명화 등 데이터 자체의 보안 방안도 고려
5. 연계 테스트 – B
- 연계 테스트의 개요
- 연계 시스템과 구성 요소가 정상적으로 동작하는지 확인하는 활동
- 연계 테스트 케이스 작성 -> 연계 테스트 환경 구축 -> 수행 -> 검증
6. 인터페이스 구현 검증 – A
- 인터페이스 구현 검증의 개요
- 인터페이스가 정상적으로 문제없이 작동하는지 확인하는 것
- 인터페이스 구현 검증 도구
- 검증하기 위해서 인터페이스 단위 기능과 시나리오 등을 기반으로 하는 통합 테스트 필요
- 테스트 자동화 도구를 이용하면 효율적으로 수행 가능
- xUnit
- Java, C++ 등 다양한 언어를 지원하는 단위 테스트 프레임워크
- STAF
- 서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원
- FItNesse
- 웹 기반 테스트케이스 설계, 실행, 결과 확인 등을 지원
- NTAF
- 협업 기능과 재사용 및 확장성을 통합한 NHN의 테스트 자동화 프레임워크
- Selenium
- 다양한 브라우저 및 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임워크
- watir
- Ruby를 사용하는 애플리케이션 테스트 프레임워크
- 인터페이스 구현 감시 도구
- 인터페이스 동작 상태를 APM을 사용하여 모니터링 할 수 있음
- 종합적인 정보를 조회하고 분석할 수 있음
- Scouter, Jennifer 등
- APM
- 리소스 방식 : Nagios, Zabbix, Cacti 등
- End-to-End 방식 : VisualVM, Jennifer, Scouter 등
댓글남기기