최근 린 개발 팀을 구축하는 방법에 대해 많이 생각하고 있습니다. 궁극적으로, 나는 같은 생각을 가진 소수의 사람들과 함께 내 작은 소프트웨어 하우스를 열고 싶습니다. 목표는 부자가되는 것이 아니라 건강한 업무 환경을 유지하는 것입니다.
지금까지 린 팀을 다음과 같이 정의하고 있습니다.
- 작은;
- 자기 조직;
- 모든 회원은 QA를 염두에 두어야합니다.
- 회원은 여러 역할을 수행 할 수 있어야합니다
마지막 요점은 진언이 진행됨에 따라 조금 걱정되는 부분입니다.
개발자는 나쁜 테스터를 만듭니다.
나는 종종 개발자들이 자신의 코드 나 동료의 코드에 "너무 근접하여"품질에 대한 높은 수준의 평가를한다는 것을 이해하지만, 실제로 테스터 라는 것은 확실하지 않습니다 . 반대로, 좋은 개발자의 자질은 좋은 테스터의 자질과 크게 겹친다는 의견입니다.
이것이 정확하다고 가정하면 개발자 / 테스터 문제를 해결하는 여러 가지 방법을 생각하고 있으며 실행 가능한 모델을 생각해 냈습니다.
내 모델에는 다음이 필요합니다.
- 2 개 이상의 프로젝트가있는 소규모 소프트웨어 하우스
- 개발 및 제공에 대한 민첩한 (반복적 인) 접근 방식
- 프로젝트 당 1 팀
- 모든 팀원은 소프트웨어 개발자가됩니다
- 그들의 직무 설명은 개발 , 품질 보증 , 테스트 및 납품 을 책임으로 명확하게 진술 할 것입니다
이러한 전제 조건이 모두 충족되면 프로젝트를 다음과 같은 방식으로 구성 할 수 있습니다 (이 예에서는 두 개의 프로젝트 A 및 B를 참조 함 ).
- 모든 팀원은 개발자 역할과 테스터 역할을 번갈아 가며
- 팀원이 프로젝트 A 의 개발자 인 경우 프로젝트 B 의 테스터가됩니다.
- 멤버는 한 번에 하나의 프로젝트에서만 작업하므로 개발자 또는 테스터 역할을 수행 해야 합니다 .
- 역할주기 (두 개의 다른 프로젝트에서 다시) 데브 같이 3 번 반복하고, 테스터 2 반복으로 구성
- 프로젝트 팀에는 항상 3 명의 개발자와 2 명의 테스터가 있습니다.
- 멤버 역할주기는 1 회 반복 단계를 벗어나야합니다.
- 이렇게하면 팀 변경의 갑작스러운 발생이 최소화됩니다. 각 반복에 대해 2 Devs 및 1 Tester는 이전 반복과 동일하게 유지됩니다.
위의 점을 감안할 때 다음과 같은 장단점이 있습니다.
찬성
- 회사 전체에 프로젝트 지식을 배포합니다.
- 팀원이 작성하는 데 도움이되는 코드를 테스트하지 않도록합니다.
- 단계를 벗어난 역할주기는 프로젝트에 100 % 멤버 스위치가없는 것을 의미합니다.
- 대체 역할은 지루한 프로젝트의 단조 로움을 깨뜨립니다.
단점
- 두 프로젝트의 반복은 밀접하게 연결되어 있습니다. 한 프로젝트가 반쯤 반복을 취소하고 다시 시작하면 두 프로젝트가 동기화되지 않은 것입니다. 이로 인해 역할주기 관리가 어려워집니다.
- 개발자 채용에 대한 경첩은 테스터로도 활동합니다.
이 접근법을 친구 및 동료와 논의 할 때 혼합 된 리뷰를 받았습니다. 일부 개발자는 이와 같은 역할을 대체하려는 개발자가 거의 없으며 다른 개발자는 개인적으로 시도해보고 싶다고 말합니다.
내 질문은 : 실제로 그러한 모델이 작동 할 수 있습니까? 그렇지 않은 경우 작동 모델로 조정할 수 있습니까?
참고 : 간결하게하기 위해 개발자 및 테스터 역할에만 집중했습니다. 필요한 경우 다른 역할을 확장하겠습니다.