จากบทที่ 1 ของหนังสือ Clean Agile : Back to Basics
ว่าด้วยเรื่อง Introduction to Agile
พูดเรื่องของ the Iron Cross of project management ซึ่งประกอบไปด้วย

  • Good คือ คุณภาพต้องดี (Quality)
  • Fast คือ ทำการตรงตามเวลา (Time)
  • Cheap คือค่าใช้จ่ายไม่แพง (Cost)
  • Done คือทำงานเสร็จตามขอบเขตที่ตกลง (Scope)

โดยวิธีการที่มักจะทำกันเมื่อ project มีปัญหา
เช่นทำไม่ทัน มักจะงัดวิธีการต่าง ๆ เหล่านี้มาใช้งาน

1. ขอเปลี่ยนเวลาส่งมอบ

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

ประเด็นที่สำคัญกว่าการ delay คือ
รู้เมื่อไรว่าต้อง delay
ยิ่งว่านั้นคือ แจ้งว่าจะ delay ตอนไหน
ตอนที่ใกล้จะส่งมอบ หรือ แจ้งตั้งแต่เริ่มต้นทำ ?
ตรงนี้คือประเด็นมากกว่า ยอมรับกันตั้งแต่แรก
ก็จะเข้าใจมากขึ้น หรือทำเป็นไม่เข้าใจกัน !!

2. เพิ่มคนเข้ามาในขณะที่กำลังพัฒนากัน

ถ้ามองในแง่ของการจัดการ ถ้า 1 คนได้ 1 งาน
ดังนั้นถ้าเรามี 100 คน ต้องได้ 100 งานแน่ ๆ มันจริงหรือไม่นะ ?

ในหนังสือ The Mythical Man-Month เขียนไว้ว่า
Adding manpower to a late project makes it later.

โดยที่การเพิ่มคนเข้ามา จะมี productivity ตามรูปนี้

3. ลดคุณภาพของการพัฒนาลงไป

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

ในหนังสือเขียนไว้ว่า 
The only way to go fast, is to go well.

4. สิ่งสุดท้ายคือการปรับเปลี่ยน scope หรือขอบเขตของงาน

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