'웹 애플리케이션 개발 프로젝트 기반 Full-Stack 개발자 양성 과정'에서 진행한 팀 프로젝트로, 수료 후에도 개인적으로 계속해서 학습하며 프로젝트를 개선했습니다.학교폭력은 사회적으로 매우 중요한 문제로 인식되고 있습니다. 학생들의 안전과 행복한 교육환경을 위해 학교폭력을 예방하고 근절하는 것이 필수적입니다. 학교폭력 신고 및 대응 커뮤니티 사이트를 통해 학교폭력에 대한 사회적 관심을 높이고, 안전하고 행복한 학교생활이 될 수 있도록 도움을 주는 것이 저희의 목표입니다.
- 익명 신고 기능: 피해 학생들과 목격자들이 자신의 신분을 보호하면서도 어렵지 않게 신고할 수 있으며, 학교폭력 예방과 대응을 위한 정보를 수집할 수 있습니다.
- 1대1 채팅: 피해 학생들이 서로 소통하며, 서로의 경험과 조언을 공유할 수 있는 안전한 공간을 제공합니다.
- 전문 상담 서비스: 학교폭력 관련 상담이나 법률 도움을 요청할 수 있습니다. 전문가 도움을 통해 학교폭력 사건에 대해 신속하고 효과적으로 대응할 수 있습니다.
- 광고 및 후원: 사이트 내에서 광고를 통한 수익 모델이나 공익 단체, 기업들의 후원을 받을 수 있습니다.
- 유료 부가 서비스: 향후 추가 기능이나 특별한 서비스를 제공하여 이용자들에게 유료로 제공함으로써 수익을 창출할 수 있습니다.
- 접근성과 무료 서비스: 기본적인 신고 및 상담 서비스는 무료로 제공될 수 있어야 하며, 이를 통해 학교폭력 예방 및 대응을 위한 접근성을 높일 수 있습니다.
- 공익적 파트너십: 공익 단체, 교육 기관, 학교 등과의 파트너십을 구축하여 학교폭력 예방과 대응을 위한 교육 프로그램, 자료 등을 공동으로 개발하고 제공할 수 있습니다.
- 데이터 활용과 연구: 수집된 익명의 학교폭력 신고 데이터를 분석하여 문제의 규모와 패턴을 파악하고, 학교폭력 예방에 도움이 되는 정책과 프로그램 개발을 위한 연구에 활용할 수 있습니다.
- OS: Windows 11
- Frontend: HTML, CSS, JS
- Backend: Spring Boot, MariaDB, MySQL, H2
- 1차: 2023년 5월 24일 ~ 6월 5일
- 2차: 2023년 9월 6일 ~ 9월 20일
- 빌드를 Maven에서 Gradle Kotlin으로 변경
Gradle Kotlin DSL은 Maven보다 강력하고 유연한 빌드 스크립트를 제공합니다. Kotlin DSL을 사용하면 빌드 스크립트를 더 간결하게 작성할 수 있으며, 더 다양한 빌드 옵션을 활용할 수 있습니다. - Java 8에서 20으로 업그레이드
Java 8에서 Java 20으로 업그레이드하면 최신 Java 기능과 개선 사항을 활용할 수 있습니다. 이렇게 하면 보안 및 성능 이점을 얻을 수 있으며, 최신 라이브러리 및 도구와의 호환성도 향상됩니다. - 관리자 회원 웹페이지 추가
회원가입 비밀번호 요구사항 강화, 관리자 형태에 따른 게시판 목록 표시 및 답변 폼 제출 활성화했습니다.
- 빌드를 Maven에서 Gradle Kotlin으로 변경
- 💁♀️조하연 (팀장): 메인, 신고, 비공개 온라인 상담, 방문 상담, 상담사 연결, 로그인, 정보
- 💁♀️장채윤: 채팅, 상담사 연결, 로그인, 정보
- 마스터 관리자
모든 기능과 데이터에 접근할 수 있고, 필요한 경우 권한을 부여하고 관리할 수 있는 마스터 관리자가 있으면 좋을 것 같습니다. - 테스트 코드
테스트 코드를 통해 안정성과 신뢰성을 확보하고, 새로운 기능을 추가하거나 수정할 때 예상치 못한 문제를 미리 발견할 수 있습니다. - 페이지네이션
데이터나 컨텐츠가 많을 때 더 나은 내비게이션을 제공하고, 시스템의 성능을 향상시키기 위해 페이지네이션 기능이 필요합니다.
우선 처음으로 참여하는 웹 개발 팀 프로젝트다 보니 전체적인 개발 진행 프로세스를 경험하는 것에 초점을 둔 것 같습니다. 요구 분석, 화면 설계, DB 설계, 컨트롤러 설계 등 구현 단계에 돌입하기 전 필요한 사전 작업이 굉장하다는 것을 알게 된 것 같아요.
기술 면에서는 이번에 처음으로 Spring Boot, IntelliJ, Git 및 GitHub를 사용하면서 MVC 패턴에 대한 이해도가 조금 생긴 것 같습니다. 또한, Spring Boot로 작업하면서 Spring Framework와의 차이점도 알게 되었고 Git와 GitHub도 어떤 방식으로 활용이 되는지 배우게 된 것 같습니다.
전반적으로 많은 것을 배우고 얻어간 것 같습니다.
이번 프로젝트를 개발하면서 기술적으로 부족한 부분을 알게 되고 이 부분을 공부하면서 개발하다보니 실력이 한단계 더 성장하였습니다. 또한 오류가 발생한 부분을 해결하기 위해 노력하다 보니 문제 해결 능력이 더 향상되었습니다.