* 인터페이스 요구사항: 개발할 시스템과 외부 시스템을 연동하는데 필요한 시스템 인터페이스에 대한 요구사항 기술

 

* 시스템 인터페이스 요구사항 명세서의 구성요소:

- 인터페이스 이름

- 연계 대상 시스템

- 연계 범위 및 내용

- 연계방식

- 송신 데이터

- 인터페이스 주기

- 기타 고려사항

 

* 인터페이스 요구사항 검증 방법:

- 동료 검토 Pear Review

- 워크스루 Walk Through

- 인스펙션 Inspection

 

* 인터페이스 요구사항 검증의 주요항목:

- 완전성

- 일관성

- 명확성

- 기능성

- 검증 가능성

- 추적 가능성

- 변경 용이성

 

* 인터페이스 방법 명세화: 내/외부 시스템이 연계하여 작동할 때 인터페이스별 송/수신 방법, 송/수신 데이터, 오류 식별 및 처리 방안에 대한 내용을 문서로 정리

 

* 미들웨어: 운영체제와 응용 프로그램, 또는 서버와 클라이언트 사이에서 다양한 서비스를 제공하는 소프트웨어.

 

* 미들웨어의 종류:

- DB (Data Base)

- RPC (Remote Procedure Call)

- MOM (Message Oriented Middleware)

- TP-Monitor(Transaction Processing Monitor)

- ORB(Object Request Broker)

- WAS (Web Application Server)

 

* 내/외부 모듈 연계 방법:

- EAI: 기업 내 이기종 플랫폼간의 상호 연동이 가능하게 해주는 솔루션

  • Point-to-Point
  • Hub & Spoke
  • Message Bus
  • Hybrid

- EBS: 애플리케이션 간 표준 기반의 인터페이스를 제공하는 솔루션

 

- 웹서비스: 네트워크의 정보를 표준화된 서비스 형태로 만들어 공유하는 기술

  • UDDI: WSDL를 등록하여 서비스, 서비스 제공자를 검색하고 접근하는 데 사용
  • WSDL: XML로 구성되어있는 웹 서비스 관련 서식, 프로토콜 등을 표준적인 방법으로 기술, 게시하기 위한 언어
  • SOAP: XML기반의 메시지를 네트워크 상에서 교환하는 프로토콜

 

* 인터페이스 구현: 송/수신 시스템 간의 데이터 교환 및 처리를 실현해 주는 작업 의미

 

*인터페이스 구현 방법:

- 데이터 통신을 이용한 인터페이스 구현

- 인터페이스 엔티티를 이용한 인터페이스 구현

 

* 데이터 통신을 이용한 인터페이스 구현: 애플리케이션 영역에서 데이터 포맷을 인터페이스 대상으로 전송하면 이를 수신 측에서 파싱하여 해석하는 방식이다. 주로 JSON, XML 형식의 데이터 포맷을 이용하여 인터페이스 구현

 

* 인터페이스 엔티티를 이용한 인터페이스 구현: 인터페이스가 필요한 시스템 사이에 별도의 인터페이스 엔티티를 두어 상호 연계하는 것. 인터페이스 테이블을 엔티티로 활용.

 

* 인터페이스 보안:

- 네트워크 영역

- 애플리케이션 영역

- 데이터베이스 영역

 

* 인터페이스 구현 검증:

- xUnit

: 자바, C++, .Net 등 다양한 언어를 지우너하는 단위테스트 프레임워크. 소프트웨어의 함수나 클래스 같은 서로 다른 구성 단위를 테스트할 수 있게 해주는 도구

- STAF

: 서비스 호출, 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임워크. 각 테스트 대상 분산 환경에 데몬을 사용하여 테스트 대상 프로그램을 통해 테스트를 수행, 통합하며 자동화하는 검증도구

- FitNesses

: 웹 기반 테스트 케이스 설계/실행/결과 확인 등을 지원하는 테스트 프레임워크. 사용자가 테스트 케이스 테이블을 작성하면 빠르고 편하게 자동으로 원하는 값에 대해 테스트를 할 수 있음

- Selenium

: 다양한 브라우저 지원 및 개발언어를 지원하는 웹 애플리케이션 테스트 프레임워크. 테스트 스크립트 언어를 학습할 필요 없이 기능 테스트를 만들기 위한 도구를 제공

- Watir

: 루비 기반 웹 애플리케이션 테스트 프레임워크. 모든 언어 기반의 웹 애플리케이션 테스트와 브라우저 호환성 테스트 기능

 

* 인터페이스 구현 감시 도구: 인터페이스 동작 상태는 APM(어플리케이션 성능 관리)를 사용하여 감시할 수 있다. 

 

* 인터페이스 APM:

- 스카우터 Scouter : OS 자원에 대한 모니터링 기능 제공

- 제니퍼 Jennifer : 애플리케이션의 개발부터 테스트, 오픈, 운영, 안정화 까지 전 단계에 걸쳐 성능을 모니터링하고 분석해주는 소프트웨어

 

* APM (Application Performance Management/Monitoring): 애플리케이션의 성능 관리를 위해 다양한 모니터링 기능을 제공하는 도구.

- 리소스 방식: Nagios, Zabbix, Cacti 등

- 엔드투엔드 방식: VisualVM, 스카우터, 제니퍼 등

 

+ Recent posts