Bài 2B: tt3Initiating Process Planning Process 27 1/28/2010 Controlling Process Executing Process Closing Process... Bài 2B: tt5 Interactions between process groups in phases Initiating
Trang 1Quản lý Dự án phần mềm
GV: Nguyễn Chánh Thành
thanhchanhnguyen at yahoo dot com
Trang 3Nội dung
3 1/28/2010
Trang 4Bài 0:
Nhắc lại về RUP và Software Life Cycle
Trang 5Executive Oversight & PMO
CAAR and DAAR V&V (Verification & Validation) Process & Technology Management
Training RMO (Resource Management Office)
Trang 6Software Project Phases
Trang 7Project Phases A.K.A.
7 1/28/2010
Trang 8Bài 1:
Giới thiệu Tổng quan
Trang 9Bài 1: Giới thiệu Tổng quan
phần mềm
phần mềm
công của quá trình hiện thực dự án
…
9 1/28/2010
Trang 12Bài 1: (tt3)
Nhạy bén nhận ñịnh tình hình
Trang 13Bài 2A:
Các nhóm tác vụ trong QTDAPM thực tế
Trang 15Bài 2A: Nhóm 1
WBS
Môi trường phát triển dự án
Môi trường phát triển dự án
thức/tốt nhất, và dự phòng/xấu nhất)
Xây dựng kế hoạch dự án (Project Plan với MS.Prj)
15 1/28/2010
Trang 16Bài 2A: Nhóm 1 (tt1)
(Training Plan)
Kế hoạch quản lý tài nguyên của dự án (Software Configuration
Management Plan)
Trang 17Bài 2A: Nhóm 2
Theo dõi, kiểm soát công việc hiện thực trong thực
tế và hiệu chỉnh kế hoạch tương ứng
Kiểm tra chất lượng
ðảm bảo ñúng thời gian trong kế hoạch và hiện thực thực
tế
…) cho các sự thay ñổi …
17 1/28/2010
Trang 18Bài 2A: Nhóm 3
Báo cáo thống kê số liệu công việc
…
Trang 19Bài 2A: Nhóm 4
Quản lý và phát triển con người
dài hạn
đánh giá thành quả ựạt ựượcẦ
19 1/28/2010
Trang 20Bài 2A: Nhóm 5
Quy trình hiện thực chương trình
Trang 21Bài 2A: Nhóm 5 (tt1)
ðảm bảo chất lượng sản phẩm
…
21 1/28/2010
Trang 22Bài 2A: Bài tập
Bài tập
Trang 23Bài 2B:
Quy trình trong dự án
Trang 24Bài 2B: PM Framework
Trang 25Bài 2B: (tt1) - Project Life cycle
25 1/28/2010
Trang 26Bài 2B: (tt2)
Project Lifecycle and Product Lifecycle
Trang 27Bài 2B: (tt3)
Initiating Process
Planning Process
27 1/28/2010
Controlling Process
Executing Process
Closing Process
Trang 29Bài 2B: (tt5)
Interactions between process groups in phases
Initiating Process
Planning Process
Initiating Process
Planning Process
29 1/28/2010
Controlling Process
Executing Process
Closing Process
Controlling Process
Executing Process
Closing Process
Trang 30Bài 2B: (tt6)
Process Groups Interact in a Project
Trang 31Bài 2B: (tt7)
31 1/28/2010
Trang 32Bài 2B: (tt8)
Trang 33Bài 2B: (tt9) - Areas of Expertise
33 1/28/2010
Trang 34Bài 2B: (tt10)-Project Stakeholders
Trang 35Bài 2B: (tt11)
Các loại quy trình
TE-WF Test Workflow
35 1/28/2010
Trang 36Bài 2B: (tt12)
Các loại quy trình (tt)
Quy trình hoạt ñộng hỗ trợ
PD-WF Process Technology Management Workflow
Trang 37Bài 2B: (tt13)
Các quy trình chi tiết (tt)
mềm’
37 1/28/2010
Trang 38Bài 2B: Bài tập
Nếu không có quy trình, hãy liệt kê
Phân tích thiết kế (A&D)
Quản lý dự án
Trang 39Bài 3:
Tóm lược về Thống kê & ứng dụng
Trang 40Bài 3A: Kiểu dữ liệu
Trang 41Bài 3A: Tóm lược dữ liệu
41 1/28/2010
Trang 42Bài 3A: Tính Hướng tâm
Trang 43Bài 3A: Tính Hướng tâm (tt1)
43 1/28/2010
Trang 44Bài 3A: Tính Hướng tâm (tt2)
Trang 45Bài 3: Tính Phân tán (Biến ñổi)
45 1/28/2010
Trang 46Bài 3A: ðộ ño của Biến ñổi
Trang 47Bài 3A: Phạm vi
47 1/28/2010
Trang 48Bài 3A: Biến (Khác biệt) và ðộ lệch Chuẩn
Trang 49Bài 3: Tỉ suất hợp lệ (Percentile)
49 1/28/2010
Trang 50Bài 3A: Tỉ suất hợp lệ (Quartile)
Trang 51Bài 3A: Tỉ suất hợp lệ (Quartile) (tt1)
51 1/28/2010
Trang 52Bài 3A: ðồ thị di chuyển (Run Chart)
Trang 53Bài 3A: Histogram
53 1/28/2010
Trang 54Bài 3A: Dữ liệu Kích thước – Giờ công
Trang 55Bài 3: Hướng dẫn cho Plotting Histogram
55 1/28/2010
Trang 56Bài 3A: Xây dựng Histogram
Trang 57Bài 3A: Sơ ñồ phân bố (Scatter Diagram)
57 1/28/2010
Trang 58Bài 3A: Sơ ñồ phân bố (tt1)
Trang 59Bài 3A: Các dạng quan hệ
59 1/28/2010
Trang 60Bài 3B: SPC
Trang 61Bài 3B: Nhận biết sự khác nhau
61 1/28/2010
Trang 62Bài 3B: Nhận biết sự khác nhau (tt1)
Trang 63Bài 3B: Mức và khác nhau tối thiểu
63 1/28/2010
Trang 64Bài 3B: Mức và khác nhau tối thiểu (tt1)
Trang 65Bài 3B: Assignable cause
65 1/28/2010
Trang 66Bài 3B: Process shift
Trang 67Bài 3C: Control Charts
67 1/28/2010
Trang 68Bài 3C: Thành phần của Control Chart
Trang 69Bài 3C: Thành phần (tt1)
69 1/28/2010
Trang 70Bài 3C: Nhận biết sự khác nhau
Trang 71Bài 3C: Chọn loại Control Chart
71 1/28/2010
Trang 72Bài 3C: Control Chart – Dữ liệu liên tục
Trang 73Bài 3C: XmR chart
73 1/28/2010
Trang 74Bài 3C: XmR (tt1)
Trang 75Bài 3C: XmR (tt2)
75 1/28/2010
Trang 76Bài 3C: Giới hạn ñiều khiển cho XmR
Trang 77Bài 3D: Quy trình phần mềm
77 1/28/2010
Trang 78Bài 3D: Mô hình Quy trình
Trang 79Bài 3D: Mô hình Quy trình (tt1)
79 1/28/2010
Trang 80Bài 3D: PPM
Trang 81Bài 3D: PPM (tt1)
81 1/28/2010
Trang 82Bài 3D: PPM (tt2)
Trang 83Bài 3D: PPM (tt3)
83 1/28/2010
Trang 84Bài 3D: Lifecycle Tradeoffs
Trang 85Bài 3D: Mục tiêu với ñộ tin cậy
85 1/28/2010
Trang 86Bài 3D: Mục tiêu với ñộ tin cậy (tt1)
Trang 87Bài 3D: Các mô hình
87 1/28/2010
Trang 88Bài 3D: Các thành phần hướng mục tiêu
Trang 89Bài 4:
Lập Dự toán Dự án Phần mềm
Trang 90Bài 4A:
Tổng quan về Ước lượng kích thước
Trang 91Bài 4A: Ước lượng kích thước
Kiểm tra mức ñơn vị
Kiểm tra chương trình
Chức năng
Tương tác
Hệ thống
91 1/28/2010
Trang 92Bài 4A: (tt1)
Quản lý dự án
Huấn luyện/ñào tạo nhân viên
Quản lý tài nguyên
Trang 93Bài 4A: (tt2)
Phân bổ tỉ lệ thời gian
Engineering Activities Distributed Factors (Historical Data)
Requirem ent (R)
Analysis and Design (D)
Im plem entation (I)
Test (T) Percentage 1.19% 9.52% 71.43% 17.86%
% Effort Distribution Customized for the project being estimated
Requirem ent A&D Im plem entation Test Deploym ent Managem ent Environm ent SCM SQA Training
Defect Prev.
1.00% 8.00% 60.00% 15.00% 1.00% 13.00% 1.00% 1.00% 0.00% 0.00% 0.00%
93 1/28/2010
by 2%
add 12.5% for coding Unit Test
Reduce 2%
regression test effort result from better unit test
reduce 2.5%
of not doing deployment documents and setup environment
add 3% for communicati
on casued by language problem
remove SQA activities
remove training activities
remove defect prevention activities
% Effort Distribution
Requirem ent A&D Im plem entation Test Deploym ent Managem ent Environm ent SCM SQA Training
Defect Prev.
4.00% 10.00% 47.50% 17.00% 3.50% 10.00% 2.00% 2.00% 2.00% 1.00% 1.00%
Trang 94Bài 4A: (tt3)
Nhóm 2 – chia việc theo ñối tượng thực hiện
(textbox, button, …)
Trang 95Bài 4A: (tt4)
Chú ý:
C1, C2, …)
95 1/28/2010
Trang 96Bài 4A: (tt4a)
Trang 97Bài 4A: (tt5)
Dùng cho việc ñếm (tương ñối) số hàng lệnh cần thiết cho từng công việc ở mức thấp nhất
Quy ñổi (tương ñối) số hàng lệnh ra thời gian tương ứng
Dùng cho các dự án nâng cấp ứng dụng
Khó áp dụng cho các dự án viết mới
Có thể tăng ñộ chính xác dựa theo số liệu lịch sử thực tế của các dự án trước ñó
97 1/28/2010
Trang 98Bài 4A: (tt6)
Size (SLOC)
System Menu SCR-X01-2 45 2 8 14 4 28 function management SCR-D04-1 60 2 6 12 4 24 Register function 3 code SCR-D04-2 UC001 Register function
information 250 8 14.3 16 6 44.3 Modify function 3 code SCR-D04-3 UC002 Change function
information 225 8 15 18 8 49 Delete function information UC003 Delete function
Confirm user data deletion SCR-L01-3 Finish user data deletion SCR-L01-6 60 Delete all data SCR-L01-4
Confirm all data deletion SCR-L01-5
Data deletion
logic
UC009 Delete user data
9 UC010 Delete the data that
24 27 16 76
Trang 99Bài 4A: (tt7)
Xác ñịnh thời gian tương ứng của các công việc ở mức thấp nhất theo nhóm 1, 2 hay 3
Có thể dùng cho các dự án nâng cấp hay làm mới
Tương ñối chính xác, nhưng phụ thuộc vào con người và thiếu cơ sở lý luận chính xác
Có thể tăng ñộ chính xác dựa theo số liệu lịch sử thực tế của các dự án trước ñó
99 1/28/2010
Trang 1001 UC003-Register area information 8 13 16 6 43 8 16 16 6 46
No Work Breakdown Structures
Trang 101Bài 4A: (tt9)
hơn, nhưng khó áp dụng
các dự án trước ñó
101 1/28/2010
Trang 102Bài 4A: (tt10)
http://www.functionpoint.com
http://www.softwaremetrics.com/freemanual.htm
hơn, nhưng khó áp dụng
các dự án trước ñó
Trang 103103 1/28/2010
Registration Information 1 2 ILF #VALUE! ###
Area Information 1 3 ILF #VALUE! ###
Personal information 1 7 ILF #VALUE! ###
Area Information 1 1 ILF #VALUE! ###
Region Information 1 1 ILF #VALUE! ###
EIT Examinanee 1 8 EIF #VALUE! ###
Trang 104Bài 4A: (tt12)
No Application Use Case /
Feature Functionality Logical Transactions
Menu Items Main Screen GUI 1 23 HIGH 7 68 57 Business of
export score
report (reisue)
WE03-1: Score Report Create Manu Screen Menu Items Screen Approval Menu Screen GUI 1 7 LOW 3 29 24 report (reisue) Manu Screen Menu Items Screen Approval Menu Screen GUI 1 7 LOW 3 29 24
UC058:
Reissue score report data WE03-5: Reissue Reissue a Score report EI 1 2
Examinee's Profile,Score,R e-score VERY LOW 2 19 16
Export to csv file EO 1 14
Examinee's Profile,Score,R e-score LOW 4 39 33 UC058-1:
Inquiry create status of score WE03-6: Search Search area in selecting create Score report
Examinee's Profile,Score,R
Trang 105Support Effort
Overhead Effort Total
It depends on workflows/activities involved in the project, Support Effort and/or Overhead Effort is included in the final estimate
Comment
105 1/28/2010
Derived Schedule
Schedule in month derived from historical data use
COCOMO II formula
Derived Staff
Average Staff (person)
Peak Staff (person)
Summary
Size (FP)
Effort (person-month)
Schedule (month)
Average Staff (person)
Peak Staff (person)
13.30 3.89
4.41 3.42 162.64
Trang 106Bài 4A: (tt14)
Lập kế hoạch về ñội ngũ thực hiện (Ramp plan)
Trang 1070.0 0.0
Offshore TA Working Onshore 0.0
Offshore DBA Working Onshore 0.0
Offshore QC Working Onshore 0.0
0.0 0.0
Trang 108Bài 4A: Bài tập
…)
Trang 109Bài 4B:
Project Sizing with Full Function Points
Trang 110Introduction (1)
History
alternative to lines of code as a measure of software
sizing
Characteristics” to FPA
Trang 111Introduction (2)
application software functionalities
across organizations
Benefit
Trang 112Introduction (3)
Benefit (con’t)
distance measure or “Co” is a unit for temperature
measure
hence, can be used to measure productivities across
various tools and environments
organizations
Trang 113Determine the application boundary
Determine General System Characteristics
Calculate the Adjusted Function Point
Trang 114Can get the Supplier’s information from Customer Management application
Trang 115Category:
number Assume that we have to code these functions
115
Trang 116…Example
Trang 117Product:
number Assuming that we have to code these functions
product list as HTML
117
Trang 118Print product list
Trang 119119
Trang 120Query: can query by category or by supplier
Trang 121If query by category
121
Trang 122If query by supplier
Trang 123Determine the application boundary
applications according to the user’s point of view
This creates a context diagram for the application
Notes:
123
Trang 124…Determine the application boundary
Trang 125Data & Transaction FPs
Data FPs represent the functionality provided to the users to meet data requirements Data FP qualifies data at rest
Transaction FPs represent the functionality provided
Transaction FPs represent the functionality provided
to the users to process data by the application
Transaction FP qualifies data in motion
125
Trang 126Data & Transaction FPs…
Application boundary
EI EO
ILF
EIF EQ
Trang 127Count/Rate Data FPs
Data FPs represent the functionality provided to the users to meet data requirements
of logical data maintained within the application
boundary
An External Interface File (EIF) is a user identifiable
boundary
127
Trang 128…Count/Rate Data FPs
Trang 129…Count/Rate Data FPs
the user So don’t count index files, work files,…
pre-normalized data
tables/files after normalization
129
Trang 130…Count/Rate Data FPs
Each ILF/EIF is assigned by a number of FPs
The number is based on the complexity of ILF/EIF
non-recursive field in the ILF/EIF
sub-group of DETs in the ILF/EIF Sub-sub-group can be
recognized by:
Trang 131…Count/Rate Data FPs
Quantity Per Unit, Unit Price, Units In Stock, Discontinued
131
Trang 132…Count/Rate Data FPs
ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax, HomePage
2)Phone/Fax: Phone, Fax, HomePage 3)Other: SupplierID, CompanyName, ContactName,
ContactTitle
Trang 133…Count/Rate Data FPs
Determine Function Points for ILF/EIF
133
Trang 134Count/Rate Transaction FPs
Transaction FPs represent the functionality provided
to the users to process data by the application
Trang 135Count/Rate Transaction FPs - EI
External Input (EI) is a process in which data
crosses the boundary from outside to inside.
135
Trang 136Doesn’t need to maintain an
Doesn’t need to maintain an ILF
Trang 137…Count/Rate Transaction FPs - EI
Each EI is assigned by a number of FPs
The number is based on the complexity of EI
Input
deleting data or just reading/validating
number of times or modes in which it is accessed by the EI
137
Trang 138…Count/Rate Transaction FPs - EI
non-recursive field
from a file or created from DET’s contained in a FTR
Trang 139…Count/Rate Transaction FPs - EI
Count one for each group
Count one for each group
Count one for all command buttons and action keys
139
Trang 141…Count/Rate Transaction FPs - EI
Determine Function Points for EI
141
Trang 142Count/Rate Transaction FPs - EO
External Output (EO): a process in which derived
data passes across the boundary from inside to
outside
Derived data occurs when one or more data
elements are combined with a formula to generate or derive an additional data element.
This derived data does not appear on any ILF/EIF.
Trang 143Count/Rate Transaction FPs - EO
EO is generated using ILFs/EIFs
update to a file to set a flag to indicate that the payroll
check was produced
EO is typically available as a form of:
143
Trang 144…Count/Rate Transaction FPs - EO
The number is based on the complexity of EO
Output
number of times or modes in which it is accessed by the EO
Trang 145…Count/Rate Transaction FPs - EO
non-recursive field
Don’t count report heading unless they are dynamic
Don’t count system generated date on top of report
Count one for all command buttons and action keys
145
Trang 146…Count/Rate Transaction FPs - EO
Number of Products
Units in Stock, Alphabet group
Trang 147…Count/Rate Transaction FPs - EO
Determine Function Points for EO
147
Trang 148Count/Rate Transaction FPs - EQ
External Inquiry (EQ): a process with both input and output that results in data retrieval from one or more ILF/EIFs.
The input process doesn’t update or maintain any
ILF/EIFs.
The output process doesn’t contain derived data.
Trang 149…Count/Rate Transaction FPs - EQ
The number is based on the complexity of EQ
Inquiry
number of times or modes in which it is accessed by the EQ
149
Trang 150Values read from ILF/EIFs
Color or font changes on the screen
Error/confirmation messages
Trang 151151
Trang 152…Count/Rate Transaction FPs - EQ
2 FTRs: ILF Category and EIF Supplier
4 DETs: Category Name, Supplier Name, one for radio button group and one for View button and Cancel button
Trang 153…Count/Rate Transaction FPs - EQ
By Category screen:
2 FTRs: ILF Category and ILF Product
7 DETs: Product ID, Product Name, Category Name, Quantity per Unit, Unit Price, Units in Stock, Discontinued
By Product screen:
By Product screen:
2 FTRs: EIL Supplier and ILF Product
7 DETs: Product ID, Product Name, Supplier Name, Quantity per Unit, Unit Price, Units in Stock, Discontinued
153
Trang 154…Count/Rate Transaction FPs - EQ
Price, Units in Stock, Discontinued, Category Name, Supplier Name, one for radio buttons and one for command buttons
Trang 155…Count/Rate Transaction FPs - EQ
Determine Function Points for EQ
155
Trang 156Transaction Review
Trang 157General System Characteristics
FP counted from ILFs, EIFs, EIs, EOs and EQs is called Unadjusted FP (UFP)
UFP doesn’t reflect the complexity of system
architecture
14 General System Characteristics (GSC) related to
14 General System Characteristics (GSC) related to system architecture
157
Trang 158…General System Characteristics
Each factor is scaled on 0-5 point called Degree of Influence (DI)
Trang 159…General System Characteristics
Trang 160Maximum value of total DI is 14 * 5 = 70
Minimum value of total DI is 14 * 0 = 0
Value Adjusted Factor
VAF = (Total DI * 0.01)+0.65
Final FP = UFP * VAF
Trang 161Bài 4C:
Ứng dụng thống kê
Trang 164Factor for predicting implementation efforts
(X) Factors Min Likeliest Max Data distribution
Trang 165165 1/28/2010