제품설명서

Download Report

Transcript 제품설명서

Spider SAAS framework
Copyright  2009 SERVERSIDE Inc., All rights reserved
-1-
목
차
1. 사업 개요
1.1 사업 명 및 기간
1.2 사업 배경 및 목적
2. SAAS 플랫폼 구축 방안
2.1
2.2
2.3
2.4
2.5
2.6
2.7
S/W 구성도
플랫폼 기능 제공 범위
Application 아키텍쳐
메타기반 용시스템 개발 방안
Tenant Provisioning
프레임웍 구축 지원 방안
BPM 적용 방안
#별첨 1. SaaS 플랫폼 예시 화면
Copyright  2009 SERVERSIDE Inc., All rights reserved
-2-
1. 사업개요
1.1 사업명 및 사업기간
SaaS 기반의 유통 B2B 시스템 구축 사업은 PI 컨설팅, SaaS 플랫폼 구축, 유통 B2B 시스템 구축을 위한 사업입니다.
사 업 명
SaaS 기반의 유통 B2B 시스템 구축 사업
사업기간
2009년 7월 ~ 2010년 5월 31일 (11.5개월)
사업주체
KB2B Telecom, LG CNS㈜
주요업무
/
주수행 주체
/
수행 기간
PI 컨설팅 / LG CNS / 착수 ~ 2009년 11월
SaaS 플랫폼 구축 / 서버사이드 / 착수 ~ 2009년 12월
SaaS 기반 유통 B2B 시스템 구축 / LG CNS / 착수 ~ 2009년 5월
Copyright  2009 SERVERSIDE Inc., All rights reserved
-3-
2. SaaS 플랫폼 구축 방안
2.2 플랫폼 기능 제공 범위
플랫폼은 Multi Tenant 사용자의 커스터마이징 된 서비스 환경 제공을 위하여 Framework과 유기적으로 연동하여 개발환경, Runtime
환경 및 운영 관리 기능을 제공합니다.
SaaS 플랫폼
개발환경
Runtime 환경
Management
Meta 설정 관리
개인화 페이지 / 프로세스 연동
Meta 관리
• In/Out Field Meta 관리
• Flexible Process Meta 정의
• Tenant별 개인화 화면 구성
• Tenant별 개인화 프로세스 연동
Tenant self Configuration
Meta Engiine
• Meta기반 Layout 처리 API
• Meta기반 Field 처리 API
• Tenant Context API
Tenant Admin
• Tenant별 Group / User 관리
• Tenant별 프로세스 설정 관리
• Tenant별 Field / UI 설정
• Tenant User 관리
• Tenant Profile 관리
• Provisioning
Performance
Business Integration
• Business Logic Component 연동
• Business Process 연동
• Meta Template 관리
• Tenant별 설정 정보 관리
Process 관리
• Cache구성을 통한 성능
• Tenant_Id를 이용한 데이터 분리
• Process 배포 관리
• Process Meta 관리
관련 Infra
Framework
• Logging
• Transaction
• Page flow 및 에러처리
Copyright  2009 SERVERSIDE Inc., All rights reserved
대외 연계
Cache
• 홈쇼핑
• 택배사
• SMS / Email
• Code
• Config
• Meta 설정 정보
-4-
BPM 엔진
• 프로세스 Design
• 배포
• Instance 관리
SaaS 플랫폼 구축
2. SaaS 플랫폼 구축 방안
2.3 Application 아키텍처
SaaS 플랫폼은 기본적으로 Presentation, Business, Data의 레이어와 연관된 메카니즘을 가지며, 대용량 데이터 처리를 필요로 하는
SaaS의 시스템의 성능향상을 위해 BPM 레이어를 최소화 하고,
In-Memory DB 솔루션인 Coherence를 적용한다. 또한, Tenant
사용자의 custom field, UI 제공을 필요로 하는 화면인 경우, 해당 기능을 설정하는 환경을 지원합니다..
Client
Layer
Enterprise
Information
Layer
Application Layer
Presentation Layer
Business Layer
Service Engine
MVC Framework
전자제품취급
Biz Logic
전처리
Tenant
Servlet
Service
Component
Controller
후처리
의류취급
Data Integration
업무
컴포넌트1
DAO
업무
컴포넌트2
웹서비스
BPM
업무
컴포넌트3
JSP
대외
Adapter
Tenant
UI Meta
여행상품취급
F/W Common
컴포넌트
Tenant
업무용 DB
홈쇼핑
로그인체크
권한체크
Validation
CODE
Exception
Cache
DB Pool
Access Log
Excel
Upload
Config
Batch
Schedule
Logging
택배사
Framework 영역
핵심 기능
설명
•
요청을 받아 로그인 체크 권한
체크등을 수항하고 해당
서비스를 호출 한다.
•
ACCESS LOG를 기록한다.
•
오류 처리 한다.
Copyright  2009 SERVERSIDE Inc., All rights reserved
메타 처리 엔진
업무 개발 영역
•
Input Value Validation
•
업무 로직을 처리한다.
•
개발자가 구현한 app 호출.
•
DB I/O
•
대외 I/O 등
-5-
JSP(메타기반 출력)
•
App에서 처리된 data 및 결과를
출력한다.
•
Tenant별 설정 정보가 있는 경우
연동 할 수 있는 메타 정보를 전달
받아 Tenant별 커스텀 화면을
출력한다.
2. SaaS 플랫폼 구축 방안
2.4 메타 기반 UI 엔진
플랫폼은 Tenant별 맞춤서비스를 위하여 Tenant로 하여금 스스로 포탈을 구성하고, 개별 화면의 Field를 추가 하며, 제한된 범위이지만
프로세스의 차별화 기능을 제공합니다.
유통 B2B 시스템 화면
Header Top Menu 영역
메타 관리
응용
Biz
Meta
API
Contents 영역
검색 조건
포탈 구성 메타 / 권한 관리
포탈 / 메뉴 관리
검색조건 정의
출력 필드
추가/순서/위치
DB
UI 필드 관리 메타
응용
Biz
Meta
API
데이터 필드
DB
권한 관리 / 프로세스 메타
버튼영역 (조회 /등록/ 삭제)
응용
Biz
권한 별 메뉴제어
Meta
API
DB
Meta. Component
BPM 엔진
Copyright  2009 SERVERSIDE Inc., All rights reserved
-6-
2. SaaS 플랫폼 구축 방안
•
개발자가 화면을 구성하고, 서비스와 연결 시키고, 서비스의 IN/OUT 파라미터를 화면에 매핑
하는 등의 개발 환경 제공
개발자 환경
•
Tenant 별 개인화
2.4 메타 기반 UI 엔진
개발자가 작업을 완료한 후, 이를 메타 데이터에 저장 기능
•
사용자가 메타데이터 기반으로 레이아웃을 편집(수정)할 수 있는 화면.
•
편집화면을 저장하면 관련 메타 정보를 추출하여 메타데이터 테이블에 저장 로직
•
Tenant가 시스템에 로그인 하면, 이전에 Field Customizing한 화면을 보여 주는데, 이는 UI
Source Rendering Service 모듈을 통해 메타데이터 기반으로 사용자 화면의 Source를
환경
Generation 한 것임
주의) Tenant가 개인화한 화면은 개발자가 화면의 메타 데이터를 갱신해도 변화가 없음
•
메타데이터 기반의
UI Page 생성 기능
Domain 관리
사용자가 업무화면 이용시 개인화된 Page를 볼 수 있도록 메타데이터를 조합하여 가져오는
기능
•
가져온 메타데이터를 기반으로 UI를 실시간 생성하는 로직
•
JSP Taglib 로직 (생성되는 로직이 JSP Taglib을 사용할 경우)
•
기본 컬럼 및 추가 컬럼에 대한 데이터 타입, 범위, 유효성 검사 등의 Domain을 관리하는 기능
•
플랫폼에서 사용가능한 데이터 그룹(Value Set)을 데이터 도메인으로 관리하는 화면
•
컬럼과 데이터 그룹 (Value Set) 을 매핑을 관리하는 화면
Copyright  2009 SERVERSIDE Inc., All rights reserved
-7-
2. SaaS 플랫폼 구축 방안
•
2.4 메타 기반 UI 엔진
비즈니스 로직 변경 또는 추가 요구 사항에 의해 데이터베이스 테이블에 추가 컬럼이 필요할
경우를 대비하여 테이블에 확장 컬럼 구성, 확장 컬럼은 Tenant 별 개인화를 위해서도 사용됨
추가 컬럼 지원
메타데이터 관리
성능 향상을 위한
메타데이터와
•
확장 컬럼의 Tenant별 또는 Application별 매핑에 관련된 메타 데이터를 관리하여 UI 개인화
화면 및 개발툴에서 참조할 수 있게 하는 기능
•
테이블에 추가 컬럼에 관련된 필드 추가, 필드의 속성, 레이블 등을 관리하는 기능
•
Tenant 별로 추가 속성 사용 매핑을 관리하는 기능

확장 컬럼 매핑 메타 데이터 관리 모듈 구현

UI 개발툴, 개인화 모듈에서 사용되는 확장 컬럼 매핑의 메타 정보 조회 서비스 모듈 구현

UI 메타 정보 이용 방법 가이드

Runtime시 메타데이터는 빈번히 조회되는데, 성능 향상을 위해 이를 Cache(Coherence)와
Cache 연동
Copyright  2009 SERVERSIDE Inc., All rights reserved
연동하는 모듈 구현
-8-
별첨 : 예시 화면
코드 관리 (개인화 가능)
- 시스템에서 제공하는 코드에 대하여 Tenant가 커스터마이징 하여 사용
Copyright  2009 SERVERSIDE Inc., All rights reserved
-9-
도메인 관리 (input Data의 유효성 관리)
- 시스템에서는 유효성 체크하는 Library 및 value set 관리(code table 연동 등) 컴포넌트를 제공하고 Tenant가 설정가능.
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 10 -
Entity관리 (Business Domain Object Level)
- 시스템에서 제공 Business Domain 아키텍쳐를 visual하게 제시.
- 특정 필드 추가, 혹은 미사용 설정 시 관련 모든 프로그램에 일관성 유지를 위하여 관리함.
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 11 -
메뉴 관리
- 등록 관리는 시스템 담당자가 수행하며, Tenant사용자는 사용 여부만 취사 선택
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 12 -
권한 관리 (Role 관리)
- 해당 업무에서 필요로 하는 Role은 시스템 개발팀에서 fix하여 정의하며, Tenant 관리자는 내부 사용자에게 부여만 가능
(BPM 등의 제품과 연동 시 제품에서 Tenant가 임의로 정의한 Role을 인식 하지 못함.)
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 13 -
권한 관리 (유저 관리)
- Tenant Admin이 사용자에게 Role부여를 통하여 권한 관리
- 신규 application 추가 시 Tenant Admin의 권한 재 부여 필요 없음.(System 담당자가 Role에 매핑하는것으로 처리함)
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 14 -
업무 화면 개인화 작업UI
- 기본 필드 중에 사용 하지 않을 필드를 감춘다.
- 추가 컬럼이 필요하면 왼쪽 Tree에서 Drag & Drop 방식으로 끌어 놓는다.
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 15 -
업무 화면 개인화 작업UI (필드 세부 설정)
- 필드별로 세부 Customizing기능을 제공한다.
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 16 -
개인화된 화면 구성 (미리 보기)
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 17 -
BPM 엔진을 이용한 비즈니스 로직의 조립
Copyright  2009 SERVERSIDE Inc., All rights reserved
- 18 -