2011년 6월 3일 금요일

Agile Practieces

결과를 위해 일하라.
"애자일 팀에서 초점은 결과에 있다. 비난을 하는 대신 문제를 해결 하느데 집중해야 한다."
  • 비난은 버그를 수정하지 못한다. 손가락질 하는 대신, 가능한 해결책을 제시하라. 중요한 것은 긍정적인 결과다.

땜질은 늪을 만든다.
서투른 해커는 코드를 그대로 남겨 두고 다음 문제로 재빨리 넘어간다. 좋은 프로그래머는 다음 단계로 가서 하나를 더하는 일이 왜 필요한지. 다른 무언가가 영향을 받는지 이해하려고 노력한다.
땜질식 수정이 결국에는 프로젝트의 생명을 위협하는 늪을 조금씩 넓힌다.
  • 지뢰를 조심하라.
    • 땜질식 수정은 지뢰밭을 가로질러 가는것과 같다.
    • 땜질식 수정이 코드에 들어가자마자 코드의 명료함이 떨어진다.땜질식 수정이 많이 쌓이면 코드의명백함은 사라지고 불투명성이 두드러진다.
  • 따로 코딩하지 말라.
    • 팀원들간의 지속적인 코드 리뷰는 코드를 이해하거나 버그를 찾아내는 가장 효과적인 방법 중 하나다.
  • 단위 테스트를 사용하라.
    • 단위 테스트는 자연스럽게 코드를 다루기 쉬운 부분들로 나누어줘서 더 잘 설계되고 더 명확한 코드나 나오도록 해준다.
    • 단위 테스트는 코드와 함께 실행하고 작업하기 때문에 코드를 철저히 이해하게 해준다.

사람이 아니라 생각을 비판하라.
누구 아이디어가 더 나은지를 입증하는 것이 아니라 해결책에 도달하는 데 자부심을 가져라.
  • 부정적인 생각은 혁신을 죽인다.
    • 마감을 정하라.
    • 상대방과 논의하라.
    • 중재자를 둬라. - 중재자는 각자의 의견을 꼭 말하게 하고, 회의가 계속 진행되도록 하기 위해 존재한다. 중재자는 프리마돈나가 회의를 지배하는 걸 막고, 생각 없는 언급을 교정하기 우해 끼어들 수 있다.
    • 결정을 지원하라. - 일단 해결책이 선택되면 각 팀원은 준비를 하고 구현이 될 때까지 완벽하게 협력해야 한다.

위험을 무릅쓰고, 앞으로 나아가라.
반드시 해야 하는 올바른 일이 무엇인지 안다면, 적어도 현재 방식이 틀렸다는 것을 안다면, 팀 내 다른 사라이나 상사 또는 고객에게 용기를 내어 당신의 관점을 설명하라. 물론 그렇게 한다는게 항상 쉽지 않아서 프로젝트를 지연시키거나, 프로젝트 관리자의 기분을 상하게 하고 스폰서를 화나게 할수 있다. 그럼에도 당신은 그대로 밀어 붙여서 바른 접근을 해야 한다.

변화에 뒤처지지 말라.
"변호 외에 영원한 것은 없다."
모든 분야에서 전문가가 될 필요는 없지만. 업계가 어디로 가는지 알고 있어야 하고, 그에 맞춰서 경력과 프로젝트 계획을 세워야 한다.
  • 반복해서 조금씩 배우자.
  • 최신 소식을 얻자.
  • 지역 사용자 그룹에 참석하자.
  • 워크숍이나 학회에 참석하자.
  • 열심히 읽자.
팀에 투자하라.
팀에서 혼자 많이 아는 것으로는 충분하지 않다. 다른 팀원이 많이 알고 있지 않다면, 팀으로서의 효율이 떨어진다. 교육이 잘 된 팀이 더 좋은 팀이다.

댓글 없음:

댓글 쓰기

ETL 솔루션 환경

ETL 솔루션 환경 하둡은 대용량 데이터를 값싸고 빠르게 분석할 수 있는 길을 만들어줬다. 통계분석 엔진인 “R”역시 하둡 못지 않게 관심을 받고 있다. 빅데이터 역시 데이터라는 점을 볼때 분산처리와 분석 그 이전에 데이터 품질 등 데이...