วิธีเริ่มโครงการพัฒนาเมื่อมีผู้มีส่วนได้ส่วนเสียมากเกินไป


15

ฉันเพิ่งเริ่มงานใหม่ที่วิทยาลัยในฐานะนักพัฒนาโปรแกรมประยุกต์บนเว็บ

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

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

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

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

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


8
หากคุณเป็นผู้พัฒนาเพียงคนเดียวใครคืออีก 17 คนในการประชุม?
pdr

1
คำถามที่ดี. อาจารย์ใหญ่ของโรงเรียนสมาชิกต่าง ๆ ของเจ้าหน้าที่สอน (แม้แต่ครู PE ก็อยู่ที่นั่น) และผู้คนมากมายที่มีชื่อย่อ
Matt Harrison

1
@MattHarrison: แต่พวกเขามีอะไรที่เหมือนกันกับเว็บแอปพลิเคชันของคุณ? พวกเขาเป็นผู้ใช้หรือไม่ พวกเขารักษาระบบเดิมที่คุณกล่าวถึงไว้หรือไม่? คุณควรชี้แจงให้ดีเพื่อให้แน่ใจว่าคุณรู้ว่าคุณจะขอความต้องการจากใครและคุณสามารถเพิกเฉยได้
Doc Brown

1
@DocBrown ฉันขอโทษบางทีฉันอาจจะไม่ชัดเจน พวกเขาทั้งหมดจะเป็นผู้ใช้ในอนาคตของระบบ แอปพลิเคชันจะเป็นแบบข้ามวิทยาลัยและมีผู้ใช้งานมากกว่า 3,000 คน ฉันคิดว่าสิ่งที่เกิดขึ้นที่นี่คือผู้คนชวนคนและการประชุมได้กลายเป็นวงเวียน สิ่งที่ฉันจะทำคือเน้นความจำเป็นในการมีส่วนร่วมของผู้มีส่วนได้ส่วนเสียที่น้อยลง
Matt Harrison

5
@ สำหรับผู้ลงนามนิรนาม / ผู้ใกล้ชิด: นี่อาจดูเหมือนว่าจะแปลเป็นภาษาท้องถิ่นได้อย่างรวดเร็ว แต่ฉันคิดว่าคำถามที่แท้จริงคือคำถามการพัฒนาที่น่าสนใจทั่วไป: "วิธีเริ่มโครงการพัฒนาเมื่อมีผู้มีส่วนได้ส่วนเสียที่อาจเกิดขึ้นมากเกินไป" และคำถามประเภทนั้นคือ IMHO ในหัวข้อที่นี่
Doc Brown

คำตอบ:


26

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

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

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


คำแนะนำที่ยอดเยี่ยม ขอขอบคุณ! ฉันขออธิบายหน่อยได้ไหม เมื่อคุณพูดว่า 'ชัดเจนความรับผิดชอบของคุณ' คุณหมายถึงทำให้ชัดเจนหรือชัดเจนในการกำจัดพวกเขา? ขออภัยฉันเป็นคนอังกฤษดังนั้นอาจเป็นภาษาอังกฤษแบบสหรัฐอเมริกา
Matt Harrison

1
@ MattHarrison: หวังว่าการแก้ไขของฉันจะทำให้ชัดเจนยิ่งขึ้น - แม้ว่าบางครั้งมันอาจเป็นความคิดที่ดีที่จะกำจัดความรับผิดชอบบางอย่าง ;-)
Doc Brown

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

6

แยกคนที่ต้องการให้โครงการนี้ทำงานจากฝูงจริง ๆ

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

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

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

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

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


1
+1 สำหรับการเน้นประเด็นทางการเมืองของสถานการณ์ดังกล่าว
Doc Brown

4

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

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

1) สำรวจทีม - ค้นหาสิ่งที่สมาชิกแต่ละคนเห็นว่าสำคัญ / จำเป็น / สำคัญที่สุด

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

3) ใช้ความคิดเห็นและข้อเสนอแนะของผู้ใช้รายอื่นเพื่อเป็นแนวทางในกระบวนการพัฒนา

(Build, ประเมินผลตอบรับ, Build, ประเมินผลตอบรับ) ล้างและทำซ้ำ

นอกจากนี้คุณอาจลองวาง "คะแนนความพยายาม" หรือเวลาที่คาดว่าจะเสร็จสมบูรณ์ .. ซึ่งอาจช่วยในการจัดลำดับความสำคัญ


1
+1 นั่นคือวิธีที่จะขับรถเมื่อคุณไปถึงการเคลื่อนไหว :-)
Doc Brown

1
+1 สำหรับอันนี้ถึงแม้ว่าฉันจะยังคงอธิบายให้ชัดเจนยิ่งขึ้นว่าคุณต้องระวัง "ระบบที่ไม่ดี" ซึ่งทำสิ่งที่ต้องทำจริง ๆ จัดลำดับความสำคัญในแบบที่คุณไม่ได้แก้ไขสิ่งที่ไม่เสียเน้นที่ที่คุณสามารถรับผลกำไรที่มองเห็นได้จริง
Joris Timmermans

@MadKeithV เห็นด้วย .. "มุ่งเน้นไปที่คุณสามารถบรรลุกำไรที่มองเห็นได้จริง" ความคิดเห็นที่ปรับปรุงเพื่อรวมคำสั่งนั้น
hanzolo

2

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

วิธีหนึ่งในการทำเช่นนี้คือการขอให้แต่ละคนบันทึกความต้องการเหล่านั้นลงบนกระดาษโน๊ต - หนึ่งแนวคิดต่อหนึ่งกระดาษเหนียว จากนั้นจึงเรียกใช้Affinity Diagramเพื่อช่วยให้พวกเขาจัดกลุ่มแนวคิดที่แตกต่างกันตามความต้องการเฉพาะ สุดท้ายทำการลงคะแนน ( Multi-Voting ) เพื่อให้คุณเห็นความต้องการที่ยิ่งใหญ่ที่สุด

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


0

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

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