วิธีจัดการกับโปรเจ็กต์การเขียนโปรแกรมที่ล้มเหลว?


12

ไม่ใช่เรื่องแปลกที่โครงการจะล้มเหลว

ในฐานะโปรแกรมเมอร์คุณจัดการกับโปรเจ็กต์ที่ล้มเหลวอย่างไร

คำจำกัดความบางประการของความล้มเหลว:

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

หรือบางทีคุณอาจมีคำนิยามของความล้มเหลว

คุณเริ่มชี้นิ้วหรือไม่? คุณตำหนิตัวเอง, ข้อกำหนด, เทคโนโลยี, การจัดการ, ลูกค้า ฯลฯ หรือไม่? คุณได้เรียนรู้บทเรียนจากการทำงานเป็นทีมหรือไม่?


11
ฉันมักจะร้องไห้เหมือนเด็กทารก มันไม่ได้ผลสำหรับทุกคน
ChaosPandion

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

คำตอบ:


8

คุณควรเรียนรู้บทเรียนสำหรับทุกโครงการล้มเหลวหรือประสบความสำเร็จ มีจำนวนมากที่จะเรียนรู้จากโครงการที่ดี

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

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

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

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


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

3

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


3

มีหนังสือยอดเยี่ยมเกี่ยวกับเรื่องที่เรียกว่า Death March: http://www.amazon.com/Death-March-2nd-Edward-Yourdon/dp/013143635X

ฉันขอแนะนำให้คุณอ่าน คุณอาจรู้จักโครงการของคุณในหลายคำอธิบาย

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


1

ฉันโทษทุกคนยกเว้นฉัน .... ฮ่าฮ่าแค่ล้อเล่น สิ่งที่ฉันทำคือเขียนเอกสาร "Mea Culpa" ด้วยทุกสิ่งที่ "ฉันทำผิด" อาจจะไม่ได้ช่วยโครงการ แต่เป็นวิธีที่ดีที่จะไม่ทำซ้ำความผิดพลาดเดียวกัน

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