Java와 Database에 대해서 학습을 끝내고 팀원들과 프로젝트 주제를 선정하였습니다.
주제 선정
여러 주제들이 나왔지만 다양한 기능을 만들어볼 수 있는 "사용자 시점의 은행시스템"을 주제로 선정하였습니다!
기능 구상
기능 구상에 앞서,
은행 시스템에서 필요한 큼지막한 주체들을 생각해봤습니다.
- 유저
- 계좌
- 은행지점
- 직원
이렇게 크게 4가지가 나왔습니다.
이후, 각 주체가 가지면 좋을만한 기능에 대해서 구상해 보았습니다.
유저
- 회원가입 / 로그인 / 로그아웃
- 유저 정보 생성 / 수정 / 삭제
- 유저의 신용도 평가
계좌
- 계좌 생성 / 조회 / 해지
- 입금 / 출금 / 입출금 내역 조회
은행 지점
- 지점 조회
- 해당 지점 소속 모든 직원 조회
직원 조회
- 직원 조회
데이터 모델링

역할 배분
유저 : 이승규
계좌 : 김세현, 조진호
지점 : 박현서
직원 : 김부자
패키지 구조
비즈니스 Domain별로 나누어 설계하는 방식 (DDD) 채택.
예상 Issue
Issue1
DB를 클라우드에 올리지 않아 개발 과정에서 DB를 각각 만들어야한다는 문제.
Solution
DB initializer를 만들어 application 실행시 DB를 initialize 하는 방법으로 공통된 DB구조와 더미데이터를 사용
(더 큰 규모에선 매우 비효율적인 방법이지만 소규모이기 때문에 빠른 개발을 위해 채택)
Issue2
같은 파트를 많은 사람이 공동작업 할수록 충돌 가능성이 많아 파트별로 최대한 겹치지 않게 분업했지만
계좌와 유저 파트의 분량이 너무 많다는 문제
Solution
지점파트와 직원파트가 비교적 기능이 적기 때문에 지점파트와 직원파트의 기능 추가 or
지점파트와 직원파트의 기능 완료 후 도와주기
'🚀Project' 카테고리의 다른 글
| Trouble Shooting (0) | 2024.04.22 |
|---|---|
| [은행시스템] 코드 리팩토링 #5 (0) | 2024.04.01 |
| [은행시스템] 최종 #4 (0) | 2024.03.31 |
| [은행시스템] 방문 예약 기능 #3 (0) | 2024.03.31 |
| [은행시스템] 모든 지점 조회 기능 #2 (0) | 2024.03.31 |