Tài liệu Luận văn Chương trình xây dựng công cụ hỗ trợ quản lý quá trình phát triển dự án phần mềm, gắn kết với hệ thống phần mềm microsoft office project: KH
OA
C
NT
T –
Đ
H
KH
TN
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN HỆ THỐNG THÔNG TIN
PHẠM NGUYÊN THẢO – 0012665
XÂY DỰNG CÔNG CỤ HỖ TRỢ QUẢN LÝ QUÁ
TRÌNH PHÁT TRIỂN DỰ ÁN PHẦN MỀM, GẮN
KẾT VỚI HỆ THỐNG PHẦN MỀM
MICROSOFT OFFICE PROJECT
LUẬN VĂN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN
PGS.TS. ĐỒNG THỊ BÍCH THỦY
NGUYỄN TRỌNG TÀI
NIÊN KHÓA 2000 - 2004
KH
OA
C
NT
T –
Đ
H
KH
TN
1
Mục lục:
Danh sách các từ viết tắt : ........................................................................................................ 3
Chương 1 : Mở đầu ................................................................................................................... 4
1.1. Mục đích và lý do chọn đề tài .................................................................................. 4
1.2. Đối tượng và phạm vi của đề tài :............................................................................ 5
Chương 2 : Khảo sát và ...
112 trang |
Chia sẻ: haohao | Lượt xem: 1055 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Chương trình xây dựng công cụ hỗ trợ quản lý quá trình phát triển dự án phần mềm, gắn kết với hệ thống phần mềm microsoft office project, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
KH
OA
C
NT
T –
Đ
H
KH
TN
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CƠNG NGHỆ THƠNG TIN
BỘ MƠN HỆ THỐNG THƠNG TIN
PHẠM NGUYÊN THẢO – 0012665
XÂY DỰNG CƠNG CỤ HỖ TRỢ QUẢN LÝ QUÁ
TRÌNH PHÁT TRIỂN DỰ ÁN PHẦN MỀM, GẮN
KẾT VỚI HỆ THỐNG PHẦN MỀM
MICROSOFT OFFICE PROJECT
LUẬN VĂN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN
PGS.TS. ĐỒNG THỊ BÍCH THỦY
NGUYỄN TRỌNG TÀI
NIÊN KHĨA 2000 - 2004
KH
OA
C
NT
T –
Đ
H
KH
TN
1
Mục lục:
Danh sách các từ viết tắt : ........................................................................................................ 3
Chương 1 : Mở đầu ................................................................................................................... 4
1.1. Mục đích và lý do chọn đề tài .................................................................................. 4
1.2. Đối tượng và phạm vi của đề tài :............................................................................ 5
Chương 2 : Khảo sát và phân tích hiện trạng ........................................................................ 6
2.1. Mơ tả hiện trạng : ..................................................................................................... 6
2.2. Phân tích hiện trạng : ............................................................................................... 9
2.2.1. Lược đồ business usecase cho nghiệp vụ hiện tại : ............................................ 9
2.2.2 Mơ hình chi tiết hiện trạng – sơ đồ activity:..................................................... 12
2.2.3 Những khĩ khăn trong qui trình nghiệp vụ hiện tại và một số yêu cầu đối với hệ
thống mới: ......................................................................................................................... 18
Chương 3 : Phương án xây dựng hệ thống mới ................................................................... 22
3.1 Lược đồ kiến trúc tổng quan ................................................................................. 22
3.2 Mơ tả kiến trúc hệ thống mới ................................................................................ 22
3.2.1. Lập kế hoạch với MS Office Project ................................................................. 23
3.2.2 Quản lý kế hoạch với cơng cụ mới PMA : ........................................................ 23
3.3 Sơ đồ nghiệp vụ tổng quan với hệ thống mới ...................................................... 26
3.4 Khảo sát hệ thống phần mềm Microsoft Project Server ..................................... 28
3.4.1. Sơ lược về hoạt động của MS Project Server ................................................... 28
3.4.2. Các lý do của việc chọn Project Server cho hệ thống mới ............................... 28
3.4.3. Lược đồ CSDL của Project Server ................................................................... 29
Chương 4 : Phân tích hệ thống .............................................................................................. 34
4.1. Chi tiết yêu cầu chức năng ..................................................................................... 34
4.1.1 Lưu trữ và quản lý thơng tin ............................................................................. 34
4.1.2. Đồng bộ thơng tin với Project Server ............................................................... 35
4.1.3. Khai thác dữ liệu - thực hiện thống kê............................................................. 36
4.1.4. Một số chức năng khác:.................................................................................... 36
4.2. Mơ hình hố hệ thống ............................................................................................. 37
4.2.1. Lược đồ use case : ............................................................................................ 37
4.2.2. Các lớp đối tượng chính bên trong hệ thống:................................................... 44
4.2.3. Sơ đồ tuần tự cho một số luồng sự kiện phức tạp :........................................... 55
Chương 5 : Thiết kế phần mềm ............................................................................................. 60
5.1. Thiết kế dữ liệu ....................................................................................................... 60
5.1.1 Lược đồ cơ sở dữ liệu quan hệ.......................................................................... 60
5.1.2 Các chỉ mục được cài đặt ................................................................................. 62
5.1.3 Một số ràng buộc tồn vẹn : ............................................................................. 63
5.2. Thiết kế phần mềm PMA ....................................................................................... 64
5.2.1. Hệ thống các lớp đối tượng .............................................................................. 64
5.2.2. Một số hàm xử lý quan trọng của các đối tượng: ............................................. 68
5.3. Thiết kế giao diện :.................................................................................................. 73
5.3.1. Sơ đồ các màn hình giao diện: ......................................................................... 73
5.3.2. Thiết kế một số màn hình tiêu biểu: .................................................................. 74
KH
OA
C
NT
T –
Đ
H
KH
TN
2
Chương 6 : Cài đặt và thử nghiệm ........................................................................................ 83
6.1. Một số cơng thức tính tốn được sử dụng : .......................................................... 83
6.2. Một số XML request và reply cung cấp bởi PDS : .............................................. 84
6.2.1. ProjectsStatus ................................................................................................... 84
6.2.2. ProjectData....................................................................................................... 86
6.3. Mơi trường thực hiện và các phần mềm liên quan:............................................. 88
6.3.1. Mơi trường thực hiện :...................................................................................... 88
6.3.2. Các thư viện khác : ........................................................................................... 88
6.3.3. Các phần mềm liên quan : ................................................................................ 89
6.4. Các trường hợp thử nghiệm: ................................................................................. 89
Chương 7 : Tổng kết ............................................................................................................... 91
7.1. Tổng kết quá trình thực hiện và các kết quả đạt được........................................ 91
7.2. Hướng phát triển : .................................................................................................. 92
Danh mục tài liệu tham khảo :................................................................................................ 94
Phụ lục : Danh sách thuộc tính của các quan hệ trong CSDL............................................ 95
KH
OA
C
NT
T –
Đ
H
KH
TN
3
Danh sách các từ viết tắt :
Bảng sau trình bày một số cụm từ thường được viết tắt trong luận văn
STT Từ viết tắt Diễn giải
1 CSDL Cơ sở dữ liệu
2 CVCT Cơng việc chi tiết
3 CVTT Cơng việc tổng thể
4 KHCT Kế hoạch chi tiết
5 KHTT Kế hoạch tổng thể
6 MS Microsoft
7 NSD Người sử dụng
8 PDS Project Data Service
9 PMA Project Management Assistant (tên cơng cụ được xây
dựng)
10 PS Project Server.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 1 : Mở đầu
4
Chương 1 : Mở đầu
1.1. Mục đích và lý do chọn đề tài
Trong thời gian thực hiện đề tài , em đã thực tập tại một Đơn vị phát triển phần
mềm, và đề tài đã được xây dựng theo yêu cầu về quản lý dự án của Đơn vị này
Trong quá trình thực hiện một dự án, khơng thể thiếu các kế hoạch từ tổng thể
đến chi tiết để đảm bảo cơng việc được triển khai đúng hướng và hồn thành đúng
thời hạn. Các kế hoạch này giúp Ban lãnh đạo và Trưởng dự án xác lập những dự
tính ban đầu về chi phí, thời lượng cho từng giai đoạn và chuẩn bị, sắp xếp nhân
sự. Đĩ cũng là cơ sở để trưởng dự án phân cơng và theo dõi tiến độ cơng việc, và
để Ban lãnh đạo đánh giá được tổng quan tình hình thực hiện dự án.
Ngồi ra , các thơng tin về sự phân cơng cơng việc, tiến độ cơng việc và chi phí
thực hiện thực tế cũng cần phải được quản lý tốt để cĩ thể nắm được chính xác
thơng tin về tồn bộ chi phí và thời gian phát triển của dự án hoặc của một giai
đoạn trong dự án.
HIện nay , Đơn vị đang sử dụng phần mềm Microsoft Office Project để lập kế
hoạch. Tuy nhiên Đơn vị muốn cĩ một cơng cụ hỗ trợ thêm cho qui trình quản lý
dự án của mình, nhằm giúp cho việc quản lý hiệu quả hơn và khắc phục được một
số khĩ khăn hiện tại
Vì vậy , Đơn vị đã đề nghị xây dựng một cơng cụ hỗ trợ thêm việc quản lý kế
hoạch và các thơng tin liên quan đến chi phí, tiến độ cơng việc trong quá trình phát
triển dự án phần mềm. Cơng cụ mới phải gắn kết với hệ thống phần mềm
Microsoft Office Project, cụ thể là cho phép người sử dụng vẫn dùng phần mềm
Microsoft Office Project để lập các kế hoạch và ghi nhận thơng tin tiến độ cơng
việc, vì phần mềm này đã hỗ trợ rất tốt quá trình này. Cơng cụ mới sẽ cĩ trách
nhiệm chính là đọc các kế hoạch đã lập và tổ chức quản lý các thơng tin sao cho cĩ
thể hỗ trợ Ban lãnh đạo cĩ được một cái nhìn tổng quan về các dự án đang triển
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 1 : Mở đầu
5
khai một cách nhanh chĩng và dễ dàng. Đồng thời, cơng cụ này cũng sẽ giúp quản
lý thêm một số thơng tin cần thiết khác cho việc quản lý dự án : các văn bản phát
sinh trong quá trình phát triển dự án, một số thơng tin phục vụ cho việc phân loại
chi phí dự án : loại cơng việc, vai trị nhân viên tham gia vào cơng việc, …
1.2. Đối tượng và phạm vi của đề tài :
Nội dung đề tài : Xây dựng cơng cụ hỗ trợ quản lý quá trình phát triển đề án
phần mềm, gắn kết với hệ thống phần mềm Microsoft Office Project .
Các thơng tin chính sẽ quản lý : kế hoạch triển khai thực hiện dự án từ tổng thể
đến chi tiết, thơng tin phân cơng cơng việc cụ thể, tiến độ thực hiện thực tế và chi
phí phát triển dự án.
Chức năng chính :
• Đọc các kế hoạch đã được lập bằng phần mềm Microsoft Office
Project và quản lý các kế hoạch này (cùng với thơng tin phân cơng và
quá trình triển khai thực hiện thực tế) một cách cĩ hệ thống theo từng
dự án.
• Lập các thống kê về chi phí thực hiện dự án ở nhiều cấp độ (tổng thể
hoặc chi tiết)
• Giúp kiểm sốt chênh lệch giữa kế hoạch tổng thể với kế hoạch chi
tiết, quản lý các phiên bản của kế hoạch tổng thể.
Đề tài được xây dựng dựa trên những khảo sát thực tế ở đơn vị thực tập, một
đơn vị phát triển phần mềm, và theo những yêu cầu của Đơn vị này
Phạm vi đề tài :
• Khảo sát , phân tích nghiệp vụ và yêu cầu , kết hợp tìm hiểu phần mềm
Microsoft Project để đưa ra phương án xây dựng hệ thống mới đáp
ứng được các yêu cầu đã đặt ra.
• Phân tích và thiết kế hệ thống mới theo phương án đã chọn.
• Cài đặt các phần chính của hệ thống.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
6
Chương 2 : Khảo sát và phân tích hiện trạng
Để cĩ thể nắm được các vấn đề cốt lõi dẫn đến yêu cầu xây dựng hệ thống mới, cũng là
những vấn đề mà hệ thống mới cần phải giải quyết, ta sẽ bắt đầu với việc khảo sát
nghiệp vụ hiện tại và phân tích rõ các khĩ khăn của nĩ. Từ đĩ chi tiết hơn các yêu cầu
đặt ra cho hệ thống mới
2.1. Mơ tả hiện trạng :
Khi cĩ yêu cầu phát triển một dự án phần mềm, trưởng dự án sẽ lập một kế
hoạch tổng thể. Kế hoạch này thể hiện các cơng việc chính tương ứng với các giai
đoạn trong một qui trình phát triển dự án (trong luận văn từ phần này trở đi sẽ gọi
các cơng việc chính này là cơng việc tổng thể ). Thơng thường các giai đoạn này
là :
• Khảo sát sơ bộ và phân tích yêu cầu; lập hồ sơ nghiên cứu khả thi
• Khảo sát chi tiết và phân tích yêu cầu; lập hồ sơ hiện trạng và yêu cầu
đặt ra cho đề án phần mềm.
• Thiết kế và lập hồ sơ thiết kế.
• Lập trình.
• Kiểm nghiệm α ( do nhĩm kiểm tra của Đơn vị thực hiện).
• Kiểm nghiệm β ( do người sử dụng tiến hành).
Kế hoạch tổng thể chứa danh sách cơng việc cùng với các dự trù về thời
gian thực hiện ( thời lượng cơng việc), chi phí ( đơn vị người/ngày hoặc
người/tháng) ngày bắt đầu, kết thúc, và thường chỉ chi tiết một hoặc hai cấp. Kế
hoạch này sau khi lập được trình lên để Ban lãnh đạo phê duyệt và sau đĩ được
dùng làm cơ sở để các thành viên trong nhĩm phát triển lên kế hoạch chi tiết và
để ban lãnh đạo kiểm tra, đánh giá quá trình triển khai thực hiện dự án .
Kế hoạch tổng thể hiện nay thường được lập trên một file MS Word
hoặc Excel.
Một kế hoạch tổng thể cĩ dạng như sau :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
7
Hình 2.1. Một ví dụ về kế hoạch tổng thể
Kế hoạch chi tiết được lập để triển khai cụ thể từng cơng việc của kế
hoạch tổng thể .Kế hoạch chi tiết được lập bằng phần mềm Microsoft Office
Project . Kế hoạch chi tiết chứa danh sách các cơng việc chi tiết cùng với thơng
tin về thời lượng, chi phí, ngày bắt đầu và kết thúc dự kiến, và cĩ thể chi tiết
thành nhiều cấp. Kế hoạch chi tiết cũng cĩ thể cĩ thơng tin về nhân viên được
phân cơng vào từng cơng việc chi tiết.
Vì dự án thường lớn và các giai đoạn cĩ thể được tiến hành song song
bởi các nhĩm khác nhau ( ví dụ nhĩm kiểm tra cĩ thể bắt đầu cơng việc của
mình song song với nhĩm lập trình chứ khơng đợi nhĩm này kết thúc ) nên kế
hoạch chi tiết thường được chia thành nhiều phần, mỗi phần nằm trên một file
Project (*.mpp) khác nhau.
Kế hoạch chi tiết khơng được lập từ đầu dự án theo kế hoạch tổng thể
mà sẽ được bổ sung lần lượt theo từng giai đoạn. Khi lập kế hoạch chi tiết,
trưởng dự án phải dựa trên những dự trù ban đầu về thời lượng, chi phí cơng
Tên cơng việc Thời lượng Chi phí Bắt đầu Kết thúc
Cơng
việc tổng
thể mức 1
(cấp 1)
Cơng
việc tổng
thể mức 2
(cấp 2)
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
8
việc của kế hoạch tổng thể. Tuy nhiên, với những phát sinh về cơng việc trong
quá trình thực hiện thực tế, kế hoạch chi tiết luơn cĩ sự khác biệt so với kế
hoạch tổng thể. Khi nhận thấy sai lệch này là quá lớn, trưởng dự án phải điều
chỉnh lại kế hoạch tổng thể.
Ở mỗi giai đoạn của dự án, sau khi đã lập kế hoạch chi tiết, trưởng dự án
sẽ phân cơng các cơng việc trong kế hoạch cho những người cụ thể của đơn vị.
Thơng tin phân cơng (tên nhân viên được phân cơng, tỷ lệ thời gian tham gia, số
giờ làm,…) cũng được ghi nhận bằng MS Office Project vào file kế hoạch
(.mpp) cĩ cơng việc tương ứng .
Kế hoạch chi tiết cĩ dạng:
Hình 2.2. Một ví dụ về kế hoạch chi tiết
Trong quá trình thực hiện cơng việc được giao, nhân viên sẽ báo cáo tiến
độ cơng việc định kỳ ( thường là vào mỗi cuối tuần). Trưởng dự án kiểm tra báo
cáo và dùng MS Office Project ghi nhận tiến độ cơng việc vào file kế hoạch
Tên nhân viên
được phân cơng
Cơng
việc chi
tiết mức
1 (cấp 1)
Cơng
việc chi
tiết mức
2 (cấp 2)
Tỷ lệ tham gia
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
9
(.mpp) tương ứng. Khi đĩ, trên bản kế hoạch chi tiết sẽ cĩ thêm thơng tin về tiến
độ cơng việc : thời lượng và chi phí thực tế, tỷ lệ hồn tất tính đến thời điểm
hiện tại.
Khi kết thúc dự án hay kết thúc một giai đoạn (hoặc cĩ thể là bất cứ khi
nào cĩ yêu cầu) , dựa trên các thơng tin đã ghi nhận trên các bản kế hoạch,
trưởng dự án phải thống kê chi phí thực hiện cho một cơng việc tổng thể, một
giai đoạn hoặc tồn bộ dự án tính đến thời điểm hiện tại. Ban lãnh đạo luơn cĩ
yêu cầu nắm được các thơng tin tổng quan về dự án : tiến độ thực hiện dự án
nhìn từ các kế hoạch tổng thể, chi phí tổng thể của dự án.
Cùng với việc lập kế hoạch và triển khai thực hiện kế hoạch, một số
thơng tin khác cũng cần được quản lý trong quá trình triển khai các dự án :
thơng tin về các nhân viên của Đơn vị và năng lực, trình độ của họ; các văn bản
phát sinh trong quá trình làm việc với Khách hàng : hợp đồng , phụ lục hợp
đồng, biên bản thanh lý hợp đồng, biên bản làm việc…Hiện nay, các thơng tin
này vẫn phải quản lý thủ cơng
2.2. Phân tích hiện trạng :
2.2.1. Lược đồ business usecase cho nghiệp vụ hiện tại :
a. Mức tổng quan : tồn bộ nghiệp vụ cần xem xét cĩ thể được phân
thành 3 phần như sau :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
10
Lap ke hoach va theo doi
viec thuc hien ke hoach
Thong ke chi phi
phat trien du an
Quan ly cac thong tin
lien quan
Ban lanh dao
Lap ke hoach tong the
Hieu chinh ke hoach tong the
Lap ke hoach chi tietTruong du an
Nhan vien
Phan cong cong viec
Theo doi tien do cong viec
MS Office
Project
Hình 2.3. Tổng quan nghiệp vụ hiện tại
b. Lược đồ business usecase cho phần 1 : lập kế hoạch và theo đõi
việc thực hiện kế hoạch:
Hình 2.4. business usecase diagram “Lập kế hoạch và theo dõi thực hiện kế hoạch”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
11
MS Office
Project
Ban lanh dao
Thống kê trên kế hoạch chi tiếtTruong du an
Thống kê trên tổng thể dự án
Thống kê về thời
lượng, chi phí
thực hiện , chênh
lệch giữa thực tế
với kế hoạch...
Quan ly nhan vien
Quan ly van ban
Nhan vien van
phong
c. Business usecase cho phần 2 : thống kê chi phí phát triển dự án
Hình 2.5. business usecase diagram “ Thống kê chi phí phát triển
dự án”.
d. Lược đồ business usecase cho phần 3 : Quản lý các thơng tin
liên quan
Hình 2.6. business usecase diagram “ Quản lý các thơng tin liên
quan
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
12
Lập kế hoạch
tổng thể
Kế hoạch tổng
thể được ghi nhận
trong file MS
Word hoặc Excel
Trình ban lãnh đạo
phê duyệt
Kế hoạch hợp lý?
Không
Có
Phê duyệt kế
hoạch
Ban lanh daoTruong du an
2.2.2 Mơ hình chi tiết hiện trạng – sơ đồ activity:
a. Activity diagram cho use case “Lập kế hoạch tổng thể”
Hình 2.7 Activity diagram “Lập kế hoạch tổng thể”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
13
Bắt đầu một giai đoạn
Lên kế hoạch chi tiết cho các công
việc tổng thể thuộc giai đoạn này
Triển khai thực
hiện và theo dõi
Cần điều chỉnh,
bổ sung?
Điều chỉnh, bổ sung kế
hoạch chi tiếùt
có
Sử dụng các hỗ trợ,
tiện ích của MS Project
để thực hiện. Kế hoạch
chi tiết được lưu vào
file project (.mpp)
Kiểm tra chênh lệch với
kế hoạch tổng thể
Không
Truong du an
b. Activity diagram cho use case “Lập kế hoạch chi tiết” :
Hình 2.8. Activity diagram “Lập kế hoạch chi tiết”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
14
Kiểm tra chênh lệch với công
việc tổng thể trong KHTT
Chênh lệch
nhiều?
Điều chỉnh kế
hoạch tổng thể
có
Trình ban lãnh
đạo
Tính tổng chi phí và thời lượng
của các công việc chi tiết
Trưởng dự án sửa
lại bản kế hoạch
tổng thể ban đầu
(trên file Word hoặc
Excel) hoặc lập lại
kế hoạch khác khi
khác biệt quá nhiều
Kiểm tra, phê
duyệt kế hoạch
Ban lanh daoMS ProjectTruong du an
c. Activity diagram cho use case “Điều chỉnh kế hoạch tổng thể”:
Hình 2.9. Activity diagram “Điều chỉnh kế hoạch tổng thể”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
15
Mở kế hoạch chi tiết cần phân
công
Tham khảo thông tin
trình độ nhân viên
Xác định loại công việc và
yêu cầu về trình độ
Phân công
Thông báo cho nhân viên
về công việc được giao
Hiển thị kế
hoạch chi tiết
Ghi nhận phân
công
Cung cấp thông tin
trình độ nhân viên
Nhận và thực
hiện công việc
Nhan v ienHo so nhan v ienMS ProjectTruong du an
d. Activity diagram cho use case “Phân cơng”:
Hình 2.10. Activity diagram “Phân cơng”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
16
Gửi báo cáo
công việc
nhập các thông tin về tiến
độ đã kiểm tra vào kế
hoạch chi tiết (file .mpp)
Bao cao bang file
Word hoac Excel
Nhận báo cáo
công việc
Kiểm tra công
việc
Nhập thông tin
tiến độ
Ghi nhận tiến
độ
MS ProjectTruong Du anNhan v ien
e. Activity diagram cho use case “Theo dõi tiến độ thực hiện”:
Hình 2.11. Activity diagram “Theo dõi tiến độ thực hiện”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
17
Yêu cầu thống kê trên một
kếâ hoạch chi tiết
MS Project chỉ
thực hiện thống
kê trên một file
project (.mpp)
Hiệu chỉnh
thống kê
Kết xuất thống
kê
In thống kê
MS Proj ectTruong du an
f. Activity diagram cho use case “Thống kê trên kế hoạch chi tiết”:
Hình 2.12. Activity diagram “ Thống kê trên kế hoạch chi tiết”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
18
Yêu cầu xem thống kê trên
từng bản kế hoạch chi tiết
Tổng hợp số liệu
Lập thống kê tổng thể
Thống kê trên toàn bộ
dự án hoặc cho một vài
giai đoạn nhất định
Kết xuất thống kê trên từng
bản kế hoạch chi tiết
Xem và đánh
giá công việc
Ban lanh daoMS ProjectTruong du an
g. Activity diagram cho use case “Thống kê trên tổng thể dự án”:
Hình 2.13. Activity diagram “Thống kê trên tổng thể dự án”
2.2.3 Những khĩ khăn trong qui trình nghiệp vụ hiện tại và một số yêu
cầu đối với hệ thống mới:
Nhìn chung, cách làm việc như hiện tại cĩ thể giúp cho Trưởng dự án quản lý
được các cơng việc cần thực hiện ở mức chi tiết. Phần mềm MS Office Project
hỗ trợ tốt quá trình lập kế hoạch và ghi nhận tiến độ. Tuy nhiên, khi cần một cái
nhìn tổng quan trên tồn bộ dự án thì cách tổ chức quản lý kế hoạch hiện nay đã
gặp một số khĩ khăn, cụ thể như sau:
a. Khơng cĩ mối liên hệ chặt chẽ giữa kế hoạch tổng thể và kế hoạch chi
tiết, cũng như giữa các kế hoạch chi tiết với nhau
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
19
Hiện tại, tồn bộ kế hoạch của một dự án khơng nằm trên cùng một file
project mà được tách thành nhiều phần : một kế hoạch tổng thể và nhiều
kế hoạch chi tiết, và các phần cĩ thể được lập bởi những người khác
nhau. Kế hoạch tổng thể được lưu trên một tập tin MS Word hoặc Excel,
và khơng cĩ mối liên hệ vật lý nào với các bản kế hoạch chi tiết. Trong
khi về mặt ý nghĩa, kế hoạch chi tiết là để triển khai chi tiết cho từng
cơng việc trong kế hoạch tổng thể. Chính điều này đã dẫn đến khĩ khăn
khi cần một thống kê tổng thể trên tồn bộ dự án, và cũng khĩ kiểm sốt
được chênh lệch giữa kế hoạch tổng thể và các kế hoạch chi tiết triển
khai cho nĩ.
Yêu cầu : Cơng cụ mới hỗ trợ lập các thống kê tổng thể (về chi phí dự
án, về tiến độ cơng việc,…), cung cấp một cái nhìn tổng quan rõ ràng về
dự án , nhưng đồng thời vẫn cho phép tách kế hoạch của dự án thành
nhiều phần như hiện tại, khơng gây khĩ khăn cho những người lập kế
hoạch, và vẫn cho phép lập kế hoạch bằng MS Office Project. Điều này
cĩ nghĩa là cơng cụ mới phải đọc thơng tin từ các bản kế hoạch được lập
và tổ chức quản lý lại một cách cĩ hệ thống.
b. Khơng quản lý tốt các phiên bản của kế hoạch tổng thể
Khi cĩ sự chênh lệch tương đối lớn giữa kế hoạch tổng thể và kế hoạch
chi tiết, Trưởng dự án phải điều chỉnh lại kế hoạch tổng thể. Trưởng dự
án cĩ thể sửa ngay trên tập tin cũ, hoặc xố tồn bộ và lập một kế hoạch
mới nếu thấy khơng kiểm sốt được kế hoạch cũ do chênh lệch quá lớn.
Các thơng tin về phiên bản kế hoạch tổng thể cũ, do đĩ, khơng cịn được
lưu giữ, hay nếu cĩ cũng khơng quản lý được. Thực tế, các thơng tin này
rất cần để Ban lãnh đạo cĩ thể đánh giá quá trình làm việc của nhĩm phát
triển dự án, đồng thời để rút kinh nghiệm cho các lần lập kế hoạch của
các dự án sau.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
20
Yêu cầu : Cơng cụ mới phải hỗ trợ lưu trữ các kế hoạch tổng thể theo
từng phiên bản
c. Khơng lưu vết được các thao tác cập nhật trên kế hoạch:
Phần mềm MS Office Project khơng hỗ trợ lưu vết thao tác, điều này dẫn
đến các sai lệch khi thống kê . Trường hợp rõ ràng nhất là khi một cơng
việc bị xố khỏi kế hoạch khi đã được thực hiện một phần. Chi phí cho
phần việc này thực tế vẫn phải được tính vào tổng chi phí phát triển dự án
trong khi MS Project sẽ xố hồn tồn thơng tin về cơng việc này trên tập
tin kế hoạch tương ứng.
Yêu cầu : Cơng cụ được xây dựng phải hỗ trợ lưu vết mỗi khi cập nhật
tiến độ cơng việc và phân cơng (cho nhu cầu khai thác về sau) , và lưu lại
thơng tin về cơng việc bị xĩa nếu cơng việc đã được thực hiện một phần
(đã cĩ chi phí thực tế)
d. Một số thơng tin cần cho việc quản lý chưa được hỗ trợ :
Phần mềm MS Project tuy cung cấp các hỗ trợ rất tốt cho việc lập kế
hoạch và ghi nhận thơng tin tiến độ cơng việc nhưng lại thiếu hỗ trợ một
số thơng tin: khơng phân loại cơng việc ; khơng cĩ thơng tin đầy đủ về
nhân viên , đặc biệt là trình độ của nhân viên, khơng ghi nhận được
thơng tin về vai trị của nhân viên khi phân cơng nhân viên này vào cơng
việc. Các thơng tin này đều cần cho việc phân loại chi phí dự án khi thực
thống kê .
Yêu cầu : Quản lý bổ sung các thơng tin này. Cụ thể:
Xác định loại cơng việc cho các cơng việc trong kế hoạch . Ví dụ :
cơng việc T thuộc loại cơng việc thiết kế. Các loại cơng việc cĩ thể phân
thành nhiều cấp. Ví dụ với loại cơng việc thiết kế, cĩ các loại cơng việc
con: thiết kế dữ liệu, thiết kế giao diện,…
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 2 : Khảo sát và phân tích hiện trạng
21
Xác định trình độ cho nhân viên, ví dụ: nhân viên Nguyễn Văn A
cĩ trình độ là Lập trình viên bậc 1
Xác định vai trị của nhân viên trong mỗi phân cơng. Một nhân
viên với một trình độ nhất định vẫn cĩ thể đảm nhận các vai trị khác
nhau, nên thơng tin về trình độ nhân viên khơng là ràng buộc khi phân
cơng. Ví dụ : Nhân viên Nguyễn Văn A cĩ trình độ Thiết kế viên bậc 1
trong cơng việc T đĩng vai trị Thiết kế viên, nhưng trong cơng việc T’ cĩ
thể đĩng vai trị Lập trình viên. Cĩ mối quan hệ giữa loaị cơng việc và
vai trị : mỗi loại cơng việc chỉ cĩ thể được đảm nhận bởi một hoặc một
vài vai trị nhất định.
e. Một số thơng tin liên quan vẫn phải quản lý thủ cơng:
Hiện nay, các văn bản liên quan đến quá trình phát triển dự án : hợp
đồng, phụ lục hợp đồng , biên bản làm việc, biên bản thanh lý hợp
đồng,…vẫn cịn được quản lý thủ cơng, nên khĩ khăn khi cần tìm lại.
Yêu cầu : hỗ trợ tra cứu thơng tin các văn bản phát sinh trong quá trình
làm việc : hợp đồng , phụ lục hợp đồng , biên bản làm việc, biên bản
thanh lý hợp đồng,…theo từng giai đoạn của dự án
Chương 3 tiếp theo sau sẽ trình bày một phương án cụ thể để xây dựng hệ
thống mới đáp ứng các yêu cầu đã đặt ra.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
22
CSDL
Project
Server
MS Office
Project
Professional
MS Project
Web Access
CSDL
PMA
Trích lọc và
chuyển đổi
dữ liệu
Project Data
Service
(PDS)
Quản lý các
thơng tin liên
quan
Thống kê
MS Office Project PMA
Chương 3 : Phương án xây dựng hệ thống mới
Từ việc phân tích và đánh giá các ưu, khuyết điểm của hệ thống hiện tại ở chương 2,
kết hợp với một số yêu cầu và đề nghị của Đơn vị nơi thực tập , em đã xác định
phương án xây dựng hệ thống mới như sau :
3.1 Lược đồ kiến trúc tổng quan
Hình 3.1. Lược đồ kiến trúc tổng quan hệ thống mới
3.2 Mơ tả kiến trúc hệ thống mới
Hệ thống mới sẽ gồm 2 phần chính : hệ thống phần mềm MS Office Project hỗ
trợ cho việc lập kế hoạch, và cơng cụ mới PMA (Project Management Assistant)
hỗ trợ quản lý các kế hoạch từ tổng thể đế chi tiết
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
23
3.2.1. Lập kế hoạch với MS Office Project
- Trưởng dự án sẽ lập kế hoạch tổng thể và chi tiết bằng MS Office Project
Professional, sau đĩ lưu lại các bản kế hoạch này vào CSDL của Project
Server.
- Thơng qua hai dạng client của Project Server là MS Office Project
Professional và Project Web Access, người dùng cĩ thể xem và hiệu chỉnh
cho các kế hoạch đã lập, cũng như bổ sung thơng tin phân cơng và cập
nhật tiến độ cơng việc.
- Phần lập kế hoạch này chủ yếu dựa vào các hỗ trợ sẵn cĩ của hệ thống
phần mềm MS Office Project , khơng cần phải xây dựng gì thêm. Tuy
nhiên, để đảm bảo cho hoạt động của cơng cụ mới PMA, các kế hoạch lập
ra phải tuân theo một số ràng buộc :
o Tồn bộ kế hoạch tổng thể chỉ thuộc một file project (ở đây xin vẫn
tạm dùng cụm từ “file project” để chỉ một bản kế hoạch được lập
bằng MS Project và lưu vào Project Server, dù thật ra bản kế hoạch
sẽ khơng được lưu thành một file .mpp mà được lưu trữ trong CSDL)
o Trong kế hoạch tổng thể sẽ cĩ các cơng việc cấp 1 tương ứng với các
giai đoạn trong dự án, ngồi ra cĩ thể cĩ các cơng việc con (subtask)
cho mỗi cơng việc cấp 1
o Mỗi bản kế hoạch thuộc kế hoạch chi tiết sẽ chi tiết cho một cơng
việc tổng thể cấp 1 . Ngồi ra các cơng việc cấp 1 của kế hoạch chi
tiết cũng cĩ thể ánh xạ với các cơng việc con của kế hoạch tổng thể.
3.2.2 Quản lý kế hoạch với cơng cụ mới PMA :
Cơng cụ mới PMA (Project Management Assistant) là phần cơ bản của
phương án xây dựng hệ thống mới. PMA là cơng cụ sẽ được tập trung xây
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
24
dựng để hỗ trợ quản lý các kế hoạch đã được lập bằng MS Office Project ,
nhằm giúp giải quyết các vấn đề của hệ thống hiện tại.
PMA cĩ thể được chia thành 4 phần cơ bản :
- Cơ sở dữ liệu để lưu trữ thơng tin
- Module Trích lọc và chuyển đổi dữ liệu với nhĩm chức năng đọc các kế
hoạch từ Project Server và cập nhật thơng tin khi các bản kế hoạch được
cập nhật
- Nhĩm chức năng Quản lý thơng tin liên quan chịu trách nhiệm quản lý
các thơng tin về dự án, nhân viên, các văn bản phát sinh trong quá trình
thực hiện dự án và các danh mục như loại cơng việc, vai trị, giai đoạn,…
- Nhĩm chức năng Thống kê thực hiện việc kết xuất các thống kê từ tổng
thể đến chi tiết.
Đối với PMA, các vấn đề sau cần được đặc biệt quan tâm :
a) Tổ chức quản lý thơng tin
Như đã phân tích ở phần (2.2.3), ta thấy các khuyết điểm chính của hệ thống
hiện tại chủ yếu xuất phát từ việc quản lý thơng tin khơng chặt chẽ. Hệ thống
phần mềm Project Server tuy cĩ thể giúp lưu trữ dữ liệu tập trung, nhưng
cũng khơng quản lý được mối liên hệ giữa các bản kế hoạch , giữa kế hoạch
tổng thể với kế hoạch chi tiết, khơng lưu vết được thao tác,.., nĩi chung là
khơng đủ để giải quyết các vấn đề của hệ thống hiện tại và khơng đáp ứng
được các yêu cầu đã đặt ra. Vì vậy cơng cụ hỗ trợ mới phải gắn với một tổ
chức CSDL mới. Để giải quyết được các vấn đề hiện tại, CSDL này cĩ
những đặc điểm chính sau:
- Quản lý các dự án theo quan hệ dự án – dự án con (nếu cĩ)
- Quản lý các kế hoạch tổng thể theo từng dự án. Mỗi dự án cĩ thể cĩ
nhiều phiên bản kế hoạch tổng thể .
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
25
- Kế hoạch chi tiết luơn cĩ mối quan hệ với phiên bản kế hoạch tổng thể
mới nhất. Cĩ thể tìm được dễ dàng các cơng việc chi tiết cho một cơng
việc tổng thể nhất định cũng như xác định chênh lệch nếu cĩ về chi phí
và thời lượng giữa hai bên.
- Khi cập nhật thơng tin về tiến độ cơng việc, thơng tin cũ cĩ thể được lưu
lại trước khi bị ghi đè lên
- Cĩ thể giữ lại thơng tin về các cơng việc bị xố khỏi kế hoạch nếu đã cĩ
thơng tin về quá trình thực hiện
- Các cơng việc cĩ thơng tin về loại cơng việc và giai đoạn tương ứng.
- Lưu trữ các thơng tin cần thiết về cơng việc , phân cơng (ngày bắt đầu,
kết thúc, thời lượng , chi phí dự kiến và thực tế ) và quan hệ giữa cơng
việc – cơng việc con
b) Giao tiếp với MS Project Server
Để cĩ thể cho phép người dùng lập kế hoạch bằng hệ thống phần mềm
MS Project và sau đĩ quản lý các kế hoạch này trong CSDL mới, PMA cĩ
module Trích lọc và chuyển đổi dữ liệu giữ vai trị giao tiếp với phần mềm
MS Office Project (mà cụ thể ở đây là MS Project Server). Module này cần
thực hiện các chức năng chính như sau:
- Đọc và ghi nhận một kế hoạch tổng thể mới sau khi kế hoạch này đã
được lập và lưu trữ trong Project Server.
- Đọc và ghi nhận các bản kế hoạch chi tiết (người dùng sẽ bổ sung
thơng tin trong quá trình này để PMA cĩ thể gắn kết kế hoạch chi
tiết với kế hoạch tổng thể)
- Cập nhật các bản kế hoạch tổng thể và kế hoạch chi tiết khi cĩ thay
đổi trên file project tương ứng trong Project Server. Đây là một
chức năng địi hỏi nhiều xử lý để đảm bảo sự nhất quán trong
CSDL của PMA.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
26
- Trong quá trình ghi nhận mới hoặc cập nhật kế hoạch, cho phép
người dùng bổ sung các thơng tin như loại cơng việc của cơng việc,
vai trị của nhân viên được phân cơng…
Để tránh sự phụ thuộc tuyệt đối vào CSDL của Project Server ( về cấu trúc
CSDL và cả tên các thuộc tính, các quan hệ ), PMA sẽ khơng đọc trực tiếp từ
CSDL của Project Server mà thơng qua PDS (Project Data Service) , một
Web Service do Project Server cung cấp, cho phép đọc và thực hiện cập nhật
trên CSDL này thơng qua các XML Request. Hơn nữa , dùng PDS cũng là
cách để cĩ thể tuân thủ tinh thần an tồn và bảo mật thơng tin của Project
Server.
c) Thống kê
Với cách tổ chức quản lý thơng tin như trên, PMA hồn tồn cĩ thể hỗ
trợ kết xuất tự động các thống kê từ tổng thể đến chi tiết .
Ngồi ra , PMA cịn cĩ thể kiểm tra chênh lệch giữa kế hoạch tổng thể
với kế hoạch chi tiết, hỗ trợ lập phiên bản kế hoạch tổng thể mới; so sánh,
tổng hợp các phiên bản để giúp Ban lãnh đạo cĩ thể đánh giá quá trình phát
triển dự án, đồng thời cĩ thể giúp Trưởng dự án rút kinh nghiệm cho các
lần lập kế hoạch sau.
3.3 Sơ đồ nghiệp vụ tổng quan với hệ thống mới
Hình 3.2 sau mơ tả các nghiệp vụ chính với hệ thống mới. Đây chỉ là tổng quan
các nghiệp vụ chủ yếu. Các nghiệp vụ này và một số nghiệp vụ khác sẽ được
phân tích chi tiết trong các chương sau.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
27
Lập kế hoạch
tổng thể
Yêu cầu ghi nhận kế
hoạch tổng thể mới
Lập kế hoạch
chi tiết
Yêu cầu thêm mới
kế hoạch chi tiết
Cập nhật, bổ sung kế
hoạch (tổng thể, chi tiết)
yêu cầu cập
nhật thay đổi
Yêu cầu thống
kê
Ghi nhận kế
hoạch tổng thể
Ghi nhận kế
hoạch chi tiết
Ghi nhận thay
đổi
Ghi nhận kế hoạch tổng
thể vào CSDL của PMA
Ghi nhậân kế hoạch
chi tiết mới
Cập nhật thay
đổi
Kết xuất thống
kê
PMAMS Project Serv erTruong du an
Hình 3.2. Mơ hình tổng quan nghiệp vụ với hệ thống mới
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
28
3.4 Khảo sát hệ thống phần mềm Microsoft Project Server
3.4.1. Sơ lược về hoạt động của MS Project Server
MS Project Server là một phần trong hệ thống phần mềm MS
Office Project do Microsoft phát triển.(bao gồm MS Office Project
Standard, MS Office Project Professionalvà MS Project Server). Project
Server ra đời với mục đích chính là phục vụ cho việc Quản lý dự án
chuyên nghiệp (Enterprise Project Management _ EPM ) trên nhiều lĩnh
vực, khơng chỉ riêng cho các dự án phần mềm.
Thay vì lưu các bản kế hoạch được lập trên các file .mpp, Project
Server sử dụng một CSDL SQL Server để lưu trữ thơng tin về các kế
hoạch được lập : các cơng việc, bảng phân cơng, tài nguyên sử dụng
trong dự án (nhân sự, máy mĩc, thiết bị…), và khá nhiều thơng tin khác
về lịch làm việc, các ghi chú, các thơng tin phục vụ cho việc hiển thị kế
hoạch.
Các kế hoạch trong Project Server được lập, xem và hiệu chỉnh
thơng qua MS Project Professional hoặc qua web với Project Web
Access.
Project Server cĩ cơ chế phân quyền chặt chẽ.
3.4.2. Các lý do của việc chọn Project Server cho hệ thống mới
Project Server được chọn để xây dựng hệ thống mới vì những lý do chính
như sau :
- Project Server cho phép lưu trữ dữ liệu tập trung , thuận tiện hơn cho
trưởng dự án trong việc quản lý các bản kế hoạch trước khi ghi nhận
chúng vào CSDL của PMA .
- Với Project Server và PDS, việc đọc thơng tin trên các bản kế hoạch sẽ
dễ dàng hơn . Nếu dùng các file .mpp , dữ liệu phải được đọc thơng qua
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
29
các đối tượng trong các component được cung cấp bởi MS Office Project
và xử lý sẽ phức tạp hơn.
3.4.3. Lược đồ CSDL của Project Server
Lược đồ CSDL của Project Server bao gồm 30 quan hệ.
Vì MS Office Project hỗ trợ người dùng rất nhiều trong việc hiển thị kế
hoạch, bao gồm cả việc tuỳ biến cách thể hiện một số thơng tin như đơn vị
ngày tháng, thời gian, tiền tệ,…nên một phần lớn các quan hệ và thuộc tính
dùng để chứa các thơng tin này và các tham số.
Một nhĩm quan hệ khác chứa thơng tin về lịch làm việc và mức chi phí
cho các tài nguyên. MS Office Project hỗ trợ lịch làm việc chung và cả lịch
biểu riêng cho từng tài nguyên (resource) và từng tác vụ (task). Các quan hệ
chứa lịch biểu này cịn phục vụ cho việc lưu thơng tin về các tác vụ khơng
được thực hiện liên tục (split task).
Trong phạm vi đề tài, chỉ khảo sát kỹ các quan hệ chứa các thơng tin
chính về kế hoạch : kế hoạch (Project), cơng việc (task), phân cơng
(assignment), tài nguyên (resource). Lược đồ quan hệ của các quan hệ này
như sau :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
30
MSP_PROJECTS
PK PROJ_ID
PROJ_NAME
PROJ_PROP_AUTHOR
PROJ_PROP_COMPANY
...
MSP_ASSIGNMENTS
PK,FK1,FK2 PROJ_ID
PK,FK2 TASK_UID
FK1 RES_UID
ASSN_UID
ASSN_WORK
...
MSP_RESOURCES
PK RES_UID
PK,FK1 PROJ_ID
RES_NAME
RES_COST
...
MSP_TASKS
PK,FK1 PROJ_ID
PK TASK_UID
TASK_ID
TASK_DUR
...
Hình 3.3. Lược đồ quan hệ của một số quan hệ chính trong CSDL
Project Server
Danh sách một số thuộc tính cần quan tâm :
Các quan hệ trong lược đồ trình bày ở trên đều cĩ khoảng trên 50 thuộc
tính. Trong đĩ phần lớn là các thuộc tính dạng tham số (đối với bảng
MSP_PROJECTS), thuộc tính dùng cho việc hiển thị, thuộc tính tính tốn. Ở
đây chỉ mơ tả một số ít thuộc tính thật sự cần để xây dựng hệ thống mới.
a) MSP_PROJECTS
Quan hệ này chứa một số thơng tin chung về bản kế hoạch , chủ yếu là
các tham số .
Ta cần quan tâm đến các thuộc tính sau :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
31
Tên thuộc tính Kiểu dữ liệu Ý nghĩa
PROJ_ID Integer Mã của bản kế hoạch
PROJ_ NAME Varchar(255) Tên bản kế hoạch
PROJ_PROP_AUTHOR Varchar(255) Tên người lập (tên user lập kế
hoạch)
PROJ_CREATION_DATE Datetime Ngày lập kế hoạch
PROJ_TYPE Integer Loại ( = 0 đối với một kế
hoạch thơng thường)
b) MSP_RESOURCES
Quan hệ này chứa thơng tin về tất cả các tài nguyên dùng trong dự án, ở
đây chỉ xét các tài nguyên là nhân sự
Các thuộc tính cần quan tâm:
Tên thuộc tính Kiểu dữ liệu Ý nghĩa
RES_UID Integer Mã nhân viên
RES_NAME Varchar(255) Tên nhân viên (cĩ thể chỉ là tên
tắt)
RES_ID Varchar(255) Số thứ tự của nhân viên
PROJ_ID Integer Tham chiếu đến quan hệ
MSP_PROJECTS
c) MSP_TASKS
Quan hệ này chứa thơng tin về các cơng việc trong kế hoạch
Các thuộc tính cần quan tâm:
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
32
Tên thuộc tính Kiểu dữ liệu Ý nghĩa
TASK_UID Integer Mã cơng việc
PROJ_ID Interger Tham chiếu đến bảng
MSP_PROJECTS
TASK_ID Interger Số thứ tự của cơng việc
TASK_NAME Varchar(255) Tên cơng việc
TASK_OUTLINE_LEVEL Integer Mức của cơng việc(cho quan hệ
cơng việc- cơng việc con)
TASK_DUR Decimal Thời lượng của cơng việc
TASK_ACT_DUR Decimal Thời lượng thực tế
TASK_WORK Decimal Lượng việc
TASK_ACT_WORK Decimal Lượng việc thực tế
TASK_START_DATE Datetime Ngày bắt đầu theo kế hoạch
TASK_FINISH_DATE Datetime Ngày kết thúc theo kế hoạch
TASK_ACT_START Datetime Ngày bắt đầu thực tế
TASK_ACT_FINISH Datetime Ngày kết thúc thực tế
d) MSP_ASSIGNMENTS
Quan hệ này chứa thơng tin về các phân cơng trong kế hoạch
Các thuộc tính cần quan tâm:
Tên thuộc tính Kiểu dữ liệu Ý nghĩa
ASSN_UID Integer Mã phân cơng
PROJ_ID Interger Mã kế hoạch
TASK_UID Interger Mã cơng việc
RES_UID Integer Mã nhân viên
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 3 : Phương án xây dựng hệ thống mới
33
ASSN_UNITS Decimal Tỷ lệ thời lượng mà nhân viên
tham gia vào cơng việc so với
tổng thời lượng mà nhân viên
này cĩ thể làm việc, tính trong
một đơn vị thời gian
ASSN_WORK Decimal Lượng việc
ASSN_ACT_WORK Decimal Lượng việc thực tế
ASSN_START_DATE Datetime Ngày bắt đầu theo kế hoạch
ASSN_FINISH_DATE Datetime Ngày kết thúc theo kế hoạch
ASSN_ACT_START Datetime Ngày bắt đầu thực tế
ASSN_ACT_FINISH Datetime Ngày kết thúc thực tế
Ghi chú :
Vì PMA sẽ đọc dữ liệu thơng qua PDS, một số thơng tin được đọc ra sẽ
cĩ thể khác về dạng thể hiện so với thơng tin được lưu trong CSDL của Project
Server và cần những chuyển đổi thích hợp.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
34
Chương 4 : Phân tích hệ thống
Dựa trên phương án đã đề ra trong chương 3, chương 4 sẽ đi sâu hơn vào việc
phân tích hệ thống mới , để cho ta thấy rõ hơn các chức năng cụ thể mà PMA cần cĩ ,
đồng thời cung cấp một cái nhìn ở mức quan niệm về tổ chức dữ liệu và xử lý của
PMA.
4.1. Chi tiết yêu cầu chức năng
Các yêu cầu chức năng đối với cơng cụ mới PMA như sau :
4.1.1 Lưu trữ và quản lý thơng tin
PMA cần tổ chức lưu trữ và quản lý các thơng tin sau :
- Danh mục các loại cơng việc, cĩ xét đến quan hệ giữa loại cơng việc
chung và các loại cơng việc chi tiết , giữa loại cơng việc với các vai trị
cĩ thể đảm nhận nĩ.
- Danh mục các vai trị và trình độ
- Hồ sơ nhân viên với thơng tin về trình độ của họ.
- Thơng tin chung về dự án : tên dự án, ngày dự kiến bắt đầu và kết thúc,
trưởng dự án, quan hệ giữa dự án và các dự án con.
- Danh sách các giai đoạn cĩ thể cĩ trong một dự án.
- Kế hoạch tổng thể của dự án : phiên bản, ngày lập, người lập
- Các cơng việc tổng thể : loại cơng việc; ngày bắt đầu và kết thúc dự kiến,
chi phí và thời lượng dự kiến; quan hệ giữa cơng việc và cơng việc con
- Kế hoạch chi tiết của dự án : cơng việc tổng thể được chi tiết, ngày lập,
người lập, ngày cập nhật cuối. Một cơng việc tổng thể (cấp 1) cĩ thể
được chi tiết bởi một hoặc nhiều bản kế hoạch chi tiết
- Các cơng việc chi tiết: loại cơng việc; ngày bắt đầu và kết thúc dự kiến,
chi phí và thời lượng dự kiến; quan hệ giữa cơng việc và cơng việc con;
ngày bắt đầu và kết thúc thực tế, chi phí và thời lượng thực tế.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
35
- Thơng tin phân cơng : cơng việc (chi tiết) và nhân viên được phân cơng
vào cơng việc, vai trị của nhân viên trong cơng việc; ngày bắt đầu và kết
thúc dự kiến, chi phí và thời lượng dự kiến; ngày bắt đầu và kết thúc thực
tế, chi phí và thời lượng thực tế, tỷ lệ hồn tất đến thời điểm hiện tại
- Các văn bản phát sinh trong quá trình triển khai dự án :
Đối với các văn bản như hợp đồng, phụ lục hợp đồng, biên bản thanh lý
hợp đồng : lưu một số thơng tin chính như khách hàng, số tiền của hợp
đồng, các phân hệ, các mốc thanh tốn, số tiền thanh tốn… và thơng tin
về ngày lập, nơi lưu trữ
Đối với một số loại văn bản khác : chỉ cần lưu thơng tin về giai đoạn phát
sinh , ngày lập và nơi lưu trữ.
4.1.2. Đồng bộ thơng tin với Project Server
PMA cần cung cấp các chức năng sau để thực hiện việc đọc và chuyển đổi
thơng tin từ một bản kế hoạch (một project) được lưu trữ trong CSDL của
Project Server thành một kế hoạch lưu trong CSDL của PMA theo đúng cấu
trúc của CSDL mới này (với đầy đủ thơng tin về cơng việc và phân cơng).
(Tạm gọi tồn bộ quá trình này là Đồng bộ thơng tin với Project Server)
- Ghi nhận kế hoạch tổng thể :
Ghi nhận một kế hoạch tổng thể mới được lập cho một dự án. Cần ghi
nhận được ngày bắt đầu, kết thúc, chi phí và thời lượng dự kiến cho từng
cơng việc. Thơng tin phân cơng cho các cơng việc tổng thể trên file
project , nếu cĩ, được xem như thơng tin về người chịu trách nhiệm quản
lý việc thực hiện cơng việc đĩ.
Trong quá trình ghi nhận, cho phép người dùng bổ sung thêm thơng
tin về giai đoạn và loại cơng việc của từng cơng việc tổng thể.
- Cập nhật kế hoạch tổng thể :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
36
Thực hiện cập nhật dữ liệu thuộc về một kế hoạch tổng thể khi cĩ sự
thay đổi trên file project tương ứng trong CSDL của Project Server.
- Ghi nhận kế hoạch chi tiết :
Ghi nhận một bản kế hoạch chi tiết mới được lập để chi tiết cho một
cơng việc tổng thể (khơng phải là cơng việc con) của kế hoạch tổng thể.
Cần ghi nhận được ngày bắt đầu, kết thúc, chi phí và thời lượng dự
kiến và thực tế (nếu cĩ) cho từng cơng việc và từng phân cơng.
Trong quá trình ghi nhận, cho phép người dùng bổ sung thêm thơng
tin về loại cơng việc của từng cơng việc chi tiết và xác định vai trị của
nhân viên được phân cơng
- Cập nhật kế hoạch chi tiết :
Thực hiện cập nhật dữ liệu thuộc về một kế hoạch chi tiết khi cĩ sự
thay đổi trên file project tương ứng trong CSDL của Project Server.
Khi tiến hành cập nhật cần chú ý các vấn đề sau:
Xử lý lưu vết khi cập nhật tiến độ cơng việc
Nếu một cơng việc bị xố khi đã được thực hiện một phần , cần
lưu trữ lại thơng tin về chi phí cho phần việc đã thực hiện đĩ.
4.1.3. Khai thác dữ liệu - thực hiện thống kê
Hệ thống hỗ trợ kết xuất tự động các thống kê tổng thể hoặc chi tiết tùy
theo yêu cầu của người sử dụng.
Kiểm tra và thống kê chênh lệch giữa kế hoạch tổng thể với kế hoạch chi
tiết và hỗ trợ lập phiên bản kế hoạch tổng thể mới.
Chú trọng các thống kê tổng thể trên tồn dự án hoặc trên nhiều dự án.
4.1.4. Một số chức năng khác:
• Phân quyền : phân quyền cho các nhĩm người dùng : Ban lãnh đạo,
Trưởng dự án, Nhân viên văn phịng và quản trị hệ thống
• Quản lý các tham số hệ thống
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
37
Dong bo thong tin
voi Project Server
quan tri he
thong
Quan ly thong
tin
Khai thac du
lieu - Thong ke
Phan quyen
Quan ly cac tham so he thong
Quan tri He thong
Dang nhapNSD
4.2. Mơ hình hố hệ thống
4.2.1. Lược đồ use case :
Các lược đồ use case sau mơ tả các chức năng của cơng cụ mới được xây dựng
(PMA) . Các use case được chia thành bốn nhĩm như sau :
Hình 4.1. Các nhĩm chức năng của PMA
a. Nhĩm use case Quản trị hệ thống:
Hình 4.2. lược đồ use case nhĩm Quản trị hệ thống
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
38
Bảng mơ tả các use case thuộc nhĩm này :
STT Tên use
case
Actor Mơ tả Điều kiện
tiên quyết
1 Đăng
nhập
Người sử
dụng hệ
thống
Một ngưịi sử dụng nhập các thơng
tin về tên sử dụng và mật khẩu để
bắt đầu sử dụng hệ thống với các
chức năng tương ứng với quyền
của mình
2 Phân
quyền
Người quản
trị hệ thống
Người quản trị hệ thống sử dụng
PMA để cấp quyền sử dụng các
chức năng cho các nhĩm người sử
dụng và cấp tên sử dụng, mật khẩu
cho mỗi người sử dụng thuộc từng
nhĩm.
Người sử
dụng đăng
nhập thành
cơng với
quyền quản
trị
3 Quản lý
các tham
số hệ
thống
Người quản
trị hệ thống
Người quản trị hệ thống thêm bớt
hoặc thay đổi giá trị cho các tham
số và các quy định được sử dụng
trong hệ thống.
Người sử
dụng đăng
nhập thành
cơng với
quyền quản
trị
b. Nhĩm use case quản lý thơng tin:
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
39
Quan ly nhan vien
Quan ly van ban
Nhan vien van phong
Quan ly cac danh muc
Quan ly thong tin chung cua du an Quan tri He thong
Hình 4.3. lược đồ use case nhĩm quản lý thơng tin
Bảng mơ tả các use case thuộc nhĩm này :
STT Tên use
case
Actor Mơ tả Điều kiện
tiên quyết
4 Quản lý
nhân viên
Nhân viên
văn phịng
Nhân viên văn phịng sử dụng PMA
để ghi nhận hồ sơ một nhân viên
mới, thay đổi hoặc xĩa hồ sơ một
nhân viên. Hệ thống cũng hỗ trợ tra
cứu thơng tin nhân viên
Đăng nhập
thành cơng
với quyền
Nhân viên
văn phịng
5 Quản lý
văn bản
Nhân viên
văn phịng
Nhân viên văn phịng sử dụng PMA
để ghi nhận thơng tin liên quan đến
các văn bản phát sinh trong quá
trình triển khai dự án (như đã trình
bày ở phần 4.1.1 ) và tra cứu các
thơng tin này khi cần
Đăng nhập
thành cơng
với quyền
Nhân viên
văn phịng
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
40
Ghi nhan ke hoach tong the moi
Cap nhat ke hoach tong the
Ghi nhan ke hoach chi tiet
Truong Du an
MS Project Server
Cap nhat ke hoach chi tiet
6 Quản lý
các danh
mục
Người
quản trị hệ
thống
Người quản trị hệ thống quản lý
(thêm , xố, cập nhật ) các danh mục
được sử dụng trong hệ thống (như
đã trình bày ở phần 4.1.1)
Đăng nhập
thành cơng
với quyền
quản trị
7 Quản lý
thơng tin
chung dự
án
Người
quản trị hệ
thống
Người quản trị hệ thống dùng PMA
để ghi nhận thơng tin chung về một
dự án mới và thay đổi nếu cần.
(Trước khi trưởng dự án được cấp
quyền để lên kế hoạch và thay đổi
thơng tin trên dự án này)
Đăng nhập
thành cơng
với quyền
quản trị
c. Nhĩm use case Đồng bộ thơng tin với Project Server:
Hình 4.3. lược đồ use case nhĩm Đồng bộ thơng tin với Project Server
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
41
Bảng mơ tả các use case thuộc nhĩm này :
STT Tên use
case
Actor Mơ tả Điều kiện tiên
quyết
8 Ghi
nhận kế
hoạch
tổng thể
mới
- Trưởng
dự án
- Project
Server
Trưởng dự án , sau khi đã lập một
kế hoạch tổng thể và lưu vào
Project Server, sử dụng PMA để
ghi nhận kế hoạch tổng thể đĩ vào
CSDL của PMA. (Quá trình này
được mơ tả chi tiết bằng sơ đồ tuần
tự ở phần sau)
- Đăng nhập thành
cơng với quyền
trưởng dự án của
dự án tương ứng
- Dự án chưa cĩ
kế hoạch tổng thể
9 Cập
nhật kế
hoạch
tổng thể
- Trưởng
dự án
- Project
Server
Trưởng dự án , sau khi đã cập nhật
project tương ứng với kế hoạch
tổng thể bằng Project Server, sử
dụng PMA để cập nhật các thay đổi
đĩ vào CSDL của PMA. (Quá trình
này được mơ tả chi tiết bằng sơ đồ
tuần tự ở phần sau)
- Đăng nhập thành
cơng với quyền
trưởng dự án của
dự án tương ứng
- Dự án đã cĩ kế
hoạch tổng thể
10 Ghi
nhận kế
hoạch
chi tiết
- Trưởng
dự án
- Project
Server
Trưởng dự án , sau khi đã lập một
kế hoạch chi tiết (một file project)
và lưu vào Project Server, sử dụng
PMA để ghi nhận kế hoạch chi tiết
đĩ vào CSDL của PMA và xác
định kế hoạch sẽ chi tiết cho một
cơng việc trong kế hoạch tổng thể
(Quá trình này được mơ tả chi tiết
bằng sơ đồ tuần tự ở phần sau)
- Đăng nhập thành
cơng với quyền
trưởng dự án của
dự án tương ứng
- Dự án đã cĩ kế
hoạch tổng thể
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
42
Xem phan cong cua nhan vien
Ban lanh dao
Thong ke chi tiet du an
Kiem tra chenh lech giua KHTT va
KHCT
MS Project ServerLap phien ban KHTT moi
Truong Du an
Thong ke tong the chi phi du an
11 Cập
nhật kế
hoạch
chi tiết
- Trưởng
dự án
- Project
Server
Trưởng dự án , sau khi đã cập nhật
project tương ứng với kế hoạch chi
tiết bằng Project Server, sử dụng
PMA để cập nhật các thay đổi đĩ
vào CSDL của PMA. (Quá trình
này được mơ tả chi tiết bằng sơ đồ
tuần tự ở phần sau)
- Đăng nhập thành
cơng với quyền
trưởng dự án của
dự án tương ứng
- Dự án đã cĩ kế
hoạch tổng thể
d. Nhĩm use case Khai thác dữ liệu- Thống kê:
Hình 4.3. lược đồ use case nhĩm Khai thác dữ liệu – thống kê
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
43
Bảng mơ tả các use case thuộc nhĩm này :
STT Tên use
case
Actor Mơ tả Điều kiện tiên quyết
12 Xem phân
cơng của
nhân viên
Ban lãnh
đạo
Ban lãnh đạo dùng PMA để
xem các thơng tin phân cơng
của một nhân viên ( tất cả
hoặc trong một khoảng thời
gian nhất định)
- Đăng nhập thành
cơng với quyền ban
lãnh đạo
13 Thống kê
tổng thể
chi phí dự
án
Ban lãnh
đạo
hoặc
Trưởng
dự án
Ban lãnh đạo (hoặc trưởng dự
án) dùng PMA để thống kê
tổng thể chi phí của dự án (cĩ
thể theo từng giai đoạn) , bao
gồm cả việc phân loại chi phí
theo loại cơng việc, theo vai
trị và trình độ người tham gia.
- Đăng nhập thành
cơng với quyền ban
lãnh đạo
14 Thống kê
chi tiết dự
án
- Trưởng
dự án
Trưởng dự án dùng PMA để
xem chi tiết thơng tin về các
cơng việc chi tiết được triển
khai cho một cơng việc tổng
thể
- Đăng nhập thành
cơng với quyền
trưởng dự án của dự
án tương ứng
- Dự án đã cĩ kế
hoạch
15 Kiểm tra
chênh lệch
giữa
KHTT và
KHCT
- Trưởng
dự án
Trưởng dự án sử dụng PMA
để thống kê các sai lệch về
thời lượng và chi phí giữa
KHTT và KHCT
- Đăng nhập quyền
trưởng dự án của dự
án tương ứng
- Dự án đã cĩ kế
hoạch
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
44
16 Lập phiên
bản kế
hoạch tổng
thể mới
-Trưởng
dự án
- Project
Server
Bắt đầu use case này khi
trưởng dự án sau khi thống kê
sai lệch giữa kế hoạch tổng
thể và kế hoạch chi tiết, quyết
định lập phiên bản kế hoạch
tổng thể mới
PMA hỗ trợ tính tốn và lập
một phiên bản mới trong
CSDL của PMA với các thơng
tin về thời lượng và chi phí
phù hợp với kế hoạch chi tiết
hiện tại.
PMA tạo một project trong
Project Server tương ứng với
phiên bản KHTT mới
- Đăng nhập thành
cơng với quyền
trưởng dự án của dự
án tương ứng
- Dự án đã cĩ kế
hoạch tổng thể và
chi tiết
4.2.2. Các lớp đối tượng chính bên trong hệ thống:
a) Sơ đồ các lớp đối tượng chính:
Hình bên dưới là mơ hình quan niệm các lớp đối tượng chính bên trong hệ
thống, Trên sơ đồ chỉ cĩ một số thuộc tính cơ bản của các lớp đối tượng.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
45
KeHoach
Ma
Ten
Ngay lap
GhiNhanMoi()
Cap nhat()
Xoa()
GiaiDoan
Ma
Ten
CongViec
Ma
Ten
Ngay bat dau
Ngay ket thuc
Chi phi
Thoi luong
Them()
Cap nhat()
Xoa()
KeHoachTongThe
Phien ban
Lap phien ban moi()
KeHoachChiTiet
Ngay cap nhat cuoi
TTCapNhat_CongViec
Stt
Thoi diem cap nhat
Chi phi TT ( truoc)
Thoi luong TT (truoc)
CongViecChiTiet
NgayBD TT
NgayKT TT
Thoi luong TT
Chi phi TT
Ty le hoan tat
Thong ke theo CVTT()
Thong ke theo du an()
*
1
0..1
0..*
1
*
PhanCong
Ngay bat dau(DK,TT)
Ngay ket thuc (DK,TT)
Chi phi (DK,TT)
Thoi luong (DK, TT)
Ty le hoan tat
Them()
Xoa()
Cap nhat()
Thong ke theo vai tro()
Thong ke theo trinh do()
Thong ke theo nhan vien()
*
1
TTCapNhat_PhanCong
Stt
Thoi diem cap nhat
Chi phi TT (truoc)
Thoi luong TT (truoc)*1
TrinhDo
Ma
Ten
Bac
NhanVien
Ma
Ho ten
Ngay sinh
Dia chi
...
Them()
Xoa()
Cap nhat()
1
*
*1
CongViecTongThe
Kiem tra chenh lech()
*
1
1
*
0..*
0..1
1
*
DuAn
Ma
Ten
Ngay bat dau
Ngay ket thuc
Ghi nhan moi()
Cap nhat()
Xoa()
1
*
0..*
0..1
LoaiCon
gViec
Ma
Ten
1
*
1
*
0..1
0..*
VaiTro
Ma
Ten
*
1
*
1
1..*
*
Hình 4.4. Sơ đồ các lớp đối tượng với một số thuộc tính và trách nhiệm chính
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
46
GiaiDoan
Ma
Ten
LoaiVanBan
Ma
Ten loai VB
VanBan
Ma
Ten
Ngay lap
Noi luu tru
Them()
Xoa()
Cap nhat()
Tra cuu()
1*
*1
BBThanhLyHopDong
So
Ngay lap
Gia tri da thanh toan
Noi luu tru
MocThanhToan
Stt
ThoiDiemThanhToan
TyLeThanhToan
PhuLucHopD
ong
So
Ngay lap
Noi luu tru
Cap nhat()
Tra cuu()
Them()
Xoa()
PhanHe
Ma
Ten
GiaTri
KhachHang
Ma
Ten
DiaChi
...
HopDong
SoHD
Ngay ky
Tong gia tri
Noi luu tru
Them()
Xoa()
Cap nhat()
Tra cuu()
*11*
1*
1
*
*
1
DuAn
Ma
Ten
Ngay bat dau
Ngay ket thuc *1
1
*
Hình 4.5. Sơ đồ các lớp đối tượng với một số thuộc tính và trách nhiệm
chính(tt) (*)
* Ghi chú : vì sơ đồ cĩ khá nhiều lớp đối tượng nên tạm cắt thành 2 phần.
Phần sau chỉ là các đối tượng phục vụ cho tiện ích quản lý và tra cứu văn
bản.
b) Danh sách các lớp đối tượng chính:
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
47
STT Tên Ý nghĩa
1 DuAn Dự án, cung cấp các thơng tin chung về dự án: tên dự án,
ngày bắt đầu, ngày kết thúc, trưởng dự án…
Trách nhiệm chính : thêm, cập nhật hay xĩa thơng tin về
dự án
2 KeHoach Kế hoạch, lớp cơ sở
Cung cấp các thơng tin chung về một bản kế hoạch : tên ,
ngày lập , người lập ( và một số thơng tin về bản project
tương ứng được lưu trong Project Server)
Các trách nhiệm chính : thêm, cập nhật hay xĩa kế hoạch
(bao gồm việc trích lọc và chuyển đổi dữ liệu đọc được
từ Project Server)
Các trách nhiệm của một đối tượng thuộc lớp kế hoạch
chỉ liên quan đến các thơng tin chung của kế hoạch,
khơng bao gồm việc xử lý thơng tin các cơng việc hay
phân cơng thuộc kế hoạch
3 KeHoachTongThe Kế hoạch tổng thể, kế thừa các thuộc tính và trách nhiệm
của lớp kế hoạch
Thuộc tính riêng : Phiên bản
Trách nhiệm riêng : lập phiên bản mới
4 KeHoachChiTiet Kế hoạch chi tiết , kế thừa các thuộc tính và trách nhiệm
của lớp kế hoạch
Thuộc tính riêng : ngày cập nhật cuối ( dùng trong việc
theo dõi cập nhật tiến độ)
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
48
STT Tên Ý nghĩa
5 CongViec Cơng việc, lớp cơ sở
Cung cấp các thơng tin về một cơng việc nĩi chung : mã,
tên, ngày bắt đầu, kết thúc, thời lượng, chi phí (dự kiến).
Ngồi ra cịn các thơng tin về số thứ tự và mức chi tiết
(level) của cơng việc
Các trách nhiệm chính : thêm, xố, cập nhật cơng việc
(bao gồm việc trích lọc và chuyển đổi thơng tin tương
ứng đã được đọc từ Project Server).
6 CongViecChiTiet Cơng việc chi tiết, kế thừa các thuộc tính và trách nhiệm
của lớp CongViec
Các thuộc tính riêng : các giá trị phản ánh tiến độ cơng
việc thực tế .
Các trách nhiệm riêng : thống kê ( tất cả thơng tin về chi
phí, thời lượng (dự kiến và thực tế), ngày bắt đầu, kết
thúc…) của các cơng việc chi tiết theo từng cơng việc
tổng thể và theo tồn bộ dự án
7 CongViecTongThe Cơng việc tổng thể, kế thừa các thuộc tính và trách
nhiệm của lớp cơng việc
Trách nhiệm riêng : Kiểm tra chênh lệch giữa các thơng
tin dự kiến của một cơng việc tổng thể với các thơng tin
thực tế trong kế hoạch chi tiết. (Phối hợp với các đối
tượng thuộc lớp CongViecChiTiet)
8 VaiTro Vai trị , cung cấp thơng tin về danh mục các vai trị .
Trách nhiệm chính : cập nhật danh mục vai trị .
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
49
STT Tên Ý nghĩa
9 TrinhDo Trình độ, cung cấp danh mục trình độ
Trách nhiệm chính : cập nhật danh mục trình độ
10 NhanVien Nhân viên, cung cấp thơng tin về nhân viên : mã, họ tên,
trình độ, địa chỉ, email…
Trách nhiệm chính : thêm, xố, cập nhật, tra cứu nhân
viên.
11 PhanCong Phân cơng, cung cấp thơng tin phân cơng cơng việc: ngày
bắt đầu , kết thúc, chi phí, thời lượng ( dự kiến và thực
tế), nhân vên được phân cơng, vai trị đảm nhận,
Các trách nhiệm chính : thêm, xố, cập nhật thơng tin
phân cơng ( bao gồm việc trích lọc và chuyển đổi thơng
tin tương ứng đã được đọc từ Project Server); Thống kê
phân cơng theo vai trị, trình độ và theo nhân viên
12 TTCapNhat_
CongViec
Thơng tin cập nhật cơng việc : cung cấp các thơng tin
dùng để lưu vết cho các lần cập nhật tiến độ cơng việc.
13 TTCapNhat_
PhanCong
Thơng tin cập nhật phân cơng : cung cấp các thơng tin
dùng để lưu vết cho các lần cập nhật tiến độ cơng việc.
14 GiaiDoan Giai đoạn, cung cấp danh mục các giai đoạn cĩ thể cĩ
trong một dự án.
Trách nhiệm chính : cập nhật danh mục giai đoạn
15 LoaiCongViec Loại cơng việc, cung cấp danh mục các loại cơng việc
theo từng giai đoạn.
Trách nhiệm chính : cung cấp thơng tin và cập nhật danh
mục loại cơng việc
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
50
STT Tên Ý nghĩa
16 HopDong Hợp đồng, cung cấp thơng tin cơ bản của hợp đồng và
một số thơng tin dùng trong việc quản lý và tra cứu một
văn bản hợp đồng : số hợp đồng, ngày ký, khách hàng,
người đại diện, tổng giá trị, nơi lưu trữ ( tên file hoặc
mã số hồ sơ nếu hợp đồng được lưu trữ trên giấy)
Trách nhiệm chính: thêm, xố, cập nhật và tra cứu
17 PhanHe Phân hệ, cung cấp thơng tin về các phân hệ của hợp
đồng : tên và mã phân hệ, giá trị của phân hệ.
18 MocThanhToan Mốc thanh tốn , cung cấp thơng tin về các mốc thanh
tốn được thoả thuận trong hợp đồng : thời điểm thanh
tốn, số tiền thanh tốn, đã được thanh tốn hay chưa…
Trách nhiệm chính : ghi nhận thanh tốn, tra cứu
19 KhachHang Khách hàng, cung cấp một số thơng tin về các khách
hàng của Đơn vị : Tên khách hàng, địa chỉ, mã số tài
khoản, mã số thuế,…
Trách nhiệm chính : Thêm , cập nhật thơng tin khách
hàng
20 PhuLucHopDong Phụ lục hợp đồng, cung cấp các thơng tin chính về phụ
lục hợp đồng của một hợp đồng : Số , ngày lập , và
thơng tin về nơi lưu trữ
Trách nhiệm chính : thêm, xĩa, cập nhật và tra cứu
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
51
STT Tên Ý nghĩa
21 BBThanhLyHopDong Biên bản thanh lý hợp đồng, cung cấp một số thơng
tin chính trong văn bản thanh lý hợp đồng : Ngày
lập , giá trị đã thanh tốn ,và thơng tin về nơi lưu
trữ.
Trách nhiệm chính : thêm, xố, cập nhật và tra cứu
22 VanBan Văn bản, cung cấp thơng tin chung về các văn bản
khác cĩ thể phát sinh trong quá trình phát triển dự
án: ngày lập , nơi lưu trữ (chủ yếu giúp người dùng
cĩ thể tra cứu và tìm văn bản, khơng lưu nội dung
văn bản ) . Một văn bản thuộc một loại văn bản và
phát sinh trong một giai đoạn nhất định của dự án.
Trách nhiệm chính : thêm, xố, cập nhật và tra cứu
23 LoaiVanBan Loại văn bản , cung cấp danh mục các loại văn bản
(ngồi hợp đồng, phục lục hợp đồng và biên bản
thanh lý hợp đồng)
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
52
c) Danh sách các quan hệ trên sơ đồ:
STT Các đối tượng Ý nghĩa Ghi chú/Ràng buộc
1 KeHoachTongThe(n)
DuAn(1)
Một phiên bản kế hoạch
tổng thể phải thuộc về một
dự án . Một dự án cĩ thể cĩ
nhiều phiên bản kế hoạch
tổng thể
Trong số các phiên
bản kế hoạch tổng thể
của dự án, phiên bản
cĩ số phiên bản mới
nhất là phiên bản hiện
hành
2 GiaiDoan(1)
LoaiCongViec(n)
Một loại cơng việc thuộc
một giai đoạn
3 DuAn(0..1)
DuAn(0..n)
Một dự án cĩ thể thuộc
một dự án tổng thể khác
hoặc khơng.
4 LoaiCongViec(1)
CongViec(n)
Một cơng việc thuộc một
loại cơng việc nhất định
5 CongViecTongThe(n)
KeHoachTongThe(1)
Một cơng việc tổng thể
thuộc một phiên bản kế
hoạch tổng thể nhất định
6 CongViecChiTiet(n)
KeHoachChiTiet(1)
Một cơng việc chi tiết
thuộc một kế hoạch chi tiết
nhất định
7 CongViecTongThe(0..1)
CongViecTongThe(0..n)
Một cơng việc tổng thể cĩ
thể là cơng việc con của
một cơng việc tổng thể
khác.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
53
STT Các đối tượng Ý nghĩa Ghi chú/Ràng buộc
8 CongViecChiTiet(0..1)
CongViecChiTiet(0..n)
Một cơng việc chi tiết
cĩ thể là cơng việc
con của một cơng việc
chi tiết khác.
9 KeHoachChiTiet(n)
CongViecChiTiet(1)
Một kế hoạch chi tiết
sẽ chi tiết cho một
cơng việc tổng thể
nhất định. Một cơng
việc tổng thể cĩ thể
được chi tiết bởi nhiều
kế hoạch chi tiết
Vì các cơng việc tổng thể
cĩ nhiều mức ( theo quan
hệ cơng việc-cơng việc
con), kế hoạch chi tiết chỉ
xác định chi tiết cho cơng
việc tổng thể mức 1(cấp
cao nhất)
10 CongViecTongThe(0..1)
CongViecChiTiet(0..n)
Một cơng việc chi tiết
sẽ chi tiết cho một
cơng việc tổng thể .
Đây là quan hệ khơng cĩ
tính bắt buộc và chỉ hỗ trợ
thêm người sử dụng khi
cần chi tiết kế hoạch tổng
thể thêm một cấp. Một
cơng việc chi tiết mức 1(và
về mặt ý nghĩa là cả các
cơng việc con của cơng
việc chi tiết này) sẽ cĩ thể
xác định là chi tiết cho một
cơng việc tổng thể mức 2
(khơng hỗ trợ mức cao
hơn)
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
54
STT Các đối tượng Ý nghĩa Ghi chú/
Ràng buộc
11 PhanCong(n)
CongViecChiTiet(1)
Phân cơng của một cơng việc chi
tiết
12 NhanVien(1)
PhanCong(n)
Phân cơng cho một nhân viên
13 PhanCong(n)
VaiTro(1)
Phân cơng nhân viên vào cơng việc
với một vai trị nhất định
14 NhanVien(n)
TrinhDo(1)
Một nhân viên cĩ một trình độ xác
định tại một thời điểm
15 CongViecChiTiet(1)
TTCapNhat_CongViec(n)
Một cơng việc chi tiết cĩ thể cĩ
nhiều lần cập nhật tiến độ, mỗi lần
cập nhật tương ứng với một đối
tượng TTCapNhat_CongViec
16 PhanCong(1)
TTCapNhat_PhanCong(n)
Một phân cơng cĩ thể cĩ nhiều lần
cập nhật tiến độ, mỗi lần cập nhật
tương ứng với một đối tượng
TTCapNhat_PhanCong
17 LoaiCongViec(0..1)
LoaiCongViec(0..n)
Một loại cơng việc cĩ thể là loại
cơng việc con của một loại cơng
việc khác. Nĩi cách khác, giữa các
đối tượng loại cơng việc cũng cĩ
quan hệ tổng thể - chi tiết
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
55
STT Các đối tượng Ý nghĩa Ghi chú/ Ràng buộc
18 VaiTro(1)
TrinhDo(n)
Quan hệ này thể hiện sự tương ứng
giữa trình độ và một vai trị , chỉ cĩ
tính tham khảo , khơng cĩ nghĩa là
một trình độ chỉ cĩ thể đảm nhận
một vai trị nhất định
Quan hệ này giúp
gom nhĩm các trình
độ cùng loại nhưng
khác bậc ( vd : Lập
trình viên bậc 1 và lập
trình viên bậc 2)
19 VaiTro(1..n)
LoaiCongViec(n)
Một loại cơng việc cĩ thể được
đảm nhận bởi một hoặc một số vai
trị
4.2.3. Sơ đồ tuần tự cho một số luồng sự kiện phức tạp :
Phần này trình bày các sơ đồ tuần tự cho luồng sự kiện chính của một số
use case phần đồng bộ thơng tin với Project Server, vì các luồng sự kiện
này tương đối phức tạp.
Trên sơ đồ, các đối tượng giao diện xem như thuộc lớp đối tượng
ManHinh; các đối tượng giao tiếp với ProjectServer xem như thuộc cùng
lớp GiaoTiepProjectServer; các đối tượng truy xuất dữ liệu xem như thuộc
cùng lớp DuLieu. Việc thiết kế các lớp thuộc nhĩm giao diện và truy xuất
dữ liệu này sẽ được trình bày chi tiết hơn ở chương sau.
a) Sơ đồ tuần tự cho luồng sự kiện chính của use case Ghi nhận kế
hoạch tổng thể
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
56
: TruongDA MHGhiNhanKHTT : ManHinh
: KeHoachTongThe : CongViecTongThe : GiaoTiepPS : DuLieu
1. Yeu cau nhap thong tin de ket noi PS
1.1. Thong tin de ket noi (URL, username,...) 2. Ket noi voi PS
2.1. Ket noi thanh cong
3. Doc ds cac ban project hien hanh
4. Yeu cau chon Project
4.1. Chon project tuong ung
5. Tao ke hoach moi (project vua chon)
6. Doc ds CongViec
6.1. Doc ds cong viec
7. yeu cau xac dinh thong
tin bo sung (ds cong viec)
7.1. xac dinh thong tin bo sung 8. Nhap thong tin bo sung
9. Xac nhan ket thuc
9.1. Ghi nhan ke hoach tong the 9.1.1. Ghi nhan KHTT
9.2. Ghi nhan ds Cong viec tong the
9.2.1. Ghi nhan CVTT
9.3. Thong bao ghi nhan thanh cong
Thong tin bo sung
: loai cong viec
Hình 4.6. Sơ đồ tuần tự cho luồng sự kiện chính của use case “Ghi nhận kế
hoạch tổng thể”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
57
:
KeHoachChiTiet : TruongDA
MHGhiNhanKHCT
: ManHinh
:
CongViecChiTiet
: PhanCong : GiaoTiepPS : DuLieu
2. yeu cau nhap thong tin ket noi PS
2.1. nhap thong tin ket noi 3. Ket noi PS
3.1. Ket noi thanh cong
4. Doc ds project
5. Chon Project tuong ung voi KHCT can ghi nhan
5.1. Chon project tuong ung
6. Tao moi KHCT
7. Doc ds cong viec chi tiet
7.1. Doc ds cong viec chi tiet
8. Doc ds phan cong 8.1. Doc ds phan cong
9. yeu cau xac dinh thong tin bo sung
(ds cong viec, ds phan cong)
9.1. Nhap thong tin bo sung
9.1.1. Nhap thong tin bo sung
9.1.2. Nhap thong tin bo sung
10. Xac nhan ket thuc10.1. Ghi KHCT 10.1.1. Ghi KHCT
10.2. Ghi ds CVCT
10.2.1. Ghi CVCT
10.3. Ghi ds phan cong 10.3.1. Ghi phan cong
10.4. Thong bao ghi nhan thanh cong
loai cong
viec
Nhan vien,
vai tro
1. Ghi nhan KHCT (Cong viec tong the can chi tiet)
b) Sơ đồ tuần tự cho luồng sự kiện chính của use case Ghi nhận kế
hoạch chi tiết
Hình 4.7. Sơ đồ tuần tự cho use case “Ghi nhận kế hoạch chi tiết”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
58
: TruongDA MHCapNhatKHTT : ManHinh
:
CongViecTongThe
: GiaoTiepPS : DuLieu
1. Cap nhat KHTT(ke hoach tong the)
2. Ket noi PS (thong tin ket noi)
2.1. Ket noi PS
2.1.1. Ket noi thanh cong
3. Doc DS cong viec tu PS (khtt)
3.1. Doc ds cong viec
4. Doc ds cong viec tu CSDL
4.1. Doc ds congviec theo khtt
5. yeu cau thay doi, bo sung thong tin bo sung
5.1. Cap nhat thong tin bo sung
6. dscv moi:nhap thong tin bo sung
7. So sanh (dscv moi, dscv cu)
7.1. dscv moi them, dscv bi xoa, dscv cap nhat
8.1. dscv moi them : them 8.1.1. them CVTT
8.2. dscv cap nhat : cap nhat
8.2.1. Cap nhat CVTT
8.3. dscv bi xoa : xoa 8.3.1. Xoa CVTT
8. Xac nhan cap nhat
8.4. Thong bao cap nhat thanh cong
c) Sơ đồ tuần tự cho luồng sự kiện chính của use case Cập nhật kế
hoạch tổng thể:
Hình 4.8. Sơ đồ tuần tự cho use case “Cập nhật kế hoạch tổng thể”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 4 : Phân tích hệ thống
59
MHCapNhatKHCT
: ManHinh : TruongDA
:
CongViecChiTiet
: PhanCong : GiaoTiepPS : DuLieu
1. Cap nhat ke hoach chi tiet(ke hoach chi tiet)
2. Ket noi PS(thong tin ket noi) 2.1. Ket noi PS(thong tin ket noi)
2.1.1. Ket noi thanh cong
3. Doc ds cong viec moi tu PS(khct)
3.1. Doc ds cong viec
4. Doc dscv cu tu CSDL
4.1. Doc ds cv
5. Doc ds phan cong moi tu PS
5.1. Doc ds phan cong
6. Doc ds phan cong cu tu CSDL 6.1. Doc ds phan cong
7. yeu cau cap nhat, bo sung thong
tin bo sung(dscv moi, dspc moi)
7.1. Nhap thong tin bo sung
8. dscv moi : Nhap thong tin bo sung
9. dspc moi : nhap thong tin bo sung
10. So sanh(dscv moi, dscv cu)
11. So sanh(dspc moi, dspc cu)
10.1. dscv moi them, dscv bi xoa, dscv cap nhat
11.1. dspc moi them, dspc bi xoa, dspc cap nhat
12. xac nhan cap nhat
12.1. dscv moi them:Them; dscv bi xoa: Xoa; dscv cap nhat : Cap nhat
12.1.1. Them, Xoa, Cap nhat CVCT
12.2. dspc moi them:Them; dspc bi xoa: Xoa; dspc cap nhat: CapNhat
12.2.1. Them, Xoa, Cap nhat phan cong
12.3. Thong bao cap nhat thanh cong
d) Sơ đồ tuần tự cho luồng sự kiện chính của use case Cập nhật kế
hoạch chi tiết:
Hình 4.8. Sơ đồ tuần tự cho use case “Cập nhật kế hoạch tổng thể”
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
60
Chương 5 : Thiết kế phần mềm
Với những phân tích hệ thống ở chương 4, ta cĩ thể thấy rõ được các thành
phần, chức năng cơ bản, và tổng quan về tổ chức dữ liệu và xử lý của PMA. Chương 5
sẽ đi tiếp thêm một bước trong qui trình hiện thực hố phương án đã lựa chọn : Trình
bày một số thiết kế logic chi tiết cho PMA.
5.1. Thiết kế dữ liệu
5.1.1 Lược đồ cơ sở dữ liệu quan hệ
Tuy được phân tích và thiết kế theo hướng đối tượng, PMA vẫn dùng
CSDL quan hệ. Hình bên dưới là sơ đồ quan hệ của cơ sở dữ liệu mới của
PMA (trên sơ đồ khơng cĩ các bảng tham số).
Trên sơ đồ, các thuộc tính của các quan hệ khơng được thể hiện đầy đủ,
chủ yếu chỉ là các thuộc tính khĩa chính và khĩa ngoại. Danh sách đầy đủ
của các thuộc tính cùng với ý nghĩa của chúng được trình bày trong phần
phụ lục.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
61
DU_AN
DA_MA
DA_MADATONGTHEKE_HOACH_TONG_THE
KHTT_MA
DA_MA
KHTT_PHIENBAN
KE_HOACH_CHI_TIET
KHCT_MA
CVTT_MA
KHTT_MA
CONG_VIEC_TONG_THE
CVTT_MA
KHTT_MA
CVTT_MACVTOMTAT
LCV_MA
CONG_VIEC_CHI_TIET
CVCT_MA
KHCT_MA
CVCT_MACVTOMTAT
CVTT_MA
KHTT_MA
LCV_MA
GIAI_DOAN
GD_MA
LOAI_CONG_VIEC
LCV_MA
GD_MA
LCV_MALCVTT
NHAN_VIEN
NV_MA
TD_MA
VAI_TRO
VT_MA
TRINH_DO
TD_MA
VT_MA
TD_BAC
DAM_NHAN
LCV_MA
VT_MA
PHAN_CONG
KHCT_MA
PC_MA
CVCT_MA
VT_MA
NV_MA
TTCAPNHAT_PHANCONG
TTCNPC_STT
KHCT_MA
PC_MA
TTCAPNHAT_CONG_VIEC
KHCT_MA
CVCT_MA
TTCNCV_STT
PHAN_HE
PH_MA
HD_SO
MOC_THANH_TOAN
MTT_STT
HD_SO
VAN_BAN
VB_MA
GD_MA
DA_MA
LVB_MA
KHACH_HANG
KHA_MA
PHU_LUC_HOP_DONG
PLHD_SO
HD_SO
HOP_DONG
HD_SO
DA_MA
KHA_MA
QUAN_LY
CVTT_MA
KHTT_MA
NV_MA
LOAI_VAN_BAN
LVB_MA
BB_THANH_LY_HOP_DONG
BBTL_SO
HD_SO
Hình 5.1. Mơ hình dữ liệu quan hệ của PMA
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
62
Trên lược đồ, mỗi ơ hình chữ nhật tương ứng với một quan hệ , mỗi mũi tên
nối hai quan hệ sẽ được cài đặt thành một khĩa ngoại, trừ một số mũi tên tham
chiếu đến chính nĩ sẽ khơng dùng khĩa ngoại mà cài trigger thay thế, vì hệ quản trị
khơng hỗ trợ việc chỉ định thao tác xĩa hoặc cập nhật dây chuyền (cascade delete,
cascade update ) cho các tham chiếu loại này.
5.1.2 Các chỉ mục được cài đặt
Để việc khai thác dữ liệu được nhanh hơn, tạo một số chỉ mục cho các con
đường truy xuất thường xuyên, cụ thể như sau:
- CONG_VIEC_TONG_THE (KHTT_MA) : Từ một bộ của
KE_HOACH_TONG_THE, truy xuất tất cả các bộ của CONG_VIEC_TONG_THE
- CONG_VIEC_CHI_TIET (KHCT_MA) : Từ một bộ của
KE_HOACH_CHI_TIET, truy xuất tất cả các bộ của CONG_VIEC_CHI_TIET
- KE_HOACH_CHI_TIET (CVTT_MA, KHTT_MA) : Từ một bộ của
CONG_VIEC_TONG_THE, truy xuất tất cả các bộ của KE_HOACH_CHI_TIET
- KE_HOACH_TONG_THE (DA_MA) : Từ một bộ của DU_AN, truy xuất
tất cả các bộ của KE_HOACH_TONG_THE
- PHAN_CONG (NV_MA) : Từ một bộ của NHAN_VIEN, truy xuất tất cả
các bộ của PHAN_CONG
- PHAN_CONG (CVCT_MA) : Từ một bộ của CONG_VIEC_CHI_TIET, truy
xuất tất cả các bộ của PHAN_CONG
- LOAI_CONG_VIEC (GD_MA) : Từ một bộ của GIAI_DOAN, truy xuất
tất cả các bộ của LOAI_CONG_VIEC
- NHAN_VIEN(TD_MA) : Từ một bộ của TRINH_DO, truy xuất tất cả các
bộ của NHAN_VIEN
Ngồi ra, cài đặt một số chỉ mục khác để phục vụ cho yêu cầu thống kê :
- CONG_VIEC_TONG_THE ( KHTT_MA, LCV_MA)
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
63
- PHAN_CONG (KHCT_MA, VT_MA)
- PHAN_CONG (KHCT_MA, NV_MA)
5.1.3 Một số ràng buộc tồn vẹn :
STT Ký
hiệu
Phát biểu
1 R1 Đối với các quan hệ cĩ tham chiếu đến chính nĩ : DU_AN,
CONG_VIEC_TONG_THE, CONG_VIEC_CHI_TIET, LOAI_CONG_VIEC
, các cung tham chiếu khơng được tạo thành chu trình
2 R2 Số thứ tự phiên bản của kế hoạch tổng thể (KHTT_PHIENBAN) là
duy nhất đối với mỗi dự án
3 R3 Các kế hoạch chi tiết phải luơn tham chiếu đến cơng việc tổng thể
thuộc về kế hoạch tổng thể cĩ số phiên bản lớn nhất (phiên bản
hiện hành)
4 R4 Loại cơng việc tổng thể thuộc giai đoạn nào thì tất cả các loại cơng
việc con cũng phải thuộc về giai đoạn đĩ
5 R5 Đối với cơng việc tổng thể và cơng việc chi tiết, cơng việc tĩm tắt
thuộc loại cơng việc L1 thì các cơng việc con của nĩ chỉ cĩ thể
thuộc về các loại cơng việc con của L1 hoặc chính L1
6 R6 Đối với cơng việc tổng thể và cơng việc chi tiết , chi phí thực tế,
chi phí dự kiến, chi phí đã xĩa của một cơng việc tương ứng bằng
tổng chi phí thực tế, chi phí dự kiến, chi phí đã xĩa của các phân
cơng và các cơng việc con của cơng việc đĩ
7 R7 Đối với cơng việc tổng thể và cơng việc chi tiết, ngày bắt đầu,
ngày kết thúc và thời lượng của một cơng việc là những giá trị
được tính tốn hợp lý từ các phân cơng và cơng việc con của cơng
việc đĩ.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
64
STT Ký hiệu Phát biểu
8 R8 Một cơng việc tổng thể, thuộc loại cơng việc L, được chi tiết bởi kế
hoạch chi tiết K thì tất cả các cơng việc chi tiết thuộc kế hoạch K
đều thuộc loại cơng việc con của L hoặc chính L.
9 R9 Một cơng việc tổng thể thuộc loại cơng việc L thì tất cả các cơng
việc chi tiết chi tiết cho nĩ đều thuộc loại cơng việc con của L hoặc
chính L
10 R10 Một cơng việc chi tiết thuộc kế hoạch chi tiết K chi tiết cho cơng
việc tổng thể T thì chỉ cĩ thể tham chiếu đến một cơng việc tổng thể
là con của cơng việc T
11 R11 Một nhân viên được phân cơng vào một cơng việc, thuộc loại cơng
việc L, với một vai trị cụ thể thì vai trị này phải là một trong số
những vai trị cĩ thể đảm nhận loại cơng việc L.
12 R12 Đối với các quan hệ cĩ tham chiếu đến chính nĩ : DU_AN,
CONG_VIEC_TONG_THE, CONG_VIEC_CHI_TIET, LOAI_CONG_VIEC ,
một bộ q2 cĩ tham chiếu đến một bộ q1 thì mức của q2 = mức của
q1 + 1.
Ghi chú : một số ràng buộc luơn thỏa khi cập nhật CSDL với dữ liệu được đọc từ
Project Server , và hệ thống khơng cần phải kiểm tra lại , đĩ là ràng buộc R1(trên
các quan hệ CONG_VIEC_CHI_TIET và CONG_VIEC_TONG_THE, ràng buộc
R6 (trừ chi phí đã xĩa), và ràng buộc R7
5.2. Thiết kế phần mềm PMA
5.2.1. Hệ thống các lớp đối tượng
PMA được thiết kế theo hướng đối tượng, và theo mơ hình 3 lớp.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
65
Cĩ 3 nhĩm lớp đối tượng chính :
Nhĩm giao diện : bao gồm các đối tượng màn hình và user control, chịu
trách nhiệm giao tiếp với người sử dụng.
Nhĩm xử lý : bao gồm các đối tượng xử lý chính, chịu trách nhiệm nhận
và xử lý thơng tin được chuyển đến từ các đối tượng truy xuất dữ liệu,
sau đĩ cung cấp dữ liệu đã qua xử lý cho các đối tượng giao diện hoặc
ngược lại.
Nhĩm truy xuất dữ liệu : bao gồm các đối tượng chịu trách nhiệm truy
xuất dữ liệu từ CSDL hoặc từ Project Server .
a) Sơ đồ tổ chức các lớp đối tượng
Sơ đồ sau thể hiện tổng thể tổ chức các lớp đối tượng bên trong phần mềm:
Hình 5.2. Tổ chức hệ thống các lớp đối tượng bên trong PMA
NSD
Các lớp đối tượng màn hình và user control
Các lớp đối tượng xử lý chính
CSDL PMA Project Server
Các lớp đối tượng truy
xuất dữ liệu từ CSDL
Các lớp đối tượng truy
xuất dữ liệu từ Project
Server
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
66
b) Danh sách một số lớp đối tượng quan trọng :
- Các lớp đối tượng thuộc nhĩm giao tiếp với NSD : (phần này chỉ nêu sơ
lược một số user control, các màn hình giao diện sẽ được trình bày riêng
trong phần 5.3)
1. CtrlReport : Là User control được sử dụng trên các màn hình
thống kê. Chứa bên trong một lưới để hiển thị thơng tin trong
thống kê.Các đối tượng màn hình sử dụng lớp đối tượng này cĩ
thể tùy ý định dạng lại cho lưới dữ liệu tùy theo yêu cầu
2. CtrlTraCuuKeHoach : Là User control dùng để tra cứu kế hoạch.
Chứa bên trong một lưới để hiển thị danh sách các bản kế hoạch
chi tiết nhĩm theo từng cơng việc tổng thể
3. CtrlTraCuuDuAn : Là User control dùng để tra cứu dự án. Chứa
bên trong một lưới để hiển thị danh sách các dự án theo dạng cây
với quan hệ dự án – dự án con
4. CtrlTraCuuNhanVien : Là User control dùng để tra cứu nhân viên
- Các lớp đối tượng thuộc nhĩm xử lý : Bên dưới là một số đối tượng xử lý
quan trọng nhất
1. KeHoach : Lớp đối tượng kế hoạch, là lớp cơ sở cho các lớp đối
tượng KHChiTiet và KHTongThe
2. KeHoachTongThe: Lớp đối tượng kế hoạch tổng thể, kế thừa lớp
KeHoach
3. KeHoachChiTiet : Lớp đối tượng kế hoạch chi tiết, kế thừa lớp
KeHoach
4. CongViec : Lớp đối tượng cơng việc, là lớp cơ sở cho các lớp đối
tượng CongViecTongThe và CongViecChiTiet
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
67
5. CongViecTongThe : Lớp đối tượng Cơng việc tổng thể, kế thừa
lớp CongViec
6. CongViecChiTiet : Lớp đối tượng Cơng việc chi tiết, kế thừa lớp
CongViec
7. DSCongViec : Lớp đối tượng danh sách cơng việc. Mỗi đối tượng
thuộc lớp này sẽ chứa một danh sách các thơng tin chung về cơng
việc (dạng record)
8. DSCongViecTongThe : Lớp đối tượng danh sách cơng việc tổng
thể, kế thừa từ lớp đối tượng DSCongViec .
9. DSCongViecChiTiet : Lớp đối tượng danh sách cơng việc chi tiết,
kế thừa từ lớp đối tượng DSCongViec .
10. PhanCong : Lớp đối tượng phân cơng. Mỗi đối tượng phân cơng
chứa một tập (một danh sách) các thơng tin phân cơng dưới dạng
record
11. DuAn : Lớp đối tượng dự án. Mỗi đối tượng thuộc lớp này chứa
thơng tin về một dự án
- Các lớp đối tượng thuộc nhĩm truy xuất dữ liệu : trong bảng là các đối
tượng truy xuất dữ liệu từ Project Server và một số đối tượng truy xuất
dữ liệu từ CSDL của PMA
1. PrjSvr_KeHoach : Lớp đối tượng truy xuất dữ liệu chung của các
project từ Project Server
2. PrjSvr_CongViec : Lớp đối tượng truy xuất dữ liệu cơng việc từ
Project Server
3. PrjSvr_PhanCong : Lớp đối tượng truy xuất dữ liệu phân cơng từ
Project Server
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
68
4. PrjSvr_NhanSu : Lớp đối tượng truy xuất danh sách nhân viên
được phân cơng vào các cơng việc trong kế hoạch, chủ yếu là
thơng tin về mã và tên
5. PDSUtils : Hỗ trợ giao tiếp với Project Server thơng qua PDS
6. TapDuLieu : Hỗ trợ truy xuất dữ liệu từ CSDL thơng qua một kỹ
thuật nhất định (như ADO.NET)
7. DLKeHoach : Truy xuất dữ liệu kế hoạch từ CSDL
8. DLCongViec : Truy xuất dữ liệu cơng việc từ CSDL
5.2.2. Một số hàm xử lý quan trọng của các đối tượng:
Phần này trình bày một số hàm xử lý cơ bản và tương đối phức tạp của một
số lớp đối tượng, chủ yếu là các đối tượng xử lý chính.
a) Lớp DSCongViec
STT Tên hàm/Ý
nghĩa
Tham số Kiểu trả
về
Thuật giải
1 DocDSCong
ViecTuProject
(đọc danh
sách cơng
việc từ
Project)
prjCV:
PrjSvr_CongVi
ec
kh : KeHoach
Data
Table
Dscv, temp : DataTable
Temp = prjCV.DocDSCV( )
Sắp xếp các cơng việc trong temp
theo thứ tự tăng dần của WBS
(outline number) để đảm bảo các
cơng việc con luơn nằm ngay sau cha
của nĩ
Dùng đệ qui, chuyển lần lượt các
cơng việc từ temp vào dscv với những
thơng tin cần thiết và theo cấu trúc
cơng việc - cơng việc con
Trả về dscv
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
69
STT Tên hàm/Ý
nghĩa
Tham số Kiểu trả
về
Thuật giải
2 XuatDSCV
(xuất danh
sách cơng
việc ra một
control cĩ thể
thể hiện dữ
liệu dạng
lưới kết hợp
với cây)
Ctrl : Control
DKLoc : String
DongBD : int
DongKT : int
Level : int
DSThuocTinh:
string[]
void Lọc các cơng việc trong record chứa
danh sách cơng việc (m_DSCV) theo
DKLoc, và sắp xếp theo thứ tự tăng
dần của STT cơng việc.
Dùng đệ qui, gán lần lượt các cơng
việc đã lọc vào các node của Ctrl với
những thuộc tính trong DSThuocTinh
theo cấu trúc cơng việc - cơng việc
con, bắt đầu từ dịng DongBD, cột
CotBD, và mức Level của Ctrl.
3 TinhTong
ChiPhi
(Tính tổng
một thuộc tính
chi phí của
một tập cơng
việc)
DKLoc : string
TenThuocTinh :
string
decimal Lọc ra tập các cơng việc từ m_DSCV
theo DKLoc.
TongCP : decimal
Với mỗi dịng i tương ứng với cơng
việc lọc được:
TongCP +=
m_DSCV[i][TenThuocTinh]
Trả về TongCP
4 TinhNgayBD
Chung
(Tính thời
điểm bắt đầu
chung cho
một tập cơng
việc)
Như trên Date
Time
Lọc ra tập các cơng việc từ m_DSCV
theo DKLoc.
NgayBD : DateTime
Với i là dịng tương ứng với cơng việc
được lọc đầu tiên : NgayBD =
m_DSCV[i][TenThuocTinh]
Với mỗi dịng i tương ứng với cơng
việc lọc được:
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
70
Nếu (NgayBD >
m_DSCV[i][TenThuocTinh] )
NgayBD +=
m_DSCV[i][TenThuocTinh]
Trả về NgayBD
5 TinhNgayKT
Chung
(Tính thời
điểm kết thúc
chung cho
một tập cơng
việc)
Như trên Như trên Tương tự như hàm
TinhNgayBDChung, chỉ thay đổi điều
kiện gán NgayKT là NgayKT<
m_DSCV[i][TenThuocTinh] )
6 TinhTyLeTL
HoanTat
(tính tỷ lệ thời
lượng đã làm
so với thời
lượng dự kiến
của một tập
cơng việc)
DKLoc : string
TenTTTLTT :
string
TenTTTLDK :
string
decimal Lọc ra tập các cơng việc từ m_DSCV
theo DKLoc.
SumDur, SumActDur : decimal
Tính tổng thời lượng dự kiến SumDur
của tập cơng việc lọc được theo thuộc
tính TenTTTLTT
Tính tổng thời lượng thực tế
SumActDur của tập cơng việc lọc
được theo thuộc tính TenTTTLDK
Trả về SumActDur / SumDur
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
71
b) Lớp DSCongViecTongThe
STT Tên hàm/Ý
nghĩa
Tham số Kiểu
trả về
Thuật giải
1 TongHopTT
TuKHCT
(tổng hợp
thơng tin từ
kế hoạch chi
tiết)
void void Với mỗi cơng việc tổng thể cvtt cĩ cấp cao nhất
(cấp 1) trong m_DSCV :
{ dscvCT : DSCongViecChiTiet
dscvCT .DocDSCV(cvtt.MaCV)
Tính các thuộc tính về thời lượng, chi phí
…thực tế của cvtt, sử dụng các phương thức của
đối tượng dscvCT với điều kiện lọc là mức của
cơng việc chi tiết = 1 (*)
Với mỗi cơng việc tổng thể cấp 2 cvtt2 là con
của cvtt : xử lý tính tốn tương tự như (*) với
điều kiện lọc bổ sung là cơng việc chi tiết thuộc
về cvtt2. }
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
72
c) Lớp DSCongViecChiTiet
STT Tên hàm/Ý
nghĩa
Tham số Kiểu
trả về
Thuật giải
1 SoSanh
(So sánh danh
sách cơng
việc với một
danh sách
cơng việc
khác và xác
định các khác
biệt)
DSCVMoi,
DSVMoiThem,
DSCVBiXoa,
DSCVCapNhatThuong,
DSCVCapNhatTienDo:
DSCongViecChiTiet
void Với mỗi cơng việc cv thuộc
m_DSCV, tìm cơng việc cĩ
cùng mã trong DSCVMoi
Nếu khơng tìm được
Thêm cv vào DSCVBiXoa
Ngược lại
Kiểm tra các thuộc tính
tương ứng giữa 2 cơng việc:
Nếu cĩ thay đổi trên các
thuộc tính liên quan đến tiến độ :
Thêm cv vào
DSCVCapNhatTienDo
Nếu chỉ thay đổi trên các
thuộc tính khác :
Thêm cv vào
DSCVCapNhatThuong
Với mỗi cơng việc cv thuộc
DSCVMoi, tìm cơng việc cĩ
cùng mã trong m_DSCV
Nếu khơng tìm được
Thêm cv vào
DSCVMoiThem
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
73
Màn hình chính
(chứa user control
tra cứu kế hoạch)
Màn hình ghi nhận
kế hoạch tổng thể
Màn hình ghi nhận
kế hoạch chi tiết
Màn hình cập nhật
kế hoạch chi tiết
Màn hình cập nhật
kế hoạch tổng thể
Màn hình tra cứu
nhân viên
Màn hình tra cứu
văn bản
Các màn hình thống
kê chi phí dự án
Màn hình tra cứu
dự án
Màn hình kiểm tra
phân cơng nhân
viên
Màn hình xem chi
tiết kế hoạch
5.3. Thiết kế giao diện :
5.3.1. Sơ đồ các màn hình giao diện:
Hình sau đây là sơ đồ các màn hình giao diện chính của PMA, ngồi ra cịn
cĩ các màn hình khác khơng cĩ trong sơ đồ: quản lý nhân viên, ghi nhận và
cập nhật dự án, quản lý văn bản, quản lý các danh mục, …
Trên sơ đồ, hình chữ nhật chỉ một hoặc một nhĩm màn hình, mũi tên hai
chiều giữa chúng chỉ ra rằng bằng cách nào đĩ cĩ thể chuyển qua lại trực
tiếp giữa hai màn hình.
Hình 5.3. Sơ đồ các màn hình giao diện của PMA
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
74
Cĩ thể chia các màn hình giao diện của PMA thành 4 nhĩm, dựa vào nội
dung giao tiếp với người sử dụng và cách thức thể hiện dữ liệu của chúng:
- Nhĩm các màn hình quản lý đối tượng ( thêm, xố, cập nhật) : gồm các
màn hình quản lý nhân viên, dự án, danh mục, ... : các màn hình này cĩ
thể thiết kế theo dạng thơng thường : dùng các textbox, combobox, …để
hiển thị thơng tin dạng chi tiết và dùng lưới để thể hiện danh sách các
đối tượng.
- Nhĩm các màn hình tra cứu : gồm các màn hình tra cứu nhân viên, dự
án, kế hoạch,văn bản… : cĩ thể hiển thị danh sách các đối tượng tìm
được theo dạng lưới. Đối với các đối tượng cĩ quan hệ dạng cha - con
với nhau thì cần kết hợp thể hiện dạng cây.
- Nhĩm các màn hình đồng bộ thơng tin với Project Server : gồm các
màn hình ghi nhận mới và cập nhật kế hoạch (tổng thể hoặc chi tiết). Để
thực hiện các chức năng này, PMA cần tương tác với người sử dụng qua
nhiều bước, và các xử lý của bước sau phụ thuộc vào bước trước. Vì vậy,
đối với các màn hình thuộc nhĩm này, thiết kế theo dạng wizard là phù
hợp nhất.
- Nhĩm các màn hình thống kê : gồm các màn hình để xem chi tiết kế
hoạch, thống kê chi phí dự án, kiểm tra phân cơng của nhân viên. Đối với
các màn hình thuộc nhĩm này, cĩ thể sử dụng lưới để hiển thị dữ liệu, và
thường phải kết hợp với dạng cây để phân nhĩm dữ liệu thống kê. Ngồi
ra trên các màn hình này cịn phải cĩ thêm các xử lý cho phép người
dùng thêm, bớt các cột cần hiển thị, thay đổi đơn vị tính cho các cột thời
lượng và chi phí; và phải cĩ chức năng in.
5.3.2. Thiết kế một số màn hình tiêu biểu:
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
75
Đối với PMA, các màn hình của nhĩm chức năng đồng bộ thơng tin với
Projec Server và các màn hình nhĩm thống kê cĩ một số yêu cầu đặc
trưng riêng. Do đĩ trong phần này xin trình bày thiết kế của một màn
hình đồng bộ thơng tin và một màn hình thống kê tiêu biểu. Các màn
hình khác cùng nhĩm cĩ cách thể hiện gần như tương tự nhau.
a) Màn hình ghi nhận kế hoạch chi tiết – một màn hình đồng bộ
thơng tin
Hình 5.4. Màn hình ghi nhận kế hoạch tổng thể- bước 1
Mơ tả : Màn hình ở bước 1 (hình 5.4) dùng để nhập các thơng tin cần thiết để
kết nối với Project Server : URL, tên sử dụng, mật khẩu
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Nhấn nút “Tiếp” Kết nối với Project Server. Nếu thành cơng ,
chuyển qua bước 2
2 Nhấn nút “Hủy bỏ” Hủy bỏ việc ghi nhận (sau khi đã xác nhận) (tương
tự cho các bước sau)
1 2
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
76
Hình 5.5. Màn hình ghi nhận kế hoạch chi tiết- bước 2
Mơ tả : Màn hình ở bước 2 (hình 5.5) cho phép chọn một project hiện cĩ trong
Project Server tương ứng với kế hoạch chi tiết cần ghi nhận
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Nhấn nút “Tiếp” Xác định project cần ghi nhận
Đọc tồn bộ kế hoạch chi tiết và chuyển qua bước
3 (nếu đọc thành cơng)
2 Nhấn nút “Trở lại” Trở lại bước trước (tương tự cho các bước khác)
1
2
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
77
Hình 5.6. Màn hình ghi nhận kế hoạch chi tiết- bước 3
Mơ tả : Màn hình ở bước 3 (hình 5.6) cho phép xác định một cơng việc chi tiết
cấp 1 (cao nhất) (và tất cả các cơng việc con của nĩ) là chi tiết cho một cơng
việc tổng thể cấp 2 nào (cho phép chi tiết kế hoạch tổng thể ở 2 cấp). Việc xác
định này khơng bắt buộc
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Nhấn nút “…” Hiển thị danh sách các cơng việc tổng thể cấp 2 là
con của cơng việc tổng thể được chi tiết bởi kế
hoạch chi tiết này để NSD lựa chọn.
2 Nhấn nút “Tiếp” Gán thơng tin được xác định vào các đối tượng liên
quan và chuyển sang bước 4
1
2
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
78
Hình 5.7. Màn hình ghi nhận kế hoạch chi tiết- bước 4
Mơ tả : Màn hình ở bước 4 (hình 5.7) cho yêu cầu NSD xác định loại cơng việc
cho các cơng việc trong kế hoạch. Đối với cơng việc chi tiết, việc xác định này
là khơng bắt buộc .
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Nhấn nút “…” Hiển thị danh sách các loại cơng việc để NSD lựa
chọn. Cần lựa chọn các loại cơng việc để hiển thị
sao cho khơng vi phạm ràng buộc R5, R8 và R9
(phần 5.1.3)
2 Nhấn nút “Tiếp” Gán thơng tin được xác định vào các đối tượng liên
quan và chuyển sang bước 5
1 2
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
79
Hình 5.8. Màn hình ghi nhận kế hoạch chi tiết- bước 5
Mơ tả : Màn hình ở bước 5 (hình 5.8) cho yêu cầu NSD xác định nhân viên
được phân cơng vào các cơng việc trong kế hoạch. Thơng tin đọc được về các
nhân viên này từ Project chỉ là tên (cĩ thể là tên tắt), khi đưa vào PMA NSD cần
xác nhận lại cụ thể là nhân viên nào, đồng thời chỉ rõ vai trị của nhân viên được
phân cơng trong cơng việc. Việc xác định này là bắt buộc .
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Nhấn nút “…” ở
một dịng thuộc
cột Mã NV
Hiển thị danh sách các nhân viên để NSD lựa chọn. Sau
khi NSD đã chọn, hiển thị tên nhân viên tương ứng vào
cột “Họ tên NV”
2 Nhấn nút “…” ở
một dịng thuộc
cột vai trị
Hiển thị danh sách các vai trị cĩ thể đảm nhận loại cơng
việc tương ứng với cơng việc ở dịng này. (hoặc tất cả
vai trị nếu cơng việc này chưa được xác định vai trị)
3 Nhấn nút “Tiếp” Gán thơng tin được xác định vào các đối tượng liên quan
và chuyển sang bước 6
1
2
3
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
80
Hình 5.9. Màn hình ghi nhận kế hoạch chi tiết- bước 6
Mơ tả : Màn hình ở bước 6 (hình 5.9) cho yêu cầu NSD nhập ngày giờ kế
hoạch được cập nhật lần cuối.
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Nhấn nút “Kết thúc” Ghi nhận tồn bộ thơng tin về kế hoạch, cơng
việc, phân cơng (cùng với các thơng itn bổ sung
đã xác định) và CSDL.
Thơng báo kết quả thực hiện (thành cơng hay bị
lỗi)
b) Màn hình thống kê chi phí dự án theo vai trị – một màn hình
thống kê :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
81
Hình 5.10. Màn hình thống kê chi phí dự án
Mơ tả : Màn hình thống kê chi phí dự án theo vai trị (hình 5.10) hiển thị các số
liệu thống kê về chi phí dự án, phân nhĩm theo từng vai trị và giai đoạn.
Các sự kiện chính cần xử lý :
STT Sự kiện Xử lý
1 Thay đổi đơn vị tính
chi phí
Tính tốn và hiển thị lại các cột chi phí theo
đơn vị mới
2 Nhấn nút “Thêm bớt
cột”
Hiển thị màn hình cho phép NSD thêm bớt các
cột cần hiển thị. Thêm bớt cột trên thống kê
theo ý NSD.
3 Nhấn nút “Xem biểu
đồ”
Chuyển sang phần màn hình xem biểu đồ, thể
hiện tỷ lệ chi phí theo từng loại so với tổng chi
phí dự án
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 5 : Thiết kế phần mềm
82
4 Nhấn nút “Xem trước” Hiển thị màn hình cho phép xem thống kê theo
khuơn dạng khi in
5 Nhấn nút “In” In thống kê.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 6 : Cài đặt và thử nghiệm
83
Chương 6 : Cài đặt và thử nghiệm
Chương này trình bày một số vấn đề liên quan đến quá trình cài đặt và thử
nghiệm : một số cơng thức tính tốn, mơi trường lập trình, các thư viện, kỹ thuật được
sử dụng và các trường hợp đã được thử nghiệm.
6.1. Một số cơng thức tính tốn được sử dụng :
Các cơng thức và thuật tốn ở phần này đều dựa trên kết quả khảo sát cách tính
tốn của MS Office Project, để đảm bảo rằng cách tính tốn của PMA phải
thống nhất với cách tính của MS Office Project.
a) Tính tổng thời lượng của một tập cơng việc:
V : tập các cơng việc
N : tập các ngày nghỉ (nghỉ lễ, các ngày nghỉ trong tuần)
Ngày bắt đầu = min{v.NgayBD : v ∈ V}
Ngày kết thúc = max{ v.NgayKT : v ∈ V}
D = Ngày bắt đầu
Tổng thời lượng = 0
Trong khi ( D < Ngày kết thúc)
Nếu D ∉ N
Tổng thời lượng +=D.Thời gian làm việc trong ngày
Cuối nếu
D = D+1(ngày)
Cuối Trong khi
b) Tính tổng thời lượng thực tế của một tập cơng việc:
Tổng thời lượng thực tế = ongDuKienTongthoilu
ukienThoiluongDvi
hucteThoiluongTvi
i
i ×∑
∑
.
.
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 6 : Cài đặt và thử nghiệm
84
Với: vi là cơng việc thứ i trong tập cơng việc.
TongthoiluongDukien : tổng thời lượng dự kiến, cĩ thể tính được bằng
cơng thức (a)
c) Tính tỷ lệ hồn tất tổng cộng cho một tập cơng việc:
Tỷ lệ hồn tất = ∑
∑ ×
i
i
enChiPhiDuKivi
enChiPhiDukivitTyLeHoanTavi
.
)..(
Với vi là cơng việc thứ i trong tập cơng việc
6.2. Một số XML request và reply cung cấp bởi PDS :
Như đã trình bày ở chương 3, để tránh sự phụ thuộc tuyệt đối vào CSDL của
Project Server, PMA sẽ khơng đọc kế hoạch trực tiếp từ CSDL của Project
Server mà thơng qua Project Data Service- PDS, một Web Service được Project
Server cung cấp.
PMA sẽ sử dụng SOAP (Simple Object Access Protocol), một nghi thức trao đổi
dữ liệu dựa trên XML, để gọi phương thức SoapXMLRequest của PDS. Thơng
qua phương thức này, PMA sẽ gửi đến PDS các request và nhận về các reply, cả
hai đều là XML.
Phần này sẽ trình bày các request và reply được sử dụng cho PMA
6.2.1. ProjectsStatus
Request này được PMA sử dụng để đọc danh sách các project hiện cĩ
trong Project Server
- Request :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 6 : Cài đặt và thử nghiệm
85
- Tham số:
ProjectType : loại project, sử dụng ProjectType = 0 (project thơng
thường)
Bỏ qua các tham số khác
- Reply:
Trong reply cần quan tâm đến :
Kết quả đọc ( thành cơng hay lỗi) trả về trong tag HRESULT và
STATUS
ProjectID (mã project), ProjectName (tên project), LastModified
(thời điểm cập nhật cuối)
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 6 : Cài đặt và thử nghiệm
86
6.2.2. ProjectData
Request này được PMA sử dụng để đọc tồn bộ thơng tin về một project
trong Project Server (bao gồm cả thơng tin về cơng việc và phân cơng)
- Request :
- Tham số:
ProjectID : Mã project cần đọc
ProjectName : Tên project cần đọc (khơng cần nếu đã cĩ mã)
ReturnUIDs : trả về mã của các đối tượng cơng việc, phân
cơng,…) hay khơng. Sử dụng ReturnUIDs = 1
- Reply:
-- Project Data --
Với “Project Data” là tồn bộ dữ liệu về kế hoạch.
Trong reply cần quan tâm :
Kết quả đọc ( thành cơng hay lỗi) trả về trong tag HRESULT và
STATUS
Dữ liệu về kế hoạch, bao gồm dữ liệu nằm trong các tag “Project”,
“Task”, “Resource” và “Assignment”. Các giá trị cần đọc và chuyển
đổi như sau :
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 6 : Cài đặt và thử nghiệm
87
a. Thơng tin chung về kế hoạch (Project)
STT Giá trị trả về Ý nghĩa
1 ProjectName Tên project
2 ProjectID Mã Project
3 Author Người lập
b. Cơng việc (Task)
STT Giá trị trả về Ý nghĩa
1 Name Tên cơng việc
2 ID Số thứ tự cơng việc
3 UID Mã cơng việc (duy nhất trên một project)
4 Start Thời điểm bắt đầu (định dạng
“yyyymmddhhmmss”)
5 Finish Thời điểm kết thúc (định dạng
“yyyymmddhhmmss”)
6 Work Chi phí dự kiến (tính bằng phút)
7 ActualWork Chi phí thực tế (tính bằng phút)
8 Duration Thời lượng dự kiến (tính bằng phút)
9 ActualDuration Thời lượng thực tế (tính bằng phút)
10 PercentWorkComplete Tỷ lệ hồn tất dự trên giờ làm (chi phí)
11 OutlineLevel Mức(cấp) của cơng việc
c. Nhân viên (Resource)
STT Giá trị trả về Ý nghĩa
1 Name Tên nhân viên
2 ID Mã nhân viên
KH
OA
C
NT
T –
Đ
H
KH
TN
Chương 6 : Cài đặt và thử nghiệm
88
d. Phân cơng (Assignment)
STT Giá trị trả về Ý nghĩa
1 UID Mã phân cơng (duy nhất trên một project)
2 TaskID Số thứ tự cơng việc
3 ResourceID Mã nhân viên
4 Start Thời điểm bắt đầu (định dạng
“yyyymmddhhmmss”)
5 Finish Thời điểm kết thúc (định dạng
“yyyymmddhhmmss”)
6 Work Chi phí dự kiến (tính bằng phút)
7 ActualWork Chi phí thực tế (tính bằng phút)
8 Units Đơn vị (tỷ lệ phần trăm thời gian làm việc
của nhân viên)
9 PercentWorkComplete Tỷ lệ hồn tất dự trên giờ làm (chi phí)
6.3. Mơi trường thực hiện và các phần mềm liên quan:
6.3.1. Mơi trường thực hiện :
- PMA là ứng dụng chạy trên Windows, được phát triển trên mơi trường
Visual Studio .NET 2003, dùng ngơn ngữ lập trình C#. NET .
- Sử dụng hệ quản trị CSDL SQL Server 2000.
- Sử dụng thư viện ADO.NET để lập trình truy xuất CSDL và quản lý dữ
liệu truy xuất được.
6.3.2. Các thư viện khác :
Bên cạnh sử dụng các thư viện được cung cấp trong bộ Microsoft Visual
Studio.NET, PMA cịn dùng thêm các thư viện control sử dụng cho .NET
do Component One cung cấp.
KH
OA
C
N
Các file đính kèm theo tài liệu này:
- Unlock-SVnet.vn-64. [Luận văn] Xây dựng công cụ hỗ trợ quản lý phát triển phần mềm - Nguyên Thảo.pdf