SlideShare a Scribd company logo
1 of 37
COCOMO – Constructive CostCOCOMO – Constructive Cost
MOdelMOdel
• COCOMO là mô hình do Barry Boehm thiết
kế nhằm dự báo ( ước tính) số NGƯỜI-
THÁNG (man-months) trong triển khai sản
phẩm phần mềm.Mô hình này dựa trên khảo
sát ( nghiên cứu) 60 dự án tại công ty TRW,
Northrop Grumman cuối năm 2002.Chương
trình được viết bằng ngôn ngữ PL/I từ 2000
đến 100,000 dòng lệnh
COCOMO – Constructive CostCOCOMO – Constructive Cost
MOdelMOdel
 Cocomo gồm 3 dạng:
-COCMO cơ bản:Mô hình cho giá trị đơn, tỉnh, chi phí được
tính như độ lớn của phần mềm theo dòng lệnh.
-COCOMO trung gian: chi phí được tính như độ lớn của phần
mềm theo dòng lệnh cộng thêm đánh giá sản phẩm, phần
cứng, nhân lực và các thuộc tính của dự án.
-COCOMO chi tiết: tích hợp mọi đặc trưng của COCOMO
trung gian cộng thêm đánh giá của chi phí ảnh hưởng
( phân tích, thiết kế…) trong mỗi giai đoạn của qui trình
công nghệ phần mềm ( the software engineering process)
COCOMO c b nơ ảCOCOMO c b nơ ả
Dùng ước tính nhanh và sơ bộ chi phí dự án cho
hầu hết các dự án nhỏ và vừa
COCOMO có thể áp dụng cho ba lớp dự án phần
mềm:
◦ Organic: dành cho 1 đội nhỏ các nhà phát triển có
kinh nghiệm và mội trường quen thuộc
◦ Semi-detached: trung gian giữa organic và
embedded
◦ Embedded: dành cho dự án có nhiều ràng buộc
chặt chẽ, thường là dự án mới và duy nhất, khó
tìm người thực hiện
B ng so sánh ba d ng COCOMOả ạB ng so sánh ba d ng COCOMOả ạ
Mode Quy
mô dự
án
Bản chất dự án Sự sáng
tạo
Thời
hạn
Môi trường
phát triển
Organic 2-50
KLOC
Dự án nhỏ, developer kinh
nghiệm trong môi trường
thân thiện
Ít Không
chặt
Quen
thuộc, nội
bộ
Semi
-detached
50 –
300
KLOC
Dự án TB, đội TB, kinh
nghiệm đã làm cho dự án
tương tự TB
TB TB TB
Embbeded >300
KLOC
Dự án lớn, HT real time.
Giao diện phức tạp, đội có
kinh nghiệm trước đó rất ít
Đáng
kể
Chặt Yêu cầu
HW và
giao diện
phức
4
COCOMO c b nơ ảCOCOMO c b nơ ả
• Phương trình của COCOMO cơ bản có dạng:
• Trong đó:
E = ước tính của NGƯỜI/THÁNG,
D = Thời gian triển khai tính theo tháng
KLOC = Số dòng lệnh (đơn vị=1000) ước tính của sản
phẩm dự án phần mềm.
◦ ab, bb, db là các hệ số được tra theo bảng 3
• Số lượng nhân viên và mức độ hiệu quả của dự án được
tính như sau:
 Average staff size (SS) = E/D Persons
 Productivity (P) = KLOC/E KLOC/PM
B ng 3: Các h s COCOMO c b nả ệ ố ơ ảB ng 3: Các h s COCOMO c b nả ệ ố ơ ả
Project ab bb cb db
Organic 2.4 1.05 2.5 0.38
Semi
-detached
3.0 1.12 2.5 0.35
Embbeded 3.6 1.20 2.5 0.32
6
B ng 3ả
COCOMO c b nơ ảCOCOMO c b nơ ả
•COCOMO cơ bản rất tốt cho ước tính chi phí thô,
dễ dàng và nhanh. Tuy nhiên, sử chính xác sẻ bị
giới hạn vì thiếu một số nhân tố chưa kể đến là sự
khác nhau trong ràng buộc về phần cứng, kinh
nghiệm và khả năng chuyên nghiệp của con người,
việc sử dụng các công cụ hiện đại và các đặc trưng
khác có ảnh hưởng đến chi phí phần mềm.
Ví d 1ụVí d 1ụ
 Giả sử dự án được ước tính khoảng 400
KLOC. Hãy tính nhân lực và thời gian cho
mỗi loại dự án khác nhau
1. Đối với loại Organic:
E = 2.4(400)1.05
= 1295.31 PM
D = 2.5(1295.31)0.38
= 38.07 M
2. Đối với loại Semidetached:
E = 3.0(400)1.12
= 2462.79 PM
D = 2.5(2462.79)0.35
= 38.45 M
3. Đối với loại Embbeded:
E = 3.6(400)1.20
= 4772.81 PM
D = 2.5(1295)0.32
= 38 M
8
Nh n xétậNh n xétậ
Chọn loại dự án rất quan trọng, tùy thuộc
vào 2 yếu tố:
◦ Quy mô dự án
◦ Các hệ số trong bảng 3
9
Ví d 2ụVí d 2ụ
Quy mô dự án được ước tính khoảng 200 KLOC.
Đội phát triển phần mềm có kinh nghiệm ở mức
trung bình cho các loại dự án tương tự. Lịch biều
của dự án không đòi hỏi chặt chẽ lắm. Hãy tính
thời gian phát triển, số người bình quân của đội,
và tính hiệu suất của dự án
Solution: Dự án thuộc loại semi-detached
◦ Tính các hệ số: E = 3.0(200)1.12
= 1133.12 PM
D = 2.5(1133.12)0.35
= 38.67 M
◦ Số nhân viên (staff size) = E/D = 38.67 người
◦ Hiệu suất dự án (productivity) = KLOC/E = 176
LOC/PM
10
COCOMO trung gianCOCOMO trung gian
 COCOMO TRUNG GIAN là mở rộng của Mô
hình COCOMO cơ bản, và được dùng để ước
tính thời gian lập trình trong triển khai sản
phẩm phần mềm. Sự mở rộng này, xem xét trên
một tập hợp “Chi phí của các đặc trưng các Bộ
phận điều khiển (driver)” được chia thành 4
nhóm (15 tính chất)
Các nhóm và tính ch tấCác nhóm và tính ch tấ
+ Đặc trưng của sản phẩm:
- Yêu cầu về tính độ tin cậy của phần mềm
- Khối lượng CSDL (database) của ứng dụng
- Tính phức tạp của sản phẩm.
- Đặc trưng của phần cứng
- Ràng buộc về tính năng Run-time
- Ràng buộc về Bộ nhớ
- Tính không ổn định của môi trường máy ảo.
- Yêu cầu về thời gian chuyển hướng (turnabout
time)
Các nhóm và tính ch tấCác nhóm và tính ch tấ
+ Đặc trưng về Chuyên gia.
- Khả năng phân tích
- Khả năng về kỹ sư PM (Software engineer)
- Kinh nghiệm ứng dụng
- Kinh nghiệm về máy ảo
- Kinh nghiệm về ngôn ngữ lập trình
+ Đặc trưng về Dự án
- Sử dụng các công cụ Phần mềm
- Ứng dụng các phương pháp của CNPM
(software engineering)
- Yêu cầu về triển khai lịch biểu (development
schedule)
COCOMO trung gianCOCOMO trung gian
• Mỗi tính chất được đánh giá (cho điểm) theo
thang điểm có 6 mức từ rất chậm (very low)
đến quá cao (extra high) . Dựa trên thang điểm,
Hệ số cố gắng (effort multiplier) sẽ được xác
định theo bảng sau: Tích các Hệ số cố gắng =
EAF (Effort Adjustment Factor, thường có giá
trị từ 0.9 - 1.4.) được thể hiện qua bảng sau :
COCOMO trung gianCOCOMO trung gian
• Phương trình Cocomo trung gian có dạng:
 Trong đó:
- E = ước tính của NGƯỜI/THÁNG,
- KLOC = Số dòng lệnh (đơn vị=1000) ước tính của sản phẩm dự án phần
mềm.
- EAF được cho bởi bảng trên.
- E tinh chỉnh = E x EAF
• S l ng nhân viên và m c đ hi u qu c a d án đ c tính nh sau:ố ượ ứ ộ ệ ả ủ ự ượ ư
 Average staff size (SS) = E/D Persons
 Productivity (P) = KLOC/E KLOC/PM
i
i
d
i
b
i
EcD
KLOCaE
)(
)(
=
=
COCOMO trung gianCOCOMO trung gian
Hệ số ai và bi được cho bởi bảng sau đây :
Thời gian triển khai D được tính từ E tương tự
như COCOMO cơ bản
Ví dụVí dụ
M t d án m i đ c c tính là h th ngộ ự ớ ượ ướ ệ ố
nhúng (embedded system) có 400 KLOC.
Ng i qu n lý d án ph i ch n l a gi a 2ườ ả ự ả ọ ự ữ
nhóm làm vi c: m t nhóm r t có năng l cệ ộ ấ ự
nh ng h u nh không có kinh nghi m gì vư ầ ư ệ ề
ngôn ng l p trình s đ c dùng trong d án;ữ ậ ẽ ượ ự
nhóm khác thì không gi i l m nh ng có nhi uỏ ắ ư ề
kinh nghi m v ngôn ng l p trình. Hãy xétệ ề ữ ậ
xem vi c ch n l a các nhóm s nh h ng nhệ ọ ự ẽ ả ưở ư
th nào đ n d án??ế ế ự
18
Ví dụVí dụ
Solution:
Vì là d án ki u embedded và mô hìnhự ể
COCOMO m c trung nên:ứ
E= ai(KLOC)bi
= 2.8(400)1.20
= 3712 PM
Tr ng h p 1: ch n nhóm có năng l c nh ngườ ợ ọ ự ư
không có kinh nghi mệ
EAF = 0.82 x 1.14 = 0.9348
 E1 = EAF x E = 0.9348 x 3712 = 3470 PM
 D1 = ci (E)di
= 2.5(3470)0.32
= 33.9 PM
19
Ví dụVí dụ
Tr ng h p 2: nhóm ít có năng l c nh ngườ ợ ự ư
nhi u kinh nghi mề ệ
◦ EAF = 1.29 x 0.95 = 1.22
◦ E2 = EAF x E = 1.22 x 3712 = 4528 PM
◦ D2 = ci (E)di
= 2.5(4528)0.32
= 36.9PM
Nh n xét:ậ
Nhóm 2 c n nhi u ng i và th i gian h n. Vìầ ề ườ ờ ơ
v y, nhóm năng l c y u tuy có nhi u kinhậ ự ế ề
nghi m l p trình không th phù h p v i dệ ậ ể ợ ớ ự
án lo i embedded.ạ
20
M i quan h gi a LOC và FPố ệ ữM i quan h gi a LOC và FPố ệ ữ
Ph thu c vào ngôn ng l p trình đ cụ ộ ữ ậ ượ
dùng đ th c thi và ch t l ng thi t k .ể ự ấ ượ ế ế
LOC và FP đ c dùng đ c tính kháượ ể ướ
chính xác chi phí (cost) và nhân l cự
(effect)
B ng LOC/FPả
21
Các ví dụCác ví dụ
 c tính theo LOC (page 128 Roger 5e)Ướ
 c tính theo FP (page 129 Roger 5e)Ướ
22
Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ
A software package to be developed for a
computer-aided design application for mechanical
components. A review of the System
Specification indicates that the software is to
execute on an engineering workstation and must
interface with various computer graphics
peripherals including a mouse, digitizer, high
resolution color display and laser printer.
Using the System Specification as a guide, a
preliminary statement of software scope can be
developed:
23
Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ
The CAD software will accept two- and three-
dimensional geometric data from an engineer. The
engineer will interact and control the CAD system
through a user interface that will exhibit
characteristics of good human/ machine interface
design. All geometric data and other supporting
information will be maintained in a CAD database.
Design analysis modules will be developed to produce
the required output, which will be displayed on a
variety of graphics devices. The software will be
designed to control and interact with peripheral
devices that include a mouse, digitizer, laser printer,
and plotter.
24
Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ
D a vào phát bi u s b v ph m vi ph nự ể ơ ộ ề ạ ầ
m m (preliminary statement of softwareề
scope), xác đ nh đ c các ch c năng chínhị ượ ứ
c a ph n m m:ủ ầ ề
• User interface and control facilities (UICF)
• Two-dimensional geometric analysis (2DGA)
• Three-dimensional geometric analysis (3DGA)
• Database management (DBM)
• Computer graphics display facilities (CGDF)
• Peripheral control function (PCF)
• Design analysis modules (DAM)
25
Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ
26
Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ
A review of historical data indicates that the
organizational average productivity for
systems of this type is 620 LOC/pm. Based
on a burdened labor rate of $8000 per
month, the cost per line of code is
approximately $13. Based on the LOC
estimate and the historical productivity data,
the total estimated project cost is $431,000
and the estimated effort is 54 person-
months.
27
Ví d c tính theo FPụ ƯớVí d c tính theo FPụ Ướ
The project planner estimates inputs, outputs,
inquiries, files, and external interfaces for the
CAD software. For the purposes of this estimate,
the complexity weighting factor is assumed to be
average.
The expected value for the estimation variable
(size), S, can be computed as a weighted average
of the optimistic (sopt), most likely (sm), and
pessimistic (spess) estimates.
S = (sopt + 4sm + spess)/6
28
Ví d c tính theo FPụ ƯớVí d c tính theo FPụ Ướ
29
Tính CAF=0.65+0.01x FiΣTính CAF=0.65+0.01x FiΣ
30
Ví d c tính theo FPụ ướVí d c tính theo FPụ ướ
The estimated number of FP is derived:
FPestimated = count-total x [0.65 + 0.01 x (Fi)] =375Σ
The organizational average productivity for systems of
this type is 6.5 FP/pm. Based on a burdened labor rate
of $8000 per month, the cost per FP is approximately
$1230.
Based on the LOC estimate and the historical
productivity data, the total estimated project cost is
$461,000 and the estimated effort is 58 person-
months.
31
COCOMO IICOCOMO II
• COCOMO II là mô hình cho phép ước tính chi phí, sự cố
gắng và lích biểu khi lập kế họach cho một dự án phần
mềm mới. Gồm có 3 module: Applications Composition,
Early Design, and Mô hình Post-architecture.
• Mô hình COCOMO gốc do Dr. Barry Boehm khởi xướng
năm 1981, và COCOMO II được hình thành sau nhiều
năm cố gắng của nhóm nghiên cứu (1990) USC CSE,
IRUS at UC Irvine, and the COCOMO II Project Affiliate
Organizations, lần đầu tiên cài đặt giữa năm 1997. USC
COCOMO II.1998.0 beta ra đời 10/1998.
• Phiên bản 98 sữ dụng 161 điểm DL (data) và sử dụng cách
tiếp cận Công thức Bayes (Bayesian statistical approach
(119kb)) có thêm ý kiến chuyên gia trong mô hình
COCOMO IICOCOMO II
 Là mở rộng của COCOMO. COCOMO II có thể xử lý
nhiều kỹ thuật của kỹ nghệ phần mềm hiện đại như:
 Hướng đối tượng.
 Các mô hình vòng đời khác nhau.
 Làm bản mẫu nhanh.
 Các ngôn ngữ thế hệ thứ t.
 Phần mềm đóng gói ( COTS software).
COCOMO II hơi phức tạp hơn phiên bản
COCOMO
COCOMO IICOCOMO II
 COCOMO bậc trung gồm một mô hình chung dựa trên
dòng mã (KDSI)
 COCOMO II gồm 3 mô hình khác nhau:
 Mô hình phức hợp áp dụng (ACM: Application
composition model) cho các pha đầu tiên: dựa trên
object points (tương tự như function points)
 Mô hình thiết kế ban đầu (EDM: early design model):
dựa trên function points
 Mô hình hậu kiến trúc (PAM: post-architecture
model): dựa trên function points hay KDSI
COCOMO IICOCOMO II
Out put của COCOMO bậc trung là ước lượng
chi phí và kích thước
Output của COCOMO II là khoảng ước lượng
chi phí và kích thước.
Ví dụ, nếu ước lượng công sức là E thì ACM có
giá trị trong khoảng ( 0.50E,2.0E) và PAM
thuộc miền (0.80E,1.25E)
COCOMO IICOCOMO II
Cocomo – constructive cost model

More Related Content

What's hot

An toàn hệ điều hành PTIT
An toàn hệ điều hành PTITAn toàn hệ điều hành PTIT
An toàn hệ điều hành PTITPhạm Trung Đức
 
Các kỹ thuật bảo trì phần mềm
Các kỹ thuật bảo trì phần mềmCác kỹ thuật bảo trì phần mềm
Các kỹ thuật bảo trì phần mềmNguyễn Anh
 
Bài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần MềmBài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần MềmHoài Phạm
 
De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006Tran Tien
 
Chuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tánChuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tánduysu
 
Báo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngBáo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngJojo Kim
 
Kiem thu phan mem
Kiem thu phan memKiem thu phan mem
Kiem thu phan memTIen Le
 
Nhập môn công nghệ phần mềm
Nhập môn công nghệ phần mềmNhập môn công nghệ phần mềm
Nhập môn công nghệ phần mềmTrần Gia Bảo
 
CONG NGHE PHAN MEM
CONG NGHE PHAN MEMCONG NGHE PHAN MEM
CONG NGHE PHAN MEMduc phong
 
Quản lý dự án
Quản lý dự ánQuản lý dự án
Quản lý dự ánTran Tien
 
Bảo trì phần mềm
Bảo trì phần mềmBảo trì phần mềm
Bảo trì phần mềmNguyễn Anh
 
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTSlide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTHiệu Nguyễn
 
Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#An Nguyen
 
Chuẩn hóa lược đồ quan hệ
Chuẩn hóa lược đồ quan hệChuẩn hóa lược đồ quan hệ
Chuẩn hóa lược đồ quan hệHưởng Nguyễn
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinVõ Phúc
 

What's hot (20)

An toàn hệ điều hành PTIT
An toàn hệ điều hành PTITAn toàn hệ điều hành PTIT
An toàn hệ điều hành PTIT
 
Các kỹ thuật bảo trì phần mềm
Các kỹ thuật bảo trì phần mềmCác kỹ thuật bảo trì phần mềm
Các kỹ thuật bảo trì phần mềm
 
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAYLuận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
 
Bài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần MềmBài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần Mềm
 
De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006
 
Chuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tánChuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tán
 
Báo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngBáo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thống
 
Kiem thu phan mem
Kiem thu phan memKiem thu phan mem
Kiem thu phan mem
 
Nhập môn công nghệ phần mềm
Nhập môn công nghệ phần mềmNhập môn công nghệ phần mềm
Nhập môn công nghệ phần mềm
 
CONG NGHE PHAN MEM
CONG NGHE PHAN MEMCONG NGHE PHAN MEM
CONG NGHE PHAN MEM
 
Quản lý dự án
Quản lý dự ánQuản lý dự án
Quản lý dự án
 
Đề tài: Xây dựng phần mềm quản lý bảo hiểm, HAY, 9đ
Đề tài: Xây dựng phần mềm quản lý bảo hiểm, HAY, 9đĐề tài: Xây dựng phần mềm quản lý bảo hiểm, HAY, 9đ
Đề tài: Xây dựng phần mềm quản lý bảo hiểm, HAY, 9đ
 
Báo cáo Quản lý dự án phần mềm PTIT
Báo cáo Quản lý dự án phần mềm PTITBáo cáo Quản lý dự án phần mềm PTIT
Báo cáo Quản lý dự án phần mềm PTIT
 
Chuong 3. cnpm
Chuong 3. cnpmChuong 3. cnpm
Chuong 3. cnpm
 
Bảo trì phần mềm
Bảo trì phần mềmBảo trì phần mềm
Bảo trì phần mềm
 
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTSlide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
 
Đề tài: Phần mềm Quản Lý Siêu Thị Mini, HAY, 9đ
Đề tài: Phần mềm Quản Lý Siêu Thị Mini, HAY, 9đĐề tài: Phần mềm Quản Lý Siêu Thị Mini, HAY, 9đ
Đề tài: Phần mềm Quản Lý Siêu Thị Mini, HAY, 9đ
 
Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#
 
Chuẩn hóa lược đồ quan hệ
Chuẩn hóa lược đồ quan hệChuẩn hóa lược đồ quan hệ
Chuẩn hóa lược đồ quan hệ
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
 

Viewers also liked

Como programar java, 9na edicion deitel
Como programar java, 9na edicion   deitelComo programar java, 9na edicion   deitel
Como programar java, 9na edicion deitelangelica peñaloza
 
The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...
The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...
The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...Jonathan Rosario
 
Portafolio CCTV Qbit Developers
Portafolio CCTV Qbit DevelopersPortafolio CCTV Qbit Developers
Portafolio CCTV Qbit DevelopersQbit Developers
 
Social Media Analytics with a pinch of semantics
Social Media Analytics with a pinch of semanticsSocial Media Analytics with a pinch of semantics
Social Media Analytics with a pinch of semanticsThe Open University
 
Project transformation guidebook
Project transformation guidebookProject transformation guidebook
Project transformation guidebookJA Bodyworks Alvin
 
The Skin Care Market. - Free Online Library
The Skin Care Market. - Free Online LibraryThe Skin Care Market. - Free Online Library
The Skin Care Market. - Free Online Librarysqueamishnarrat31
 
Informe de actividad 2014
Informe de actividad 2014Informe de actividad 2014
Informe de actividad 2014UPyD Getafe
 
Changing Perceptions and Driving Narratives Through Research
Changing Perceptions and Driving Narratives Through ResearchChanging Perceptions and Driving Narratives Through Research
Changing Perceptions and Driving Narratives Through ResearchKeith Kirkpatrick
 
Més esports 21 de Març 2016
Més esports 21 de Març 2016Més esports 21 de Març 2016
Més esports 21 de Març 2016diarimes
 
TRAVELwise - a UDOT program
TRAVELwise - a UDOT programTRAVELwise - a UDOT program
TRAVELwise - a UDOT programsandycityutah
 
Especies de wolframio en solución
Especies de wolframio en soluciónEspecies de wolframio en solución
Especies de wolframio en soluciónAndres Tavizon
 
Monitoreo Participativo en la Cuenca del Choapa MLP
Monitoreo Participativo en la Cuenca del Choapa  MLPMonitoreo Participativo en la Cuenca del Choapa  MLP
Monitoreo Participativo en la Cuenca del Choapa MLPVictor Valdebenito Ibaceta
 

Viewers also liked (20)

Como programar java, 9na edicion deitel
Como programar java, 9na edicion   deitelComo programar java, 9na edicion   deitel
Como programar java, 9na edicion deitel
 
The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...
The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...
The 'Locomotive' Illusion - Socio-Economic Drivers of Conflict in Resource-Ri...
 
Portafolio CCTV Qbit Developers
Portafolio CCTV Qbit DevelopersPortafolio CCTV Qbit Developers
Portafolio CCTV Qbit Developers
 
2 cilma tropical richy
2 cilma tropical richy2 cilma tropical richy
2 cilma tropical richy
 
My market box
My market boxMy market box
My market box
 
Creta
CretaCreta
Creta
 
Social Media Analytics with a pinch of semantics
Social Media Analytics with a pinch of semanticsSocial Media Analytics with a pinch of semantics
Social Media Analytics with a pinch of semantics
 
Dopplereffekt
DopplereffektDopplereffekt
Dopplereffekt
 
Project transformation guidebook
Project transformation guidebookProject transformation guidebook
Project transformation guidebook
 
Cáncer
CáncerCáncer
Cáncer
 
The Skin Care Market. - Free Online Library
The Skin Care Market. - Free Online LibraryThe Skin Care Market. - Free Online Library
The Skin Care Market. - Free Online Library
 
Mi horario de planificación
Mi horario de planificaciónMi horario de planificación
Mi horario de planificación
 
Informe de actividad 2014
Informe de actividad 2014Informe de actividad 2014
Informe de actividad 2014
 
Changing Perceptions and Driving Narratives Through Research
Changing Perceptions and Driving Narratives Through ResearchChanging Perceptions and Driving Narratives Through Research
Changing Perceptions and Driving Narratives Through Research
 
Los ecohéroes
Los ecohéroesLos ecohéroes
Los ecohéroes
 
Dr pepper
Dr pepperDr pepper
Dr pepper
 
Més esports 21 de Març 2016
Més esports 21 de Març 2016Més esports 21 de Març 2016
Més esports 21 de Març 2016
 
TRAVELwise - a UDOT program
TRAVELwise - a UDOT programTRAVELwise - a UDOT program
TRAVELwise - a UDOT program
 
Especies de wolframio en solución
Especies de wolframio en soluciónEspecies de wolframio en solución
Especies de wolframio en solución
 
Monitoreo Participativo en la Cuenca del Choapa MLP
Monitoreo Participativo en la Cuenca del Choapa  MLPMonitoreo Participativo en la Cuenca del Choapa  MLP
Monitoreo Participativo en la Cuenca del Choapa MLP
 

Similar to Cocomo – constructive cost model

05_Project_management.ppt
05_Project_management.ppt05_Project_management.ppt
05_Project_management.ppttienlqtienlq
 
Quản lý dự án phần mềm dasssssssssaasdasdasd
Quản lý dự án phần mềm dasssssssssaasdasdasdQuản lý dự án phần mềm dasssssssssaasdasdasd
Quản lý dự án phần mềm dasssssssssaasdasdasdLNhtQuang11
 
ggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggHngPhmTh35
 
2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)
2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)
2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)Lac Hong University
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trìnhLập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trìnhXuân Thủy Nguyễn
 
De-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdfDe-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdfAnhTVit1
 
Giáo trình vb.net
Giáo trình vb.netGiáo trình vb.net
Giáo trình vb.netHung Pham
 
đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200Lê Gia
 
C1 introduction
C1 introductionC1 introduction
C1 introductionHồ Lợi
 
[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf
[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf
[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdfssuser51a27c
 
phan tich thiet ke he thong
phan tich thiet ke he thongphan tich thiet ke he thong
phan tich thiet ke he thongvantinhkhuc
 
2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)
2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)
2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)Lac Hong University
 
Giao trinh phan tich thiet ke he thong thong tin
Giao trinh phan tich thiet ke he thong thong tinGiao trinh phan tich thiet ke he thong thong tin
Giao trinh phan tich thiet ke he thong thong tinNguyen Patrick
 
Phan Tich Httt Bang Uml
Phan Tich Httt Bang UmlPhan Tich Httt Bang Uml
Phan Tich Httt Bang Umlhbgfd
 
Bài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.ppt
Bài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.pptBài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.ppt
Bài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.pptBnhGo3
 
Seminar apply OOP in maintain software
Seminar apply OOP in maintain softwareSeminar apply OOP in maintain software
Seminar apply OOP in maintain softwareVKhang Yang
 
Uoc luong chi phi phat trien phan mem
Uoc luong chi phi phat trien phan memUoc luong chi phi phat trien phan mem
Uoc luong chi phi phat trien phan memLuong Hai
 

Similar to Cocomo – constructive cost model (20)

05_Project_management.ppt
05_Project_management.ppt05_Project_management.ppt
05_Project_management.ppt
 
Quản lý dự án phần mềm dasssssssssaasdasdasd
Quản lý dự án phần mềm dasssssssssaasdasdasdQuản lý dự án phần mềm dasssssssssaasdasdasd
Quản lý dự án phần mềm dasssssssssaasdasdasd
 
tài liệu test
tài  liệu testtài  liệu test
tài liệu test
 
ggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
ggggggggggggggggggggggggggggggggggggggggggggggggggg
 
chuong 6
chuong 6chuong 6
chuong 6
 
2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)
2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)
2.20 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (15)
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trìnhLập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
 
De-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdfDe-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdf
 
Giáo trình vb.net
Giáo trình vb.netGiáo trình vb.net
Giáo trình vb.net
 
đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200
 
C1 introduction
C1 introductionC1 introduction
C1 introduction
 
C1 introduction
C1 introductionC1 introduction
C1 introduction
 
[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf
[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf
[123doc] - tai-lieu-chuong-5-thiet-lap-du-an-tren-nen-simatic-pcs7-ppt.pdf
 
phan tich thiet ke he thong
phan tich thiet ke he thongphan tich thiet ke he thong
phan tich thiet ke he thong
 
2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)
2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)
2.14 tổ chức lớp viết báo khoa học kỹ thuật đăng trên tạp chí quốc tế (9)
 
Giao trinh phan tich thiet ke he thong thong tin
Giao trinh phan tich thiet ke he thong thong tinGiao trinh phan tich thiet ke he thong thong tin
Giao trinh phan tich thiet ke he thong thong tin
 
Phan Tich Httt Bang Uml
Phan Tich Httt Bang UmlPhan Tich Httt Bang Uml
Phan Tich Httt Bang Uml
 
Bài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.ppt
Bài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.pptBài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.ppt
Bài tập lớn Công nghệ phần mềm Phần mềm và kỹ nghệ phần mềm.ppt
 
Seminar apply OOP in maintain software
Seminar apply OOP in maintain softwareSeminar apply OOP in maintain software
Seminar apply OOP in maintain software
 
Uoc luong chi phi phat trien phan mem
Uoc luong chi phi phat trien phan memUoc luong chi phi phat trien phan mem
Uoc luong chi phi phat trien phan mem
 

Cocomo – constructive cost model

  • 1. COCOMO – Constructive CostCOCOMO – Constructive Cost MOdelMOdel • COCOMO là mô hình do Barry Boehm thiết kế nhằm dự báo ( ước tính) số NGƯỜI- THÁNG (man-months) trong triển khai sản phẩm phần mềm.Mô hình này dựa trên khảo sát ( nghiên cứu) 60 dự án tại công ty TRW, Northrop Grumman cuối năm 2002.Chương trình được viết bằng ngôn ngữ PL/I từ 2000 đến 100,000 dòng lệnh
  • 2. COCOMO – Constructive CostCOCOMO – Constructive Cost MOdelMOdel  Cocomo gồm 3 dạng: -COCMO cơ bản:Mô hình cho giá trị đơn, tỉnh, chi phí được tính như độ lớn của phần mềm theo dòng lệnh. -COCOMO trung gian: chi phí được tính như độ lớn của phần mềm theo dòng lệnh cộng thêm đánh giá sản phẩm, phần cứng, nhân lực và các thuộc tính của dự án. -COCOMO chi tiết: tích hợp mọi đặc trưng của COCOMO trung gian cộng thêm đánh giá của chi phí ảnh hưởng ( phân tích, thiết kế…) trong mỗi giai đoạn của qui trình công nghệ phần mềm ( the software engineering process)
  • 3. COCOMO c b nơ ảCOCOMO c b nơ ả Dùng ước tính nhanh và sơ bộ chi phí dự án cho hầu hết các dự án nhỏ và vừa COCOMO có thể áp dụng cho ba lớp dự án phần mềm: ◦ Organic: dành cho 1 đội nhỏ các nhà phát triển có kinh nghiệm và mội trường quen thuộc ◦ Semi-detached: trung gian giữa organic và embedded ◦ Embedded: dành cho dự án có nhiều ràng buộc chặt chẽ, thường là dự án mới và duy nhất, khó tìm người thực hiện
  • 4. B ng so sánh ba d ng COCOMOả ạB ng so sánh ba d ng COCOMOả ạ Mode Quy mô dự án Bản chất dự án Sự sáng tạo Thời hạn Môi trường phát triển Organic 2-50 KLOC Dự án nhỏ, developer kinh nghiệm trong môi trường thân thiện Ít Không chặt Quen thuộc, nội bộ Semi -detached 50 – 300 KLOC Dự án TB, đội TB, kinh nghiệm đã làm cho dự án tương tự TB TB TB TB Embbeded >300 KLOC Dự án lớn, HT real time. Giao diện phức tạp, đội có kinh nghiệm trước đó rất ít Đáng kể Chặt Yêu cầu HW và giao diện phức 4
  • 5. COCOMO c b nơ ảCOCOMO c b nơ ả • Phương trình của COCOMO cơ bản có dạng: • Trong đó: E = ước tính của NGƯỜI/THÁNG, D = Thời gian triển khai tính theo tháng KLOC = Số dòng lệnh (đơn vị=1000) ước tính của sản phẩm dự án phần mềm. ◦ ab, bb, db là các hệ số được tra theo bảng 3 • Số lượng nhân viên và mức độ hiệu quả của dự án được tính như sau:  Average staff size (SS) = E/D Persons  Productivity (P) = KLOC/E KLOC/PM
  • 6. B ng 3: Các h s COCOMO c b nả ệ ố ơ ảB ng 3: Các h s COCOMO c b nả ệ ố ơ ả Project ab bb cb db Organic 2.4 1.05 2.5 0.38 Semi -detached 3.0 1.12 2.5 0.35 Embbeded 3.6 1.20 2.5 0.32 6 B ng 3ả
  • 7. COCOMO c b nơ ảCOCOMO c b nơ ả •COCOMO cơ bản rất tốt cho ước tính chi phí thô, dễ dàng và nhanh. Tuy nhiên, sử chính xác sẻ bị giới hạn vì thiếu một số nhân tố chưa kể đến là sự khác nhau trong ràng buộc về phần cứng, kinh nghiệm và khả năng chuyên nghiệp của con người, việc sử dụng các công cụ hiện đại và các đặc trưng khác có ảnh hưởng đến chi phí phần mềm.
  • 8. Ví d 1ụVí d 1ụ  Giả sử dự án được ước tính khoảng 400 KLOC. Hãy tính nhân lực và thời gian cho mỗi loại dự án khác nhau 1. Đối với loại Organic: E = 2.4(400)1.05 = 1295.31 PM D = 2.5(1295.31)0.38 = 38.07 M 2. Đối với loại Semidetached: E = 3.0(400)1.12 = 2462.79 PM D = 2.5(2462.79)0.35 = 38.45 M 3. Đối với loại Embbeded: E = 3.6(400)1.20 = 4772.81 PM D = 2.5(1295)0.32 = 38 M 8
  • 9. Nh n xétậNh n xétậ Chọn loại dự án rất quan trọng, tùy thuộc vào 2 yếu tố: ◦ Quy mô dự án ◦ Các hệ số trong bảng 3 9
  • 10. Ví d 2ụVí d 2ụ Quy mô dự án được ước tính khoảng 200 KLOC. Đội phát triển phần mềm có kinh nghiệm ở mức trung bình cho các loại dự án tương tự. Lịch biều của dự án không đòi hỏi chặt chẽ lắm. Hãy tính thời gian phát triển, số người bình quân của đội, và tính hiệu suất của dự án Solution: Dự án thuộc loại semi-detached ◦ Tính các hệ số: E = 3.0(200)1.12 = 1133.12 PM D = 2.5(1133.12)0.35 = 38.67 M ◦ Số nhân viên (staff size) = E/D = 38.67 người ◦ Hiệu suất dự án (productivity) = KLOC/E = 176 LOC/PM 10
  • 11. COCOMO trung gianCOCOMO trung gian  COCOMO TRUNG GIAN là mở rộng của Mô hình COCOMO cơ bản, và được dùng để ước tính thời gian lập trình trong triển khai sản phẩm phần mềm. Sự mở rộng này, xem xét trên một tập hợp “Chi phí của các đặc trưng các Bộ phận điều khiển (driver)” được chia thành 4 nhóm (15 tính chất)
  • 12. Các nhóm và tính ch tấCác nhóm và tính ch tấ + Đặc trưng của sản phẩm: - Yêu cầu về tính độ tin cậy của phần mềm - Khối lượng CSDL (database) của ứng dụng - Tính phức tạp của sản phẩm. - Đặc trưng của phần cứng - Ràng buộc về tính năng Run-time - Ràng buộc về Bộ nhớ - Tính không ổn định của môi trường máy ảo. - Yêu cầu về thời gian chuyển hướng (turnabout time)
  • 13. Các nhóm và tính ch tấCác nhóm và tính ch tấ + Đặc trưng về Chuyên gia. - Khả năng phân tích - Khả năng về kỹ sư PM (Software engineer) - Kinh nghiệm ứng dụng - Kinh nghiệm về máy ảo - Kinh nghiệm về ngôn ngữ lập trình + Đặc trưng về Dự án - Sử dụng các công cụ Phần mềm - Ứng dụng các phương pháp của CNPM (software engineering) - Yêu cầu về triển khai lịch biểu (development schedule)
  • 14. COCOMO trung gianCOCOMO trung gian • Mỗi tính chất được đánh giá (cho điểm) theo thang điểm có 6 mức từ rất chậm (very low) đến quá cao (extra high) . Dựa trên thang điểm, Hệ số cố gắng (effort multiplier) sẽ được xác định theo bảng sau: Tích các Hệ số cố gắng = EAF (Effort Adjustment Factor, thường có giá trị từ 0.9 - 1.4.) được thể hiện qua bảng sau :
  • 15.
  • 16. COCOMO trung gianCOCOMO trung gian • Phương trình Cocomo trung gian có dạng:  Trong đó: - E = ước tính của NGƯỜI/THÁNG, - KLOC = Số dòng lệnh (đơn vị=1000) ước tính của sản phẩm dự án phần mềm. - EAF được cho bởi bảng trên. - E tinh chỉnh = E x EAF • S l ng nhân viên và m c đ hi u qu c a d án đ c tính nh sau:ố ượ ứ ộ ệ ả ủ ự ượ ư  Average staff size (SS) = E/D Persons  Productivity (P) = KLOC/E KLOC/PM i i d i b i EcD KLOCaE )( )( = =
  • 17. COCOMO trung gianCOCOMO trung gian Hệ số ai và bi được cho bởi bảng sau đây : Thời gian triển khai D được tính từ E tương tự như COCOMO cơ bản
  • 18. Ví dụVí dụ M t d án m i đ c c tính là h th ngộ ự ớ ượ ướ ệ ố nhúng (embedded system) có 400 KLOC. Ng i qu n lý d án ph i ch n l a gi a 2ườ ả ự ả ọ ự ữ nhóm làm vi c: m t nhóm r t có năng l cệ ộ ấ ự nh ng h u nh không có kinh nghi m gì vư ầ ư ệ ề ngôn ng l p trình s đ c dùng trong d án;ữ ậ ẽ ượ ự nhóm khác thì không gi i l m nh ng có nhi uỏ ắ ư ề kinh nghi m v ngôn ng l p trình. Hãy xétệ ề ữ ậ xem vi c ch n l a các nhóm s nh h ng nhệ ọ ự ẽ ả ưở ư th nào đ n d án??ế ế ự 18
  • 19. Ví dụVí dụ Solution: Vì là d án ki u embedded và mô hìnhự ể COCOMO m c trung nên:ứ E= ai(KLOC)bi = 2.8(400)1.20 = 3712 PM Tr ng h p 1: ch n nhóm có năng l c nh ngườ ợ ọ ự ư không có kinh nghi mệ EAF = 0.82 x 1.14 = 0.9348  E1 = EAF x E = 0.9348 x 3712 = 3470 PM  D1 = ci (E)di = 2.5(3470)0.32 = 33.9 PM 19
  • 20. Ví dụVí dụ Tr ng h p 2: nhóm ít có năng l c nh ngườ ợ ự ư nhi u kinh nghi mề ệ ◦ EAF = 1.29 x 0.95 = 1.22 ◦ E2 = EAF x E = 1.22 x 3712 = 4528 PM ◦ D2 = ci (E)di = 2.5(4528)0.32 = 36.9PM Nh n xét:ậ Nhóm 2 c n nhi u ng i và th i gian h n. Vìầ ề ườ ờ ơ v y, nhóm năng l c y u tuy có nhi u kinhậ ự ế ề nghi m l p trình không th phù h p v i dệ ậ ể ợ ớ ự án lo i embedded.ạ 20
  • 21. M i quan h gi a LOC và FPố ệ ữM i quan h gi a LOC và FPố ệ ữ Ph thu c vào ngôn ng l p trình đ cụ ộ ữ ậ ượ dùng đ th c thi và ch t l ng thi t k .ể ự ấ ượ ế ế LOC và FP đ c dùng đ c tính kháượ ể ướ chính xác chi phí (cost) và nhân l cự (effect) B ng LOC/FPả 21
  • 22. Các ví dụCác ví dụ  c tính theo LOC (page 128 Roger 5e)Ướ  c tính theo FP (page 129 Roger 5e)Ướ 22
  • 23. Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ A software package to be developed for a computer-aided design application for mechanical components. A review of the System Specification indicates that the software is to execute on an engineering workstation and must interface with various computer graphics peripherals including a mouse, digitizer, high resolution color display and laser printer. Using the System Specification as a guide, a preliminary statement of software scope can be developed: 23
  • 24. Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ The CAD software will accept two- and three- dimensional geometric data from an engineer. The engineer will interact and control the CAD system through a user interface that will exhibit characteristics of good human/ machine interface design. All geometric data and other supporting information will be maintained in a CAD database. Design analysis modules will be developed to produce the required output, which will be displayed on a variety of graphics devices. The software will be designed to control and interact with peripheral devices that include a mouse, digitizer, laser printer, and plotter. 24
  • 25. Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ D a vào phát bi u s b v ph m vi ph nự ể ơ ộ ề ạ ầ m m (preliminary statement of softwareề scope), xác đ nh đ c các ch c năng chínhị ượ ứ c a ph n m m:ủ ầ ề • User interface and control facilities (UICF) • Two-dimensional geometric analysis (2DGA) • Three-dimensional geometric analysis (3DGA) • Database management (DBM) • Computer graphics display facilities (CGDF) • Peripheral control function (PCF) • Design analysis modules (DAM) 25
  • 26. Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ 26
  • 27. Ví d c tính theo LOCụ ướVí d c tính theo LOCụ ướ A review of historical data indicates that the organizational average productivity for systems of this type is 620 LOC/pm. Based on a burdened labor rate of $8000 per month, the cost per line of code is approximately $13. Based on the LOC estimate and the historical productivity data, the total estimated project cost is $431,000 and the estimated effort is 54 person- months. 27
  • 28. Ví d c tính theo FPụ ƯớVí d c tính theo FPụ Ướ The project planner estimates inputs, outputs, inquiries, files, and external interfaces for the CAD software. For the purposes of this estimate, the complexity weighting factor is assumed to be average. The expected value for the estimation variable (size), S, can be computed as a weighted average of the optimistic (sopt), most likely (sm), and pessimistic (spess) estimates. S = (sopt + 4sm + spess)/6 28
  • 29. Ví d c tính theo FPụ ƯớVí d c tính theo FPụ Ướ 29
  • 30. Tính CAF=0.65+0.01x FiΣTính CAF=0.65+0.01x FiΣ 30
  • 31. Ví d c tính theo FPụ ướVí d c tính theo FPụ ướ The estimated number of FP is derived: FPestimated = count-total x [0.65 + 0.01 x (Fi)] =375Σ The organizational average productivity for systems of this type is 6.5 FP/pm. Based on a burdened labor rate of $8000 per month, the cost per FP is approximately $1230. Based on the LOC estimate and the historical productivity data, the total estimated project cost is $461,000 and the estimated effort is 58 person- months. 31
  • 32. COCOMO IICOCOMO II • COCOMO II là mô hình cho phép ước tính chi phí, sự cố gắng và lích biểu khi lập kế họach cho một dự án phần mềm mới. Gồm có 3 module: Applications Composition, Early Design, and Mô hình Post-architecture. • Mô hình COCOMO gốc do Dr. Barry Boehm khởi xướng năm 1981, và COCOMO II được hình thành sau nhiều năm cố gắng của nhóm nghiên cứu (1990) USC CSE, IRUS at UC Irvine, and the COCOMO II Project Affiliate Organizations, lần đầu tiên cài đặt giữa năm 1997. USC COCOMO II.1998.0 beta ra đời 10/1998. • Phiên bản 98 sữ dụng 161 điểm DL (data) và sử dụng cách tiếp cận Công thức Bayes (Bayesian statistical approach (119kb)) có thêm ý kiến chuyên gia trong mô hình
  • 33. COCOMO IICOCOMO II  Là mở rộng của COCOMO. COCOMO II có thể xử lý nhiều kỹ thuật của kỹ nghệ phần mềm hiện đại như:  Hướng đối tượng.  Các mô hình vòng đời khác nhau.  Làm bản mẫu nhanh.  Các ngôn ngữ thế hệ thứ t.  Phần mềm đóng gói ( COTS software). COCOMO II hơi phức tạp hơn phiên bản COCOMO
  • 34. COCOMO IICOCOMO II  COCOMO bậc trung gồm một mô hình chung dựa trên dòng mã (KDSI)  COCOMO II gồm 3 mô hình khác nhau:  Mô hình phức hợp áp dụng (ACM: Application composition model) cho các pha đầu tiên: dựa trên object points (tương tự như function points)  Mô hình thiết kế ban đầu (EDM: early design model): dựa trên function points  Mô hình hậu kiến trúc (PAM: post-architecture model): dựa trên function points hay KDSI
  • 35. COCOMO IICOCOMO II Out put của COCOMO bậc trung là ước lượng chi phí và kích thước Output của COCOMO II là khoảng ước lượng chi phí và kích thước. Ví dụ, nếu ước lượng công sức là E thì ACM có giá trị trong khoảng ( 0.50E,2.0E) và PAM thuộc miền (0.80E,1.25E)