SQLGate PMS를 소개합니다


개발자라면 한 번쯤 IntelliJ, Toad, UltraEdit, EditPlus…와 같은 통합개발 도구, 혹은 개발 도구를 써본 경험이 있으시죠? 이런 개발 도구는 개발자의 업무 생산성과 비용을 줄일 수 있도록 도와주는 매우 중요한 도구입니다. 결국 어떤 개발 도구를 도입하느냐에 따라 그 회사가 개발하는 제품이나 서비스의 품질에 직접 영향을 미친다고 해도 과언이 아닙니다.

우리 회사도 국내 1위 데이터베이스 관리/개발 도구 “SQLGate”를 개발하던 Antwiz(앤트위즈)社와 합병하여 기존 제품에 13가지 기능이 추가/개선된 SQLGate 8.0 버전과, Mac/Windows/Linux에서 모두 동작하는 새로운 제품인 SQLGate 5를 개발하고 있습니다.

SQLGate는 데이터베이스를 기반으로 업무를 하는 개발자/DBA/데이터 관리자가 더 쉽고 빠르게 데이터베이스를 사용할 수 있도록 도와주는 도구로 국내 2000여 곳의 고객사와 13년의 역사를 자랑하는 국산 소프트웨어입니다. SQLGate 사이트를 방문하시면 더 자세한 제품 설명을 보실 수 있습니다! (https://www.sqlgate.com/product)

참고로 2017–06–26(월)부터 SQLGate 8.0 출시 기념 이벤트를 합니다. 최대 70%까지 할인된 금액으로 구매할 수 있습니다.
구매하러 가기 : https://www.sqlgate.com/store

홍보 아닌 홍보가 되었지만, PMS를 소개하기 위해 어쩔 수 없었네요 :)

아무튼, 우리 회사는 SQLGate라는 제품을 /판매하고 있고 이 제품을 더 잘 만들고, 더 잘 판매하기 위해 PMS라는 시스템을 개발하기로 했습니다. 물론 기존 앤트위즈社에서 사용하던 여러 시스템이 있었지만, PHP 기반의 오래된 시스템이기도 했고 여러 버전으로 산재되어 있어 이를 통합하고 우리 회사의 기술력을 최대한 활용할 수 있는 Java(AXBoot) 기반으로 새롭게 통합하기로 했습니다.

PMS(Product Management System)는 SQLGate를 개발/테스트/판매/홍보 하는데 필요한 대부분 모듈을 통합한 시스템으로 ALM(Application Lifecycle Management), 온/오프라인 판매, 제품 홍보 및 데이터 수집/통계 등의 기능을 제공합니다.

큰 시스템이다 보니 여러 단계로 나누어 개발하기로 했고, 첫 번째 목표로 온라인 판매 및 제품 홍보를 위한 PMS-Front 모듈 개발을 시작했습니다. 처음 시작은 장기적인 목표로 시작했으나, 개발을 하다 보니 욕심이 생겨 일부 기능만을 빨리 개발해서 SQLGate 8.0 출시와 함께 PMS-Front를 오픈하기로 했습니다.


PMS-Front의 기술 스택

  • Java 8
  • Spring Boot 1.5.3 (AXBoot Framework)
  • JPA 2.1 (Hibernate 5.2) / QueryDSL
  • HTML5 / CSS 3 / Materialize (AX5UI)

우리 회사가 개발/배포 중인 오픈 소스 AXBoot FrameworkAX5UI를 기반으로 웹 애플리케이션 기본 구조를 만들고 SQLGate 8.0 출시 및 온라인 판매를 위한 최소한의 기능을 2주 동안 개발했습니다.

SQLGate PMS-Front PC
SQLGate PMS-Front Mobile

보신대로 PMS-Front는 거창해 보이지만 사용자에게는 홈페이지로 인식되는 웹 사이트입니다. 하지만 ‘제품 홈페이지를 만들자!’라는 목표와, ‘제품을 잘 만들고, 팔기 위한 시스템을 개발하자!’는 목표는 완전히 다른 결과를 가져오게 됩니다. 고객이 느끼기에는 같은 결과물이지만, 회사 내부적으로는 완전히 다른 시스템인 셈이죠.

PMS-Front를 개발하면서 가장 많은 시간을 투자한 부분은 바로 ‘구매/결제' 부분입니다. 현재 고객이 어떠한 상태에 있더라도(PC, Mobile, 회원/비회원) 쉽고, 빠르게 제품을 구매할 수 있도록 해서 구매 전환율을 높이고, 결제 실패율을 낮추기 위해 많은 노력을 했습니다.

대한민국에서 ‘신용카드 결제’ 한 번 하기 정말 어렵습니다. 그리고 모바일에서는 특히나 많은 입력을 요구하면 입력하다 짜증 나서 구매를 미루거나 혹은 하지 않게 되죠.

이런 나쁜 경험을 고객이 겪지 않게 하려고 구매 시점에는 회원/비회원 모두 최소한의 정보를 입력받게하여 빠르게 구매가 이뤄 질 수 있도록 UI를 설계했고, 추가적으로 필요한 정보는 결제가 완료된 이후에 입력받을 수 있도록 구매 프로세스를 설계했습니다.

SQLGate PMS-Front 주문서

JTNET의 비대면 결제 기능과, 너무너무 결제 붙이기가 쉬운 Iamport 결제 API를 통해 3가지의 결제 방식을 제공했습니다.

첫 번째는 법인카드를 사용하는 법인고객이나 앱카드/ISP를 사용하지 않는 높은 연령대 고객을 위해 신용카드번호 + 유효기간만을 넣고 결제할 수 있는 획기적인 신용카드 결제 기능을 제공합니다.

두 번째로 주로 젊은 층 혹은 모바일 기기에 앱카드/ISP를 이미 설치한 고객을 위한 일반 신용카드 결제를 제공합니다. (인터넷 쇼핑몰에서 흔히 접할 수 있는 결제 방식입니다)

마지막으로 신용카드고 뭐고 귀찮고, 난 계좌이체 하겠다! 는 고객을 위한 가상 계좌까지, 총 3가지 결제 방법을 제공합니다.

이 3가지 결제 방식은 Internet Explorer, Chrome, Safari 등 OS/브라우저 환경 제약 없이 동작합니다!
결제가 끝난 후 추가적인 정보를 받도록 유도하는 페이지

결제가 모두 완료되면 내부적으로는 결제 시작부터 완료까지 얼마나 소요되는지 추적하고, 슬랙으로 알람을 보내서 실시간으로 주문을 확인할 수 있도록 했습니다.

이 외에도 PMS-Front를 개발하면서 겪은 스토리가 참 많은데요. 앞으로 종종 PMS를 개발하면서 겪었던 여러 경험과 이야깃거리를 이곳에서 공유하면서, 어떻게 SQLGate가 성장해 나가는지 보여드리겠습니다.

이번 PMS-Front 개발에 많은 도움을 주신 JTENT과 Iamport 장지윤 대표님께도 깊은 감사의 말씀을 드립니다!

그럼 다음 편에서 만나요! :)

끝.