포트폴리오

회원전용 서비스 입니다.

전자·현장투표 통합 관리 플랫폼 구축

(주)드림시스컴

#전자투표 #업무시스템 #웹 #앱

(주)드림시스컴

 

포트폴리오 소개

DreamVote는 전자투표와 현장투표를 함께 지원하는 하이브리드 투표 관리 플랫폼입니다.

투표 생성, 명부 업로드, 유권자 인증, 현장 QR 운영, 메시지 발송, 결과 집계, 보고서 출력까지 투표 운영 전 과정을 하나의 시스템에서 처리할 수 있도록 구축하였습니다.

특히 시스템 운영자, 투표 관리자, 현장 운영자, 유권자 등 역할별 사용 시나리오를 분리하고, 온라인과 오프라인 현장을 동시에 고려한 운영 구조를 설계하여 실제 운영형 전자투표 서비스에 필요한 안정성, 추적성, 보안성을 확보하는 데 중점을 두었습니다.

현장 운영에서는 QR 발급, 전자투표 철회 후 현장 재투표, 동기화 로그 관리 기능을 제공하고, 유권자 화면에서는 모바일 중심의 인증 및 투표 흐름을 단순화하여 참여 편의성과 운영 효율을 함께 높였습니다.

 


 

프로젝트 개요

1. 요구사항 분석

  • 전자투표와 현장투표를 하나의 선거 안에서 함께 운영할 수 있는 하이브리드 구조 요구사항 정의
  • 시스템 운영자, 투표 관리자, 현장 운영자, 유권자 등 역할별 권한 분리 및 접근 범위 설계
  • 명부 업로드, 인증 방식 선택, 현장 참석 처리, 철회 및 재투표, 결과 조회 등 전체 투표 수명주기 요구사항 정리
  • 개인정보 보호, 감사 로그, 중복 투표 방지, 마감 전 결과 비공개 등 운영·보안 정책 반영

 

2. UI/UX 설계 및 구현

  • 관리자 콘솔에서 투표 생성 마법사, 투표 상세 탭, 명부 관리, QR 관리, 발송, 결과, 보고서, 권한, 마감 기능을 통합 제공
  • 유권자 화면은 모바일 중심으로 설계하여 링크 진입부터 인증, 안건별 투표, 서명, 완료 확인까지 단일 흐름으로 구성
  • 현장 운영 화면에서 참석자 검색, 서명 확인, 전자투표 철회, QR 배부, 상태 확인이 빠르게 이루어지도록 전용 UI 구현
  • 관리자/유권자/현장 화면을 역할별로 분리하면서도 동일한 시스템 안에서 일관된 사용 흐름 유지

 

3. 프론트엔드 및 백엔드 개발

  • 프론트엔드: Next.js App Router 기반 관리자/유권자/현장용 웹 화면 개발, 반응형 UI와 모바일 투표 플로우 구현
  • 백엔드: Spring Boot 기반 인증, 투표 생성, 명부 관리, 안건 관리, 투표 제출, 결과 집계, 보고서, QR, 동기화 API 개발
  • 인증/연동: JWT 기반 관리자 인증, 유권자 토큰 세션, PortOne 본인인증, SMS 인증, 알리고 메시지 발송 기능 연동
  • 보안/데이터: 개인정보 마스킹 및 암호화 저장, 감사 로그 기록, 중복 투표 방지, 명부 스냅샷 고정 구조 반영

 

4. 테스트 및 배포

  • 역할별 권한 접근, 투표 기간 제어, 중복 투표 차단, 인증 실패/만료 처리 등 핵심 시나리오 검증
  • 명부 업로드, QR 발급, 철회 처리, 메시지 발송, 결과 조회, 보고서 다운로드 기능 테스트
  • 현장 운영 및 동기화 데이터 import/export 흐름 검증
  • Docker Compose 기반으로 프론트엔드, 백엔드, DB를 통합 배포할 수 있는 실행 환경 구성

 


 

주요 기능

1. 하이브리드 투표 생성 및 운영

  • 전자투표, 현장투표, 혼합형(HYBRID) 투표를 지원
  • 투표 생성 마법사에서 기본 정보, 명부 업로드, 정책, 채널, 인증 방식을 단계별 설정 가능
  • 투표 상세 화면에서 개요, 명부, 질의, 안건, 발송, QR, 결과, 보고서, 권한, 마감까지 통합 관리

 

2. 유권자 인증 및 모바일 전자투표

  • 개인화 링크 기반 진입과 정보 인증, SMS 인증, PortOne 본인인증 지원
  • 안건별 스텝형 투표 UI와 선택 정책 검증 기능 제공
  • 전자 서명, 추가 의견 입력, 제출 완료 후 영수증/투표용지 확인 기능 구현
  • 기간 외 접근 차단, 중복 투표 방지, 조회 전용 접근 제어 적용

 

3. 현장 투표 운영 및 QR 관리

  • 현장 참석자 검색, 서명 확인, 현장 참석 상태 관리 기능 제공
  • 온라인 투표 완료자의 철회 후 현장 재투표 전환 프로세스 지원
  • QR 코드 일괄 생성, 사용/미사용/무효 관리, PDF 출력 기능 구현
  • 현장 데이터 export/import와 동기화 로그를 통해 오프라인 운영 환경 대응

 

4. 운영 자동화 및 관리자 기능 강화

  • 명부 조회/수정/CSV 다운로드, 마스킹, 철회사유서 업로드 기능 제공
  • 알리고 기반 문자 발송, 발송 상태 제어, 통계 조회, 이력 관리 기능 구현
  • 결과 집계와 서면결의서 PDF/JPG/ZIP 다운로드 기능 제공
  • 감사 로그와 RBAC를 통해 주요 변경 이력과 권한 범위를 체계적으로 관리

 


 

작업 범위

  • 하이브리드 전자·현장투표 플랫폼 구조 설계
  • 관리자 콘솔, 유권자 화면, 현장 운영 화면 설계 및 구현
  • 투표 생성, 명부 관리, 안건 관리, 인증, 투표 제출, 결과 집계 기능 개발
  • QR 발급, 철회 처리, 동기화 import/export, 메시징 자동화 기능 구현
  • 개인정보 보호, 감사 로그, 권한 관리, 배포 환경 및 운영 문서 정리

 


 

사용 기술

구분기술
서버Java 17, Spring Boot 3, Spring Security, Spring Data JPA
데이터베이스MariaDB, Redis
프론트엔드Next.js 14, React, TypeScript, Tailwind CSS
인증/외부연동JWT, PortOne, Aligo SMS
문서/출력OpenPDF, PDFBox, Apache POI, ZXing QR
인프라Docker, Docker Compose, Nginx

 


 

프로젝트 성과 및 의의

DreamVote를 통해 전자투표와 현장투표를 하나의 서비스 안에서 통합 운영할 수 있는 기반을 구축하였습니다.

단순 투표 화면 구현에 그치지 않고, 투표 생성부터 명부 관리, 인증, 현장 운영, 메시지 발송, 결과 집계, 보고서 출력까지 실제 운영에 필요한 전체 업무 흐름을 시스템화함으로써 운영 효율을 크게 높일 수 있는 구조를 마련하였습니다.

또한 역할 기반 권한 제어, 개인정보 보호, 감사 로그, 중복 투표 방지, 기간 제어 등 전자투표 서비스에서 중요한 보안 및 무결성 요소를 함께 반영하여 실서비스 운영에 적합한 수준의 관리 체계를 확보하였습니다.

현장 운영과 동기화 구조까지 고려한 설계를 통해 온라인 중심 서비스에 그치지 않고 오프라인 현장 투표 환경까지 확장 가능한 플랫폼으로 완성하였으며, 향후 다양한 단체·조합·기관의 투표 업무에 유연하게 적용할 수 있는 구조를 갖추었습니다.

  • 2026.03
  • (주)드림시스컴