실용주의 프로젝트
오늘 TIL 3줄 요약
- 실현하려면 계획하라.
- 유행하는 것이 아니라 실제로 잘 맞는 것을 사용하라.
- 일찍 테스트하고, 자주 테스트하라. 자동으로 테스트하라.
TIL (Today I Learned) 날짜
2022. 04. 05
오늘 읽은 범위
9장. 실용주의 프로젝트
책에서 기억하고 싶은 내용을 써보세요.
- 소프트웨어 개발 방법론의 목표는 사람들이 함께 일하는 것을 돕는 것이다.
Tip 84
작고 안정적인 팀을 유지하라.- 팀 전체가 깨진 창문을 용납하지 않아야 한다. 사소함 결점을 아무도 고치지 않고 놔두어서는 안 되고, 반드시 제품의 품질에 책임을 져야 한다.
- 여러분의 팀이 진정 개선하고 혁신하고 싶다면 계획을 세워야 한다.
- 지속적인 개선이 일어나려면 주위를 둘러보고 무엇이 잘되고 무엇이 잘되지 않았는지 확인한 다음 변화를 일으킬 시간이 있어야 한다.
- 매끄럽다는 것은 질문하기, 진행 상황이나 문제, 통찰 및 새롭게 알게 된 점을 공유하기, 또 동료가 뭘 하고 있는지 알고 있기가 쉽고 거추장스러운 단계가 적다는 뜻이다.
Tip 86
모든 기능을 갖춘 팀을 조직하라.- 일관성과 정확성을 모두 보장하는 확실한 방법은 팀이 하는 모든 일을 자동화하는 것이다.
- 각 팀원이 자신의 방식대로 빛나게 하라. 팀원들을 지원하기에, 그리고 프로젝트가 가치를 만들어 내기에 딱 좋을 만큼의 구조를 제공하라.
- "잘 맞는 것"을 어떻게 알 수 있을까? 한번 해 보라.
- 진짜 목표는 작동하는 소프트웨어를 제공 함으로써 사용자가 즉각적으로 새로운 일을 할 수 있게 되는 것이다.
- 빌드와 릴리스 과정이건, 테스트나 프로젝트 서류 작업이건, 혹은 프로젝트에서 거듭 발생하는 다른 어떤 작업이건 간에 일상적인 작업은 모두 자동화해야 한다.
Tip 89
버전 관리 시스템으로 빌드, 테스트, 릴리스를 운용하라.- 코드를 작성하자마자 테스트해야 한다.
Tip 91
모든 테스트가 끝날 때까지는 코딩이 끝난 게 아니다.- 어떤 버그를 감지해 내는 테스트를 작성한 후에, 그 버그가 의도적으로 생기도록 한 다음 테스트가 경보를 울리는지 확인하라. 이렇게 하면 실제로 버그가 생겼을 때 테스트가 그걸 잡아낼 것이라고 확신할 수 있다.
- 버그가 기존 테스트의 그물을 빠져나갔다면 다음번에는 그걸 잡아낼 수 있도록 새 테스트를 추가해야 한다.
- 개발자로서 우리의 목표는 사용자를 기쁘게 하는 것이다.
- 도메인에 대한 우리의 지식이 늘어남에 따라 근본적인 사업 문제를 해결하기 위해 우리가 맡지 않은 다른 부분에 대해서도 더 좋은 제안을 할 수 있게 된다.
Tip 96
사용자를 기쁘게 하라. 그저 코드만 내놓지 말라.- 사람들이 코드에 붙은 여러분의 이름을 보고 그것이 튼튼하고 잘 작성되었으며 제대로 테스트되었을 뿐 아니라 훌륭히 문서화되었을 것이라고 기대하도록 만들자.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
하루하루 새로 생겨나는 요구 사항을 해결하며 일상적인 반복을 하면서 '본질'을 놓치고 있었던 건 아닌지 하는 생각이 들었다. 내가, 더 나아가서 우리가 무엇을 위해 일하고 어떻게 함께 일해야 하는지, 기존의 관습을 쳇바퀴처럼 따르는 것이 아니라 왜 개선해야 하는지 생각해보게 되었다. 같이 프로젝트 하는 동료들도 읽어보면 좋을 것 같은 내용이었다!