ฉันคิดว่าการทดสอบ Joel นั้นทันสมัย - มันเป็นข้อมูลล่าสุดของซอฟต์แวร์อื่น ๆ ที่เขียนว่า "ไร้กาลเวลา"
การพัฒนาผลิตภัณฑ์ (ซึ่งรวมถึงการพัฒนาซอฟต์แวร์) โดยที่ไม่มีข้อมูลจำเพาะเป็นเพียงเรื่องบ้าคลั่ง
คุณรู้ได้อย่างไรว่าคุณต้องการไปที่ไหน
มีเพียงจุดเดียวที่ฉันจะทำเกี่ยวกับการเขียน spec (จริง ๆ แล้วฉันไม่คิดว่ารายละเอียดของ Joel ดีมาก ... ดีกว่าไม่มีอะไร แต่ไม่ดีเท่าที่ควร) จุดนั้นคือ:
เมื่อเขียนสเป็คให้พูดเฉพาะสิ่งที่ผลิตภัณฑ์ต้องทำไม่ใช่ว่าจะต้องทำอย่างไร
ซึ่งหมายความว่าคุณจะไม่บอกรายละเอียดการใช้งานในข้อมูลจำเพาะ นั่นเป็นกิจกรรมการออกแบบและคุณปล่อยให้ประสบการณ์และความคิดสร้างสรรค์ของนักออกแบบ
[มีข้อยกเว้นเพียงข้อเดียวสำหรับกฎนี้: บางครั้งรายละเอียดการใช้งานหรือวิธีการบางอย่างได้รับคำสั่งหรือจำเป็นซึ่งในกรณีนี้จะใส่ไว้ตัวอย่างเช่นหากซอฟต์แวร์ต้องเขียนใน PHP และไม่สามารถต่อรองได้ สเป็ค ควรมีกรณีนี้น้อยมาก]
ฉันอาจเพิ่ม: ไม่มีการติดตามข้อผิดพลาดเป็นการกระทำของความบ้าคลั่งเท่ากัน เป็นวิธีที่ไม่เป็นมืออาชีพและโง่ที่สุดในการดำเนินการและจะนำไปสู่ความเจ็บปวดและความทุกข์ทรมาน