![Page 1: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/1.jpg)
รายงาน
COCOMO 2เสนอ
อาจารย ธวชชย เอยมไพโรจน
จดทำาโดยนายภพพล ประทมษารหสนสต 54160342
รายงานเลมนเปนสวนหนงของวชา การบรหารโครงการซอฟตแวร
Software Project Management ภาคการศกษาท 2 ปการศกษา 2556 สาขาวชา
![Page 2: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/2.jpg)
วศวกรรมซอฟตแวร คณะวทยาการสารสนเทศ มหาวทยาลยบรพา
คำานำา
รายงานนเปนสวนหนงของรายวชา 888321 การบรหารโครงการซอฟตแวร จดทำาขนเพอศกษาเกยวกบโมเดลในการประเมนราคาซอฟตแวร Constructive Cost Model โดยแบบจำาลอง COCOMO II ในการประมาณการ โดยมพนฐานหลกอยบนการประมาณความซบซอนจากจำานวนฟงกชนการทำางานของซอฟตแวร
ผจดทำาหวงเปนอยางยงวารายงานเลมนจะมประโยชนไมมากกนอยแกผทตองการศกษา หากรายงานฉบบนผดพลาดประการใด ขออภย ณ ทนดวย
ภพพล ประทมษา
ผจดทำา
![Page 3: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/3.jpg)
บทท 1 ความหมายของ cocomo II
COCOMO ยอมาจาก Construction Cost Model พฒนาโดย โบแอม (ค.ศ.1981) เรยกวา COCOMO81 หรอ COCOMOI
วตถประสงค เพอประมาณการแรงงานและเวลาทตองใชในการพฒนาซอฟแวร
ป ค.ศ.2004 โบแอม ไดพฒนาปรบปรงตวแบบ COCOMO ใหมใหสอดคลองกบวธการพฒนาซอฟแวรทเปลยนไปจากเดม ตวแบบใหมเรยกวา COCOMO2000 หรอ COCOMOII
COCOMO I
COCOMOI เปนตวแบบทประมาณการแรงงาน (effort) และระยะเวลาทใชจำานวนบรรทดของโปรแกรม (LOC)
ประกอบดวยตวแบบ 3 แบบ คอ 1. ตวแบบระดบพนฐาน (Basic Model) 2. ตวแบบระดบกลาง (Intermediate model)
3. ตวแบบระดบสง (Advance Model)
![Page 4: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/4.jpg)
ตวแบบระดบพนฐาน ประมาณการแรงงาน โดยไมมตวปรบคา
ตวแบบระดบกลาง เปนตวแบบทมการพฒนาจากตวแบบระดบพนฐาน แตมความละเอยดมากขน โดยมการปรบคาทไดจากตวแบบแรกดวยตวขบเคลอนคาใชจาย (Cost Driven)
ตวแบบระดบสงมการประมาณการแบบเดยวกบตวแบบระดบกลาง แตการคำานวณ
แรงงาน และการประเมนตวขบเคลอนคาใชจาย จะทำาในแตละเฟสของการพฒนาระบบงาน
โดยปจจบนพฒนามาถง COCOMO II ซงมการนำาเอาแนวคดเกยวกบ CMM มาใชรวมดวย
จดเดนทนาสนใจของ COCOMO II คอการทำาเอาตวเลขทางคณตศาสตรและสถต มาใชประยกตในการพฒนาซอฟตแวรตามหลกการของการบรหารจดการ เปนการนำาเอาสงทเปนกระบวนการมาเปนตวเลขได การบรหารจดการจดการซอฟตแวรประกอบไปดวย ผลตภณฑ กระบวนการ โครงการ และบคลากร นอกจากนยงมปจจยอนทเกยวของ ในการทจะประเมนราคา และระยะเวลาของซอฟตแวร โดยมโมเดลการคำานวณเปนดงน
PM = A x SizeE x EM = PMauto…………………………1
![Page 5: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/5.jpg)
PM คอ Effort มหนวยเปน Person-Months (PM)A คาคงททไดจากการรวบรวมขอมลใน 161 โครงการ โดย
A = 2.94E คอ Economics of Scale ซงเปนผลทขนาดของ
ซอฟตแวรสมพนธกบขนาดของโครงการ โดย E = B + 0.01 * Scale Factors
B Scaling Base-exponent สำาหรบคำานวณ EffortEM คอ Effort Multipliers เปนคาทไดจากการคำานวณ
Cost Driver ทเกยวกบโครงการ ทสงผลตอ Effort ในการพฒนาซอฟตแวร
PMauto คาของ Effort ทไดจากการแปลงอตโนมต ซงจะเกดเมอมการ Reuse Code โดยคานนจะไมมผลตอการพฒนา แตเนองจากมผลตอคาใชจาย ถาเปนการพฒนาซอฟตแวรใหม คา PMauto จะเปน 0
ระยะเวลาทใชในการพฒนาซอฟตแวรมสตรดงน
TDEV = [ C x (PM) F ] x SCED%……………………………...2
100
C คอ Schedule Coefficient ทใชมาคำานวณ โดย C = 3.67
F คอ Scaling Exponent สำาหรบระยะเวลา โดย F = [ D + 0.2 (E-B) ]
D Scaling Base-exponent สำาหรบ ระยะเวลา โดย D = 0.28
SCED คอ ความรบเรงของเวลาเมอเปรยบเทยบกบการพฒนาปกต
![Page 6: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/6.jpg)
ดงจากสตร จะเหนวา Effort ของการพฒนาทใชในการพฒนาจะขนอยกบขนาดของการพฒนา หรอ size ของซอฟตแวรหลก แตขนาดเพยงอยางเดยวอาจจะไมเพยงพอ เพราะจะตองนำาเอาปจจยอน และภาวะความเสยงอนมารวมคดดวย แนวความคดของ COCOMO II ไดแบงการประเมนราคาซอฟตแวรเปน 2 ระยะคอ Early-design และ Post-design เนองจากมความคดวาผลของการประเมนในเวลาททำาการเรมตนการออกแบบเบองตนยอมแตกตางจากการทไดทำาการวางโครงสรางแลว เมอเรมการพฒนาไปสกระยะจะทราบถงปจจยทสงผลกระทบตอคาใชจายมากขน
ขนตอนการประมาณการ
1. จดประเภทของระบบงานทกำาลงพจารณา ม 3 ประเภท 1.1 ประเภทออกานก (Organic Model) 1.2 ประเภทเซมดเทช (Semi-detached Model) 1.3 ประเภทเอมเบดเดด (Embedded Model) 2. คำานวณหาแรงงานปกต และระยะเวลาการพฒนาระบบงาน3. คำานวณหาปจจยปรบแรงงาน (Effort Adjustment Factor)
1.1 ประเภทของออกานก (Organic Model)
- ทมงานทพฒนามขนาดเลก- ระบบงานมขนาดเลก ประมาณไมเกน 50 KLOC- พฒนาภายในสภาวะแวดลอมภายในองคกร (in-house
environment)- ทมงานมความคนเคย หรอมประสบการณกบระบบงานทจะพฒนา- สามารถตอรอง ขอปรบเปลยนรายละเอยดของซอฟแวรได
![Page 7: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/7.jpg)
- ระบบงานพฒนาอยบนสภาพแวดลอมทคงท (static environment)
- อลกอรทมของการประมวลผลไมมความซบซอน- ระยะเวลาในการพฒนาไมเปนตวกดดนตอผพฒนามากนก-
1.2 ประเภทเซมดเทช (Semi-detached Model)
- คนในทม มทงคนทม และไมมประสบการณในระบบงานทกำาลงพฒนา- คนในทมทกคนมประสบการณในระบบงานทเกยวของปานกลาง- มแรงกดดนจากระยะเวลาของโครงการบาง- ระบบงานมขนาดปานกลาง ประมาณไมเกน 300 KLOC- อลกอรทมของการประมวลผลมความซบซอนพอประมาณ-
1.3 ประเภทของเอมเบดเดด (Embedded Model)
- ทมงาน ไมมความคนเคย หรอไมมประสบการณกบระบบงานทจะพฒนา
- ขอกำาหนดของระบบงานทพฒนา ไมสามารถเปลยนแปลงได เนองมาจากขอจำากดตางๆ
- ตองพฒนาระบบงานททำางานรวมกบอปกรณเฉพาะ หรอระบบพฒนาขนโดยผกกบกฎ ระเบยบ หรอขนตอนการดำาเนนงานอยางเครงครด
- ตองพฒนาระบบงานภายในเวลาทกำาหนด- อลกอรทมของการประมวลผลมความซบซอน- ตองทดสอบความถกตองอยางมาก
การคำานวณหาแรงงาน และระยะเวลา
- ตวแบบพนฐาน
![Page 8: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/8.jpg)
แรงงาน (คน-เดอน) = a x KLOCb
ระยะเวลาการพฒนา = c X แรงงาน d โดยท a, b, c, d มคาตามตาราง
ตาราง แสดงคาพารามเตอรสำาหรบตวแบบระดบพนฐาน
ประเภทระบบงาน a b c d
ออกานก 2.4 1.05 2.5 0.38
เซมดเทช 3.0 1.12 2.5 0.35
เอมเบดเดด 3.6 1.20 2.5 0.32
ตาราง ระบบงานมขนาด 33.3 KLOC เปนระบบแบบเซมดเทช จงคำานวณหาแรงงาน ระยะเวลา และจำานวนคน
- แรงงาน (คน-เดอน) = 3.0 x KLOC1.12 = 3.0 x 33.31.12 = 152 คน - เดอน
- ระยะเวลา = 2.5 x 152 = 14.5 เดอน
- จำานวนคน = 152/14.5 = 11 คน
การคำานวณหาปจจยปรบแรงงาน
![Page 9: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/9.jpg)
- ถาการคำานวณแรงงาน ใชตวแบบระดบกลาง ผจดการโครงการตองปรบคาของแรงงานปกต ทคำานวณไดจากขอ 2 ดวยปจจยปรบแรงงาน ซงไดจากตวขบเคลอนคาใชจาย (Cost Driver) ทม 15 ตว แบงออกเปน 4 กลม ดงตาราง
![Page 10: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/10.jpg)
![Page 11: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/11.jpg)
![Page 12: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/12.jpg)
![Page 13: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/13.jpg)
![Page 14: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/14.jpg)
บทท 1 COCOMO Model (Constructive Cost Model)
COCOMO II แบงออกเปน 3 ประเภท เพอใชประมาณการในระยะตางๆของกระบวนการพฒนาซอฟแวร มรายละเอยดดงน
1. Application Composition Modelเหมาะกบการผลตซอฟตแวรดวยแนวทางคอมโพเนนท สามารถอธบายแทนดวย Object Point ได
2. Early Design Modelใชประมาณการในระยะกอนการออกแบบซอฟตแวร เมอกำาหนดความความตองการแลว ใหใชคา FP แทนขนาดของซอฟตแวร
3. Post-Architecture Model ใชประมาณการในระยะหลงการออกแบบซอฟตแวร เปนการประมาณการอกครงเพอความถกตองของคาประมาณการทได
แบบจำาลอง COCOMO II ไดมแนวทางประมาณปจจยตางๆ โดย Boehm ไดแบงโปรแกรมออกเปน 4 กลม มดงน
1. โปรแกรมใหม (new code) เปนซอฟตแวรทพฒนาใหมทงหมดตงแตแรก
2. โปรแกรมทปรบเปลยน (adapted code) เปนโปรแกรมทมอยกอนแลวนำามาปรบแกเพอใชงานกบระบบใหม
3. โปรแกรมนำากลบมาใชใหม (reused code) เปนโปรแกรมทไมมการปรบแก หรอโปรแกรมทมอยเดม แตนำามาตดตงแลวใชงาน
![Page 15: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/15.jpg)
4. โปรแกรมทมขาย (of-the-shelf software) เปนโปรแกรมเชนเดยวกบโปรแกรมนำากลบมาใชใหม แตโปรแกรมนจะมคำาสงใหมทนำามาใชรวมกน
1.1โมเดลการคำานวณ COCOMO II
1.1.1 การประมาณการแรงงานสำาหรบระยะพฒนาตนแบบชวงตนสตรแรงงาน คอ
แรงงาน (PM) = (NOPx(1-%reuse/100))/PRODโดยท
PM แรงงาน คน-เดอนNOP New Object Point%reuse รอยละของซอฟตแวรทนำากลบมาใชใหมPROD ผลผลตเพม
![Page 16: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/16.jpg)
1.1.2 การประมาณการแรงงานหลงการออกแบบเปนตวแบบสำาหรบการประมาณการแรงงานในระยะนน โดยใชตวแบบพนฐานเดยวกบระดบการออกแบบชวงตน แตมผลคณแรงงานแตกตางกน
โดยมสตรดงนโดยท
PM Effort คอ กำาลงคนหรอแรงงานทตองใชในการพฒนาซอฟตแวร มหนวยเปน Person-Months (PM)
PM Effort คอ กำาลงคนหรอแรงงานทตองใชในการพฒนาซอฟตแวร มหนวยเปน Person-Months (PM)
A คาคงททไดจากการรวบรวมขอมลใน 161 โครงการ โดย A = 2.94E คอ Economics of Scale ซงเปนผลทขนาดของซอฟตแวรสมพนธกบขนาดของโครงการ โดย E = B + 0.01 * Scale FactorsB Scaling Base-exponent สำาหรบคำานวณ EffortEM คอ Effort Multipliers เปนคาทไดจากการคำานวณ Cost Driver ทเกยวกบโครงการ ทสงผลตอ Effort ในการพฒนาซอฟตแวรPMauto คาของ Effort ทไดจากการแปลงอตโนมต ซงจะเกดเมอมการ Reuse Code โดยคานนจะไมมผลตอการพฒนา แตเนองจากมผลตอคาใชจาย ถาเปนการพฒนาซอฟตแวรใหม คา PMauto จะเปน 0
![Page 17: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/17.jpg)
1.1.3 การประมาณการเวลาทใชในการพฒนาระบบระยะเวลาทใชในการพฒนาซอฟแวรเปนสงสำาคญทสงผลถงความสำาเรจของการพฒนาซอฟแวรและการบรหารจดการโครงการซงมสตรคำานวณ
ดงน
โดยทC คอ Schedule Coefficient ทใชมาคำานวณ โดย C = 3.67F คอ Scaling Exponent สำาหรบระยะเวลา โดย F =[ D + 0.2 (E-B) ]D Scaling Base-exponent สำาหรบ ระยะเวลา โดย D = 0.28SCED คอ ความรบเรงของเวลาเมอเปรยบเทยบกบการพฒนาปกต
จะเหนวา Effort ของการพฒนาทใชในการพฒนาจะขนอยกบขนาดของการพฒนาแตขนาดเพยงอยางเดยวอาจจะไมเพยงพอ เพราะจะตองนำาเอาปจจยอน และภาวะความเสยงอนมารวมคดดวย แนวความคดของ COCOMO II ไดแบงการประเมนราคาซอฟตแวรเปน 2 ระยะคอ Early-design และ Post-design เนองจากมความคดวาผลของการประเมนในเวลาททำาการเรมตนการออกแบบเบองตนยอมแตกตางจากการทไดทำาการวางโครงสรางแลว เมอเรมการพฒนาไปสกระยะจะทราบถงปจจยทสงผลกระทบตอคาใชจายมากขน
![Page 18: bls.buu.ac.thbls.buu.ac.th/~s56103/11Feb06/54160342_COCOMO-II.docx · Web viewว ตถ ประสงค เพ อประมาณการแรงงานและเวลาท](https://reader035.vdocuments.mx/reader035/viewer/2022070701/5e5a13ec25e4b84f5974903e/html5/thumbnails/18.jpg)
1.2แบบจำาลอง COCOMO II
1.3จดเดนของ COCOMO II
1. เปนแบบจำาลองทรวมเทคนคในการประเมนหลากหลายวธเขาดวยกน2. สามารถจดการหนวยการวดของซอฟแวรไดหลากหลาย3. สามารถนำาความเสยงสวนหนงมาเปนปจจยในการประมาณการได4. มการรองรบปรบปรงในอนาคต