KR20180047467A - 사용자 프로필 제공 시스템 및 방법 - Google Patents

사용자 프로필 제공 시스템 및 방법 Download PDF

Info

Publication number
KR20180047467A
KR20180047467A KR1020160143564A KR20160143564A KR20180047467A KR 20180047467 A KR20180047467 A KR 20180047467A KR 1020160143564 A KR1020160143564 A KR 1020160143564A KR 20160143564 A KR20160143564 A KR 20160143564A KR 20180047467 A KR20180047467 A KR 20180047467A
Authority
KR
South Korea
Prior art keywords
user
user profile
identifier
information
service providing
Prior art date
Application number
KR1020160143564A
Other languages
English (en)
Other versions
KR102720626B1 (ko
Inventor
손상목
Original Assignee
에스케이플래닛 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020160143564A priority Critical patent/KR102720626B1/ko
Priority claimed from KR1020160143564A external-priority patent/KR102720626B1/ko
Publication of KR20180047467A publication Critical patent/KR20180047467A/ko
Application granted granted Critical
Publication of KR102720626B1 publication Critical patent/KR102720626B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0224Discounts or incentives, e.g. coupons or rebates based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명의 사용자 프로필 제공 시스템은 사용자 단말을 통해 서비스 제공 사이트 가입 시 개인정보 활용에 비동의하는 비동의자 또는 서비스 제공 사이트에 로그인하지 않는 비식별자에 대하여 사용자 식별을 위한 식별자 매칭 테이블을 생성하고, 수집된 사용자의 행동 로그를 식별자 매칭 테이블 및 사용자 프로필 속성 테이블을 기반으로 분석하여 사용자 프로필 정보를 생성하며, 서비스 제공 사이트에 사용자 식별자 기반의 사용자 프로필 정보를 제공함으로써 사용자 단말에 광고, 마케팅 등 사용자 맞춤 서비스를 제공할 수 있다.

Description

사용자 프로필 제공 시스템 및 방법 {SYSTEM AND METHOD FOR PROVIDING USER PROFILE}
본 발명은 사용자 프로필 제공 기술에 관한 것으로서, 보다 구체적으로 서비스 제공 사이트 가입 시 개인정보 활용 비동의자 또는 서비스 제공 사이트에 로그인 하지 않은 비식별자에 대하여 사용자 식별을 위한 식별자 매칭 테이블을 생성하고, 식별자 매칭 테이블 및 사용자 프로필 속성 테이블을 기반으로 사용자의 행동 로그를 분석한 후 생성한 사용자 프로필 정보를 서비스 제공 사이트에 제공함으로써 사용자 단말에 광고, 마케팅 등 맞춤 서비스를 제공할 수 있는 사용자 프로필 제공 시스템 및 방법에 관한 것이다.
최근 다양한 분야에서 서비스 제공 사이트의 가입 시 개인정보 활용 동의 하에 휴대폰 가입자 번호, 주소 등 식별 가능한 정보 또는 서비스 제공 사이트의 사용자 로그인 정보를 기반으로 사용자 선호도를 분석하여 광고, 마케팅 등 서비스를 제공하고 있다. 그러나 개인정보를 활용하는 서비스를 제공함에 있어서 문제점을 가지고 있다.
우선 개인정보를 활용하는 서비스에 대한 문제점을 살펴보기로 한다. 서비스 제공자는 사용자의 서비스 가입 시 개인정보 활용 동의 여부를 확인해야 한다. 사용자가 개인정보 활용에 동의하거나 사용자가 서비스 이용 시 로그인할 경우 사용자의 식별 가능한 정보를 이용하여 사용자를 인식하고, 행동 로그를 분석하여 분석 결과에 근거한 마케팅, 광고 등의 맞춤 서비스를 제공할 수 있다. 그러나 사용자가 개인정보 활용에 비동의를 하는 경우 또는 로그인 하지 않는 경우 개인정보 활용 비동의자 또는 비식별자에 대한 사용자 인식이 어렵다. 또한 사용자 인식이 어렵기 때문에 사용자에 따른 맞춤 서비스 역시 제공하기 어려워지고, 그에 따른 결과로 서비스 제공자의 투자자본수익률(Return On Investment) 증대를 기대할 수 없다. 추가적으로 개인정보 활용 비동의자 또는 비식별자에 대하여 식별 가능한 정보를 이용하여 사용자를 인식하고 서비스 제공자가 사용자에게 서비스를 제공하는 경우에도 어떠한 기준으로 사용자의 행동 로그를 분석하여 서비스를 제공할 것인지에 따라 서비스 제공자의 투자자본수익률이 변할 수 있다. 만약 모든 서비스 제공자들이 일관된 기준으로 사용자의 행동 로그를 분석하여 서비스를 제공한다면 각 서비스 제공자 특성에 맞는 서비스 제공이 어려워지게 되고, 서비스 제공자 특성에 맞는 기준을 정립하여 행동 로그를 분석하더라도 어떠한 추천 알고리즘을 기반으로 분석했는지, 사용자를 어떻게 세분화하여 서비스를 제공할 것인지에 따라 서비스 제공 결과가 달라질 수 있는 문제점이 있다.
이러한 개인정보를 활용하는 서비스는 개인정보 활용 동의 여부, 로그인 여부에 따른 사용자 인식 및 사용자 정보 분석 방법에 대한 어려움이 있고, 개인정보 활용 방법의 문제점이 대두되고 있는 현재 상황에 따라 사용자들의 개인정보 활용 비동의 및 비로그인 이용이 증가되고 있는 추세이다. 따라서 개인정보 활용 비동의자 또는 비식별자에 대한 맞춤 서비스를 제공하기 위하여 사용자 인식 방법과 사용자에 따른 정보 분석 방법의 문제점을 해결하기 위한 연구가 이어지고 있는 실정이다. 이에 따라 사용자 식별을 위한 사용자 식별자 동기화 및 추천 알고리즘 기반의 빅데이터 분석을 이용하여 사용자 맞춤 서비스를 제공함으로써 투자자본수익률을 증대시킬 수 있는 기능이 요구된다.
대한민국 등록특허공보 제10-2009-0910517호(2009.07.27)
본 발명은 서비스 제공 사이트 가입 시 개인정보 활용 비동의자 또는 서비스 제공 사이트에 로그인 하지 않은 비식별자에 대하여 사용자 식별을 위한 식별자 매칭 테이블을 생성하고, 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 사용자의 행동 로그를 분석한 후 생성한 사용자 프로필 정보를 서비스 제공 사이트에 전달함으로써 사용자 단말에 광고, 마케팅 등의 사용자 맞춤 서비스를 제공하여 서비스 제공 사이트의 투자자본수익률을 증대시키는 것을 목적으로 한다.
한편, 본 발명이 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 도출될 수 있다.
상기한 목적을 달성하기 위한 본 발명에 따른 사용자 프로필 제공 시스템은, 서비스 제공 사이트로부터 사용자 쿠키를 전달받아 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성 및 관리하고, 사용자 프로필 속성 설정 정보를 전달받아 사용자 프로필 속성 테이블을 생성 및 관리하며, 수집된 사용자 행동 로그를 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 생성 후 서비스 제공 사이트에 전달하는 사용자 프로필 제공 서버, 식별자 동기화를 하기 위해 사용자 프로필 제공 서버에 사용자 쿠키를 전달하고, 사용자 프로필 정보를 제공받기 위해 사용자 프로필 속성 설정 정보 및 사용자 행동 로그를 전달하며, 사용자 단말이 접속하는 경우 사용자 프로필 제공 서버로부터 수신된 사용자 프로필 정보 기반의 맞춤 서비스를 제공하는 서비스 제공 사이트, 서비스 제공 사이트에 접속하여 서비스 제공 사이트로부터 맞춤 서비스를 제공받는 사용자 단말을 포함한다.
또한, 사용자 프로필 제공 서버는 개인정보 활용 비동의자 또는 비식별자에게 사용자 프로필 정보를 제공할 수 있다.
또한, 사용자 프로필 제공 서버는 서비스 제공 사이트의 사용자 행동 로그 수집 API(Application Programming Interface)로부터 사용자 행동 로그를 수집할 수 있다.
또한, 사용자 프로필 제공 서버는 사용자 식별자 기반의 사용자 프로필 정보를 서비스 제공 사이트에 제공할 수 있다.
본 발명의 사용자 프로필 제공 서버는 서비스 제공 사이트로부터 사용자 프로필 제공 서비스 가입 요청 정보, 사용자 쿠키, 사용자 프로필 속성 설정 정보 및 사용자 프로필 요청 정보를 입력 받고, 사용자 쿠키 식별자, 서버 쿠키 식별자 및 사용자 식별자 기반의 사용자 프로필 정보를 서비스 제공 사이트에 전달하는 송수신부, 사용자 프로필 제공 서비스 가입 요청과 관련된 가입 요청 관련 정보, 상기 사용자 쿠키, 상기 사용자 식별자 및 상기 사용자 쿠키 식별자 중 어느 하나와 상기 서버 쿠키 식별자 기반으로 생성된 식별자 매칭 테이블, 상기 사용자 프로필 속성 설정과 관련된 설정 관련 정보, 사용자 행동 로그, 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 사용자 행동 로그가 분석되어 생성된 사용자 프로필 정보 및 사용자 프로필 정보 요청과 관련된 요청 관련 정보가 저장된 저장부 및 상기 사용자 식별자 및 상기 사용자 쿠키 식별자 중 어느 하나와 상기 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성 및 관리하고, 사용자 프로필 속성 설정 정보를 기반으로 사용자 프로필 속성 테이블을 생성 및 관리하며, 상기 식별자 매칭 테이블 및 상기 사용자 프로필 속성 테이블 기반으로 상기 사용자 행동 로그를 분석하여 사용자 프로필 정보를 생성하는 제어부를 포함하는 것을 특징으로 한다. 본 발명에 따르면, 사용자 프로필 정보를 서비스 제공 사이트에 전달함으로써 최종적으로 사용자 단말에 맞춤형 서비스를 제공할 수 있는 효과가 있다.
또한, 상기 사용자 프로필 정보는 개인정보 활용 비동의자 또는 비식별자에게 제공될 수 있다.
또한, 상기 사용자 행동 로그는 서비스 제공 사이트의 사용자 행동 로그 수집 API로부터 수집될 수 있다.
또한, 상기 사용자 프로필 속성 설정과 관련된 설정 관련 정보는 서비스 제공 사이트로부터 선택될 수 있다.
또한, 상기 사용자 프로필 정보는 사용자 식별자를 기반으로 서비스 제공 사이트에 제공될 수 있다.
한편, 본 발명의 또 다른 실시 예에 따른 사용자 프로필 제공 방법은 (a) 서비스 제공 사이트로부터 사용자 프로필 제공 서비스 가입 요청을 수신하는 단계, (b) 서비스 제공 사이트와 서버간 식별자 동기화를 위해 redirection URL(Uniform Resource Locator)을 서비스 제공 사이트로 전달하는 단계, (c) 사용자 쿠키를 상기 서비스 제공 사이트로부터 전달받아 저장하고, 사용자 쿠키 식별자와 서버 쿠키 식별자를 서비스 제공 사이트에 전달하는 단계, (d) 상기 사용자 식별자 및 상기 사용자 쿠키 식별자 중 어느 하나와 상기 서버 쿠키 식별자 기반으로 식별자 매칭 테이블을 생성 및 관리하는 단계, (e) 사용자 프로필 속성 설정 정보를 서비스 제공 사이트로부터 수신하는 단계, (f) 상기 사용자 프로필 속성 설정 정보를 기반으로 사용자 프로필 속성 테이블을 생성 및 관리하는 단계, (g) 수집된 사용자 행동 로그를 상기 식별자 매칭 테이블 및 상기 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 생성 및 관리하는 단계, (h) 상기 사용자 프로필 정보를 상기 서비스 제공 사이트에 전달하는 단계를 포함하는 사용자 프로필 제공 방법을 제공할 수 있다.
또한, 사용자 프로필 정보는 개인정보 활용 비동의자 또는 비식별자에게 제공될 수 있다.
또한, 사용자 행동 로그는 서비스 제공 사이트의 사용자 행동 로그 수집 API로부터 수집될 수 있다.
또한, 사용자 프로필 속성 설정 정보는 서비스 제공 사이트로부터 선택될 수 있다.
또한, 사용자 프로필 정보는 사용자 식별자를 기반으로 서비스 제공 사이트에 제공될 수 있다.
본 발명에 따르면, 사용자가 서비스 제공 사이트 가입 시 개인정보 활용에 비동의하는 경우 또는 사용자가 서비스 제공 사이트에 로그인하지 않는 경우에 서비스 제공 사이트로부터 전달받은 사용자 쿠키의 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성하고, 수집된 사용자 행동 로그를 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 서비스 제공 사이트에 전달함으로써 사용자 단말에 맞춤형 서비스를 제공하여 서비스 제공 사이트의 투자자본수익률을 증대시킬 수 있는 효과가 있다.
또한, 서비스 제공 사이트로부터 사용자 프로필 제공 서비스 가입 요청 수신 시 redirection URL을 서비스 제공 사이트에 전달함으로써 식별자 동기화를 할 수 있고, 서비스 제공 사이트의 사용자 행동 로그 수집 API로부터 사용자 행동 로그 수집 및 사용자 프로필 속성 설정 정보를 전달받아 행동 로그를 분석하여 사용자 프로필을 생성할 수 있는 효과가 있다.
또한, 사용자 프로필 정보를 사용자 식별자 기반으로 서비스 제공 사이트에 전달할 수 있는 효과가 있다.
본 발명의 효과는 이상에서 언급한 효과들로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 효과들이 포함될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 사용자 프로필 제공 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명에 따른 사용자 단말과 서비스 제공 사이트 사이의 흐름도를 나타내는 도면이다.
도 3은 본 발명에 따른 서비스 제공 사이트와 사용자 프로필 제공 서버 사이의 흐름도를 나타내는 도면이다.
도 4는 본 발명에 따른 사용자 프로필 제공 서버 전체 구성을 나타내는 도면이다.
도 5는 본 발명에 따른 사용자 프로필 제공 서버 내부의 동작 과정을 나타내는 도면이다.
도 6은 본 발명에 따른 사용자 단말, 서비스 제공 사이트 및 사용자 프로필 제공 서버 사이의 연결 구조를 나타내는 도면이다.
도 7은 본 발명에 따른 서비스 제공 사이트로부터 맞춤 서비스가 사용자 단말에 전달된 결과를 나타내는 도면이다.
이하, 본 발명의 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 설명하는 실시 예들은 본 발명의 기술 사상을 당업자가 용이하게 이해할 수 있도록 제공되는 것으로 이에 의해 본 발명이 한정되지 않으며, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 첨부된 도면에 표현된 사항들은 본 발명의 실시 예들을 쉽게 설명하기 위해 도식화된 도면으로 실제로 구현되는 형태와 상이할 수 있으며, 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다.
또한, 어떤 구성요소들을 '포함'한다는 표현은, '개방형의 표현'으로서 해당 구성요소들이 존재하는 것을 단순히 지칭하는 표현이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 될 것이다.
도 1은 본 발명의 일 실시 예에 따른 사용자 프로필 제공 시스템(1000)의 구성을 나타내는 도면이다.
도 1을 참조하면, 사용자 프로필 제공 시스템(1000)은 사용자 단말(200), 서비스 제공 사이트(300) 및 사용자 프로필 제공 서버(100)를 포함하며, 기타 장치를 구성함에 있어서 필요한 다른 부가적인 구성들 역시 포함될 수 있음은 물론이다.
사용자 단말(200)은 서비스 제공 사이트(300)에 접속하여 서비스 제공 사이트(300)로부터 맞춤 서비스를 제공받을 수 있다.
서비스 제공 사이트(300)는 식별자 동기화를 하기 위해 사용자 프로필 제공 서버(100)에 사용자 쿠키를 전달하고, 사용자 프로필 정보를 제공받기 위해 사용자 프로필 속성 설정 정보 및 사용자 행동 로그를 전달하며, 사용자 단말(200)이 접속하는 경우 사용자 프로필을 요청하여 사용자 프로필 제공 서버(100)로부터 수신한 사용자 프로필 정보 기반의 맞춤 서비스를 제공할 수 있다.
사용자 프로필 제공 서버(100)는 서비스 제공 사이트(300)로부터 사용자 쿠키를 전달받아 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성 및 관리하고, 사용자 프로필 속성 설정 정보를 전달받아 사용자 프로필 속성 테이블을 생성 및 관리하며, 수집된 사용자 행동 로그를 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 생성 후 사용자 식별자 기반으로 사용자 프로필 정보를 서비스 제공 사이트(300)에 전달할 수 있다.
한편, 사용자 프로필 제공 서버(100)관련하여 서버에 대해 먼저 설명할 필요성이 있다. 서버 프로그램이 실행되고 있는 컴퓨터 하드웨어를 서버 라고 부르며 다른 프로그램에게 서비스를 제공하는 컴퓨터 프로그램을 서버 라고 말하기도 한다. 서버는 프린터 제어나 파일 관리 등 네트워크 전체를 감시, 제어하거나, 메인 프레임이나 공중망을 통한 다른 네트워크와의 연결, 데이터, 프로그램, 파일 같은 소프트웨어 자원이나 모뎀, 팩스, 프린터 공유, 기타 장비 등 하드웨어 자원을 공유할 수 있도록 도와주는 역할을 한다.
또한, 서버는 사용자(클라이언트)의 요청에 의하여 서비스를 하는데 이와 같이 구성된 시스템을 클라이언트/서버 시스템이라고 하며, 이는 하나 이상의 응용 프로그램을 상호 협력적인 환경에서 운용하는 분산처리 형태를 의미한다. 즉, 서비스를 요청하는 클라이언트와 클라이언트의 요청을 처리하는 서버와의 협동작업을 통해서 사용자가 원하는 바람직한 결과를 얻는 처리방식이 클라이언트/서버 시스템이다. 클라이언트의 수가 5 내지 20대 정도인 소규모 LAN의 경우에는 한 대의 장치로 충분히 모든 서비스를 소화할 수 있으나, 대규모 LAN의 경우에는 여러 대의 장치를 배치하고, 파일 관리는 파일 서버, 프린터 제어는 프린터 서버, 인터넷 등의 외부와의 교환은 커뮤니케이션 서버가 담당하는 등 각각 역할을 세분하게 된다. 온라인에서의 서버는 특수한 형태로 자신의 하드디스크에 담겨있는 정보들을 외부에 공개해주는 컴퓨터를 이른다. 일반적으로 온라인에서는 여러 정보들을 서버에서 관리하고, 일반 사용자들은 자신들의 컴퓨터(클라이언트)를 이용하여 서버에 접속하고 서버에서 제공하는 정보를 이용하게 된다. 따라서 사용자 프로필 제공 서버(100)는 사용자 프로필 제공의 기능 또는 사용자 프로필 정보만을 구비하는 독립적인 서버로 구성할 수 있으며, 다른 장치의 일 구성으로서 사용자 프로필 제공의 기능 또는 사용자 프로필을 구비하는 형태로 구현할 수 도 있다. 이하 사용자 프로필 제공 서버(100)가 포함하는 구성들에 대하여 설명하도록 한다.
도 2는 본 발명에 따른 사용자 단말(200)과 서비스 제공 사이트(300) 사이의 흐름도를 나타내는 도면이다.
사용자 단말(200)이 서비스 제공 사이트(300)에 접속하게 되면(S201) 서비스 제공 사이트(300)는 사용자 프로필 제공 서버(100)로부터 전달받은 서비스 프로필 정보를 기반으로 사용자 단말(200)에 사용자 선호도 기반의 광고, 마케팅 등 맞춤형 서비스를 제공할 수 있다(S203).
도 3은 본 발명에 따른 서비스 제공 사이트(300)와 사용자 프로필 제공 서버(100) 사이의 흐름도를 나타내는 도면이다.
도 3을 참조하면, 송수신부(110)가 서비스 제공 사이트(300)로부터 사용자 프로필 제공 서비스 가입 요청을 수신하는 경우(S301), 식별자 동기화를 위해 서비스 제공 사이트(300)에 redirection URL을 전달한다(S303). Redirection URL을 통해 접속한 서비스 제공 사이트(300)로부터 사용자 쿠키를 전달받는다. 송수신부(110)가 사용자 쿠키를 수신하면 행동 로그의 주체를 식별하기 위해 서버 쿠키 식별자와 사용자 쿠키 식별자를 서비스 제공 사이트(300)에 전달한다(S305). 이때, 서비스 제공 사이트(300)의 사용자 행동 로그 수집 API를 통해 사용자 행동 로그를 수집할 수 있고, 사용자 행동 로그 수집 시 서비스 제공 사이트(300)에 전달된 서버 쿠키 식별자를 이용해 행동 로그의 주체를 식별할 수 있다. 사용자 쿠키 식별자 및 서버 쿠키 식별자를 서비스 제공 사이트(300)에 전달한 후 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성함으로써 식별자 동기화를 실행하게 된다(S307). 식별자 동기화 시 사용자 쿠키에 사용자 식별자가 포함되어 있을 경우 사용자 식별자와 서버 쿠키 식별자를 동기화하고, 사용자 쿠키에 사용자 식별자가 포함되어있지 않을 경우 사용자 쿠키 식별자와 서버 쿠키 식별자를 동기화한다. 서비스 제공 사이트(300)는 사용자 쿠키 식별자와 서버 쿠키 식별자를 수신한 후 사용자 단말(200)에 맞춤 서비스를 제공하기 위해 서비스 특성에 맞는 사용자 프로필 속성을 설정하고, 설정된 사용자 프로필 속성 설정 정보를 송수신부(110)에 전달하며(S309), 사용자 프로필 속성 설정 정보의 예는, 아래의 표1과 같다.
서비스
사용자 ID
ID 매칭 키 Segmentation Recommendation
#1 #2 #3
#1 1st party id O O
#2 3rd party id O O
표 1을 참조하면, 사용자 ID는 서비스 제공 사이트(300)의 사용자 식별자를 의미하고, ID 매칭 키, Segmentation, Recommendation 등의 속성들은 서비스 제공 사이트(300)로부터 설정될 수 있다. 이외에도 성, 연령대, 월 지출액 등의 사용자 프로필 속성들은 서비스 제공 사이트(300)에서 제공하는 서비스의 특성에 따라 다양하게 선택될 수 있다. ID 매칭 키의 경우 1st party id는 서비스 제공 사이트(300)의 사용자 식별자를 기반으로 사용자 프로필 정보를 분석하는 것을 의미하고, 3rd party id는 서비스 제공 사이트(300)의 사용자 식별자와 외부의 사용자 식별자를 동기화하여 사용자 프로필 정보를 분석 시 활용하는 것을 의미한다. Segmentation은 사용자 세분화를 적용하여 사용자 프로필 정보 분석에 활용할 것인지의 여부를 의미하고, Recommendation은 추천 알고리즘을 의미하며, 어떤 추천 알고리즘을 사용하여 사용자 프로필 정보를 분석할 것인지를 표시할 수 있다. 예를 들어, 추천 알고리즘 #1은 협업 필터링을 의미할 수 있고, 추천 알고리즘 #2는 Content-based filtering을 의미할 수 있다.
협업 필터링은 추천 알고리즘의 한 종류로서 사용자와 유사한 선호도를 가지는 사람들로 사용자 추천 그룹을 결정하고 결정한 사용자 추천 그룹의 의견을 반영하여 사용자가 아직 구매하지 않은 상품 선호도를 예측하고 선호도가 높을 것으로 예측되는 상품을 추천해주는 기법이다.
종래 협업 필터링에 기반한 추천 기법은 사람들의 특정 상품에 대한 선호도를 판단하는 단계와, 판단한 선호도에 기초하여 사용자와 유사한 선호도를 가지는 사용자 추천 그룹을 결정하는 단계와, 결정한 사용자 추천 그룹에서 사용자의 선호도가 높을 것으로 예상되는 상품을 추천하는 단계로 이루어졌다.
먼저 사람들의 선호도를 판단하는 단계를 보다 구체적으로 살펴보면, 종래 협업 필터링 기반 추천 기법에서 입력 데이터는 n개의 상품에 대한 m명의 고객 선호도 집합으로 구성되는데, n?m 크기의 고객-상품 행렬(P)로 표현된다. 특정 상품에 대한 선호도는 대개 고객으로부터 직접 입력 받거나, 구매 데이터로부터 암시적으로 추정하는 방법이 사용된다. 예를 들어, 구매 데이터로부터 선호도를 측정할 경우, 고객-상품 행렬(P)의 i번째 행, j번째 열의 값 pij는 i번째 고객이 j번째 상품을 구매 했으면 1의 값을 가지며 그렇지 않으면 0의 값을 각각 가지게 된다.
다음으로 사용자와 유사한 선호도를 가지는 사용자 추천 그룹을 결정하는 단계를 보다 구체적으로 살펴보면, 사용자 추천 그룹을 결정하는 단계는 고객-상품 행렬(P)를 이용하여 사용자와 다른 고객들 사이의 선호도 유사 정도를 계산한다. 즉, 각 고객 u에 대하여 가장 선호도가 유사한 i명의 사용자 추천 그룹을 검색하는 과정이다. 일반적으로 사용자와 다른 고객 사이의 유사 정도를 측정하기 위하여 피어슨 상관계수(Pearson Correlation)를 사용하고 있다.
피어슨 상관계수란 두 변수간의 관련성을 구하기 위해 사용되는 상관계수로써 예를 들어, 수축기 혈압과 이완기 혈압 또는 키와 몸무게와 같이 분석하고자 하는 두 변수가 모두 연속형 자료일 때 두 변수간 선형적인 상관 관계의 크기를 모수적인 방법으로 나타낸 값이다.
한편, 상품을 추천하는 단계를 보다 구체적으로 살펴보면, 결정한 사용자 추천 그룹을 구성하는 고객들이 구매 또는 선호하는 제품들에 기초하여 사용자가 구매 또는 선호할 것으로 예상되는 N개의 추천 상품을 결정한다. 추천 상품들을 결정하기 위한 기준으로서 일반적으로 빈발 구매 상품 추천(Most-frequent Item Recommendation)이 사용된다. 빈발 구매 상품 추천은 사용자 추천 그룹의 구매 이력 데이터를 분석하여 상품별구매 빈도가 높은 상위 N개의 상품을 추천 상품으로 결정하는 방식이다.
한편, Content-based filtering은 사용자가 과거에 사용했거나 평가한 아이템을 기반으로 새로운 아이템을 추천해주는 기법이다. 예를 들어, 영화 추천 서비스의 경우 사용자가 봤던 영화들 중 높게 평가한 것들에 대하여 주연배우, 감독, 장르, 주제 등 다양한 측면에서 공통점을 찾아낸다. 이렇게 분석된 각 사용자의 영화 선호도에 기반하여 새로운 영화가 사용자가 좋아하는 영화에 얼마나 근접하는지 평가하고 높은 점수를 받는 영화를 추천하게 된다. 이와 같은 내용 기반 방식에서는 사용자의 과거 경험에서 선호도, 취향, 욕구 등의 사용자 정보를 어떻게 찾아내는지가 핵심 이슈이다. 이를 위해 각 아이템의 내용을 분석하여 사용자 정보를 특징지을 수 있는 속성들을 찾아내는 과정이 필요하다. 그리고 계산된 사용자의 과거 아이템들에 대한 속성들을 통합하여 사용자의 선호도에 대한 정보를 구축하고, 이것이 새로운 아이템에 대한 평가의 기준으로 사용될 수 있다. 기본적인 방법으로 사용자의 명시적인 신호 정보를 직접적으로 반영할 수 있다는 장점이 존재하지만, 아이템의 내용 기반 정보를 찾기 어려운 경우가 많고, 사용자의 명시적인 프로필을 얻기 힘들며 사용자의 선호 취향을 특정 단어로 표현하기 힘들다는 단점이 존재한다.
이후, 제어부(130)에서 서비스 제공 사이트(300)로부터 사용자 프로필 속성 설정 정보를 수신하여 사용자 프로필 속성 테이블을 생성하며(S311), 사용자 프로필 속성 테이블의 예는, 아래의 표 2와 같다.
서버 ID 서버 쿠키 ID 사용자 ID Segmentation Recommendation : item id 키워드
- - - - - -
표 2를 참조하면, 서버 ID는 식별자 매칭 테이블에 저장된 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자를 연결하는 상위 식별자로서 할당된 값을 의미하고, 서버 쿠키 ID는 사용자 프로필 제공 서버(100)로부터 생성된 서버 쿠키 식별자를 의미한다. 사용자 ID, Segmentation 및 Recommendation은 이전에 언급한 의미를 가지며, 키워드는 사용자의 관심 정보를 의미한다. 예를 들어, 서비스 제공 사이트(300)가 의류를 판매하는 사이트일 경우, 키워드에는 분석된 사용자의 선호도에 따라 청바지, 셔츠, 스웨터 등이 입력될 수 있다.
사용자 프로필 속성 테이블을 생성한 후에 수집된 사용자 행동 로그를 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 생성하게 된다(S313). 서비스 제공 사이트(300)의 요청이 있을 경우 사용자 식별자 기반으로 사용자 프로필 정보를 전달하며(S315), 서비스 제공 사이트(300)에 전달하는 사용자 프로필 정보의 예는, 아래의 표 3과 같다.
사용자 ID Segmentation Recommendation : item id
#1 A, B, C 213423 : 178duj7e3jhd
#2 A, F 21334222 : dlfldod
표 3을 참조하면, 사용자 식별자 기반으로 사용자 프로필 정보를 서비스 제공 사이트(300)에 전달하며, 사용자 프로필 정보에는 Segmentation과 Recommendation와 같은 정보들이 포함될 수 있다. 이외에도 서비스 제공 사이트(300)로부터 사용자 단말(200)에 제공하는 서비스의 특성에 따라 사용자 프로필 정보에 포함되는 정보는 다양하게 변경될 수 있다.
도 4는 본 발명에 따른 사용자 프로필 제공 서버(100)의 전체 구성을 나타내는 도면이다.
도 4를 참조하면, 사용자 프로필 제공 서버(100)는 송수신부(110), 제어부(130) 및 저장부(150)를 포함하며, 기타 장치를 구성함에 있어서 필요한 다른 부가적인 구성들 역시 포함될 수 있음은 물론이다.
송수신부(110)는 서비스 제공 사이트(300)로부터 사용자 프로필 제공 서비스 가입 요청을 수신할 경우 식별자 동기화를 위해 redirection URL을 서비스 제공 사이트(300)에 전달한다. Redirection URL을 통해 접속한 서비스 제공 사이트(300)로부터 사용자 쿠키를 수신하게 되면, 사용자 쿠키 식별자 및 서버 쿠키 식별자를 서비스 제공 사이트(300)로 전달한다. 이후, 서비스 제공 사이트(300)로부터 Segmentation, 추천 알고리즘(Recommendation) 등 서비스 제공 사이트(300)의 특성에 따라 요구되는 사용자 프로필 속성 설정 정보를 전달받을 수 있는데 이때, 사용자 프로필 속성 설정 정보는 서비스 제공 사이트(300)의 특성에 따라 다양하게 변경될 수 있다. 이후에 서비스 제공 사이트(300)로부터 사용자 프로필 요청을 전달받을 경우 제어부(130)로부터 생성된 사용자 프로필 정보를 서비스 제공 사이트(300)에 전달한다. 여기서 쿠키는 하이퍼텍스트 기록서의 일종으로서 인터넷 사용자가 어떠한 웹사이트를 방문할 경우 그 사이트가 사용하고 있는 서버에서 인터넷 사용자의 컴퓨터에 설치하는 작은 기록 정보 파일을 일컫는다. 쿠키라는 이름은 그림 동화 헨젤과 그레텔에서 가져온 것으로 헨텔과 그레텔이 지나온 길을 표시하기 위해 쿠키 조각을 떨어뜨리며 표시했다는 이야기에서 유래된 것이다. 이 기록 파일에 담긴 정보는 인터넷 사용자가 동일한 웹 사이트를 방문할 때마다 읽히고 수시로 새로운 정보로 바뀐다. 이 수단은 오늘날 많은 서버 및 웹사이트들이 브라우저의 신속성을 위해 사용되고 있다.
한편, 하이퍼텍스트는 참조를 통해 사용자가 한 문서에서 다른 문서로 즉시 접근할 수 있는 텍스트이다. 주로 컴퓨터나 다른 전자기기들을 통해 표시되며 인터넷과 결합하여 HTML의 주된 구성요소가 되었다. 기존의 문서가 순차적이면서 서열형 구조라면, 하이퍼텍스트는 링크에 다라 그 차례가 바뀌는 임의적이면서 나열형인 구조를 가진다. 즉, 참조로 연결된 문서들을 어떠한 행위(Click)에 따라 자유롭게 이동할 수 있다.
한편, HTML은 하이퍼텍스트 마크업 언어(HyperText Markup Language)라는 의미의 웹 페이지를 위한 지배적인 마크업 언어이다. HTML은 제목, 단락, 목록 등과 같은 본문을 위한 구조적 의미를 나타내는 것뿐만 아니라 링크, 인용과 그 밖의 항목으로 구조적 문서를 만들 수 있는 방법을 제공한다. 그리고 이미지와 객체를 내장하고 대화형 양식을 생성하는데 사용될 수 있다. HTML은 웹 페이지 콘텐츠 안의 꺽쇠 괄호에 둘러싸인 태그로 되어있는 HTML 요소 형태로 작성된다. HTML은 웹 브라우저와 같은 HTML 처리 장치의 행동에 영향을 주는 자바스크립트, 본문 및 그 밖의 항목의 외관과 배치를 정의하는 CSS같은 스크립트를 포함하거나 불러올 수 있다.
한편, 마크업 언어는 태그 등을 이용하여 문서나 데이터의 구조를 명기하는 언어의 한 종류이다. 태그는 원래 텍스트와는 별도로 원고의 교정부호와 주석을 표현하기 위한 것이었으나 용도가 점차 확장되어 문서의 구조를 표현하는 역할을 하게 되었다. 이러한 태그 방법의 체계를 마크업 언어라고 한다. 일반적으로 데이터를 기술하는 정도로만 사용되기에 프로그래밍 언어와는 구별된다.
한편, 자바스크립트는 객체 기반의 스크립트 프로그래밍 언어이다. 자바스크립트는 웹 브라우저 내에서 주로 사용되며, 다른 응용 프로그램의 내장 객체에도 접근할 수 있는 기능을 가지고 있다. 또한, Node.js와 같은 런타임 환경과 같이 서버 사이드 네트워크 프로그래밍에도 사용되고 있다.
한편, CSS는 마크업 언어가 실제 표시되는 방법을 기술하는 언어로 HTML과 XHTML에 주로 쓰이며, XML에서도 사용될 수 있다. 레이아웃과 스타일을 정의할 때 자유도가 높으며, HTML 구조는 그대로 두고 CSS파일만 변경해도 다른 웹 사이트처럼 꾸밀 수 있다.
한편, XML은 다양한 특수 목적을 갖는 마크업 언어를 만드는데 사용하도록 권장되는 다목적 마크업 언어이다. XML은 다른 많은 종류의 데이터를 기술하는데 사용될 수 있고, 다른 종류의 시스템, 특히 인터넷에 연결된 시스템 사이에 데이터를 쉽게 주고 받을 수 있게 하여 HTML의 한계를 극복할 목적으로 만들어졌다.
한편, URL은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 흔히 웹 사이트 주소로 알고 있지만, URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크상의 자원을 모두 나타낼 수 있다. 그 주소에 접속하려면 해당 URL에 맞는 프로토콜(Protocol)을 알아야 하고, 그와 동일한 프로토콜로 접속해야 한다. 예를 들어, FTP(File Transfer Protocol) 프로토콜인 경우에는 FTP 클라이언트를 이용해야 하고, HTTP(HyperText Transfer Protocol)인 경우에는 웹 브라우저를 이용해야 한다. 텔넷(Telnet)의 경우에는 텔넷 프로그램을 이용하여 접속해야 한다.
한편, Redirection URL은 이용 가능한 웹 페이지를 하나 이상의 URL주소로 만들어주는 월드 와이드 웹(World Wide Web) 기술이다. 넘겨받은 URL을 웹 브라우저가 열려고 하면 다른 URL의 문서가 열리게 된다. 이와 비슷한 용어인 도메인 redirection은 URL 도메인에 속하는 모든 페이지가 다른 도메인으로 연결되는 것을 의미한다. Redirection URL은 URL 단축, 웹 페이지가 이동될 때 발생되는 죽은 링크의 예방, 하나의 웹 사이트를 가리키는 동일 소유자의 여러 도메인 이름 허용, 웹 사이트 안팎으로의 탐색 안내 등 여러 목적이 있다.
한편, 프로토콜은 정보기기 사이 즉 컴퓨터 사이 또는 컴퓨터와 단말기 사이 등에서 정보교환이 필요한 경우, 이를 원활하게 하기 위하여 정한 여러 가지 통신 규칙과 방법에 대한 약속 즉, 통신의 규약을 의미한다. 통신 규약이라 함은 상호간의 접속이나 전달방식, 통신방식, 주고받을 자료의 형식, 오류검출방식, 코드변환방식, 전송속도 등에 대하여 결정하는 것을 의미한다. 일반적으로 기종이 다른 컴퓨터는 통신규약도 다르기 때문에 기종이 다른 컴퓨터간에 정보통신을 하려면 표준 프로토콜을 설정하여 각각 이를 채택하여 통신망을 구축해야 한다. 대표적인 표준 프로토콜은 TCP/IP(Transmission Control Protocol/Internet Protocol)가 해당된다. 정보통신의 상대방은 일반적으로 원격지에 있다. 따라서 정보를 전송하기 위해서는 정보를 전기적인 신호의 형태로 변환하고 그 변환된 신호가 통신망을 통해 흐르도록 하는데, 통신망에는 정상적인 신호의 흐름을 방해하는 여러 가지 현상이 존재하게 된다. 이러한 현상은 정확한 정보의 전송을 방해하여 도중에 오류가 발생되는 원인이 된다. 프로토콜이라는 규약의 집합 속에는 이러한 오류에 대응하기 위한 약속이 대단히 중요하다. 또한 정보를 정확하고 효율적으로 전송하기 위해서는 송수신 개체 간에 서로 정보의 전송 시점과 수신 시점을 맞추는 동기화도 수행해야 하고, 정보 흐름의 양을 조절하는 흐름 제어방법도 역시 사전에 약속하여 프로토콜 속에 포함해야 한다. 이러한 오류제어, 동기화, 흐름제어, 코드변환, 전송속도 등에 대한 약속 이외에도 통신하는 상대방의 위치에 따라 통신 개체가 어느 OSI(Operating System Interconnection) 계층에 존재하는지와 효율적인 정보전송을 위한 기법, 정보의 안전성에 관한 약속들도 프로토콜의 범주에 포함되어야 한다.
한편, FTP는 TCP/IP 프로토콜을 이용해 서버와 클라이언트 사이의 파일 전송을 하기 위한 프로토콜이다. FTP는 화면에 표시할 수 있는 웹 페이지와 관련 파일들을 전송하는 HTTP, 전자우편을 전송하는 SMTP(Simple Mail transfer Protocol) 등과 같이 TCP/IP 프로토콜의 응용 계층에 포함되며, 웹 페이지 파일들을 인터넷상에서 모든 사람이 볼 수 있도록 하기 위해 저작자의 컴퓨터로부터 서버로 옮기는 과정에서 사용된다. 또한, 다른 서버들로부터 자신의 컴퓨터로 프로그램이나 파일들을 다운로드하는데 사용될 수 있으며, 연결의 종류로는 명령 연결과 데이터 전송용 연결이 존재한다.
한편, HTTP는 월드 와이드 웹 상에서 정보를 주고받을 수 있는 프로토콜이며, 이전에 언급한 것과 같이 TCP/IP의 응용 계층에 포함된다. 주로 HTML 문서를 주고받는데 쓰이며, 클라이언트와 서버 사이에 이루어지는 요청, 응답 프로토콜이다. 예를 들어, 클라이언트인 웹 브라우저가 HTTP를 통하여 서버로부터 웹 페이지나 그림 정보를 요청하면, 서버는 이 요청에 응답하여 필요한 정보를 해당 사용자에게 전달하게 된다.
한편, 텔넷은 사용자가 사용권한을 가지고 있다는 전제하에 다른 사람의 호스트 컴퓨터를 원격지에서 접속할 수 있도록 해주는 네트워크 프로토콜이다. 웹 서비스를 해주는 HTTP 프로토콜과 FTP 프로토콜은 원격지 컴퓨터에 특정 파일을 요구하기 위한 프로토콜이지만, 실제로 그 컴퓨터에 로그인하는 것은 아니다. 그러나 텔넷을 이용하면 정식 사용자로서 로그온하며, 자신에게 부여된 권한에 따라 그 컴퓨터 상에 존재하는 특정한 응용 프로그램 또는 데이터를 이용할 수 있다.
한편, Segmentation은 모든 고객에게서 기회와 수요가 있는 것이 아닌, 특정 고객들에서 대부분의 기회와 수요가 발생하여 그에 집중하여 판매 및 마케팅을 전개할 필요성이 있다. 세분화는 시장을 공통적인 수요와 구매행동을 가진 그룹으로 나누어 해당 그룹의 욕구와 필요에 맞추어 판매 및 마케팅을 전개하는 것을 말한다. 세분화의 기준에는 인구학적, 지역적, 사회적, 심리적 방법 등이 있다. 세분화의 결과는 상호간에는 이질성이 극대화되어야 하고, 세분시장 내에서는 동질성이 극대화 되어야 바람직하다. 세분화의 기준이 되는 변수에는 구매 행동 변수, 인구통계적 변수, 심리적 변수, 사용상황 변수, 추구편익 변수 등이 존재하며, 효과적인 시장세분화의 조건으로는 측정가능성, 규모, 접근가능성, 차별적 반응 등이 존재한다.
제어부(130)는 서비스 제공 사이트(300)로부터 사용자 쿠키를 전달받으면 식별자 동기화를 위해 서버 쿠키 식별자를 생성하고, 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성한다. 이때, 사용자 쿠키에 사용자 식별자가 포함되어 있을 경우 사용자 식별자와 서버 쿠키 식별자를 동기화하고, 사용자 쿠키에 사용자 식별자가 포함되어있지 않을 경우 사용자 쿠키 식별자와 서버 쿠키 식별자를 동기화한다. 식별자 동기화 후에 서비스 제공 사이트(300)로부터 Segmentation, 추천 알고리즘 등 사용자 프로필 속성 설정 정보를 전달받으면 전달받은 정보를 기반으로 사용자 프로필 속성 테이블을 생성한다. 이때, 서비스 제공 사이트(300)로부터 전달되는 사용자 프로필 속성 설정 정보는 서비스 제공 사이트(300)의 특성에 따라 성, 연령대, 월 지출액 등으로 다양하게 변경될 수 있다. 또한 서비스 제공 사이트(300)의 사용자 행동 로그 수집 API로부터 사용자 행동 로그를 수집하고, 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 사용자 행동 로그를 분석하여 결과를 생성한다. 여기서 API는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. 주로 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스를 제공한다. API가 사용될 수 있는 예로는 윈도우 API, 자바 API, OpenGL 등이 있다.
한편, 운영 체제는 시스템 하드웨어를 관리할 뿐 아니라 응용 소프트웨어를 실행하기 위하여 하드웨어 추상화 플랫폼과 공통 시스템 서비스를 제공하는 시스템 소프트웨어를 의미한다. 최근에는 가상화 기술의 발전으로 인해 실제 하드웨어가 아닌 하이퍼바이저(Hypervisor) 위에서 실행되기도 한다. 입출력과 메모리 할당과 같은 하드웨어 기능의 경우 운영 체제는 응용 프로그램과 컴퓨터 하드웨어 사이의 중재 역할을 한다. 그러나 응용 프로그램 코드는 일반적으로 하드웨어에서 직접 실행된다. 운영체제는 실행되는 응용 프로그램들이 메모리와 CPU(Central Processing Unit), 입출력 장치 등의 자원들을 사용할 수 있도록 만들어 주고, 이들을 추상화하여 파일 시스템 등의 서비스를 제공한다. 또한, 멀티태스킹을 지원하는 경우, 여러 개의 응용 프로그램을 실행하고 있는 동안, 운영 체제는 이러한 모든 프로세스들을 스케줄링하여 마치 그들이 동시에 수행되는 것처럼 보이는 효과를 낼 수 있다. 운영 체제의 종류로는 싱글태스킹 운영 체제, 멀티태스킹 운영 체제, 분산 운영 체제, 임베디드 운영 체제 및 실시간 운영 체제 등이 존재한다.
한편, 하이퍼바이저는 호스트 컴퓨터에서 다수의 운영 체제를 동시에 실행하기 위한 논리적 플랫폼을 의미하며, 가상화 머신 모니터(Virtual Machine Monitor)라고도 불린다.
한편, CPU는 소프트웨어 명령의 실행이 이루어지는 컴퓨터의 부분, 혹은 그 기능을 내장한 칩을 의미한다. 컴퓨터 내의 CPU는 외부에서 정보 수신, 기억, 컴퓨터 프로그램의 명령어 해석 후 연산 및 외부로 출력하는 역할을 한다. 따라서 CPU는 컴퓨터 부품과 정보를 교환하면서 컴퓨터 시스템 전체를 제어하는 장치로, 모든 컴퓨터의 작동과정이 CPU의 제어를 받기 때문에 컴퓨터의 두뇌에 해당한다고 할 수 있다. 실제의 CPU 칩에는 실행 부분뿐만 아니라 캐시 등의 부가 장치가 통합된 경우가 많다. CPU에는 MCU(Micro Control Unit)와 주변 장치가 다 들어있는 SoC(System On Chip)가 있다. 주변 IC(Integrated Circuit)가 따로 연결되어 있는 경우에는 MCU라고 할 수 있다. CPU는 기계어로 쓰인 컴퓨터 프로그램의 명령어를 해석하여 실행한다. 기본 구성으로는 CPU에서 처리할 명령어를 저장하는 역할의 프로세서 레지스터, 비교, 판단 및 연산을 담당하는 산술논리 연산장치(ALU), 명령어의 해석과 올바른 실행을 위하여 CPU를 내부적으로 제어하는 제어부와 내부 버스 등이 포함될 수 있다.
한편, 프로그래밍 언어는 컴퓨터에게 명령 또는 연산을 시킬 목적으로 설계되어 기계와 의사소통을 할 수 있게 해주는 언어이다. 컴퓨터가 바로 이해할 수 있는 언어는 기계어인데, 기계어는 2진수인 1과 0으로 구성되어 있어 사용이 불편하기 때문에 기계어와 인간이 사용하는 언어의 중간적 위치에서 프로그램 작성을 쉽게 할 수 있는 인공언어로 프로그래밍 언어가 등장하였다. 프로그래밍 언어는 간결성, 직교성, 가독성, 정확성, 기계독립성 등을 특징으로 하며, 과학응용 분야, 사무응용 분야, 인공지능 분야 등 많은 분야에서 사용된다. 그 결과, 사람이 원하는 작업을 컴퓨터가 수행할 수 있도록 프로그래밍 언어로 일련의 과정을 작성하여 컴퓨터에게 일을 시킬 수 있으며, 고급 언어일수록 사람이 사용하는 언어에 가깝다. 프로그래밍 언어의 종류로는 절차적 언어, 객체 지향 언어, 함수형 언어 등이 존재한다.
저장부(150)는 사용자 프로필 제공 서비스 가입 요청과 관련된 가입 요청 관련 정보, 사용자 쿠키, 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반으로 생성된 식별자 매칭 테이블, 사용자 프로필 속성 설정과 관련된 설정 관련 정보, 사용자 행동 로그, 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 사용자 행동 로그가 분석되어 생성된 사용자 프로필 정보 및 사용자 프로필 정보 요청과 관련된 요청 관련 정보를 저장한다.
도 5는 본 발명에 따른 사용자 프로필 제공 서버(100) 내부의 동작 과정을 나타내는 도면이다.
도 5를 참조하면, 송수신부(510)는 서비스 제공 사이트(300)로부터 사용자 프로필 제공 서비스 가입 요청을 수신하고(S501), 식별자 동기화를 위해 서비스 제공 사이트(300)에 redirection URL을 전달한다(S503). Redirection URL을 통해 접속한 서비스 제공 사이트(300)로부터 사용자 쿠키를 수신한 후(S505) 서비스 제공 사이트(300)의 사용자 행동 로그 수집 API를 통해 수집된 사용자 행동 로그 주체를 식별하기 위해 사용자 쿠키 식별자 및 서버 쿠키 식별자를 서비스 제공 사이트(300)에 전달한다(S507). 이후에 서비스 제공 사이트(300)로부터 수신된 사용자 쿠키를 제어부(530)에 전달하고(S509), 제어부(530)는 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성한다(S511). 이때, 사용자 쿠키에 사용자 식별자가 포함되어 있을 경우 사용자 식별자와 서버 쿠키 식별자를 동기화하고, 사용자 쿠키에 사용자 식별자가 포함되어있지 않을 경우 사용자 쿠키 식별자와 서버 쿠키 식별자를 동기화한다. 생성된 식별자 매칭 테이블은 저장부(550)로 전달되어(S513) 저장되고(S515), 송수신부(510)는 서비스 제공 사이트(300)로부터 사용자 프로필 속성 설정 정보를 수신하여(S517) 수신 정보를 제어부(530)로 전달한다(S519). 제어부(530)는 전달받은 사용자 프로필 속성 설정 정보 기반의 사용자 프로필 속성 테이블을 생성하고(S521), 저장부(550)로 전달하여(S523) 저장한다(S525). 송수신부(510)는 서비스 제공 사이트(300)의 사용자 행동 로그 수집 API로부터 사용자 행동 로그를 수집하여(S527) 제어부(530)로 전달하고(S529), 제어부(530)는 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 사용자 행동 로그를 분석하여 사용자 프로필 정보를 생성한다(S531). 생성된 사용자 프로필 정보는 저장부(550)로 전달되어 저장되는데(S535) 서비스 제공 사이트(300)로부터 사용자 프로필 요청이 있을 경우, 서비스 제공 사이트(300)가 분석 정보를 식별할 수 있도록 사용자 식별자 기반의 사용자 프로필 정보를 전달한다(S533). 이후에 서비스 제공 사이트(300)는 사용자 단말(200)로부터 접속이 발생하면(S537) 사용자 프로필 정보 기반의 맞춤 서비스를 제공한다(S539).
도 6은 본 발명에 따른 사용자 단말(200), 서비스 제공 사이트(300) 및 사용자 프로필 제공 서버(100) 사이의 연결 구조를 나타내는 도면이다.
도 6을 참조하면, 사용자 단말(200)은 클라이언트(client)로서 네트워크를 통해 서버인 서비스 제공 사이트(300)에 접속할 수 있으며, 서비스 제공 사이트(300)와 사용자 프로필 제공 서버(100)는 각각의 독립된 서버로서 네트워크를 통해 연결되어 정보를 주고 받을 수 있다. 클라이언트/서버 모델이 발전하게 된 배경에는 당시 브리지(Bridge), 라우터(Router), 게이트웨이(Gateway)와 같은 접속장치의 발달로 근거리통신망(Local Area Network), 광역통신망(Wide Area Network) 기술이 빠르게 발전했기 때문이다. 발전된 근거리통신망 및 광역통신망 네트워크 통신 환경에 따라 그에 맞는 다양한 프로토콜이 표준화되는 시도가 이뤄졌다. 가장 대표적인 것이 국제표준화기구(International Organization for Standard)에서 개발한 OSI 7계층 모델이다.
OSI 7계층이란, 국제표준화기구에서 발표한 프로토콜의 기준 모델로 네트워크를 7개의 독립 기능 계층, 즉 물리 계층, 데이터 링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층 및 응용 계층으로 나누어 컴퓨터 기종이 다르더라도 각각의 계층에 맞게 프로토콜을 설계하면 상호 통신이 가능하도록 설계되었다. 인접층간의 인터페이스는 하위 계층에서 상위 계층에 대한 서비스로 정의할 수 있다. 먼저 물리 계층은 가장 하위의 1번째 계층으로서 상위 계층인 데이터 링크 계층으로부터 받은 데이터를 통신 회선을 통해 비트 단위로 전송하는 역할을 한다. 구성되는 물리 매체에는 허브(Herb), 리피터(Repeater) 등의 전기적인 신호를 발생시키는 장치, 전화선이나 UTP, 동축 케이블 등의 기계적인 연결 장치를 통해 전기적, 기계적 및 물리적 조건을 관리하여 비트 열의 전송을 보충하는 계층이다. 데이터 링크 계층은 2번째 계층으로서 하위 계층인 물리 계층의 비트들을 프레임이라는 논리 집단으로 구성하여 접속한다. 통신 중 시스템간의 전송로에서 발생하는 오류를 검출하여 회복시킴으로써 데이터의 흐름을 제어하며, 데이터의 집합을 확실하게 전송하는 것을 보증하기 위한 계층이다. 상위 계층인 네트워크 계층으로부터 하위 계층인 물리 계층으로 데이터 프레임을 전송하는 역할을 하며, 다른 모든 계층과 마찬가지로 자기 고유의 식별 정보를 전송 데이터 앞부분에 추가한다. 데이터 링크 계층의 기기에는 지능형 허브, 브리지, 네트워크 카드 및 어댑터(Adapter) 등이 존재한다. 네트워크 계층은 3번째 계층으로서 데이터 네트워크나 전화선 등의 각종 통신 네트워크를 사용하여 통신 상대 중 맨 끝에 있는 최종단 시스템과 통신 선로를 확립하기 위한 중계 기능을 관리하여 최종단 시스템간의 데이터 전송을 보증한다. 전송 계층은 4번째 계층으로서 신뢰성 있는 데이터 전송을 제공하며 주요 데이터 전송 프로토콜은 TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)를 사용한다. 시스템을 연결하고 있는 통신 네트워크에 오류 발생 확률이 높은 경우 오류를 검출해내고, 오류 회복절차에 따라 데이터 전송의 신뢰성을 높일 수 있다. 만약 어떤 데이터가 수신측 장치에서 올바르게 전달되지 않은 경우 재전송을 하거나 상위 계층에 오류 사실을 알려 상위 계층에서 필요한 조치를 취할 수 있다. 세션 계층은 5번째 계층으로서 통신을 하는 2개의 응용 프로그램 사이에서 통신을 위한 하나의 논리적 구조를 관리한다. 즉, 2개의 응용 프로그램 사이에서 하나의 세션을 만들어 통신을 진행하고 중간 중간에 브레이크 포인트를 설정하여 세션에 문제가 발생한 경우 가장 최근에 설정된 브레이크 포인트로부터 통신을 재개할 수 있는 기능을 제공한다. 표현 계층은 6번째 계층으로서 상위 계층인 응용 계층의 다양한 표현 양식을 범용적인 전송 방식으로 변환하거나 암호화하고, 데이터를 압축한다. 마지막으로 응용 계층은 7번째 계층으로서 통신망을 통하여 통신을 하는 응용 프로그램 사이에서 필요한 서비스를 정의한다.
한편, 라우터란 서로 다른 네트워크를 연결하여 정보를 주고 받을 때, 송신정보에 담긴 수신처의 주소를 읽고 가장 적절한 통신통로를 이용하여 다른 통신망으로 전송하는 장치이다. 예를 들어, 서로 다른 근거리통신망을 중계하거나 근거리통신망을 광역통신망에 연결할 때 주로 사용한다. 인터넷을 접속할 때는 반드시 필요한 장비로서, 서로 다른 프로토콜로 운영하는 통신망에서 정보를 전송하기 위해 경로를 설정하는 역할을 제공하는 핵심적인 통신장비이다. 단순히 통신망을 연결해주는 브리지 기능에 추가하여 경로 배정표에 따라 다른 통신망을 인식하여 경로를 배정하며, 수신된 패킷에 의하여 다른 통신망 또는 자신이 연결되어 있는 통신망 내의 수신처를 결정하여 여러 경로 중 가장 효율적인 경로를 선택하여 패킷을 보낸다. 통신 흐름을 제어하며 통신망 내부에 여러 보조 통신망을 구성하는 등의 다양한 통신망 관리기능을 수행한다. 장점은 통신환경의 설정을 가능하게 하여 관리 방침에 따라 라우팅(Routing) 방식을 결정하여 전체 네트워크 성능을 개선할 수 있다. 또한 표준 논리에 따라 통신방법이 자동으로 결정되므로 유지보수가 용이하고, 통신방법에 구애받지 않으므로 대규모 통신망을 쉽게 구성할 수 있으며, 다양한 경로를 따라 통신량을 분산할 수 있다.
한편, 라우팅은 네트워크 내에서 통신 데이터를 전달할 경로를 선택하는 과정을 의미한다. 라우팅은 전화 통신망, 전자 정보 통신망, 교통망 등 여러 종류의 네트워크에서 사용된다. 패킷 스위칭 네트워크에서 라우팅은 패킷 전달 및 일반적으로 라우터, 브릿지, 게이트웨이, 방화벽 또는 스위치로 불리는 중간 노드를 거쳐 출발지부터 최종 목적지까지 논리적으로 주소가 부여된 패킷의 변환을 총괄한다. 비록 특화된 하드웨어가 아니기 때문에 성능에 제약을 받을 수는 있지만, 다수의 네트워크 카드를 가진 범용 컴퓨터 또한 패킷 전달과 라우팅을 수행할 수 있다. 라우팅 과정은 보통 다양한 네트워크 목적지에 대한 라우트 기록을 관리하는 라우팅 테이블을 기초로 하여 수행된다. 그러므로, 라우터의 메모리에 기록된 라우팅 테이블의 구성은 효과적인 라우팅에 매우 중요하다. 대부분의 라우팅 알고리즘은 한번에 한가지 네트워크 경로를 사용하지만, 다중 경로 라우팅 기술은 다양한 대체 경로의 사용을 가능하게 할 수 있다.
한편, 게이트웨이는 컴퓨터 네트워크에서 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 장치를 의미한다. 즉, 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트이고, 넓은 의미로는 종류가 다른 네트워크 간의 통로 역할을 하는 장치이다.
한편, UDP는 전송 계층에 포함되는 프로토콜로서 인터넷상에서 서로 정보를 주고받을 때 수신측과 접속 절차를 거치지 않고, 데이터를 보낸다는 신호 없이 송신측에서 일방적으로 데이터를 전달하는 통신 프로토콜이다. 송신측에서는 수신측의 데이터 수신 여부를 확인할 수 없고, 확인할 필요도 없도록 만들어져 오류 정정이나 재송신 기능이 없어 비신뢰성 및 비연결 지향 프로토콜이다. TCP보다 안정성은 떨어지지만 속도는 훨씬 빠른 장점이 있다.
한편, 클라이언트/서버 모델에서 주로 사용되는 프로토콜은 TCP/IP 프로토콜이다. TCP/IP 프로토콜은 OSI 모델이 설계되는 것과 병행해서 개발되었던 프로토콜로서 좀 더 간단하고 유연성이 뛰어나 실제 현장에서는 대부분 TCP/IP 프로토콜이 사용되고 있다. TCP/IP 프로토콜은 물리 계층, 인터넷 계층, 전송 계층 및 응용 계층의 4계층으로 구성된다. 물리 계층은 OSI 7계층의 물리 계층과 같은 역할을 하고, 인터넷 계층은 OSI 7계층의 데이터 링크 계층과 네트워크 계층 역할을 수행한다. 전송 계층은 OSI 7계층의 전송 계층과 세션 계층 역할을 수행하고, 응용 계층은 OSI 7계층의 표현 계층과 응용 계층 역할을 수행한다.
한편, TCP는 UDP와 같이 전송 계층에 포함되는 프로토콜로서 인터넷상에서 서로 정보를 주고받을 때 데이터를 전달하기 전에 연결을 설정하고, 송신측은 데이터를 여러 개의 패킷들로 분할한 후 번호를 붙여 전송한다. 수신측은 전달받은 패킷들을 번호에 따라 재조립하는데 만약 패킷의 손실, 중복, 오류 등이 발생하면 이를 검출하고 재전송을 요청한다. TCP는 수신측의 사용자에게 완성된 데이터를 전달하기 때문에 신뢰성 및 연결 지향 프로토콜이다. UDP보다는 느리지만 신뢰성있는 데이터 전송이 가능하다.
도 7은 본 발명에 따른 서비스 제공 사이트(300)로부터 맞춤 서비스가 사용자 단말(200)에 전달된 결과를 나타내는 도면이다.
도 7을 참조하면, 서비스 제공 사이트(300)는 사용자 프로필 제공 서버(100)로부터 사용자 식별자 기반의 사용자 프로필 정보를 전달받아 사용자의 선호도를 반영한 맞춤형 서비스를 제공할 수 있다. 이때, 맞춤형 서비스는 광고, 마케팅 등이 될 수 있으며, 예를 들어, 모바일 지갑 서비스에서 특정 빵집 쿠폰 사용 빈도가 높은 사용자를 대상으로 해당 브랜드의 프로모션 광고를 제공하거나, 모바일 내비게이션 서비스의 목적지 데이터와 연계한 주변 빵집 매장의 타겟 마케팅이 가능하다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 실시 형태로 실시될 수 있다는 것을 인지할 수 있을 것이다. 따라서 이상에서 기술한 실시 예들은 예시적인 것일 뿐이며, 그 범위를 제한해놓은 한정적인 것이 아닌 것으로 이해해야만 한다. 또한, 도면에 도시된 순서도들은 본 발명을 실시함에 있어서 가장 바람직한 결과를 달성하기 위해 예시적으로 도시된 순차적인 순서에 불과하며, 다른 추가적인 단계들이 제공되거나, 일부 단계가 삭제될 수 있음은 물론이다.
본 명세서에서 기술한 기술적 특징과 이를 실행하는 구현물은 디지털 전자 회로로 구현되거나, 본 명세서에서 기술하는 구조 및 그 구조적인 등가물 등을 포함하는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현되거나, 이들 중 하나 이상의 조합으로 구현 가능하다. 또한 본 명세서에서 기술한 기술적 특징을 실행하는 구현물은 컴퓨터 프로그램 제품, 다시 말해 처리 시스템의 동작을 제어하기 위하여 또는 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령어에 관한 모듈로서 구현될 수도 있다.
컴퓨터로 판독 가능한 기록매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 또는 이들 중 하나 이상의 조합일 수 있다.
한편, 본 명세서에서 "장치"라 함은 예를 들어, 프로세서, 컴퓨터 또는 다중 프로세서나 컴퓨터를 포함하여 데이터를 처리하기 위한 모든 기구, 장치 및 기계를 모두 포함한다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드 등으로 알려진 컴퓨터 프로그램은 컴파일 되거나 해석된 언어 또는 선험적, 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 또는 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 구현될 수 있다. 한편, 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응되는 것은 아니며, 요청된 프로그램에 제공되는 단일 파일 내에 또는 다중의 상호 작용하는 파일(예를 들어, 하나 이상의 모듈, 하위 프로그램 또는 코드의 일부를 저장하는 파일)내에, 또는 다른 프로그램이나 데이터를 보유하는 파일의 일부(예를 들어, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트)내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 유/무선 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나 이상의 컴퓨터 상에서 실행되도록 구현될 수 있다.
한편, 컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 기록매체는, 예를 들어 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD와 DVD 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함할 수 있다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.
본 명세서에서 기술한 기술적 특징을 실행하는 구현물은 예를 들어, 데이터 장치와 같은 백엔드 컴포넌트를 포함하거나, 예를 들어, 애플리케이션 장치와 같은 미들웨어 컴포넌트를 포함하거나, 예컨대 사용자가 본 명세서에서 설명한 주제의 구현물과 상호 작용할 수 있는 웹 브라우저나 그래픽 유저 인터페이스를 갖는 클라이언트 컴퓨터와 같은 프론트엔드 컴포넌트 혹은 그러한 백엔드, 미들웨어 혹은 프론트엔드 컴포넌트의 하나 이상의 모든 조합을 포함하는 연산 시스템에서 구현될 수도 있다. 시스템의 컴포넌트는 예를 들어, 통신 네트워크와 같은 디지털 데이터 통신의 어떠한 형태나 매체에 의해서도 상호 접속 가능하다.
이하, 상기 기술한 내용과 더불어 본 명세서에 기술한 비로그인 사용자 메인 사용자 프로필 제공 방법이 포함하는 구성들을 구현할 수 있는 보다 구체적인 실시 예에 대하여 자세히 기술하도록 한다.
본 명세서에서 기술한 사용자 프로필 제공 방법은 클라이언트 디바이스 또는 웹 기반의 스토리지 시스템과 관련된 장치 또는 장치에 포함된 하나 이상의 프로세서(Processor) 상에서 컴퓨터 소프트웨어, 프로그램 코드 또는 명령어를 실행하는 수단을 통해 부분적 또는 전체적으로 사용될 수 있다. 여기서 프로세서는 장치, 클라이언트, 네트워크 인프라 구조, 모바일 컴퓨팅 플랫폼, 고정 컴퓨팅 플랫폼 등과 같은 컴퓨팅 플랫폼 중 일부일 수 있으며, 구체적으로 프로그램 명령어, 코드 등을 실행할 수 있는 컴퓨터 또는 프로세싱 디바이스의 한 종류일 수 있다. 또한, 프로세서는 사용자 프로필 제공 방법, 명령어, 코드 및 프로그램을 저장하는 메모리를 더 포함할 수 있으며, 메모리를 포함하지 않는 경우 별도의 인터페이스를 통해 사용자 프로필 제공 방법, 명령어, 코드 및 프로그램이 저장된 CD-ROM, DVD, 메모리, 하드 디스크, 플래시 드라이브, RAM, ROM, 캐시 등과 같은 스토리지 디바이스에 접근(Access)할 수도 있다.
또한, 본 명세서에서 기술한 사용자 프로필 제공 방법은 장치, 클라이언트, 게이트웨이, 허브, 라우터 또는 네트워크 하드웨어 상의 컴퓨터 소프트웨어를 실행하는 장치를 통해 부분적 또는 전체적으로 사용될 수 있다. 여기서 소프트웨어는 파일 장치, 프린트 장치, 도메인 장치, 인터넷 장치, 인트라넷 장치, 호스트 장치, 분산 장치 등과같이 다양한 종류의 장치에서 실행될 수 있으며, 상기 언급한 장치들은 메모리, 프로세서, 컴퓨터에서 판독 가능한 저장매체, 스토리지 매체, 통신 디바이스, 포트, 클라이언트 그리고 다른 장치들을 유/무선 네트워크를 통해 접근할 수 있는 인터페이스를 더 포함할 수 있다. 또한, 사용자 프로필 제공 방법, 명령어, 코드 등 역시 장치에 의해 실행될 수 있으며, 사용자 프로필 제공 방법을 실행하기 위해 필요한 다른 디바이스들은 장치와 연관된 계층구조의 일 부분으로 구현될 수 있다.
아울러, 장치는 클라이언트, 다른 장치, 프린터, 데이터베이스 장치, 프린트 장치, 파일 장치, 통신 장치, 분산 장치 등을 제한 없이 포함하는 다른 디바이스에게 인터페이스를 제공할 수 있으며, 인터페이스를 통한 연결은 유/무선 네트워크를 통해 프로그램의 원격 실행을 용이하게 할 수 있다. 또한, 인터페이스를 통해 장치에 연결된 디바이스 중 어느 것이라도 사용자 프로필 제공 방법, 명령어, 코드 등을 저장할 수 있는 적어도 하나의 스토리지 디바이스를 더 포함할 수 있으며, 장치의 중앙 프로세서는 상이한 디바이스 상에서 실행될 명령어, 코드 등을 디바이스에 제공하여 스토리지 디바이스에 저장되게 할 수 있다.
한편, 본 명세서에서 기술한 사용자 프로필 제공 방법은 네트워크 인프라구조를 통해 부분적 또는 전체적으로 사용될 수 있다. 여기서 네트워크 인프라구조는 컴퓨팅 디바이스, 장치, 라우터, 허브, 방화벽, 클라이언트, 개인용 컴퓨터, 통신 디바이스, 라우팅 디바이스 등과 같은 디바이스와 각각의 기능을 실행할 수 있는 별도의 모듈 등을 모두 포함할 수 있으며, 상기 언급한 디바이스와 모듈 외에 스토리 플래시 메모리, 버퍼, 스택, RAM, ROM 등과 같은 스토리지 매체를 더 포함할 수 있다. 또한, 사용자 프로필 제공 방법, 명령어, 코드 등 역시 네트워크 인프라구조가 포함하는 디바이스, 모듈, 스토리지 매체 중 어느 하나에 의해 실행 및 저장될 수 있으며, 사용자 프로필 제공 방법을 실행하기 위해 필요한 다른 디바이스 역시 네트워크 인프라구조의 일 부분으로 구현될 수 있다.
또한, 본 명세서에서 기술한 사용자 프로필 제공 방법은 하드웨어 또는 특정 애플리케이션(Application)에 적합한 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 여기서 하드웨어는 개인용 컴퓨터, 이동통신 단말기 등과 같은 범용 컴퓨터 디바이스와 기업형 특정 컴퓨터 디바이스를 모두 포함하며, 컴퓨터 디바이스는 메모리, 마이크로프로세서, 마이크로콘트롤러, 디지털 신호 프로세서, 애플리케이션 집적 회로, 프로그래머블 게이트 어레이, 프로그래머블 어레이 조직 등을 포함하는 디바이스 또는 이들의 조합으로 구현될 수 있다.
이상에서 기술한 컴퓨터 소프트웨어, 명령어, 코드 등은 판독 가능한 디바이스에 의해 저장 또는 접근될 수 있으며, 여기서 판독 가능한 디바이스는 일정 시간 간격 동안 컴퓨팅하는데 사용되는 디지털 데이터를 구비하는 컴퓨터 컴포넌트, RAM 또는 ROM과 같은 반도체 스토리지, 광디스크와 같은 영구적인 스토리지, 하드 디스크, 테이프, 드럼 등과 같은 대용량 스토리지, CD 또는 DVD와 같은 광 스토리지, 플래시 메모리, 플로피 디스크, 자기 테이프, 페이퍼 테이프, 독립형 RAM 디스크, 컴퓨터로부터 착탈 가능한 대용량 스토리지와 동적 메모리, 정적 메모리, 가변 스토리지, 클라우드와 같은 네트워크 접속형 스토리지 등과 같은 메모리를 포함할 수 있다. 한편, 여기서 명령어와 코드 등은 SQL, dBase 등과 같은 데이터 지향 언어, C, Objective C, C++, 어셈블리 등과 같은 시스템 언어, Java, NET 등과 같은 아키텍처 언어, PHP, Ruby, Perl, Python 등과 같은 애플리케이션 언어 등과 같은 언어들을 모두 포함하지만, 이에 한정되지는 않고 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려진 언어들을 모두 포함할 수 있다.
또한, 본 명세서에서 기술한 "컴퓨터에서 판독 가능한 기록매체"는 프로그램 실행을 위해 명령어를 프로세서로 제공하는데 기여하는 모든 매체를 포함한다. 구체적으로 데이터 스토리지 디바이스, 광디스크, 자기 디스크 등과 같은 비휘발성 매체, 동적 메모리 등과 같은 휘발성 매체와 데이터를 전송하는 동축 케이블, 구리 와이어, 광섬유 등과 같은 전송 매체를 포함하지만 이에 한정되지는 않는다.
한편, 본 명세서에 첨부된 도면에 도시된 블록도와 순서도에 포함된 본 발명의 기술적 특징을 실행하는 구성들은 상기 구성들 사이의 논리적인 경계를 의미한다. 그러나 소프트웨어나 하드웨어의 실시 예에 따르면, 도시된 구성들과 그 기능들은 독립형 소프트웨어 모듈, 모놀리식 소프트웨어 구조, 코드, 서비스 및 이들을 조합한 형태로 실행되며, 저장된 프로그램 코드, 명령어 등을 실행할 수 있는 프로세서를 구비한 컴퓨터에서 실행 가능한 매체에 저장되어 그 기능들이 구현될 수 있으므로 이러한 모든 실시 예 역시 본 발명의 권리범위 내에 속하는 것으로 보아야 할 것이다.
따라서, 첨부된 도면과 그에 대한 기술은 본 발명의 기술적 특징을 설명하기는 하나, 이러한 기술적 특징을 구현하기 위한 소프트웨어의 특정 배열이 분명하게 언급되지 않는 한, 단순히 추론되어서는 안된다. 즉, 이상에서 기술한 다양한 실시 예들이 존재할 수 있으며, 그러한 실시 예들이 본 발명과 동일한 기술적 특징을 보유하면서 일부 변형될 수 있으므로, 이 역시 본 발명의 권리범위 내에 속하는 것으로 보아야 할 것이다.
또한, 순서도의 경우 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 가장 바람직한 결과를 얻기 위하여 도시된 것으로서, 도시된 특정한 순서나 순차적인 순서대로 그러한 동작들을 반드시 실행되어야 한다거나 모든 도시된 동작들이 반드시 실행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티 태스킹과 병렬 프로세싱이 유리할 수 있다. 아울러, 이상에서 기술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
이와 같이, 본 명세서는 그 제시된 구체적인 용어에 의해 본 발명을 제한하려는 의도가 아니다. 따라서, 이상에서 기술한 실시 예를 참조하여 본 발명을 상세하게 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 본 발명의 범위를 벗어나지 않으면서도 본 실시 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다.
1000: 사용자 프로필 제공 시스템
100: 사용자 프로필 제공 서버
110: 송수신부
130: 제어부
150: 저장부
200: 사용자 단말
300: 서비스 제공 사이트

Claims (14)

  1. 서비스 제공 사이트로부터 사용자 쿠키를 전달받아 사용자 식별자 및 사용자 쿠키 식별자 중 어느 하나와 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성 및 관리하고, 사용자 프로필 속성 설정 정보를 전달받아 사용자 프로필 속성 테이블을 생성 및 관리하며, 수집된 사용자 행동 로그를 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 생성 후 서비스 제공 사이트에 전달하는 사용자 프로필 제공 서버;
    식별자 동기화를 하기 위해 사용자 프로필 제공 서버에 사용자 쿠키를 전달하고, 사용자 프로필 정보를 제공받기 위해 사용자 프로필 속성 설정 정보 및 사용자 행동 로그를 전달하며, 사용자 단말이 접속하는 경우 사용자 프로필 제공 서버로부터 수신된 사용자 프로필 정보 기반의 맞춤 서비스를 제공하는 서비스 제공 사이트;
    서비스 제공 사이트에 접속하여 서비스 제공 사이트로부터 맞춤 서비스를 제공받는 사용자 단말;
    을 포함하는 사용자 프로필 제공 시스템
  2. 제1항에 있어서,
    상기 사용자 프로필 제공 서버는 개인정보 활용 비동의자 또는 비식별자에게 사용자 프로필 정보를 제공할 수 있는 것을 특징으로 하는 사용자 프로필 제공 시스템
  3. 제1항에 있어서,
    상기 사용자 프로필 제공 서버는 서비스 제공 사이트의 사용자 행동 로그 수집 API로부터 사용자 행동 로그를 수집하는 것을 특징으로 하는 사용자 프로필 제공 시스템
  4. 제1항에 있어서,
    상기 사용자 프로필 제공 서버는 사용자 식별자 기반의 사용자 프로필 정보를 서비스 제공 사이트에 제공하는 것을 특징으로 하는 사용자 프로필 제공 시스템
  5. 서비스 제공 사이트로부터 사용자 프로필 제공 서비스 가입 요청 정보, 사용자 쿠키, 사용자 프로필 속성 설정 정보 및 사용자 프로필 요청 정보를 입력 받고, 사용자 쿠키 식별자, 서버 쿠키 식별자 및 사용자 식별자 기반의 사용자 프로필 정보를 서비스 제공 사이트에 전달하는 송수신부;
    사용자 프로필 제공 서비스 가입 요청과 관련된 가입 요청 관련 정보, 상기 사용자 쿠키, 상기 사용자 식별자 및 상기 사용자 쿠키 식별자 중 어느 하나와 상기 서버 쿠키 식별자 기반으로 생성된 식별자 매칭 테이블, 상기 사용자 프로필 속성 설정과 관련된 설정 관련 정보, 사용자 행동 로그, 식별자 매칭 테이블 및 사용자 프로필 속성 테이블 기반으로 사용자 행동 로그가 분석되어 생성된 사용자 프로필 정보 및 사용자 프로필 정보 요청과 관련된 요청 관련 정보가 저장된 저장부;
    상기 사용자 식별자 및 상기 사용자 쿠키 식별자 중 어느 하나와 상기 서버 쿠키 식별자 기반의 식별자 매칭 테이블을 생성 및 관리하고, 사용자 프로필 속성 설정 정보를 기반으로 사용자 프로필 속성 테이블을 생성 및 관리하며, 상기 식별자 매칭 테이블 및 상기 사용자 프로필 속성 테이블 기반으로 상기 사용자 행동 로그를 분석하여 사용자 프로필 정보를 생성하는 제어부;
    를 포함하는 사용자 프로필 제공 서버
  6. 제5항에 있어서,
    상기 사용자 프로필 정보는 개인정보 활용 비동의자 또는 비식별자에게 제공될 수 있는 것을 특징으로 하는 사용자 프로필 제공 서버
  7. 제5항에 있어서,
    상기 사용자 행동 로그는 서비스 제공 사이트의 사용자 행동 로그 수집 API로부터 수집되는 것을 특징으로 하는 사용자 프로필 제공 서버
  8. 제5항에 있어서,
    상기 사용자 프로필 속성 설정과 관련된 설정 관련 정보는 서비스 제공 사이트로부터 선택되는 것을 특징으로 하는 사용자 프로필 제공 서버
  9. 제5항에 있어서,
    상기 사용자 프로필 정보는 사용자 식별자를 기반으로 서비스 제공 사이트에 제공되는 것을 특징으로 하는 사용자 프로필 제공 서버
  10. 사용자 프로필 제공 서버가 사용자 프로필을 제공하는 방법에 있어서,
    (a) 서비스 제공 사이트로부터 사용자 프로필 제공 서비스 가입 요청을 수신하는 단계;
    (b) 서비스 제공 사이트와 서버간 식별자 동기화를 위해 redirection URL을 서비스 제공 사이트로 전달하는 단계;
    (c) 사용자 쿠키를 서비스 제공 사이트로부터 전달받아 저장하고, 사용자 쿠키 식별자와 서버 쿠키 식별자를 서비스 제공 사이트에 전달하는 단계;
    (d) 상기 사용자 식별자 및 상기 사용자 쿠키 식별자 중 어느 하나와 상기 서버 쿠키 식별자 기반으로 식별자 매칭 테이블을 생성 및 관리하는 단계;
    (e) 사용자 프로필 속성 설정 정보를 서비스 제공 사이트로부터 수신하는 단계;
    (f) 상기 사용자 프로필 속성 설정 정보를 기반으로 사용자 프로필 속성 테이블을 생성 및 관리하는 단계;
    (g) 수집된 사용자 행동 로그를 상기 식별자 매칭 테이블 및 상기 사용자 프로필 속성 테이블 기반으로 분석하여 사용자 프로필 정보를 생성 및 관리하는 단계;
    (h) 상기 사용자 프로필 정보를 상기 서비스 제공 사이트에 전달하는 단계;
    를 포함하는 사용자 프로필 제공 방법
  11. 제10항에 있어서,
    상기 사용자 프로필 정보는 개인정보 활용 비동의자 또는 비식별자에게 제공될 수 있는 것을 특징으로 하는 사용자 프로필 제공 방법
  12. 제10항에 있어서,
    상기 사용자 행동 로그는 서비스 제공 사이트의 사용자 행동 로그 수집 API로부터 수집되는 것을 특징으로 하는 사용자 프로필 제공 방법
  13. 제10항에 있어서,
    상기 사용자 프로필 속성 설정 정보는 서비스 제공 사이트로부터 선택되는 것을 특징으로 하는 사용자 프로필 제공 방법
  14. 제10항에 있어서,
    상기 사용자 프로필 정보는 사용자 식별자를 기반으로 서비스 제공 사이트에 제공되는 것을 특징으로 하는 사용자 프로필 제공 방법
KR1020160143564A 2016-10-31 사용자 프로필 제공 시스템 및 방법 KR102720626B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160143564A KR102720626B1 (ko) 2016-10-31 사용자 프로필 제공 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160143564A KR102720626B1 (ko) 2016-10-31 사용자 프로필 제공 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20180047467A true KR20180047467A (ko) 2018-05-10
KR102720626B1 KR102720626B1 (ko) 2024-10-23

Family

ID=

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200410115A1 (en) * 2019-06-25 2020-12-31 Vmware, Inc. Determination of a minimal set of privileges to execute a workflow in a virtualized computing environment
KR20210032076A (ko) * 2019-09-16 2021-03-24 류종현 마케터의 마케팅 캠페인에 대한 성과 측정 시스템 및 방법
KR20210105105A (ko) * 2020-02-18 2021-08-26 이흥연 분산 대기 시스템 및 상기 분산 대기 시스템을 이용하는 분산 대기 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200410115A1 (en) * 2019-06-25 2020-12-31 Vmware, Inc. Determination of a minimal set of privileges to execute a workflow in a virtualized computing environment
US11822676B2 (en) * 2019-06-25 2023-11-21 Vmware, Inc. Determination of a minimal set of privileges to execute a workflow in a virtualized computing environment
KR20210032076A (ko) * 2019-09-16 2021-03-24 류종현 마케터의 마케팅 캠페인에 대한 성과 측정 시스템 및 방법
WO2021054530A1 (ko) * 2019-09-16 2021-03-25 류종현 마케터의 마케팅 캠페인에 대한 성과 측정 시스템 및 방법
KR20210105105A (ko) * 2020-02-18 2021-08-26 이흥연 분산 대기 시스템 및 상기 분산 대기 시스템을 이용하는 분산 대기 방법

Similar Documents

Publication Publication Date Title
US10776447B2 (en) Digital communications platform for webpage overlay
US11372935B2 (en) Automatically generating a website specific to an industry
CN106446228A (zh) 一种web页面数据的采集分析方法及装置
KR101514738B1 (ko) 애플리케이션-생성 소셜 컨텐츠 기반 광고
US20160253700A1 (en) System and method for automated advocate marketing with digital rights registration
US10037538B2 (en) Selection and presentation of news stories identifying external content to social networking system users
KR101168705B1 (ko) 이동통신 단말기와 아이피 기반 정보 단말기를 이용한 맞춤, 지능형 심볼, 아이콘 인터넷 정보 검색시스템
CN110771126B (zh) 用于用户设备事件的匹配与归因的系统
US10097654B2 (en) Identifying users of client devices for tracking user interactions with content distributed by content provider systems
WO2018079939A1 (ko) 카테고리 추천을 이용한 비로그인 사용자 메인 상품 추천 서버 및 방법
US20060265489A1 (en) Disaster management using an enhanced syndication platform
WO2017124692A1 (zh) 查找表单页面和目标页面转化关系的方法和装置
CN102203765A (zh) 在没有明确地提供的装置或用户识别信息的情况下唯一地识别网络分布式装置
US9712520B1 (en) User authentication using client-side browse history
KR101978301B1 (ko) 추천 아이템 제공을 위한 장치
US9684918B2 (en) System and method for candidate domain name generation
KR20140111265A (ko) 웹 페이지들을 제공하기 위한 방법 및 장치
US20200394194A1 (en) Multi-vertical entity-based search system
US10922624B2 (en) Identifying users of shared devices based on user interactions and identity graph
CN107193834A (zh) 用于浏览页面的计算设备、装置及方法
JP6683681B2 (ja) コンバージョンに対する様々なユーザ・インタラクションの貢献度の決定
US20110055914A1 (en) Personal information leakage preventive device and method
CN102684925B (zh) 互联网访问来源信息的获取方法和装置
KR101678659B1 (ko) 추천 아이템 제공 방법, 이를 위한 프로그램을 기록한 기록 매체 및 장치
CN113806401B (zh) 数据流处理

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right