Lehman Laws of Software Evolution
ช่วงนี้ต้องอ่าน Paper เตรียมนำเสนออาจารย์ แต่อ่านไปอ่านมา มันก็ไปอ้างอิง Paper อื่นๆด้วย เลยเอามาสรุปไว้ใน ฺBlog ดีกว่า กฎแห่งการเปลี่ยนแปลงอย่างต่อเนื่อง (Law of Continuing Change:1974) An E-type program that is used must be continually adapted else it becomes progressively less satisfactory. Software ต้องมีการปรับเปลี่ยนแก้ไข ตลอดช่วงเวลาที่ใช้งาน (Software Life Cycle) จนกระทั่งเลิกใช้ อาจจะมีการเปลี่ยน Version ใหม่ หรือ รื้อปรับระบบใหม่ เพราะ คุ้มค่ามากกว่าที่จะยอมแก้ไข (เช่น การเปลี่ยนเทคโนโลยี จาก VB6 ไปเป็น ASP.Net) กฎแห่งความซับซ้อนที่เพิ่มขึ้น (Law of Increasing Complexity:1974) As a program is evolved its complexity increases unless work is done to maintain or reduce it. Software มองลงไปที่ Source Code ยิ่งเวลาผ่านไป มีการแก้ไขปรับปรุงอยู่ตลอด สิ่งที่ตามมา รูปแบบโครงสร้างของ Program จะลดลง (พูดง่ายๆ Code มันเน่าและ เป็น spaghetti) และความซับซ้อนเพิ่มขึ้น Software ควรมี Archtecture ที่ดี และมีการคิดอย่างถี่ถ้วนก่อนการแก้ไข เพื่อลดความซับซ้อน กฎแห่งการวางระเบียบตัวเอง (Law of Self-regulation:1974) The…