SOA 개념에서 구축까지 (세트)
- 원서명Implementing SOA : Total Architecture in Practice, Service-Oriented Architecture: Concepts, Technology, and Design
- 지은이폴 브라운, 토마스 얼
- 옮긴이공상휘, 최종일, 이주영, 장세영, 황상철, 이현정, 조문옥
- ISBN : 9788960771826
- 69,000원
- 2011년 02월 18일 펴냄 (절판)
- 페이퍼백 | 1,480쪽 | 190*250mm
- 시리즈 : 소프트웨어 아키텍처
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
[ SET 구성: 전 2권 ]
1) 『SOA 구축: 엔터프라이즈 아키텍처를 고려한』
2) 『SOA: 서비스 지향 아키텍처』
『SOA 구축: 엔터프라이즈 아키텍처를 고려한』 소개
이제 SOA는 기업에서 보편적으로 고려할 아키텍처 사상이다. 최근 가트너에 따르면 SOA는 기술의 라이프사이클에서 검증단계를 지나 점차 IT 시스템에 적용되는 단계에 이르렀다. 이 책은 보편화된 서비스 중심의 아키텍처(SOA)를 엔터프라이즈 아키텍처를 고려해 구현할 수 있는 실천적 방법론을 제공한다. IT프로젝트 및 기업에서 업무분석과 설계, 프로젝트관리 역할을 하는 IT담당자나, 기업의 IT 기획과 전략을 고민하는 독자들에게 좋은 지침서가 될 것이다.
『SOA: 서비스 지향 아키텍처』 소개
SOA, 서비스 지향 아키텍처라는 용어가 IT 산업에 있어 중요한 이슈로 부각되기 시작했으나, 아직도 제대로 이해하고 있는 사람은 많지 않다. 이 책은 다음과 같은 내용을 중심으로 SOA에 대한 이해를 높일 수 있게 하는 데 중점을 뒀다.
• SOA, 서비스 지향, 웹서비스를 이해한다.
• 웹서비스로 SOA를 구축하는 방법을 배운다.
1) 『SOA 구축: 엔터프라이즈 아키텍처를 고려한』
2) 『SOA: 서비스 지향 아키텍처』
『SOA 구축: 엔터프라이즈 아키텍처를 고려한』 소개
이제 SOA는 기업에서 보편적으로 고려할 아키텍처 사상이다. 최근 가트너에 따르면 SOA는 기술의 라이프사이클에서 검증단계를 지나 점차 IT 시스템에 적용되는 단계에 이르렀다. 이 책은 보편화된 서비스 중심의 아키텍처(SOA)를 엔터프라이즈 아키텍처를 고려해 구현할 수 있는 실천적 방법론을 제공한다. IT프로젝트 및 기업에서 업무분석과 설계, 프로젝트관리 역할을 하는 IT담당자나, 기업의 IT 기획과 전략을 고민하는 독자들에게 좋은 지침서가 될 것이다.
『SOA: 서비스 지향 아키텍처』 소개
SOA, 서비스 지향 아키텍처라는 용어가 IT 산업에 있어 중요한 이슈로 부각되기 시작했으나, 아직도 제대로 이해하고 있는 사람은 많지 않다. 이 책은 다음과 같은 내용을 중심으로 SOA에 대한 이해를 높일 수 있게 하는 데 중점을 뒀다.
• SOA, 서비스 지향, 웹서비스를 이해한다.
• 웹서비스로 SOA를 구축하는 방법을 배운다.
목차
목차
- 『SOA 구축』
- 1부 SOA의 기초
- 1장 SOA와 엔터프라이즈
- 토탈 아키텍처
- 아키텍처는 목적이 있는 구조다
- 끊임없는 변화
- 토탈 아키텍처 구성
- 우리의 기업에서 토탈 아키텍처 작업 수행하기
- 핵심 질문
- 2장 아키텍처 일반
- 구조적인 구성
- 컴포넌트
- 하위컴포넌트
- 기능적인 구성
- 공유 자원
- 변경 요건의 대응
- 편리함의 유혹
- 협업 기능
- 액티비티
- 객체
- 통신
- 비즈니스 프로세스
- 토탈 아키텍처
- 비기능 요건
- 정련
- 아키텍트의 역할
- 엔터프라이즈 아키텍처
- 아키텍처 스타일
- 패턴
- 요약
- 아키텍처 기본사항에 대한 핵심 질문
- 추천 문헌
- 구조적인 구성
- 3장 서비스
- 서비스란
- 오퍼레이션
- 참조 객체
- 소유된 객체
- 관계의 소유
- 캐시정보 관리
- 서비스 인터페이스
- 일반적 접근 기술
- 공통 데이터 표현 기술
- 일반적인 데이터 문법
- 일반 오퍼레이션
- 인터페이스 보편성 수준의 결정
- 서비스 사용의 근본적인 이유
- 서비스 재사용
- 인터페이스 안정성
- 서비스의 진화
- 요약
- 서비스 기본사항에 관한 핵심 질문
- 추천 문헌
- 서비스란
- 4장 서비스의 사용
- 서비스 상호작용 패턴
- 동기식 요청- 응답
- 비동기식 요청- 응답
- 구독 신청
- 요청하지 않은 결과의 통지
- 상호작용 패턴 요약
- 서비스 호출
- 서비스 직접 호출
- 서비스 직접 호출의 변수
- 직접 호출의 제약사항
- 메시지 기반의 서비스 호출
- 호출 제어
- 정책 관리 지점
- 프록시의 호출 제어
- 중계 서비스를 사용한 호출 제어
- 서비스 요청 라우팅
- 부하 분산
- 위치 기반 라우팅
- 콘텐츠 기반 라우팅
- 서비스 조합
- 강결합 조합
- 내재된 조합
- 캐시를 사용한 조합
- 서비스의 위치 정하기
- 서비스 구현을 위한 엔터프라이즈 아키텍처
- 요약
- 서비스 사용에 대한 핵심 질문
- 추천 문헌
- 서비스 상호작용 패턴
- 5장 SOA 개발 프로세스
- SOA 개발은 무엇이 다른가?
- 개발 프로세스 개요
- 아키텍처 태스크
- 전체 속에서의 아키텍처
- 토탈 아키텍처 통합
- 초기 범위 선정
- 요구사항 정의
- 비즈니스 프로세스 아키텍처의 설계
- 시스템 아키텍처의 설계
- 아키텍처 평가
- 프로세스처럼 보이는 것을 찾아라!
- 리스크 관리: 반복적으로 아키텍처 구성하기
- 요약
- 개발 프로세스에 관한 핵심 질문
- 추천 문헌
- 2부 비즈니스 프로세스 전반
- 6장 프로세스
- 연관 프로세스
- 프로세스 성숙도
- 연속 프로세스
- 구조적 프로세스
- 요약
- 프로세스에 대한 핵심 질문
- 추천 문헌
- 7장 초기 프로젝트 범위 설정
- 비즈니스 프로세스 목록 수집
- 인터뷰 진행
- 목록의 문서화
- 목표와 이해관계자
- 프라이머리 프로세스
- 관련 프로세스
- 유사 비즈니스 프로세스
- 프로세스 수치
- 비즈니스 프로세스의 순위 선정
- 우선순위 배정 계획
- 점수 집계
- 나머지 작업의 구조화
- 요약
- 범위 선정에 대한 핵심 질문
- 8장 요구사항의 기술
- 구분
- 액티비티의 구분
- 참여자 구분하기
- 설계는 구분 작업이다
- 프로세스의 특성 정의
- 컬래버레이션 다이어그램은 프로세스를 의미한다
- 컬래버레이션 구성 요소
- 참여자는 자신의 구성 요소를 모를 수 있다
- 상호작용의 유형
- 유스케이스 설명
- 유스케이스의 한계
- UML 액티비티 다이어그램
- 인터페이스 관점
- 상호작용 패턴은 참여자의 특성을 기술한다
- 요구사항은 설계를 반영한다
- 요구사항은 상호작용 패턴을 명세화한다
- 요구사항은 완전하지 않다
- 요약
- 요구사항에 대한 핵심 질문
- 추천 문헌
- 구분
- 9장 비즈니스 프로세스 아키텍처
- 결과
- 참여자와 그 역할
- 참여자의 종류와 역할 구분
- 역할과 그에 따른 고유한 액티비티
- 역할과 비즈니스 프로세스의 진화
- 역할의 식별과 이해
- 액티비티와 시나리오
- 시나리오와 변종 프로세스
- 프로젝트 효율성
- 시나리오 모델링
- 참여자 역할의 차별화
- 액티비티에 대한 책임성 부여
- 상호작용 모델링하기
- 생산자-소비자의 상호작용
- 동시에 발생하는 상호작용
- 단순 표기법
- 시나리오 변형
- 예외처리
- 상세화 수준은 얼마나 충분한가?
- 액티비티 다이어그램 사용을 위한 지침
- 요약
- 프로세스 아키텍처에 대한 핵심 질문
- 추천 문헌
- 10장 마일스톤
- 기본적인 프로세스 마일스톤
- 마일스톤 순서의 변이
- 그룹화된 마일스톤
- 마일스톤의 인식에 따른 설계
- 마일스톤을 이용한 프로세스 간 커플링 감소
- 요약
- 마일스톤에 대한 핵심 질문
- 11장 프로세스 제약조건
- 비즈니스 프로세스 제약조건에 의한 시스템 제약조건 도출
- 성능 제약조건
- 속도와 응답시간
- 핵심 성과 지표
- 성능 서비스 수준 협약
- 고가용성과 장애 허용성
- 용어 정의
- 모든 상대적인 것
- 투자 대 위험성
- 비즈니스 프로세스의 설계가 시스템 투자에 주는 영향
- 위험성에 주목하라
- 위험성 관련 서비스 수준 협약
- 보안
- 보고와 모니터링, 그리고 관리
- 보고
- 모니터링
- 관리
- 예외사항 처리
- 테스트와 인수
- 시스템 설계에 영향을 주는 테스트
- 테스트를 통해 컴포넌트의 추가
- 테스트에 필요한 환경
- 준수해야 할 제약조건
- 요약
- 프로세스 제약조건에 대한 핵심 질문
- 추천 문헌
- 12장 관련 프로세스
- 서비스 식별
- 공유상태 관리
- 서비스 정의의 정제
- 기존 프로세스의 모델링
- 트리거 이벤트
- 독립 프로세스
- 의존 프로세스
- 이벤트 기반 프로세스로의 변화
- 요약
- 관련 프로세스에 대한 핵심 질문
- 서비스 식별
- 13장 도메인 모델링
- UML 클래스 표기법
- ATM 사례에 대한 도메인 모델
- 도메인 모델의 역공학
- 요약
- 도메인 모델링에 대한 핵심 질문
- 추천 문헌
- 14장 아키텍처: 프로세스와 도메인 모델링
- 프로세스와 도메인의 모델링이 주는 의미와 역할
- 표준 및 우수 사례의 선정
- 프로세스와 도메인 지식의 전달 관리
- 프로젝트 모델의 검토
- 비즈니스 프로세스와 도메인 모델링 저장소의 관리
- 비즈니스 프로세스 패턴의 정의
- 공통 데이터 모델 표기법의 정의
- 요약
- 엔터프라이즈 프로세스와 도메인 모델링에 대한 핵심 질문
- 3부 시스템 전반
- 15장 시스템 아키텍처 개요
- CORBA 경험으로부터의 교훈
- 효율적으로 아키텍처 조사하기
- 아키텍처 이슈에 순서 부여 하기
- 주기적인 아키텍처 평가
- 요약
- 시스템 아키텍처 개요에 대한 핵심 질문
- 16장 최상위 수준 시스템 아키텍처
- 첫 번째 구조
- 초기 평가
- 통신과 모듈화
- 통신 대기시간
- 통신 대역폭
- 데이터 마샬링
- 지리적 분배
- 다른 모듈화 방법에 대한 고려
- 서비스 식별과 성능
- 시스템 상호작용 모델링
- 전개 모델링
- 성능 언급하기
- 순간 최대 부하
- 응답시간
- 응답시간 테스트 명세
- 초기 아키텍처평가
- 최상위 수준 아키텍처에 대한 핵심 질문
- 추천 문헌
- 4부 커뮤니케이션
- 17장 전송
- 전송기술
- 사람 대 사람 상호작용
- 사람과 시스템 간 전송
- 시스템 간의 전송
- 전송 선택하기
- 메시징 서버 토폴로지
- 수용능력한계 극복하기
- 지리적인 분산 극복하기
- 수용능력
- 점대점 상호작용 패턴
- 점대점 중계자
- 전송이 제공되는 서비스
- 요약
- 전송에 대한 핵심 질문
- 추천 문헌
- 전송기술
- 18장 어댑터
- API 기반의 어댑터
- 데이터베이스 기반의 어댑터
- API와 데이터베이스 방식의 조합
- 파일 기반의 어댑터
- 프로토콜 기반의 어댑터
- 어댑터 사용의 문서화
- 요약
- 어댑터에 대한 핵심 질문
- 통신전략 정의하기
- 19장 엔터프라이즈 아키텍처: 통신
- 상호작용 표준
- 어댑터 표준화
- 요약
- 엔터프라이즈 아키텍처 통신에 대한 핵심 질문
- 5부 데이터와 오퍼레이션
- 20장 데이터 고려사항
- 메시지 의미와 오퍼레이션 이름
- 메시지 의미
- 메시지 의미
- 메시지 의미와 오퍼레이션 이름
- 21장 메시지와 오퍼레이션
- 오페레이션 이름 붙이기
- 전송 목적지와 오퍼레이션 번들링
- 번들링 장점
- 번들링 단점
- 절충
- 중계방식의 전송
- 콘텐츠 표현
- 콘텐츠 변환
- 콘텐츠 변환 내의 참조 데이터
- 요약
- 메시지와 오페레이션에 대한 핵심 질문
- 22장 데이터 일관성: 한 버전의 진실
- 데이터 일관성 유지 방안
- 단일 정보 스토리지 시스템을 사용한 캐시 데이터
- 분산 트랜잭션을 통한 조정된 업데이트
- 데이터의 수정은 자유롭게, 조정은 이후에
- 데이터 불일치 관리
- 데이터 관리 비즈니스 프로세스
- 요약
- 데이터 일관성에 대한 핵심 질문
- 추천 문헌
- 공통 데이터 모델이 무엇인가?
- 23장 공통 데이터 모델
- CDM과 도메인모델과의 관계
- 다수의 CDM 표현의 필요성
- 공통 데이터 모델 변경 계획
- 스키마 버전 관리
- 변경 추가에서의 버전관리
- 스키마 이전 거버넌스
- 언제 공통 데이터 모델을 사용할 것인가
- 직접 변환을 선택하는 기준
- 공통 데이터 모델을 선택하는 기준
- 요약
- 공통 데이터 모델에 대한 핵심 질문
- 24장 식별자(유일 명칭)
- 아이덴티티 관리 주체
- 계층적인 식별자
- 기업 내부의 계층적인 식별자
- UUID와 GUID
- 아이덴티티 문제의 해결
- 아이덴티티 문제의 결과
- 아이덴티티 문제의 원인
- 식별자와 잘못된 객체와의 연관
- 하나의 식별자와 복수 객체와의 연관
- 복수 식별자와 단일 객체와의 연관
- 식별자의 매핑
- 식별자의 연관 작업
- 요약
- 식별자에 대한 핵심 질문
- 25장 결과 검증
- 열거 값 확인하기
- 언제 어디서 검증해야 하나
- 요약
- 데이터 검증에 대한 핵심 질문
- 네이밍 계획
- 26장 엔터프라이즈 아키텍처: 데이터
- 콘텐츠 변환 아키텍처
- 정보 스토리지 시스템
- 공통 데이터 모델
- 식별자
- 데이터 품질 관리
- 요약
- 엔터프라이즈 아키텍처 데이터에 대한 핵심 질문
- 6부 조정
- 27장 조정과 장애 감지
- 상호작용을 포함하는 액티비티 실행 관리 패턴
- 조정 패턴 스타일
- 파이어 앤 포겟 조정 패턴
- 이벤트 기반의 두 참여자간 파이어 앤 포겟
- 이벤트 기반의 다수 참여자 간 파이어 앤 포겟
- 파이어 앤 포겟에서 장애 감지하기
- 이벤트 기반이 아닌 파이어 앤 포겟
- 요청-응답 패턴
- 이벤트 기반 두 참여자 간 요청-응답
- 응답시간 서비스 수준 협약
- 이벤트 기반 다수 참여자간 요청-응답
- 이벤트 기반 비동기식 요청-응답
- 비동기식 요청-응답에서의 복잡성
- 비동기식 결과에 대한 동기식 약속
- 위임
- 확답을 포함한 위임
- 요약
- 조정에 관한 핵심 질문
- 28장 트랜잭션: 둘 이상의 액티비티 관리
- 2-단계 커밋 분산
- 2-단계 커밋 프로토콜의 한계
- 보상 트랜잭션
- 보상 트랜잭션의 한계
- 요약
- 트랜잭션에 대한 핵심 질문
- 추천 문헌
- 29장 프로세스 모니터와 관리자
- 프로세스 모니터링
- 모니터링 장애의 영향을 최소화하기
- 모니터 역할을 하는 프로세스 관리자
- 프로세스 관리의 한계점
- 요약
- 프로세스 모니터링과 관리에 대한 핵심 질문
- 장애감지 개선을 위한 조정 패턴 선정
- 30장 장애감지와 대응
- 장애 대응
- 장애 결과 기록
- 장애 공지
- 장애 공지 대응
- 장애복구
- 요약
- 장애감지와 장애복구에 대한 핵심 질문
- 선호 조정 패턴
- 장애 대응
- 31장 엔터프라이즈 아키텍처: 조정
- 장애 기록
- 장애 알림
- 복구 프로세스
- 요약
- 엔터프라이즈 조정에 대한 핵심 질문
- 7부 고가용성과 장애 허용성, 부하 분산
- 32장 고가용성과 장애 허용성의 기초
- 장애감지 전략
- 직접적인 컴포넌트 모니터링
- 하트비트 모니터링
- 라이브니스 체크
- 페일오버 관리
- 클라이언트의 리다이렉트
- 요약
- 고가용성과 장애 허용성에 대한 핵심 질문
- 상태가 없는 컴포넌트와 상태가 있는 컴포넌트
- 상태 없는 페일오버
- 장애감지 전략
- 33장 상태가 없는 페일오버와 상태가 있는 페일오버
- 조정을 통해 진행 중인 작업 저장하기
- 상태가 있는 페일오버
- 스토리지 복제
- 컴포넌트 내부의 동기식 복제
- 컴포넌트간 동기식 복제
- 비동기식 복제와 데이터 유실
- 지속상태 컴포넌트 페일오버
- 요약
- 페일오버에 대한 핵심 질문
- 추천 문헌
- 34장 다중 컴포넌트 페일오버
- 사이트 내의 페일오버와 사이트 간의 페일오버
- 클러스터링: 사이트 내의 페일오버 기술
- 비동기적인 복제를 통한 개별 어플리케이션의 페일오버 방안
- 비즈니스 프로세스의 장애 허용성Fault Tolerant 확보 방안
- 요약
- 다중 컴포넌트 페일오버에 대한 핵심 질문
- 작업 할당 전략
- 35장 작업 부하 분배
- 분배 관리와 작업 완료
- 순차 처리의 문제
- 중앙집중 순서관리
- 분산 순서관리
- 공유 지속상태에 접근하기
- 지리적 작업 부하 분배
- 요약
- 부하 분배에 대한 핵심 질문
- 36장 엔터프라이즈 아키텍처: 장애 허용성과 고가용성, 부하 분산
- 비즈니스 프로세스 분류
- 정보 저장
- 개별적인 컴포넌트와 서비스 페일오버failover 패턴
- 서비스의 장애 허용성과 고가용성을 확보하기 위한 복합 패턴
- 비즈니스 프로세스 장애 허용성과 고가용성을 위한 복합적인 패턴
- 요약
- 장애 허용성과 고가용성, 부하 분산에 대한 핵심 질문
- 추천 문헌
- 8부 아키텍처 완성
- 37장 프로세스 보안
- 신원 확인과 권한 부여
- 인증 프로세스
- 인증을 위한 참조 정보
- 권한통제
- 입도 문제
- 그룹과 역할
- 그룹과 역할의 한계
- 암호화
- 전자 서명화
- 다른 보안 관련 요구사항
- 참조 데이터 서버와 성능
- 신뢰구간
- 채널 기능
- 구역 기능과 정책 에이전트
- 다중구역 보안
- 요약
- 보안에 대한 핵심 질문
- 추천 문헌
- 신원 확인과 권한 부여
- 38장 프로세스 모니터링
- 성능 모니터링
- 단일 지점에서의 모니터링
- 두 지점에서의 연관성 없는 모니터링
- 두 지점에서의 연관성 있는 모니터링
- 프로세스 상태 모니터링
- 관리감독 프로세스
- 성능 모니터링의 영향
- 요약
- 모니터링에 대한 핵심 질문
- 성능 모니터링
- 39장 아키텍처 평가
- 사용성
- 성능
- 필요 컴포넌트 자원 분석
- CPU 필요량의 추정
- 메시지 처리와 디스크 성능
- 전개 부하 분석
- 부하 모델의 진화
- 비용과 일정에 대한 타당성
- 관측성
- 진화 능력
- 스트레스 상황 대응 능력
- 요약
- 아키텍처 평가에 대한 핵심 질문
- 추천 문헌
- 단위 테스트와 테스트 도구, 회귀 테스트
- 40장 테스트
- 통합 테스트와 테스트 순서 정하기
- 기능과 시스템 테스트 환경
- 성능 테스트
- 용량 측정
- 시스템 용량 테스트
- 장애 테스트
- 요약
- 테스트에 대한 핵심 질문
- 9부 진보적 주제
- 41장 복잡한 프로세스의 표현
- 커뮤니케이션의 세부사항 생략하기
- 참여자 액티비티의 세부사항 생략하기
- 지원하는 참여자 생략하기
- 서브프로세스 추상화하기
- 요약
- 복잡한 프로세스의 표기에 대한 핵심 질문
- 42장 프로세스 관리와 워크플로우
- 프로세스 관리
- 프로세스 관리 목표
- 관리 프로세스는 작업 프로세스가 아니다!
- 프로세스와 작업 간의 분리를 유지하기
- 작업 할당 방식
- 작업 큐와 작업 할당
- 워크플로우 시작
- 관리 프로세스의 장애 허용성 지원
- 장애 허용성 워크플로우 엔진의 사용
- 관리 프로세스 상태의 체크포인팅
- 관리 프로세스의 요청-응답 호출
- 하이브리드 장애 허용성 기술
- 휴먼 인터페이스
- 작업 할당 기능의 역할
- 데이터의 역할
- 사용자 인터페이스의 장애 복구
- 관련 프로세스
- 우선순위가 부여된 작업
- 동적인 작업 배정
- 결과와 프로세스의 동적인 정의
- 설계의 표기
- 구현 프로세스의 정의
- 계속되는 변경의 수용
- 요약
- 프로세스 관리와 워크플로우에 대한 핵심 질문
- 추천 문헌
- 프로세스 관리
- 43장 엔터프라이즈 아키텍처 그룹
- 절반의 아키텍처 그룹이라도 없는 것보다는 낫다. 하지만 만족할 만큼은 아니다
- 베스트 프랙티스 개발
- 지식 전수
- 문서화
- 교육
- 멘토링
- 거버넌스
- 진화하는 요구사항으로 설계하기
- 계층적 아키텍처
- 지리적 배포
- 조직적인 조정
- 요약
- 엔터프라이즈 아키텍처 그룹에 대한 핵심 질문
- 맺는 말
- 주어진 일에 집중하자
- 다른 전문가의 도움을 받자
- 실용적이면서도 장기적인 관점을 갖자
- 『SOA: 서비스 지향 아키텍처』
- 1장 개론
- 1.1 이 책이 중요한 이유
- 1.1.1 잘못된 SOA
- 1.1.2 이상적인 SOA
- 1.1.3 실제 SOA
- 1.2 집필 목적
- 1.2.1 SOA, 서비스 지향, 웹서비스의 이해
- 1.2.2 웹서비스를 활용한 SOA 구축 방법
- 1.3 이 책을 읽어야 할 독자
- 1.4 이 책에서 다루지 않는 것
- 1.5 구성
- 1.5.1 1부: SOA와 웹서비스 기본
- 1.5.2 2부: SOA와 WS-* 확장
- 1.5.3 3부: SOA와 서비스 지향
- 1.5.4 4부: SOA 계획과 분석
- 1.5.5 5부: SOA 기술과 설계
- 1.5.6 관례
- 1.6 추가 정보
- 1.6.1 XML과 웹서비스 통합 프레임워크
- 1.6.2 www.serviceoriented.ws
- 1.6.3 저자 연락처
- 1.1 이 책이 중요한 이유
- 2장 사례연구
- 2.1 사례연구 활용
- 2.1.1 편집 스타일
- 2.1.2 실 사례와 개념의 관계
- 2.1.3 코드 샘플
- 2.2 사례 1 배경: 레일코
- 2.2.1 역사
- 2.2.2 기술 인프라
- 2.2.3 자동화 솔루션
- 2.2.4 비즈니스 목표와 문제점
- 2.3 사례 2 배경: TLS
- 2.3.1 역사
- 2.3.2 기술 인프라
- 2.3.3 자동화 솔루션
- 2.3.4 비즈니스 목표와 문제점
- 2.1 사례연구 활용
- 1부 SOA와 웹서비스 기본
- 3장 SOA 소개
- 3.1 SOA 기본
- 3.1.1 서비스 지향의 개념
- 3.1.2 서비스의 로직 캡슐화 방식
- 3.1.3 서비스 간의 연결 방식
- 3.1.4 서비스 간의 커뮤니케이션 방식
- 3.1.5 서비스 설계 방식
- 3.1.6 서비스 구축 방식
- 3.1.7 초기 SOA
- 3.2 최신 SOA 특징
- 3.2.1 서비스 지향 컴퓨팅 플랫폼의 핵심
- 3.2.2 서비스 품질 향상
- 3.2.3 자율성
- 3.2.4 공개 표준 기반
- 3.2.5 다양한 벤더 지원
- 3.2.6 서비스 발견성
- 3.2.7 상호운영성
- 3.2.8 통합용이성
- 3.2.9 아키텍처 조합
- 3.2.10 재사용성
- 3.2.11 확장성
- 3.2.12 서비스 지향 비즈니스 모델 지원
- 3.1 SOA 기본
- 3.2.13 추상화된 레이어 구현
- 3.2.14 느슨한 결합관계
- 3.2.15 조직적 민첩성
- 3.2.16 블록 쌓기 방식의 구축
- 3.2.17 진화의 산물
- 3.2.18 계속되는 진화
- 3.2.19 실현가능한 아이디어
- 3.2.20 SOA 정의
- 3.2.21 특징 요약
- 3.3 SOA에 대한 오해
- 3.3.1 웹서비스를 사용하는 애플리케이션은 서비스 지향 솔루션이다
- 3.3.2 SOA는 웹서비스의 마켓팅 용어일 뿐이다
- 3.3.3 SOA는 분산컴퓨팅의 마켓팅 용어일 뿐이다
- 3.3.4 SOA는 분산컴퓨팅을 단순화한 것이다
- 3.3.5 WS-* 확장을 사용하는 웹서비스 애플리케이션은 서비스 지향 솔루션이다
- 3.3.6 웹서비스만 이해하면 SOA를 구축할 수 있다
- 3.3.7 SOA를 적용하면 모든 것이 연계된다.
- 3.4 SOA의 실익
- 3.4.1 향상된 통합성
- 3.4.2 본질적인 재사용성
- 3.4.3 아키텍처와 솔루션 간소화
- 3.4.4 기존 시스템 재투자 감소
- 3.4.5 데이터 표현 방식의 표준화
- 3.4.6 커뮤니케이션 인프라 투자
- 3.4.7 최적의 대안
- 3.4.8 조직적 민첩성
- 3.5 SOA 적용의 함정
- 3.5.1 기존 분산아키텍처 방식의 답습
- 3.5.2 표준화 되지 않은 SOA
- 3.5.3 계획 없는 전환
- 3.5.4 XML 기반이 아닌 아키텍처
- 3.5.5 성능요구사항에 대한 오해
- 3.5.6 웹서비스 보안에 대한 오해
- 3.5.7 플랫폼을 고려하지 않은 개발
- 4장 SOA의 진화
- 4.1 SOA 연대기
- 4.1.1 XML 역사
- 4.1.2 웹서비스 역사
- 4.1.3 SOA 역사
- 4.1.4 SOA에서 XML과 웹서비스의 재구성
- 4.2 SOA의 계속되는 진화
- 4.2.1 표준, 스펙, 확장
- 4.2.2 표준 기구
- 4.2.3 주요 벤더
- 4.3 SOA의 근원
- 4.3.1 아키텍처의 개념
- 4.3.2 SOA와 클라이언트 서버 아키텍처
- 4.3.3 SOA와 분산 인터넷 아키텍처
- 4.3.4 SOA와 하이브리드 웹서비스 아키텍처
- 4.3.5 서비스 지향과 객체 지향 (1)
- 5장 웹서비스와 초기 SOA
- 5.1 웹서비스 프레임워크
- 5.2 웹서비스에서의 서비스
- 5.2.1 서비스 역할
- 5.2.2 서비스 모델
- 5.3 WSDL 서비스 명세
- 5.3.1 서비스 접점과 서비스 명세
- 5.3.2 추상 명세
- 5.3.3 실제 명세
- 5.3.4 메타데이터와 서비스 계약
- 5.3.5 의미적 명세
- 5.3.6 서비스 명세 통지와 발견
- 5.4 SOAP 메시징
- 5.4.1 메시지
- 5.4.2 노드
- 5.4.3 메시지 경로
- 2부 SOA와 WS-* 확장
- 6장 웹서비스와 최신 SOA (액티비티 관리와 구성)
- 6.1 메시지 교환 패턴 (MEP)
- 6.1.1 기본적인 MEP
- 6.1.2 MEP와 SOAP
- 6.1.3 MEP와 WSDL
- 6.1.4 MEP와 SOA
- 6.2 서비스 액티비티
- 6.2.1 기본 서비스 액티비티와 복합 서비스 액티비티
- 6.2.2 서비스 액티비티와 SOA
- 6.3 코디네이션
- 6.3.1 코디네이터 구성
- 6.3.2 코디네이션 유형과 프로토콜
- 6.3.3 코디네이션 환경과 참여자
- 6.3.4 서비스 활성화와 등록 프로세스
- 6.3.5 완료 프로세스
- 6.3.6 코디네이션과 SOA
- 6.4 최소단위 트랜잭션
- 6.4.1 ACID 트랜잭션
- 6.4.2 프로토콜
- 6.4.3 코디네이터
- 6.4.4 프로세스
- 6.4.5 최소단위 트랜잭션과 SOA
- 6.5 비즈니스 액티비티
- 6.5.1 프로토콜
- 6.5.2 코디네이터
- 6.5.3 상태
- 6.5.4 비즈니스 액티비티와 최소단위 트랜잭션
- 6.5.5 비즈니스 액티비티와 SOA
- 6.6 오케스트레이션
- 6.6.1 비즈니스 프로토콜과 프로세스 정의
- 6.6.2 프로세스 서비스와 파트너 서비스
- 6.6.3 기본 액티비티와 구조적 액티비티
- 6.6.4 시퀀스, 흐름, 연결
- 6.6.5 오케스트레이션과 액티비티
- 6.6.6 오케스트레이션과 코디네이션
- 6.6.7 오케스트레이션과 SOA
- 6.7 커리어그래피
- 6.7.1 협업
- 6.7.2 역할과 참여자
- 6.7.3 관계와 채널
- 6.7.4 상호작용과 작업단위
- 6.7.5 재사용성, 구성용이성, 모듈성
- 6.7.6 오케스트레이션과 커리어그래피
- 6.7.7 커리어그래피와 SOA
- 6.1 메시지 교환 패턴 (MEP)
- 7장 웹서비스와 최신 SOA (진보한 메시징, 메타데이터, 보안)
- 7.1 어드레싱
- 7.1.1 엔드포인트 참조
- 7.1.2 메시지 정보 헤더
- 7.1.3 어드레싱과 전송 프로토콜 독립성
- 7.1.4 어드레싱과 SOA
- 7.2 신뢰성 있는 메시징 (RM)
- 7.2.1 RM 공급지와 목적지, 애플리케이션 공급지와 목적지
- 7.2.2 시퀀스
- 7.2.3 수신확인
- 7.2.4 전달 보장
- 7.2.5 신뢰성 있는 메시징과 어드레싱
- 7.2.6 신뢰성 있는 메시징과 SOA
- 7.3 상관관계
- 7.3.1 상관관계 개념
- 7.3.2 MEP에서 상관관계와 액티비티
- 7.3.3 코디네이션에서 상관관계
- 7.3.4 오케스트레이션에서 상관관계
- 7.3.5 어드레싱에서 상관관계
- 7.3.6 신뢰성 있는 메시징에서 상관관계
- 7.3.7 상관관계와 SOA
- 7.4 정책
- 7.4.1 WS-Policy 프레임워크
- 7.4.2 정책 선언과 대안
- 7.4.3 정책 선언 유형과 어휘
- 7.4.4 정책 주제와 범위
- 7.4.5 정책 표현과 첨부
- 7.4.6 핵심사항
- 7.4.7 코디네이션에서 정책
- 7.4.8 오케스트레이션과 커리어그래피에서 정책
- 7.4.9 신뢰성 있는 메시징에서 정책
- 7.4.10 정책과 SOA
- 7.5 메타데이터 교환
- 7.5.1 WS-MetadataExchange 스펙
- 7.5.2 Get Metadata 요청과 응답메시지
- 7.5.3 요청과 응답 메시지 구하기
- 7.5.4 메타데이터에 대한 선택적 접근
- 7.5.5 메타데이터 교환과 서비스 명세 발견
- 7.5.6 메타데이터 교환과 버전 컨트롤
- 7.5.7 메타데이터 교환과 SOA
- 7.6 보안
- 7.6.1 확인, 인증, 권한관리
- 7.6.2 싱글사인온(SSO)
- 7.6.3 기밀성과 무결성
- 7.6.4 전송 레벨 보안과 메시지 레벨 보안
- 7.6.5 암호화와 디지털 서명
- 7.6.6 보안과 SOA
- 7.7 알림과 이벤트처리
- 7.7.1 발행과 구독의 개념
- 7.7.2 하나의 개념에 두 개의 스펙
- 7.7.3 WS-Notification 프레임워크
- 7.7.4 WS-Eventing 스펙
- 7.7.5 WS-Notification 과 WS-Eventing
- 7.7.6 알림, 이벤트처리, SOA
- 7.1 어드레싱
- 3부 SOA와 서비스 지향
- 8장 서비스 지향의 원칙
- 8.1 서비스 지향과 엔터프라이즈
- 8.2 서비스 지향 아키텍처의 구성요소
- 8.2.1 웹서비스 프레임워크의 논리적인 구성요소
- 8.2.2 자동화 로직의 논리적인 구성요소
- 8.2.3 SOA 구성요소
- 8.2.4 SOA 구성요소간의 연관성
- 8.3 서비스 지향의 원칙
- 8.3.1 재사용성
- 8.3.2 공식 계약
- 8.3.3 느슨한 결합
- 8.3.4 추상화
- 8.3.5 조합성
- 8.3.6 자율성
- 8.3.7 무상태성
- 8.3.8 발견용이성
- 8.4 서비스 지향 원칙간의 상호관계
- 8.4.1 서비스 재사용성
- 8.4.2 서비스 계약
- 8.4.3 서비스의 느슨한 결합
- 8.4.4 서비스 추상화
- 8.4.5 서비스 조합성
- 8.4.6 서비스 자율성
- 8.4.7 서비스 무상태성
- 8.4.8 서비스 발견용이성
- 8.5 서비스 지향과 객체 지향 (2)
- 8.6 웹서비스에 내재된 서비스 지향 원칙
- 9장 서비스 레이어
- 9.1 서비스 지향과 최신 SOA
- 9.1.1 SOA 특성과 근원
- 9.1.2 직접 지원하지 않는 SOA 특성
- 9.2 서비스 레이어 추상화
- 9.2.1 서비스 레이어로 해결할 수 있는 문제
- 9.3 애플리케이션 서비스 레이어
- 9.4 비즈니스 서비스 레이어
- 9.5 오케스트레이션 서비스 레이어
- 9.6 독립적인 서비스
- 9.7 서비스 레이어 구성 시나리오
- 9.7.1 시나리오 1: 하이브리드 애플리케이션 서비스
- 9.7.2 시나리오 2: 하이브리드 애플리케이션 서비스, 유틸리티 애플리케이션 서비스
- 9.7.3 시나리오 3: 태스크 중심 비즈니스 서비스, 유틸리티 애플리케이션 서비스
- 9.7.4 시나리오 4: 태스크 중심 비즈니스 서비스, 엔티티 중심 비즈니스 서비스, 유틸리티 애플리케이션 서비스
- 9.7.5 시나리오 5: 프로세스 서비스, 하이브리드 애플리케이션 서비스, 유틸리티 애플리케이션 서비스
- 9.7.6 시나리오 6: 프로세스 서비스, 태스크 중심 비즈니스 서비스, 유틸리티 애플리케이션 서비스
- 9.7.7 시나리오 7: 프로세스 서비스, 태스크 중심 비즈니스 서비스, 엔티티 중심 비즈니스 서비스, 유틸리티 애플리케이션 서비스
- 9.7.8 시나리오 8: 프로세스 서비스, 엔티티 중심 비즈니스 서비스, 유틸리티 애플리케이션 서비스
- 9.1 서비스 지향과 최신 SOA
- 10장 SOA 구축 전략
- 10.1 SOA 구축 라이프사이클 단계
- 10.1.1 SOA 구축 라이프사이클의 기본 단계
- 10.1.2 서비스 지향 분석
- 10.1.3 서비스 지향 설계
- 10.1.4 서비스 개발
- 10.1.5 서비스 테스트
- 10.1.6 서비스 배치
- 10.1.7 서비스 관리
- 10.1.8 SOA 구축 전략
- 10.2 하향식 전략
- 10.2.1 프로세스
- 10.2.2 찬반 양론
- 10.3 상향식 전략
- 10.3.1 프로세스
- 10.3.2 찬반 양론
- 10.4 기민한(Agile) 전략
- 10.4.1 프로세스
- 10.4.2 찬반 양론
- 10.1 SOA 구축 라이프사이클 단계
- 11장 서비스 지향 분석 (도입)
- 11.1 서비스 지향 분석 개요
- 11.1.1 목적
- 11.1.2 프로세스
- 11.2 비즈니스 중심 SOA의 장점
- 11.2.1 기민한 비즈니스 모델
- 11.2.2 오케스트레이션을 위한 프로세스 준비
- 11.2.3 재사용 지원
- 11.2.4 서비스 지향 엔터프라이즈 시스템 환경 구현
- 11.3 비즈니스 서비스 도출
- 11.3.1 비즈니스 서비스의 출처
- 11.3.2 비즈니스 서비스의 유형
- 11.3.3 비즈니스 서비스와 오케스트레이션
- 11.1 서비스 지향 분석 개요
- 12장 서비스 지향 분석 (서비스 모델링)
- 12.1 서비스 모델링
- 12.1.1 "서비스"와 "서비스 후보"
- 12.1.2 프로세스 설명
- 12.2 서비스 모델링 가이드
- 12.2.1 프로세스간 잠재적 재사용성 고려
- 12.2.2 프로세스내 잠재적 재사용성 고려
- 12.2.3 프로세스 관련 의존 관계 고려
- 12.2.4 애플리케이션간 재사용
- 12.2.5 분할에 대한 고려
- 12.2.6 작업의 논리적 단위 식별
- 12.2.7 로직 경계 중복 방지
- 12.2.8 프로세스 서비스 흉내내기
- 12.2.9 균형 있는 모델
- 12.2.10 서비스 모델링 로직 분류
- 12.2.11 적절한 모델링 자원 할당
- 12.2.12 비즈니스 서비스 모델링 표준 제정 및 공표
- 12.3 서비스 모델 로직 분류
- 12.3.1 SOE(Service-oriented Enterprise) 모델
- 12.3.2 엔터프라이즈 비즈니스 모델
- 12.3.3 "빌딩 블록"과 "서비스 모델"
- 12.3.4 기본 모델링 빌딩 블록
- 12.4 여러 서비스 모델링 접근법
- 12.1 서비스 모델링
- 13장 서비스 지향 설계 (도입)
- 13.1 서비스 지향 설계 개요
- 13.1.1 목적
- 13.1.2 "설계 표준"과 "산업 표준"
- 13.1.3 프로세스
- 13.1.4 전제조건
- 13.2 WSDL관련 XML스키마 언어 기본 엘리먼트
- 13.2.1 schema
- 13.2.2 element
- 13.2.3 complexType, simpleType
- 13.2.4 import, include
- 13.2.5 다른 중요 엘리먼트
- 13.3 WSDL 언어 기본 엘리먼트
- 13.3.1 definitions
- 13.3.2 types
- 13.3.3 message, part
- 13.3.4 portType, interface, operation
- 13.3.5 operation에서 input, output
- 13.3.6 binding
- 13.3.7 binding에서 input, output
- 13.3.8 service, port, endpoint
- 13.3.9 import
- 13.3.10 documentation
- 13.4 SOAP 언어 기본 엘리먼트
- 13.4.1 Envelope
- 13.4.2 Header
- 13.4.3 Body
- 13.4.4 Fault
- 13.5 서비스 인터페이스 설계도구
- 13.5.1 자동 생성
- 13.5.2 설계 도구
- 13.5.3 직접 작성하기
- 13.1 서비스 지향 설계 개요
- 14장 서비스 지향 설계(SOA 조합 가이드라인)
- 14.1 SOA 구성단계
- 14.1.1 스텝 1: 서비스 레이어 선택
- 14.1.2 스텝 2: 중요 표준 배치
- 14.1.3 스텝 3: SOA 확장 선택
- 14.2 서비스 레이어 선택 시 고려사항
- 14.3 핵심 SOA 표준 배치 시 고려사항
- 14.3.1 산업표준과 SOA
- 14.3.2 XML과 SOA
- 14.3.3 WS-I 기본 프로파일
- 14.3.4 WSDL과 SOA
- 14.3.5 XML 스키마와 SOA
- 14.3.6 SOAP과 SOA
- 14.3.7 네임스페이스와 SOA
- 14.3.8 UDDI와 SOA
- 14.4 SOA 확장 선택 시 고려사항
- 14.4.1 SOA 특징 선택
- 14.4.2 WS-* 스펙 선택
- 14.4.3 WS-BPEL과 SOA
- 14.1 SOA 구성단계
- 15장 서비스 지향 설계 (서비스 설계)
- 15.1 서비스 설계 개요
- 15.1.1 설계 표준
- 15.1.2 프로세스 설명
- 15.1.3 전제조건
- 15.2 엔티티 중심 비즈니스 서비스 설계
- 15.2.1 프로세스 설명
- 15.3 애플리케이션 서비스 설계
- 15.3.1 프로세스 설명
- 15.4 태스크 중심 비즈니스 서비스 설계
- 15.4.1 프로세스 설명
- 15.5 서비스 설계 가이드
- 15.5.1 명명 표준
- 15.5.2 적절한 수준의 인터페이스 크기
- 15.5.3 확장 가능한 서비스 오퍼레이션 설계
- 15.5.4 서비스 요청자 식별
- 15.5.5 모듈화된 WSDL 문서 활용
- 15.5.6 네임스페이스 주의사항
- 15.5.7 SOAP의 document와 literal 어트리뷰트
- 15.5.8 WS-I 프로파일 사용
- 15.5.9 메타데이터로 서비스 문서화
- 15.1 서비스 설계 개요
- 16장 서비스 지향 설계 (비즈니스 프로세스 설계)
- 16.1 WS-BPEL 언어 기본
- 16.1.1 BPEL4WS와 WS-BPEL의 역사
- 16.1.2 필요조건
- 16.1.3 process
- 16.1.4 partnerLinks, partnerLink
- 16.1.5 partnerLinkType
- 16.1.6 variables
- 16.1.7 getVariableProperty, getVariableData 함수
- 16.1.8 sequence
- 16.1.9 invoke
- 16.1.10 receive
- 16.1.11 reply
- 16.1.12 switch, case, otherwise
- 16.1.13 assign, copy, from, to
- 16.1.14 faultHandlers, catch, catchAll
- 16.1.15 다른 WS-BPEL 엘리먼먼트
- 16.2 WS-Coordination 개요
- 16.2.1 CoordinationContext
- 16.2.2 Identifier 및 Expires 엘리먼트들
- 16.2.3 CoordinationType
- 16.2.4 RegistrationService
- 16.2.5 WS-BusinessActivity 코디네이션 유형 지정
- 16.2.6 WS-AtomicTransaction 코디네이션 유형 지정
- 16.3 서비스 지향 비즈니스 프로세스 설계
- 16.3.1 프로세스 정의
- 16.3.1 프로세스 정의
- 16.1 WS-BPEL 언어 기본
- 17장 WS-* 확장 기본
- 17.1 WS-Addressing 언어 기본
- 17.1.1 EndpointReference
- 17.1.2 메시지 정보 헤더 엘리먼트
- 17.1.3 WS-Addressing 재사용성
- 17.2 WS-ReliableMessaging 언어 기본
- 17.2.1 Sequence, MessageNumber, LastMessage
- 17.2.2 SequenceAcknowledgement, AcknowledgementRange
- 17.2.3 Nack
- 17.2.4 AckRequested
- 17.2.5 그 밖의 WS-ReliableMessaging 엘리먼트
- 17.3 WS-Policy 언어 기본
- 17.3.1 Policy 엘리먼트와 일반적인 정책 선언
- 17.3.2 ExactlyOne 엘리먼트
- 17.3.3 All 엘리먼트
- 17.3.4 Usage 어트리뷰트
- 17.3.5 Preference 어트리뷰트
- 17.3.6 PolicyReference 엘리먼트
- 17.3.7 PolicyURIs 어트리뷰트
- 17.3.8 PolicyAttachment 엘리먼트
- 17.3.9 정책 선언들의 추가적인 유형
- 17.4 WS-MetadataExchange 언어 기본
- 17.4.1 GetMetadata 엘리먼트
- 17.4.2 Dialect 엘리먼트
- 17.4.3 Identifier 엘리먼트
- 17.4.4 Metadata, MetadataSection, MetadataReference 엘리먼트
- 17.4.5 Get 메시지
- 17.5 WS-Security 언어 기본
- 17.5.1 Security 엘리먼트 (WS-Security)
- 17.5.2 UsernameToken 및 Username, Password 엘리먼트 (WS-Security)
- 17.5.3 BinarySecurityToken 엘리먼트 (WS-Security)
- 17.5.4 SecurityTokenReference 엘리먼트 (WS-Security)
- 17.5.5 Security 엘리먼트 내용 구성하기 (WS-Security)
- 17.5.6 EncryptedData 엘리먼트 (XML-Encryption)
- 17.5.7 CipherData 및 CipherValue, CipherReference 엘리먼트 (XML-Encryption)
- 17.5.8 XML-Signature 엘리먼트
- 17.1 WS-Addressing 언어 기본
- 18장 SOA 플랫폼
- 18.1 SOA 플랫폼 기본
- 18.1.1 블록 쌓기로 구축하는 기본 플랫폼
- 18.1.2 일반적인 SOA 플랫폼 레이어
- 18.1.3 SOA 레이어간 관계와 기술
- 18.1.4 서비스 기술 아키텍처 기본
- 18.1.5 벤더 플랫폼
- 18.2 J2EE의 SOA 지원
- 18.2.1 플랫폼 개요
- 18.2.2 초기 SOA 지원
- 18.2.3 서비스 지향 원칙 지원
- 18.2.4 최신 SOA 지원
- 18.3 .NET의 SOA 지원
- 18.3.1 플랫폼 개요
- 18.3.2 초기 SOA 지원
- 18.3.3 서비스 지향 원칙 지원
- 18.3.4 최신 SOA 지원
- 18.4 통합 시 고려사항
- 18.1 SOA 플랫폼 기본
- 부록 A 사례 연구: 결론
- A.1 레일기공 사
- A.2 TLS 주식회사
- A.3 오아시스 세차장