
지속적인 다이어리 작성 독려와 동기 부여를 위한 개인 맞춤형 온라인 다이어리 플랫폼의 구현과 실증
Copyright ⓒ 2025 The Digital Contents Society
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-CommercialLicense(http://creativecommons.org/licenses/by-nc/3.0/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

초록
최근 온라인 다이어리 서비스를 이용하여 다이어리를 작성하는 사람들이 증가하고 있다. 하지만 꾸준히 기록을 작성하는 것이 익숙지 않은 사용자에게는 뚜렷한 동기나 자극이 없이 지속해서 다이어리를 작성하는 데 많은 어려움을 겪는다. 그럼에도, 기존의 온라인 다이어리 서비스는 사용자에게 효과적으로 다이어리 작성을 독려하는 기능을 충분히 제공하지 않는 문제점이 있다. 이를 해결하기 위해 본 연구에서는 사용자로 하여금 흥미와 동기를 유발하여 지속적이면서도 능동적으로 다이어리 작성을 독려할 수 있는 개인 맞춤형 온라인 다이어리 작성 플랫폼인 ePisode를 개발하였다. 기존의 온라인 다이어리 작성 서비스와는 달리, ePisode 플랫폼은 효과적인 다이어리 작성 독려를 위해 사용자의 생활 패턴을 기반으로 선호 장소를 추천하고, 이를 토대로 다이어리를 작성할 수 있는 기능과 사용자의 활동 패턴을 시각화하는 리포트 서비스 등을 제공한다. 이를 통해, 사용자는 다이어리 작성에 흥미를 갖고 능동적으로 다이어리를 작성하는 활동을 이어갈 수 있다.
Abstract
A growing number of people are turning to online platforms for dairy writing. However, individuals who struggle with maintaining consistent records still find it difficult to write diaries regularly. Traditional online diary services do not effectively encourage users to develop a continuous writing habit. To address this limitation, we developed ePisode, a new personalized online diary service platform designed to encourage users to write diaries consistently and actively. Unlike existing online diary writing services, ePisode offers various features that encourage the diary writing experience, such as recommending preferred locations based on the user's lifestyle patterns, generating diary entries accordingly, and providing reporting services that visualize the user's activity patterns. As a result, users are more engaged and motivated to participate actively in the diary writing experience using ePisode.
Keywords:
Web Platform, Personalized Services, Recommendation, Visualization, Online diary키워드:
웹 플랫폼, 개인화 서비스, 추천, 시각화, 온라인 다이어리Ⅰ. 서 론
2021년 네이버의 ‘오늘일기’ 챌린지(Challenge) 대회를 시작으로, 온라인 다이어리 서비스가 광범위하게 활용되고 있다[1]. 그러나 기존의 온라인 다이어리 서비스는 지속적인 다이어리 작성을 유도하기 위해 챌린지 대회와 같은 상호작용을 요구하거나 이를 인증하는 명확한 목적이 있어야 한다는 제한점이 있다. 또한, 다이어리 작성은 개인의 성향에 큰 영향을 받는 활동으로, 지속해서 다이어리를 작성하는 것을 어려워하는 사람들이 많다. 이에 따라, 사용자의 편의성을 강화함과 동시에 특정 목적이 없이도 꾸준히 다이어리를 작성하도록 충분한 동기와 흥미를 부여할 수 있는 개인 맞춤형 온라인 다이어리 서비스에 대한 연구와 개발이 필요하다[2],[3].
현재 국내외에서 다이어리 작성을 위해 가장 많이 사용하는 온라인 서비스로 네이버 블로그[4]와 Journey[5]가 있다. 네이버 블로그(이하 블로그)는 국내에서 개발된 대표적인 온라인 기반의 일상 공유 플랫폼으로, 사용자가 자신의 일상을 자유롭게 기록하고 공유할 수 있는 범용적인 웹 플랫폼이다. Journey는 지도를 활용하는 웹 기반 온라인 다이어리 서비스로, 전 세계적으로 많은 이용자를 보유한 다이어리 작성과 관리에 특화된 플랫폼이다. 하지만 블로그의 경우 주 또는 월 단위로 작성하는 경우가 많으며, 사용자가 다양한 일화를 직접 분류하고 일괄적으로 정리해야 하는 번거로움이 있다. 또한, 다이어리를 작성할수록 게시물(블로그 포스트)의 수가 증가함에 따라 이를 체계적으로 관리하기 어려운 문제점 또한 존재한다. Journey의 경우 다이어리 작성과 관리에 특화된 서비스로서 다이어리 작성 기능은 충실하게 제공하지만, 별도의 개인화 추천 기능이 없어 사용자에게 최적화된 경험을 제공하지 못한다. 예를 들면, 사용자가 특정 장소에서 다이어리를 작성하고 싶거나 해당 장소와 관련된 내용을 기록하고자 할 때 사용자가 지도에서 해당 장소를 직접 찾아야 하는 불편함이 존재한다.
앞서 언급한 기존의 다이어리 서비스들은 공통적으로 사용자에게 최적화된 개인 맞춤형 기능이 부족하고, 여러 기록을 효과적으로 관리하기 어려운 문제점이 존재한다. 이러한 한계점을 극복하기 위해서, 본 연구에서는 사용자로 하여금 능동적으로 다이어리를 작성할 수 있도록 효과적으로 다이어리 작성 활동을 독려하는 기능을 갖춘 온라인 개인화 다이어리 서비스 플랫폼인 “ePisode”를 개발하였다[6]. 기존의 블로그나 온라인 다이어리 서비스와는 달리 ePisode 플랫폼은 사용자가 작성한 다이어리 내용을 토대로 사용자의 관심사를 분석하여 사용자가 선호할 가능성이 높은 장소를 자동으로 추천하는 “장소 추천 기능”과 사용자의 이동 동선과 취향 정보를 시각적으로 확인할 수 있는 “실시간 리포팅 기능” 등을 제공한다. 이러한 기능들은 사용자가 단순히 기록을 작성하는 것에 머무르지 않고, 지속적으로 흥미와 동기를 느끼며 능동적으로 다이어리를 작성할 수 있도록 돕는다.
본 연구에서 개발한 ePisode 플랫폼의 특징은 크게 세 가지로 요약된다. 첫째, 지도 기반의 인터페이스를 통해 사용자가 방문한 장소를 직관적으로 선택하고, 해당 장소에 관한 내용을 다이어리로 작성할 수 있다. 이때, 작성된 기록은 지도상에 아이콘 형태로 시각화되며, 이를 통해 사용자는 자신의 방문 이력과 이동 패턴을 시각적으로 확인할 수 있다. 둘째, 기존 온라인 다이어리 플랫폼 서비스의 개인화 기능 부족 문제를 보완하기 위해, 사용자가 작성한 다이어리를 토대로 사용자가 흥미를 느낄 만한 새로운 장소를 추천하는 기능을 제공한다. 이 추천 기능은 사용자가 추천받은 장소를 방문하고, 해당 장소에 대한 새로운 다이어리를 작성하도록 유도함으로써 보다 적극적으로 다이어리를 작성할 수 있도록 한다. 또한, 사용자는 추천받은 장소에 대한 피드백(Feedback)을 제공할 수 있으며, 이를 통해 추천의 정확도를 더욱 향상시킬 수 있다. 셋째, 데이터 분석 및 시각화 기법에 기반한 월별 생활 패턴 분석 레포트(Life Pattern Analysis Report) 기능을 제공함으로써 사용자는 자신의 활동 영역, 이동 패턴, 특정 장소의 방문 빈도, 선호 장소 등을 직관적으로 파악할 수 있다. 이러한 시각적 데이터는 사용자로 하여금 자신의 생활 패턴을 올바르게 이해하고, 이를 토대로 지속적으로 다이어리를 작성하기 위한 흥미와 동기를 유발하는 데 효과적이다.
본 논문은 총 5장으로 구성되어 있다. 제2장에서는 기존 온라인 다이어리 플랫폼 서비스의 사례와 한계점을 설명한다. 제3장에서는 본 연구에서 구현한 온라인 다이어리 서비스 플랫폼인 ePisode 플랫폼의 주요 기능을 상세히 설명한다. 제4장에서는 ePisode의 설계와 구현 방법을 설명하고, 실제 구현 결과를 구체적으로 실증한다. 마지막으로 제5장에서는 본 논문의 내용을 요약하고, 본 연구 결과의 향후 발전 방향과 의의에 대해 논의하면서 본 논문을 마무리한다.
Ⅱ. 관련 연구
2-1 기존 온라인 다이어리 플랫폼
앞서 언급한 바와 같이, 온라인 다이어리 작성을 위해 널리 사용되는 대표적인 서비스로 네이버 블로그[4]와 Journey[5]가 있다. 네이버 블로그는 여행, 요리, 독서 등 일상적인 활동을 기록하는 데 주로 사용되는 대표적인 웹 플랫폼으로, 다양한 분야에서 폭넓게 활용되고 있다. 그림 1은 네이버 블로그 서비스의 화면을 보여준다. 그림 1-(a)와 같이 블로그 사용자들은 포스팅(Posting)을 통해 직접 사진을 업로드하고, 해당 사진에 대한 자세한 설명을 기록으로 남길 수 있다. 또한, 네이버에서 제공하는 “네이버 지도[7]”와 연동하여 이전에 방문했던 장소의 주소를 함께 기록할 수 있어 자신의 일상을 온라인상에 기록하고 보존하며 필요시 다른 사용자들과 해당 기록을 공유할 수 있다. 한편, 그림 1-(b)와 같이 블로그는 지식 또는 정보를 공유하거나 기업, 소상공인 또는 개인의 마케팅과 홍보 목적으로도 활용된다. 이처럼 블로그는 사용자의 일상 기록뿐만 아니라, 마케팅과 홍보, 정보 전달과 같은 다양한 목적을 아우르는 범용적인 도구로써 널리 활용되고 있다[8],[9].

Usage examples of the NAVER blog service*This figure contains Korean sentences and words because this example service was run in Korea.
한편, Journey는 전 세계적으로 널리 사용되는 온라인 다이어리 플랫폼으로, 사용자가 다이어리를 효과적으로 작성하고 관리할 수 있는 기능을 제공한다. 그림 2는 Journey 서비스의 실제 사용 화면을 보여준다. 그림 2-(a)와 같이 Journey에서 사용자들은 다이어리를 작성할 때 위치를 불러오거나 주소 검색을 통해 지도 위에 자신이 방문했던 장소를 표시할 수 있다. 또한, 그림 2-(b)와 같이 사용자가 지도에서 특성 장소를 지정하면 해당 장소와 관련한 기록을 작성할 수 있다. 이와 함께, 작성된 기록의 웹 링크를 생성하고 이를 다른 사람들과 공유할 수 있는 기능 등을 제공한다.
2-2 기존 온라인 다이어리 플랫폼의 문제점
앞서 설명한 두 서비스의 경우 공통적으로 사용자가 꾸준히 다이어리를 작성할 수 있도록 동기와 흥미를 유발하는 기능이 부족하다는 문제점을 가지고 있다. 기존 다이어리 서비스의 문제점을 분석하면 다음과 같다.
첫째, 다이어리 작성이 개인의 성향에 크게 영향을 받는 활동임에도 불구하고, 기존의 서비스들은 사용자 개개인의 생활 패턴과 흥미 또는 관심 분야를 고려하지 않는 문제점이 있다. 이에 따라, 기존 서비스의 사용자들은 다이어리 작성 시 “기록”하는 행동 자체에만 집중하게 되고 그 결과 다이어리를 작성하는 활동 자체를 부담으로 느끼게 된다. 둘째, 사용자가 지속해서 다이어리를 작성하도록 유도하는 기능이 부족하다. 예를 들어, 네이버 블로그의 경우 챌린지와 같은 방식으로 사용자의 참여를 끌어내기도 했지만, 챌린지 기간이 종료된 후에는 다이어리를 꾸준히 작성하는 경우가 드물다. Journey 역시 사용자 개인의 취향에 특화된 맞춤형 서비스가 부족하여 사용자로 하여금 지속적으로 다이어리를 작성하는 활동을 효과적으로 독려하지 못한다. 특히, 꾸준히 작성해야 하는 다이어리의 특성상 규칙적으로 기록을 작성하는 것에 어려움을 느끼는 사용자들의 경우 지속해서 다이어리를 작성하는 것에 흥미를 느끼지 못하고, 결과적으로 다이어리를 작성하는 활동을 지속하지 못하게 된다는 점을 고려한다면, 다이어리 작성을 효과적으로 독려하는 것이 무엇보다도 중요하다.
그럼에도 불구하고, 기존 다이어리 작성 서비스의 가장 큰 문제점은 사용자로 하여금 능동적으로 다이어리를 꾸준히 작성할 수 있도록 지속적인 독려와 흥미를 유발하는 기능이 부족한 점이라 할 수 있다. 이에 따라, 본 연구에서는 위와 같은 기존 서비스의 문제점을 보완한 새로운 온라인 개인 맞춤형 다이어리 작성 플랫폼을 개발하였다. 이에 대한 상세한 설명과 구현 결과는 다음 장에서 자세히 다루어진다.
Ⅲ. ePisode: 개인 맞춤형 온라인 다이어리 플랫폼
본 연구에서 개발한 온라인 개인화 다이어리 플랫폼인 ePisode는 다음과 같이 다섯 가지의 기능으로 구성된다.
- • 회원 가입 및 인증 기능: 사용자의 기본 정보를 등록하고 관리하는 기능을 제공한다.
- • 다이어리 작성 기능: 실제 사용자가 다이어리를 작성하는 ePisode 플랫폼의 핵심 기능으로, 사용자가 일상적인 자신의 이야기를 자유롭게 기록할 수 있도록 사용의 편의성과 심미성이 강화된 편집기를 제공한다.
- • 장소 즐겨찾기 기능: 사용자가 방문한 장소나 관심 있는 장소를 저장하고, 이를 체계적으로 관리할 수 있는 기능을 제공한다.
- • 장소 추천 기능: 사용자의 선호도와 방문 이력을 분석하여 흥미를 가질 가능성이 높은 새로운 장소들을 추천한다. 이 기능을 통해서 사용자는 다이어리를 작성하는 데 강한 흥미와 동기를 부여받을 수 있다.
- • 생활 패턴 분석 기능: 사용자가 작성한 다이어리와 즐겨찾기로 등록한 장소, 실제 방문한 장소 등의 활동 데이터를 종합적으로 분석하고 그 결과를 장소 유형별 방문 비율로 계산하여 그래프로 시각화한 결과를 제공한다. 이 분석 결과는 보고서 형태로도 사용자에게 제공되며, 이를 통해 사용자는 자신의 생활 패턴과 활동 내역을 실시간으로 확인 할 수 있다.
ePisode 플랫폼에서 제공되는 모든 기능의 구성과 제어 흐름을 다이어그램으로 나타내면 그림 3과 같다. 사용자는 최초 회원 가입을 통해 본 플랫폼을 이용할 수 있는 계정을 생성하고 인증 과정을 거쳐 실제 다이어리 작성과 관리를 위한 인터페이스에 접근할 수 있다. 이후, 사용자는 지도 기반 인터페이스를 통해 원하는 장소를 검색하거나 직접 선택할 수 있으며, 자신이 선택한 장소를 중심으로 다이어리를 작성하고 필요시 특정 장소를 즐겨찾기로 등록하여 데이터베이스(Database)에 저장할 수 있다. 이러한 일련의 활동 데이터는 사용자의 생활 패턴을 분석하는 데 활용되며, 이를 기반으로 사용자 취향에 적합한 새로운 장소들을 추천한다. 또한 사용자는 자신의 활동 패턴과 방문 이력 분석 결과를 실시간으로 모니터링할 수 있으며, 필요시 해당 분석 결과를 스프레드시트(Spreadsheet) 형식의 파일로 재가공하여 다운로드함으로써 다양한 용도로 활용할 수 있다. ePisode 플랫폼의 주요 기능별 특징은 다음과 같다.
3-1 회원 가입 및 인증 기능
회원 가입 및 인증 기능은 사용자가 ePisode 플랫폼에 가입하고 안전하게 접근하여 서비스를 이용할 수 있도록 보안성이 강화된 일련의 인증 절차를 제공한다. 그림 4는 ePisode 플랫폼에서 사용자 인증 및 암호화를 수행하는 과정을 다이어그램으로 표현한 것이다. 회원 가입 과정에서 사용자는 기본적인 개인 정보와 선호하는 장소 카테고리 정보를 등록한 후 계정을 생성한다. 이 정보는 추후 개인화 장소 추천 서비스를 위한 기초 데이터로 활용된다. 계정을 생성한 사용자는 로그인을 통해 시스템 접근을 위한 인증을 수행할 수 있으며, 로그인 후 다이어리 작성과 장소 즐겨찾기, 활동 패턴 분석 등 ePisode의 모든 기능을 이용할 수 있다. 한편, 회원 가입과 인증 과정에서 사용자의 비밀번호는 BCrypt 단방향 해시 알고리즘[10]을 사용하여 암호화된 상태로 데이터베이스에 저장된다. BCrypt 알고리즘은 각 해시값에 고유의 Salt 값을 추가하여 동일한 비밀번호라 할지라도 서로 다른 해시값을 생성한다[11]. 이를 통해, 전수 조사 공격(Brute Force Attack)을 포함한 다양한 암호 시스템 공격 시도를 효과적으로 거부함으로써, 사생활 보호가 특히 중요한 본 플랫폼의 보안성을 더욱 강화하였다.
3-2 다이어리 작성 기능
다이어리 작성 기능은 사용자가 지도 기반 인터페이스를 통해 장소를 선택하고, 이에 대한 일상과 경험을 자유롭게 기록할 수 있는 ePisode 플랫폼의 핵심 기능이다. 그림 5에 도시한 바와 같이, 사용자는 지도상에서 특정 장소에 대한 좌표를 직접 선택하거나 해당 장소에 대한 검색을 수행하여 다이어리를 작성할 위치를 지정할 수 있다. 이후, 해당 장소와 관련한 자신의 경험을 다이어리로 작성할 수 있으며, 작성된 다이어리는 위치 정보와 함께 데이터베이스에 저장된다. 이는 사용자의 생활 패턴 분석을 위한 기반 데이터로 활용된다.
한편, 다이어리 작성 기능에서는 특히 사용자의 편의성을 강화하고 나아가 다이어리 작성 활동에 대한 흥미를 유도하기 위해 사용자 친화적인 UI/UX를 설계하여 적용하였다. 첫째, 직관적인 지도 인터페이스를 적용하여 사용자가 쉽게 위치를 선택할 수 있도록 하였다. 특히, 검색하는 장소의 이름이 지도상에 나타나지 않는 경우, 사용자가 직접 해당 장소의 위치(지번 정보)를 클릭하여 지정하고, 해당 장소의 이름과 다이어리를 함께 등록할 수 있도록 기능을 구현하였다. 둘째, 다이어리 작성 시 제목과 본문 내용, 사진 첨부, 방문 날짜, 평점을 사용자가 선택적으로 입력하여 유연하게 다이어리를 작성할 수 있도록 인터페이스를 구성하였다. 즉, 주어진 상황과 선호에 따라 사용자가 자유롭게 콘텐츠를 선택적으로 구성할 수 있도록 배려하여 필수 입력 항목으로 인하여 사용자로 하여금 다이어리 작성에 대한 흥미가 저하되지 않도록 설계하였다. 셋째, 작성된 다이어리를 공간적 맥락에서 직관적으로 확인할 수 있도록 “위치 기반 다이어리 조회 기능”을 구현하였다. 사용자가 특정 장소에 대해서 작성한 다이어리는 지도상에 마커(Marker)로 표시되며, 이를 통해 사용자는 자신의 기록을 공간적 맥락에서 시각적으로 확인할 수 있다. 특히, 이 기능은 사용자의 활동 동선과 생활 패턴을 체계적으로 분석하는 데 유용한 정보를 제공한다.
3-3 장소 즐겨찾기 기능
장소 즐겨찾기 기능은 사용자가 자주 방문하거나 특별한 의미가 있는 장소를 효율적으로 관리할 수 있도록 설계된 기능이다. 그림 6에 도시한 바와 같이, 사용자는 지도상에서 마음에 드는 특정 장소를 선택한 후 해당 장소를 즐겨찾기로 등록할 수 있으며, 등록된 모든 장소들은 사용자의 즐겨찾기 목록에서 확인할 수 있다. 또한, 사용자는 즐겨찾기에 등록된 장소를 언제든지 삭제하거나 수정할 수 있어 관리의 유연성과 편의성을 제공한다.
3-4 선호 장소 추천 기능
본 연구에서 제안하는 ePisode 플랫폼은 “선호 장소 추천 기능”을 통해 사용자가 방문할 장소를 결정하는 데 도움을 제공한다. 그림 7과 같이 ePisode에서는 사용자의 현재 위치 정보와 사용자의 취향, 생활 패턴을 분석하여 사용자가 선호할 만한 장소들을 추천하여 리스트 형태로 반환한다.
이때, 사용자별로 성격 유형과 취향, 선호 장소 종류를 벡터로 표현하기 위해 User Feature Vector (이하, Feature Vector)를 구성한다. 사용자별 Feature Vector는 사용자의 성향을 나타내는 MBTI 정보와 선호 장소의 카테고리 정보로 구성된다. MBTI 정보는 8가지의 성격 유형 지표(E/I, S/N, F/T, J/P)에 따라 0 또는 1의 이진값으로 설정된다. 한편, 선호 장소 카테고리는 0부터 1 사이의 실수로 표현되며, 사용자 자신이 선호 장소로 지정한 카테고리의 경우 0.6, 이외의 장소는 0.3으로 초기값이 설정된다. 이때, 선호 장소 카테고리의 값은 사용자의 피드백에 따라 갱신될 수 있도록 구현하였다. 이를 통해, 사용자별로 성향(MBTI) 및 선호 장소 카테고리 정보로 구성된 총 13차원 크기의 Feature Vector가 생성된다. 표 1은 MBTI가 “ESTJ”이고 “영화관”과 “카페”를 선호 장소 카테고리로 등록한 사용자에 대하여 생성되는 초기 Feature Vector의 예제를 나타낸 것이다.
한편, 사용자의 선호 장소가 추후 변동될 수 있음을 고려하여 사용자의 피드백에 따라 Feature Vector를 갱신하는 기능을 구현하였다. 표 2는 사용자의 피드백에 따라 Feature Vector를 갱신하는 방법을 의사코드로 기술한 것이다. 이때, 장소 추천의 다양성을 유지하기 위해서는 사용자로부터 부정적 피드백을 받은 장소라 할 지라도 장소 추천에서 완전히 제외되는 것을 방지해야 한다. 이를 위해, 사용자로부터 부정적인 피드백을 받은 장소에 대해서는 긍정적 피드백을 장소보다 낮은 가중치(≠ 0)를 부여하는 방법으로 Feature Vector를 갱신할 수 있도록 구현하였다.
이러한 과정을 통해서 구축된 Feature Vector는 사용자가 선호할 만한 장소들의 리스트를 추천하는 데 필요한 유사 사용자들을 추출하기 위한 핵심 요소로써 활용된다. 또한, 서비스 초기 발생할 수 있는 콜드 스타트 문제(Cold-Start Problem)[12],[13]를 해결하기 위해 본 알고리즘에서는 하이브리드 필터링(Hybrid Filtering) 기법을 도입하였다. 하이브리드 필터링은 협업 필터링과 카테고리 기반 필터링을 상호 보완적으로 결합함으로써 구현된다. 이때, 두 사용자 간의 유사도를 분석하기 위해 피어슨 상관계수(Pearson Correlation Coefficient)를 활용하였다[14]. 수식 (1)은 Feature Vector 와 의 유사도를 계산하기 위한 피어슨 상관계수의 계산 공식을 표현한 것이다. 수식 (1)에서 xi는 Feature Vector 내 i번째 성분을 의미하며, 는 사용자의 Feature Vector 내 성분들의 평균값을 나타낸다.
(1) |
상기 수식을 이용하면, 두 사용자의 Feature Vector 와 사이의 유사도를 –1과 1 사이의 수치로 정량화할 수 있다. 두 벡터 와 가 서로 유사한 성향을 보일수록 피어슨 상관계수는 1에 가까운 양의 상관 값을 가지며, 두 벡터가 서로 반대되는 성향을 보이는 경우 –1에 가까운 음의 상관 관계를 갖는다. 한편, 두 벡터 간의 어떠한 유사성도 발견되지 않는다면 0의 상관계수를 갖는다. 이를 이용하여 현재 사용자와 다른 사용자들 간의 유사도를 계산하고, 이를 토대로 성향이 비슷하거나 반대인 사용자들을 추출한다. 그다음, 이들이 방문한 장소 중 현재 사용자가 위치한 지역 근방의 장소들을 추출하여 해당 장소들의 평균 평점을 기준으로 정렬한다. 마지막으로, 정렬된 결과 리스트에서 상위 10개의 장소를 추출하여 사용자에게 리스트 형태로 반환한다.
선호 장소 추천 알고리즘의 전체 수행 과정을 의사코드로 기술하면 표 3 같다. 선호 장소 추천 알고리즘은 크게 “협업 필터링” 기능과 “카테고리 기반 필터링” 기능 그리고 각 기능에서 도출된 두 추천 리스트를 결합하여 최종 추천 리스트를 제공하는 “하이브리드 필터링” 기능으로 구성된다.
먼저, “협업 필터링 기능”에서는 사용자의 Feature Vector를 참조하여 현재 사용자와 유사하거나 반대되는 성향을 보이는 사용자들을 추출한다. 이후, 유사도가 높은 상위 10명의 사용자에 대하여 이들이 방문한 장소들을 추출하고, 이 중에서 현재 사용자가 위치한 지역과 인접한 장소들을 선별하여 평점을 기준으로 내림차순으로 정렬한다. 마지막으로, 정렬된 결과에서 상위 10개의 장소를 추출함으로써 추천 장소 리스트를 생성한다.
한편, “카테고리 기반 필터링 기능”에서는 Feature Vector에 포함된 사용자의 선호 장소 정보를 활용하여, 영화관, 카페, 문화시설, 캠핑장, 도서관 등의 장소 카테고리 중에서 하나를 선택하여 사용자에게 해당 카테고리에 해당하는 장소들의 리스트를 반환한다. 이때, 장소 검색을 위해 “Kakao 키워드 검색 API”를 사용하였다. 또한, 카테고리별로 추천되는 장소의 수를 결정하기 위해 Feature Vector에 저장된 장소 선호도의 합계를 계산한다. 이후 각 카테고리에 해당하는 장소를 추천 개수에 맞게 추출하여 두 번째 추천 장소 리스트를 생성한다.
마지막으로, “하이브리드 추천 기능”에서는 협업 필터링과 카테고리 기반 필터링 기능으로부터 생성된 추천 장소 리스트들을 상호 보완적으로 결합한다. 이때, 서비스 초기 단계에서는 누적된 사용자들의 데이터가 부족하므로 카테고리 기반 필터링의 가중치를 높게 설정하고, 반대로 협업 필터링 가중치를 낮게 설정한다. 이후 사용자들의 피드백 데이터가 누적되고 유사 사용자들로부터 충분한 장소 데이터가 확보되었을 때, 카테고리 기반 필터링의 가중치를 점진적으로 감소시킴과 동시에 협업 필터링의 가중치를 증가시킨다. 표 3의 선호 장소 추천 알고리즘에서 변수 adjustment는 이러한 가중치를 조정하기 위한 제어 변수로, 협업 필터링 기반의 추천 장소 리스트가 충분하지 않은 경우 협업 필터링 가중치를 최대 0.3으로 설정하여 협업 필터링의 결과가 전체 추천 리스트에 큰 영향을 미치지 않도록 설정한다. 반면에 협업 필터링을 통해서 추천된 장소 리스트가 충분한 경우에는 변수 feedback_count와 파라메터 alpha의 설정 값을 그대로 반영하여 선호 장소 추천 리스트를 생성한다. 마지막으로, 사용자의 피드백이 누적될 때마다 “카테고리 기반 필터링” 결과의 가중치인 category_weight를 0.01 * feedback_count만큼 감소시키고, 반대로 “협업 필터링” 결과의 가중치인 collab_weight를 증가시킴으로써 두 추천 결과 리스트를 적응적으로 결합한다. 이렇게 결합된 추천 장소 리스트인 recommended_places가 최종적으로 사용자에게 반환된다.
3-5 생활 패턴 분석 기능
생활 패턴 분석 기능은 사용자의 월간 활동 데이터를 수집하고 분석하여, 사용자가 자신의 활동 범위와 선호 장소를 손쉽게 파악할 수 있도록 지원하는 기능이다. 그림 8은 ePisode 플랫폼에 적용된 생활 패턴 분석 기능의 구성과 제어 흐름을 다이어그램으로 표현한 것이다. 이 기능을 통해서 사용자는 자신의 월간 방문 장소의 카테고리 비율과 주요 활동 장소, 선호 및 비선호 장소에 대한 정보를 확인할 수 있다. 또한, 해당 정보들을 스프레드시트 파일로 가공하여 저장함으로써 다양한 용도로 활용할 수 있다.
한편, 생활 패턴 분석 기능에서는 사용자의 방문 정보를 그래프 형태로 시각화하는 리포팅 기능을 제공한다. 이를 위해, 한 달 동안 방문한 장소들의 카테고리별 방문 횟수를 계산한 후, 이를 토대로 방문 장소 카테고리 비율을 파이 차트(Pie Chart) 그래프로 시각화한다. 이때, 주요 활동 장소는 추출된 방문 장소 리스트를 시/군/구 단위로 그룹화한 뒤, 방문 횟수를 기준으로 내림차순으로 정렬하여 상위 n개를 선정한다. 또한, 선호/비선호 장소별로 각각 그룹화한 후 평균 별점을 기준으로 정렬하여 상위 3개를 추출한다. 이러한 정보들을 결합하여 사용자의 활동 정보와 선호 장소에 대한 방문 패턴 정보를 시각화하고, 그 결과를 사용자에게 제공한다.
Ⅳ. ePisode 플랫폼의 설계와 실제 구현 결과
4-1 전체 시스템 구성
본 연구에서 구현한 ePisode 플랫폼은 크게 프론트엔드(Front-end) 서버와 백엔드(Back-end) 서버, 데이터베이스, 클라우드 서비스(Cloud Services)로 구성된다. 그림 9는 ePisode 플랫폼의 전체 서버 구성을 다이어그램으로 표현한 것이다. ePisode 플랫폼의 프론트엔드 서버는 React와 Vite를 기반으로 구축되었으며, 사용자로 하여금 웹 브라우저를 통해 서비스에 접근할 수 있도록 통합 인터페이스를 제공한다. 또한, Tanstack Query를 활용하여 백엔드 서버와의 데이터 통신을 수행한다. 한편, 백엔드 서버는 Spring Boot 프레임워크를 기반으로 구축되었으며, REST API를 이용하여 데이터 처리를 담당한다. 이와 함께, MariaDB를 이용하여 내부 데이터베이스를 구축하였으며, ePisode 플랫폼에서 처리되는 서비스 데이터를 안전하게 저장하고 관리한다. 마지막으로, 클라우드 서비스 시스템은 HTTPS 프로토콜 기반의 보안 통신을 지원하며, 시스템의 안정성과 보안성을 강화하는 기능을 수행한다.
4-2 프론트엔드 서버와 백엔드 서버 설계 및 구현
그림 10은 ePisode 플랫폼의 프론트엔드 서버 구성을 나타낸 다이어그램이다. 앞서 설명한 바와 같이, 본 연구에서는 React와 Vite를 이용하여 프론트엔드 서버를 구축하였으며, 효율적인 상태 관리를 위하여 TanStack Query를 도입하였다. 또한, 사용자 경험의 향상을 위해 Framer-motion의 애니메이션과 React-icons, React-lottie의 디자인 요소를 채택하여 인터페이스 및 UI/UX 구현에 적용하였다. 특히, 사용자의 공간 정보 탐색 경험을 최적화할 수 있도록 지도 중심의 단일 페이지 애플리케이션(Single Page Application) 구조를 채택하였다[15]. 이를 통해, 지도를 중심으로 단일 인터페이스 내에서 페이지 전환 없이 모든 기능을 수행할 수 있도록 설계하였으며, 이를 통해 사용자가 위치 기반 정보를 탐색하는 과정에서 발생할 수 있는 컨텍스트(Context) 전환을 최소화할 수 있도록 편의성을 강화하였다.
한편, 그림 11의 다이어그램은 ePisode 플랫폼의 백엔드 서버의 구성을 보여준다. 본 연구에서는 Spring Boot를 이용하여 인증과 데이터 처리를 수행하고, 해당 데이터는 MariaDB를 통해 관리되도록 시스템을 구성하였다. 이와 함께, AWS Certificate Manager를 도입하여 SSL/TLS 인증서를 발급받아 HTTPS 통신을 지원하도록 백엔드 서버를 구축하였다.
4-3 통합 플랫폼 구현 결과 및 실증
웹 서비스 및 플랫폼 구현 시 UI/UX 설계는 사용자의 웹 서비스 이용 경험 전반에 핵심적인 영향을 미치는 요소로 작용한다[16],[17]. 이에 따라, 본 연구에서는 ePisode 플랫폼의 사용자가 편안한 환경에서 흥미를 갖고 꾸준히 다이어리를 작성할 수 있도록 사용자 친화적인 인터페이스(User Interface:UI)와 개인 맞춤형 적응적 사용자 경험(User eXperience: UX) 환경을 설계 및 구현하였다. 대표적으로, 사용자의 편의성과 지속적인 서비스 활용을 도모하고자 직관적인 내비게이션 구조와 지도 기반의 인터페이스를 채택하였다. 또한, 사용자로 하여금 다이어리를 작성하는 동안 정서적으로 편안함과 친숙함을 가질 수 있도록 분홍색 계열의 색상을 채택하여 인터페이스를 디자인하였다.
그림 12와 13은 본 연구에서 실제 구현한 ePisode 플랫폼의 회원 가입 및 로그인 화면을 보여준다. 그림 12의 회원 가입 화면에서 사용자는 이메일 주소와 비밀번호, MBTI, 관심 카테고리, 주소 정보를 입력할 수 있다. 이 과정에서 각 입력 필드에 대한 유효성 검사가 진행되어 입력된 정보가 올바른 형식을 갖추었는지 확인한다. 회원 가입이 완료되면, 사용자는 그림 13의 로그인 화면으로 이동하여 이메일과 비밀번호를 입력한 후 사용자 인증(로그인)을 진행한다. 로그인에 성공하면 사용자의 개인 정보와 다이어리 내용, 즐겨찾기 장소 리스트 등 ePisode 플랫폼의 모든 서비스에 접근할 수 있다. 또한, 로그아웃 버튼을 클릭하면 로그인 상태가 해제되며, 다시 로그인하기 전까지 개인 정보에 접근할 수 없다.

Screenshot of the sign up*This figure contains Korean sentences and words because the proposed ePisode platform was developed for service in Korea.
ePisode 플랫폼에 로그인한 사용자는 지도 기반 UI를 통해 자신이 방문한 장소를 직접 선택할 수 있다. 선택한 장소에 대한 상세 정보를 확인한 후, “다이어리 글 작성” 버튼을 클릭하면 그림 14의 “다이어리 작성 화면”으로 이동한다. 이 화면에서는 방문 날짜, 제목, 내용, 사진, 평점, 전체 공개 여부 등의 정보를 입력할 수 있는 다양한 필드가 제공된다. 사용자가 다이어리를 작성한 후 “저장” 버튼을 클릭하면, 작성된 다이어리가 서버의 데이터베이스에 등록된다. 등록된 다이어리 내용은 “다이어리 리스트”에서 확인할 수 있으며, 언제든지 수정과 삭제를 수행할 수 있다. 또한, “전체 공개”로 설정된 다이어리는 텍스트 형태로 다른 사용자와 자유롭게 공유할 수 있도록 “다이어리 공유 기능”을 구현하였다.

Screenshot of the diary writing function*This figure contains Korean sentences and words because the proposed ePisode platform was developed for service in Korea.
한편, 사용자가 지도에서 특정 장소를 선택하면 해당 장소의 상세 정보가 화면에 표시된다. 이때, “즐겨찾기” 버튼을 클릭하면 해당 장소가 즐겨찾기 목록에 추가되며, 그림 15와 같이 사이드바의 즐겨찾기 메뉴에서 리스트 형태로 확인할 수 있다. 이때, 사용자는 즐겨찾기 목록에서 특정 장소를 선택하여 해당 장소에 대한 상세 정보를 확인하거나 필요시 다시 “즐겨찾기” 버튼을 클릭하여 기존에 등록된 장소를 삭제할 수 있다. 이를 통해 사용자는 자신이 자주 방문하거나 관심 있는 장소들을 체계적으로 확인하고 관리할 수 있다.

Screenshot of the favorite place function*This figure contains Korean sentences and words because the proposed ePisode platform was developed for service in Korea.
또한, 화면 사이드바의 “장소 추천 아이콘”을 클릭하면 그림 16과 같이 “장소 추천 탭”이 활성화된다. 이 화면에서는 표 3의 선호 장소 추천 알고리즘을 통해 추천된 장소들을 리스트 형식으로 제공한다. 이때, 추천된 각 장소에 대해서 장소명과 카테고리, 주소 정보가 제공되며, “좋아요”와 “싫어요” 버튼을 통해 해당 장소에 대한 사용자의 피드백을 시스템에 전송할 수 있다. 이 피드백은 표 2와 3의 알고리즘에서 장소 추천 리스트를 갱신하기 위한 데이터로 활용된다. 또한, 사용자가 “좋아요” 버튼을 클릭한 장소는 자동으로 “관심 장소 리스트”에 추가되며, 추후 사이드바의 “관심 장소” 버튼을 클릭하여 확인할 수 있도록 기능을 구현하였다.

Screenshot of the place recommendation function*This figure contains Korean sentences and words because the proposed ePisode platform was developed for service in Korea.
사용자가 사이드바의 “생활 패턴 분석 아이콘”을 클릭하면 그림 17과 같이 방문 기록을 기반으로 생성된 “생활 패턴 분석 레포트”가 화면에 표시된다. 특히, 레포트의 상단에는 사용자가 방문한 장소들의 비율이 파이 차트 형태로 시각화되어 제공된다. 이 파이 차트는 사용자가 방문한 장소들을 복수 개의 카테고리로 분류한 후, 카테고리별 방문 횟수를 비율로 환산한 결과를 시각화함으로써 생성된다. 이와 함께, 파이 차트 하단에 사용자의 “주요 활동 장소”와 “좋았던 장소”, “별로였던 장소”를 순서대로 표시하여, 사용자가 방문했었던 장소들의 리스트를 세부적으로 확인할 수 있도록 인터페이스를 구성하였다.

Screenshot of the life pattern analysis function*This figure contains Korean sentences and words because the proposed ePisode platform was developed for service in Korea.
또한, 사용자는 화면 우측 상단에 위치한 “다운로드” 버튼을 클릭하여 현재 화면에 표시된 레포트 결과를 엑셀과 같은 스프레드시트 형식의 파일로 재가공하여 다운로드할 수 있다. 마지막으로, “지난 보고서 탭”을 클릭하면 월별로 정리된 과거 생활 패턴 분석 레포트의 리스트를 확인할 수 있다. 이를 통해 사용자는 자신이 어떤 장소에 얼마나 자주 방문하였는지를 효과적으로 파악할 수 있으며, 이를 토대로 자신의 생활 패턴을 스스로 점검하고 분석함으로써 지속적으로 다이어리를 작성하기 위한 동기를 부여받을 수 있다.
Ⅴ. 결론 및 향후 연구 계획
본 논문에서는 기존 온라인 다이어리 서비스의 한계를 개선한 지도 기반의 개인화 온라인 다이어리 서비스 플랫폼인 ePisode를 개발하고 그 결과를 구체적으로 실증하였다. 기존의 온라인 다이어리 서비스는 사용자의 흥미와 취향을 반영한 개인화 서비스가 부족하고, 대량의 기록을 효과적으로 관리하는 데 여러 한계점이 존재한다. 이에 반해, ePisode 플랫폼은 사용자의 흥미와 취향을 고려하여 사용자가 관심을 가질만한 장소를 실시간으로 추천하고, 이를 기반으로 다이어리를 작성할 수 있는 개인 맞춤형 다이어리 작성 기능을 제공한다. 이러한 접근 방법을 통해 사용자가 다이어리 작성에 더욱 흥미를 느끼고 꾸준히 다이어리를 기록할 수 있도록 지원하는 것이 본 ePisode 플랫폼의 특징이다.
ePisode 플랫폼은 회원 가입 및 인증 기능과 다이어리 작성 기능, 장소 즐겨찾기 기능, 장소 추천 기능, 생활 패턴 분석 기능으로 구성된다. 회원 가입 및 인증 기능에서 사용자는 본 플랫폼을 사용하기 위한 인증을 수행한 후 접근 및 사용 권한을 획득한다. 다이어리 작성 기능에서 사용자는 지도 인터페이스를 활용하여 자신이 방문한 장소를 선택하여 해당 장소에 대한 다이어리를 작성할 수 있으며, 장소 즐겨찾기 기능을 통해 관심 장소를 쉽게 관리할 수 있다. 또한, 장소 추천 기능을 통해 자신이 흥미를 느낄 만한 새로운 장소들을 실시간으로 추천받을 수 있다. 마지막으로, 생활 패턴 분석 기능은 사용자의 방문 이력을 바탕으로 장소 카테고리별로 사용자의 방문 비율과 주요 활동 지역, 선호/비선호 장소를 종합적으로 분석하고 그 결과를 시각적 그래프와 정형화된 데이터 형태로 리포팅하여 사용자에게 제공한다. 이러한 일련의 기능들은 React 기반의 프론트엔드와 Spring Boot 기반의 백엔드 아키텍처를 이용하여 구현되었으며, 사용자가 친숙한 환경에서 자연스럽게 다이어리를 작성할 수 있도록 사용자 친화적인 UI/UX를 설계하여 인터페이스를 구축하였다.
한편, 본 플랫폼에서는 위치 기반 서비스와 개인화 추천 시스템을 효과적으로 통합하여 사용자 경험을 강화하고, BCrypt 알고리즘을 활용한 암호화 기술을 도입함으로써 사용자 개인 데이터에 대한 보안성을 강화하였다. 아울러, 사용자의 활동 데이터를 기반으로 한 추천 기능과 생활 패턴 분석 알고리즘을 통합적으로 활용하여 사용자로 하여금 지속적으로 다이어리를 작성할 수 있도록 독려하는 다양한 개인화 서비스와 기능들을 제공한다. 따라서, 본 연구 결과는 단순히 다이어리 작성의 기능을 넘어 다이어리 작성 활동을 효과적으로 독려할 수 있는 새로운 온라인 개인화 서비스 플랫폼을 구현하는 데 필요한 방향성을 제시하고, 이에 필요한 구체적인 기술들을 제안 및 구현하고 그 결과를 구체적으로 실증하였다는 점에서 중요한 의의를 갖는다.
한편, 본 연구에서 개발한 ePisode 플랫폼이 본격적인 온라인 서비스로 더욱 발전하기 위해서는 몇 가지 개선되어야 할 점이 존재한다. 현재 구현된 서비스는 데스크톱 웹 플랫폼에 한정되어 있어 사용자 접근성 측면에서 제약이 존재한다. 아울러, 국내 장소에 대한 정보만을 지원함에 따라 해외 장소에 대해서는 다이어리 작성 기능이 제공되지 않는다. 이에 따라, 후속 연구에서는 사용자들로 하여금 지속적으로 다이어리 작성을 독려하고 효과적으로 흥미를 유발할 수 있도록 현재의 ePisode 플랫폼을 다양한 스마트 디바이스 및 모바일 환경에서도 서비스가 가능한 크로스 플랫폼으로 확장할 계획이다. 동시에 해외 장소 데이터베이스 구축을 통해 해외 장소에 대해서도 다이어리 작성이 가능하도록 기능을 강화하고, 이에 대한 파일럿 서버(Pilot Server)와 데모 서비스(Demo Service)를 구축하여 실제 사용자들을 대상으로 사용자 경험 및 만족도 조사, 다이어리 작성에 대한 동기 부여도 및 지속성 평가 등을 수행할 예정이다. 이를 통해, 본 ePisode 플랫폼의 접근성과 활용성 그리고 연구의 신뢰성을 더욱 강화함으로써 현재 서비스 중인 다양한 온라인 다이어리 작성 플랫폼과 경쟁할 수 있는 본격적인 온라인 개인화 다어어리 작성 플랫폼으로 자리매김할 수 있을 것으로 기대한다.
Acknowledgments
이 논문은 2022년도 정부(교육부)의 재원으로 한국연구재단의 지원을 받아 수행된 기초연구사업임(No. 2022R1I1A3065378).
References
-
H. Bae, “Cases of Writing Education for Self-Expression Using an Online Platform and the Operation Plans Thereof -Focusing on SNS and OVP Writing,” Korean Journal of General Education, Vol. 15, No. 4, pp. 101-115, August 2021.
[https://doi.org/10.46392/kjge.2021.15.4.101]
- H.-Y. Kim, W.-J. Park, Y.-J. Lee, S.-Y. Kim, and M.-J. Kim, “Research on Implementing Digital Diary Minting Application By Using DALL-E2 and Blockchain,” in Proceeding of Annual Conference of KIPS 2023, Busan, pp. 888-889, November 2023.
- J. H. Yoon, G. Y. Kim, S. Park, S. Park, C. Y. Park, and E. H. Kim, “Design of Next Generation Diary Writing Application,” in Proceedings of the 2022 KIIT Summer Conference, Jeju, pp. 640-643, June 2022.
- NAVER Corp. NAVER Blog [Internet]. Available: https://section.blog.naver.com/, .
- Two App Studio. Journey [Internet]. Available: https://journey.cloud/ko/, .
- Y. Kang, M. Kim, J. Kim, D. Jin, K. Kim, and B. Oh, “Map-Based Diaries for P-Type Personality in MBTI,” in Proceedings of the 2024 KIIT Summer Conference, Jeju, pp. 849-853, May 2024.
- NAVER Corp. NAVER Maps [Internet]. Available: https://map.naver.com/, .
- J. S. Han, Effects of Blog Elements on Perceived Credibility: A Case Study of NAVER Travel Blogs, Master’s Thesis, Dong-A University, Busan, August 2018.
- M. G. Jang, A Study on Self-Expressive Writing Aspects of High School Students Using Digital Media: Focusing on Daily Blog Analysis, Master’s Thesis, Ewha Womans University, Seoul, February 2023.
- T. S. D. Phuc and C. Lee, “Password Hashing Algorithms - From Past to Future,” Journal of Platform Technology, Vol. 3, No. 4, pp. 63-75, December 2015.
-
J.-K. Lee, S.-J. Kim, J. Woo, and C. Y. Park, “Analysis and Response of SSH Brute Force Attacks in Multi-User Computing Environment,” KIPS Transactions on Computer and Communication Systems, Vol. 4, No. 6, pp. 205-212, June 2015.
[https://doi.org/10.3745/KTCCS.2015.4.6.205]
-
S.-J. Yu, “A Study of Improvement of Individual Item Diversity in Collaborative Filtering-based Recommendation,” The Journal of Korean Institute of Information Technology, Vol. 14, No. 8, pp. 89-94, August 2016.
[https://doi.org/10.14801/jkiit.2016.14.8.89]
-
Y. Koren, S. Rendle, and R. Bell, Advances in Collaborative Filtering, in Recommender Systems Handbook, 3rd ed. New York, NY: Springer, ch. 4, pp. 91-142, 2022.
[https://doi.org/10.1007/978-1-0716-2197-4_3]
-
F. Fkih, “Similarity Measures for Collaborative Filtering-Based Recommender Systems: Review and Experimental Comparison,” Journal of King Saud University - Computer and Information Sciences, Vol. 34, No. 9, pp. 7645-7669, October 2022.
[https://doi.org/10.1016/j.jksuci.2021.09.014]
-
Y. Sun, Single-Page Applications, in Practical Application Development with AppRun, Berkeley, CA: Apress, ch. 7, pp. 141-162, 2019.
[https://doi.org/10.1007/978-1-4842-4069-4_7]
-
I. G. Kim and Y. H Lim. “A Study on the Dynamic Web Design Based on MBTI : Focusing on Users in Their 20s,” The Korean Journal of Animation, Vol. 18, No. 4, pp. 70-89, December 2022.
[https://doi.org/10.51467/ASKO.2022.12.18.4.70]
-
R. Gunawan, G. Anthony, Vendly, and M. S. Anggreainy, “The Effect of Design User Interface (UI) e-Commerce on User Experience (UX),” in Proceedings of the 6th International Conference on New Media Studies (CONMEDIA), Tangerang, Indonesia, pp. 95-98, October 2021.
[https://doi.org/10.1109/CONMEDIA53104.2021.9617199]
저자소개
2020년~현 재: 국립금오공과대학교 컴퓨터공학과 학사과정
※관심분야:웹 시스템, 프론트엔드
2021년~현 재: 국립금오공과대학교 컴퓨터공학과 학사과정
※관심분야:모바일 앱, 네트워크
2021년~현 재: 국립금오공과대학교 컴퓨터공학과 학사과정
※관심분야:웹 시스템, 머신러닝
2020년~현 재: 국립금오공과대학교 컴퓨터공학과 학사과정
※관심분야:웹 시스템, 프론트엔드
1993년 2월:건국대학교 전자계산학과(공학사)
1995년 2월:건국대학교 전자계산학과(공학석사)
1999년 2월:건국대학교 전자계산학과(공학박사)
1999년 6월~2004년 2월: 한국전자통신연구원 텔레매틱스연구단 선임 연구원
2004년 3월~현 재: 국립금오공과대학교 컴퓨터공학과 교수
※관심분야:공간 데이터베이스, GIS, 위치 기반 서비스
2011년 2월:국립목포대학교 사범대학 컴퓨터교육과 (공학사)
2020년 8월:한양대학교 대학원 전자컴퓨터통신공학과 (공학박사)
2020년 9월~2022년 2월: 한양대학교 컴퓨테이셔널 사회과학 연구센터 박사후연구원 (Postdoctoral researcher)
2022년 3월~현 재: 국립금오공과대학교 컴퓨터공학과 교수
※관심분야:인공지능, 머신러닝, 딥러닝 모델 최적화, 전역 최적화, 진화 연산