1분반-올인뷰

cdc wiki
이동: 둘러보기, 검색

프로젝트 개요

기술개발 과제

국문 : 할인정보수집시스템

영문 : Discount Information Collection System

과제 팀명

올인뷰

지도교수

이병정 교수님

개발기간

2025년 3월 ~ 2025년 6월 (총 4개월)

구성원 소개

서울시립대학교 컴퓨터과학부 20199200** 서*진(팀장)

서울시립대학교 컴퓨터과학부 20199200** 김*서

서울시립대학교 컴퓨터과학부 20219200** 권*재

서론

개발 과제의 개요

개발 과제 요약

◇ 2030 세대가 자주 사용하는 배달 및 온라인 브랜드 웹페이지의 할인 이벤트 정보를 한 곳에서 확인할 수 있는 어플리케이션을 개발한다.
◇ 사진에서 텍스트를 추출하여 할인 관련 정보만 필터링하는 기능을 제공한다.
◇ 사용자 위치를 기반으로 지점별 배달비 정보 및 주변 가게들의 정보를 제공하며, 백년가게 및 전통시장의 정보를 추가적으로 제공한다.
◇ 직관적인 UI/UX를 적용하여 쉽고 빠르게 할인 정보를 탐색할 수 있도록 설계한다.

개발 과제의 배경

◇ 배달음식의 수요와 그에 상응하는 배달 플랫폼과 할인 행사의 증가로 인해 제공되는 할인 정보를 일일이 확인하는 것이 어려워졌다.
◇ 할인 정보와 배달비 정보를 자동으로 정리하여 사용자에게 제공함으로써 소비자들의 효율적인 할인 정보 확인이 가능하다.
◇ 위치 기반 기능을 통해 편의성을 제공함과 동시에, 백년가게 및 전통시장 표시 기능을 통해 지역 상권 활성화에 기여한다.
◇ 공익적 요소를 추가함으로써 단순 할인 정보 제공을 넘어 사회적 가치 창출이 가능하다.

개발 과제의 목표 및 내용

◇ 인기 배달 앱의 할인 이벤트 정보를 수집하고, 이를 사용자가 쉽게 조회할 수 있도록 정리하는 기능을 구현한다.
◇ OCR 기술을 활용하여 사진 속 할인 정보를 자동으로 추출하고 필터링하는 기능을 제공한다.
◇ 사용자 위치를 기반으로 할인 이벤트에 해당하는 주변 가게 정보를 제공하며, 백년가게 및 전통시장의 위치를 별도로 표기한다.
◇ 반응형 디자인을 적용하여 다양한 모바일 기기에서 최적화된 사용자 경험을 제공한다.

관련 기술의 현황

관련 기술의 현황 및 분석(State of art)

  • 전 세계적인 기술현황
◇ UI 자동화 기술 최신 트렌드
◇ 모바일 앱 데이터 자동화: Appium과 같은 UI 자동화 도구를 사용하여, 모바일 애플리케이션에서 발생하는 데이터를 실시간으로 수집하고 추출하는 기술이 중요해짐.
◇ 자동화된 테스트 및 크롤링: Appium을 활용하여, 모바일 앱 내에서 사용자 인터페이스(UI)를 자동으로 테스트하고, 할인 정보를 추출하는 예시와 같이 자동화된 크롤링 시스템 구축.
◇ 비즈니스 프로세스 최적화: 자동화된 UI 크롤링을 통해 수집된 데이터를 AI와 결합하여, 실시간으로 유효한 정보를 제공하고, 비즈니스 프로세스를 최적화하는 시스템 적용.


◇ OCR 기술 최신 트렌드
◇ OCR 기술은 딥러닝 기반으로 텍스트 인식 정확도를 높이고, AI와 융합하여 데이터를 분석 및 활용하는 방향으로 발전 중.
◇ Transformer OCR 기술은 End-to-End 구조로 문서 내 텍스트와 의미를 동시에 파악하며, 문맥 이해에 탁월한 성능을 보임.
◇ OCR + NLP 융합 기술은 단순 텍스트 추출을 넘어 의미 분석, 자동 요약, 문서 분류 등 문맥 기반의 고도화된 처리 자동화에 활용.
◇ OCR 결과를 활용한 프로세스 자동화 (RPA) 기술도 수요가 증가하고 있으며, OCR + AI 융합을 통해 자동화된 비즈니스 프로세스 적용이 중요해짐.
  • 특허조사 및 특허 전략 분석
◇ OCR 관련 특허
◇ KR102279456B1(문서의 광학 문자 인식 기법)
◇ CN111539415A (OCR 이미지 인식을 위한 이미지 처리 방법 및 시스템)
◇ US8718375B2 (OCR 필기체 인식 시스템)
◇ 프로젝트 주제 관련 특허
◇ 인터넷 커뮤니티 기반한 상품의 특가 가격 정보를 제공하는 특허(1020240038442)가 존재	


◇ 특허전략
◇ OCR + AI 기술의 경우 딥러닝 기반 OCR 핵심 기술이 다수 특허로 보호되고 있음.
◇ 차별화 전략: OCR을 특정 분야에 특화하여 융합형 솔루션으로 특허화 (예: OCR 기반 배달앱 자동 할    인 시스템).
◇ 프로젝트 주제 관련의 경우 본 프로젝트는 정보의 원천이 인터넷 커뮤니티가 아닌 서비스에 비롯되기    에 해당 특허에 저촉되지 않을 것이다.
◇ Appium의 경우 아파치 라이선스 2.0를 사용함에 따라 해당 프레임워크를 이용하였다는 내용을 게재    하면 2차 라이선스와 변형물의 특허 출원이 가능하다. 
  • 기술 로드맵

기술로드맵(자동화).jpg

시장상황에 대한 분석

  • 경쟁제품 조사 비교
◇ 기존 앱은 특정 제품군에 대한 당일 할인 정보에 특화되어 있거나, 다양한 브랜드의 할인 정보를 제공한다고 하더라도 위치 기반 서비스가 없어 배달비 정보와 사용자 주변의 할인 정보를 찾기 어렵다는 단점이 있었음.
◇ 반면, 개발 예정 앱은 사용자 위치를 기반으로 배달비 및 주변 가게 정보가 제공되며, 지역 상권 활성화에도 기여할 수 있다는 이점이 있음. 뿐만 아니라 2030의 소비의 대부분을 차지하는 음식 및 의류의 할인 정보에 집중하는 것으로 소비 패턴을 반영하여 어플리케이션에 적용함. 필요한 정보를 제 위치 기반의 가게 제공은 타 경쟁제품들과 비교하여 사용자 편의성을 크게 증대할 수 잇는 요소가 될 것임.
  
  • 마케팅 전략 제시
◇ 초기 사용자 확보
2030세대가 자주 방문하는 SNS (인스타그램, 페이스북, 트위터 등)을 활용한 홍보
할인 이벤트 정보를 모아둔 네이버 블록, 카페와 협업하여 서비스 노출
커뮤니티에 할인 정보를 공유하며 자연스럽게 앱 홍보
◇ 파트너십 및 제휴
지역 상권 및 백년가게와 협력하여 가게 홍보 기회 제공	
배달 및 쇼핑몰 플랫폼과 협력하여 공식 할인 정보 연동 가능성 검토
◇ 차별화된 콘텐츠 활용
할인 정보 알림 기능을 제공하여 사용자들이 즉각적 혜택을 받을 수 있도록 유도	
데일리 할인 소식 푸시 알림 등의 기능을 추가하여 지속적인 사용자 유입 유도
◇ 지속적인 개선 및 업데이트
초기 사용자 피드백을 반영하여 기능 개선 및 UI/UX 최적화	
시즌별 할인 정보 제공 (블랙프라이데이, 명절 할인 등)

개발과제의 기대효과

기술적 기대효과

◇ OCR 및 OpenCV를 통해 다양한 플랫폼에서 제공하는 할인 정보를 자동으로 수집 및 필터링하여 최신 할인 정보 제공의 정확성과 효율성 향상
◇ 사용자의 실시간 위치를 기반으로 주변 가게 정보를 제공하고, 백년가게 및 지역시장을 표기함으로써 정확한 위치 기반 검색 기능 강화
◇ 사용자 맞춤형 할인 정보를 추천하고, 사용자 경험을 강화

경제적, 사회적 기대 및 파급효과

◇ 소비자 편의성 및 경제적 이익 증대	
다양한 할인 정보를 통합해 제공함으로써 소비자가 여러 플랫폼을 직접 확인해야 하는 불편함 해소 및 경제적 혜택 극대화
◇ 소상공인 및 지역 상권 활성화 기여
위치 기반 서비스와 백년가게 표기 기능을 통해 지역 상점의 홍보 및 접근성 증대 효과 기대
◇ 공익적 가치 창출 및 전통 상점 보호
백년가게 표기 기능을 통해 전통 있는 상점의 인지도를 높이고, 지역 상권에 대한 관심 유도 및 보존 기여

기술개발 일정 및 추진체계

개발 일정

개발인정Q1.jpg

구성원 및 추진체계

구성원Q1.jpg

설계

설계사양

제품의 요구사항

제품요구사항Q1.jpg

설계 사양

◇ F1 - 기능: OCR 기반 할인정보 수집
설명: 각 배달 어플리케이션의 이벤트 탭에서 제공되는 할인 이벤트 이미지를 수집하고, OCR 및 LLM 기반 분석을 통해 텍스트 기반 할인 정보를 리스트화한다.
정량 목표:
a. Back-end: UI 자동화로 이미지 수집 후 OCR을 통해 텍스트를 추출하고, 이를 할인 정보로 정제하여 DB에 저장한다.
b. Front-end: 사용자에게 할인 정보 리스트를 제공하며, 사용자가 브랜드를 즐겨찾기에 등록할 수 있는 UI를 구현한다.
◇ F2 - 기능: OCR 모델 선택 및 적용
설명: 이미지 내의 텍스트를 정확히 추출하기 위해 OCR 모델을 적용한다.
정량 목표:
a. Back-end: Google Cloud Vision OCR API를 통해 할인 정보 텍스트를 추출하고, 정제된 데이터로 가공한다.
b. Front-end: OCR 결과를 시각화하여 사용자에게 표시하고, 필요시 결과 보정 UI를 제공한다.
◇ F3 - 기능: 위치 기반 할인 지도 구현
설명: 사용자의 현재 위치를 기준으로 반경 내 할인 매장, 백년가게, 전통시장 등을 지도에 시각화한다.
정량 목표:
a. Back-end: 위치 기반 할인 매장 정보를 수집하고, 지도 좌표에 맞춰 매핑 데이터를 생성한다.
b. Front-end: Google Map 및 Naver Map API를 활용하여 위치 기반 할인 매장을 마커와 뱃지로 시각화하고 지도 상에 출력한다.
◇ F4 - 기능: 지도 API 연동 및 커스텀 마커 표시
설명: Expo 환경에서 지도 서비스를 안정적으로 구현하기 위해 Google Map을 기본으로 사용하며, 필요 시 Naver Map과 병행한다.
정량 목표:
a. Back-end: 매장 위치 및 유형 정보(할인, 전통시장, 백년가게)를 반환하는 API 제공.
b. Front-end: 지도 내 마커, 뱃지, 애니메이션 등을 적용하여 사용자 경험 향상.
◇ F5 - 기능: 푸시 알림 시스템 구현
설명: 사용자의 선호 브랜드와 관련된 할인 정보가 발생했을 때 실시간 푸시 알림을 전송한다.
정량 목표:
a. Back-end: Firebase Cloud Messaging을 활용하여 알림 전송 조건을 판별하고, 타겟 사용자에게 메시지를 전송한다.
b. Front-end: 알림 수신 여부 설정 UI 제공 및 수신된 알림을 앱 내 알림센터에 표시.

개념설계안

◇ 유스케이스

유스케이스Q1.jpg

◇ 주요 시퀀스 다이어그램
◇ 사용자 주소 등록 시퀀스

시퀀스Q1.jpg

◇ 할인 정보 조회 시퀀스

시퀀스Q2.jpg

◇ 지도 내 위치 조회 시퀀스

시퀀스Q3.jpg

◇ 푸시 알림 시퀀스

시퀀스Q4.jpg

이론적 계산 및 시뮬레이션

내용

상세설계 내용

◇ ERD

ERDQ1.jpg

◇ 클래스 다이어그램

클래스Q5.jpg

◇ 아키텍쳐 다이어그램

아키텍쳐Q1.jpg

결과 및 평가

완료 작품의 소개

프로토타입 사진 혹은 작동 장면

◇ 초기 메인화면 및 주소 등록 화면

실행Q1.jpg 실행Q2.jpg

◇ 할인 정보 조회 및 정렬 기능

실행Q3.jpg 실행Q4.jpg 실행Q5.jpg 실행Q6.jpg

◇ 주소 기반 지도 화면

실행Q7.jpg 실행Q8.jpg 실행Q9.jpg

◇ 즐겨찾기 및 설정 화면

실행Q10.jpg 실행Q11.jpg

관련사업비 내역서

내역서Q1.jpg

완료작품의 평가

평가Q1.jpg

향후계획

가. 어려웠던 내용들

1. Exop 기반의 React Native에서 구현 위 개발 환경에서 종종 발생하는 버전 충돌, 모듈 의존성 문제, 안드로이드 실기기 테스트 한정 기능은 개발 효율성과 테스트 흐름을 저해하는 요소였다.

2. Virtual Android Devices 에서의 접근 에뮬레이터에서 배달어플을 접근하는 과정에 있어서 접근이 차단된 경우와, 주소등록 시 카카오맵과 연동되어 주소등록 이용이 불가능한다든지, 그리고 자동화 사용 시 배달어플 내의 객체 요소에 접근하는게 불가능하여 개발에 어려움이 있었다.

3. Virtual Android Devices 문제 에뮬레이터에서 자동화 작업을 하면서 버전과의 문제로 세션이 너무 빨리 죽는 문제가 생기기도 하였고 로컬에서 병렬처리를 진행하면서 appium서버를 각각 배치할 때 인식을 못하는 어려움도 있었다.

4. 푸시 메시지 구현 푸시 메시지에 대해 처음 다루면서 푸시 메시지가 어떤 원리로 사용자에게 전달되는지에 대해 배우고, 이 과정에서 사용자 인증과 같은 보안을 실제 프로젝트에 적용하는 것이 어려웠다.

5. 사용자 관련 기능 구현 우선 로그인 방식을 따로 구현하는 것은 정보를 정리해서 보여주는 프로젝트에서 의미가 없다고 판단하였기에, 로그인 방식을 구현하지 않고 사용자의 최소 정보만 받아서 처리하기로 결정하였다. 이 과정에서 사용자 인증과 관련된 부분을 어떻게 구현할지 고민하는 것이 어려웠다.


나. 차후 구현할 내용

1. API 에러 및 네트워크 예외 처리 보강 현재는 대부분의 API 요청에 try-catch로 기본적인 에러 처리를 하고 있으나, 향후에는 공통 API 요청 유틸을 만들어 에러 메시지 통합 처리, 로딩 상태 핸들링, 사용자 피드백 메시지 표준화 등의 개선이 필요하다.

2. 디자인 시스템 도입 프로젝트 후반부에 UI 개선을 진행했지만, 스타일 일관성을 유지하기 어려운 부분이 있었다. 추후에는 Tailwind-like 스타일 유틸리티 또는 자체 디자인 시스템을 구축해 재사용 가능한 컴포넌트와 명확한 색상/폰트/여백 규칙을 정의하고 싶다.

3. 병렬처리 구현 현재는 클라우드상에서 에뮬레이터를 실행하고 자동화 작업까지 진행하기에 gpu 랜더링 문제라든지, cpu 가속 등의 문제가 남아있어 어려움이 있지만 추후에 클라우드상에서 에뮬레이터 최적화된 모델이 나온다면 병렬처리를 적용하여 속도 개선을 이루고 싶다.

4. 보안 관련 내용 강화 현재 서버 상에서 처리할 때 위치 정보나 토큰을 암호화하지 않고 POST 형식으로 처리해서 보내고 있는데, 이를 SHA-2과 같은 암호화 알고리즘을 이용해 처리하고 싶다.

5. 사용자 선호도 관련 구현 현재 기본 순으로 정렬할 시 백엔드에서 DB로 매핑한 것 순서대로 출력하게 되어있다. 이렇게 출력되는게 아니라 사용자 선호도 높은 항목을 상단에 띄우게 하고 싶다. 이러한 과정을 진행하기 위해서는 사용자 선호도 관련 테이블을 구성하고, 프론트엔드에서 log로 수집한 선호도 정보를 점수로 치환해서 저장하는 과정에 대해 구현해보고 싶다.

참고문헌 및 참고사이트

특허 참고자료 : https://patents.google.com/ https://www.kipris.or.kr/

OCR 참고자료 : https://it-stargazer.com/%EC%B5%9C%EC%8B%A0-ocr-%EA%B8%B0%EC%88%A0-%EB%8F%99%ED%96%A5-%EB%B0%8F-%ED%99%9C%EC%9A%A9-%EC%82%AC%EB%A1%80-ai-%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EA%B8%B0/ https://aws.amazon.com/ko/what-is/ocr/

UI자동화 참고자료 : https://appium.io/docs/en/latest/

OCR 및 UI 자동화 기술로드맵 : https://en.wikipedia.org/wiki/

OpenCV 참고자료 : https://opencv.org/