2020년/정처기

[2020 정보처리기사 실기] Section 04 . 통합 구현(3/3)

위지원 2020. 4. 16. 02:02

이전글

2020/04/15 - [2020년도 상반기/정처기] - [2020 정보처리기사 실기] Section 04 . 통합 구현(2/3)

XML(eXtensible Markup Laguage)

 

1. XML이란?

웹브라우저 간 HTML 문법이 호환되지 않는 문제와 SGML의 복잡함을 해결하기 위한 다목적 마크업 언어

* SGML은 Standard Generalized Markup Language(표준 일반화 마크업 언어)의 약자로, 다목적 마크업 언어의 근간을 이루는 메타 언어. SGML은 문서의 구조와 의미를 기술하기 위한 표준화된 방법을 정의

 

2. 특징

  • 유니코드를 기반으로 다국어 지원
  • 대/소문자 구분
  • 모든 태그는 종료태그를 가져야 하며, 시작/종료 태그의 이름은 같아야 함
  • 사용자가 직접 태그 정의 가능하며 타인의 태그도 사용 가능
  • 속성 값은 반드시 ""(큰 따옴표)로 묶어주어야 함

3. 구성

<? xml version="" encoding="laguage set" standalone="yes|no"?>

  • 첫 문단만 <?로 시작
  • 언어 셋을 설정하지 않는 경우 default는 UTF-8
  • standalone은 외부 문서의 참조 여부, default는 no로 외부 문서 참조한다는 말

<요소 이름 속성 1="속성 값" 속성 2="속성 값 2".. > 내용 </요소 이름>

<?xml version="1.0" encoding="euc-kr" standalone="yes"?>
<student school="위지원대학교">
	<member>
    	<name>위지원</name>
        <year>3</year>
        <major>데이터베이스</major>
    </member>
</student>

 

연계 모듈의 구현 환경의 개요

 

연계 모듈의 구현 환경은 Trigger, 프로그래밍 언어를 이용한 EAI, ESB방식과 배치 프로그램 및 인터페이스 파일을 이용한 Web Service방식으로 구분

 

1. EAI(Enterprise Application Integration)

기업 내 각종 각종 애플리케이션 및 플랫폼 간의 상호 연동이 가능케 하는 설루션

 

유형 기능
point to point - 1:1로 연결
- 변경 및 재사용이 어려움
Hub & Spoke - Hub를 중앙에 둔 중앙집중형 방식
- 확장 및 유지보수 용이
- 허브가 터지면 망함
Message Bus(ESB방식) - 애플리케이션 사이에 미들웨어를 두어 처리함(BUS)
- 확정 및 대용량 처리 용이
Hybrid - 위의 두 가지를 결합
- 그룹 내에는 Hub방법 그룹 간에는 Message 방법으로
- 필요하면 한 가지만으로 EAI 구현 가능
- 데이터 병목 현상 최소화

 

 

2. ESB(Enterprise Service Bus) 

  • 애플리케이션 간 표준 기반의 인터페이스를 제공하는 설루션, EAI와 비슷하지만 애플리케이션보다는 서비스 중심의 통합 지향
  • 범용성을 위해 결합도를 약하게 유지함

 

3. 환경 구축 절차( 암기 위해 키워드만 )

  1. DB 설치 및 계정 생성
  2. 정보 저장용 테이블 생성
  3. 프로그램 구현

 

4. Web Service

네트워크의 정보를 표준화된 서비스 형태로 만들어 공유, SOA(Service Oriented Architecture) 개념을 실현

  • SOAP(Simple Object Aceess Protocol) : 메시지 교환 프로토콜
  • UDDI(Universal Description, Discovery and Integration) : 서비스 및 서비스 제공자 검색하고 접근
  • WSDL(Web Services Description Language) : 웹서비스에 대한 상세 정보를 XML로 구현

웹서비스 방식 환경 구현 절차(암기를 위해 키워드만)

  1. 파일 생성 위치/ 파일명 정의 후 디렉터리 생성
  2. 데이터 추출 후 XML 형식으로 변환 응용프로그램 구현
  3. 파일내용을 DB에 반영

 

5. SOAP

네트워크상에서 HTTP/HTTPS 등을 이용해서 XML을 교환하기 위한 통신 규약

  • HTTP 기반이라 프록시/방화벽 영향 없이 통신 가능
  • 요즘엔 XML이 무거워서 RESTful 프로토콜이 사용
  • 다음으로 구성됨
Envelope XML 문서를 SOAP 메시지로 정의하는것, 메시지에 대한 요소/접근 방법 정의
Header SOAP 메시지에 포함되는 웹서비스 정의, 생략가능
Body 메시지
<?xml version="1.0"?>

<soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope/"
soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding">

<soap:Header>
...
</soap:Header>

<soap:Body>
...
  <soap:Fault>
  ...
  </soap:Fault>
</soap:Body>

</soap:Envelope>

https://www.w3schools.com/xml/xml_soap.asp

 

XML Soap

XML Soap SOAP stands for Simple Object Access Protocol SOAP is an application communication protocol SOAP is a format for sending and receiving messages SOAP is platform independent SOAP is based on XML SOAP is a W3C recommendation Why SOAP? It is importan

www.w3schools.com

 

 

6. WSDL

웹 서비스와 관련된 서식이나 프로토콜 등 표준적인 방법으로 기술하고 게시하기 위한 언어

  • UDDI의 기초

ElementDescription

   
<types> Defines the (XML Schema) data types used by the web service
<message>(2.0에서 삭제됨) Defines the data elements for each operation
<portType>(2.0에서 interfafce로 변경) Describes the operations that can be performed and the messages involved.
<binding> Defines the protocol and data format for each port type
<operation> 메서드의 요청 및 응답 메시지를 정의
<service> port/endpoint를 통해 웹 서비스 정의
<port>(2.0에서 endpoint로 변경) 웹 서비스의 URL과 binfing을 연결

* message가 삭제된 이유가 2.0에서는 operation이 직접 types에 연결되서임, 원래는 중간에 message필요

 

<message name="getTermRequest">
  <part name="term" type="xs:string"/>
</message>

<message name="getTermResponse">
  <part name="value" type="xs:string"/>
</message>

<portType name="glossaryTerms">
  <operation name="getTerm">
    <input message="getTermRequest"/>
    <output message="getTermResponse"/>
  </operation>
</portType>

https://www.w3schools.com/xml/xml_wsdl.asp

 

XML WSDL

XML WSDL WSDL stands for Web Services Description Language WSDL is used to describe web services WSDL is written in XML WSDL is a W3C recommendation from 26. June 2007 WSDL Documents An WSDL document describes a web service. It specifies the location of th

www.w3schools.com

 

연계 테스트

 

1. 연계 테스트 순서

  1. 연계 TestCase 작성
  2. 연계 테스트 환경 구축
  3. 연계 테스트 수행
  4. 연계 테스트 수행 결과 검증

 

2. 검증 방법

  • DB 테이블의 건수 확인
  • 테이블/파일 열어 데이터 확인
  • 파일 생성이 잘되었는가? 생성 위치와 크기 확인
  • 모니터링 현황 확인
  • log 확인

 

3. 테스트 케이스 작성

  • 단위 테스트 케이스 : 송/수신 시스템에서 확인해야 할 항목 도출
    • 송/수신 시스템에서 단순 개별 데이터의 유효값 확인 하는경우
    • 송/수신 시스템에서 데이터 간의 연관 관계를 확인하는 경우
  • 연계 테스트
    • 송/수신용 연계 프로그램의 기능상 결함을 확인하는 단위 테스트 케이스 형태
    • 송/수신절차의 흐름을 확인할 수 있도록 작성

다음글

2020/04/17 - [2020년도 상반기/정처기] - [2020 정보처리기사 실기] Section 05 . 서버 프로그램 구현(1/3)