generated from muhandojeon/study-template
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
58 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
# 9장 실용주의 프로젝트 | ||
|
||
## Topic 49 실용주의 팀 | ||
|
||
실용주의 팀은 작다. | ||
구성원이 대략 10~12명 이하여야 하고, 추가되거나 빠지는 일이 드물어야 하며, 서로가 잘 알고 신뢰하며 의존해야 한다. | ||
|
||
팀 전체가 깨진 창문을 용납하지 않아야 하며, 반드시 제품의 품질에 책임을 져야 한다. | ||
|
||
'돌멩이 수프와 삶은 개구리' 이야기에서 개구리는 서서히 변하는 환경을 감지하지 못하고 결국 삶아진다. | ||
범위의 확장, 일정 단축, 추가 기능, 새로운 환경 등 인지했던 부분의 변화를 파악하고 있어야 삶아지는 신세가 되지 않는다. | ||
|
||
성공을 원하는 팀이라면 지식과 기술에 투자하는 것을 고려해야 한다. | ||
할 일을 기능 개발로만 몽땅 채우지는 말라. | ||
새로운 기능을 만드는 것 외에도 해야 할 일들이 있다. | ||
|
||
- 구형 시스템 유지 보수 | ||
- 프로세스 회고와 개선 | ||
- 새로운 기술 탐험 | ||
- 학습 및 기술 갈고 닦기 | ||
|
||
좋은 의사소통이 중복을 피하는 핵심이다. | ||
|
||
일관성과 정확성을 모두 보장하는 방법은 자동화하는 것이다. | ||
도구 제작 역량을 갖추어서 프로젝트 개발과 서비스 배포를 자동화하는 도구를 만들고 적용하라. | ||
|
||
## Topic 50 코코넛만으로는 부족하다 | ||
|
||
화물 숭배의 함정에 빠지지 않아야 한다. | ||
눈에 잘 띄는 결과물을 만드는 데만 투자하면서 기반이 되는 작업이 마법처럼 끝나있기를 소망하면 안 된다. | ||
|
||
소프트웨어 개발 방법론의 목표는 함께 일하는 것을 돕는 것이다. | ||
어떤 특정 방법론에서 가장 좋은 부분만 가져다가 적절히 조정하여 사용해야 한다. | ||
인기 있는 방법론 하나만 좇지 말고, 다른 것들로도 눈길을 돌려야 한다. | ||
|
||
진짜 목표는 소프트웨어를 제공함으로써 사용자가 즉각적으로 새로운 일을 할 수 있게 되는 것이다. | ||
사용자가 필요로 할 때마다, 사업적으로 배포가 의미 있을 때마다 출시해야 한다. | ||
|
||
## Topic 51 실용주의 시작 도구 | ||
|
||
프로젝트를 지탱하는 기둥에는 '버전 관리, 회귀 테스트, 전체 자동화'가 있다. | ||
|
||
- 버전 관리 : 프로젝트를 빌드하는 데 필요한 모든 것을 버전 관리하에 두어야 한다. | ||
- 회귀 테스트 : 지금 당장 버그를 찾도록 자신을 몰아세우지만, 덕분에 나중에 다른 사람이 버그를 발견하게 되는 상황을 피할 수 있다. | ||
- 전체 자동화 : 현대 소프트웨어 개발은 스크립트화된 자동 절차에 의존하고 있다. 수작업이 필요해서는 안 된다. | ||
|
||
견고한 기반을 갖췄다면 사용자를 기쁘게 하는 것에 집중할 수 있다. | ||
|
||
## Topic 52 사용자를 기쁘게 하라 | ||
|
||
개발자로서 우리의 목표는 사용자를 기쁘게 하는 것이다. | ||
소프트웨어 프로젝트 자체가 아니라 고객 잔존율, 데이터 품질, 절감 비용과 같은 성공 척도가 진짜로 의미 있는 사업 가치다. | ||
소프트웨어는 이런 목적을 달성하기 위한 수단일 뿐이다. | ||
|
||
## Topic 53 오만과 편견 | ||
|
||
자신의 코드만 좋게 보고 동료들의 코드는 깎아내리는 편견을 버리고 다른 사람의 코드를 존중해야 한다. | ||
코드에 붙은 여러분의 이름이 품질의 보증 수표로 인식되게 해야 한다. |