김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를...

33
김김김 김김 김김김 웹웹웹웹웹 웹웹 웹웹웹웹웹 웹웹 Personalization Server Personalization Server JPS 1.0 JPS 1.0

Transcript of 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를...

Page 1: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

김영태 선임 연구원

웹서비스를 위한 웹서비스를 위한 Personalization ServerPersonalization Server

JPS 1.0JPS 1.0

웹서비스를 위한 웹서비스를 위한 Personalization ServerPersonalization Server

JPS 1.0JPS 1.0

Page 2: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

22/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Agenda

• What is Personalization?What is Personalization?• JEUS Personalization Server v1.0JEUS Personalization Server v1.0

– Overview & ArchitectureOverview & Architecture– Recommendation FeatureRecommendation Feature– Other FeaturesOther Features– JPS ExampleJPS Example

• JPS 2.0 RoadmapJPS 2.0 Roadmap

☞☞

Page 3: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

33/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 E-Business Customer

Relationship

• Large number of customers• Much larger enterprise• Low customer loyalty• Higher customer expectation• Difficult to watch customers

Page 4: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

44/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Definition

• Personalization is the art and science of dynamically altering content according to the preferences of a customer, client, or colleague.

Page 5: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

55/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Types of Personalization

System

• Adaptive SystemAdaptive System– Recommends contents based on the Recommends contents based on the

knowledge the system has learned from knowledge the system has learned from customer behaviorscustomer behaviors

• Rule-Based SystemRule-Based System– Recommends contents based on the rules Recommends contents based on the rules

the marketing manager defined with his the marketing manager defined with his marketing experience and knowledgemarketing experience and knowledge

Page 6: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

66/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Adaptive

System

• The system learns the market pattern and define its own policies.

• Slow Starter.• Large system resource is required. • Not yet powerful to follow all the market

trends.

Policy

Modify policie

s

Apply policie

s

Recommend contents

Page 7: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

77/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Rule-Based System

• The system recommends contents based on The system recommends contents based on the rules defined by the marketing the rules defined by the marketing manager.manager.

• Less required system resources.Less required system resources.• High performance. High performance. • Easy to create and modify policies. Easy to create and modify policies.

Define policie

sApply

policies

Recommend contents

Policy(Rules)

Page 8: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

88/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Agenda

• What is Personalization?What is Personalization?• JEUS Personalization Server v1.0JEUS Personalization Server v1.0

– Overview & ArchitectureOverview & Architecture– Recommendation FeatureRecommendation Feature– Other FeaturesOther Features– JPS ExampleJPS Example

• JPS 2.0 RoadmapJPS 2.0 Roadmap

☞☞

Page 9: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

99/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS ?

• Rule-Based Personalization System.• Rely on performance and reliability proven JEUS ap

plication server.• API for Recommendation Service and User, Content

management.• Support personalized application developed in JSP,

Servlet, and EJB.

JEUS Personalization Server

Page 10: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1010/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS

Environment• Manage Resources• Define Profile Schema• Modify Rules

• Evaluate rules• Recommend contents

Explicit andimplicit data

JPS ToolJPS Tool

JEUSStudio

JEUSStudio

Contents

Rules

Profiles

JEUS Application Server

Rule Engine

Resource Engine

JPS

Develope Web pages

Pages personalizedfor each user

Page 11: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1111/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Resource Engine

• Resource Engine Duties– User-Group Management– Content Profile Management– Customer behavioral data management

• Flexible schema• Allows Rule Engine to query database at

runtime

ResourceEngine

Cache

DB

Requester

Request update or query…

Returnresults

Update or query

Update or query

Page 12: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1212/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Rule Engine

• Rule Engine Duties• Evaluate business rules• Recommend appropriate contents

• Rule Matching Algorithm• Capable to handle very complicated rules

RuleEngine

Ruleset

Ruleset

Ruleset

Rule Storage

Requester

User profile and Ruleset name

Query string for content selection

Search

Page 13: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1313/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Agenda

• What is Personalization?What is Personalization?• JEUS Personalization Server v1.0JEUS Personalization Server v1.0

– Overview & ArchitectureOverview & Architecture– Recommendation FeatureRecommendation Feature– Other FeaturesOther Features– JPS ExampleJPS Example

• JPS 2.0 RoadmapJPS 2.0 Roadmap

☞☞

Page 14: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1414/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS Recommendation

Process

ResourceResourceEngineEngine DB

RuleRuleEngineEngine

JPSJPSManagerManagerJEUS

1 JPS API Invocation

6 Targeted Contents

2 Applied Rule Check

3 Targeted Query

4 Query Execution

5 Executed Results

Put in Cache

Store in Disk

JPS ToolJPS Tool

Resource & Rule Management Query

Queried Results

1 – 6 Standard processes of retrieving targeted contents

JPS

Page 15: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1515/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 About Rules

• Types of RulesTypes of Rules– User Classification Rule

• Grouping Users based on User propertiesGrouping Users based on User properties– Content Classification Rule

• Grouping Contents based on Content propertiesGrouping Contents based on Content properties– Content Selector Rule

• Mapping User classification to Content classificationMapping User classification to Content classification• Operators of RulesOperators of Rules

– Contains, startsWith, equals, etc.– Using AND, OR, NOT.. A rule can be manipulated to a very co

mplicated one.• e.g <user classification rule>e.g <user classification rule>

– If user contains property of age = 20 AND contains …

Page 16: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1616/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Rule Execution Process

JPS ToolJPS Tool Rule EngineRule Engine

RuleStatement

XMLCachedRule-Set

ActionQueue

Rule statement is saved to an XML file

Each XML file is cached as a Rule-Set

Matched rules are added to Action Queue

Rules in Action Queue are executed

Page 17: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1717/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Behavior Tracking Events

• They provide a detailed entire customer lifecycle and they can be customized.

• Custom listeners to listen to these events can be added to system.

• When: – Events are fired when customer showed certain behaviors Events are fired when customer showed certain behaviors

that need attention.that need attention.• How:

– Some are fired from the system and some are fired by usiSome are fired from the system and some are fired by using APIs from applications.ng APIs from applications.

• e.g. ViewContentEvent, FireRuleEvent.

Page 18: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1818/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Behavior

Tracking

EventEvent EventQueue

EventQueue

XMLXMLDBScheduler

Clicks a productClicks a product

An event is thrownAn event is thrown

Converts events-info to XMLStore in DB

Scheduler executes

CustomListener

CustomListener

Page 19: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

1919/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Agenda

• What is Personalization?What is Personalization?• JEUS Personalization Server v1.0JEUS Personalization Server v1.0

– Overview & ArchitectureOverview & Architecture– Recommendation FeatureRecommendation Feature– Other FeaturesOther Features– JPS ExampleJPS Example

• JPS 2.0 RoadmapJPS 2.0 Roadmap

☞☞

Page 20: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2020/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Performance Features

• Implemented as system classes– Higher performance than EJBHigher performance than EJB

• Caching user-group profiles– No need to retrieve data from DBNo need to retrieve data from DB

• Caching business rules– No need to read data from XML filesNo need to read data from XML files

• Caching recommended contents– No need to request to Rule Engine againNo need to request to Rule Engine again

Page 21: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2121/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Server

Features

• Multi-threading• Load balancing• Fail-over• Clustering

– How data is preserved in a clustered How data is preserved in a clustered environment?environment?• Session Routing(Higher performance)Session Routing(Higher performance)• BroadcastBroadcast

Page 22: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2222/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Clustered

Environment

Servlet

JPS

Servlet

JPS

Servlet

JPS

WebtoBWebtoB

Client 1

Client 2

Client 3

Engine1 Engine2 Engine3

If any update, notify all

Page 23: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2323/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Convenience Features – JSP

Tags

• All APIs also exist as JSP Tags.• Easy to use when developing web

pages in JSP.• e.g.

– <upm:setProperty propertyName = <upm:setProperty propertyName = “age” value=<%=myAge%>/>“age” value=<%=myAge%>/>

Page 24: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2424/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Convenience Features – JPS Tool

• Rule Query Editor• User-Group Profile Management• Content Management

Page 25: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2525/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Agenda

• What is Personalization?What is Personalization?• JEUS Personalization Server v1.0JEUS Personalization Server v1.0

– Overview & ArchitectureOverview & Architecture– Recommendation FeatureRecommendation Feature– Other FeaturesOther Features– JPS ExampleJPS Example

• JPS 2.0 RoadmapJPS 2.0 Roadmap

☞☞

Page 26: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2626/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS Ex - Define Profile Schema

Page 27: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2727/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS Ex – Create Rules

Page 28: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2828/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS Ex - Sample code

JPSManager jpsm = new JPSManager();Object obj[] = jpsm.upmGetRecommendation(req, “rset1", 40);

for(int i=0 ; i<=obj.length(); i++){ String path = (String)obj[i]; Integer count = (Integer)jpsm.cpmGetProperty(path, … ); String ptitle = (String)jpsm.cpmGetProperty(path, … );

……

}

<Sample code>

Page 29: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

2929/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

Before !!!

JPS Ex - Web page(before)

Page 30: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

3030/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다

After !!!

JPS Ex - Web page(after)

Page 31: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

3131/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS Ex - Profile Management

Page 32: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

3232/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 Agenda

• What is Personalization?What is Personalization?• JEUS Personalization Server v1.0JEUS Personalization Server v1.0

– Overview & ArchitectureOverview & Architecture– Recommendation FeatureRecommendation Feature– Other FeaturesOther Features– JPS ExampleJPS Example

• JPS 2.0 RoadmapJPS 2.0 Roadmap☞☞

Page 33: 김영태 선임 연구원 웹서비스를 위한 Personalization Server JPS 1.0 웹서비스를 위한 Personalization Server JPS 1.0.

3333/33/33Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.

JPSJPS기술로 고객의 마음을 움직입니다기술로 고객의 마음을 움직입니다 JPS 2.0 Roadmap

• More flexible resource management• Auto contents loading feature• More events to track even more

detailed customer behaviors.• Behavior Analysis Tool

– Analyze the behavioral data collected and Analyze the behavioral data collected and guide the marketing manager in creating guide the marketing manager in creating rules.rules.