▶ 065 인터페이스 예외 처리
인터페이스 예외 처리
구현된 인터페이스가 동작하는 과정에서 기능상 예외 상황이 발생 했을 때 이를 처리하는 절차
- 데이터 통신을 이용한 예외처리와 인터페이스 엔티티를 이용한 예외처리가 있음
데이터 통신을 이용한 인터페이스 예외 처리
- JSON, XML 등 인터페이스 객체를 이용해 구현한 인터페이스 동작이 실패할 경우를 대비한 것
- 인터페이스 객체의 송수신 시 발생할 수 있는 예외 케이스를 정의, 각 예외 케이스마다 예외 처리 방법 기술
- 시스템 환경, 송수신 데이터, 프로그램 자체 원인 등 다양한 원인으로 인해 예외 상황 발생
인터페이스 엔티티를 이용한 인터페이스 예외처리
- 인터페이스 동작이 실패할 경우를 대비하여 해당 엔티티에 인터페이스의 실패 상황과 원인 등을 기록
- 이에 대한 조치를 취할 수 있도록 사용자 및 관리자에게 알려주는 방식으로 예외 처리 방법을 정의
▶ 066 인터페이스 보안
인터페이스 보안
- 인터페이스의 보안성 향상을 위해, 인터페이스의 보안 취약점 분석 후 적절한 보안 기능을 적용
인터페이스 보안 취약점 분석
- 인터페이스 각 구간들의 구현 현황 확인, 보안 취약점 분석
- 인터페이스의 송수신 영역의 구현 기술 및 특징 등을 구체적으로 확인
- 영역별로 발생할 수 있는 보안 취약점을 시나리오 형태로 작성
인터페이스 보안 기능 적용
- 분석한 인터페이스 기능과 보안 취약점을 기반으로 인터페이스 보안 기능을 적용
- 인터페이스 보안 기능은 네트워크, 애플리케이션, 데이터베이스 영역에 적용
> 네트워크 영역 : 인터페이스 송수신간 스니핑(Sniffing) 등을 이용한 데이터 탈취 및 변조 위협을 방지하기 위해 네트워크 트래픽에 대한 암호화를 설정
* 스니핑(Sniffing) : 네트워크의 중간에서 남의 패킷 정보를 도청하는 해킹 유형
> 애플리케이션 영역 : 애플리케이션 코드 상의 보안 취약점을 보완하는 방향으로 애플리케이션 보안 기능 적용
> 데이터베이스 영역 : 데이터베이스 동작 객체의 보안 취약점에 보안 기능을 적용
☞ 소프트웨어 개발 보안
애플리케이션 소스 코드에 존재할 수 있는 보안 취약점 발견, 제거, 보안을 고려한 기능 설계 및 구현 등 소프트웨어 개발 과정에서 지켜야 할 일련의 보안 활동, 시큐어 코딩(Secure Coding)이라고도 불림
▶ 067 연계 테스트
연계 테스트
구축된 연계 시스템과 연계 시스템의 구성 요소가 정상적으로 동작하는지 확인하는 활동
* 연계 시스템의 구성 요소 : 송수신 모듈, 연계 서버, 모니터링 현황 등
- 연계 테스트 케이스 작성, 연계 테스트 환경 구축, 연계 테스트 수행, 연계 테스트 수행 결과 검증 순으로 진행
1. 연계 테스트 케이스 작성
연계 시스템 간의 데이터 및 프로세스의 흐름을 분석해 필요한 테스트 항목을 도출
- 송수신용 연계 응용 프로그램의 단위 테스트 케이스와 연계 테스트 케이스를 각각 작성
2. 연계 테스트 환경 구축
테스트 일정, 방법, 절차, 소요 시간 등을 송수신 기관과의 협의를 통해 결정하는 것
3. 연계 테스트 수행
연계 응용 프로그램을 실행하여 연계 테스트 케이스의 시험 항목 및 처리 절차 등을 실제로 진행하는 것
- 송수신용 연계 응용 프로그램의 단위 테스트 후 연계 테스트를 수행
4. 연계 테스트 수행 결과 검증
연계 테스트 케이스의 시험 항목 및 처리 절차를 수행한 결과가 예상 결과와 동일한지 확인하는 것
- 운영 DB 테이블의 건수를 확인하는 방법
- 테이블 또는 파일을 열어 데이터를 확인하는 방법
- 파일 생성 위치에서 파일 생성 여부 및 크기를 확인하는 방법
- 연계 서버에서 제공하는 모니터링 현황을 확인하는 방법
- 시스템에서 기록하는 로그를 확인하는
▶ 068 인터페이스 구현 검증
인터페이스 구현 검증
인터페이스가 정상적으로 잘 작동하는지 확인하는 것
- 인터페이스 구현 검증 도구와 감시 도구를 이용하여 인터페이스의 동작 상태를 확인
인터페이스 구현 검증 도구
인터페이스 단위 기능과 시나리오 등을 기반으로 하는 통합 테스트 필요
- xUnit : Java, C++, Net 등 다양한 언어를 지원하는 단위 테스트 프렘이워크
- STAF : 서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임워크
- FitNesse : 웹 기반 테스트케이스 설계, 실행, 결과 확인 등을 지원하는 테스트 프레임워크
- NTAF : FitNesse의 장점인 협업 기능과 STAF의 장점인 재사용 및 확장성을 통합한 NHN의 테스트 자동화 프레임워크
- Selenium : 다양한 브라우저 및 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임워크
- waiter : Ruby를 사용하는 애플리케이션 테스트 프레임 워크
인터페이스 구현 감시 도구
- 인터페이스 동작 상태는 APM을 사용해 감시할 수 있음
* APM : 애플리케이션의 성능 관리를 위해 접속자, 자원 현황, 장애 진단 등 다양한 모니터링 기능을 제공하는 도구
- 스카우터(Scouter) : 애플리케이션 및 OS 자원에 대한 모니터링 기능을 제공하는 APM 소프트웨어
- 제니퍼(Jennifer) : 애플리케이션의 개발 부터 테스트, 오픈, 운영, 안정화까지, 전 단계에 결쳐 성능을 모니터링하고 분석해주는 APM 소프트웨어
인터페이스 구현 검증 확인
검증 도구를 이용해 외부 시스템과 연계 모듈의 동작 상태를 확인
- 추가적으로 각 단계별 오류 처리도 적절하게 구현되어 있는지 확인
인터페이스 구현 감시 확인
감시 도구를 이용해 외부 시스템과 연결 모듈이 서비스를 제공하는 동안 정상적으로 작동하는지 확인
▶ 069 인터페이스 오류 확인 및 처리 보고서 작성
인터페이스 오류 확인 및 처리 보고서
- 인터페이스에서 발생하는 오류는 대부분 중요한 오류
- 오류 발생시 사용자 또는 관리자는 오류사항을 확인해 오류처리 보고서를 작성해 조직에 보고
- 오류 발생 즉시 확인하는 방법과 주기적인 확인 방법이 있음
인터페이스 오류 발생 즉시 확인
인터페이스 오류 발생 시 화면에 오류 메시지를 표시하고 자동으로 SMS, 이메일을 발송함
- 가장 많이 사용되는 방법
주기적인 인터페이스 오류 발생 확인
시스템 관리자가 시스템 로그, 오류 관련 테이블 등을 통해 주기적으로 오류 발생 여부 확인
- 발생하는 오류에 대한 정보가 주기적으로 축적되어 오류의 원인 파악 용이, 오류 재발 방지 계획을 세울 수 있음
인터페이스 오류 처리 보고서 작성
인터페이스 작동 시 발생하는 오류의 발생 및 종료 시점, 원인 및 증상, 처리사항 등을 정리한 문서
- 오류 발생 즉시 작성, 조직의 보고 체계에 따라 보고
- 인터페이스 오류 처리 보고서는 정형화된 형식이 없어 상황에 맞춰 작성
- 오류 관련 사항을 시간 경과에 따라 기록