ปัญหาที่ใหญ่ที่สุดในการทำซอฟต์แวร์

🤔 อะไรคือสาเหตุหลักที่ทำให้บริษัทซอฟต์แวร์ต้องปิดตัว

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

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

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