วิธีจุดฟังก์ชันของ Albrecht

เมตริกจุดของฟังก์ชันเป็นวิธีการที่เป็นมาตรฐานสำหรับการวัดฟังก์ชันต่างๆของแอปพลิเคชันซอฟต์แวร์ มันวัดการทำงานจากมุมมองของผู้ใช้นั่นคือบนพื้นฐานของสิ่งที่ผู้ใช้ร้องขอและได้รับตอบแทน การวิเคราะห์จุดฟังก์ชันเป็นวิธีมาตรฐานในการวัดการพัฒนาซอฟต์แวร์จากมุมมองของผู้ใช้

การวัดจุดฟังก์ชันเดิมที่ Albrecht ได้รับความนิยมเพิ่มขึ้นจากการก่อตั้ง International Function Point Users Group (IFPUG) ในปี 1986 ในปี 2002 IFPUG Function Points กลายเป็นมาตรฐาน ISO สากล - ISO / IEC 20926

Function Point คืออะไร?

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

ตัวเลขผลลัพธ์ (FP ที่ไม่ได้ปรับแต่ง) จะถูกจัดกลุ่มเป็นชุดฟังก์ชันที่เพิ่มเปลี่ยนแปลงหรือลบและรวมกับ Value Adjustment Factor (VAF) เพื่อให้ได้ค่า FP สุดท้าย มีการใช้สูตรสุดท้ายที่แตกต่างกันสำหรับการนับแต่ละประเภท: แอปพลิเคชันโครงการพัฒนาหรือโครงการปรับปรุง

การใช้วิธีจุดฟังก์ชันของ Albrecht

ตอนนี้ให้เราเข้าใจวิธีการใช้วิธี Function Point ของ Albrecht ขั้นตอนมีดังนี้ -

กำหนดจำนวนส่วนประกอบ (EI, EO, EQ, ILF และ ELF)

  • EI- จำนวนอินพุตภายนอก สิ่งเหล่านี้เป็นกระบวนการพื้นฐานที่ข้อมูลที่ได้รับส่งผ่านข้ามขอบเขตจากภายนอกสู่ภายใน ในระบบฐานข้อมูลห้องสมุดตัวอย่างให้ป้อนหมายเลขบัตรห้องสมุดของผู้อุปถัมภ์ที่มีอยู่

  • EO- จำนวนเอาต์พุตภายนอก เหล่านี้เป็นกระบวนการพื้นฐานที่ข้อมูลที่ได้รับส่งผ่านข้ามขอบเขตจากภายในสู่ภายนอก ในระบบฐานข้อมูลห้องสมุดตัวอย่างแสดงรายการหนังสือที่ชำระให้กับผู้อุปถัมภ์

  • EQ- จำนวนแบบสอบถามภายนอก สิ่งเหล่านี้เป็นกระบวนการพื้นฐานที่มีส่วนประกอบทั้งอินพุตและเอาต์พุตซึ่งส่งผลให้มีการดึงข้อมูลจากไฟล์โลจิคัลภายในหนึ่งไฟล์ขึ้นไปและไฟล์อินเตอร์เฟสภายนอก ในระบบฐานข้อมูลห้องสมุดตัวอย่างให้กำหนดว่าหนังสือเล่มใดบ้างที่มีการเช็คเอาต์ให้กับผู้อุปถัมภ์

  • ILF- จำนวนไฟล์บันทึกภายใน กลุ่มเหล่านี้เป็นกลุ่มข้อมูลที่เกี่ยวข้องเชิงตรรกะที่ระบุตัวตนของผู้ใช้ได้ซึ่งอยู่ภายในขอบเขตของแอปพลิเคชันที่ดูแลผ่านอินพุตภายนอก ในระบบฐานข้อมูลห้องสมุดตัวอย่างไฟล์หนังสือในห้องสมุด

  • ELF- จำนวนไฟล์บันทึกภายนอก เหล่านี้เป็นกลุ่มข้อมูลที่เกี่ยวข้องเชิงตรรกะที่สามารถระบุตัวตนได้ซึ่งใช้เพื่อวัตถุประสงค์ในการอ้างอิงเท่านั้นและอยู่นอกระบบทั้งหมด ในระบบฐานข้อมูลไลบรารีตัวอย่างไฟล์ที่มีธุรกรรมในระบบการเรียกเก็บเงินของไลบรารี

คำนวณจำนวนจุดของฟังก์ชันที่ไม่ได้ปรับแต่ง (UFC)

  • ให้คะแนนแต่ละองค์ประกอบเป็น low, average, หรือ high.

  • สำหรับการทำธุรกรรม (EI, EO, and EQ)การให้คะแนนจะขึ้นอยู่กับ FTR และ DET.

    • FTR - จำนวนไฟล์ที่อัปเดตหรืออ้างอิง

    • DET - จำนวนฟิลด์ที่ผู้ใช้จดจำได้

    • จากตารางต่อไปนี้ไฟล์ EI ที่อ้างอิงไฟล์ 2 ไฟล์และองค์ประกอบข้อมูล 10 รายการจะได้รับการจัดอันดับเป็น average.

FTR DET
1-5 6-15 >15
0-1 ต่ำ ต่ำ เฉลี่ย
2-3 ต่ำ เฉลี่ย สูง
>3 เฉลี่ย สูง สูง
  • สำหรับไฟล์ (ILF and ELF)การให้คะแนนจะขึ้นอยู่กับไฟล์ RET และ DET.

    • RET - จำนวนองค์ประกอบข้อมูลที่ผู้ใช้จดจำได้ในไฟล์ ILF หรือ ELF.

    • DET - จำนวนฟิลด์ที่ผู้ใช้จดจำได้

    • จากตารางต่อไปนี้ไฟล์ ILF ที่มีองค์ประกอบข้อมูล 10 รายการและ 5 ช่องจะได้รับการจัดอันดับเป็น high.

RETs DET
1-5 6-15 >15
1 ต่ำ ต่ำ เฉลี่ย
2-5 ต่ำ เฉลี่ย สูง
>5 เฉลี่ย สูง สูง
  • แปลงการให้คะแนนเป็น UFCs.

คะแนน ค่า
EO EQ EI ILF ELF
Low 4 3 3 7 5
Average 5 4 4 10 7
High 6 5 6 15 10

คำนวณการนับคะแนนฟังก์ชันสุดท้าย (FPC)

  • ปัจจัยการปรับค่าการคำนวณ (VAF) ตามคุณลักษณะทั่วไปของระบบ 14 ประการ (GSC).

ลักษณะทั่วไปของระบบ คำอธิบายสั้น ๆ
สกสค. 1 การสื่อสารข้อมูล มีสิ่งอำนวยความสะดวกในการสื่อสารกี่แห่งเพื่อช่วยในการถ่ายโอนหรือแลกเปลี่ยนข้อมูลกับแอปพลิเคชันหรือระบบ?
สกสค. 2 การประมวลผลข้อมูลแบบกระจาย ข้อมูลแบบกระจายและฟังก์ชันการประมวลผลได้รับการจัดการอย่างไร?
สกสค. 3 ประสิทธิภาพ ผู้ใช้ต้องการเวลาตอบสนองหรือปริมาณงานหรือไม่
สกสค. 4 ใช้การกำหนดค่าอย่างหนัก แพลตฟอร์มฮาร์ดแวร์ในปัจจุบันมีการใช้งานหนักเพียงใดซึ่งจะเรียกใช้แอปพลิเคชัน
สกสค. 5 อัตราการทำธุรกรรม มีการทำธุรกรรมรายวันรายสัปดาห์รายเดือน ฯลฯ บ่อยเพียงใด
สกสค. 6 การป้อนข้อมูลออนไลน์ มีการป้อนข้อมูลออนไลน์กี่เปอร์เซ็นต์
สกสค. 7 ประสิทธิภาพของผู้ใช้ปลายทาง แอปพลิเคชั่นนี้ออกแบบมาเพื่อประสิทธิภาพของผู้ใช้ปลายทางหรือไม่?
สกสค. 8 อัปเดตออนไลน์ มีการปรับปรุง ILF กี่รายการโดยการทำธุรกรรมออนไลน์?
สกสค. 9 การประมวลผลที่ซับซ้อน แอปพลิเคชันมีการประมวลผลเชิงตรรกะหรือทางคณิตศาสตร์อย่างกว้างขวางหรือไม่?
สกสค. 10 การนำกลับมาใช้ใหม่ แอปพลิเคชันนี้ได้รับการพัฒนาเพื่อตอบสนองความต้องการของผู้ใช้หนึ่งคนหรือหลายคน?
สกสค. 11 ติดตั้งง่าย การแปลงและการติดตั้งยากแค่ไหน?
สกสค. 12 ใช้งานง่าย ขั้นตอนการเริ่มต้นสำรองข้อมูลและการกู้คืนโดยอัตโนมัติมีประสิทธิภาพเพียงใด
สกสค. 13 หลายไซต์ แอปพลิเคชันได้รับการออกแบบพัฒนาและสนับสนุนโดยเฉพาะให้ติดตั้งในหลายไซต์สำหรับหลายองค์กรหรือไม่
สกสค. 14 อำนวยความสะดวกในการเปลี่ยนแปลง แอปพลิเคชันได้รับการออกแบบพัฒนาและสนับสนุนโดยเฉพาะเพื่ออำนวยความสะดวกในการเปลี่ยนแปลงหรือไม่
  • ชั่งน้ำหนักแต่ละชิ้น GSC ในระดับ 0 ถึง 5 โดยพิจารณาจากว่าไม่มีอิทธิพลต่ออิทธิพลที่แข็งแกร่ง

  • คำนวณไฟล์ FPC ดังต่อไปนี้ -

    FPC = UFC * (0.65+ (ผลรวม (GSC) * .01))

ความซับซ้อน

ความซับซ้อนเป็นองค์ประกอบที่แยกจากกันของขนาด มีสองประเภท -

  • Complexity of a problem - เป็นจำนวนทรัพยากรที่จำเป็นสำหรับการแก้ปัญหาที่เหมาะสมที่สุด

  • Complexity of a solution- เป็นทรัพยากรที่จำเป็นในการใช้โซลูชันเฉพาะ มันมีสองด้าน มีดังนี้ -

    • Time complexity - ทรัพยากรคือเวลาคอมพิวเตอร์

    • Space complexity - ทรัพยากรคือหน่วยความจำคอมพิวเตอร์

การวัดความซับซ้อน

ด้านหนึ่งของความซับซ้อนคือประสิทธิภาพ วัดผลผลิตภัณฑ์ซอฟต์แวร์ใด ๆ ที่สามารถจำลองเป็นอัลกอริทึมได้

ตัวอย่างเช่น: หากอัลกอริทึมสำหรับการแก้ปัญหาทุกกรณีต้องการ f(n) การคำนวณแล้ว f(n) เป็นวิธีที่ดีที่สุดโดยไม่มีอาการถ้าสำหรับอัลกอริทึมอื่น ๆ ที่มีความซับซ้อน g ที่ช่วยแก้ปัญหาได้ f คือ O(g). จากนั้นความซับซ้อนของปัญหานั้นใหญ่ -O ของอัลกอริทึมที่เหมาะสมที่สุดแบบไม่มีอาการสำหรับวิธีแก้ปัญหา