
핵심 실행 방법
3
시스템을 작고 간단하게
빌드한다
CHAPTER
15
성공적인 시스템은 시간이 흐를수록 발전한다. 더 많은 사람이 사용하고 더 많은 사람이 개발
하며 더 많은 기능이 추가된다. 시스템이 성장함에 따라 변경은 더 위험하고 복잡해진다. 이로
인해 변경 관리 프로세스가 더 복잡해지고 변경하는 데 필요한 시간이 증가한다. 변경을 위한
오버헤드는 시스템을 수정하고 개선하기 어렵게 만들며 기술 부채를 증가시켜 시스템의 품질
을 떨어뜨린다.
1
장에서 빠른 변경이 좋은 품질로 이어지고 좋은 품질이 빠른 변경을 가능하게 만든다고 설명
한 것의 반대 버전이라고 볼 수 있다.
코드형 인프라의 세 가지 핵심 실행 방법인 모든 것을 코드로 정의하기, 코드를 지속적으로 테
스트하고 딜리버리하기, 시스템을 작고 간단하게 빌드하기(
1
.
5
절 참고)를 적용하면 이러한 문
제를 해결할 수 있다.
이 장에서는 시스템이 성장하는 동안에도 품질을 향상시키면서 빠른 변경 속도를 유지할 수 있
도록 시스템을 더 작은 조각으로 구성하는 세 번째 핵심 실행 방법에 초점을 맞춘다. 대부분의
인프라 코딩 도구와 언어는 모듈, 라이브러리, 기타 유형의 컴포넌트를 지원한다. 그러나 인프
라 설계 사고와 실행 방법은 아직 소프트웨어 설계의 성숙도 수준에 도달하지 못했다.
따라서 이 장에서는 수십 년에 ...