Sun Java logo     이전      목차      색인      다음     

Sun logo
Sun Java Enterprise System 2004Q2 기술 개요 

4장
라이프 사이클 개념

Java Enterprise System 소프트웨어 기반 비즈니스 솔루션에는 그림 4-1과 같이 세 가지 라이프 사이클 단계로 분류할 수 있는 복잡한 작업이 포함되어 있습니다.

이 장에서는 각 단계에 포함된 작업을 설명하고 해당 작업과 관련된 개념과 용어를 설명합니다.


요구 사항 분석

라이프 사이클의 요구 사항 분석 단계에서는 비즈니스 요구 분석을 배포 시나리오로 변환합니다. 배포 시나리오는 배포 설계를 위한 사양으로 사용됩니다.

요구 사항 분석 단계는 그림 4-1에 표시된 것처럼 세 단계로 분류할 수 있습니다.

성능, 가용성, 보안 및 기타 서비스 품질(QoS) 요구 사항을 모두 결합한 논리적 구조는 다음 그림에 표시된 것처럼 배포 시나리오로 캡슐화됩니다. 라이프 사이클의 요구 사항 분석 단계에 대한 자세한 내용은 Java Enterprise System 배포 계획 백서를 참조하십시오.

그림 4-2  배포 시나리오의 요구 사항 분석 결과

비즈니스 요구가 사용 사례를 통해 논리적 구조로 변환되는 방법을 보여주는 다이어그램[D]


배포

라이프 사이클의 배포 단계에서는 배포 시나리오를 배포 설계로 변환한 다음 구현, 프로토타입 제작 및 작업 환경으로 롤아웃합니다.

배포 프로세스는 솔루션의 논리적 구조뿐 아니라 성능, 가용성, 보안, 확장성, 서비스 가능성 및 기타 서비스 품질(QoS) 요구 사항에 따라서도 다릅니다. 즉, 배포 구조의 서비스 품질(QoS) 차원이 배포 단계에서 큰 역할을 합니다.

배포 프로세스에는 일반적으로 응용 프로그램을 지원하는 데 필요한 모든 계층과 모든 인프라 서비스 수준의 소프트웨어 구성 요소가 포함됩니다. 따라서, 물리적 환경으로 배포할 수 있는 특정 분산 응용 프로그램 구성 요소(J2EE 구성 요소, 웹 서비스 또는 기타 서버) 외에도 응용 프로그램을 지원하는 데 필요한 Java Enterprise System 구성 요소(시스템 구성 요소)를 배포할 수 있습니다.

일반적으로 배포 단계는 여러 작업이 포함된 복잡한 반복 프로세스입니다. 이 절에서는 이 프로세스의 다음 두 가지 단계를 살펴봅니다.

배포 설계

배포 설계 단계에서는 높은 수준의 배포 구조를 만든 다음에 낮은 수준의 구현 설계를 만듭니다.

배포 구조

배포 구조는 배포 시나리오에 지정된 서비스 품질(QoS) 요구 사항을 충족시키기 위해 응용 프로그램의 논리적 빌딩 블록(논리적 구조)을 물리적 컴퓨팅 환경으로 매핑하여 만듭니다.

즉, 다음 그림과 같이 배포 시나리오를 배포 구조로 변환합니다.

그림 4-3  배포 시나리오를 배포 구조로 변환

배포 시나리오가 배포 구조로 변환되는 방법을 보여주는 다이어그램[D]

이 구조적 설계의 한 가지 요소는 성능, 가용성, 보안 및 기타 서비스 품질(QoS) 요구 사항에 맞게 물리적 환경의 크기를 지정하는 것입니다. 크기 지정이 완료되면 시스템 서버 및 응용 프로그램 구성 요소를 물리적 환경의 컴퓨팅 노드에 할당합니다. 결과로 만들어지는 배포 구조에서는 다른 컴퓨팅 노드의 기능, 시스템 인프라 서비스의 특성 및 총 소유 비용이나 총 가용성 비용에 대한 제한을 고려해야 합니다.

배포 시나리오의 Java Enterprise System 구성 요소 수가 많을수록, 그리고 서비스 품질(QoS) 요구 사항이 많을수록 설계에서는 강력한 컴퓨팅 노드 및 높은 네트워크 대역폭이 더욱 더 필요합니다. 하드웨어가 제한되거나 지나치게 비싼 경우 고정 비용(하드웨어)과 가변 비용(인적 자원 요구 사항) 간 또는 다른 서비스 품질(QoS) 간의 균형 조정이 필요할 수 있습니다. 또한, 설계를 보다 정교하게 해야 할 수도 있습니다.

배포 구조 설계는 그리 과학적이지 않기 때문에 종종 반복을 통해 구조를 향상시킬 수 있습니다. 기존 시스템을 점차적으로 확장하여 병목 현상이 발생하면 하드웨어를 조정하거나 구조를 수정하여 병목 현상을 제거합니다.

배포 설계의 출발점으로 Java Enterprise System은 참조 배포 구조 세트를 개발합니다. 참조 구조는 특정 배포 시나리오 즉, 특정 서비스 품질(QoS) 요구 사항을 갖는 논리적 구조를 기반으로 합니다. 참조 구조에서 응용 프로그램은 배포 시나리오에 지정된 모든 서비스 품질(QoS) 요구 사항을 충족하는 방법으로 특정 물리적 환경에 배포됩니다. 성능 테스트는 배포 시나리오를 개발할 때 사용했던 것과 동일한 사용 사례 집합을 기반으로 합니다.

참조 배포 구조 또는 참조 구조 조합을 기반으로 사용자의 배포 시나리오 요구 사항을 거의 충족시키는 첫 번째 배포 구조를 설계할 수 있습니다. 사용자의 배포 시나리오와 참조 구조가 기반으로 하는 배포 시나리오 간의 차이를 고려하여 참조 구조를 조정하거나 참조 구조를 참조점으로 사용할 수 있습니다. 이 방법으로 크기 지정, 성능, 보안, 가용성, 용량 및 서비스 가능성 요구에 대한 영향을 평가할 수 있습니다.

구현 설계

구현 설계에서는 배포 구조를 구현하는 데 필요한 세부 정보를 제공합니다. 여기에서는 실제 하드웨어, 운영 체제, 네트워크 구조 및 기타 물리적 환경 요소를 지정합니다. 자세한 설계 사양에는 시스템 서비스에 액세스할 최종 사용자지정에 필요한 디렉토리 정보 지정도 포함될 수 있습니다.

배포 구현

배포 구현은 설계 구현으로 시작되며 다음과 같은 일반 작업들로 구성됩니다.

이러한 작업의 순서가 엄격하게 정해져 있는 것은 아닙니다. 배포 프로세스는 본질적으로 반복되는 프로세스입니다. 그럼에도 불구하고 다음의 하위 절에서는 각각의 주요 배포 작업에 대해 일반적으로 수행되는 순서에 따라 개별적으로 설명합니다.

하드웨어 작성

구현 설계에서는 컴퓨터, 네트워크 설계, 네트워크 하드웨어(케이블 연결, 스위치, 라우터, 로드 밸런서 포함), 저장 장치 등과 같은 물리적 환경의 구성을 지정합니다. 이러한 모든 구성을 Java Enterprise System 기반 솔루션을 지원하는 하드웨어 플랫폼으로 어셈블해야 합니다.

소프트웨어 설치

구현 설계에서는 물리적 환경의 각 컴퓨터 노드에 상주할 응용 프로그램 구성 요소와 Java Enterprise System 구성 요소를 알려줍니다. Java Enterprise System 통합 설치 프로그램을 사용하여 컴퓨터마다 다른 시스템 구성 요소와 공유 구성 요소를 설치할 수 있습니다.

설치 프로그램과 그 기능에 대한 자세한 내용은 Java Enterprise System 통합 설치 프로그램을 참조하십시오.

시스템 구성

다양한 시스템 구성 요소가 통합 시스템으로 함께 작동하도록 하려면 수행해야 하는 여러 시스템 구성 작업이 있습니다. 각 개별 시스템 구성 요소를 시작하는 데 필요한 초기 구성 단계가 있으며 이 단계에 앞서 첫 번째 구성 요소가 종속되는 다른 시스템 구성 요소를 시작해야 할 수 있습니다. 예를 들어, 디렉토리에 작성할 LDAP 스키마 확장에 종속되는 Identity Server를 구성 및 시작하려면 먼저 Directory Server를 시작해야 합니다.

어떤 경우든 각 Java Enterprise System 구성 요소가 종속되는 다른 구성 요소와 통신할 수 있도록 구성한 다음 원하는 기능 집합을 내부적으로 구성해야 합니다. 또한, 각 구성 요소의 가용성 구현에 따라 고가용성도 구성해야 합니다. 사용자가 다양한 서비스에 액세스할 수 있도록 사용자를 지정해야 하며 인증 및 권한 부여 제어를 설정해야 합니다.

사용자 지정, 인증, 단일 사인 온 및 권한 부여에 대한 자세한 내용은 통합 아이디 및 보안 서비스를 참조하십시오.

사용자 정의 및 개발

배포 시나리오에 지정된 논리적 구조에서 일반적으로 솔루션을 구현하는 데 필요한 사용자 정의 및 개발 작업의 범위를 결정합니다.

일부 솔루션에서는 Portal Server와 같은 기존 시스템 서버를 사용자 정의하여 필요한 기능을 충분히 달성할 수 있습니다. 그런 경우 일반적으로 사용자 정의를 진행하기 전에 몇 가지 최소 테스트를 수행하여 시스템이 성공적으로 구성되었는지 확인합니다.

개발이 매우 포괄적일 수 있는 다른 솔루션의 Application Server 또는 Web Server 환경에서 실행되는 J2EE 구성 요소를 사용하여 새로운 비즈니스 및 표현 서비스를 처음부터 개발해야 합니다. 그런 경우 전체 개발 작업을 시작하기 전에 솔루션 프로토타입을 제작하여 POC (proof-of-concept) 테스트를 수행하는 것이 좋습니다.

포괄적인 개발이 필요한 솔루션의 경우 Java Enterprise System에서는 분산 구성 요소 또는 비즈니스 서비스를 프로그래밍하기 위한 도구를 제공하지 않습니다. 이러한 도구는 Java Enterprise System 인프라가 지원하는 응용 프로그램의 프로그래밍 및 테스트를 단순화한 Sun Java Studio에서 사용할 수 있습니다.

테스트

일정 시점에서 사용자 정의 또는 배포 작업의 정도에 따라 배포 구조를 확인해야 합니다. 즉, 사용 사례와 비교하여 솔루션을 테스트하고 서비스 품질(QoS) 요구 사항을 충족할 수 있는지 확인해야 합니다.

사용자 정의 개발 서비스가 상대적으로 적은 경우(대부분의 최신 배포) 시스템에 대한 파일럿 테스트를 수행할 수 있습니다. 그러나 상당한 양의 새로운 응용 프로그램 논리를 개발하고 사용자 정의 서비스를 만든 경우에는 이 테스트가 훨씬 더 포괄적일 수 있습니다.

이 테스트에서 배포 구조의 결점이 발견될 경우 구조를 수정하고 테스트를 다시 수행해야 합니다. 이러한 반복 프로세스를 통해 작업 환경에 배포할 준비가 된 배포 구조 및 구현을 만들 수 있습니다.

생산 롤아웃

생산 롤아웃에서는 배포 구현을 작업 환경으로 작성합니다. 이 단계에는 작업 환경에서 분산 응용 프로그램 및 인프라 서비스의 설치, 구성 및 시작, 작업 시스템 최종 사용자 지정, 단일 사인 온 설정, 액세스 정책 등이 포함됩니다. 일반적으로 제한된 배포에서 시작하여 조직 전체로 구현을 확장합니다. 이 프로세스에서는 시험 실행을 수행하면서 점차적으로 로드를 늘려 서비스 품질(QoS) 요구 사항이 충족되는지 확인합니다.


작업

라이프 사이클의 작업 단계에서는 배포된 응용 프로그램을 실행하여 성능을 모니터링 및 최적화하고 새로운 기능을 포함하도록 응용 프로그램을 업그레이드합니다.

Java Enterprise System 2004Q2는 시스템을 전체적으로 관리하기 위한 공통 모니터링 및 관리 인프라나 관리 도구를 제공하지 않습니다. 시스템 구성 요소마다 작업을 구성, 조정 또는 관리하기 위한 자체의 관리 도구가 있습니다. 향후에는 Java Enterprise System에 대한 시스템 차원의 관리가 제공될 것입니다.



이전      목차      색인      다음     


Copyright 2004 Sun Microsystems, Inc. 모든 권리는 저작권자의 소유입니다.