1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Hệ thống thông tin quản lý: Ứng dụng thống kê vào công tác dự toán dự án phần mềm

99 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng thống kê vào công tác dự toán dự án phần mềm
Tác giả Phạm Quang Khanh
Người hướng dẫn TS. Nguyễn Chánh Thành
Trường học Trường Đại học Bách Khoa - ĐHQG - HCM
Chuyên ngành Hệ thống thông tin quản lý
Thể loại Luận văn thạc sĩ
Năm xuất bản 2015
Thành phố Tp.HCM
Định dạng
Số trang 99
Dung lượng 12,09 MB

Nội dung

NHIEM VU VA NOI DUNG > Tìm hiểu các phương pháp đã có trên thé giới có liên quan về việc ước lượng công số thực hiện dự án phan mềm va tính toán dự báo kết quả.> Nghiên cứu và phát triển

Trang 1

PH M QUANG KHANH

UNG DUNG TH NG KE VÀO CÔNG TAC DỰ TOÁN

CHUYEN NGANH: HE THONG THONG TIN QUAN LY

MA SO CHUYEN NGANH: 60.34.48

LU NVANTH CS

TPH CH MINH, thang 01 nam 2015

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠITRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCM

Cán bộ hướng dẫn khoa học: TS Nguyễn Chánh Thành

Cán bộ cham nhận xét 1: TS Nguyễn Tuấn Đăng

Cán bộ chấm nhận xét 2: TS Nguyễn Thanh BìnhLuận văn thạc sĩ được bảo vệ tại trường Đại học Bach Khoa, ĐHQG Tp.HCMNgày 06 tháng 01 năm 2015

Thanh phan hội đồng đánh giá luận văn thạc sĩ gồm:

CHỦ TỊCH HỘI Ð NG TRƯỞNG KHOA KH&KT MT

(Ký tên) (ký tên)

Trang 3

D IH CQU CGIATP.HCM CỘNG HÒA XA HỘI CHỦ NGH A VIỆT NAMTRU NGD IH CBACH KHOA Độc Lập — Tự Do — Hanh Phúc

NHIEM VU LU NVANTH CS

Ho và tên học viên: PHAM QUANG KHANH MSHV: 12321064Ngày, thang, năm sinh: 28/05/1974 Noi Sinh: Déng NaiChuyén nganh: Hé théng théng tin quan ly Mã số: 60.34.48

I TEN DE TÀIUNG DUNG THONG KE VAO CONG TAC DU TOAN DU AN PHANIl NHIEM VU VA NOI DUNG

> Tìm hiểu các phương pháp đã có trên thé giới có liên quan về việc ước

lượng công số thực hiện dự án phan mềm va tính toán dự báo kết quả.> Nghiên cứu và phát triển một giải pháp ước lượng công số thực hiện dự án

phần mềm Mô hình kết hợp phương pháp truyền thống về ước lượng kích

thước phần mềm với những mở rộng dựa trên cơ sở phân tích thống kê

các số liệu lịch sử liên quan kinh nghiệm của tô chức.> Tiến hành thử nghiệm đánh giá tính hiệu quả của giải pháp

HI NGÀY GIAO NHIỆM VỤ: 20/01/2014IV NGÀY HOÀN THÀNH NHIỆM VỤ: 14/11/2014v CAN BO HƯỚNG DAN: TS NGUYEN CHÁNH THÀNH

Tp.HCM,ngay tháng nam 2014

CAN BO HUONG DAN TRUONG KHOA

TS Nguyễn Chánh Thanh

Trang 4

L ICAMONTrước hết, tôi xin gửi đến thay TS NGUYEN CHÁNH THÀNH long biết ơn

sâu sắc nhất, người đã rất nhiệt tình, tận tâm hướng dẫn để tôi có thể hoàn thànhluận văn này.

Tôi cũng xin chân thành cảm ơn quý thay cô trong khoa Khoa học và Kỹ thuật

Máy tính, quý thay cô trong khoa Quan lý công nghiệp, trường Dai học Bách

khoa Tp.HCM đã truyền đạt những kiến thức quý báu trong suốt khóa học

Cuôi cùng, tôi xin cảm ơn các chuyên gia, đông nghiệp, bạn bè và người thân đãluôn ủng hộ giúp đỡ trong quá trình học tập và hoàn thành luận văn.

Chân thành cảm ơnTp.HCM, ngày 14 tháng II năm 2014

Phạm Quang Khanh

Trang 5

TÓM TAT NỘI DUNG LU N VAN

Nghiên cứu nay tổng hop các phương pháp ước lượng chi phí phan mềm

phô biến hiện có từ đó đề xuất một phương pháp ứng dụng cho doanh nghiệp cụthé Phương pháp ước lượng dé xuất ứng dụng thống kê để xây dựng mô hình

hồi quy trên tập dữ liệu lịch sử của doanh nghiệp Tập dữ liệu lịch sử gồm 27 dựán được chia thành 2 tập Tập kiểm định lấy ngẫu nhiên 10% từ tập lịch sử và tậphuấn luyện gồm 90% còn lại Kết quả mô hình xây dựng gém các biến đâu vào

là: kích thước phan mêm; khả năng của đội ngũ tham gia dự án; kinh nghiệm vềngôn ngữ lập trình va các công nghệ sử dụng; độ phức tạp của phan mêm; vàcác công cụ nhằm tăng năng suất như framework va CASE tool Đánh giá hiệuquả của ước lượng qua độ đo MRE và MMRE cho thấy mô hình đề xuất cho kếtquả ước lượng tốt hơn phương pháp hiện có của doanh nghiệp trên tập dữ liệu

kiểm định và toàn tập dữ liệu lịch sử thu thập được

Trang 6

This study synthesis widespead methods for estimating the cost ofsoftware then to propose a method for an specific enterprise application Theproposed estimation method bases on statistical regression model and historicaldata set of the business The historical data set consists of 27 projects are dividedinto two sets: Test set is selected randomly 10% from the historical data set; andtraning set consists of 90% remaining The proposed model found somepredictor vairables: size of software; the ability of the team involved in theproject; experience in programming languages and_ technologies used;complexity of software; and framework and CASE tools to increase productivity.Assessing the effectiveness of the measure estimated through MRE and MMREshows that the proposed model is better estimation results than the existingmethod of the business on the test data set and full historical data set.

Trang 7

L ICAM DOAN

Tôi xin cam đoan rằng toàn bộ nội dung và số liệu trong luận văn do tôi tựnghiên cứu, khảo sát và thực hiện Những dữ liệu thu thập được xử lý một cáchkhách quan và trung thực.

Trang 8

MUC LUC

CHUONG I: MO DAU - <5 SE E3 E11 32151515 12111111115 11011111 r6 |

1.1 GIỚI THIEU DE TÀII 5< 2E SE2E2ESEEEEEEEEEEEEESEEEEEEEEerrkrree |1.2 MỤC TIÊU NGHIÊN CUU 2 2 +2 2+E+E+E£EE+E+EeEErErErrkrerree 4I3 PHAM VI NGHIÊN CỨU - 52 ©2+E+E+EE£E£E+EEEEEEEEEEEEEEErrrrkrree 414 Ý NGHĨA NGHIÊN CỨU - + 2 +2+E+E+EE£E£ESEEEEEESEEEEEEEErrrrkrree 51.5 SƠ LƯỢC VE CÔNG TY NEC VIET NAM .- ¿sec ccccccees 5CHƯƠNG II: PHƯƠNG PHAP UOC LƯỢNG TRUY ÊN THỒNG 6IL.I TONG QUAN VE UOC LƯỢNG DỰ ÁN PHAN MẼM 6I2 K CH THƯỚC PHAN MẼM - 2 2 2252 SE*E+ESEE£EEEEEEEEErrkrkrree 811.2.1 SỐ DÒNG MÃ LENH (SLOC) 6 cv Evsksvserkrerees 911.2.2 PHAN T CH DIEM CHỨC NANG ¿-2+c+cccsceseece2 911.2.3 CHUYỂN DOI GIUA FUNCTION POINT VA SLOC 16

11.2.4 DIEM DOI TƯỢNG (OBJECT POINT) ccceecescssesscscesessessceeees 18

11.3 UGC LƯỢNG CONG SO (EFFORT) ccccccsccscecesesesssescevesesessceceeeeneees 2011.3.1 PHƯƠNG PHAP CHUYỂN GIA 5-52 252+£+ccs+esrsre2 2011.3.2 PHƯƠNG PHÁP TƯƠNG TỰ 5< 52+s+cszccresrered 21IIL3.3_ MÔ HÌNH COCOMO I[ 5252252 E2EEEEEEEeEErkrrerrrkd 2211.3.4 MÔ HÌNH SEER-SEM 5-5252 SSEESESEEEEeEeErkrrerred 3311.3.5 ỨNG DỤNG MẠNG NƠ-RON 5c ccccersrrrrerrrei 3411.3.6 PHAN TICHH IQUY G6 SG S6 S2 SESESEESEEErEekskseeerees 36CHUONG III: PHƯƠNG PHAP UOC LƯỢNG DE XUẤT . 39IILI CAC YEU TO ANH HUGNG DU BAO CONG SỐ 39

Trang 9

II2_ XÂY DUNG MO HÌNH 5-5252 2 E21 E2 2121515 1211211 xe 40

II2.I NHAN ĐỊNH VE NĂNG SUAT VÀ DU LIEU LICH SỬ 40

11.2.2 QUY TRINH XÂY DUNG MO HÌNH - 55s: 4511.2.3 MÔ HÌNH NGHIÊN CUU 5-5 2525222 2+E£Ez££zesrsred 46II24_ PHAN T CH ĐỊNH TÍNH - ¿5252252 £22E£Eserrrsrered 4711.2.5 ĐIÊU CHỈNH MO HÌNH - XÂY DUNG THANG ĐO 48

II2.6 THU THẬP DU LIỆU 5-5255 2 22E2E+E£££E£EzErkrserred 52II27 XỬ LÝ DU LIỆU 2555222 2E SE2E2EEeEerrrkrkreee 521.2.8 XAY DUNG MÔ HÌNH 2 2-5-5522 2E+E2E£E£EsErrserrred 53II3 KIEM ĐỊNH CÁC GIA THIẾT - +22 2 2+£+s£2+Ez£zzecszsee 59II.3.1 HE SỐ XÁC ĐỊNH RÔ - 52 S2 SE 3 E211 2121111 errrkd 5911.3.2 KIÊM ĐỊNH DO PHÙ HOP CUA MO HÌNH 60

11.3.3 GIÁ ĐỊNH LIEN HE TUYẾN T NH & PHƯƠNG SAI 61

11.3.4 GIA ĐỊNH PHƯƠNG SAI CUA SAI SỐ KHÔNG ĐỒI 62

11.3.5 GIÁ ĐỊNH PHAN PHOI CHUAN CUA PHAN DƯ 63

11.3.6 GIA ĐỊNH T NH ĐỘC LẬP CUA PHƯƠNG SAI 64

11.3.7 GIA ĐỊNH KHONG CÓ HIỆN TƯỢNG CONG TUYẾN 64

CHƯƠNG IV: ĐÁNH GIÁ MÔ HINH VA UNG DỤNG - 65IV.I DANH GIÁ MÔ HINH - 5-5-5222 E123 221211 E21 2E ckrree 65

IV.1.I ĐỘ ĐO MRE - 5S t2 111211212111 211111111 11111111 errk 65IV.12_ ĐỘ ĐO MMIRE 5S S213 E1 1215112121111 11 1111111 tk 69

IV.2 UNG DỤNG MO PHỎNG - - c1 3 2121111112112 E1 c1 ve 70CHUONG V: KẾT LUẬN VÀ KIÊN NGHỊ - - 2525552 cs+s+zszscsez 75V.1 KẾT QUÁ NGHIÊN CỨU G6 SSEEESESEeEEEEEEEsEskseeerees 75V.1.1 TOM TẮT NỘI DUNG NGHIÊN CỨU 2 5552 75

V12 KẾT LUẬN ĂSĂ 252C tt sesrerereeg 76

Trang 10

V2 NHỮNG HAN CHE VÀ KIÊN NGHỊ - 2 2s+ccscs se 76TÀI LIEU THAM KHẢO 5-5225 222% 52521515 E1212115 2171151121211 1 Lee 77PHU LUC A: CÂU HOI THU THẬP DU LIEU - 252-5552 255252 79PHU LUC B: DU LIEU LICH SU CUA 27 DU ÁN - << 82PHU LUC C: BANG GIA TRI THONG KE DURBIN-WATSON

Trang 11

Hình II-2: Các thành phân của điểm chức năng chưa hiệu chỉnh (UEP) 11Hình II-3: Tham số đầu vào va ra của mô hình SEER-SEM - 33Hình II-4: Mô hình mạng nƠ-rOII <1 119919 93011 11999 111 kg ke 34Hình II-5: Minh hoa hàm hồi quy tuyến tính đơn biến 5-5 25255552 37Hình III-I: Quy trình xây dựng mồ hình - c1 S9 g k, 45Hình III-2: Phương pháp xây dựng m6 hình - - - - 55c S1 1s se 54Hình II-3: Biểu đồ phân tán phan dưư - - + 2 2+£+E+E+£+££££EzE+E+Eerersrxd 61Hình II-4: Biểu đồ Histogram của phan du -. 5- 52 +52 2+s+£+£+£e£zzscx¿ 63Hình IV-1: Biểu đồ so sánh ty lệ sai lệch ước lượng của 2 mồ hình 69Hình IV-2: Giải thích nhập giá trị cho các biễn đầu vào -555¿ 73

Trang 12

DANH MỤC BANG

Bảng I-1: Độ chính xác của ước Ìượng . - <9 1 ng re 2Bảng I-2: Tỷ lệ các nghiên cứu về các phương pháp ước lượng 3Bảng H-1: Bảng đánh giá độ phức tap của ILF và EL,E - «555 55<<<< <2 12Bảng II-2: Bảng tra điểm chức năng chưa hiệu chỉnh UFP của ILF 12

Bảng II-3: Bảng tra điểm chức năng chưa hiệu chỉnh UFP của ELE 13

Bảng H-4: Bang độ phức tạp của EEÌ - (<< + 1113329993111 99 11 1g ke 14Bảng II-5: Bang độ phức tạp của EO, EQ HH ku 14Bảng II-6: Bảng điểm chức năng chưa hiệu chỉnh của EI và EQ 14Bảng II-7: Bảng điểm chức năng chưa hiệu chỉnh của EO -5- 14Bảng II-8: Chuyén đổi giữa FP và SLOC ¿5252252 +xE+EEE£EzEzEsrerrrsred l6Bảng II-9: Bảng xác định độ phức tạp của màn hình «555 ++<<< <2 18Bang II-10: Bảng xác định độ phức tạp của báo biểu (Report) 19Bảng II-11: Bảng trọng số của Screen, Report, 3GL component 19Bảng II-12: Bảng đánh giá năng suất trong mô hình COCOMO II 23

Bảng II-13: Ý nghĩa các tham số Scale Factors - + 25 + 2 2+E+£z£zzszc 25

Bảng II-14: Bảng trọng số của Scale FaCfOFS - ¿52 2-5 E2 ererereở 26Bảng II-15: Bảng mô tả 17 yếu tổ ảnh hưởng đến công số - 26Bảng II-16: Thang đo đánh giá 17 yếu t6 ¿+ 252 52+e+E+E£E£zEzrsrerersred 29Bang I-17: Bang mô tả các Effort Multipliers của mô hình Early Design 3lBảng H-18: Thang đo đánh giá của 7 Effort Multipliers -««- 32Bang III-1: Bang các bién trong mô hình COCOMO II Early Design 46Bang III-2: Mô tả biến trong mô hình dé xuất 5+ 5252 252£+£+££zzzcs2 48Bảng HI-3: Bang minh hoa df liệu xây dựng mồ hình 555 << <<<2 53Bang III-4: Ma trận tương quan giữa các DIGI eececcccescsesseesescessesseesessseseeeees 55Bang III-5: Bảng mô tả thủ tục chọn biét cccececececcecesesessesesesesssesesesessseseesees 56Bang III-6: Bảng thông số tóm tắt của mô hinh ecc cesses - 2 2 2+s+s+£+£e£zzzcx2 57Bảng III-7: Bảng hệ số kết xuất của mô hình hồi quy - - 2 255552 58

Trang 13

Bảng LII-S: Bảng phân tích ANOVA HH HH ngà 60Bang III-9: Ma trận hệ số của kiểm định ŠPpearman - - ss Sa 62Bảng IV-1: MRE của mô hình dự báo dé xuất - 2 2 2552s+c+secczscs¿ 66Bảng IV-2:Bảng so sánh MRE trên tập kiểm định 5-5-5 5c+52cc<c5¿ 66Bang IV-3: Bang so sánh MRE trên tập 27 dự án c2 66Bang IV-4: Bang so sánh MMIRE Ặ G G0010 HH ke 70Bảng IV-5: Hệ số của các biến trong sheet Model - ¿555cc czscs¿ 7]Bảng IV-6: Các bién dau vào và công số ước lượng trong sheet Estimator 72

Trang 14

SLOCKSLOCFPUFPCOCOMOOP

VAFILFELFEIEO

EQ

DETRETFIR3GL

PMNOPPRODEMSFPRECFLEXRESLTEAMPMATRELY

DANH MUC CHU VIET TAT

Source Line Of Code (số dòng mã nguồn)Thousand Source Lines Of Code (don vị ngàn dòng mã nguồn)

Function Point (điểm chức năng)Unadjusted Function Point (điểm chức năng chưa hiệu chỉnh)

COnstructive COst Model (mô hình chi phí COCOMO)

Object Point (điểm đối tượng)

Value Adjustment Factor (yếu tô điều chỉnh)Internal logical file (tập tin luận lý trong)External logical file (tập tin luận lý ngoài)External Inputs (nhập từ bên ngoài)

External Outputs (kết xuất ngoài)External Inquiry (truy vấn ngoài)Data Element Type (kiêu thành phan dữ liệu)Record Element Type (kiểu thành phan bản ghi)Eile Type Referenced (file được tham chiếu)Third-generation programming language (ngôn ngữ lập trình théhệ 3)

Person-Month (đơn vi người-tháng)

New Object Point (điểm đối tượng mới)

Productivity (năng suất)Effort Multipliers (yếu tổ ảnh hưởng công số)Scale Factors (yếu tố liên quan quy mô)Precedentedness (tính tương tự với dự án cũ)Development Flexibility (khả năng phát triển linh hoạt)Risk Resolution (giải pháp khắc phục rủi ro)

Team Cohesion (mức độ gẵn kết của nhóm)Process Maturity (mức độ trưởng thành của quy trình)Required Software Reliability (mức độ tin cậy của phần mềm)

Trang 15

Database Size (độ lớn cua cơ sở đữ liệu)Product Complexity (độ phức tạp của sản phẩm)Developed for Reusability (khả năng tái sử dụng)Documentation (tài liệu)

Execution Time Constraint (ràng buộc về thời gian thực thi)Main Storage Constraint (ràng buộc về lưu trữ chính)

Platform Volatility (tính phức tạp của nền tảng)Analyst Capability (kha nang phân tích)

Programmer Capability (kha năng cua lập trình viên)Personnel Continuity (tinh ồn định của nhân sự)Applications Experience (kinh nghiệm về ứng dụng)Platform Experience (kinh nghiệm về nên tang)Language and Tool Experience (kinh nghiệm về công cụ)Use of Software Tools (mức độ sử dụng công cụ)

Multisite Development (môi trường phát triển phân tán)Required Development Schedule (ràng buộc về thời gian)Personnel Capability (khả năng của nhân sự)

Product Reliability and Complexity (độ phức tap&tin cậy)Platform Difficulty (độ phức tap của nên tang)

Personnel Experience (kinh nghiệm của nhân sự)Facilities (phương tiện hỗ trợ)

Capability Maturity Model (mô hình năng lực trưởng thành)Capability Maturity Model Integration (mô hình năng lực trưởngthành tích hợp)

Trang 16

CHƯƠNGI: MỞ ĐẦU

Chương dau tiên của luận văn trình bày tầm quan trọng của ước lượng chiphí dự án phan mém và xu hướng của kỹ thuật ứng dụng trong nghiên cứu ướclượng chi phí Đó cũng là lý do hình thành dé tài và mục tiêu nghiên cứu

L1 GIỚI THIỆU DET IThế ky thứ 20 được đánh dau bởi sự phát triển nhanh chóng của công nghệ,

đặc biệt là công nghệ thông tin Công nghệ thông tin đã tác động sâu rộng đếnnhiều hoạt động của đời sống xã hội và được xác định là một ngành kinh tế mũinhọn trong chiến lược phát triển kinh té của nước ta trong đó có công nghiệpphân mêm.

Sản xuất phan mềm là quá trình gồm nhiều công đoạn trong đó có ướclượng chi phí sản xuất Ước lượng chi phí hợp ly là điều hết sức quan trọng giúpdoanh nghiệp hoạch định ngân sách, lập kế hoạch và phân bổ nguồn lực cho dựán hoặc tham gia đấu thâu đối với các doanh nghiệp nhận gia công Nếu ướclượng quá cao so với thực tế doanh nghiệp sẽ giảm tính cạnh tranh, khó có khảnăng trúng thâu hoặc may mãn trúng thâu thì việc ước lượng cao hơn thực tế dẫnđến bồ trí nguồn lực và ngân sách lãng phí Ngược lại, thấp hơn thực tế dẫn đếnbố trí thiểu nguồn lực cho dự án làm giảm chất lượng sản phẩm và nguy co

không đúng thời hạn cam kết với khách hàng

Ước lượng chi phí thực hiện phần mềm là việc khó khăn và quan trọng, kết

quả ước lượng là cơ sở để lập kế hoạch và quản trị dự án do vậy nó ảnh hưởng

rất lớn đến thành công của dự án Một khảo sát của Kjetil Molékken 2003 [1] chỉra rằng 61%-84% dự án vượt ngân sách, 65%-84% hoàn thành trễ so với kếhoạch trong khi chỉ 10%-14% hoàn thành ít hơn ngân sách hoạch định và chỉ 4%

Trang 17

Bang I-1: Độ chính xác cua ước lượng [1]

Vượt quá thời hạn 22%Hoàn thành trễ kê hoạch 65% S0% 84%

Hoàn thành trước kế hoạch 4%

Kết quả khảo sát trên cho thấy việc ước lượng chính xác chi phí phát triểnphân mém là rat quan trong và cân thiệt.

Tầm quan trọng của ước lượng chi phí trong sản xuất phần mém đã thuhút sự quan tâm của các nhà nghiên cứu Cho đến nay, đã có nhiễu nghiên cứu

về các phương pháp ước lượng công phát triển phần mềm với những mô hìnhkhác nhau được đề xuất Nhìn chung, các phương pháp này được chia thành 2

nhóm là nhóm ước lượng băng công thức và không công thức

Nhóm dựa vào công thức nhằm biểu diễn công thực hiện theo các tham sốcủa dự án và các yếu tố ảnh hưởng đến chi phí phát triển theo dạng một phươngtrình hay công thức nào đó Tiêu biểu cho nhóm này là mô hình COCOMO

Nhóm không dựa vào công thức: khác với nhóm dựa vào công thức,phương pháp trong nhóm này dựa trên sự phân tích và suy diễn từ những dữ liệu

Trang 18

của dự án trong quá khứ Một số phương pháp trong nhóm này như phương pháptương tự (Analogy), phương pháp chuyên gia.

Theo nghiên cứu tổng hop của Magne Jørgensen va Martin Shepperd

(2007) [3] phương pháp ước lượng dựa trên phân tích hồi quy chiếm tỷ lệ cao

Mo phong 2 (5%) 4 (2%) 4 (4%) 10 (3%)

(Simulation)Mang No-ron 0 (0%) 11 (7%) 11(11%) | 22 (7%)

Theory 20 (49%) | 14 (9%) 5 (5%) 39 (13%)Bayesian 0 (0%) 1(1%) 6 (6%) 7 (2%)

Ket hợp các phương | o yy) 3 (2%) 2 (2%) 5 (2%)

pháp

Khác 2 (5%) 7 (4%) 16 (16%) | 25(8%)

Mặc dù có nhiều mô hình ước lượng được để xuất nhưng mỗi phươngpháp đều có ưu và nhược điểm khác nhau tùy theo môi trường cụ thé của mỗidoanh nghiệp/tổ chức, không có phương pháp nào tốt nhất cho mọi trường hợp

[4]

Trang 19

NEC Việt Nam, một công ty chuyên gia công phần mềm cho Nhật bản cũng gặpphải những khó khăn khi thực hiện ước lượng công phát triển phần mềm Vớiđội ngũ 203 nhân viên hoạt động gia công phần mềm, quá trình hoạt động hơn 7

năm, doanh nghiệp này ước lượng chủ yếu dựa vào những người có nhiều kinhnghiệm trong công ty Phương pháp ước lượng này vừa tốn kém vừa khó kiểm

chứng bởi các tham số đâu vào của ước lượng không được tài liệu hóa rõ ràngmà nó phụ thuộc vào các chuyên gia này.

Đề hạn chế những nhược điểm của phương pháp hiện tại, luận văn nghiêncứu đề xuất một mô hình ước lượng thay thé hoặc bổ sung giúp nâng cao độchính xác của ước lượng.

L2 _ MỤC TIỂU NGHIÊN CỨUTổng hop các phương pháp ước lượng công phát triển dự án phần mém phổ

biến từ đó nghiên cứu xây dựng mô hình ước lượng công phát triển dự án phần

mềm trên cơ sở ứng dung phân tích hồi quy trên tập dữ liệu lịch sử các dự án

phần mềm tại công ty NEC Việt Nam

13 PH MVINGHIÊN CUU‹ Phuong pháp ước lượng kích thước phân mềm

o Ước lượng băng số dòng mã lệnh (Source Line Of Code)o _ Ước lượng băng số điểm chức năng (Function Point)o _ Ước lượng băng số điểm đối tượng (Object Point)« - Một số phương pháp ước lượng công phổ biến

o Phương pháp chuyên gia

Trang 20

o Phương pháp tương tựo Mô hình COCOMO IIo Mô hình SEER-SEM

o Ứng dụng mang nơ-rono Phương pháp phân tích hồi quy¢ Ung dụng phân tích hồi quy xây dựng mô hình ước lượng công phát triển

phan mềm Dữ liệu xây dựng mô hình được thu thập là các dự án đã hoànthành tại công ty NEC Việt Nam.

IL4 ÝNGH A NGHIÊN CỨU

Ước lượng chi phí phát triển phần mém là công việc khó khăn và phức tạpnhưng rất quan trọng Kết quả của ước lượng ảnh hưởng đến thành bại của dựán Mặc dù có nhiều phương pháp được đề xuất nhưng mỗi phương pháp đều có

ưu và nhược điểm Nghiên cứu này góp phan củng cô thêm luận chứng đối với

phương pháp phân tích hồi quy, là case study trong việc ước lượng chi phí dự ánphân mêm.

L5 SƠ LƯỢC VE CÔNG TY NEC VIET NAM

Công ty TNHH NEC Vietnam được thành lập năm 2006, là công ty con củatập đoàn NEC Nhật Bản Trụ sở chính tại 52 đường Lê Đại Hành, quận Hai BàTrưng, Ha Nội Chi nhánh phía nam tọa lạc tại tang 9, toan nha Etown 3, 364Cộng Hòa, quận Tân Bình, Hồ Chính Minh Ngành nghề kinh doanh gồm pháttriển phần mềm; tích hợp hệ thống: và cung cấp thiết bị và giải pháp phần mềmđóng gói Quy mô công ty hiện khoảng 203 người trong đó phát triển phần mềmchiếm tỷ trọng cao nhất, thị trường chính là Nhật Bản Phương pháp ước lượngcông số phát triển phần mềm chủ yếu là phương pháp chuyên gia

Trang 21

Chương I đã giới thiệu lý do chon dé tài, mục tiêu và ý nghĩa nghiên cứu.Tiếp theo, chương này giới thiệu tổng quan về ước lượng công số thực hiện dựán phần mềm va độ lớn hay kích thước phần mềm Độ lớn phan mềm là tham sốdau vào quan trọng của nhiều mô hình ước lượng công số do vậy một số phươngpháp phô biến xác định kích thước phần mềm được giới thiệu trong chương này.

Tiếp theo đó là những phương pháp ước lượng công số truyền thống và mô hình

COCOMO II rất phô bién hiện nay cùng với các mô hình ứng dụng máy học ganđây.

H.1 TONG QUAN VE UOC LUONG DỰ N PHAN MEM

Dự toán dự án phần mém là quá trình xác định chi phi dé sản xuất mộtphần mềm Chi phí sản xuất này gồm nhiều loại chi phí khác nhau gồm chi phínhân công tham gia phát triển phần mềm và các chi phí hoạt động khác củadoanh nghiệp như chi phí mua các công cụ phát triển, chi phí tư van pháp luật,chi phí ngoại giao, chi phí thuê văn phòng, chi phí điện nước, Các loại chi phíhoạt động này phụ thuộc vào mỗi doanh nghiệp và biến động theo môi trườngkinh tế xã hội mà doanh nghiệp hoạt động và không thuộc phạm vi sản xuất phầnmém Do vậy dé đơn giản, các nghiên cứu về ước lượng chi phí phần mềm tập

trung vào ước lượng số giờ/ngày công can thiết dé phát triển một phan mềm bởivì số giờ/ngày công nay là cơ sở quan trong dé tính chi phí của phần mềm

Đâu vào của quá trình ước là các yêu tô ảnh hưởng công sô Các yêu tônày thường được gọi là cost drivers và được chia thành 3 nhóm [5]:

- Nhóm yếu tố liên quan phan mềm (Product Factors): Đây là nhữngyếu tố liên quan đặc tính của phan mềm như: độ lớn, độ phức tạp củaphần mềm, lĩnh vực nghiệp vụ

Trang 22

- Nhóm yếu tố liên quan môi trường phát triển (Environment Factors):

Đây là những yếu tố liên quan môi trường phát triển sản phẩm nhưquy trình, công cụ, trang thiết bị và tài nguyên hỗ trợ

- Nhóm yếu tố liên quan đội ngũ tham gia dự án (People Factors): Daylà những yếu tô liên quan con người như trình độ, kỹ nang, năng suấtcủa đội ngũ tham gia dự án,,

Kết quả của quá trình ước lượng là công can thiết dé sản xuất phần mềm

Nó thê hiện công sức bỏ ra của đội ngũ tham gia dự án Don vi thường được sửdụng đo công sô là person-hour hoặc person-month.

Person-hour: là số giờ cần thiết một người cần bỏ ra để phát triển phần mềm.Person-month: là số tháng cân thiết một người cần bỏ ra để phát triển phân mềm

Ước lượng công số không chỉ thực hiện ở giai đoạn đầu của dự án mà nóđược thực hiện xuyên suốt qua quá trình thực hiện dự án Ước lượng ở những

giai đoạn dau dự án là cơ sở dé doanh nghiệp quyết định đầu tư, hoạch định ngân

sách, phân bố nguồn lực hoặc tham gia đấu thầu Khi dự án được vận hành, ước

lượng ở các giai đoạn nay là cơ sở điều chỉnh kế hoạch, phân bố lại nguồn lựccũng như quản trị dự án cho các giai đoạn tiếp theo

Độ chính xác của ước lượng phụ thuộc vào từng giai đoạn của dự án Giai

đoạn dau hình thành dự án, các đặc tả về chức năng của phần mềm thường chưarõ ràng do vậy ước lượng công số thực hiện trong giai đoạn này có độ chính xáckhông cao Càng về các giai đoạn sau, chỉ tiết đặc tả của phân mềm càng rõ ràngkhi đó độ chính xác của ước lượng càng cao Thông tin ước lượng này giúp điều

chỉnh kế hoạch và phân bổ nguồn lực cho các giai đoạn tiếp sau cho đến khi dựán hoàn thành.

Trang 23

ay,

<u:

>0.5x0.25x

H.2 K CH THƯỚC PHAN MEM

Độ lớn hay kích thước phần mềm là đại lượng dùng dé chi mức độ lớn/nhỏhay quy mô của phân mêm.

Kích thước phần mềm là tham số đâu vào quan trọng của nhiều mô hình ước

lượng chi phí phố biến hiện nay Có thể hiểu nôm na nó là khối lượng công việc

mà các mô hình ước lượng cân tìm ra số lượng nhân công để giải quyết khốilượng công việc nay Độ lớn phan mềm là yếu tổ gan liền với các đặc tính, chức

năng cụ thê của phân mêm và độc lập với môi trường phát triên phân mêm.

Trang 24

Don vị đo độ lớn phố biến hiện nay là số dòng mã lệnh SLOC (Source LineOf Code) của phần mềm hoặc số điểm chức năng FP (Function Point) , hoặc sốđiểm đối tượng OP (Object Poin0).

H21 S DONG MÃ LỆNH (SLOC)SLOC là dai lượng dùng dé đo độ lớn của phân mềm theo số lượng dòng

mã lệnh (không ké số dòng trang và dòng chú thích) Đây là đại lượng được sửdụng dau tiên trong lich sử công nghiệp phan mém dé đo kích thước phần mềm[7] Đối với dự án đã hoàn thành thì việc xác định kích thước theo SLOC khá dễdàng Tuy nhiên để xác định SLOC ở giai đoạn đầu của dự án khi mà các đặc tả

của phân mềm chưa rõ rang, phan mém chưa đến giai đoạn viết code là việc khó

khăn Trường hợp này SLOC thường được ước lượng bằng phương pháp WBS(Work Breakdown Structure) cách chia phần mềm thành những module nhỏ vakết hợp với phương pháp tương tự hoặc phương pháp chuyên gia Với những dự

án đã hoàn thành trong quá khứ ta có thé xác định chính xác SLOC và so sánh

phần mềm mới hoặc module của nó với dữ liệu lịch sử của các dự án này đề đưa

ra ước lượng kích thước Ngoài ra phương pháp tính độ lớn theo điểm chức năng

Function Point cũng có thé sử dụng thay thé để khắc phục hạn chế trong việc xác

định SLOC ở giai đoạn đâu của dự án.H.22 PHAN TÍCH DIEM CHỨC NĂNG [8]

Phân tích điểm chức năng (Function Point Analysis) là phương pháp dođộ lớn của phần mềm được Allan Albrecht dé xuất vào năm 1970 với những kếthừa từ “IBM CIS & A Guideline 313, AD/M Productivity Measurement and

Estimate Validation” của công ty IBM Nam 1988, tổ chức International

Function Point Users Group (IFPUG) giới thiệu phiên ban 2.0 cua phương phápnày và đến năm 1999 cải tiến lên phiên bản 4.1 Phiên bản 4.1 gồm những cải

tiễn tương thích với chuẩn ISO

Trang 25

Với phương pháp này, kích thước phan mém được xác định thông qua

phân tích các tính năng, chức năng nghiệp vu thé hiện qua đơn vị đo là điểmchức năng FP (Function Point) Đây là độ đo độc lập với công nghệ phát triển,ngôn ngữ lập trình, khả năng và năng suất của đội ngũ phát triển

Function Point được tính dựa trên chức năng mà ứng dụng cung cấp chongười dùng, mức độ xử lý thông tin với các luồng dit liệu trong hệ thống cũng

như các giao tác với nguồn dữ liệu bên ngoài

Công thức tính độ lớn của phần mềm như sau:

FP = UFP*VAF (II-1)Trong đó:

- FP là độ lớn của phan mềm tính theo đơn vị điểm chức năng(Function Point).

- UFP (Unadjusted Function Point) là số điểm chức năng chưa hiệuchỉnh.

- WAF (Value Adjustment Factor) là hệ số hiệu chỉnh gồm 14 yếu tổliên quan những đặc tính của phần mềm

H.2.2.1 Xác định điểm chức năng chưa hiệu chỉnh UFP

Điểm chức năng chưa hiệu chỉnh UFP có 5 thành phân chính được chiathành 2 nhóm là nhóm chức năng liên quan đến dữ liệu (data functions) và nhóm

chức năng liên quan đến giao tác (transactional functions)

Trang 26

Hình II-2: Các thành phân của điểm chức năng chưa hiệu chỉnh (UFP)

a Nhóm chức năng liên quan đến dit liệu (data functions) gồm có:

e Internal logical files (ILF): là dữ liệu có thé nhận biết bởi người sửdụng và được quản lý bên trong ứng dụng.

e External logical files (ELF): là dữ liệu có thé nhận biết bởi ngườisử dụng và được ứng dụng truy xuất đến nhưng được quản lý bởiứng dụng khác.

Mỗi ILF và ELF gồm 2 thành phan để đánh giá độ phức là:

- DET (Data Element Type): là những trường (field) dữ liệu mangười dùng có thé nhận biết

- RET (Record Element Type): là những nhóm thành phân dữ liệucon trong một ILF hoặc ELF.

Trang 27

Độ phức tap của ILF va ELF phụ thuộc vào số lượng DET va RET và đượcđánh giá qua bảng sau:

Bang II-1: Bang đánh giả độ phức tạp cua ILF và ELF

1-19 DET 20 - 50 DET Lớn hơn 50 DET

IRET Thấp Thấp Trung bình2-5 RET Thap Trung binh CaoNhiéu hon 6 Trung binh Cao Cao

Vi du- Giả sử ILF có 1 RET va 70 DET, tra bảng trên ta thay độ phức tap

cua ILF là Trung bình (giá tri tai dong 2 cột 4).- Giasu ELF có 7 RET va 25 DET, tra bang trên ta được độ phức tap

cua ELF là Cao (giá tri tại dong 4, cột 3).

Sau khi xác định được độ phức tạp cua ILF va ELF, bước tiếp theo là tínhđiểm chức năng chưa hiệu chỉnh UFP (Unadjusted Function Points) dựa trên

bảng sau:

Bảng II-2: Bang tra điểm chức năng chưa hiệu chỉnh UFP của ILFĐộ phức tạp Số điểm chức năng chưa hiệu chỉnh (UFP)

Thấp 7Trung bình 10

Trang 28

Bảng II-3: Bảng tra điểm chức năng chưa hiệu chỉnh UFP của ELFĐộ phức tạp Số điểm chức năng chưa hiệu chỉnh (UFP)

Thấp 5Trung bình 7Cao 10

b Nhóm chức năng liên quan đến giao tác (transactional functions) gồm có:

e External Inputs (EI): là những giao tác từ hệ thống bên ngoài vào

ứng dụng có tương tác với ít nhất một ILF

e External Outputs (EO): là những giao tác kết xuất dữ liệu ra ngoàiứng dụng hoặc truy xuất thông tin ngoài ứng dụng Những giao tácnày phải gồm những tính toán, tạo dữ liệu dẫn xuất từ ít nhất một

ILF.

e External Inquiries (EQ): là những giao tác kết xuất thông tin rangoài hệ thống cho người dùng Những giao tác này truy vấn thôngtin từ ILF hoặc EIF.

Mỗi giao tac EI, EO, EQ đều có 2 phan là DET va FTR Độ phức tapcủa mỗi giao tac được đánh giá thông qua số lượng DET và FTR

- DET (Data Element Type): là những trường (field) dữ liệu màngười dùng có thể nhận biết (Giống như DET đã định nghĩa

của ILF va ELF.)

- FTIR (File Type Referenced): là ILF hoặc ELF ma giao tác naytruy xuất tới

Khi đã đếm được số DET và FTR, tra bảng sau để đánh giá độ phứctạp của môi giao tác.

Trang 29

Bang II-4: Bang độ phúc tạp cua EI

1—4DET | 5- 15 DET | Nhiều hơn 16 DET1FTR Thap Thap Trung binh2FTR Thap Trung binh CaoNhiéu hon 3 FTR | Trung binh Cao Cao

Bang II-5: Bang độ phức tạp cua EO, EQ

1-5 DET | 6-19 DET | Nhiéu hơn 20 DET1FTR Thap Thap Trung binh2-3FTR Thap Trung binh CaoNhiéu hon 4 FTR | Trung binh Cao Cao

Sau khi xác định độ phức tạp cua các EI, EO, EQ tra bang sau dé tính

số chức năng chưa hiệu chỉnh UFP.Bảng II-6: Bảng điểm chức năng chưa hiệu chỉnh cua EI va EQ

Độ phúc tạp của EI hoặc Số chức năng chưa hiệu chỉnh UFP

Thấp 3Trung bình 4Cao 6

Bang II-7: Bang điểm chức năng chưa hiệu chỉnh cua EO

Độ phúc tạp của EI hoặc Số chức năng chưa hiệu chỉnh UFP

Thấp 4Trung bình 5Cao 7

Trang 30

— Sự liên lạc giữa các dữ liệu (Data Communications)2 Xử lý dữ liệu phân tán (Distributed Data Processing)3 Hiệu năng hoạt động (Performance)

4 Sử dụng nhiều cau hình (Heavily Used Configuration)5 Mật độ giao tác (Transaction Rate)

6 Nhập dữ liệu trực tuyến (Online Data Entry)7 Dễ sử dụng (End-User Efficiency)

8 Cập nhật dữ liệu trực tuyến (Online Update)9 Xử lý phức tạp (Complex Processing)

10 Khả năng tái sử dụng (Reusability)11 Cài đặt dễ dàng (Installation Ease)12 Dễ vận hành (Operational Ease)13 Mức độ triển khai vận hành ở nhiều nơi khác nhau của tổ chức(Multiple Sites)

14 Kha năng dé dàng thay đối (Facilitate Change)

Trang 31

Mỗi yếu tố có mức độ ảnh hưởng đến ứng dụng khác nhau Tùy theo mứcđộ ảnh hưởng mà nó được gan giá trị từ 0 đến 5 tương ứng Giá trị thấp nhất là 0

nếu không ảnh hưởng và cao nhất là 5 néu ảnh hưởng mạnh Sau khi đánh giá vàgán giá trị cho 14 yếu tố trên, VAF được tính theo công thức:

VAF = 0.01 * (j2; VAF;) + 0.65 (11-2)Trong đó:

VAE:: là yếu tố thứ ¡ trong 14 yếu tổ trên

H.23 CHUYEN DOI GIỮA FUNCTION POINT VÀ SLOC

Mặc dù SLOC được su dụng làm tham số đầu vào cho nhiều mô hình ướclượng công số nhưng việc xác định SLOC ở giai đoạn đâu khi mà dự án chưaviết code không hé đơn giản Theo Albrecht va Gaffney [9] có sự liên hệ giữa sốlượng dòng mã lệnh và điểm chức năng Nghiên cứu của Albrecht và Gaffney

cũng đề xuất ước lượng kích thước phần mềm nên thực hiện qua 2 bước Bướcthứ nhất là ước lượng điểm chức nang, sau đó ước lượng số SLOC từ điểm chức

năng này QSM, một công ty hàng đầu về ước lượng phần mềm đã đưa ra bảngchuyển đổi giữa điểm chức năng FP và SLOC dựa trên phân tích thông kê 2192dự án đã hoàn thành trong cơ sở dữ liệu hơn 10000 dự án mà họ thu thập được từnăm 1978.

Bảng II-S: Chuyển đổi giữa FP và SLOC [10]

QSM SLOC/FP DataNgôn ngữ

Avg | Median| Low | HighABAP (SAP) 28 18 16 60ASP 51 54 15 69

Assembler 119 98 25 320Brio 14 14 13 16

C 97 99 39 333

Trang 32

QSM SLOC/FP DataNgôn ngữ

Avg | Median| Low | HighC++ 50 53 25 80C# 54 59 29 70COBOL 61 55 23 297Cognos Impromptu Scripts 47 42 30 100Cross System Products (CSP) 20 18 10 38Cool:Gen/IEF 32 24 10 82Datastage 7] 65 31 157

Excel 209 19] 131 315

Focus 43 45 45 45FoxPro 36 35 34 38HTML 34 40 14 48J2EE 46 49 15 67Java 53 53 14 134JavaScript 47 53 31 63JCL 62 48 25 221LINC H 29 30 22 38Lotus Notes 23 21 19 40

Powerbuilder 26 28 7 40

REXX 77 S0 50 S0Sabretalk 70 66 45 109SAS 38 37 22 55

Siebel 59 60 51 60

Trang 33

QSM SLOC/FP DataNgôn ngữ

Avg | Median| Low | HighSLOGAN 75 75 74 75SQL 21 21 13 37VB.NET 52 60 26 60Visual Basic 42 44 20 60Từ bang trên ta có thé xác định được SLOC ở giai đoạn đầu của dự án khi đãtính được số điểm chức năng FP

11.2.4 DIEMD ITƯỢNG (OBJECT POINT) [11][12]

Trong khi phương pháp điểm chức năng do kích thước phan mềm dựa trêncác chức năng của nó thì điểm đối tượng (Object Point) đo kích thước phần mềmở khía cach khác Điểm đối tượng dựa trên số lượng va độ phức tap của các đốitượng như giao diện mà phần mềm giao tiếp với người dùng hoặc giao tiếp vớicác hệ thống khác; các báo cáo kết xuất; và các khái niệm đối tượng trong ngônngữ lập trình thé hệ 3 (3GL) Mỗi đối tượng được đếm và gan cho trọng số từ 1

tới 10 thể hiện mức độ phức tạp của đối tượng Đây là độ đo được sử dụng làm

tham số đầu vào của độ lớn phần mềm trong mô hình COCOMO II EarlyDesign.

Bang II-9: Bang xác định độ phức tap của màn hình

Trang 34

Số lượng section Tong số srvrvà | Tông số srvr và | Tổng số srvr va

trong báo biêu clnt < 4 clnt < § clnt > 8(Report) (<2 srvr; (2 hoặc 3 srvr; (>3 srvr;

3GL component - - 10

Object Points = tổng tat cả trong số của Screen, Report và các đôi tượng 3GL

Số điểm chức năng mới của phan mém được tinh theo công thức sau:

Trang 35

NOP = (Object Points) + (100 — %Reuse)

— 100 (H-3)Trong đó:

- NOP: là số điểm chức năng mới của phan mềm

- Object Points: là tổng trọng số của Screen, Report, và các đối tượng 3GL

- Reuse: là ty lệ sử dụng lại cua Screen, Report, và đối tượng 3GL từ các

dự án cũ.

11.3) UOC LUONG CÔNG SO (EFFORT)

Công số (Effort) là nhân công can thiết dé phát triển dự án phan mềm Công

số này thường được đo băng person-hour hoặc person-month Từ kích thước

phần mềm được tính ở bước trên, một số phương pháp phố biến hiện nay có thé

đưa ra ước lượng về công số từ đó dự báo chi phí dé sản xuất phần mềm.11.3.1 PHƯƠNG PH P CHUYEN GIA [4][13]

Phuong pháp nay dựa vào sự phân tích, đánh gia, nhận định cua nhữngchuyên gia có nhiều kinh nghiệm trong sản xuất phần mềm và lĩnh vực nghiệp

vụ cụ thé dé đưa ra ước lượng Kỹ thuật tham vấn chuyên gia có thé thực hiện

như phương pháp Delphi hoặc wideband Delphi Dựa vào nhận định khác nhaucủa các chuyên gia này đê tiên hành điêu chỉnh đưa ra kêt quả cuôi cùng.

Các bước tiên hành:

1 Các chuyên gia được cung cấp đặc tả của phần mềm, các thông tin liên

quan và mẫu ước lượng.2 Thiết lập cuộc hop dé các chuyên gia thảo luận về những van dé liên quan

ước lượng.3 Mỗi chuyên gia sẽ độc lập đánh giá và điều vào mẫu Mẫu này không cần

ghi tên của họ.

Trang 36

4 Tong hop kết qua ước lượng từ các chuyên gia Nếu kết quả khác biệt, lập

lại bước 2 cho đến khi đạt được sự đồng thuận

s* Nhược điểm:- _ Kết quả của ước lượng rất khó kiêm chứng khi dự án chưa kết thúc

- _ Khó tài liệu hóa các yêu tô ảnh hưởng công sô và phụ thuộc vào cácchuyên gia này.

- _ Mỗi chuyên gia có xu hướng quá lạc quan hoặc bi quan khi đưa ra kết

quả ước lượng.IL32 PHUONG PH P TƯƠNG TỤ [4]

Đây là phương pháp rất hữu dụng trong ước lượng công số phần mềm

Phương pháp này dựa trên những dự án trong quá khứ làm cơ sở cho ước lượngdự án mới thay vì thực hiện ước lượng từ con sỐ không Việc so sánh sự tươngđồng giữa dự án mới và dự án cũ có thé thực hiện ở nhiều cấp độ khác nhau: từcác module nhỏ, các chức năng riêng lẻ cho đến các hệ thống con và toàn bộphần mềm Đây cũng là một dạng của phương pháp chuyên gia bởi vì những

chuyên gia cũng thường dựa vào kinh nghiệm và tìm những yếu tố, tình huốngtương tự để đưa ra nhận định Điều cốt yếu cho sự thành công của phương pháp

này là lựa chọn được đúng những dự án tương tự trong quá khứ.

Các bước tiễn hành:

Trang 37

1 Thu thập đặc tả/ chức năng của phần mềm.2 Lựa chọn những dự án tương tự đã hoàn thành trong quá khứ3 So sánh những chức nang, module tương đông và đưa ra ước lượng công

số dựa trên công số thực tế của dự án đã hoàn thành

s* Ưu điểm:- Ước lượng dựa trên dự án tương tự đã hoàn thành nên tương đối chính xác

- _ Tận dụng được kinh nghiệm và kiến thức của những người thực hiện ướclượng trên những dự án tương tự.

s* Nhược điểm:- _ Việc xác định tính tương đồng thường khó khăn nhất là khi dự án mới

đang còn sơ khai, các đặc ta phân mêm chưa rõ ràng.

- Ngay cả khi đặc tả của dự án mới được xác định thì việc tìm kiếm dự ántương tự cũng không dễ bởi có quá ít những tính năng giống nhau.0.3.3 MÔ HÌNH COCOMO II [11]

COCOMO là mô hình ước lượng công số và thời gian sản xuất dự án phầnmềm được giới thiệu năm 1981 bởi Tiến sĩ Barry Boehm trong cuốn Software

Engineering Economics Mô hình này được xây dựng dựa trên quy trình phầnmềm tuần tự theo dạng thác nước Tiếp sau đó, năm 1996 mô hình COCOMO IIđược công bố có những cải tiễn thích ứng hơn với các quy trình phần mémkhông phải tuân tự

COCOMO II đưa ra 3 mô hình ước lượng là: Mô hình cấu tạo ứng dụng

(Application Composition model), mô hình trước thiết kế (Early Design model),và mô hình sau kiến trúc (Post-architecture model)

Trang 38

11.3.3.1 MÔ HÌNH CÁUT O UNG DỤNG

Mô hình thành phan cấu tạo ứng dụng (Application Composition model)

áp dụng để ước lượng trong giai đoạn đầu hình thành dự án khi mà các thuộc

tính của sản phẩm còn rat chung chung, chưa rõ ràng Dữ kiện dau vào của môhình ở giai đoạn này là kích thước phần mềm tính bằng điểm đối tượng (ObjectPoint) và năng suat cua đội dự án.

Công thức tính công của mô hình như sau:

NOP (H-4)PROD

Trong đó:- PM (Person-Month): là số người làm việc với dự án trong | tháng

- NOP: là số điểm đối tượng của phần mềm

- PROD: là năng suất của đội dự án và được đánh giá tương ứng nhưbảng sau:

Bang I-12: Bảng đánh giá năng suất trong mô hình COCOMO II

Rat thấp | Thấp Trung bình Cao | Rất cao

PROD 4 7 13 25 50

11.3.3.2 MÔ HÌNH SAU KIÊN TRÚC

Mô hình sau kiến trúc (Post-architecture model) áp dụng sau giai đoạnthiết kế Lúc này thông tin về phần mém đã rõ ràng hơn Kết quả ước lượng giai

đoạn này dùng dé điều chỉnh kế hoạch và nhân lực tham gia dự án Mô hình này

khá chi tiết, dir kiện đầu vào gôm 5 tham số liên quan tính quy mô về kinh tế làScale Factors và 17 tham số liên quan đặc tính của phần mềm tác động đến côngsố gọi là Effort Multipliers Công thức tính như sau:

Trang 39

PM = A * SizeETM x || EM; (I-5)

1=1

Trong đó:- PM: là công số ước lượng của mô hình tinh theo don vị người-tháng (số

động đên công sô.= Các yêu tô Scale FactorsMỗi Scale Factors được đánh giá từ rất thấp tới rất cao và được gắn cho trọng

số tương ứng Y nghĩa và các mức đánh giá của các Scale Factors này được mô

tả trong bảng sau:

Trang 40

Bang II-13: Ý nghĩa các tham số Scale Factors

Precedentedness(PREC)

Biến số này sử dụng để xác định mức độ tương tự củadự án đang ước lượng với các dự án đã hoàn thànhtrong quá khứ PREC được đánh giá càng cao khi mứcđộ tương tự càng cao.

DevelopmentFlexibility (FLEX)

Tham số nay dùng dé đánh giá mức độ linh hoạt trong

quá trình phát triển phan mềm FLEX được đánh giácàng cao nếu quá trình phát triển phần mềm càng linhhoạt.

Architecture / RiskResolution (RESL)

Biến nay dùng dé đánh giá mức độ rủi ro và khả năng

giải quyết rủi ro của dự án và giải pháp về kiến trúcphần mềm RESL được đánh giá càng cao nếu khảnăng giải quyết rủi ro và giải pháp cho kiến trúc càng

cao.

Team Cohesion(TEAM)

Biến số này đánh giá mức độ gắn kết, cộng tác của

những người liên quan trong quá trình phát triển dự ánnhư khách hang, nhóm phát triển dự an, nhà dau tư cho

dự an, TEAM được đánh giá càng cao nếu sự gẵn

kêt càng cao.

Process Maturity(PMAT)

Tham số này đánh giá mức độ thuân thục, trưởng thànhtrong quy trình phát triển phân mềm của công ty

PMAT được đánh giá càng cao nếu quy trình càng

thuần thục PMAT có thể được đánh giá theo 2 cách làdựa trên mức đạt được CMM/CMMI của tô chức hoặc

Ngày đăng: 24/09/2024, 04:08

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN