정도유아이티 시스템 통합관리
기존에 개발된 사내 통합관리 시스템에서 여러 공간정보 시스템의 설치 기관·서버·일정·사용자·통계 기능을 추가하고 운영 오류를 개선한 유지보수 프로젝트입니다.
- 역할
- 플랫폼개발부 개발2팀 · 기존 사내 시스템 프런트엔드·백엔드 기능 추가 및 유지보수
- 사용 기술
공개 운영 화면
운영 화면 기록
프로젝트 개요
사내에서 지원하는 여러 공간정보 시스템의 기관별 설치·운영 정보를 통합 관리하는 업무 도구입니다. 기관과 서버의 기본 정보, 설치 일정, 라이선스 관련 파일, 사용자와 권한, 공통코드를 연결하고 전국 설치 현황을 권역과 시스템 유형별로 조회할 수 있도록 구성했습니다.
프런트엔드 기능 확장
• React 17·React Router·Ant Design으로 기관 목록·상세·등록·수정, 일정, 통계, 공통코드, 사용자 관리 화면을 연결 • 시스템 유형에 따라 기관·서버 입력 양식을 분기하고 서버 추가·삭제, 주소 검색, 유효성 검사, 라이선스 파일 업로드·다운로드 흐름 구현 • OpenLayers 6로 기관 좌표를 시스템별 포인트와 권역 경계 위에 표현하고, 선택한 기관의 명칭·위치·시스템 유형을 조회하는 분포 지도 구성 • ECharts로 권역별 설치·미설치 현황과 시스템별 분포를 시각화하고, 시스템 선택 메뉴와 접이식 사이드바로 통계 탐색 개선 • 화면 너비에 따른 레이아웃과 모바일 UI, 검색 상태 유지, 권한별 메뉴·등록 동작을 보완하고 Axios 인증·오류 처리 흐름 개선
백엔드 기능 확장
• Java 8·Spring MVC의 Controller–Service–DAO 구조와 MyBatis·Oracle로 기관, 서버 설정, 사용자, 공통코드, 일정, 통계, 지도 데이터 API 구현·보완 • 시스템 유형에 따라 기관과 복수 서버 또는 서버 설정을 함께 저장·수정·삭제하도록 트랜잭션 처리하고 상세 조회 시 연결 데이터를 조합 • 권역·설치 여부·시스템 유형별 집계 쿼리와 지도용 기관 좌표 조회를 추가해 OpenLayers 지도와 ECharts 통계에 제공 • Spring Security의 JWT 인증과 BCrypt 비밀번호 처리, 사용자 승인·소속·권한 관리 흐름을 프런트엔드와 연계 • 다중 파일 업로드·다운로드와 Apache POI 기반 기관·서버 정보 Excel 출력 기능을 관리 업무에 연결
첫 담당 프로젝트에서 마주한 레거시 React
입사 후 처음 맡은 프로젝트였으며, 기존 프런트엔드는 React 17을 사용하면서도 함수형 컴포넌트와 Hooks가 아닌 클래스형 컴포넌트의 state·생명주기·this 바인딩을 중심으로 구성되어 있었습니다. 익숙한 개발 방식과 달라 화면별 상태 흐름과 반복 코드를 파악하는 데 난항을 겪었지만, 전면 재작성 대신 기존 구조와 운영 영향을 먼저 이해한 뒤 필요한 기능을 작은 단위로 추가하고 반복 코드를 일부 정리했습니다. 이 과정에서 레거시 코드를 읽고 변경 범위를 통제하며 운영 중인 시스템을 안전하게 개선하는 방법을 배웠습니다.
기능 추가·유지보수와 기여 범위
Git 이력에서 2024년 1월부터 10월까지 시스템 유형 추가, 기관·서버 관리 통합, 시스템별·권역별 통계, 주소 검색과 모바일 화면, 사용자 소속·권한, 신규 유형의 지도·차트, 서버 등록과 삭제 오류 개선 작업을 확인했습니다. 시스템의 최초 설계·구축자가 아니라 기존 코드를 이어받아 요구 기능을 추가하고 오류를 수정한 범위이며, 개발2팀 구성원으로서 수행한 유지보수 기여만 기록합니다.
검증 및 공개 범위
기능과 기술은 제공된 두 저장소의 소스와 커밋 이력을 기준으로 정리했습니다. 운영 페이지는 HTTP 주소에서 접속을 확인했고 배포된 프런트엔드 번들이 제공된 로컬 빌드와 일치함을 검증했습니다. 인증 후 운영 데이터와 화면은 공개 근거로 사용하지 않았으며, 내부 주소, 계정 정보, 데이터베이스 값, 라이선스 파일과 비공개 설정은 기록에서 제외했습니다.