การวิเคราะห์ฟังก์ชันฟอยต์ ของ ฟังก์ชันพอยต์

การวิเคราะห์ฟังก์ชันฟอยต์ (Function Point Analysis :FPA) เป็นการวัดขนาดของระบบสารสนเทศและแสดงออกมาในรูปแบบของฟังก์ชันพอยต์ โดยการวิเคราะห์นั้นจะถูกปรับปรุงให้เหมาะสมและทันสมัยอยู่เสมอโดยกลุ่มผู้ใช้ฟังก์ชันพอยต์สากล(International Function Point Users Group : IFPUG) และสมาคมผู้ใช้ตัววัดซอฟต์แวร์แห่งเนเธอร์แลนด์(The Netherlands Software Metrics users Association :NESMA) โดยมาตรฐานของ IFPUG จะเรียกว่าIFPUG FSM (Functional Size Measurement) และมาตรฐานของ NESMA จะเรียกว่า NESMA FSM

สำหรับผลลัพธ์ของการวิเคราะห์ฟังก์ชันฟอยต์นั้น จะแสดงขนาดฟังก์ชันการใช้งานของระบบสารสนเทศในรูปแบบตัวเลขตัวหนึ่งในหน่วยฟังก์ชันพอยต์ หรือ FPs (เช่น ระบบนี้มีขนาด 314 FPs) หลักเกณฑ์การวิเคราะห์ฟังก์ชันพอยต์โดยคร่าวๆ สามารถแจกแจงได้ดังหัวข้อย่อยต่อไปนี้

การแจกแจงฟังก์ชันผู้ใช้ห้าหมวดหมู่

การวิเคราะห์ฟังก์ชันพอยต์จะแบ่งความต้องการเชิงฟังก์ชันของผู้ใช้ (Functional User Requirement)ออกเป็นสองประเภท คือ ฟังก์ชันเชิงข้อมูล (Data Function) และฟังก์ชันเชิงรายการเปลี่ยนแปลง (Transaction Function) โดยแบ่งออกเป็น 5 หมวดหมู่ตามหลักของวิธี IFPUG FSM และให้ค่าของฟังก์ชันพอยต์จากค่าเหล่านี้

  1. ฟังก์ชันเชิงข้อมูล: แฟ้มข้อมูลเชิงตรรกะภายใน (Internal Logical Files: ILFs)
  2. ฟังก์ชันเชิงข้อมูล: แฟ้มข้อมูลต่อประสานภายนอก (External Interface Files: EIFs)
  3. ฟังก์ชันเชิงรายการเปลี่ยนแปลง: ข้อมูลนำเข้าภายนอก (External Inputs: EIs)
  4. ฟังก์ชันเชิงรายการเปลี่ยนแปลง: ข้อมูลส่งออกภายนอก (External Outputs: EOs)
  5. ฟังก์ชันเชิงรายการเปลี่ยนแปลง: การสอบถามภายนอก (External Inquries: EQs)

วิธีการนับจำนวนฟังก์ชันในแต่ละหมวดหมู่

วิธีการนับว่าระบบสารสนเทศมีจำนวนฟังก์ชันในแต่ละหมวดหมู่ว่ามีค่าเท่าใดนั้น ต้องแล้วแต่ว่าผู้ใช้ต้องการแบ่งความหยาบละเอียดในการวัดอย่างไร โดยการนับฟังก์ชันห้าหมวดหมู่มีการนับโดยคร่าวๆดังนี้

  1. แฟ้มข้อมูลเชิงตรรกะภายใน (Internal Logical Files: ILFs) นับตามจำนวนแฟ้มข้อมูลที่ต้องเก็บไว้ในระบบสารสนเทศ แต่วิธีการนี้เป็นวิธีการโดยคร่าวๆ เพราะโดยละเอียดจริงๆ อาจมีปัจจัยอื่นๆมาเกี่ยวข้องด้วย เช่น ขนาดของแฟ้มข้อมูล ความสำคัญของแฟ้มข้อมูล

การซ้ำซ้อน การใช้ฐานข้อมูลเชิงสัมพัทธ์แทนแฟ้มข้อมูล เป็นต้น

  1. แฟ้มข้อมูลต่อประสานภายนอก (External Interface Files: EIFs) นับตามจำนวนส่วนต่อประสาน (Interface) ภายนอกระบบที่นำเข้าข้อมูล อาทิ เครื่องยิงบาร์โค้ด เป็นต้นซึ่งการนับโดยละเอียดอาจมีปัจจัยอื่นๆมาเกี่ยวข้องด้วยเช่นเดียวกัน
  2. ข้อมูลนำเข้าภายนอก (External Inputs: EIs) นับตามจำนวนข้อมูลนำเข้า เช่นแบบฟอร์ม (Forms) เป็นต้น ที่ใช้รับข้อมูลภายนอกระบบจากผู้ใช้ ซึ่งการนับโดยละเอียดอาจมีปัจจัยอื่นๆ เช่น ความซับซ้อนของแบบฟอร์ม เป็นต้น
  3. ข้อมูลส่งออกภายนอก (External Outputs: EOs) นับตามจำนวนข้อมูลส่งออกที่ผ่านการประมวลผล เช่น รายงานสรุปสถิติ เป็นต้น ซึ่งการนับโดยละเอียดอาจมีปัจจัยอื่นๆ เช่น ความซับซ้อนของรายงาน
  4. การสอบถามภายนอก (External Inquries: EQs) นับตามจำนวนข้อมูลส่งออกที่ไม่ผ่านการประมวลผล เช่น รายงานข้อมูลสอบถาม (Query Reports) เป็นต้น ซึ่งการนับโดยละเอียดอาจมีปัจจัยอื่นๆ ที่ต้องกำหนดต่อไป

โดยเกณฑ์การนับโดยละเอียดอาจศึกษาดูจากเอกสารของ IFPUG

การให้น้ำหนักฟังก์ชันแต่ละหมวดหมู่

หลังจากที่นับจำนวนฟังก์ชันของระบบสารสนเทศ จะต้องนำไปคูณกับค่าน้ำหนักของแต่ละหมวดหมู่ฟังก์ชันซึ่งจะไม่เท่ากัน โดยการคิดจะนำจำนวนของฟังก์ชันที่นับได้ในแต่ละหมวดหมู่คูณกับค่าน้ำหนักของหมวดหมู่นั้นๆ ผลลัพธ์ที่ได้จะเรียกว่าจะเป็นค่าฟังก์ชันพอยต์ที่ยังไม่ได้ปรับค่า(Unadjusted Function Point :UAF) โดยรายละเอียดแล้วน้ำหนักที่คูณอาจมีการคำนึงถึงความซับซ้อนอีกด้วย

หมวดหมู่น้ำหนักของหมวดหมู่จำนวนฟังก์ชันผลคูณ
EIs4312
EOs5210
EQs414
ILFs10110
EIFs717
ค่าฟังก์ชันพอยต์ที่ยังไม่ได้ปรับค่า43

ความซับซ้อนในการปรับค่าฟังก์ชันพอยต์

เนื่องจากค่าฟังก์ชันพอยต์ที่ยังไม่ได้ปรับค่า ยังไม่ได้ปรับเทียบกับความซับซ้อนเชิงเทคนิคของระบบ จึงสร้างค่าตัวเลขตัวหนึ่งที่เรียกว่า ค่าตัวคูณปรับค่า (Value Adjustment Factor:VAF) ซึ่งค่าตัวเลขนี้จะได้มาจากการพิจารณาลักษณะจำเพาะของระบบโดยทั่วไป (General System Characteristics:GSCs) 14 ลักษณะ โดยใช้เกณฑ์มากน้อย 6 ระดับ(ระดับ 0 คือลักษณะจำเพาะนี้ไม่มีนัยสำคัญกับระบบ ไล่ระดับไปเรื่อยๆ จนถึงระดับ 5 คือลักษณะจำเพาะนี้มีนัยสำคัญกับระบบมาก) ลักษณะจำเพาะของระบบโดยทั่วไป 14 ลักษณะ มีดังนี้

  1. การสื่อสารการของข้อมูล (Data communications) ช่องทางในการสื่อสารแลกเปลี่ยนข้อมูลของระบบ
  2. การประมวลผลข้อมูลแบบกระจาย (Distributed data processing) การประมวลผลและการเก็บข้อมูลแบบกระจาย
  3. ศักยภาพ (Performance) ความเร็วในการตอบสนอง (Response Time) หรือปริมาณงาน (Throughputs) ของระบบ
  4. โครงแบบการใช้งานหนัก (Heavily used configuration) การใช้ทรัพยากรฮาร์ดแวร์ในการทำงาน
  5. อัตรารายการเปลี่ยนแปลง (Transaction Rate) ความถี่ในการใช้งานรายการเปลี่ยนแปลง (Transaction)
  6. การรับข้อมูลแบบออนไลน์ (On-Line data entry) สัดส่วนของข้อมูลที่ต้องรับเข้าแบบออนไลน์
  7. การเพิ่มประสิทธิภาพการทำงานของผู้ใช้ (End-User Effiency) การเพิ่มประสิทธิภาพการทำงานของผู้ใช้
  8. การปรับให้ทันสมัยแบบออนไลน์ (On-Line update) การปรับข้อมูลที่เก็บไว้ให้ทันสมัยแบบออนไลน์อยู่เสมอ
  9. ความซับซ้อนในการประมวลผล (Complex processing) ความซับซ้อนในการประมวลผลเชิงตรรกะหรือคณิตศาสตร์
  10. การนำไปใช้ (Reusability) ความง่ายในการไปใช้
  11. ความง่ายในการติดตั้ง (Installation ease) ความง่ายในการปรับเปลี่ยนและติดตั้งซอฟต์แวร์
  12. ความง่ายในการดำเนินการ (Operational ease) ความง่ายในการจัดการการดำเนินการต่างๆ เช่น การสำรองและกู้คืนข้อมูล
  13. ความหลากหลายของการใช้ (Multiple sites) การปรับให้เข้ากับการใช้งานที่หลากหลาย
  14. ความง่ายในการเปลี่ยนแปลง (Facilitate change) ความสามารถในการปรับปรุงเปลี่ยนแปลงหรือพัฒนาระบบต่อไปได้

ยกตัวอย่างเช่นหากประเมินแล้วแต่ละข้ออยู่ที่ 4 ดังนั้นจะมีผลรวมในการประเมิน (Sum of Score: SS) เท่ากับ 4 × 14 = 56 {\displaystyle 4\times 14=56} โดยทั่วไปแล้วค่าตัวคูณปรับค่า (Value Adjustment Factor:VAF) จะคำนวณได้จาก

V A F = 0.65 + ( 0.01 × S S ) {\displaystyle VAF=0.65+(0.01\times SS)}

เพราะฉะนั้นจะได้ว่าตัวคูณปรับค่าในครั้งนี้ 0.65 + ( 0.01 × 56 ) = 1.21 {\displaystyle 0.65+(0.01\times 56)=1.21}

ค่าฟังก์ชันพอยต์ที่ปรับค่าแล้วคำนวณได้จาก

F P = U A F × V A F {\displaystyle FP=UAF\times VAF}

เช่นระบบตัวอย่างจะมีค่าฟังก์ชันพอยต์ที่ปรับค่าแล้วเท่ากับ 42 × 1.21 = 50.82 ≈ 51 {\displaystyle 42\times 1.21=50.82\approx 51} กล่าวโดยสรุปคือเมื่อวิเคราะห์ฟังก์ชันพอยต์แล้ว ระบบตัวอย่างมีขนาด 51 FPs

ใกล้เคียง

ฟังก์ ฟังก์ชันพื้นและฟังก์ชันเพดาน ฟังก์ชันเลขชี้กำลัง ฟังก์ชันตรีโกณมิติ ฟังก์ชัน (คณิตศาสตร์) ฟังก์ชันแกมมา ฟังก์ชันนับจำนวนเฉพาะ ฟังก์ชันตรีโกณมิติผกผัน ฟังก์ชันเลียปูนอฟ ฟังก์ชันแฮช