กฎเกณฑ์ง่ายๆของซอฟต์แวร์คือ
- ซอฟต์แวร์ที่ถูกใช้งานจะต้องมีการแก้ไขปรับปรุงเพิ่มเติม
- และทุกครั้งที่มีการปรับปรุงนั้นความซับซ้อนและความไม่เป็นระเบียบของมันจะมีแต่เพิ่มขึ้น … ไม่มีทางลดลง
หลายครั้งความสับสนซับซ้อนตรงนี้มันมากจนไม่มีใครคนใดคนนึงเข้าใจมันได้อีกต่อไปแม้แต่กลุ่มคนที่สร้างมันขึ้นมากับมือ ทีมสามคนมีสามสมองและหกมือ ทีม 10 คนมี 10 สมองและ 20 มือ ส่วนผสมของมันมหาศาลเกินบรรยาย
เหตุการณ์นี้เรียกอีกอย่างได้ว่า “ซอฟต์แวร์ เอ็นโทรปี” แปลว่าระดับความซับซ้อนและไร้ระเบียบในระบบหรือซอฟต์แวร์
นี่คือสาเหตุสำคัญที่ทำไมซอฟต์แวร์ของเราถึงได้ยากและใหญ่โตขึ้นทุกวัน มันไม่ใช่แค่เรื่องของรีไควเม้นท์หรือฟีเจอร์แต่มันคือความซับซ้อนที่สะสมกันมารุ่นต่อรุ่นจนถึงจุดสูงสุดที่คนหนึ่งคนหรือหนึ่งกลุ่มจะเข้าใจมันได้อย่างถ่องแท้
ที่น่ากลัวคือเรื่องนี้ไม่มีจุดสูงสุด ความซับซ้อนจะไม่มีขีดจำกัด ความไม่เป็นระเบียบเรียบร้อยจะไม่มีวันหยุดขยายตัว … จนกว่าเราจะตระหนักถึงปัญหาอันใหญ่โตนี้และเริ่มต้นทำอะไรบางอย่างกับมัน
วันนี้ใช่วันนั้นรึเปล่า?