ก่อนอื่นขอกล่าวทักทายทุกท่านด้วยคำว่า สวัสดี.. บทความนี้เป็นชิ้นแรกของผม นึกอยู่นานว่าจะเล่าเรื่องอะไรให้ฟังดี
ก็ขอยกเอาแนวทางการแก้ไขปัญหาเป็น Case Study หรับการบริหารงานของบริษัท Software ที่เคยลองทำมาแล้วได้ผล..
เรื่องมีอยู่ว่า..
มีบริษัท Software แห่งหนึ่งประสบปัญหาปิดโครงการล่าช้ามาตลอด.. ทำให้เม็ดเงินที่ได้มาในแต่ละ Phase ไม่เพียงพอ
ต่อทุนดำเนินงานในขณะที่โครงการยังปิดไม่ได้.. นอกจากนั้นยังมีปัญหาในเรื่องความเชื่อมั่นของทีมพัฒนาระบบที่มีต่อบริษัท
รวมไปถึงตัวผู้บริหาร พอดีว่าผมได้มีโอกาสเข้าไปสางปัญหานี้ด้วยตัวเองในตำแหน่ง Project Manager โดยคุมทั้งบริษัท
รองจากเจ้าของบริษัททั้ง 2 ท่านเท่านั้น ผมได้ใช้เวลาศึกษาปัญหา และผู้คนของที่นี่อยู่ราว 3 สัปดาห์ และได้สรุปปัญหาออกมาได้ดังนี้
ต้นตอของปัญหาที่แท้จริง.. มีรากลึกมาจาก..
เจ้าของบริษัทขาดวิสัยทัศน์ และขาดประสบการณ์ตรงด้านการบริหารทีมพัฒนา Software เนื่องจาก
1. จัดพนักงานลงในตำแหน่งต่างๆที่ไม่ตรงกับทักษะของพนักงาน และเนื้องานที่พนักงานเหล่านั้นรับผิดชอบอยู่
2. จัดสายงานบริหาร ทีมงานไม่เหมาะสมกับสิ่งที่ควรจะเป็น
3. ไม่ให้ความสำคัญกับการประชุมอย่างเพียงพอ และไม่มีการจดบันทึกการประชุมในบริษัท ทำให้การติดตามความคืบหน้าของงานทำได้ยาก
และที่สำคัญที่สุดคือไม่มีการจดบันทึกการประชุมในประเด็นที่ได้ประชุมกับลูกค้า เป็นช่องทางที่อาจทำให้ไม่รู้ความต้องการที่แท้จริงของลูกค้า
และอาจเสียเปรียบลูกค้าได้ในภายหลัง
4. ไม่มีการนำแบบฟอร์ม User Requested มาใช้ในการรับ Request จากบริษัทลูกค้าอย่างเป็นทางการ
มีเพียงการจดบันทึกบางครั้งคราวแต่ไม่มีแบบฟอร์มที่แน่นอนตายตัวเป็นมาตรฐาน และมากกว่านั้นคือ..
ไม่มีการให้ลูกค้าเซ็นต์รับรอง Request เหล่านั้นเพื่อเป็นการยืนยันทั้ง 2 ฝ่าย
5. มีการเขียนผังระบบงาน, ERD ในตอนแรก.. แต่ไม่มีการปรับปรุงให้ทันสมัยตลอดเวลา..
ทำให้ไม่สามารถใช้ประโยชน์ในการอ้างอิง หรือวางแผนได้
6. มีการจัดทำ Data Dictionary ในระยะหนึ่ง.. แต่ขาดการปรับปรุงให้ทันสมัยตลอดเวลา..
ทำให้ไม่สามารถใช้ประโยชน์ในการอ้างอิง หรือวางแผนได้
7. ไม่มีการเขียน Program Spec. Program Dict. ทำให้เมื่อโปรแกรมเมอร์ลาออก..
ทุกสิ่งทุกอย่างจึงไปกับโปรแกรมเมอร์รายนั้นทั้งหมด เมื่อมีการรับโปรแกรมเมอร์ใหม่เข้ามา
ต้องเสียเวลาไล่ Code นานพอสมควร.. ทั้งๆที่ความจริงโปรแกรมเมอร์เข้าใหม่ควรทำงานต่อได้เลย
โดยเสียเวลาศึกษาเพียง Business Rules ของลูกค้าเท่านั้น.. หรือหากต้องใช้เวลาทำความเข้าใจกับ
สไตล์การเขียนของโปรแกรมเมอร์คนเก่า ก็จะเสียเวลาเพียงเล็กน้อย
ผลรวมทั้งหมด.. มาส่งผลให้โครงการดำเนินไปอย่างล่าช้า.. ปิดโครงการไม่ทันตามกำหนด
ซึ่งส่งผลกระทบต่อเนื่องไปถึง ทุนการดำเนินงานไม่เพียงพอในแต่ละ Phase นั้นๆ
ทำให้บางครั้งเจ้าของบริษัทต้องใช้วิธีการที่ไม่ค่อยยุติธรรมกับพนักงาน เช่น สัญญาว่าจะให้โบนัสแล้วไม่ให้,
สัญญาว่าจะขึ้นเงินเดือนแล้วไม่ขึ้น, และที่แย่ที่สุดคือ บีบพนักงานให้ลาออกด้วยวิธีทางการเมือง..
เมื่อผมได้พบปัญหาเหล่านี้แล้วตกใจมาก.. เพราะถ้าเป็นบริษัทปกติธรรมดาแล้ว.. มีแต่เจ๊งเท่านั้น.. แต่บริษัทนี้ยังอยู่ได้เพราะ..
1. บังเอิญว่า สัญญาที่ทำกับลูกค้านั้น ไม่ได้ระบุเรื่องค่าปรับไว้..
(ซึ่งตัวนี้บริษัทลูกค้าทั้งหลายดูไว้เลยนะครับ.. อย่าประมาทเลินเล่อแบบนี้ เพราะมันหมายถึง
ผู้พัฒนา จะปิดโครงการเมื่อไรก็ได้.. คุณจะมีต้นทุนแฝงเรื่องค่าเสียโอกาสทันที..
ซึ่งในหลายๆ Case มันมีค่ามหาศาลเชียว)
2. บางโครงการ เป็นงานที่รับซ่อมต่อจากรายอื่นอีกทอดหนึ่ง.. จึงมีค่าความเมตตากรุณา เอื้ออาทรกันอยู่..
ยังละเว้นชีวิตกันได้.. (เหมือนหนังจีนมั๊ย 555 แต่มันเป็นเรื่องจริง.. เรื่องจริงที่ทำให้บริษัทลูกค้าเศร้าในภายหลัง)
ขั้นต่อมา.. ผมได้รีบดำเนินการผ่าตัดการบริหารทีมงานของบริษัทนี้โดยด่วน.. ดังนี้..
(โปรดติดตามตอนต่อไป.. เพราะวันนี้ดึกแล้ว.. ขอตัวไปสวดมนต์นั่งสมาธิก่อน.. ราตรีสวัสดิ์ทุกท่าน)
|