Day-Zero Software Process™

Day-Zero Software Process 1.3

Day-Zero Software Process™ คือ กระบวนการผลิตซอร์ฟเวร์ที่ทำการทดสอบในขณะทำการออกการออกแบบโดยไม่ต้องรอการเขียนโปรแกรมเสร็จ (Day-Zero Acceptance Test – DAT )

การเขียนโปรแกรมที่ดีควรวางแผนการทดสอบตั้งแต่วันแรก (Day One) ของการเขียนโปรแกรม  การวางแผนการทดสอบทำให้รู้ว่าโปรแกรมนั้นๆ ควรทำงานอย่างไร และได้ผลอย่างไร   การทดสอบถือเป็นเครื่องมือที่สำคัญในการกำหนดคุณภาพของซอร์ฟแวร์

กระบวนพัฒนาซอร์แวร์ที่มีอยู่ในปัจจุบันมีการทดสอบหลักอยู่   3 ขั้นตอนหลัก คือ Unit Test ซึ่งเป็นการทดสอบในระดับโปรแกรมย่อยๆ,  SIT ( System Integration Test )  เป็นการทดสอบในระดับโปรแกรมเช่นเดิมแต่เน้นการทำงานระหว่างโปรแกรม  และ UAT ( User Acceptest Test )  เป็นการทดสอบการทำงานตามข้อกำหนดของผู้ใช้งานในสภาพการทำงานใกล้เคียงสภาพการทำงานจริงแลผลการทดสอบต้องได้รับการยอมรับจากผู้ใช้งาน

กระบวนการผลิตที่มีในปัจจุบัน มีข้อบกพร่อง ดังนี้ :

  •  รอโปรแกรมให้เขียนเสร็จก่อนจึงจะทำการทดสอบได้ แม้เริ่มวางแการทดสอบตั้งแต่ Day One คือก่อนการเขียนโปรแกรม  แต่การทดสอบได้ก็ต้องรอโปรแกรมเสร็จก่อนอยู่ดี
  • ไม่มีข้อกำหนดการแยก business requirement/rule ออกจากโปรแกรม UI  ส่วนใหญ่เลือกที่จะเขียน business rule หรือ requirement ฝังไว้ในโปรแกรม UI เลย ส่วนฐานข้อมูลทำหน้าที่เพียงเก็บข้มูล  ทำให้เกิดความซับซ้อนออกแบบ, เพิ่มความสับสนในการสื่อสาร, เพิ่มความยากการเขียนโปรแกรมและ ยุ่งยากในการเตรียมและทดสอบ  แม้นำ UML เข้ามาช่วยในการออกแบบแต่ก็เพิ่มงานในส่วนนี้
  • มีแนวโน้มเกิดปัญหาได้ง่ายและยากต่อการบำรุงรักษาระบบ ใช้เวลานานในการแก้ไขโปรแกรมหรือปรับเปลียนความต้องการ

กระบวนการผลิต Day-Zero Software Process™  มีข้อดี ดังนี้ :-

  • สามารถทดสอบระบบงานได้ตั้งแต่ขั้นตอนออกแบบ ไม่ต้องรอโปรแกรม  ถือเป็น Day Zero คือไม่มีโปรแกรมก็สามารถทดสอบได้เลยว่าการออกแบบเป็นไปตามข้อกำหนด Requirement หรือไม่
  • เนื่องจากต้องทดสอบในระดับการออกแบบ ดังนั้นในระหว่างการออกแบบจึงต้องเขียน business requirement/rule ควบคู่ไปกับการออกแบบโครงสร้างข้อมูล ทำให้แยกงานส่วนนี้เสร็จก่อนและแยกออกจากการเขียนโปรแกรม UI โดยเด็ดขาด    ทำให้ง่ายต่อการเขียนโปรแกรม UI และง่ายต่อการทดสอบ  Unit Test
  • โอกาสเกิดปัญหาน้อยมาก  แต่หากมีปัญหาสามารถระบุและแก้ไขปัญหาได้เร็ว เพราะ การทำงานแยกหน้าที่กันเด็ดขาดระหว่างโปรแกรมและฐานข้อมูล   การบำรุงรักษาหรือการปรับเปลียนเพิ่มเติมทำได้ง่ายเพราะเลือกเพิ่มเติมหรือแก้ไขได้ทั้งจากด้าน UI หรือ ฐานข้อมูล หรือทั้งสองด้าน

กระบวนการผลิตนี้บริษัทได้ทำการทดสอบและใช้งานจริง ถือเป็นนวัตกรรมและเป็นหนึ่งในเทคโนโลยี่ของบริษัท

 

Top
Paste your AdWords Remarketing code here