민첩한 방법론의 혁신을 허용하는 방법


21

민첩한 방법론이 요구 사항을 제대로 이해하지 못하거나 상당한 참신함 이 포함 된 환경에서 우수하다고 말할 수 있습니다. 그러나 철저한 혁신이 필요한 곳에 적용해야합니까? 그렇다면 어떻게?

당신이 고려하고있는 것이 업계에서 알려지지 않았거나 심지어 불가능하다고 생각된다면, 사용자 스토리와 관련 작업을 생각하기가 어려울 수 있습니다. 예를 들어, 알버트 아인슈타인 (또는 그가보고 한 가상의 고용주)이 일반 상대성 이론을 서사시, 스프린트 및 과제로 분류함으로써 이론을 고안 한 데 도움이 되었습니까? 대답이 "예"라면 민첩한 접근 방식이 아인슈타인의 혁신적인 통찰력을 얻는 방법과 가장 잘 작동하도록 돕기 위해 어떤 특별한 숙박 시설을 통합해야합니까?

특정 소프트웨어 예제를 제공하기 위해 연도가 2008 년이고 WCF를 사용하여 COMET 또는 " 장기 폴링 "유형 기능 을 제공한다고 가정하십시오 . "사전 작업"에 대한 모든 연구는 아무 것도 일어나지 않으며 심지어 MSDN 블로거는 불가능하다고 말합니다.

다시,이 엔 다이버의 창의성 (또는 대담성)을 수용하기 위해 사용자 조정 및 "풍미"가 사용자 스토리 및 작업에 도입 될 수있는 것은 무엇입니까? 아니면 혁신이 너무 혁신적이라는 결론을 내릴 수있는 것이 더 좋을까요 (2008 년), 무 방향 싱크 탱크 운동으로 남겨 두는 것이 가장 좋습니까?

2 주 스프린트로 운영되는 혁신가는 막 다른 길을 포기하고 스프린트를 정의 할 때 구상하지 않은 새로 발견 된 태스크에 대한 작업을 시작할 때마다 격추되기를 원하지 않습니다. 마찬가지로 스프린트가 종료되고 작업 코드 또는 작업 방식이 제공되지 않으면 혁신가가 경영진에 의해 격추되어서는 안됩니다. 이러한 상황에서도 노력을 "성공"으로 표시하는 방법이 필요합니다. 이런 종류의 "데드 엔드 (dead end)"추구에 대한 한두 번의 스프린트에서, 혁신가는 마침내 작동하는 무언가에 부딪 칠 수 있습니다.

민첩한 경영진은 혁신적인 혼란에도 불구하고 각 스프린트가 "확인"되었음을 어떻게 알 수 있습니까? 번 다운 차트가 터무니없이 보이지 않도록 어떻게 관리됩니까?


8
@Liath : 혁신은 종종 스프린트가 끝날 때마다 2 주마다 무언가를 보여야한다는 부담없이 아이디어를 시험해 볼 시간이 필요합니다. 단기 피드백은 종종 "무엇이든 상관없이 무엇인가 보여주기"에 중점을 둡니다 (고객이 만족하지 않으면 미래의 스프린트에서 항상 고칠 수 있기 때문에) 해야합니다 ". "표시해야 할 때 준비하십시오."대신 "준비되면 표시하십시오."
조르지오

4
나는이 질문에서 이루어질 수있는 파생 질문은 "타임 복싱이 소프트웨어 연구 나 매우 혁신적인 프로젝트에 가치가 있는가?", "시간으로부터 이익을 얻지 못하는 혁신적이고 고위험 프로젝트가 있는가"라고 생각합니다. -권투"? (나는 임시 구글 검색에서 이것을 읽고 있었다 : agile.conscires.com/2010/03/30/agile-for-research-projects )
rwong


1
Xavier Amatriain에 기인 한이 링크 는 또한 연구 프로젝트에서 애자일 방법론을 적용하기위한 완전한 패키지 ( "프로세스")를 제공하는 것으로 보입니다. 아시다시피 스크럼과는 다르지만 민첩한 가치와 관행을 수용하는 데는 매우 먼 곳입니다.
rwong

2
소프트웨어 개발의 혁신은 방법론에 관계없이 쉽지 않습니다. 왜냐하면 사람들은 대부분의 사람들이 동의하는 것을 고수해야합니다. 소프트웨어 엔지니어링은 다른 엔지니어링 분야에 비해 과학적이지 않기 때문에 아이디어가 적합성이 아닌 장점으로 판단됩니다.
Mike Dunlavey 2016 년

답변:


8

제목 질문. 혁신은 애자일에서 이미 잘 수행하고있는 팀의 소규모 창의적 발전을 의미합니다.

가장 좋은 답변은 이 기사 에서 "골드 카드 데이"에 요약되어 있습니다.

요약 (낙서 및 저자의 의도를 반영하지 않을 수있는 내 자신의 해석) :

  • 개발자는 작업하고자하는 작업 관련 흥미로운 (지적 자극적) 스트레치 목표를 식별 할 수 있습니다.
  • 이 스트레치 목표는 팀 (제품 소유자 포함)의 승인을받은 후 "골드 카드"가됩니다.
  • 이 "골드 카드"작업을 위해 하루를 보내도록 권장합니다.
    • 일반적으로 금요일에 발생하므로 "골드 카드 데이"가됩니다.
  • 스크럼과 관련하여 골드 카드는 다른 백 로그 항목처럼 예약 및 추적됩니다. 팀은 결과를 보여 주어야합니다.

"골드 카드"적용과 관련하여 다른 사항이 있습니다 (해당 기사에는 없음).

  • 한 팀원이 모든 즐거움을 갖지 못하게하십시오. 모든 팀원은 "골드 카드의 날"을 한 번에 한 번 복용하여 창의적인 시간을 보내도록 권장해야합니다.
  • 같은 줄을 따라 "골드 카드"를 팀 작업 (솔로 작업과 반대)으로 만들고 그 작업을 사교 (팀 구축) 순간으로 활용하십시오.

혁신이 유용한 해결책을 찾지 못할 실제 위험이있는 연구 (수개월에서 수년간의 소름 끼치는 일)를 말하는 실질적인 문제.

이 초기 질문은 어떤 극한 프로그래밍 기술이 연구 환경에서 사용하기에 적합한가? 이 질문의 근거를 많이 다룹니다.

(면책 조항 : 선택한 질문이 아니라 그 질문에 대한 답변 중 하나를 썼습니다.)

요약하면 소프트웨어 연구 작업이 빠르게 진행될 수 있습니다. 참가자는 새로운 정보를 바탕으로 우선 순위를 정해야합니다 (발견 / 학습 된 아이디어를 흡수하고 새로운 아이디어를 종합). 그것은 "성공의 결실을 보이기에는 느리고, 성공한 경우에만"느리기 때문에 "느린"것처럼 보인다.


프로젝트 관리 베타에 관한이 질문- 프로젝트 관리자를 리서치 팀에 통합 할 때의 장단점은 무엇입니까? -또한 동일한 근거를 다룹니다.


정신적으로 그렇습니다.

mouviciel의 답변 에서 지적했듯이 소프트웨어 연구의 정신은 민첩한 선언의 정신과 일치합니다. 다음으로 논의 할 것은 고위험 연구가 조직 또는 관리 방법론 ( "실제로 민첩성")으로서 애자일에 적합한 지 여부입니다.


실제로 몇 가지 질문에 대답해야합니다.
이 목록은 전체가 아닙니다 ...

민첩한 방법론이 어떻게 존재하는지에 대해 약간의 추적이 필요합니다.

애자일 방법론은 일반적으로 프로젝트 스폰서가있을 때 사용됩니다. 또한, 스폰서의 프로젝트 자금 기꺼이 제한됩니다. 이 프로젝트는 일정 기간 동안 프로젝트에 자금을 지원 한 후 사용 가능한 (잠재적으로 배송 가능한) 품질의 소프트웨어가 정기적으로 제공 될 것으로 예상합니다.

이 질문에 대한 연구의 종류는 "잠재적으로 해결할 수없는 노력"을 말합니다. 다시 말해, 이러한 유형의 작업의 본질은 관련된 사람들의 의도와 근면에도 불구하고 결국 실패 할 수있는 위험과 관련이 있습니다.

이것은 ScrumButt 스타일 점검 목록이 아닙니다.
이것은 "Que Sera, Sera" 보다 나은지 여부를 예측하는 프리 플라이트 체크리스트입니다.


1. 투명성 우선. 프로젝트 후원자가 프로젝트의 위험성에 대해 진실을 알고 있습니까?


2. 후원자의 의지. 스폰서는 위험을 인식하고 자금을 계속 기꺼이 제공합니까?

스폰서는 일반적인 비즈니스 프로젝트 또는 일반적인 소프트웨어 / IT / 애자일 프로젝트보다 높은 위험 수용도를 가져야합니다. 모든 스폰서가이 기준에 맞는 것은 아닙니다. 적합하지 않으면 전문가가 프로젝트에서 퇴장하는 것이 좋습니다.


3. 프로젝트 전체의 투명성. 스폰서는 프로젝트의 실제 상태를 정기적으로 알려줍니까?

이것은 상태 업데이트 사이의 시간 경과를 잘못 사용하여 프로젝트에서 혼란이나 실패를 숨기려는 시도를 막기위한 것입니다.


4. 후원자의 적극적인 참여. 스폰서는 중요한 세부 사항, 기복, 약속 및 각 시도의 한계를 아는 데 관심이 있습니까?

소프트웨어 연구의 문제는 거짓 긍정이 많을 수 있다는 것입니다. 거짓 긍정 (접근법은 효과가 있지만 성공하지 못했다고 생각 함)과 거짓 긍정 (무엇을 할 수 없다고 주장하는 것, 다른 사람에 의해서만 반증 될 수 있음) .

민첩한 프로젝트를 통해 팀 (후원자와 이해 관계자 포함)은 계산 된 위험을 감수 할 수 있습니다. "계산 됨"은 위험 관리 담당자에게 완전한 정보가 있음을 의미합니다. 스폰서가 프로젝트의 중요한 세부 사항을 기꺼이 배우지 않으려는 경우 스폰서는 스스로 위험을 계산 (판사) 할 수있는 완전한 정보를 가지고 있지 않습니다.

의뢰자가 재정적 위험을 감수 할 의사가 있더라도 의사 결정의 위험을 감수하지 않고 자신의 선택에 따른 결과를 받아 들일 수 없다면, 그와 같은 고위험 연구 프로젝트에도 적합하지 않습니다.


5. 연구 슬라이드는 프레젠테이션 슬라이드와 달리 소프트웨어 실행 형태로 진행 ​​상황을 보여줄 수 있습니까?

이 질문은 최종 결과가 소프트웨어를 실행할 것으로 예상되는 연구 프로젝트에 적합합니다. 프리젠 테이션 슬라이드는 CS 이론을 설명하는 데 유용 할 수 있지만 소프트웨어 구현에서 장애를 숨기거나 잘못 사용할 수도 있습니다. 소프트웨어 데모는 이러한 오용을 방지하기위한 것입니다.


6. 스폰서가 프로젝트에서 언제든지 자금 지원을 중단하기로 결정한 경우에도 연구 팀은 부분적으로 유용한 소프트웨어 제품을 제공 할 수 있습니까?

이 질문은 사례별로 만 관련이 있습니다. 일부 연구 프로젝트는 점진적입니다. 여러 이정표와 결과물이있을 수 있습니다. 연구팀은 "가장 낮은 과일을 우선"또는 "생존력을 입증하기위한 가장 적은 비용의 접근"을 선호하기 위해 그들의 접근 방식의 우선 순위를 정해야합니다.

일부 연구 프로젝트는 점진적이지 않습니다. 하나의 매우 구체적인 기술 혁신을 제공하는 것입니다. 대박입니다. 이러한 유형의 프로젝트의 경우, 연구 작업과 프로토 타입 제작, 학술 출판물 만 증분됩니다. 그럼에도 불구하고 이러한 "소모품이없는"증분 산출물은 일부 유형의 후원자, 즉 대학, 연구 자금 지원 기관 및 학문적 호의를 구축하고자하는 대기업에 가치가 있습니다.

그러나, 이러한 특성을 갖는 연구 프로젝트는 또한 아래에서 더 논의되는 바와 같이 "카우보이 코딩"접근법을 선호 할 수있다. 이들은 "핵"이라고 불리며 학계에서 발생합니다.

대부분의 학문적 연구의 시간 규모 때문에, 학문적 스타일의 연구 자금은 일반적으로 1 년 이상의 약속을 제공합니다. 의료 연구 자금 (학업 및 상업)은 훨씬 더 오랜 기간 동안 투입 될 수 있습니다. 반면에, 상업적으로 자금을 지원하는 일반적인 연구는 예고없이 종료되거나 그들의 자원 (인력)이 다른 프로젝트에 완전히 재 할당 될 수 있습니다.


7. 연구팀은 사일로 대 교차 기능의 규모를 어떻게 측정합니까?

일부 유형의 연구팀은 매우 사일로입니다. 종종 이것은 "다 분야"프로젝트에서 발생합니다. 각 분야에서 정확히 한 명의 구성원이 관련됩니다. 결과적으로 지식과 기술이 겹치지 않기 때문에 어떤 회원도 다른 회원의 임무를 수행 할 수 없습니다. 어려움은 또한 의사 소통과 업무 정의로 확장 될 것입니다.

극심한 사일로 팀은 매일 스탠드 업 회의와 같은 일부 스크럼 의식에서 혜택을 볼 수 있지만 "의식"외에는 많은 대화가 진행되지 않을 수 있습니다. 팀이 대화하고 신뢰를 쌓으려면 고도로 사교적 인 민첩한 코치가 필요합니다.


8. 민첩한 코치가있는 경우 코치는 짧은 반복주기, 시간 복싱 및 시간 추정치를 규정합니까?

이러한 민첩한 사례 각각은 특정 유형의 연구 프로젝트에 어려움이 있습니다. 그럼에도 불구하고 일부 전문가 수준의 연구 그룹이 이러한 연구를 고급 연구에 적용 할 수 있다고보고되었습니다 . 이러한 전문가 팀 내에서 민첩한 코칭이 어떻게 이루어지는 지에 대한 세부 정보가 없으므로 이러한 어려움을 어떻게 극복 할 수 있는지 알지 못할 수도 있습니다.


9. 연구팀은 다른 방법론보다 솔로 개발 스타일을 채택하기로 만장일치로 투표합니까?

편집 : 이전 버전에서는 "카우보이 코딩"이라는 문구가 사용되는데, 이는 전문성이 부족하다는 것을 암시합니다. 그러나 솔로 개발과 카우보이 코딩에는 차이가 있으며이 체크리스트 항목의 상황은 솔로 개발을 합법적 인 선택으로 만들 수 있습니다.

이 질문 은 많은 양의 개발을 선호하는 프로그래머가 있음을 보여줍니다. 연구팀이 주로 이러한 유형의 프로그래머로 구성되어있는 경우, 팀원의 스킬 세트를 대체 할 수없는 경우 (이전 스킬 사일로 참조) 팀원은 원하는 대가를 교환해야합니다. 그들의 기술과 노력에 대한.

솔로 개발과 카우보이 코딩의 주요 차이점은 솔로 개발 에서는 버전 제어 사용, 자동화 자동화, 새로운 기능 추가 전 버그 수정과 같은 Joel Test : 12 Steps Better Code에 나열된 방법을 채택 할 수 있다는 것입니다. .

어떤 상황은 솔로 개발을 수행하는 각 회원에게 유리한 반면, 어떤 상황은 카우보이 코딩을 선호합니다.

최종 목표가 기술적으로 가능하다는 것을 보여줌으로써 "목표를 세우는 것"이라면 카우보이 코딩이 선호된다. 다음 DEF CON® 에 대한 훌륭한 프리젠 테이션 외에는 배송이나 품질에 대한 요구 사항이 없습니다 .


마지막 질문입니다. 애자일 팀이 획기적인 연구를 수행 할 수없는 상황이라면 어떻게 혁신적인 기술을 활용합니까?

평소와 같이 사업. 다른 회사 (또는 학계, 개인 또는 해커 팀 , 신생 기업 등)가 먼저 어려운 문제를 해결 한 다음 해당 기술을 구입 / 라이센스하도록합니다. 소프트웨어 산업은 수십 년 동안 이러한 원칙에 따라 운영되어 왔습니다.

애자일 방법론에서 초기 작업 프로토 타입을 표시하는 데 중점을두면 팀이 기존 솔루션을 먼저 찾아야합니다. 이는 일부 중복 작업에서 팀을 구할 수 있기 때문에 좋은 일입니다.


6

민첩한 선언으로 돌아 가기 :

  1. 프로세스 및 도구에 대한 개인 및 상호 작용
  2. 포괄적 인 문서에 대한 작업 소프트웨어
  3. 계약 협상을 통한 고객 협업
  4. 계획에 따라 변경응답

이 가치들 중 어느 것도 혁신을 금지하지 않습니다. 실제로 혁신은 Waterfall보다 Agile을 사용하는 것이 좋습니다.

그럼에도 불구하고, 애자일의 일반적인 구현은 마감 시간 (스프린트 시간은 마감일) 또는 비용과 같이 혁신을 제한하는 소프트웨어 프로젝트에 일부 제약을 가할 수 있습니다. 그러나 이것은 애자일의 문제가 아니라 현재 작업 조직의 문제입니다.


3
+ 당신이 가지고 있다고 생각합니다. 문제는 사람들에게 그것을하는 방법을 알려주는 책에 문제가 있다고 생각합니다. (물건을 작성하지 않고는 쓰기가 매우 어렵다는 것을 알게되었습니다.) 우리 팀은 "애자일"을 따르고 그것이 의미하는 바는 끝없는 회의입니다. 한 멤버는 단순히 "나를 세어보세요. 최신 유행 일뿐입니다. 저를 필요로하지 않으면 괜찮습니다."라고 말했습니다.
Mike Dunlavey 2016 년

: 방법과 같은 I - @MikeDunlavey 우리 팀이 "애자"다음 : 호응을 계획 다음을 통해 변화 대응 .
mouviciel 2016 년

1
@ mouviciel : 귀하의 답변에 동의하지만 민첩한 가치에 대해 실제로 새로운 점을 이해하지 못합니다. 민첩한 단어를 듣기 훨씬 전에 모든 프로젝트에서 1, 2, 4 지점을 따르고 있습니다. 내가 함께 일한 사람들 중 똑같은 일을하고있었습니다. 우리는 그것을 상식이라고 불렀습니다. "민첩한"이라는 용어는 "프로세스의 노예가되지 말고 상식을 사용하십시오"라는 새로운 단어일까요? 반면에 애자일이 실제로 내 작업에 가져온 유일한 차이점은 더 많은 회의와 더 많은 규칙을 따르는 것입니다.
Giorgio

@Giorgio-예, 이것이 제가 보는 방식입니다. 내가 작업 한 최고의 폭포 프로젝트는 팀장이 개발자들 사이에서 상식을 선호하고 고객에게 "V-model / ISO9001 / Huge Documentation"이야기를 들려 준 이야기였습니다. Agile 값의 새로운 기능은 선언자의 작성자가 제공 한 자격 증명에 있습니다.
mouviciel 2016 년

애자일은 원래 소프트웨어 개발에 대한 선언이었습니다. 다양한 업무를 처리하기 위해 성장했습니다. 회의는 정치 및 개인 스타일로 인해 일대일 커뮤니케이션보다 효과적이지 않았지만 일대일 커뮤니케이션의 한 형태입니다.
rwong 2016 년

6

나는 그렇게 생각하지 않습니다. 애자일 (Agile)은 초콜릿 코끼리를 먹는 것입니다. 큰 작업을 수행하고이를 전달할 수있을뿐만 아니라 정기적으로 전달할 수있는 관리 가능한 덩어리로 나눕니다.

연구 유형 프로젝트는 이것에 맞지 않습니다-프로젝트가 2 주마다 시연 될 수있는 작은 덩어리로 나눌 수 없다면 (또는 더 이상 – 애자일은 스프린트에 걸리는 시간이 2 주라고 말하지 않습니다) 6 주 스프린트를했다)

나는 그것을 시도하지 않을 것입니다. 나는 당신이 당신을 위해 일한다고 생각하는 민첩한 도구를 취하고 그렇지 않은 도구는 무시합니다. 너무 많은 사람들은 애자일이 "스크럼 학습서에서 요구하는 모든 작업을 수행해야하며 어떤 재량도 허용되지 않는다"고 생각합니다. 그 접근 방식은 매우 민첩하지 않습니다.


1
큰 작업을 작은 청크로 나누는 것은 민첩하지 않습니다. 고대 메소포타미아와 이집트에서 공학이 시작된 이래로 사용되었으며 폭포 프로젝트에서 널리 사용됩니다. 그것이 애자일 프로젝트에 사용된다면, 그것은 애자일 성격 때문이 아니라 수세기에 걸친 성공적인 업적으로부터 물려받은 사고 방식 때문입니다.
mouviciel

@mouviciel : 맞습니다. 그러나 민첩한 힘으로 문제를 단일 스프린트에 맞는 덩어리로 나눕니다. 그들이 그렇지 않다면 (연구 프로젝트에서 종종 그렇듯이), 당신은 스프린트를 훨씬 더 길게 만들지 않는 한 망하게됩니다. 복잡한 연구 문제에 대해 작업 할 때 문제를 충분히 작은 조각으로 나누는 데 걸리는 시간을 예측할 수 없습니다. 작은 조각을 갖는 것은 기본적으로 이미 문제를 해결했음을 의미합니다.
조르지오

@rwong : 가능한 한 빨리 피드백과 짧은 개발주기가 필요없는 스크럼 이외의 민첩한 프로세스가 있습니까?
조르지오

4
"너무 많은 사람들이 애자일은"스크럼 튜토리얼에서해야 할 모든 일을해야하며 재량은 허용되지 않는다 "고 생각합니다. 그 접근 방식은 매우 민첩하지 않습니다." 폭포 : 우리는 우리가 필요한 조각을 가져다가 우리의 필요에 맞췄습니다. 그리고 민첩한 코칭이 이루어졌고 우리는이 책으로 작업해야했습니다. 대부분의 민첩성을 잃었습니다. ;-)
조르지오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.