포트폴리오/ohouseClone

0.오늘의집 클론 포트폴리오

2023. 8. 2. 15:49
목차
  1. 0. 단계
  2. 1. 백엔드 개발전 사전작업
  3. 2. 개요
  4. 3. 요구사항 분석
  5. 4.  ERD-Diagram
  6. 5. API 명세서
  7. 6. KanbanBoard
  8. 7. WBS
  9. 8. CI/CD
  10. 9.  참고자료
  11. 책

0. 단계

신입 백엔드 개발자 포트폴리오를 찾아본결과 자신이 이렇게 구성하고 만들어봤다 이런거를 어필할 필요가 있기때문에

보통 주제로 쇼핑몰, 게시판을 많이 선택하므로 둘다 만족할만하며서 내가 자주 애용하는 앱을 좋을것 같아 쇼핑몰+ 게시판의 역할을 하는 '오늘의 집'을 클론하기로 하였다.  먼저 일차 완성인 게시판을 하였다.

 

1. 백엔드 개발전 사전작업

  1. 요구사항 정의: 프로젝트의 목적과 요구사항을 명확히 정의해야 합니다. 어떤 기능을 개발해야 하는지, 어떤 데이터를 다루어야 하는지 등을 파악하여 개발에 필요한 방향성을 결정합니다.
  2. 기술 스택 선택: 어떤 프로그래밍 언어, 프레임워크, 데이터베이스 등을 사용할지 결정합니다. 이는 프로젝트의 특성과 개발자들의 스킬에 따라 달라집니다.
  3. 프로젝트 구조 설계: 백엔드 애플리케이션의 구조를 설계합니다. 이는 폴더 구조, 모듈화, 라우팅, 데이터베이스 스키마 등을 포함합니다.
  4. 데이터베이스 설계: 사용할 데이터베이스의 테이블 구조와 관계를 설계합니다. 데이터의 유형과 정규화를 고려하여 데이터베이스 스키마를 설계합니다.
  5. 보안 및 인증: 사용자 인증과 권한 관리를 위한 방법을 결정하고, 보안적인 측면을 고려하여 개발합니다.
  6. 개발 환경 설정: 개발에 필요한 IDE(통합 개발 환경) 또는 텍스트 에디터, 개발 서버, 데이터베이스 서버 등을 설정합니다.
  7. 버전 관리: 프로젝트 코드를 버전 관리 시스템(Git 등)으로 관리하여 변경사항을 추적하고 협업을 용이하게 합니다.
  8. 개발 가이드라인: 개발자들이 일관된 코드 스타일을 유지할 수 있도록 코드 컨벤션과 가이드라인을 정의합니다.
  9. 테스트 계획: 단위 테스트, 통합 테스트, 기능 테스트 등을 어떻게 진행할지 계획합니다.
  10. CI/CD 설정: 앞서 언급한대로 CI/CD 파이프라인을 구축하고 설정하여 지속적인 통합과 배포를 자동화합니다.
  11. 개발 일정 수립: 프로젝트 일정과 마일스톤을 설정하여 개발 진행 상황을 추적하고 목표를 달성하기 위한 로드맵을 수립합니다.

이러한 사전 준비 작업들을 철저히 수행함으로써 백엔드 개발을 더 효율적으로 진행할 수 있으며, 개발 초기에 발생할 수 있는 문제를 미리 예방하는 데 도움이 됩니다. 또한 팀원들 간의 협업이 원활하게 이루어지도록 도움을 줄 수 있습니다.


2. 개요

  • 프로젝트 명칭 : ohouse clone
  • 개발인원 :1명
  • 개발기간 : 23.08.11 ~ 23.10.31
  • 주요기능
    • 사용자 회원가입 페이지
      • 이메일과 비밀 번호로 회원가입할 수 있는 엔드 포인트
      • 이메일과 비밀번호에 대한 유효성 검사를 구현 및 암호화 중복검사 
        • 이메일 조건: @ 포함 , 비밀번호 조건: 8자 이상
      • OAuth 2.0 구글,카카오로그인
    • 메인 페이지 
      • 게시글리스트, 페이징 처리 조회순 및 검색기능
    • 게시글 페이지
      • 메인 페이지에서 글쓰기 클릭하는 페이지
  • 개발언어 : java 17
  • 개발환경 : Springboot 3.0.6 , jpa,querydsl, SpringSecurity, thymleaf, Oauth 2.0
  • 데이터베이스 : mysql  8.0.33
  • 형상관리 툴 : Github

 


3. 요구사항 분석

1. 회원가입 페이지

  • 유효성 검사 
    • 닉네임은 최소 2~10자이며, 특수문자를 제외한 한글 (ㄱ~ㅎ, 가~힣), 알파벳 대소문자(a~z, A~Z), 숫자(0~9)로 구성
    • 이메일 형식 패턴 적용해 확인
    • 한 개의 칸이라도 공백 혹은 빈칸이 있는지 확인하고 있다면, "OOO는 필수 입력 값입니다."의 메시지 보여주기
    • 비밀번호는 최소 8~16자 이상이며, 영문 대 소문자, 숫자, 특수문자를 사용하게 하기
    • 비밀번호는 반드시 암호화하여 저장
    • 소셜로그인(카카오)
  • 중복확인
    • 데이터베이스에 존재하는 아이디를 입력한 채 회원가입 버튼을 누른 경우 "이미 사용중인 아이디입니다."의 메시지를 보여주기
    • 데이터베이스에 존재하는 이메일을 입력한 채 회원가입 버튼을 누른 경우 "이미 사용중인 이메일입니다."의 메시지를 보여주기
    • 데이터베이스에 존재하는 닉네임을 입력한 채 회원가입 버튼을 누른 경우 "이미 사용중인 닉네임입니다."의 메시지를 보여주기
    • 모든 검사가 통과되었다면 로그인 페이지로 이동시키기

2. 로그인 페이지

  • 로그인을 하지 않을경우 아래페이지 이용가능
    • 회원가입페이지
    • 로그인 페이지
    • 메인페이지
    • 게시글 작성페이지
    • 게시글 리스트 페이지

4.  ERD-Diagram

5. API 명세서

Ohouseapi명세서.xlsx
0.01MB

6. KanbanBoard

7. WBS

WBS 포폴.xlsx
0.27MB

8. CI/CD

 

9.  참고자료

https://www.erdcloud.com/

 

ERDCloud

Draw ERD with your team members. All states are shared in real time. And it's FREE. Database modeling tool.

www.erdcloud.com

https://whatisthenext.tistory.com/123

 

Nginx 이해하기 및 기본 환경설정 세팅하기

NGINX Nginx의 개요 엔진엑스(Nginx)는 Igor Sysoev라는 러시아 개발자가 동시접속 처리에 특화된 웹 서버 프로그램이다. Apache보다 동작이 단순하고, 전달자 역할만 하기 때문에 동시접속 처리에 특화되

whatisthenext.tistory.com

https://bootdey.com/

 

Free bootstrap snippets and html examples

Bootstrap snippets and examples. A curated list of ready to use UI design elements, themes, templates, code snippets and playground

bootdey.com

https://getbootstrap.kr/

 

Bootstrap

강력하고 확장 가능하며 기능이 풍부한 프론트엔드 툴킷. Sass로 빌드 및 커스터마이징하고, 사전 빌드된 그리드 시스템 및 구성 요소를 활용하고, 강력한 JavaScript 플러그인으로 프로젝트에 생기

getbootstrap.kr

https://codepen.io/trending

 

CodePen

An online code editor, learning environment, and community for front-end web development using HTML, CSS and JavaScript code snippets, projects, and web applications.

codepen.io

https://wikidocs.net/162150

 

3-05 스프링 시큐리티

* `[완성 소스]` : [https://github.com/pahkey/sbb3/tree/3-05](https://github.com/pahkey/sbb3/tree/3-05) …

wikidocs.net

https://www.inflearn.com/roadmaps/373

 

우아한형제들 최연소 기술이사 김영한의 스프링 완전 정복 - 인프런 | 로드맵

Spring, MVC 스킬을 학습할 수 있는 개발 · 프로그래밍 로드맵을 인프런에서 만나보세요.

www.inflearn.com

책

  • 스프링 부트와 AWS로 혼자 구현하는 웹 서비스:인텔리제이 JPA JUnit 테스트 그레이들
  • 자바 ORM 표준 JPA 프로그래밍
저작자표시 (새창열림)

'포트폴리오 > ohouseClone' 카테고리의 다른 글

5. SpringSecurity 설정 및 customlogin페이지 제작  (0) 2023.09.05
4. 게시판 작성 front & member api  (0) 2023.09.05
3. 커뮤니티 게시판 서비스 api 개발 & 메인 페이지  (0) 2023.08.19
2. Entity 작성 및 구조도 체크  (0) 2023.08.16
1. 기본 Intellj setting 및 db연결 & 칸반보드 작성  (0) 2023.08.11
  1. 0. 단계
  2. 1. 백엔드 개발전 사전작업
  3. 2. 개요
  4. 3. 요구사항 분석
  5. 4.  ERD-Diagram
  6. 5. API 명세서
  7. 6. KanbanBoard
  8. 7. WBS
  9. 8. CI/CD
  10. 9.  참고자료
  11. 책
'포트폴리오/ohouseClone' 카테고리의 다른 글
  • 4. 게시판 작성 front & member api
  • 3. 커뮤니티 게시판 서비스 api 개발 & 메인 페이지
  • 2. Entity 작성 및 구조도 체크
  • 1. 기본 Intellj setting 및 db연결 & 칸반보드 작성
가끔개발
가끔개발
가끔개발
가끔쓰는개발블로그
가끔개발
전체
오늘
어제
  • 분류 전체보기 (75)
    • 오류모음집 (8)
      • Ohouse버그 (6)
    • 포트폴리오 (14)
      • ohouseClone (12)
    • JAVA&Spring (4)
      • Settting (3)
    • Back-end (4)
    • 알고리즘 문제 (20)
      • 이론 (6)
      • DFS&BFS (2)
      • 이진탐색 (1)
      • 다이나믹 프로그래밍 (0)
      • 프로그래머스 (11)
    • 개발 잡동산이 (0)
    • 취업 준비 (19)
      • 실전 JPA (15)
    • 개발 꿀팁 (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 개발자
  • 취준생
  • 신입
  • CS
  • java
  • Spring
  • intellj
  • 이것이 코딩 테스트이다
  • 자바
  • 취준
  • 면접
  • 동빈나
  • 백엔드
  • programing
  • 기술면접

최근 댓글

최근 글

hELLO · Designed By 정상우.
가끔개발
0.오늘의집 클론 포트폴리오
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.