Agile สามารถทำได้โดยไม่ต้องมีส่วนร่วมของลูกค้า?


23

ฉันไม่สามารถเขียนหนังสือเกี่ยวกับ Agile ได้ ฉันได้ทำงานในร้านค้าหลายแห่งที่เรียกกระบวนการของพวกเขาเปรียว หนึ่งในประเด็นหลักของการพัฒนา Agile คือการมีส่วนร่วมของลูกค้าเป็นประจำ หลังจากการวิ่งงานสามารถนำไปสาธิตให้ลูกค้าเพื่อรับข้อเสนอแนะ ล้างและทำซ้ำ

ปัญหาที่ฉันเจอคือลูกค้าจำนวนมากไม่ต้องการมีส่วนร่วม พวกเขาชอบน้ำตกมากกว่า รวบรวมความต้องการล่วงหน้าจากนั้นกลับมาเมื่อคุณทำเสร็จแล้ว จากประสบการณ์ของฉันน้ำตกไม่ทำงาน ลูกค้าไม่ทราบว่าสิ่งที่พวกเขาต้องการจนกว่าพวกเขาจะเห็นมัน ขึ้นเขียงน้ำตกมีการเผยแพร่เพิ่มเติมโดยชุมชนขนาดใหญ่ของนักพัฒนาที่ต้องการมีความต้องการทั้งหมดล่วงหน้า วิธีนี้พวกเขารู้ว่าพวกเขากำลังสร้างอะไรพวกเขาสามารถออกแบบได้ตามความเหมาะสมและลูกค้าต้องตำหนิเพราะพวกเขา "ลงชื่อออก" ตามข้อกำหนดดังกล่าว

ฉันไม่ถูกต้องหรือไม่ Agile สามารถทำงานได้โดยไม่ต้องมีส่วนร่วมกับลูกค้าหรือไม่ ถ้าเป็นเช่นนั้นคุณจะเอาชนะปัญหาที่ฉันพูดถึงอย่างไรและอย่างไร


12
อย่าปล่อยให้ "ว่องไว" เป็นค้อนของคุณเพื่อให้ทุกสิ่งทุกอย่างดูเหมือนเล็บที่ต้องการทุบให้คุณ
Patrick Hughes

1
ในการตั้งค่าประสบการณ์ของฉันไปทางน้ำตกโดยทั่วไปเนื่องจากขาดความเข้าใจว่าซอฟต์แวร์หรือการออกแบบทำงานอย่างไร ข่าวดีก็คือหมายความว่า Agile ไม่ใช่ปัญหาใหญ่ แต่เป็นทัศนคติ / ความเข้าใจของลูกค้า ข่าวร้ายคือทัศนคติของลูกค้า
Ben Brocka

@BenBrocka: นั่นไม่น่าประหลาดใจมากนักเพราะนั่นคือสิ่งที่ Waterfall ได้รับการออกแบบมาโดยเฉพาะ ผู้เขียนต้องการเขียนบทความเกี่ยวกับกระบวนการพัฒนาที่สร้างโดยคนที่ไม่เข้าใจการพัฒนาซอฟต์แวร์อาจมีหน้าตาและทำไมกระบวนการดังกล่าวจึงไม่สามารถทำงานได้ ดังนั้นเขาจึงคิดค้น Waterfall เป็นตัวอย่างโดยเฉพาะกระบวนการที่ออกแบบโดยคนที่ไม่เข้าใจการพัฒนาซอฟต์แวร์และไม่สามารถทำงานได้ เห็นได้ชัดว่าไม่น่าแปลกใจที่มันดึงดูดผู้ที่ไม่เข้าใจการพัฒนาซอฟต์แวร์และไม่น่าแปลกใจ ...
Jörg W Mittag

@BenBrocka: ... มันไม่ทำงาน สิ่งที่น่าแปลกใจคือทำไมทุกคนถึงต้องการใช้กระบวนการที่ออกแบบมาโดยเฉพาะเพื่อไม่ทำงาน ฉันเดาว่าไม่มีใครมารบกวนการอ่านกระดาษจริง
Jörg W Mittag

1
@ JörgWMittagการยอมรับที่แท้จริงของ Waterfall (ไม่ว่าพวกเขาจะรู้ว่าเป็น Waterfall หรือไม่ก็ตาม) ส่วนใหญ่เป็นเพียงเพราะมันเป็นแบบจำลองมาตรฐานในการตัดสินใจทางธุรกิจ เจ้านายต้องการอะไรบางอย่างลูกน้องทำมันลูกค้ามีความสุขใช่มั้ย แน่นอนมันไม่ได้ทำงานแต่มันเป็นรูปแบบที่เรียบง่ายที่ดีสำหรับความคิดที่เรียบง่ายดี :)
เบน Brocka

คำตอบ:


17

เป็นไปได้อย่างไร ธรรมชาติของเทคนิคนี้เป็นตัวกำหนดความคิดเห็นบางส่วนระหว่างลูกค้าและนักพัฒนา

อย่างไรก็ตามทีมของคุณสามารถทำหน้าที่เป็นลูกค้า "พร็อกซี" (กระบวนการที่คล้ายกันกับ "การกินอาหารสุนัขของคุณเอง") เพื่อให้คุณสามารถ "เสแสร้ง" ให้คล่องแคล่วแม้ว่าจะไม่เป็นที่น่าพอใจเท่ากับการได้ลูกค้าที่แท้จริง ข้อเสนอแนะ

ชอบหรือไม่ลูกค้าจะมีส่วนร่วมในกระบวนการออกแบบ เป็นเพียงเรื่องของจำนวนที่พวกเขาต้องการให้การทำงานซ้ำมีค่าใช้จ่าย (ยิ่งล่าช้าก็ยิ่งมีราคาแพง)

เนื่องจากลูกค้าต้องการ "Big Design Up Front" ช่วยให้พวกเขาเข้าใจว่าจะต้องใช้เวลาและความพยายามในส่วนของพวกเขาเพื่อให้ได้การออกแบบที่ถูกต้องในครั้งแรก


5
อย่างไรก็ตามทีมของคุณสามารถทำหน้าที่เป็น "พร็อกซี" ลูกค้า - จากประสบการณ์ของฉันผู้ทดสอบได้ทำ "ผู้รับมอบฉันทะ" ที่มีประสิทธิภาพในแบบที่คุณพูดถึง เมื่อฉันเป็นผู้ทดสอบตัวเองฉันก็แกล้งทำเป็นสวมสูทลูกค้าเพื่อที่จะพูด พร็อกซีดังกล่าวมีข้อ จำกัด แม้ว่า - เช่น QA คนบ่นเกี่ยวกับวิธีการมากเวลาที่ใช้ในการติดตั้งผลิตภัณฑ์ก็อาจจะรู้สึกอย่างนั้นเพราะพวกเขาทำมันทุกวันในขณะที่ลูกค้าไม่ได้ปีละครั้งหรือสอง
ริ้น

it's just a matter of how much they want the rework to cost (the longer it is delayed, the more expensive it is).แม้ว่าใครจะมีราคาแพงกว่าสำหรับ? ลูกค้าส่วนใหญ่ไม่เห็นว่าเป็นการจ่ายเงินสำหรับเวลาของคุณเพื่อรับวิสัยทัศน์ปัจจุบันของโซลูชันในสถานที่ บางครั้งพวกเขาก็มีปัญหาและไม่มีทางรู้ว่าทางออกควรเป็นอะไรจนกว่าคุณจะบอกพวกเขาว่ามันจะเป็นอะไร ณ จุดนั้นถ้าสิ่งที่คุณบอกพวกเขาไม่ได้แก้ปัญหาของพวกเขาแล้วมันเป็นความผิดของคุณไม่ใช่พวกเขา เป็นความผิดของพวกเขาที่คุณเข้าใจผิดปัญหาที่แท้จริงของพวกเขาตั้งแต่แรก? ต่อ ...
maple_shaft

ต่อ ... ทำไมพวกเขาควรจะจ่ายมัน? เพียงเพื่อรักษาหน้ากับลูกค้าและไม่พลาดโอกาสในการทำธุรกิจซ้ำ ๆ อย่างสมบูรณ์คุณต้องหันกลับมาทำใหม่ฟรีเพราะพวกเขาต้องการสัญญาราคาคงที่ในตอนแรก นี่เป็นทัศนคติที่แพร่หลายมากขึ้นและสิ่งที่ P.Brian.Mackey กำลังประสบอยู่ แขนลูกค้าที่แข็งแกร่งการเจรจาเหล่านี้และเมื่อคุณเป็นเพียงหนึ่งใน 100 สตาร์ทอัพที่พยายามทำคะแนนสัญญาคนที่แต่งตัวประหลาดที่มีสัญญาเปรียวตามความเป็นจริงและยุติธรรมจะต้องรอที่ด้านหลังของบรรทัด มันออกมายากแล้วตอนนี้
maple_shaft

@maple_shaft: เห็นได้ชัดว่าคุณถูกเผาแล้ว แต่เช่นเดียวกับทุกสิ่งมันลงมาสู่การเลือก มีความว่องไวเพราะน้ำตกมีปัญหาและผู้คนไม่สมบูรณ์ หากลูกค้าได้รับคำแนะนำเกี่ยวกับความเสี่ยงและต้องการน้ำตกต่อไปนั่นคือทางเลือกของพวกเขา นอกจากนี้ยังเป็นทางเลือกของร้านค้าซอฟต์แวร์ในการตัดสินใจว่าจะคุ้มค่าหรือไม่ที่จะเสี่ยงต่อการตกหล่นน้ำตกกับลูกค้าที่ไม่เข้าใจความเสี่ยงหรือปฏิเสธความถูกต้องของความเสี่ยงเหล่านั้น
Robert Harvey

@ RobertHarvey แม้แต่ลูกค้าที่ไม่ดีในเศรษฐกิจที่ไม่ดีก็ยังคงเป็นลูกค้าอยู่และพวกเขาก็ยังคงเปิดไฟต่อไปอีกสองสามเดือน ความเสี่ยงสำหรับลูกค้าในกรณีที่ฉันกล่าวถึงมีน้อยและมีอยู่ว่าพวกเขาได้รับการแก้ปัญหาสัญญาในเวลา ความเสี่ยงสำหรับร้านค้าซอฟต์แวร์ในกรณีนี้คือถ้าลูกค้าที่เจ็บปวดในด้านหลังกำลังจะดูดเราให้แห้ง
maple_shaft

7

คำตอบสั้น ๆ สำหรับคำถามของคุณคือ 'ไม่' นี่คือความคิดเห็นในบางส่วนของคำถามของคุณ เพื่อความถูกต้องคำตอบส่วนใหญ่จะขึ้นอยู่กับประสบการณ์ส่วนตัวและการสังเกตของฉัน

จากประสบการณ์ของฉันน้ำตกไม่ทำงาน

Waterfall เป็นวิธีการที่ดีในการให้ระบบที่มีความซับซ้อนแตกต่างกัน เป็นที่น่าเสียดายที่ไม่ได้มีการนำเสนอหรือเข้าใจเป็นอย่างดี เหตุผลข้อหนึ่งก็คือมันไม่ได้สร้างรายได้มากพอที่จะแข่งขันกับวิธีการในวันนั้น ๆ คุณอาจประหลาดใจที่รู้ว่าธนาคารหลายแห่งการประกันภัยและระบบการผลิตถูกสร้างขึ้นโดยใช้วิธีน้ำตกเท่านั้นและหลายแห่งยังคงผลิตอยู่ในปัจจุบัน เป็นเรื่องน่าเศร้าที่อุตสาหกรรมซอฟท์แวร์นั้นมีพื้นฐานมาจากการโฆษณามากกว่าวิทยาศาสตร์

ลูกค้าไม่ทราบว่าสิ่งที่พวกเขาต้องการจนกว่าพวกเขาจะเห็นมัน

นี่คือตำนาน ตัวใหญ่เช่นกัน นี่อาจเป็นกรณีในการออกแบบ / เลย์เอาต์หน้าเว็บ แต่สำหรับการประมวลผลข้อมูลทางธุรกิจผู้ใช้ส่วนใหญ่ต้องการบางสิ่งที่ใช้งานได้ ผู้ใช้เหล่านั้นบางส่วนยังคงใช้หน้าจอ AS / 400 และ 3270 CICS มอนิเตอร์ที่มี RGB และพวกเขาสามารถทำธุรกิจของพวกเขาด้วยเครื่องมือเหล่านั้น นอกจากนี้ผู้ใช้เหล่านั้นก็ยอมรับระบบ SAP และ ORACLE ERP โดยไม่ต้องมีคำพูดใด ๆ ในการออกแบบส่วนต่อประสาน (และบางครั้งในการใช้งาน) ผู้ใช้ทางธุรกิจส่วนใหญ่จะปรับเปลี่ยนนิสัยการทำงานและการไหลหากระบบกำลังผลิตฟังก์ชั่นที่ถูกต้อง ความเครียดที่นี่อยู่ในฟังก์ชั่นไม่ได้ดู นักธุรกิจเข้าใจว่าพวกเขาทำงานได้ดีเพียงใด 90%

ขึ้นเขียงน้ำตกมีการเผยแพร่เพิ่มเติมโดยชุมชนขนาดใหญ่ของนักพัฒนาที่ต้องการมีความต้องการทั้งหมดล่วงหน้า วิธีนี้พวกเขารู้ว่าพวกเขากำลังสร้างอะไรพวกเขาสามารถออกแบบได้ตามความเหมาะสมและลูกค้าต้องตำหนิเพราะพวกเขา "ลงชื่อออก" ตามข้อกำหนดดังกล่าว

คุณไม่สามารถตำหนินักพัฒนาที่ต้องการรู้ว่าพวกเขากำลังสร้างอะไรเพราะนักพัฒนาเหล่านั้นต้องการกลับบ้านทำอาหารเย็นและกดเสื้อเชิ้ตเพื่อฝึกซ้อมอีกครั้งหลังจากใช้เวลา 3 ชั่วโมงหรือเรียนรู้เทคโนโลยีต่อไป ที่จะเข้ามาแทนที่ชุดทักษะปัจจุบันของพวกเขา! เกมโทษทำให้ไม่มีใครชนะ คิดในแง่ของบทบาทและความรับผิดชอบของแต่ละฝ่ายและภาพจะชัดเจนมาก

กล่าวโดยสรุปผู้จัดการโครงการโปรแกรมเมอร์และนักออกแบบเว็บไซต์จะไม่มาแทนที่นักวิเคราะห์ธุรกิจที่ควรทราบวิธีการรวบรวมข้อกำหนดจากผู้ใช้ปลายทางโดยไม่คำนึงถึงวิธีการ


3
+1 - สำหรับการโต้แย้ง "ลูกค้าไม่ทราบ" มันเป็นเรื่องของโดเมนที่ต่างกันมีประเภทลูกค้าที่แตกต่างกัน นี่คือเหตุผลที่ชาวเกษตรไม่เข้าใจผู้คนในน้ำตก พวกเขาเชื่อว่าคุณสามารถพูดในสิ่งที่คุณต้องการเมื่อคุณเห็นเท่านั้น มันไม่เป็นความจริง แต่เป็นสิ่งที่พวกเขาเห็นจากลูกค้าของพวกเขา ในขณะที่ผู้เสนอน้ำตกไม่เข้าใจว่าทำไมคุณไม่เข้าใจข้อกำหนดส่วนใหญ่ที่มีอยู่ก่อนเพื่อให้การออกแบบสามารถคำนึงถึงปัญหาทั้งหมดได้ อาจเป็นเพราะคนน้ำตกไม่ได้จัดการกับลูกค้าที่จำใจมากนัก
Dunk

1
@Dunk ขอบคุณสำหรับความคิดเห็นของคุณ ฉันชอบข้อความของคุณ "" ลูกค้าที่จำใจ '!
NoChance

2

พวกเขาไม่ต้องการใส่ในเวลาและหากมีทางเลือกพวกเขาต้องการรับซอฟต์แวร์ฟรี แต่คุณยังคงคิดค่าบริการใช่ไหม สิ่งนี้จะเบลอถ้าคุณกำลังพัฒนาซอฟต์แวร์ภายในสำหรับ บริษัท ของคุณ พวกเขาคิดว่าแผนกไอทีได้รับการซื้อและจ่ายเงิน (พนักงานที่ได้รับเงินเดือน) ดังนั้นพวกเขาอาจได้รับผลงานมากเท่าที่คุณสามารถทำได้

คุณสามารถคล่องแคล่ว รับข้อมูลจำเพาะทั้งหมดและเริ่มการเข้ารหัส เมื่อลูกค้าขัดจังหวะการทำงานเพราะพวกเขาคิดว่ามีอะไรบางอย่างและคุณต้องทำการเปลี่ยนแปลงและทำงานซ้ำอีกครั้งคุณก็จะมีความคล่องตัวมากขึ้น คุณสามารถทำการอนุมัติภายในทีมของคุณได้ มีหนึ่งในทีมของคุณสวมสูทและเน็คไทและหลอกว่าเป็นลูกค้า

การทำข้อตกลงครั้งใหญ่ล่วงหน้าอาจทำให้พวกเขากลัว แนะนำให้ทำ sprint เพื่อลองใช้ จากนั้นให้พวกเขามีโอกาสเลือกที่จะไม่เข้าร่วม คุณสามารถเปลี่ยนไปใช้น้ำตกตลอดเวลาที่เหลือของโครงการ นอกจากนี้ยังแนะนำว่าคนต่าง ๆ ในทีมของพวกเขาสามารถทำการตรวจสอบและอนุมัติถ้าเวลาเป็นข้อ จำกัด สำหรับคนที่เขียนเช็ค

เมื่อถึงจุดหนึ่งคุณต้องบอกพวกเขาว่าคุณไม่คิดว่าน้ำตกจะไปทำงาน ถามพวกเขาว่าพวกเขาพอใจกับวิธีการนี้ไหมและถ้าเป็นเช่นนั้นทำไมพวกเขาถึงไม่มีคนสุดท้ายทำโครงการนี้


2

ไม่มีวิธีการใดที่สามารถทำงานได้หากปราศจากการมีส่วนร่วมของลูกค้า การมีการลงชื่อออกตามข้อกำหนดอาจไม่มีความหมายเมื่อฉันได้เห็นในโครงการที่เข้าร่วม ปัญหาของคุณเหนือกว่าความสามารถในการทำ Agile คุณต้องให้ความรู้แก่ลูกค้าของคุณและทำให้แน่ใจว่าพวกเขาเข้าใจว่ามันสำคัญแค่ไหนสำหรับพวกเขาที่จะเข้าร่วม


2
มันเป็นคำถามเกี่ยวกับจำนวนและความถี่ของการมีส่วนร่วมของลูกค้าและไม่ใช่เรื่องของทั้งหมดหรือไม่?
JeffO

3
ลูกค้าที่ปฏิเสธที่จะเข้าร่วมมักจะอยู่ในมุมมองของฉันลูกค้าต้องการการศึกษา ไม่ใช่เรื่องผิดปกติสำหรับผู้เชี่ยวชาญทางธุรกิจของลูกค้าที่จะต้องอยู่ในตำแหน่งที่พวกเขาต้องมีปฏิสัมพันธ์กับ บริษัท พัฒนาซอฟต์แวร์และยังคงทำกิจกรรมประจำวันและต้องได้รับการแก้ไข
OtávioDécio

2

ฉันคิดว่าหนึ่งในประโยชน์หลักของ Agile คือความสามารถในการรับข้อกำหนดโดยละเอียดสำหรับแต่ละคุณลักษณะโดยรวม เมื่อลูกค้าให้ความต้องการทั้งหมดของพวกเขาล่วงหน้าคุณลักษณะแต่ละอย่างมีแนวโน้มที่จะเป็นความคิดที่คลุมเครือโดยมีการกำหนดฟังก์ชันการทำงานเล็กน้อย กองกำลังเปรียวลูกค้าที่จะทบทวนแต่ละคุณลักษณะและมุ่งเน้นว่าสิ่งที่พวกเขาต้องการและวิธีคุณลักษณะนี้จะใส่ลงไปในภาพใหญ่ ในการรับรายละเอียดจำนวนเดียวกันนี้ (รายละเอียดเพียงพอที่จะใช้คุณสมบัติ) ลงในข้อมูลจำเพาะ Waterfall จำเป็นต้องให้คุณทำหนึ่งในสองสิ่งต่อไปนี้:

  1. เดา นำไปใช้จนกว่าคุณจะพบสิ่งที่คลุมเครือจากนั้นทำการตัดสินว่าคุณรู้สึกอย่างไรที่จะนำคุณลักษณะนั้นไปใช้ให้เกิดประโยชน์สูงสุด เห็นได้ชัดว่าไม่เหมาะเนื่องจากนำไปสู่ ​​"รอนั่นไม่ใช่สิ่งที่ฉันขอ!" สถานการณ์

  2. ให้ความสำคัญกับการออกแบบล่วงหน้ามากขึ้น โดยพื้นฐานแล้วเมื่อลูกค้าส่งสเป็คแบบครึ่งอบถึงคุณในวันแรกให้วางแผนรายละเอียดทุก ๆ นาทีก่อนที่จะนำไปใช้ ขอให้ลูกค้าชี้แจงอาการคลื่นไส้โฆษณาทุกอย่างจนถึงจุดที่คุณทราบทุกรายละเอียดการใช้งานสำหรับโครงการทั้งหมด ในขณะที่ไม่สมบูรณ์แบบนี่ดีกว่าตัวเลือก 1 คุณยังอาจพบรายละเอียดที่คุณไม่ได้คาดไว้และอาจส่งลูกค้าที่ใช้งานบนเนินเขา แต่ถ้าพวกเขาไม่ต้องการสื่อสารในระหว่างการพัฒนาและคุณจริง ๆ ไม่ใช่พลังจิตนี่เป็นความจำเป็น นี่คือน้ำตกโดยทั่วไปและมาพร้อมกับข้อเสียทั้งหมดที่เกี่ยวข้องรวมถึงการยากที่จะดำเนินการอย่างถูกต้อง

  3. ใช้สเป็คครึ่งอบ แต่ขอคำชี้แจงที่คุณไปต่อไป ทำงานจนกว่าคุณจะถึงส่วนที่คลุมเครือของสเปคแล้วขอให้ลูกค้าชี้แจง แน่นอนว่านี่ไม่ใช่สิ่งที่ลูกค้าร้องขอ แต่หากพวกเขาไม่ต้องการให้แอปพลิเคชั่นมืดมนเหมือนกับสเป็คและปฏิเสธที่จะกำหนดสเปคล่วงหน้านี่เป็นตัวเลือกที่เหลืออยู่ตัวหนึ่ง มันไม่มีประโยชน์ทั้งหมดของ Agile (เช่นการอนุมัติของลูกค้าเป็นประจำเพื่อให้แน่ใจว่าทุกคนอยู่ในหน้าเดียวกัน) แต่จะช่วยให้คุณได้รับข้อมูลที่คุณต้องการในการพัฒนา เนื่องจากตัวเลือกที่ 1 อาจทำให้คุณมีผลิตภัณฑ์ย่อยอยู่ตัวเลือกที่ 2 จึงสิ้นเปลืองและน่าผิดหวังสำหรับลูกค้า (คุณอาจจำเป็นต้องใช้เวลาอย่างน้อยสองเท่าในการออกแบบและการรวบรวมข้อมูลจำเพาะโดยรวม นี่ไม่ใช่ตัวเลือกที่แย่จริงๆ กุญแจสำคัญที่นี่คือการขยันหมั่นเพียรในการปรับเปลี่ยนเส้นเวลาและราคากับการเปลี่ยนแปลงแต่ละครั้งที่เกิดขึ้น หากคุณทำถูกต้องคุณอาจพบว่าแนวทางปฏิบัติส่วนใหญ่ของ Agile นั้นเข้ากันได้กับข้อตกลงนี้แม้ว่าลูกค้าจะไม่ทราบ IMHO สิ่งนี้สอดคล้องกับเจตนารมณ์ของ Agile ในการที่คุณควรปรับวิธีการให้สอดคล้องกับข้อตกลงเฉพาะของคุณ

หากลูกค้าไม่สามารถใช้ชีวิตกับผลที่เกิดจากตัวเลือกทั้งสามนี้หรือ Agile ที่ถูกเป่าเต็มไปหมดฉันมีช่วงเวลาที่ยากลำบากที่จะจินตนาการว่าไคลเอนต์นี้จะคุ้มค่ากับคุณได้อย่างไร


คุณออกจากตัวเลือก 4 คุณรับข้อมูลจำเพาะด้วยความต้องการส่วนใหญ่ที่ท่วมท้น ทำการออกแบบ (อาจซ้ำ) กับความคิดเห็นของลูกค้า นำไปใช้และทดสอบรหัส (อาจทำซ้ำ) จัดให้มีการทบทวนโปรแกรมเป็นระยะเพื่อแจ้งให้ลูกค้าทราบถึงความคืบหน้าและการตัดสินใจ พวกเขาให้ข้อเสนอแนะคุณรวมความคิดเห็นและดำเนินการต่อ
Dunk

สถานการณ์ที่คุณอธิบายข้างต้นจะเกิดขึ้นกับทีมที่ไม่ทราบวิธีการทำน้ำตกเท่านั้น ใช่มันยากที่จะดำเนินการอย่างถูกต้อง เปรียวก็ยากที่จะดำเนินการอย่างถูกต้อง ทุกครั้งที่มีคนล้มเหลวอย่างคล่องแคล่วผู้ใช้ความคิดบางคนขว้างกฎใหม่ที่ไม่ได้ปฏิบัติตามและอ้างว่าเป็นสาเหตุของความล้มเหลว มันไม่ใช่ความผิดของเปรียว อย่างน้อยผู้สนับสนุนน้ำตกยอมรับว่าต้องใช้คนดีที่มีทักษะที่ดีในการทำงานน้ำตก
Dunk

ตัวเลือกของคุณ 4 เป็นสิ่งที่ฉันตั้งใจจะอธิบายในตัวเลือก 3
Morgan Herlocker

ฉันจะทำให้คำตอบของฉันดีขึ้นได้อย่างไร ฉันไม่สามารถบอกได้ว่าคุณเห็นด้วยหรือไม่เห็นด้วยกับสิ่งที่ฉันพูด
Morgan Herlocker

คุณสามารถปรับปรุงได้ด้วยการเอาคำว่าอ่อนหัดมาเริ่ม ลบส่วนที่เกี่ยวกับสิ่งนี้ออกไม่ใช่สิ่งที่ลูกค้าต้องการ ลบส่วนจำเพาะที่มืดมน ฯลฯ ในน้ำตกส่วนที่สำคัญของการถ่ายภาพข้อกำหนดคือการได้ชิ้นส่วนที่มีความสำคัญทางสถาปัตยกรรมและชิ้นส่วนที่ระบบต้องทำเพื่อให้มีประโยชน์ หลังจากนั้นการเปลี่ยนแปลงมักจะไม่ใช่เรื่องใหญ่ เชื่อหรือไม่ว่ามีการทำซ้ำไม่ว่าจะเป็นทางการหรือไม่เป็นทางการในการพัฒนาน้ำตก นานก่อนที่ความคล่องตัวมาพร้อม
Dunk

1

ฉันคิดว่ามันยาก แต่ก็ยังเป็นไปได้ ฉันคิดว่าความคิดพร็อกซีของ Robert ทำงานได้ แต่จำเป็นต้องใช้พร็อกซีเพื่อใช้เวลาให้มากที่สุดเท่าที่จะทำได้กับไคลเอนต์ 'ของจริง' เพื่อให้พวกเขาสามารถเห็นสิ่งต่าง ๆ จากมุมมองของพวกเขา ด้วยวิธีนี้พร็อกซีสามารถตรวจสอบให้แน่ใจว่าฟีเจอร์ใดมีความสำคัญและให้ความรู้สึกถึงประสบการณ์ของผู้ใช้ที่ลูกค้าคาดหวัง / ต้องการ

แต่ในบางจุดคุณจะต้องแสดงซอฟต์แวร์ให้กับลูกค้า 'ของจริง' ...


0

เป็นไปได้ที่จะหลีกเลี่ยงลูกค้าจริงซึ่งบางครั้งจำเป็นต้องมีกฎระเบียบ โดยปกติแล้วลูกค้าของซอฟต์แวร์ทางการแพทย์จะไม่เกี่ยวข้อง ในกรณีดังกล่าวเอนทิตีอื่น ๆ อาจแทนที่บทบาทลูกค้าตัวอย่างเช่นทีมการตลาดสามารถพิจารณาลูกค้า


0

Agile ต้องการการวนรอบที่แน่นหนาเพื่อแทนที่การออกแบบขนาดใหญ่ด้านหน้าซึ่งเป็น Hard - ค่อนข้างยาก แต่จริงๆแล้วมันสามารถทำได้ Agile ไม่ใช่วิธีเดียว

คุณอาจต้องการหาหนึ่งในการปรับเปลี่ยนของ Agile - มีจำนวนมากและหนึ่งอาจแก้ไขปัญหาเฉพาะนี้ แต่ถ้าไม่ทำขึ้นเองถ้าคุณคิดว่าคุณสามารถ

กระบวนการทั้งหมดนี้ถูกสร้างขึ้นโดยคนฉลาด - และคนฉลาดสามารถทำให้กระบวนการใด ๆ ทำงาน คุณไม่คิดว่ามีการประดิษฐ์น้ำตกเพราะมันไม่เคยทำงานให้ใคร มันวิวัฒนาการมาเพราะบางคนสามารถทำงานได้และคนอื่น ๆ ดูและพูดว่า "ฉันต้องปรับแต่งมันและให้อาหารกับทีมของฉันที่ดูเหมือนจะไม่สามารถผลิตได้อย่างมีประสิทธิภาพ" - ณ จุดนั้นมันอาจทำงานได้ดีกว่าสิ่งที่พวกเขา กำลังทำอยู่ แต่ถ้าคุณจำไม่ได้ว่าไม่ใช่โปรแกรมเมอร์ทุกคนสามารถแก้ปัญหาทุกปัญหามันทำให้คุณงงงวยจริงๆว่าทำไมทั้งสองทีมที่ใช้กระบวนการเดียวกันอาจมีผลลัพธ์ที่แตกต่างกัน

ปัญหาคือกระบวนการจำนวนมากต้องการความสามารถในการนำพวกเขามาใช้ - เรากำลังพูดถึงความสามารถที่หายากเหมือนนักเล่นกีฬามืออาชีพจากทุกคนที่เคยเล่นกีฬา - โอกาสที่พวกเราส่วนใหญ่ไม่เคยเจอใครที่สามารถทำได้ กระบวนการเส็งเคร็งเช่นงานน้ำตกและนั่นคือสาเหตุที่คนจำนวนมากคิดว่ามันไม่สำเร็จ - พวกเขาไม่เคยเห็นมันทำงาน

ใช้ความสามารถน้อยกว่ามากในการทำงานแบบ Agile แต่ต้องใช้การลงทุนที่เฉพาะเจาะจงเช่นการให้ลูกค้ามองสิ่งที่คุณทำอยู่ตลอดเวลาเพื่อให้ข้อผิดพลาดไม่สามารถเผยแพร่ได้และสิ่งต่าง ๆ เช่นการปรับโครงสร้างใหม่ที่โหดเหี้ยม หนี้ทางเทคนิคที่ทีมไม่สามารถคลี่คลายไม่กี่เดือนลงบรรทัด


0

กำหนดลูกค้า

เป็น บริษัท อื่นหรือไม่ อีกคน?

เป็นทีมอื่นใน บริษัท ของคุณหรือไม่

เป็นแชมป์ผลิตภัณฑ์ใน บริษัท ของคุณหรือไม่?

ที่เป็นคุณ?

ทั้งหมดที่กล่าวมาเป็นไปได้และค่อนข้างสมเหตุสมผลขึ้นอยู่กับสถานการณ์ คุณไม่ต้องการที่จะใช้มุมมองเดียวลงไปในอุโมงค์เกี่ยวกับสิ่งที่มันจะ Agile เพื่อที่จะบอกว่าไม่มีที่ชัดเจนจะไม่ถูกต้อง ใช่ในอีกด้านหนึ่งต้องใช้ความคิดด้านข้างเล็กน้อย

ลองคิดถึงคำว่าAgileสักครู่ กลุ่มคนที่ฉลาดมากที่เป็นคนบัญญัติศัพท์ไม่สามารถเลือกคำเปรียบเทียบที่ดีกว่าสำหรับแนวคิดที่พวกเขาพยายามจะอธิบาย เมื่อคุณพูดความคล่องแคล่วคุณคิดอะไรอยู่ เป็นกองเดินเท้าหรือไม่ อาจจะตอบสนองเร็ว รวดเร็วในการปรับ?

ตอนนี้คิดว่าทั้งหมดที่เกี่ยวกับการปฏิบัติเปรียวที่ยอมรับกันทั่วไปออกมีและถามตัวเองว่าพวกเขาจริงๆนำไปสู่วิธีการพัฒนาซอฟแวร์ที่ได้รับการพิจารณาให้เป็นเปรียว

ฉันเป็นลูกค้าของความตั้งใจและวัตถุประสงค์ทั้งหมดสำหรับโครงการเดี่ยวของฉัน ฉันยังสวมหมวกจริงบางครั้งเมื่อฉันต้องการจริงๆที่จะทำให้เกิดการเปลี่ยนแปลงทางจิตโดดเด่นในของฉันบทบาทของลูกค้า สิ่งนี้ทำให้ฉันมีความคล่องตัวไม่น้อยไปกว่าตอนที่ฉันทำงาน สำหรับทุกสิ่งที่ฉันสนใจแมวของฉันสามารถเป็นผู้จัดการได้. เขาทำให้แน่ใจว่าฉันได้พักบ้างทุกครั้งและเตือนฉันให้หลีกเลี่ยงการทำงานหนักเกินไป คุณอาจต้องการใช้ "Pomadoro Technique" แฟนซีของฉัน แต่ฉันชอบตัวจับเวลา "Rascal" !! สิ่งนี้คือฉันทำงานในกระบวนการ Agile อย่างเคร่งครัดทุกครั้งที่ฉันเขียนโค้ดด้วยตัวเอง ฉันไม่ได้เป็นคาวบอยแฮ็กเกอร์มาซึ่งมีชีวิตอยู่กับการพัฒนาที่ไม่มีที่สิ้นสุดและไม่ทำอะไรเลย ฉันชอบสร้างซอฟต์แวร์กำหนดเวลาการพัฒนารอบการทำงานและชีวิตส่วนตัวของฉันและทำให้เสร็จในลักษณะที่ฉันคาดว่าจะทำหากฉันทำงานให้กับลูกค้าจริง เมื่อสิ่งต่าง ๆ ขัดจังหวะกำหนดเวลาของฉันฉันปรับและจัดลำดับความสำคัญโครงการของฉันทำงานตาม ฉันใช้วิธีปฏิบัติและเทคนิค Agile มาตรฐานทั้งหมดที่ฉันสามารถใช้โซโลและฉัน "ส่ง" รหัสการทำงานให้กับตัวเอง (หรือเพื่อนหรือเพื่อนร่วมงานเพื่อทดสอบ) บ่อยเท่าที่ฉันสามารถ หากทั้งหมดนี้ไม่ใช่ Agile ฉันถามคุณว่าอะไร

ดังนั้นคำตอบของฉันคือใช่คุณสามารถเป็นนักพัฒนาซอฟต์แวร์ Agile และคุณสามารถใช้วิธีการ Agile และคุณไม่จำเป็นต้องมีลูกค้าหรือแม้แต่ผู้จัดการ คุณสามารถทำงานในโครงการทั้งหมดด้วยตัวเองและสวมหมวกหลายใบ อาจไม่เหมาะที่จะทำไปกับบทบาทอื่น ๆ เหล่านั้นอย่างไรก็ตามเนื่องจากเป็นประโยชน์อย่างมากในการร่วมมือกับผู้อื่นเพื่อให้บรรลุเป้าหมาย พวกเขาทำหน้าที่เป็นคณะกรรมการที่ทำให้เกิดเสียงสำหรับความคิดของคุณและพวกเขาจะตอบสนองความต้องการของคุณซึ่งคุณอาจพบว่าเป็นการยากที่จะสร้างความรู้สึกด้วยตัวคุณเอง อีกบทบาทที่สำคัญมากที่ลูกค้าและผู้จัดการพึงพอใจก็คือการทำให้คุณมุ่งเน้นไปที่เป้าหมายโดยไม่เพิ่มคุณสมบัติและปรับแต่งโค้ดของคุณให้เกินกว่าที่จำเป็น

แต่ถ้าคุณทำงานในลักษณะที่มีระเบียบวินัยยึดมั่นกับวิธีการที่คุณเลือกอย่างเคร่งครัดและใช้วิธีปฏิบัติแบบเปรียวและถ้าคุณได้รับการติดตามด้านข้างหรือเปลี่ยนใจ (เมื่อสวมหมวกลูกค้า) และการออกแบบผลิตภัณฑ์หรือทิศทางของคุณ หากคุณสามารถปรับตารางเวลาของคุณและปรับลำดับความสำคัญของคุณได้ตามที่คุณจินตนาการว่าลูกค้าคาดหวังว่าคุณจะทำ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.