หลังจากที่ที่แอบซุ่มอ่านบทความของผู้เขียนท่านอื่น ๆ อยู่นานแสนนาน ถึงคราวที่จะลงมือเขียนบทความบ้างซะแล้ว คราวนี้จึงขอหยิบยกเรื่อง Test Process มากล่าวแล้วกันนะค่ะ
ก่อนอื่นต้องขอบอกกันไว้ก่อนค่ะ ว่า Test Process ของแต่ละองค์กรนั้น อาจจะมีรูปแบบที่เหมือน หรือ แตกต่างกันไปบ้าง แต่หัวใจหลักน่าจะขึ้นอยู่กับการนำไปใช้ และ ประสิทธิภาพที่เกิดขึ้นจาก Test Process ของเราค่ะ
การทดสอบ หรือ การ test นั้นคืออะไร ทุก ๆ ท่าน ก็คงจะทราบความหมายกันดีอยู่แล้ว สรุปสั้น ๆ ก็คือ การทำให้ทีมทดสอบระบบ(Test Team) มั่นใจได้ว่า software ชิ้นนั้น ๆ ทำงานได้ถูกต้องตามที่ทีมพัฒนาระบบ(Dev Team)สร้างขึ้น รวมถึงเป็นไปตามความต้องการของผู้ใช้งานระบบ หรือ User นั่นเอง
ซึ่งลักษณะโดยทั่วไปของ software นั้นจะมีความซับซ้อน และมีการพัฒนาและเปลี่ยนแปลงแก้ไขตลอดเวลา เพื่อรองรับกับเทคโนโลยีที่เปลี่ยนแปลงไปอย่างรวดเร็วเช่นกัน
ดังนั้น เพื่อให้มั่นใจได้ว่าการทำงานต่าง ๆ กับทุก ๆ ส่วนของ Software สามารถทำงานร่วมกันได้อย่างถูกต้องแล้ว จึงถือว่าเป็นเรื่องสำคัญอย่างยิ่ง และเพื่อให้ทันกับการพัฒนาของ Software ที่มีการเปลี่ยนแปลงแก้ไขอยู่ตลอดเวลาแล้วนั้น เราจึงควรมีกระบวนการทดสอบที่เป็นระบบ และสามารถนำกลับมาใช้ใหม่ หรือนำมาทำซ้ำได้บ่อยเท่าที่ต้องการ
ทั้งนี้ หากมีกระบวนการทดสอบที่เป็นระบบ จะส่งผลให้ผู้ทดสอบระบบ(Tester) ก็จะ สามารถตรวจสอบความถูกต้องของระบบได้อย่างรวดเร็ว เพราะมีกระบวนการที่ชัดเจน ซึ่งจากกระบวนการทดสอบระบบที่มีอยู่นั้น จะส่งผลให้ทีมพัฒนาระบบ(Dev Team) และฝ่ายที่จะต้องนำระบบไปใช้ ก็จะทำให้เกิดความมั่นใจ ว่า Software สามารถทำงานได้ตามปกติ หรือ ถ้ามีข้อผิดพลาด ก็จะตรวจพบและสามารถทำการแก้ไขก่อนนำไปใช้จริงได้
วัตถุประสงค์หลักของ Test Process นั้น เพื่อระบุถึงขั้นตอนการดำเนินงานต่าง ๆ ภายในทีมเทส (Test Team) รวมถึงการประสานงานและการทำงานร่วมกันกับ ทีมงานที่ต้องเกี่ยวข้องในการทำงานนั้น ๆ พร้อมทั้งกำหนดรายละเอียดเกี่ยวกับเอกสารเข้า – ออก ต่าง ๆ ที่เกี่ยวข้อง
ทีมผู้พัฒนาระบบงานนั้น ๆ ตามรายละเอียด / Solution ต่าง ๆ ตามที่ System Analyst (SA) เป็นผู้กำหนดให้ โดยพัฒนาระบบงานนั้นๆ ตามระยะเวลาที่ทาง Project Manager (PM) เป็นผู้กำหนดไว้
ทีมผู้ตรวจสอบระบบงานนั้น ๆ ตามกระบวนการของทีม (Test Process) ตามรายละเอียดต่าง ๆ ตามที่ Project Manager (PM) กำหนดไว้ ประกอบกับข้อมูล Solution ต่าง ๆ ตามที่ System Analyst (SA) เป็นผู้กำหนดให้ ทั้งนี้ระยะเวลาการทดสอบระบบงานนั้นๆ จะดำเนินงานตามตารางเวลาที่ทาง Project Manager (PM) เป็นผู้กำหนดไว้
ทีมผู้ตรวจสอบระบบงานนั้น ๆ ตามรายละเอียดต่าง ๆ ตามที่ Project Manager (PM) กำหนดไว้ ทั้งนี้ระยะเวลาการทดสอบระบบงานนั้นๆ จะดำเนินงานตามตารางเวลาที่ทาง Project Manager (PM) เป็นผู้กำหนดไว้
ผู้กำหนดรายละเอียด / ขอบเขต / เงื่อนไขของการทำงาน พร้อมทั้งติดตามการดำเนินการต่าง ๆ ให้เป็นไปตามที่กำหนดไว้ของระบบงานทั้งหมด
ผู้กำหนดรายละเอียด / ขอบเขต / เงื่อนไขของการทำงาน พร้อมทั้งติดตามการดำเนินการต่าง ๆ ของ Developer (DEV) ให้เป็นไปตามที่กำหนดไว้ ตามรายละเอียดต่าง ๆ ตามที่ Project Manager (PM) กำหนดไว้ ประกอบกับข้อมูล Solution ต่าง ๆ ตามที่ System Analyst (SA) เป็นผู้กำหนดให้
ผู้กำหนดขอบเขต / รายละเอียด / เงื่อนไข / Solution ต่าง ๆ เพื่อวางแผนการพัฒนาระบบงานให้กับ Developer (DEV)
ผู้พัฒนาระบบงาน โดยการพัฒนาระบบงานนั้น ๆ จะต้องเป็นไปตามข้อกำหนด / รายละเอียดต่าง ๆ ตามที่ IT Project Lead (PL) และ System Analyst (SA) กำหนดไว้
กระบวนการทดสอบระบบ สามารถแบ่งออกเป็นขั้นตอนการทำงานต่าง ๆ มีทั้งหมด 5 Phase ดังนี้
ส่วนแต่ละขั้นตอนของกระบวนการนั้น จะมีวิธีการจัดการอย่างไรบ้างนั้น รบกวนท่านผู้อ่านติดตามบทความในภาคต่อไปนะค่ะ
ของฝากก่อนจบภาคแรก บังเอิญผู้เขียนเข้าไปที่ blog แห่งหนึ่ง (ขออภัยที่จำ URL ไม่ได้ค่ะ) เจ้าของ Blog น่าจะมีตำแหน่ง QA Manager ที่ India ค่ะ กล่าวว่า
Quit calling it QA. Everybody should own quality.
อ่านบทความเกี่ยวกับ Test Process เพิ่มเติม :-
4 Responses to Test Process – ภาคเกริ่นนำ
M@YK!N
January 31st, 2009 at 11:31 pm
ชอบตรงคำว่า Test Team
welovebug too
April 27th, 2009 at 3:52 pm
เข้ามาอ่าน เพิ่ม ความรู้ค่ะ อิอิ สั้นไปหน่อย ค่ะ
Zyracuze
April 28th, 2009 at 1:09 pm
ยินดีต้อนรับครับ คุณ welovebug too หวังว่าบทความที่นี่จะมีประโยชน์ไม่มากก็น้อยนะครับ
job
June 23rd, 2009 at 8:46 am
มาเขียนอีกนะครับ ชอบมากๆ ครับ