새로운 기능 개발시 생각해볼 것.
1. 해당 기능구현을 위해서 필요한 데이터들을 현재의 DB에서 저장되고 관리되는데 문제가 없는가?
> 문제가 발생하여 해결하기 위한 방법으로 데이터를 조금 변형해도 되는가?
> 데이터 변형이 불가능하다면 기능 타협을 통해서 구현이 가능한가?
> 기능타협이 불가능하다고 하더라도 새로운 DB종류를 사용한다던지 하여 개발할 수 있는가?
2. 기능 개발에 필요한 라이브러리가 기존의 프로젝트의 프레임워크, RDB, 자바버전 등등 과 호환이 가능한가?
> 호환이 불가능해도 구현할 수 있는가? (라이브러리의 기능을 자체개발 한다던지 등)
> 기존의 프레임워크를 교체할 수 있는가? 교체할 필요성이 있는가?
3. 새로운 기능이 시스템의 전반적인 성능에 영향을 미치는가?
> 해당 기능으로 인해 발생하는 DB에 대한 요청수가 얼마나 될 것인가?
> 해당 기능으로 인해 발생하는 네트워크 부하가 얼마나 될 것인가?
> 해당 기능이 메모리나 CPU 자원을 많이 소모하는 작업이지는 않는가?
(ex : 이미지, 비디오 데이터 처리, 스트리밍 데이터 처리, 실시간 데이터 수집, SSL 통신에서 일어나는 암호화, 복호화 과정 등)
'Backend' 카테고리의 다른 글
폐쇠망에서 maven에 라이브러리 추가하고 빌드하는 방법 (0) | 2023.09.13 |
---|---|
빌드 관리도구 - Maven과 Gradle (0) | 2023.01.22 |
Maven과 Gradle 차이점 (0) | 2022.01.05 |
WAS란 무엇인가? + Servlet 이란? (0) | 2021.12.27 |