Untitled Document
 
 
 
 
Untitled Document
Home
Current issue
Past issues
Topic collections
Search
e-journal Editor page

Data validation and verification

จรรยา ภัทรอาชาชัย 1




          คำว่า data verification มักจะพบว่ามาคู่กับคำว่า data validation นั่นคือมาในคำ data validation and verification ในบางที่ถึงกับใช้เป็นคำย่อว่า V&V เมื่อพิจารณาคำตามความหมายทั่วไปได้ดังนี้:
Data มาจากภาษาลาติน เป็นพหูพจน์ของคำว่า Datum แปลว่าข้อมูล ซึ่งเป็นค่าที่ได้มาเพื่อคำนวณประมวลผลให้ได้ค่าสถิติ สามารถเป็นได้ทั้งค่าตัวเลขที่ได้จากการชั่งตวงวัด และยังเป็นค่าที่เป็นได้ทั้งเชิงคุณภาพ
Verification แปลว่าการพิสูจน์ ยืนยันตรงกับความคาดหวัง
Validation แปลว่า การยืนยันว่าถูกต้อง
           เมื่อคำสองคำนี้มาอยู่ด้วยกันเป็น data verification กับ data validation ซึ่งมองเผินๆ จะคิดว่ามีความหมายเหมือนกัน ในความเป็นจริงคำสองคำนี้มีความหมายแค่คล้ายกันแต่ไม่หมือนกัน ในงานของ การบริหารจัดการข้อมูล คำสองคำนี้จะต้องมีอยู่และต้องอยู่ด้วยกัน แต่ขอบเขตของงานคาบเกี่ยวกันอยู่ แม้แต่ในภาษาอังกฤษก็ยังมีข้อถกเถียงและสับสนกับคำสองคำนี้
Data validation(1,2): Am I doing the right data ฉันกำลังทำกับข้อมูลที่ถูกต้องรึเปล่า
Data verification(1,2) Am I doing the data right ฉันกำลังทำข้อมูลให้ถูกต้องรึเปล่า
เมื่อนำคำสองชุดนี้มาอยู่ด้วยกัน เป็น Data verification and validation มีความหมายว่า ข้อมูลถูกบันทึกและตรวจสอบ (verify) ว่าบันทึกได้ถูกตรงกับที่คาดหวัง และตรงเหมาะสม (valid) ตามเกณฑ์ที่ตกลงไว้ 
           ดังนั้นในงานของ data verification จึงเป็นการรับผิดชอบงานตรวจสอบข้อมูลและทำให้ข้อมูลมีความครบถ้วนตรงกับที่เก็บรวบรวมมา ถ้าข้อมูลถูกบันทึกมาในแบบฟอร์มกระดาษ data verifica¬tion จะทำการตรวจสอบว่าข้อมูลที่บันทึกเก็บเข้าไปต้องตรง ครบถ้วนเช่นเดียวกับที่มีอยู่ในแบบแบบฟอร์มกระดาษหรือไม่ เป็นต้น มีกรณีที่ พบว่ามี data verification ครบและผ่านเพราะข้อมูลครบถ้วนและตรงตามแบบฟอร์มที่กรอกมาทุกอย่าง แต่เมื่อทำ data validation แล้วไม่ผ่านเพราะที่บันทึกไม่เป็นไปในเกณฑ์ที่ควรเป็นจริง ซึ่งข้อมูลเหล่านี้ถูกบันทึกผิดพลาดลงในแบบฟอร์มกระดาษมาตั้งแต่ต้น data validation จะต้องรับผิดชอบกรณีนี้ที่ต้องทำการตรวจสอบให้ได้ว่าค่าที่ถูกต้องคืออะไร เพื่อลดภาระงานที่ต้องตรวจสอบทุก field ของทุก record งาน data validation จึงถูกนำมาทำพร้อมๆ กับการ verify ด้วยการเขียนคำสั่งในโปรแกรม เพื่อทำการตรวจสอบ (logical check, range check) ในขณะที่กำลังบันทึกข้อมูล

     คำว่า data verification มักจะพบว่ามาคู่กับคำว่า data validation นั่นคือมาในคำ data validation and verification ในบางที่ถึงกับใช้เป็นคำย่อว่า V&V เมื่อพิจารณาคำตามความหมายทั่วไปได้ดังนี้:
Data มาจากภาษาลาติน เป็นพหูพจน์ของคำว่า Datum แปลว่าข้อมูล ซึ่งเป็นค่าที่ได้มาเพื่อคำนวณประมวลผลให้ได้ค่าสถิติ สามารถเป็นได้ทั้งค่าตัวเลขที่ได้จากการชั่งตวงวัด และยังเป็นค่าที่เป็นได้ทั้งเชิงคุณภาพ

     Verification แปลว่าการพิสูจน์ ยืนยันตรงกับความคาดหวัง
     Validation แปลว่า การยืนยันว่าถูกต้อง

     เมื่อคำสองคำนี้มาอยู่ด้วยกันเป็น data verification กับ data validation ซึ่งมองเผินๆ จะคิดว่ามีความหมายเหมือนกัน ในความเป็นจริงคำสองคำนี้มีความหมายแค่คล้ายกันแต่ไม่หมือนกัน ในงานของ การบริหารจัดการข้อมูล คำสองคำนี้จะต้องมีอยู่และต้องอยู่ด้วยกัน แต่ขอบเขตของงานคาบเกี่ยวกันอยู่ แม้แต่ในภาษาอังกฤษก็ยังมีข้อถกเถียงและสับสนกับคำสองคำนี้

     Data validation(1,2): Am I doing the right data ฉันกำลังทำกับข้อมูลที่ถูกต้องรึเปล่า
     Data verification(1,2) Am I doing the data right ฉันกำลังทำข้อมูลให้ถูกต้องรึเปล่า

     เมื่อนำคำสองชุดนี้มาอยู่ด้วยกัน เป็น Data verification and validation มีความหมายว่า ข้อมูลถูกบันทึกและตรวจสอบ (verify) ว่าบันทึกได้ถูกตรงกับที่คาดหวัง และตรงเหมาะสม (valid)
ตามเกณฑ์ที่ตกลงไว้ ดังนั้นในงานของ data verification จึงเป็นการรับผิดชอบงานตรวจสอบข้อมูลและทำให้ข้อมูลมีความครบถ้วนตรงกับที่เก็บรวบรวมมา ถ้าข้อมูลถูกบันทึกมาในแบบฟอร์มกระดาษ data verifica¬tion จะทำการตรวจสอบว่าข้อมูลที่บันทึกเก็บเข้าไปต้องตรง ครบถ้วนเช่นเดียวกับที่มีอยู่ในแบบแบบฟอร์มกระดาษหรือไม่ เป็นต้น มีกรณีที่ พบว่ามี data verification ครบและผ่านเพราะข้อมูลครบถ้วนและตรงตามแบบฟอร์มที่กรอกมาทุกอย่าง แต่เมื่อทำ data validation แล้วไม่ผ่านเพราะที่บันทึกไม่เป็นไปในเกณฑ์ที่ควรเป็นจริง ซึ่งข้อมูลเหล่านี้ถูกบันทึกผิดพลาดลงในแบบฟอร์มกระดาษมาตั้งแต่ต้น data validation จะต้องรับผิดชอบกรณีนี้ที่ต้องทำการตรวจสอบให้ได้ว่าค่าที่ถูกต้องคืออะไร เพื่อลดภาระงานที่ต้องตรวจสอบทุก field ของทุก record งาน data validation จึงถูกนำมาทำพร้อมๆ กับการ verify ด้วยการเขียนคำสั่งในโปรแกรม เพื่อทำการตรวจสอบ (logical check, range check) ในขณะที่กำลังบันทึกข้อมูล

Data validation
      Data validation เป็นการตรวจว่าข้อมูลเป็นไปตามเกณฑ์ของวัตถุประสงค์ เป็นข้อมูลที่ตรงตามที่ต้องการ ขั้นตอนในการทำทั่วไปที่ต้องระบุรายละเอียดชัดเจนใน SOP (standard operating procedure) ได้แก่
      การอ่านและทำความเข้าใจ protocol ในส่วนของตัวแปร และข้อมูลที่พึงประสงค์ตามเกณฑ์ ก่อนที่จะจัดการทำโครงสร้างของฐานข้อมูล
      การตรวจดูโครงสร้างของข้อมูลว่าเป็นตัวเลข (numeric) หรือเป็นอักขระ(string/ alphabet) ถ้าเป็นตัวเลขจะจัดเก็บตัวเลขกี่ทศนิยม ถ้าเป็นอักขระจัดช่องไฟและขนาดของตัวอักขระ โดยเฉพาะอักษรในภาษาอังกฤษ การจัดการอักษรตัวใหญ่ (capital letter) กับอักษรตัวเขียนเล็ก ทั้งนี้เป็นการช่วยในเรื่องของการจัด format ก่อนที่จะบันทึกเข้าไปในฐานข้อมูล เพื่อลดปัญหาเมื่อมีการเรียกข้อมูลไปทำการวิเคราะห์
การทำคู่มือลงรหัส (coding guide) และป้ายรหัส (label, tag name) ในพจนานุกรม (data dictionary)
       ช่วงขอบเขตค่าความเป็นจริงของข้อมูล (logical range) ที่ควรอยู่ในเกณฑ์ตามวัตถุประสงค์ ทั้งนี้เพื่อป้องกันค่าที่ไม่ปกติ (extreme value) เพื่อหาวิธีการป้องกันและตรวจพบในระหว่างบันทึกข้อมูล และส่งรายงานออกมาทำการตรวจสอบกลับไปยังผู้ประสานงานเก็บข้อมูล ตัวอย่างการทำ logical range check เหล่านี้ได้แก่ ช่วงเกณฑ์อายุที่ต้องการ ค่าปกติของระดับเคมีในเลือด
      ทำการเขียน การไหลของการบันทึกข้อมูล (data flow chart) เพื่อใช้ในการตรวจเงื่อนไขภายในแฟ้ม (internal check) การตรวจเงื่อนไขข้ามเชื่อมระหว่างแฟ้ม (cross link check )
จัดการเขียนคำสั่งเพื่อทำการตรวจสอบค่าขณะบันทึกเพื่อควบคุมคุณภาพ 
      ตัวอย่างการสร้าง logical check file ที่นิยมทำกัน ได้แก่การ check ช่วงของข้อมูลขณะบันทึก ถ้าไม่อยู่ในช่วง เครื่องจะไม่ไปต่อหรือการบังคับให้ต้องบันทึกข้อมูล ไม่มีการข้าม data field ใด field หนึ่ง โดยไม่ถูกตัวโปรแกรมตรวจสอบ หรือแม้กระทั่งการขึ้นสัญญาณเตือนเมื่อข้อมูลที่บันทึกเข้าไปเกิดขัดแย้งจากที่ควรจะเป็นจริงด้วย ตัวอย่างของ internal cross check เช่น อายุ 22 ปี สูง 110 เซนติเมตร โปรแกรมจะต้องแสดงออกมาบอกว่าไม่ valid และให้ทำการ verify ข้อมูลที่บันทึกเข้าไป ในแบบบันทึกหรือข้อมูลที่ส่งมาเป็นเช่นนี้จริงๆ หรือ เกิดอะไรขึ้น ต้องติดต่อประสานงานกับไปยังผู้รับผิดชอบการเก็บข้อมูลเพื่อจัดการกับปัญหานี้

Data verification 
       Data verification มีความสำคัญตั้งแต่การตรวจสอบระดับการบันทึก record และยังครอบคลุมไปถึงเมื่อมีการส่งถ่ายหรือทำสำนำข้อมูลขึ้นมายังต้องทำการตรวจสอบ (parity verify) ว่าเหมือนต้นฉบับทั้งตัวเนื้อหาของข้อมูล และในบางกรณีที่มีการทำเอกลักษณ์ลงในแถบบันทึก การ verify ก็เข้ามามีบทบาทในการตรวจสอบ
       ในที่นี้จะกล่าวถึงเฉพาะ data verification ในระดับ การบันทึกข้อมูลและตรวจสอบว่าตรงตามต้นแบบหรือไม่ งาน data verification มีรูปแบบที่ทำได้ทั้งหมด 2 รูปแบบคือ

1. Visual check
       ตรวจสอบด้วยสายตา นิยมใช้ตรวจสอบกรณีการใช้เครื่อง fax หรือ scan ข้อมูลเข้าสู่ระบบคอมพิวเตอร์ แล้วอาศัย software OCR ที่ทำการอ่านตัว graphic ของตัวอักษร ให้เป็นอักขระ หรือ graphic ของ diagnostic เช่นภาพ X-ray จำเป็นต้องใช้ expert ที่ไม่ใช่คอมพิวเตอร์มาช่วย Identify
       ตัวอย่างกลุ่มตัวเลขที่เขียนและมักมีปัญหาเสมอมา ต้องมาทำการ verify ด้วยสายตา เช่น

รูปที่ 1.  ตัวเลขที่ผิดพลาดเสมอ

ตัวแรกสุดสามารถเป็นได้ตั้งแต่ 9 , 4, 1
ตัวที่สองสามารถเป็นได้ตั้งแต่ 1, 7
ตัวที่ สามสามารถเป็นได้ 0 หรือ 6 หรือ o โอ
ตัวที่สี่มีโอกาสเป็นได้ตั้งแต่ 4 , 7 หรือ 9
นอกจากนี้ยังมีปัญหาของกลุ่มตัวอักษร เช่น
ในภาษาไทย ได้แก่
ก ภ ถ ด
ค ต ด
ผ พ
ธ ร
บ ข
ในกลุ่มภาษาอังกฤษ ได้แก่
 i j
 E F
 g q
 O D C
I l (แอลเล็ก) กับ 1 (หมายเลข หนึ่ง)
r v
0 (ศูนย์) O (โอ)
เป็นต้น
      การตรวจสอบด้วยสายตา ผู้ตรวจสอบต้องกลับมาพิจารณาเนื้อหาเป็นองค์ประกอบ เช่นเป็นส่วนหนึ่งของคำ หรือค่ารหัส ถ้ายังไม่ชัดเจนจำเป็นต้องแจ้งไปยังผู้รับผิดชอบเพื่อยืนยันค่าที่ถูกต้อง
      นอกจากนี้ปัญหาที่พบมากอีกเรื่องหนึ่งคือ การบันทึก วันเดือนปี เช่นในแบบฟอร์มกำหนดเป็นปี ค.ศ. แต่ผู้ตอบกลับใส่เป็นปี พ.ศ. โดยเฉพาะเมื่อใส่แค่ตัวเลขสองตัวสุดท้ายของปี พ.ศ. หรือ ค.ศ.
      ข้อผิดพลาดที่พบไม่น้อยไปกว่าที่กล่าวไปแล้วก็คือ การใส่วันเดือนปี เป็น เดือนวันปี อีกรูปแบบหนึ่งที่พบว่ามักผิดบ่อยๆ คือภาษา¬อังกฤษ ระหว่างอักษรตัวใหญ่ กับ อักษรตัวเล็ก

2. Double keying
      ตรวจสอบด้วยการบันทึกข้อมูลเข้าสองครั้ง โดยปกติจะเป็นการบันทึกข้อมูลจากกระดาษเข้าสู่คอมพิวเตอร์ เพื่อป้องกันการอ่านของผู้บันทึกข้อมูลและการผิดพลาดจากการพิมพ์ โดยใช้ผู้บันทึก 2 คนทำการบันทึกข้อมูลคนละชุด แล้วนำชุดทั้งสองมาเทียบกัน field ต่อ field ทุกๆ field


 รูปที่  2 verify คำว่า FISHER

ตัวอย่างการใช้ระบบ electronic capture scan ข้อมูลเข้าโปรแกรมเพื่อแปลงค่าเป็นอักขระจะเห็นว่าต้องมา verify ตัว FISHER


รูปที่  3 ตัวอย่างการ verify ว่า เป็นตัว  JOE

ตัวอย่างนี้เอง verify  ว่า เป็นตัว JOE

     เช่น EPI DATA สำหรับ verify แบบเปรียบเทียบแฟ้มข้อมูล 2 ชุด ถ้าไม่ตรงกันให้ทำการพิมพ์ รหัส field ที่ไม่ตรงออกมาเพื่อทำการตรวจสอบ นอกจากนี้ยังมีบางsoftware ที่ผลิตออกมารองรับการตรวจสอบสำหรับ verify เมื่อพิมพ์ check ครั้งที่สอง
 
 

รูปที่ 4.  การทำการ verify 2 data files เทียบกันด้วย EPIDATA


รูปที่ 5.  ผลของการเปรียบเทียบข้อมูลเทียบกันด้วย  EPIDATA

      ปัจจุบันมีการผลิต software เชิงพาณิชย์เกี่ยวกับการบริหารจัดการข้อมูล โปรแกรมหลายโปรแกรมที่ทำการโฆษณาใน web ว่าดีในการบันทึก มีความปลอดภัยของข้อมูล แต่ในทางปฏิบัติพบว่าไม่สามารถส่งข้อมูลออกมาเพื่อทำการวิเคราะห์ข้อมูลทางสถิติได้โดยตรง เมื่อเก็บข้อมูลแล้ว ข้อมูลอยู่ในฐานข้อมูล ที่ผ่านขั้นตอนของ Validation & Verification เมื่อต้องเรียกข้อมูลออกมาใช้ Tag และ Label ทั้งหลายมักติดตัวข้อมูลออกมาทำให้ข้อมูลแสดงค่าเป็นอักขระ ไม่สามารถนำไปคำนวณต่อไปได้ หรือถ้าให้แสดงเป็นตัวเลขก็จะถอดค่า Tag และ Label ทิ้ง ทำให้เป็นภาระนักสถิติต้องมานักเขียน Syntax จัดการข้อมูลใหม่ หรือต้องพึ่งพาโปรแกรมเชิงพาณิชย์ของ Third Party ในการจัดการ ซึ่งเมื่อมาถึงตรงนี้ต้องทำการตรวจสอบ Verification ใหม่ว่าเมื่อเขียน Syntax ใส่ Tagและ label คืนแล้ว –ข้อมูลยังตรงกับต้นฉบับในฐานข้อมูลหรือไม่ ผู้เขียนเคยประสพปัญหาว่าจ้างโปรแกรมเมอร์จัดการฐานข้อมูล พบว่าการจัดการฐานข้อมูลดีแต่เมื่อให้ทำการส่งข้อมูลออกมาวิเคราะห์พบกับปัญหาดังที่ได้กล่าวไป เมื่อทำการverify พบว่ามีการ duplicate ข้อมูล หรือการใช้ software จัดการข้อมูลเชิงพาณิชย์ที่ที่ต้องทำการพึ่งพาหรือว่าจ้าง โปรแกรมเมอร์มาแก้ไขปัญหา ซึ่งทำให้เกิดความซ้ำซ้อนของงานและต้อง verify & validate ทุกขั้นตอน เนื่องจากผู้ที่ทำโปรแกรมจัดการข้อมูลมีวัตถุประสงค์ต่างจาก ผู้ที่ต้องการนำข้อมูลไปทำการวิเคราะห์
     ด้วยเหตุนี้ การเลือก software ในการจัดการข้อมูลจึงเป็นสิ่งที่ต้องศึกษาและให้สามารถเชื่อมโยงไปสู่การวิเคราะห์ข้อมูลให้ได้ มิฉะนั้นจะเสียเวลา (รวมทั้งเสียรู้) เสียค่าใช้จ่ายโดยไม่จำเป็น

บทสรุป
     ไม่ว่าจะเลือกใช้วิธีการใดหรือ software ใด สิ่งหนึ่งที่ผู้ทำหน้าที่ data validation & verification ต้องระลึกเสมอว่าข้อมูลที่ทำอยู่ตรงกับสิ่งที่เขาส่งมาให้หรือไม่ เมื่อมีปัญหา ห้ามเดาเด็ดขาด ต้องสอบถามติดตามทันที อย่านิ่งดูดายเพื่อจะ treat data ให้เป็น missing ในภายหลัง ซึ่งจะบ่งบอกถึงความไม่รับผิดชอบ ประการสำคัญการประสานงานและทำความเข้าใจในงานที่รับผิดชอบอยู่ตั้งแต่ก่อนเริ่มงานจนวิเคราะห์ข้อมูลเรียบร้อยแล้วเป็นสิ่งที่จำเป็นอย่างยิ่ง

เอกสารอ้างอิง
 1. LeRon E. Bielak ; DATA VALIDATION AND VERIFICATION ASSESSMENT MATRIX Office of Planning and Performance Management U.S. DEPARTMENT OF THE INTERIOR December 2002
 2. Bielak, L.E., and J. Zippin. Data Validation and Verification Matrix. U.S. Department of the Interior; 2000
 3. Chew J and Sullivan C VERIFICATION, VALIDATION, AND ACCREDITATION IN THE LIFE CYCLE OF MODELS AND SIMULATIONS; Proceedings of the 2000 Winter Simulation Conference J. A. Joines, R. R. Barton, K. Kangand P. A. Fishwick, eds
http://www.informs-cs.org/wsc00papers
 

Untitled Document
Article Location
Volume 1 Number 2

Untitled Document
Article Option
       Abstract
       Fulltext
       PDF File
Untitled Document
 
ทำหน้าที่ ดึง Collection ที่เกี่ยวข้อง แสดง บทความ ตามที่ีมีใน collection ที่มีใน list Untitled Document
Another articles
in this topic collection

 
Editorials (บทบรรณาธิการ)
 
FORECASTING MODELS FOR MONTHLY PATIENT MOVEMENTS IN ADMISSIONS AND DISCHARGES OF RAJAVITHI HOSPITAL (ตัวแบบการพยากรณ์ การเคลื่อนไหวการรับและการจําหน่ายผู้ป่วยรายเดือน ของโรงพยาบาลราชวิถี ADMISSIONS AND DISCHARGES OF RAJAVITHI HOSPITAL)
 
Example article (บทความตัวอย่าง)
 
<More>
Untitled Document
 
This article is under
this collection.

Data Management
 
 
 
 
Copyright © 2006. Data Management & Biostatistics Journal.. All Rights Reserved
 
 
 
 

 


Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively in Unknown on line 0