수업 프로젝트에 가장 적합한 애자일 방법론은 무엇입니까? [닫은
-
03-07-2019 - |
문제
이 프로젝트는 제대로 정의되지 않았습니다. 우리는 CS 111 컴퓨터 프로그래밍을위한 교육 소프트웨어를 작성해야합니다. Flex에서 다양한 배경을 가진 6 명의 학생 개발자가 있습니다. 이 프로젝트의 기간은 약 7 주입니다. 우리는 얼굴 시간이 매우 제한되어 있으며 (주당 30 분) 근무 시간이 매우 제한되어 있습니다 (주당 개발자 당 8 시간). 우리는 고객에 대한 접근성이 제한되어 있습니다 (코스 교수, CS 111 교수, CS 111 학생).
우리의 도구 세트에는 Flex Builder, Subversion 및 TRAC가 포함됩니다.
이 프로젝트에 가장 적합한 방법론과 그 이유는 무엇입니까? 또는 이러한 상황에 더 잘 맞기 위해 다양한 방법론에서 어떤 기능을 수집해야합니까?
해결책
이러한 상황에서 방법론이 성공할 것이라고 생각하게 만드는 이유는 무엇입니까? 의사 소통이 거의없고, 시간보다 더 많은 요구 사항, 고객에 대한 액세스 부족은 무엇입니까?
즉, 나는 증분 전달 (각 반복이 몇 가지 작업 기능이 있어야 함), 단위 테스트 (체크인 전의 모든 테스트 패스), 증분 릴리스 태그 (작업 릴리스로 돌아갈 수있는 기능) 및 페어링에 중점을 둘 것입니다. 팀원의 전반적인 생산성을 높이기 위해 약한 팀원이있는 강력한 팀원 중 팀의 강력한 멤버를 통합 테스트에 헌신하는 것을 고려하십시오.
증분 배달이 가장 중요합니다. 요청 된 것보다 적은 작업 데모를 보여주는 것이 항상 비 작업 프로토 타입을 보여주는 것보다 항상 낫습니다.
다른 팁
여기서 민첩한 방법론을 사용할 수 있지만 분명히 귀하의 요구에 맞게 채택해야합니다.
예를 들어, 목표를 가장 잘 이해 한 사람이 고객 프록시 역할을 해야하는 실제 고객에게 충분히 액세스 할 수없는 경우. 나는 또한 고객에게 더 많은 액세스 권한을 얻으려고 노력하는 것이 좋습니다. 거의 모든 사람들이 더 바쁘게 보이려고 노력하고 있으며 일반적으로 그 장애물을 해결하는 방법이 있습니다.
팀의 제한된 작업 시간이 동시에 보유한 상태인지 확인하십시오. 함께 일할 수 없을 때 민첩한 접근이있을 수 있습니다.
스토리 기반 추정, 반복 개발 프로세스 등을 사용할 수 있습니다.
정말로 중요한 것은 모든 팀원에게 민첩한 프로세스가 어떻게 작동하는지, 프로젝트에서 각 사람의 역할에 대한 명확하고 모호하지 않은 이해를 제공하는 것입니다. 스크럼을 사용할 것이라고 말하기는 매우 쉽지만 불행히도 실제로는 의미가없는 실제 이해와 경험 없이는 매우 쉽습니다.
몇개의 충고:
- 팀원을 교육하십시오
- 시간/자원으로 제한되지 않으면 제공하려는 내용 목록을 받으십시오.
- 제약 조건을 감안할 때 현실적인 것이 무엇인지 알아보십시오. 아마 그다지 많지 않을 것입니다. 지나치게 낙관적이 되려고 노력하지 마십시오. 당신이 실제로 달성 할 수있는 것에 집중하십시오.
- 실제 고객이이를 위해 탑승한지 확인하십시오.
- 짧은 반복 (1 주 이하)을 사용하십시오. 각 반복이 끝날 때까지 완전히 테스트 된 제품을 제공 할 수 있는지 확인하십시오.
- 일찍 일을 보여주세요.