ตอบสนองความต้องการจากนักธุรกิจ?


27

วิธีใดที่ดูเหมือนว่าจะดีที่สุดในการเกลี้ยกล่อมข้อกำหนดจากคนที่ไม่มีเทคโนโลยี ฉันกำลังทำงานกับทีมที่พยายามหาข้อมูลจำเพาะสำหรับโครงการ ทุกครั้งที่เราพบกันและมันก็เป็นความคาดหวังสำหรับการประชุมครั้งต่อไปเราขอให้นักธุรกิจนำความต้องการของพวกเขากลับมา พวกเขามักจะตอบสนองสิ่งนี้:“ คุณคิดว่าพวกคุณสามารถสร้างต้นแบบขึ้นมาเพื่อที่เราจะได้เห็นสิ่งที่เราชอบในสัปดาห์หน้า…คุณรู้ไม่ใช่ข้อมูลหรืออะไรเลยเพราะมันเป็นต้นแบบเพียงแค่การใช้งาน” เป็นโครงการบวก 6 เดือนเพื่อให้เห็นได้ชัดว่าเป็นไปไม่ได้ (เราจะต้องพัฒนาทุกสิ่ง!) และเราไม่รู้ด้วยซ้ำว่าจะต้องทำอะไรหากไม่มีสเป็คบางอย่าง ตรงไปตรงมาฉันคิดว่าเหมือนคนส่วนใหญ่พวกเขามีความคิดบางอย่างของสิ่งที่พวกเขาต้องการพวกเขาไม่ได้คิดเกี่ยวกับมันในวิธีที่มุ่งเน้นที่จำเป็นในการรวบรวมความต้องการที่แท้จริง เป็นอีกทางเลือกหนึ่งในการบอกพวกเขา “ ให้สิ่งที่คุณต้องการหรือเราไม่สามารถ / ไม่ทำงาน” (เราต้องการให้พวกเขามีความสุขกับผลลัพธ์) มีวิธีที่ช่วยให้พวกเขาตัดสินใจในสิ่งที่พวกเขาต้องการหรือไม่? ตัวอย่างเช่นเราสามารถบอกพวกเขาได้:

“ วาดบางหน้าจอ (ใน Powerpoint บนผ้าเช็ดปากหรืออะไรก็ได้) ที่แสดง UI ที่คุณต้องการด้วยข้อมูลทั้งหมดที่คุณต้องการดูและคำอธิบายเกี่ยวกับการทำงานในระยะขอบ จากนี้เราจะขัดมันขึ้นมาและสร้างแบ็กเอนด์ขึ้นอยู่กับความต้องการด้านพฤติกรรมนี้”

หรือ

“ ไม่ต้องกังวลว่าจะเป็นอย่างไรในตอนนี้ (หมายเลข 1 วางสาย) เพียงแค่ให้รายการของข้อมูลทั้งหมดที่คุณต้องการเกี่ยวกับแต่ละสิ่งที่โปรแกรมติดตาม ดังนั้นสำหรับ“ ลูกค้า” คุณอาจมีรายชื่อ: ชื่อที่อยู่หมายเลขโทรศัพท์คำสั่งซื้อ ฯลฯ ไม่จำเป็นต้องเป็นโครงสร้างฐานข้อมูลที่สมบูรณ์แบบ แต่เราสามารถทำอะไรบางอย่างออกมาจากสิ่งนี้และรับทราบว่าคุณกำลังมองหาอะไร”

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


18
ฉันมักจะคิดฝันเกี่ยวกับการจ้างนักวิเคราะห์ความต้องการจากการก่ออาชญากรรม "คุณจะบอกฉันว่าใครควรจะสามารถเข้าถึงข้อมูลการบัญชีหรือฉันจะได้รับ hafta หยาบ?"
David Thornley

7
"ความจริงจะมาเร็วจากความผิดพลาดมากกว่าจากความสับสน" (เซอร์ฟรานซิสเบคอนตามที่เฟรดบรูคส์อ้างไว้) บอก / แสดงสิ่งที่คุณคิดว่าพวกเขาต้องการในแง่ที่เฉพาะเจาะจงแม้ว่าคุณจะอยู่นอกฐานก็ตาม พวกเขาจะแก้ไขคุณ ทำซ้ำสองสามครั้งจนกว่าคุณจะเข้าใจ

คำตอบ:


22

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

หลายบทเรียนที่ฉันได้เรียนรู้:

  • ผู้มีส่วนได้เสียที่แตกต่างกันคิดในระดับที่แตกต่าง

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

    น่าเสียดายที่คุณต้องรู้จักคนทุกคนในฐานะปัจเจกบุคคลและเข้าใจว่าพวกเขาคิดอย่างไรเรียนรู้วิธีตีความสิ่งที่พวกเขาพูดและตัดสินใจว่าจะเพิกเฉย

  • หารและพิชิต

    หากคุณไม่ต้องการทำอะไรให้ส่งไปยังคณะกรรมการ

    ไม่พบกับคณะกรรมการ ทำให้การประชุมเหล่านั้นมีขนาดเล็กที่สุดเท่าที่จะทำได้ YMMV แต่จากประสบการณ์ของฉันขนาดที่เหมาะคือ 3-4 คน (รวมถึงตัวคุณเอง) สำหรับช่วงเปิดและ 2-3 คนสำหรับช่วงปิด (เช่นเมื่อคุณต้องการคำตอบสำหรับคำถามเฉพาะ)

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

  • การประชุมที่ไม่มีการเตรียมการเป็นการประชุมที่ไม่มีวัตถุประสงค์

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

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

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

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

  • เลื่อนการอภิปรายนอกเรื่อง

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

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

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

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

  • คุณต้องมีวาระการประชุม

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

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

  • เยาะเย้ยมัน

    ถ้าคุณใช้ PowerPoint หรือ Visio เป็นเครื่องมือจำลองขึ้นคุณจะต้องทนทุกข์ทรมานจากปัญหาของมันที่กำลังมองหาขัดมากเกินไป มันเกือบจะเป็นส่วนติดต่อผู้ใช้ที่แปลกประหลาด ผู้คนจะรู้สึกสะดวกสบายกับภาพวาดผ้าเช็ดปาก (หรือภาพวาดที่สร้างจากคอมพิวเตอร์ที่ดูเหมือนภาพวาดผ้าเช็ดปากโดยใช้เครื่องมือเช่นBalsamiqหรือSketchflow ) เพราะพวกเขารู้ว่ามันไม่ใช่ของจริง - เหตุผลเดียวกันที่ผู้คนสามารถดูตัวการ์ตูนได้ แต่ยิ่งเริ่มดูเหมือน UI จริงผู้คนจำนวนมากจะต้องการเลือกและอุ้งเท้ามันและยิ่งพวกเขาใช้เวลาพิจารณาเรื่องรายละเอียดที่ไม่มีนัยสำคัญในท้ายที่สุด

    ดังนั้นแน่นอนทำการจำลองเพื่อทดสอบความเข้าใจของคุณเกี่ยวกับข้อกำหนด ( หลังจากขั้นตอนการวิเคราะห์เบื้องต้น) - เป็นวิธีที่ดีในการรับข้อเสนอแนะที่รวดเร็วและมีรายละเอียดมาก - แต่ให้พวกเขา lo-fi และไม่รีบเยาะเย้ยจนกว่าคุณจะ ค่อนข้างแน่ใจว่าคุณกำลังเห็นผู้ใช้ของคุณแบบตาต่อตา

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

  • ใจเย็น ๆ

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

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

  • อย่ากลัวที่จะเปลี่ยนเทคนิคหรือกลอนสดของคุณ

    แง่มุมต่าง ๆ ของโครงการอาจใช้เทคนิคการวิเคราะห์ที่แตกต่างกัน ในบางกรณี UML แบบคลาสสิก (ใช้ Case / Activity diagram) ใช้งานได้ดี ในกรณีอื่น ๆ คุณอาจเริ่มต้นด้วยธุรกิจ KSI หรือระดมความคิดด้วยแผนที่ความคิดหรือดำดิ่งสู่จำลองโดยไม่ต้องแจ้งให้ทราบล่วงหน้า

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

  • วางหูของคุณลงกับพื้น

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

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

  • สุดท้ายอ่านระหว่างบรรทัด

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

    ในฐานะที่เป็นซ้ำซากและจืดชืดตามที่ฟังFive Whysเป็นเทคนิคที่มีประโยชน์จริงๆที่นี่ เมื่อใดก็ตามที่คุณมีอาการกระตุกหัวเข่า "นั่นเป็นปฏิกิริยาที่โง่" (ไม่ใช่ว่าคุณจะพูดออกมาดัง ๆ ) หยุดตัวเองแล้วเปลี่ยนเป็นคำถาม: ทำไม? เหตุใดข้อมูลนี้จึงถูกพิมพ์ซ้ำสี่ครั้งจากนั้นพิมพ์ถ่ายสำเนาสแกนพิมพ์อีกครั้งตรึงไว้ที่บอร์ดอนุภาคถ่ายด้วยกล้องดิจิทัลและส่งอีเมลถึงผู้จัดการฝ่ายขายในที่สุด มีเป็นเหตุผลและพวกเขาอาจไม่ทราบว่ามันคืออะไร แต่มันเป็นงานของคุณที่จะหา ขอให้โชคดี ;)


4
+1 สำหรับการเป็นหนึ่งในคำตอบที่น่าทึ่งที่สุดที่ฉันเคยเห็นในโปรแกรมเมอร์ SE!
Morgan Herlocker

19

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

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

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

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

ในอดีตที่ผ่านมาฉันได้เปิด FireBug และเพิ่มการเปลี่ยนแปลงที่ลูกค้าร้องขอไว้ตรงหน้าพวกเขาเพื่อที่พวกเขาจะได้เห็นว่ามันจะเป็นอย่างไร พวกเขาให้ข้อเสนอแนะของพวกเขาฉันถ่ายภาพหน้าจอแล้วดำเนินการเปลี่ยนแปลง พวกเขาชอบที่จะเห็นว่าการเปลี่ยนแปลงจะเป็นอย่างไรและฉันชอบมัน b / c มันเร็วและฉันได้รับคำตอบในการประชุมครั้งนั้น ... ไม่ใช่ครั้งต่อไป


2
+1 เทคนิค strawman มักจะเป็นวิธีเดียวที่จะทำให้ผู้ใช้ปลายทางคิดเกี่ยวกับสิ่งที่พวกเขาทำ - งานของพวกเขาเป็นไปโดยอัตโนมัติสำหรับพวกเขาว่ามันยากสำหรับพวกเขาที่จะคิดเกี่ยวกับมัน
DaveE

ฉันคิดอย่างสุจริตว่าทุกคน (รวมถึงโปรแกรมเมอร์) สามารถให้ความต้องการได้ง่ายขึ้นในฐานะ "ไม่ฉันไม่ชอบสิ่งนั้นฉันต้องการสิ่งนี้เปลี่ยนแปลง" มากกว่า "ฉันต้องการสิ่งนี้" ฉันคิดว่ามันช่วยเน้นงานทันทีที่อยู่ในมือแทนที่จะพยายามคิดโครงการทั้งหมดในครั้งเดียว
Earlz

+1 เพื่อให้พวกเขาพูดว่า "ไม่ฉันไม่ชอบ" แทน "ฉันต้องการสิ่งนี้" หาก บริษัท ไม่ทราบอย่างชัดเจนว่าพวกเขาต้องการอะไรนี่คือแนวทางที่ฉันลองทำ
Rachel

11

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

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

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

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

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


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

+1 สำหรับ "ให้พวกเขาพูดคุยเพิ่มเติมเกี่ยวกับธุรกิจของพวกเขาและลดการใช้งานแอปพลิเคชัน" นั่นคือกฎทองข้อหนึ่ง
DPD

8

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

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

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

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

  • ข้อมูลการตลาด / การแข่งขันสำหรับเรื่องราวของผู้ใช้แต่ละคนเรากำลังทำอะไรที่คล้ายกับคู่แข่งของเรา แตกต่างกันอย่างไร คู่แข่งของเราบอกเล่าเรื่องราวใดและเราพยายามคัดลอก / เลียนแบบ / ปรับปรุง / สร้างสรรค์ใหม่ / แตกต่างอย่างมีจุดประสงค์หรือไม่

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

จากนั้นวาดขอบเขต:

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

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

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

จากมุมมองของคุณเพื่อกระตุ้นให้กระบวนการดำเนินการต่อ:

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

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

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


5

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

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

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

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


3

อย่าขอความต้องการ UI หรือข้อมูลถามความต้องการฟังก์ชั่น

ถามพวกเขาเกี่ยวกับสิ่งที่พวกเขาต้องการให้แอปพลิเคชันทำ ให้พวกเขาทำตามวิธีที่พวกเขาต้องการใช้แอปพลิเคชัน ปล่อยรายละเอียดเช่น UI, Data และอื่น ๆ ไว้สำหรับการเริ่มต้น

ฉันพบว่าบ่อยครั้งที่ผู้ใช้ไม่รู้สิ่งที่พวกเขาต้องการในแง่ของ UI หรือข้อมูล แต่พวกเขารู้ว่าสิ่งที่พวกเขาต้องการเท่าที่ฟังก์ชั่น ตัวอย่างเช่นพวกเขาจะบอกฉันว่า "ฉันต้องการเข้าสู่ระบบและดูข้อมูลลูกค้าทั้งหมด" อย่าเข้าไปในสิ่งที่หน้าจอจะมีลักษณะหรือข้อมูลที่พวกเขาต้องการเพียงแค่ได้รับฟังก์ชั่นจากพวกเขา

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

เมื่อคุณมีจุดเริ่มต้นมันง่ายกว่าที่จะรวบรวมข้อมูลและ UI และฉันพบว่าการทำงานเป็นจุดเริ่มต้นที่ดีที่สุด


2

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

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

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

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


1

ฉันจะบอกพวกเขาว่าคุณจะพัฒนาคุณสมบัติของโปรแกรมตามฟีเจอร์ ก่อนการประชุมครั้งต่อไปให้พูดใน 1-2 สัปดาห์คุณจะต้องใช้ฟีเจอร์ X จำนวนหนึ่ง นี่อาจเป็น 1, 2, 3 หรือมากกว่านั้น

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

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

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

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

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

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


1

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

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

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


1

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


1

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

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


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

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

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

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

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