จะทำอย่างไรเมื่อโครงการ "ล้มเหลว" ของคุณเป็นจริง "สำเร็จ"


14

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

ฉันควรจะไม่แคร์? เป็นไปได้ไหมที่ลูกค้าไม่รู้ว่าจะมีแอปพลิเคชันที่ดีกว่านี้หรือไม่?

ฉันจะหยุดการใส่ใจในการสร้างสิ่งที่ถูกต้องที่จุดใดและเพียงแค่ไปกับการไหล?

คำตอบ:


37

หากลูกค้ามีความสุขคุณกำลังทำสิ่งที่ถูกต้อง ผู้คนจำนวนมากสนุกกับฮ็อตด็อกโดยไม่รู้ตัวว่าทำอย่างไร ...

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

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

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


สวัสดี Robert ขอบคุณสำหรับการเพิ่มลิงค์นั้น ฉันพิมพ์บน iPhone ของฉันและไม่ต้องการสลับบริบทเพื่อค้นหา
benzado

1
ที่เกี่ยวข้อง: โจ Spolsky ของท่อเทปโปรแกรมเมอร์และการตอบสนองของ Zawinski
benzado

นอกจากนี้: jwz ของGroupware Bad (ขออภัยสำหรับลิงก์ทั้งหมดฉันกำลังสนุกกับการอ่านอีกครั้งในขณะนี้ ... )
benzado

ฉันทำงานกับซอฟต์แวร์ที่มีอายุ 20 ปีขึ้นไปมันผ่านวันที่ใช้งานไปแล้วและมันเริ่มเขียนได้ไม่ดี (แม้ตามมาตรฐานเมื่อ 20 ปีที่แล้ว) ("รหัสนี้เป็นสุนัขที่กินไม่ได้ตอนนี้ถึงเวลาอาหารเย็นแล้ว" เป็นคำพูดที่น่าจดจำ) หากค่าใช้จ่ายในการรักษา - 10 เท่าที่ควร แต่สิ่งกีดขวางในการเข้าร่วมการแข่งขันนั้นสูงมากดังนั้นลูกค้าจึงต้องจ่าย ทางเลือกคือ compeditor พร้อมด้วยซอฟต์แวร์ simlar และโครงสร้างต้นทุน มันเป็นใบอนุญาตในการพิมพ์เงินและนั่นเป็นเหตุผลว่าทำไมธุรกิจการเขียนซอฟต์แวร์หากพวกเขาทำเพื่อความเป็นเลิศทางเทคนิค
mattnz

4

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


3

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


2

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

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

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


2

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


0

บางทีลำดับความสำคัญ / มุมมองของคุณผิด

สิ่งที่สำคัญที่สุดเกี่ยวกับโครงการซอฟต์แวร์ใด ๆ ก็คือมันตอบสนองความต้องการของผู้ใช้

นี่เป็นเวลาที่สำคัญยิ่งกว่าที่จะ "ถูกต้อง" ตามจำนวนเดือนในการออกแบบแฟชั่น C / S

ใช่คุณควรใช้รูปแบบการออกแบบที่ถูกต้องใช้เทคโนโลยีอย่างถูกต้อง ฯลฯ ฯลฯ แต่เฉพาะเท่าที่ทำให้ง่ายต่อการใช้ความต้องการของผู้ใช้ในลักษณะที่แข็งแกร่งและบำรุงรักษา

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


0

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

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

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