เทคนิคการประมาณค่า - ใช้คะแนนกรณี
ก Use-Case คือชุดของการโต้ตอบที่เกี่ยวข้องระหว่างผู้ใช้และระบบที่ช่วยให้ผู้ใช้บรรลุเป้าหมาย
Use-Cases เป็นวิธีการจับข้อกำหนดการทำงานของระบบ ผู้ใช้ระบบเรียกว่า 'Actor' Use-Cases โดยพื้นฐานแล้วอยู่ในรูปแบบข้อความ
Use-Case Points - คำจำกัดความ
Use-Case Points (UCP)เป็นเทคนิคการประมาณค่าซอฟต์แวร์ที่ใช้ในการวัดขนาดซอฟต์แวร์ด้วยกรณีการใช้งาน แนวคิดของ UCP คล้ายกับ FPs
จำนวน UCP ในโครงการขึ้นอยู่กับสิ่งต่อไปนี้ -
- จำนวนและความซับซ้อนของกรณีการใช้งานในระบบ
- จำนวนและความซับซ้อนของนักแสดงในระบบ
ข้อกำหนดที่ไม่ใช้งานต่างๆ (เช่นการพกพาประสิทธิภาพการบำรุงรักษา) ที่ไม่ได้เขียนเป็นกรณีการใช้งาน
สภาพแวดล้อมที่จะพัฒนาโครงการ (เช่นภาษาแรงจูงใจของทีม ฯลฯ )
การประมาณค่าด้วย UCP ต้องใช้ทุกกรณีที่ต้องเขียนโดยมีเป้าหมายและในระดับเดียวกันโดยประมาณโดยให้รายละเอียดเท่ากัน ดังนั้นก่อนการประเมินทีมโครงการควรตรวจสอบให้แน่ใจว่าพวกเขาได้เขียนกรณีการใช้งานพร้อมเป้าหมายที่กำหนดไว้และในระดับรายละเอียด โดยปกติกรณีการใช้งานจะเสร็จสิ้นภายในเซสชันเดียวและหลังจากบรรลุเป้าหมายแล้วผู้ใช้อาจไปทำกิจกรรมอื่นต่อไป
ประวัติการใช้ - กรณีจุด
วิธีการประมาณค่า Use-Case Point ได้รับการแนะนำโดย Gustav Karner ในปี 1993 งานนี้ได้รับอนุญาตจาก Rational Software ซึ่งรวมเข้ากับ IBM ในภายหลัง
กระบวนการนับคะแนน Use-Case
กระบวนการนับคะแนน Use-Case มีขั้นตอนดังต่อไปนี้ -
- คำนวณ UCP ที่ไม่ได้ปรับแต่ง
- ปรับความซับซ้อนทางเทคนิค
- ปรับความซับซ้อนของสิ่งแวดล้อม
- คำนวณ UCP ที่ปรับแล้ว
ขั้นตอนที่ 1: คำนวณคะแนนกรณีการใช้งานที่ไม่ได้ปรับเปลี่ยน
คุณคำนวณคะแนนการใช้งานที่ไม่ได้ปรับเปลี่ยนก่อนโดยทำตามขั้นตอนต่อไปนี้ -
- กำหนดน้ำหนักกรณีใช้งานที่ไม่ได้ปรับเปลี่ยน
- กำหนดน้ำหนักนักแสดงที่ไม่ได้ปรับแต่ง
- คำนวณคะแนนการใช้งานที่ไม่ได้ปรับเปลี่ยน
Step 1.1 - กำหนดน้ำหนักกรณีใช้งานที่ไม่ได้ปรับเปลี่ยน
Step 1.1.1 - ค้นหาจำนวนธุรกรรมในแต่ละกรณีการใช้งาน
หาก Use-Cases เขียนด้วย User Goal Levels ธุรกรรมจะเทียบเท่ากับขั้นตอนใน Use-Case ค้นหาจำนวนธุรกรรมโดยการนับขั้นตอนใน Use-Case
Step 1.1.2- จัดประเภทการใช้งานแต่ละกรณีเป็นแบบธรรมดาเฉลี่ยหรือซับซ้อนตามจำนวนธุรกรรมใน Use-Case นอกจากนี้กำหนด Use-Case Weight ดังแสดงในตารางต่อไปนี้ -
ความซับซ้อนของการใช้กรณี | จำนวนธุรกรรม | น้ำหนักกรณีใช้งาน |
---|---|---|
เรียบง่าย | ≤3 | 5 |
เฉลี่ย | 4 ถึง 7 | 10 |
ซับซ้อน | > 7 | 15 |
Step 1.1.3- ทำซ้ำสำหรับแต่ละ Use-Case และรับ Use-Case Weights ทั้งหมด น้ำหนักการใช้งานที่ไม่ได้ปรับเปลี่ยน (UUCW) คือผลรวมของน้ำหนักกรณีใช้งานทั้งหมด
Step 1.1.4 - ค้นหา Use-Case Weight (UUCW) ที่ไม่ได้ปรับเปลี่ยนโดยใช้ตารางต่อไปนี้ -
ความซับซ้อนของการใช้กรณี | น้ำหนักกรณีใช้งาน | จำนวนกรณีการใช้งาน | สินค้า |
---|---|---|---|
เรียบง่าย | 5 | NSUC | 5 × NSUC |
เฉลี่ย | 10 | NAUC | 10 × NAUC |
ซับซ้อน | 15 | NCUC | 15 × NCUC |
Unadjusted Use-Case Weight (UUCW) | 5 × NSUC + 10 × NAUC + 15 × NCUC |
ที่ไหน
NSUC คือหมายเลข กรณีใช้งานง่าย
NAUC คือหมายเลข จำนวนกรณีการใช้งานโดยเฉลี่ย
NCUC คือหมายเลข กรณีการใช้งานที่ซับซ้อน
Step 1.2 - กำหนดน้ำหนักนักแสดงที่ไม่ได้ปรับแต่ง
นักแสดงในกรณีการใช้งานอาจเป็นบุคคลโปรแกรมอื่น ฯลฯ นักแสดงบางคนเช่นระบบที่มี API ที่กำหนดมีความต้องการที่ง่ายมากและเพิ่มความซับซ้อนของ Use-Case เพียงเล็กน้อย
ตัวแสดงบางตัวเช่นระบบที่โต้ตอบผ่านโปรโตคอลมีความต้องการมากขึ้นและเพิ่มความซับซ้อนของ Use-Case ในระดับหนึ่ง
นักแสดงคนอื่น ๆ เช่นผู้ใช้ที่โต้ตอบผ่าน GUI มีผลกระทบอย่างมากต่อความซับซ้อนของ Use-Case จากความแตกต่างเหล่านี้คุณสามารถแบ่งประเภทของนักแสดงเป็นง่ายปานกลางและซับซ้อนได้
Step 1.2.1 - จัดประเภทนักแสดงเป็นแบบง่ายปานกลางและซับซ้อนและกำหนดน้ำหนักนักแสดงดังแสดงในตารางต่อไปนี้ -
ความซับซ้อนของนักแสดง | ตัวอย่าง | น้ำหนักนักแสดง |
---|---|---|
เรียบง่าย | ระบบที่มี API ที่กำหนด | 1 |
เฉลี่ย | ระบบโต้ตอบผ่านโปรโตคอล | 2 |
ซับซ้อน | ผู้ใช้โต้ตอบผ่าน GUI | 3 |
Step 1.2.2- ทำซ้ำสำหรับนักแสดงแต่ละคนและรับน้ำหนักนักแสดงทั้งหมด น้ำหนักนักแสดงที่ไม่ได้ปรับแต่ง (UAW) คือผลรวมของน้ำหนักนักแสดงทั้งหมด
Step 1.2.3 - ค้นหาน้ำหนักนักแสดงที่ไม่ได้ปรับแต่ง (UAW) โดยใช้ตารางต่อไปนี้ -
ความซับซ้อนของนักแสดง | น้ำหนักนักแสดง | จำนวนนักแสดง | สินค้า |
---|---|---|---|
เรียบง่าย | 1 | NSA | 1 × NSA |
เฉลี่ย | 2 | NAA | 2 × NAA |
ซับซ้อน | 3 | NCA | 3 × NCA |
Unadjusted Actor Weight (UAW) | 1 × NSA + 2 × NAA + 3 × NCA |
ที่ไหน
NSA คือหมายเลข ของ Simple Actors
NAA คือหมายเลข ของนักแสดงเฉลี่ย
NCA คือหมายเลข ของนักแสดงที่ซับซ้อน
Step 1.3 - คำนวณคะแนนการใช้งานที่ไม่ได้ปรับเปลี่ยน
น้ำหนักกรณีใช้งานที่ไม่ได้ปรับแต่ง (UUCW) และน้ำหนักตัวแสดงที่ไม่ได้ปรับแต่ง (UAW) ร่วมกันทำให้ขนาดที่ยังไม่ได้ปรับแต่งของระบบเรียกว่าจุดกรณีใช้งานที่ไม่ได้ปรับแต่ง
Unadjusted Use-Case Points (UUCP) = UUCW + UAW
ขั้นตอนต่อไปคือการปรับคะแนนกรณีการใช้งานที่ไม่ได้ปรับแต่ง (UUCP) สำหรับความซับซ้อนทางเทคนิคและความซับซ้อนด้านสิ่งแวดล้อม
ขั้นตอนที่ 2: ปรับเพื่อความซับซ้อนทางเทคนิค
Step 2.1 - พิจารณาปัจจัย 13 ประการที่นำไปสู่ผลกระทบของความซับซ้อนทางเทคนิคของโครงการเกี่ยวกับ Use-Case Points และน้ำหนักที่สอดคล้องกันตามที่ระบุในตารางต่อไปนี้ -
ปัจจัย | คำอธิบาย | น้ำหนัก |
---|---|---|
T1 | ระบบกระจาย | 2.0 |
T2 | เวลาตอบสนองหรือวัตถุประสงค์ประสิทธิภาพปริมาณงาน | 1.0 |
T3 | ประสิทธิภาพของผู้ใช้ปลายทาง | 1.0 |
T4 | การประมวลผลภายในที่ซับซ้อน | 1.0 |
T5 | รหัสต้องใช้ซ้ำได้ | 1.0 |
T6 | ติดตั้งง่าย | .5 |
T7 | ง่ายต่อการใช้ | .5 |
T8 | แบบพกพา | 2.0 |
T9 | ง่ายต่อการเปลี่ยนแปลง | 1.0 |
T10 | พร้อมกัน | 1.0 |
T11 | รวมถึงวัตถุประสงค์ด้านความปลอดภัยพิเศษ | 1.0 |
T12 | ให้การเข้าถึงโดยตรงสำหรับบุคคลที่สาม | 1.0 |
T13 | จำเป็นต้องมีสิ่งอำนวยความสะดวกการฝึกอบรมผู้ใช้พิเศษ | 1.0 |
ปัจจัยเหล่านี้หลายอย่างแสดงถึงข้อกำหนดที่ไม่สามารถใช้งานได้ของโครงการ
Step 2.2 - สำหรับแต่ละปัจจัย 13 ประการให้ประเมินโครงการและให้คะแนนจาก 0 (ไม่เกี่ยวข้อง) ถึง 5 (สำคัญมาก)
Step 2.3 - คำนวณผลกระทบของปัจจัยจากน้ำหนักผลกระทบของปัจจัยและค่านิยมสำหรับโครงการเป็น
Impact of the Factor = Impact Weight × Rated Value
Step (2.4)- คำนวณผลรวมของผลกระทบของปัจจัยทั้งหมด สิ่งนี้จะให้ค่า Total Technical Factor (TFactor) ดังแสดงในตารางด้านล่าง -
ปัจจัย | คำอธิบาย | น้ำหนัก (W) | ค่านิยม (0 ถึง 5) (RV) | ผลกระทบ (I = W × RV) |
---|---|---|---|---|
T1 | ระบบกระจาย | 2.0 | ||
T2 | เวลาตอบสนองหรือวัตถุประสงค์ประสิทธิภาพปริมาณงาน | 1.0 | ||
T3 | ประสิทธิภาพของผู้ใช้ปลายทาง | 1.0 | ||
T4 | การประมวลผลภายในที่ซับซ้อน | 1.0 | ||
T5 | รหัสต้องใช้ซ้ำได้ | 1.0 | ||
T6 | ติดตั้งง่าย | .5 | ||
T7 | ง่ายต่อการใช้ | .5 | ||
T8 | แบบพกพา | 2.0 | ||
T9 | ง่ายต่อการเปลี่ยนแปลง | 1.0 | ||
T10 | พร้อมกัน | 1.0 | ||
T11 | รวมถึงวัตถุประสงค์ด้านความปลอดภัยพิเศษ | 1.0 | ||
T12 | ให้การเข้าถึงโดยตรงสำหรับบุคคลที่สาม | 1.0 | ||
T13 | จำเป็นต้องมีสิ่งอำนวยความสะดวกการฝึกอบรมผู้ใช้พิเศษ | 1.0 | ||
Total Technical Factor (TFactor) |
Step 2.5 - คำนวณ Technical Complexity Factor (TCF) เป็น -
TCF = 0.6 + (0.01 × TFactor)
ขั้นตอนที่ 3: ปรับเปลี่ยนเพื่อความซับซ้อนของสิ่งแวดล้อม
Step 3.1 - พิจารณาปัจจัยด้านสิ่งแวดล้อม 8 ประการที่อาจส่งผลต่อการดำเนินโครงการและน้ำหนักที่สอดคล้องกันดังที่ระบุในตารางต่อไปนี้ -
ปัจจัย | คำอธิบาย | น้ำหนัก |
---|---|---|
F1 | คุ้นเคยกับรูปแบบโครงการที่นำมาใช้ | 1.5 |
F2 | ประสบการณ์การใช้งาน | .5 |
F3 | ประสบการณ์เชิงวัตถุ | 1.0 |
F4 | ความสามารถในการวิเคราะห์ลูกค้าเป้าหมาย | .5 |
F5 | แรงจูงใจ | 1.0 |
F6 | ข้อกำหนดที่มั่นคง | 2.0 |
F7 | พนักงานพาร์ทไทม์ | -1.0 |
F8 | ภาษาโปรแกรมยาก | -1.0 |
Step 3.2 - สำหรับแต่ละปัจจัยทั้ง 8 ให้ประเมินโครงการและให้คะแนนจาก 0 (ไม่เกี่ยวข้อง) ถึง 5 (สำคัญมาก)
Step 3.3 - คำนวณผลกระทบของปัจจัยจากน้ำหนักผลกระทบของปัจจัยและค่านิยมสำหรับโครงการเป็น
Impact of the Factor = Impact Weight × Rated Value
Step 3.4- คำนวณผลรวมของผลกระทบของปัจจัยทั้งหมด สิ่งนี้ให้ค่า Total Environment Factor (EFactor) ตามที่ระบุในตารางต่อไปนี้ -
ปัจจัย | คำอธิบาย | น้ำหนัก (W) | ค่านิยม (0 ถึง 5) (RV) | ผลกระทบ (I = W × RV) |
---|---|---|---|---|
F1 | คุ้นเคยกับรูปแบบโครงการที่นำมาใช้ | 1.5 | ||
F2 | ประสบการณ์การใช้งาน | .5 | ||
F3 | ประสบการณ์เชิงวัตถุ | 1.0 | ||
F4 | ความสามารถในการวิเคราะห์ลูกค้าเป้าหมาย | .5 | ||
F5 | แรงจูงใจ | 1.0 | ||
F6 | ข้อกำหนดที่มั่นคง | 2.0 | ||
F7 | พนักงานพาร์ทไทม์ | -1.0 | ||
F8 | ภาษาโปรแกรมยาก | -1.0 | ||
Total Environment Factor (EFactor) |
Step 3.5 - คำนวณปัจจัยด้านสิ่งแวดล้อม (EF) เป็น -
1.4 + (-0.03 × EFactor)
ขั้นตอนที่ 4: คำนวณคะแนนกรณีการใช้งานที่ปรับแล้ว (UCP)
คำนวณ Adjusted Use-Case Points (UCP) เป็น -
UCP = UUCP × TCF × EF
ข้อดีและข้อเสียของ Use-Case Points
ข้อดีของ Use-Case Points
UCP ขึ้นอยู่กับกรณีการใช้งานและสามารถวัดได้ในช่วงต้นของวงจรชีวิตของโครงการ
UCP (การประมาณขนาด) จะไม่ขึ้นอยู่กับขนาดทักษะและประสบการณ์ของทีมที่ดำเนินโครงการ
การประมาณการตาม UCP พบว่าใกล้เคียงกับความเป็นจริงเมื่อดำเนินการประมาณโดยผู้มีประสบการณ์
UCP ใช้งานง่ายและไม่เรียกร้องให้มีการวิเคราะห์เพิ่มเติม
กรณีการใช้งานถูกนำมาใช้อย่างมากมายเพื่อเป็นทางเลือกในการอธิบายข้อกำหนด ในกรณีเช่นนี้ UCP เป็นเทคนิคการประมาณค่าที่เหมาะสมที่สุด
ข้อเสียของ Use-Case Points
สามารถใช้ UCP ได้เฉพาะเมื่อข้อกำหนดถูกเขียนในรูปแบบของกรณีการใช้งาน
ขึ้นอยู่กับกรณีการใช้งานที่มุ่งเน้นเป้าหมายเป็นลายลักษณ์อักษร หากกรณีการใช้งานไม่ดีหรือมีโครงสร้างที่สม่ำเสมอ UCP ที่ได้อาจไม่ถูกต้อง
ปัจจัยทางเทคนิคและสิ่งแวดล้อมมีผลกระทบสูงต่อ UCP ต้องใช้ความระมัดระวังในขณะที่กำหนดค่าให้กับปัจจัยทางเทคนิคและสิ่งแวดล้อม
UCP มีประโยชน์สำหรับการประมาณขนาดโครงการโดยรวมในเบื้องต้น แต่มีประโยชน์น้อยกว่ามากในการขับเคลื่อนงานการวนซ้ำเพื่อทำซ้ำของทีม