Backend/SQL(Mariadb_ver) 및 DB
DB 설계 - 1. 요구 사항 수집 분석
amelia-suyeon
2024. 1. 11. 20:28
필자는 이번에 백엔드 전체를 맡게 되면서, DB설계도 해보았다.
(물론, 테이블의 개수가 엄청 많지는 않지만, 배치 파이프 라인을 통해 진행 했기 때문에 덕분에 DB에 대한 두려움을 덜게 되었던 것 같다.)
먼저, 어떻게 하면 좋을지 막막하여, 요구 사항 수집 분석 부터 시작해보았다.
여기서, 가장 중요한 것 2가지를 추려보았다.
1. 어떤 시스템을 구축할 것 인가?
2. 요구 사항을 충족하기 위해서 어떤 데이터가 필요하며, 어떤 기능들이 추가되어야 하는가?
-> 이것을 파악하기 위해서는 만들고자 하는 서비스의 목적과 정보에 대한 분석이 중요하다는 것을 깨닫게 되었다!
[ 진행하려는 프로젝트의 큰 핵심은 무엇인가?]
-> 스마트팜의 경우, 실시간 적재되는 데이터(온도,습도, 풍향, 등등) 의 모니터링과 설정된 이상치에 따른 로그 및 알림 발송 기능을 최 우선으로 원하는 것 같았다.
[ 어떤 기능이 필요한가? ]
1. 일간, 주간 데이터 -> 대시보드
2. 최근 이상 데이터 로그 -> 이상치 설정 테이블 필요
3. 어떤 온실에 대해 특정 횟수 이상 이상치 및 결측치가 발생 할 경우 -> 알람 이메일 발송
4. 개별 이상치 로그 필요(히스토리성), 일자, 이상데이터 내용, 센서, 비고
5. 결측치가 잦을 경우 -> 하드웨어 결함 판단 -> 알람
6. 이상치 범위 커스텀 -> 히스토리성
7. 히스토리성 데이터 선택 및 기간 별 엑셀 다운로드 기능
8. 로그인 기능
이렇게, 프로젝트의 목적에 따라 요구사항을 먼저 분석하는 것이 DB설계의 첫걸음 이었고, 이것을 바탕으로 설계했을 때, 최적화된 시간으로 생성 할 수 있었다!