- 소프트웨어 테스트 포럼 페이지 개발 프로젝트를 소개한다.
- github: https://github.com/scribnote5/sw_test_forum
계기
- 회사 업무 중 업무관리 시스템의 부재로 정리 및 공유의 불편함을 느꼈다.
- 현재 회사에서의 주요 업무는 신뢰성 시험이며, 이중 정적 시험(코드 규칙) 가이드 라인은 쌓여 있는 데이터를 잘 사용하면 업무 시간을 크게 단축시킬 수 있다. 현재 정적 시험 가이드라인은 과거 엑셀 파일로 작성한 가이드라인을 참고한다. 그러나 엑셀 파일에서 원하는 규칙을 검색할 때 너무 많은 시간이 소요되고 팀원 간 그리고 다른 부서 팀간 공유가 되지 않아 이를 개선하고 싶다.
- 정적 시험과 같은 사유로 신뢰성시험 개요, 동적시험, 기술 지원 등 업무 전반에 관련하여 전산 관리 시스템이 필요하다고 생각한다. 만약 해당 프로젝트가 성공적으로 마무리되고 회사 내에서 사용하는 사람들이 많아진다면 다양한 업무 관리 시스템을 부가적으로 구현해볼 생각이다.
- 과거 회사 재직 중일 때, Project Lab에서 Spring을 사용하여 업무 시스템을 개발하였다. 과거 개발한 프로젝트 보다 조금 더 높은 코드 퀄리티와 최신 기술 스택을 적용하고 싶다는 생각이 들었다.
- 이러한 계기들로 Spring을 사용하여 체계적으로 개발하고 싶다는 생각을 가지게 되었으며, 이번 규칙 설명 홈페이지 개발에 도전하게 되었다.
목표
- Spring boot를 사용하여 개발하며, Project Lab을 기반으로 하여 진행한다.
- 가장 최적화되고 효율적인 방법을 찾아서 개발하며, 새로운 기술 스택을 사용한다.(JWT, Vue.js 3 적용)
- 체계적인 프로젝트 구조를 가진 상태에서 개발한다.(패키지 구조, 폴더 구조, 사용하는 의존 라이브러리 등)
- 기존 엑셀 파일의 데이터 마이그레이션을 수행한다. 단, 일부 불가능한 데이터의 경우 마이그레이션에서 제외한다.
- 새로 개발한 규칙 설명 페이지의 서버 운영 및 배포를 수행한다.
- 현재 명확환 요구사항이 정의되지 않았으며, 팀원과지속적으로 소통하면서 이를 반영할 계획이다.
- 프로젝트 개발 과정을 블로그에 게시한다.
프로젝트 기간
- 예상 기간: 2021.06.16 ~ 2021.09.31
- 참고로 해당 프로젝트는 언제 완료될지 보장하지 못한다. 왜냐하면 개인 시간을 투자하여 개발하는 프로젝트이기에, 회사 업무가 바빠지면 시간 투자가 어렵기 때문이다.
블로그에 게시되는 글은?
- 웹페이지를 개발하면서 해결한 문제와 코드를 순차적으로 공유하려고 하였다. 구현된 코드는 버그 및 결함이 발생할 수 있기에, 프로젝트 개발에 따라 코드가 지속적으로 변경 되었다. 따라서 지속적으로 변경되는 코드를 소개하기 어렵다고 느꼈기에, Project Rule 카테고리 게시글에서는 잘못된 설명이나 잠재적인 버그, 오류가 존재하는 코드가 제공될 수 있다.
- 프로젝트를 개발하면서 얻는 지식, 기능을 구현하고 어려움을 해결하는 과정을 간략하게 소개할 예정이다. 이 중 조금 더 깊숙히 다루고자 하는 주제는 별도의 게시글로 작성할 예정이다.
개발 환경
- OS: Windows 10
- Java: Open JDK 14
- DB: 10.3 MariaDB
- WAS: Spring Boot 내장 Tomcat
- IDE: IntelliJ 2021.1
벡엔드
- 백엔드 프레임워크: Spring boot 2.5.1
- ORM: Spring Data JPA
- Authentication: Spring Security, JWT
- 동적 쿼리: QueryDSL 4.4.0
- 의존성 관리: Gradle 6.8
프론트엔드
- SPA: Vue.js 3.1.1
- Bootstrap 5.0.1
- WYSIWYG: CKEditor 5
Comments powered by Disqus.