프로젝트 유지보수 : SUSUMA 수리 전문가 매칭 플랫폼

2025. 1. 16. 20:00·🏅 Project/Team Project

이번에 저는 기존에 개발된 수리 전문가 매칭 플랫폼을 유지보수하면서 여러 개선 사항을 적용하고 기능을 수정하는 작업을 진행했습니다.
유지보수 과정을 통해 배운 점과 작업 내용을 기록합니다.


프로젝트 개요

수리 전문가 매칭 플랫폼 V2는 사용자가 수리 기사를 예약하고, 수리 진행 상태를 관리하며, 포인트와 메시지 기능 등을 활용할 수 있는 웹 플랫폼입니다.
https://dev.hjwjo.com/43

프로젝트를 유지보수하면서 다음과 같은 주요 작업을 수행했습니다:


업데이트 기간

  • 2025년 1월 8일 ~ 10일, 16일 (총 3일)

주요 작업 내용

1. Oracle 테이블 및 DB 스키마 수정

  • REQUEST 테이블:
    • STATUS 컬럼에 기본값(DEFAULT 'requested')을 추가하여 초기 상태를 명확히 설정.
    • SQL 문법 오류(ORA-00907) 수정.
    • 테이블 및 컬럼 이름을 대문자로 통일하여 코드 일관성 유지.
  • MESSAGE 테이블:
    • MESSAGE 컬럼의 길이를 50자 → 255자로 확장하여 긴 메시지를 저장할 수 있도록 개선.
  • POINT_HISTORY 테이블:
    • 컬럼 타입을 변경하여 자바와의 데이터 타입 호환성을 강화.

2. Jakarta EE로 전환

  • 기존 Java EE 라이브러리를 제거하고 Jakarta EE로 전환:
    • JSP 파일의 네임스페이스를 http://jakarta.ee/...로 수정.
    • Tomcat 10.x 환경에서 Jakarta EE와의 호환성을 최적화.
  • EC2 서버 환경 설정:
    • 중복 라이브러리를 제거하고 배포 환경을 최적화하여 성능 개선.

3. 예약 및 수리 로직 개선

  • 예약자와 수리 기사 입장에서의 버튼 표시 로직 수정:
    • 예약자가 예약일 및 시간이 지나지 않은 경우 "예약 완료" 버튼 표시.
    • 예약일 및 시간이 지난 경우 "결제 요청" 버튼 표시.
    • 수리 기사는 예약일이 미래일 경우 "예약 완료", 지났을 경우 "수리 중" 버튼이 표시되도록 로직 재구성.
  • JSP의 <c:choose> 및 <c:when> 태그 활용으로 조건 처리 최적화.

4. 포인트 관련 로직 개선

  • 적립 및 출금 로직에서 NullPointerException 방지 로직 추가.
  • 잔액 계산 및 반환 값 검증 로직을 강화하여 안정성 개선.
  • 포인트 히스토리 조회 시 발생하던 데이터 타입 오류를 해결.

5. 메시지 관련 로직 개선

  • 메시지 길이 유효성 검사(255자 제한) 추가.
  • 메시지 내역 조회 및 업데이트 로직에서 예외 처리 강화.
  • 잘못된 입력에 대한 사용자 피드백을 개선하여 UX 향상.

6. Tomcat 서버 설정 개선

  • 시간대 설정:
    • Tomcat의 JVM 옵션에 -Duser.timezone=Asia/Seoul 추가.
    • DB와 서버 간 시간 불일치 문제를 해결하여 시간 기반 로직의 정확성을 확보.
  • 캐싱 문제 해결:
    • Tomcat work/ 디렉토리를 삭제하여 JSP 업데이트가 반영되지 않던 문제를 해결.

테스트 결과

  • 주요 기능(포인트 적립/출금, 메시지 전송/조회) 모두 정상 작동 확인.
  • JSP 및 WAR 배포 후 Jakarta EE 환경에서 정상적으로 동작.
  • 예약 및 수리 버튼 로직과 시간대 문제 모두 해결.

제가 개발을 시작했던 첫 JSP 프로젝트를 다시 살펴보며, 여러 테스트를 진행했습니다.
그 과정에서 정말 많은 에러를 발견할 수 있었고, 당시에 제가 얼마나 부족했는지를 다시금 느끼게 되었습니다.
초심으로 돌아간 마음으로 JSP 코드를 하나하나 다시 테스트하고 수정하면서, 그동안 놓치고 있던 것들을 깨닫고 배울 수 있었습니다.

앞으로도 개선과 학습을 반복하며 더 나은 결과를 만들어가겠습니다.

'🏅 Project > Team Project' 카테고리의 다른 글

ERP 시스템 : ERP:RE 기업 프로젝트 회고  (0) 2024.11.22
SUSUMA : 수리 전문가 매칭 플랫폼 첫 프로젝트 회고  (0) 2024.11.10
'🏅 Project/Team Project' 카테고리의 다른 글
  • ERP 시스템 : ERP:RE 기업 프로젝트 회고
  • SUSUMA : 수리 전문가 매칭 플랫폼 첫 프로젝트 회고
hjwjo
hjwjo
백엔드 및 풀스택 개발에 관심 있는 초보 개발자의 개발 블로그입니다.
  • hjwjo
    Jeongwoo's Devlog
    hjwjo
  • 전체
    오늘
    어제
    • Devlog
      • 🗄️ Backend
        • Java
        • Spring
        • JPA
        • SQL
        • JSP
        • AWS
        • GCP
        • Linux
        • GitHub
        • ML
        • Security
      • 🖥️ Frontend
        • React
        • CSS
      • 🏅 Project
        • Hackathon
        • Team Project
      • 📊 Algorithm
        • BOJ
      • 📜 Certs
        • ADsP
        • SQLD
        • 정보처리기사
      • 📖
        • JavaScript
      • 일상
        • 면접후기
  • 블로그 메뉴

    • 홈
    • Devlog
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    jsp
    SQL
    DML
    스프링
    GCP
    자바
    정보처리기사
    백준
    Spring
    ADsP
    springboot
    쿼리
    스프링부트
    http
    AWS
    java
    java기초
    데이터베이스
    정처기
    백엔드
  • 최근 댓글

  • 최근 글

hjwjo
프로젝트 유지보수 : SUSUMA 수리 전문가 매칭 플랫폼
상단으로

티스토리툴바