2023. 2. 16. 15:03ㆍ정처기 필기/2과목 - 소프트웨어 개발
모듈 연계
1. EAI (Enterprise Application Integeration)
* 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달, 연계, 통합 등 상호 연동이 가능하게 해주는 솔루션
유형 | 기능 |
포인트 투 포인트 (Point to Point) |
- 점 대 점으로 연결하는 방식, 변경 및 재사용이 어려움 |
허브 앤 스포크 (Hub & Spoke) |
- 단일 점점인 허브 시스템을 통해 데이터를 전송하는 중앙 집중혁 방식 - 확장 및 유지보수가 용이하지만 허브 장애 발생 시 시스템 전체에 영향을 미침 |
메시지 버스 (Message Bus) |
- 애플리케이션 사이에 미들웨어를 적용하는 방식 - 확장성이 뛰어나며 대용량 처리가 가능 |
하이브리드 (Hybrid) |
- Hub & Spoke와 Message Bus의 혼합 방식 - 데이터 병목 현상을 최소화할 수 있음 |
2. ESB (Enterprise Service Bus)
- 애플리케이션 간 연계, 데이터 변환, 웹 서비스 지원 등 표준 기반의 인터페이스를 제공하는 솔루션
- 애플리케이션 통합 측면에서 EAI와 유사하지만 애플리케이션 보다는 서비스 중심의 통합을 지향
- 결합도를 약하게 유지함
- 관리 및 보안 유지가 쉽고, 높은 수준의 품질 지원이 가능
인터페이스 구현 및 보안
1. 데이터 통신을 이용한 인터페이스 구현
- 애플리케이션 영역에서 인터페이스 형식에 맞춘 데이터 포맷을 인터페이스 대상으로 전송하고 이를 수신 측에서 파싱해 해석하는 방식
- 주로 JSON이나 XML형식의 데이터 포맷을 사용해 인터페이스를 구현
*** JSON
- 속성-값 쌍으로 이루어진 데이터 객체를 전달하기 위해 사람이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷
*** XML
- 특수한 목적을 갖는 마크업 언어를 만드는데 사용되는 다목적 마크업 언어
- 웹 페이지의 기본 형식인 HTML의 문법이 각 웹 브라우저에서 상호 호환적이지 못하다는 문제와 SGML의 복잡함을 해결하기 위해 개발됨
2. 인터페이스 엔티티를 이용한 인터페이스 구현
- 인터페이스가 필요한 시스템 사이에 별도의 인터페이스 엔티티로 상호 연계하는 방식
- 일반적으로 인터페이스 테이블을 엔티티로 활용
- 송, 수신 인터페이스 테이블의 구조는 상황에 따라 서로 다르게 설계될 수도 있다.
3. 인터페이스 보안 기능 적용
- 네트워크, 애플리케이션, 데이터베이스 영역
* 스니핑(Sniffing) : 네트워크의 중간에서 남의 패킷 정보를 도청하는 해킹 유형
* 소프트웨어 개발 보안 (시큐어 코딩, Secure Coding) : 보안 활동
ex_ 입력 데이터 검증 표현, 보안 기능, 시간 및 상태, 에러 처리, 코드 오류, 캡슐화, API 오용
인터페이스 구현 검증 / 인터페이스 오류 확인
1. 인터페이스 구현 검증 도구
도구 | 기능 |
xUnit | Java(Junit), C++(Cppunit), .Net(Nunit) 등 다양한 언어를 지원하는 단위 테스트 프레임 워크 |
STAF | 서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임워크 |
FitNesse | 웹 기반 테스트케이스 설계, 실행, 결과 확인 등을 지원하는 테스트 프레임워크 |
NTAF | STAF의 장점인 재사용과 FitNesse의 장점인 협업 기능을 통한 NHN의 테스트 자동화 프레임워크 |
Selenium | 다양한 브라우저 및 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임워크 |
watir | Ruby 언어를 사용하는 애플리케이션 테스트 프레임워크 |
2. 인터페이스 오류 발생 즉시 확인
- 오류 메시지 알람 표시
- 오류 SMS 발송
- 오류 내역 이메일 발송
3. 인터페이스 오류 발생 주기적인 확인
- 오류 로그 확인 : 오류를 별도의 로그 파일로 생성해 보관, 자세한 오류 원인 및 내역 확인 가능
- 오류 테이블 확인 : 확인이 쉬워서 용이함, 오류 사항이 구체적이지 않아 별도의 분석이 필요하다.
- 감시(APM) 도구 사용 : 스카우터나 제니퍼 등의 인터페이스 감시 도구를 사용해 주기적 확인
'정처기 필기 > 2과목 - 소프트웨어 개발' 카테고리의 다른 글
기타 (0) | 2023.02.16 |
---|---|
결함 관리 / 애플리케이션 성능 분석 (0) | 2023.02.16 |
통합 테스트 / {테스트 케이스,테스트 시나리오,테스트 오라클,테스트 하네스} (0) | 2023.02.16 |
화이트박스, 블랙박스 테스트 / 개별 단계에 따른 애플리케이션 테스트 (0) | 2023.02.16 |
애플리케이션 테스트 / 애플리케이션 테스트 분류 (0) | 2023.02.16 |