Bài giảng Phân tích & Thiết kế hệ thống - Chương 5: Quản lý các giai đoạn xây dựng hệ thống thông tin - Nguyễn Trần Phương
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
CHƢƠNG 5:
QUẢN LÝ CÁC GIAI ĐOẠN XÂY DỰNG HTTT
Chương này trình bày các nội dung trọng tâm:
- Chương này trình bày tóm tắt một số vấn đề về những việc phải làm trong
các giai đoạn xây dựng hệ thống thông tin và về tổ chức, kinh nghiệm khi thực
hiện một dự án tin học.
- Cung cấp một số kiến thức được chắt lọc từ bộ môn Quản lý dự án phần
mềm có liên quan đến kiến thức môn Phân tích thiết kế hệ thống thông tin nhằm bổ
trợ tốt hơn khi học sinh, sinh viên tốt nghiệp và công tác tại đơn vị phát triển phần
mềm.
5.1 QUẢN LÝ GIAI ĐOẠN LẬP KẾ HOẠCH, XÁC ĐỊNH YÊU CẦU
Về các mục tiêu dự án cần đạt được: Phân tích những mục tiêu phải đạt
được của dự án được thực hiện dựa trên sơ đồ hệ thống các vấn đề đã được lập
trước đó, gồm các việc:
Mô tả tình hình trong tương lai một khi mọi vấn đề đã được giải quyết;
Những trạng thái mong muốn và khả thi của các trạng thái có vấn đề trước
đây.
Lập sơ đồ phân cấp hệ thống các mục đích.
Sau các bước trên, mục đích trọng tâm cũng như các mục đích ở các mức cao hơn
của dự án đã bước đầu được xác định.
Về các giải pháp: Các giải pháp thay thế hiện trạng được xác lập dựa trên sơ
đồ hệ thống các vấn đề và sơ đồ hệ thống các mục đích của dự án vừa xây dựng
nên. Việc lựa chọn ra giải pháp tối ưu được thực hiện bằng cách so sánh chúng về
một số phương diện.
Về các yếu tố có thể gây rủ ro cho dự án: Phân tích các yếu tố nhạy cảm
không thể giúp ta tránh được hay làm yếu đi các yếu tố tương lai chưa biết cũng
như các yếu tố có thể gây rủi ro đối với dự án. Nhưng nó cho phép xác định (bằng
tính toán) sự thay đổi của các chỉ số hiệu quả kinh tế hay các chỉ số sinh lợi của dự
án gây ra bởi sự thay đổi của một hay một vài thông số liên quan. Đó là những yếu
tố có thể gây rủi ro cho dự án. Tất nhiên, các thông số đầu vào được lựa chọn để
khảo sát phải là các thông số mà giá trị của chúng có khả năng thay đổi thực sự
trong thực tế. Mặt khác, việc phân tích tác động của cùng một yếu tố rủi ro đối với
cùng một chỉ số kinh tế của các giải pháp khác nhau sẽ cho phép ta chọn ra được
một giải pháp ít rủi ro nhất.
Cách thức quản trị dự án hệ thống thông tin Triển khai dự án hệ thống
thông tin (HTTT) trong doanh nghiệp là một quá trình rất phức tạp, lôi cuốn nhiều
người tham gia và huy động nhiều nguồn lực, phải xử lý nhiều tình huống phát
sinh...
Nói chung, quản trị dự án bao gồm các quá trình: Lập kế hoạch; Giám sát
việc thực hiện dự án; đánh giá dự án. Trong đó: Lập kế hoạch dự án gồm 2 công
đoạn chính: Phân tích/Chuẩn bị lập kế hoạch và lập kế hoạch chi tiết.
Giáo viên biên soạn: Nguyễn Trần Phương
117
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Các yếu tố quan trọng khi lập kế hoạch dự án: Có 5 yếu tố cần quan tâm,
đó là: Con người, vấn đề của dự án, mục tiêu dự án, các giải pháp và các yếu tố
rủi ro.
Về con người: Con người luôn là yếu tố rất quan trọng của dự án. Các đối
tượng con người ở đây được hiểu là rất cả các cá nhân, nhóm người hay tổ chức...
có liên quan dưới mọi hình thức tới dự án. Để phân tích các đối tượng này nên
được phân chia thành các nhóm tùy theo đặc điểm mối liên quan của họ với dự án.
Phải làm rõ sự phân nhóm này và mối liên quan của các nhóm cũng như cá nhân
đối với dự án.
Về các vấn đề của dự án: Bất cứ dự án nào được thực hiện cũng nhằm giải
quyết một (hay nhiều) vấn đề đang tồn tại của một thực trạng nào đó. Phân tích vấn
đề nhằm đánh giá được đúng đắn và đầy đủ các vấn đề của dự án, đặt trong mối
quan hệ nhân quả với tình hình thực tại, để xác định được chính xác mục tiêu mà
dự án định đạt tới cũng như giải pháp thực hiện. Mặt khác, trong phân tích vấn đề
cũng cần làm rõ các hạn chế về thời gian, nhân lực và ngân sách thực hiện dự án.
Những dự án nhỏ (số người sản xuất từ 6 đến ít hơn 20) thì những dự án phần mềm
được tổ chức tốt nhất là thành những các đội phát triển nhỏ. Qui mô lý tưởng của
một đội phát triển là khoảng bốn đến sáu người sản xuất. Hầu hết các dự án được
tổ chức thành đội ngũ với mỗi đội ngũ được giao phó những chức năng đặc thù
trong phạm vi dự án. Các loại dự án khác nhau đòi hỏi những loại cơ cấu đội ngũ
khác nhau như chẳng hạn đội ngũ các nhà lập trình trung cấp đòi hỏi lãnh đạo đội
ngũ kỹ thuật trong khi đội ngũ chuyên gia có thể chỉ đòi hỏi lãnh đạo đội ngũ hành
chính. Đó là trách nhiệm của người quản lý dự án trong việc chọn lựa cơ cấu thích
ứng nhất cho dự án.
Giám sát và Đánh giá dự án: Bao gồm xác định phương pháp đánh giá
(hiệu quả kinh tế, kết quả thực hiện so với kế hoạch...) và tổ chức công việc đánh
giá. Giám sát việc thực hiện dự án là một khâu rất quan trọng của quá trình quản trị
dự án, có ảnh hưởng và tác dụng trực tiếp nhất tới sự thành công của dự án. Vì vậy,
nó đòi hỏi sự tham gia không chỉ của những người ở cương vị quản lý, mà còn của
những người thực hiện công việc trong dự án, thậm chí có thể của tất cả mọi thành
viên tham gia thực hiện dự án.
Ba điểm mấu chốt nhất để công việc giám sát dự án thực hiện được hiệu quả là:
o Thống nhất được phương thức thực hiện công việc giám sát và trao đổi
thông tin thích hợp và thực tế, sao cho mọi thành viên tham gia công việc này có
thể thực hiện được dễ dàng, nhanh chóng và chính xác nhất.
o Phát hiện được càng sớm càng tốt sai lệch so với kế hoạch của những
nhiệm vụ quan trọng, chủ chốt và tìm ra đúng các nguyên nhân của những sai lệch
đó.
o Có biện pháp điều chỉnh thích hợp và khả thi để đảm bảo đạt được các
mục tiêu của dự án.
Còn việc đánh giá dự án là nhằm đánh giá một cách định lượng về hiệu quả
của dự án (được quy ra hiệu quả kinh tế); Mức độ thành công/Thất bại của dự án.
Quá trình đánh giá dự án gồm:
Giáo viên biên soạn: Nguyễn Trần Phương
118
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
o Xác định các chỉ tiêu và chỉ số cần đánh giá;
o Xác định các phương pháp đánh giá sẽ được sử dụng;
o Kiểm tra nguồn cung cấp các dữ liệu đầu vào cần thiết;
o Thu thập dữ liệu và thực hiện tính toán;
o Đánh giá kết quả thu được và rút ra kết luận cần thiết;
o Bổ sung thêm các chỉ số đánh giá khác (nếu cần).
Các phương pháp đánh giá dự án chủ yếu dựa trên các chỉ tiêu kinh tế. Bốn
phương pháp thường dùng là:
o Phân tích chi phí - lợi nhuận;
o Tương quan thu - chi;
o Giá trị tư bản;
o Lãi suất (tỉ suất thu hồi) nội tại;
Nội dung và trình tự tiến hành ở trên là tổng quát cho đánh giá dự án nói chung.
Tuy nhiên, tùy theo yêu cầu cụ thể và đặc trưng của từng dự án có thể chỉ cần tiến
hành một phần trong số các nội dung đó. Ngoài ra, cũng có thể tiến hành công việc
đánh giá tại từng giai đoạn nhất định của dự án
5.1.1 Xây dựng nhóm
Phần này đề cập đến những vấn đề đó về quản lý con người chủ yếu những
vấn đề liên quan đến dự án phần mềm. Về thảo luận khái quát hơn các phương
pháp quản lý và động viên con người theo mô hình tổ chức đề xuất dưới đây:
Trưởng quản
lý dự
Phó quản lý
dự án
Thư ký
Kỹ sư hệ
thống
Nhóm thử
nghiệm độc
Bảo hiểm chất
lượng
Khống chế cấu
hình
Đội phát triển 2
Đội phát triển 1
Đội phát triển n
Hình 5.1: Mô hình cơ cấu tổ chức để triển khai một dự án tin học.
Những tổ chức khối tháp như trên tạo nên một trật tự rõ ràng xác định cụ thể
trong đó mọi cá nhân biết được cương vị của chính mình và cương vị của những
người trên và dưới họ. Khi đề bạt và qui chế đóng vai trò chủ yếu trong hình thành
động cơ. Do đó tổ chức khối tháp là có hiệu quả nhất. Nhiều những yếu tố khác
Giáo viên biên soạn: Nguyễn Trần Phương
119
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
hình thành động cơ ý thức hoàn thành khen ngợi và quí trọng. Mặc dù đề bạt và qui
chế không phải luôn luôn là động cơ hiệu quả nhất, người quản lý dự án rất hiếm
khi từ bỏ bất cứ công cụ quản lý nào nhưng tổ chức khối tháp thường là tốt nhất.
Cơ cấu đội ngũ: Những đội ngũ lớn hạn chế khả năng của lãnh đạo đội được hoạt
động là người sản xuất và do đó tăng tổng phí quản lý và hạn chế dính líu kỹ thuật
của lãnh đạo đội vào dự án Các đội ngũ đem lại cho người quản lý dự án nhiều lợi
điểm, bao gồm :
o Quản lý dễ dàng và tốt hơn : Cơ cấu đội ngũ hỗ trợ việc uỷ nhiệm thẩm
quyền.
o Trao đổi thông tin và ý kiến hiệu quả hơn do làm quen được rộng hơn
trong đội ngũ với nhiệm vụ của mỗi thành viên.
Trong các dự án nhỏ, có sự đồng nhất mạnh hơn với dự án lớn, ở những dự
án lớn những người sản xuất có xu hướng cảm thấy họ chính là một trong số rất
nhiều người mà đóng góp của họ cho dự án đang tiến hành không ai hay. Dự án
nhỏ thì điều đó là ngược lại do đó đội ngũ gắn bó hơn, tận tụy hơn.
Lãnh đạo đội: Lãnh đạo đội ngũ được coi là kênh thông tin chính giữa người quản
lý dự án với các thành viên đội. Điều này không có nghĩa là không có thông tin
trực tiếp giữa người quản lý cấp trên của dự án với các thành viên đội. Dù sao nếu
mọi thông tin là trực tiếp thì như thế điều này hẳn làm cho những mục đích chính
của cơ cấu đội bị thất bại: Uỷ nhiệm thẩm quyền và trách nhiệm được hiệu quả.
Vai trò của lãnh đạo đội là :
o Đại diện quản lý dự án thông qua uỷ nhiệm thẩm quyền
o Đại diện đội trước người quản lý dự án
o Đại diện đội trước các đội dự án khác và các chức năng tổ chức.
Người lãnh đạo đội cũng có thể có những trách nhiệm khác, tuỳ theo thể loại cơ
cấu đội Hình 5.2 cho những thí dụ hai cơ cấu đội khác nhau (những cơ cấu đội này
được bàn sau). Mọi lãnh đạo đội lãnh đạo hành chính không phải tất cả lãnh đạo
đội lãnh đạo kỹ thuật đội ngũ kỹ sư trưởng đòi hỏi khả năng lãnh đạo kỹ thuật theo
đó đòi hỏi thành viên kỹ thuật. Cả đội ngũ dân chủ và đội ngũ kỹ sư trưởng đòi hỏi
khả năng lãnh đạo đội về hành chính.
Đội trưởng
Đội viên
Đội viên
Đội viên
Đội viên
Giáo viên biên soạn: Nguyễn Trần Phương
120
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Hình 5.2.a: Tổ chức đội phát triển theo kiểu dân chủ
Đội trưởng
Đội viên
Đội viên
Đội viên
Đội viên
Hình 5.2.b: Tổ chức đội phát triển theo kiểu kỹ sư trưởng
Các đội dân chủ: Nghiêm túc mà nói, các đội dân chủ không có lãnh đạo, chức
năng của vai trò lãnh đạo đội là điều phối viên nhiều hơn, ở các đội dân chủ, các
lãnh đạo đội giành một phần nhỏ thời gian của họ cho những việc sau:
o Việc đại diện đội trong thông tin với quản lý dự án và các đội khác.
o Phối hợp hoạt động trong đội
o Sử lý các nhiệm vụ hành chínhkhác như báo cáo, lập trình và giám sát hoạt
động.
Mọi quyết định kỹ thuật trong một đội dân chủ được cả đội thực hiện lãnh đạo đội
triệu tập các cuộc họp trong đó những vấn đề gay cấn và cấp thiết được đưa ra thảo
luận. Nhưng mọi thành viên đội tham gia trong quá trình ra quyết định và chịu
trách nhiệm về đầu ra. Các đội dân chủ thường thích ứng cho các nhóm nhà sản
xuất thâm niên có kinh nghiệm. Theo đó vai trò của lãnh đạo đội giảm tổng phí
hành chính bằng cách giao nhiệm vụ hành chính của đội cho một thành viên duy
nhất. Cơ cấu đội dân chủ đặc biệt không thích hợp cho các nhóm hỗn hợp, hay
nhóm bao gồm chủ yếu những người sản xuất thanh niên. Trong cả hai trường hợp
đó, vai trò lãnh đạo rõ ràng là cần thiết.
Các đội kỹ sư trưởng: Đội kỹ sư trưởng (cũng gọi là đội các lập trình) tiến hành
lãnh đạo đội phát triển. Vai trò của lãnh đạo đội vừa là điều phối viên (như trong
trường hợp đội dân chủ) vừa là hướng dẫn trong những dự án phức tạp, lãnh đạo
đội có thể được yêu cầu giành đến 50% thời gian vào những hoạt động kỹ thuật và
hành chính.
Hoạt động chính của lãnh đạo đội kỹ sư trưởng là:
o Giao nhiệm vụ và trách nhiệm cho các thành viên đội
o Giám định công việc của các thành viên đội.
o Góp ý và hướng dẫn các thành viên đội.
o Hoạt động hành chính và phối hợp (tương tự như lãnh đạo đội dân chủ).
Giáo viên biên soạn: Nguyễn Trần Phương
121
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Các đội kỹ sư trưởng là thích ứng cho đội hỗn hợp và đội chủ yếu có những người
sản xuất có thâm niên hay không có kinh nghiệm. chức năng của lãnh đạo đội với
tư cách người quản lý hàng đầu và do đó phải được đào tạo thích hợp về kỹ thuật
quản lý cơ bản. Các đội kỹ sư trưởng cũng có thể thành công trong những đội
người sản xuất đàn anh và có kinh nghiệm nhưng vai trò thường không cần thiết
khi cơ cấu này được vận dụng cho một đội các kỹ sư có kinh nghiệm thì việc người
lãnh đạo đội có những kỹ năng quản lý cơ bản lại quan trọng gấp hai nếu không
đụng chạm có thể phát triển giữa thành viên đội và người lãnh đạo đội. Về mặt
này, lãnh đạo đội ngũ người chuyên môn có kinh nghiệm lại khó hơn là lãnh đạo
đội ngũ người mới vào nghề.
Các đội chuyên gia: Đội ngũ chuyên gia là những đội ngũ nhỏ được thành lập để
giải quyết những vấn đề đặc thù trong một dự án. Một đội ngũ chuyên gia có thể
được thành lập trong quá trình phát triển dự án khi có vấn đề phức tạp nảy sinh và
sau đó đội có thể được giải tán khi vấn đề được giải quyết (thường thì những dự án
gia công phần mềm người ta hay áp dụng mô hình này). Trong một số trường hợp,
các đội chuyên gia có thể hỗ trợ dự án suốt chu kỳ phát triển. Mục tiêu của đội
chuyên gia là tập trung giám định trong một lĩnh vực riêng của dự án.
Lấy thí dụ, ta hãy xét một hệ thống thủ quĩ ngân hàng tự động có hai hệ thống phụ
chủ yếu : Conputer trung tâm của ngân hàng và thủ quỹ tự động từ xa. Kế hoạch
phát triển cho hai hệ thống phụ đó đã giao việc phát triển của mỗi hệ phụ cho một
đội riêng nhưng qui mô của dự án không thể đảm bảo có một đội hợp nhất riêng.
Cả hai đội đã sử dụng bộ mô phỏng thực hiện thử nghiệm và hợp nhất hệ thống
phụ ban đầu. Kết quả là khi hai hệ thống phụ được hợp nhất với nhau, thông tin
giữa hai hệ thống không có.
Trong những tình huống như thế bao giờ cũng có nguy cơ là một trong hai
đội tìm kiếm vấn đề trong công việc của đội kia. Cho dù hai đội hợp tác với nhau
tốt, khác biệt trong thực hiện (hay trong thiết kế) có thể làm cho vấn đề khó được
giải quyết và vì kịch trình bắt đầu trở nên phức tạp, điều này trở thành mối quan
ngại chủ yếu cho người quản lý dự án.
Với những trường hợp như thế, người quản lý dự án nên quyết định thành
lập đội chuyên gia để giải quyết vấn đề thông tin. Đội dự án và hai kỹ sư dự án
chung hai đội. Sau đó đội chuyên gia có thể tập trung cố gắng của mình vào việc
giải quyết vấn đề càng nhanh càng tốt. Trong khi hai đội kia tiếp tục các hoạt động
phát triển khác. Sau khi vấn đề thông tin giữa hai hệ thông phụ đã được giải quyết,
đội chuyên gia thể giải tán về một số mặt, các đội thử nghiệm độc lập và đội bảo
hiểm chất lượng được coi là đội chuyên gia. Các đội thử nghiệm độc lập lúc đầu
hoạt động trong các giai đoạn hợp nhất và thử nghiệm của chu kỳ phát triển. Đội
bảo hiểm chất lượng là một thí dụ về đội chuyên gia hoạt động xuyên suốt chu kỳ
phát triển của dự án.
Đội chuyên gia thường có những kỹ sư có kinh nghiệm cao trong những
trường hợp như thế điều chắc chắn nhất là đội được tổ chức như là đội dân chủ.
Trong thí dụ trước, đội có thể là đội dân chủ hay có thể do một chuyên gia thông
tin đàn anh lãnh đạo.
5.1.2 Bố trí nhân sự, phân công nhiệm vụ
Giáo viên biên soạn: Nguyễn Trần Phương
122
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Rõ ràng cơ cấu tổ chức của dự án tuỳ thuộc ở loại dự án được phát triển. Một số
vấn đề phải xem xét là :
Qui mô dự án : Dự án càng lớn, tổ chức mô hình càng quan trọng. Những dự án
lớn có tổng phí thông tin và phối hợp đáng kể về con người do đó đòi hỏi nhiều
chức năng hỗ trợ hơn.
Dự án phát triển phần mềm/phần cứng: Việc phát triển liên tiếp phần cứng và
phần mềm không dễ dàng. Việc lập kế hoạch, hợp nhất và thử nghiệm lại càng
phức tạp hơn và đòi hỏi những nhóm hỗ trợ tận tụy.
Các hệ thống tin cậy cao: Bất cứ hệ thống nào nhạy cảm với các vấn đề độ
tin (như hệ thống quân sự hay cứu nạn) đòi hỏi cố gắng chủ yếu về bảo hiểm chất
lượng. Chất lượng cũng là một nhận định quan trọng trong nhiều sản phẩm phần
mềm đưa ra thị truờng (thí dụ bộ chương trình thông tin). Những loại dự án đó đòi
hỏi một tổ chức bảo hiểm chất lượng riêng.
Cơ cấu tập đoàn: Tổ chức dự án phụ thuộc rất nhiều vào cơ cấu tổng thể của
công ty trong đó dự án được phát triển. Nhiều những chức năng hỗ trợ dự án có thể
được các nhóm tập trung hoá trong công ty cung cấp. Trên thực tế, những dịch vụ
cơ bản như dịch vụ tài chính văn phòng pháp lý thường do tổ chức bà con hay của
tập đoàn cung cấp.
Các G.đốc dự án
Giám đốc dự
Giám đốc dự
án A
án B
Các G.Đ Chức năng
Giám đốc thử
nghiệm
GĐ bảo hiểm
chất lượng TN
Đội thử
nghiệm
Đội thử
nghiệm
GĐ công trình
phần mềm
Đội bảo hiểm
chất lượng
Đội bảo hiểm
chất lượng
Đội 2
Đội 3
Đội 2
Đội 3
Đội 1
Đội 1
Hình 5.3: Biểu đồ tổ chức
Cơ cấu tập đoàn thường định ra một trong hai loại tổ chức dự án cơ bản: Ma
trận hay khối tháp. Hình 5.3 mô tả cơ cấu của một tổ chức ma trận (so sánh với cơ
Giáo viên biên soạn: Nguyễn Trần Phương
123
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
cấu khối tháp trong hình 5.1 hoặc sơ đồ rút gọn hình 5.4).Trong một tổ chức ma
trận tập đoàn, người quản lý dự án quản lý những hoạt động kỹ thuật của đội ngũ
dự án trong khi dính líu của anh hay chị ấy trong những vấn đề nhấn sự phi kỹ
thuật (thí dụ duyệt lương, đề bạt, đào tạo) thì rất ít.
Có nhiều cách tổ chức dự án phần mềm. Dự án càng lớn thì cơ cấu tổ chức
càng trở nên gay cấn hơn. Những dự án tổ chức tồi gieo rắc lộn xộn và lộn xộn dẫn
đến dự án thất bại.
NGƯỜI QUẢN LÝ DỰ ÁN
ĐỘI PHÁT TRIỂN DỰ ÁN
CÁC CHỨC NĂNG TRỢ GIÚP
DỰ ÁN
Hình 5.4: Biểu đồ tổ chức dự án lớn phần mềm/ phần cứng
Hình 5.5 mô tả cơ cấu cơ bản của dự án trong đó bên dưới người quản lý dự án
đúng là có 2 chức năng tổng quát phát triển và hỗ trợ.
Trưởng quản
lý dự án
Phó quản lý
dự án
Thư ký
Kỹ sư hệ
thống
Nhóm thử
nghiệm độc
Bảo hiểm chất
lượng
Khống chế cấu
hình
Đội phát triển 2
Đội phát triển 1
Đội phát triển n
Hình 5.5: Biểu đồ tổ chức dự án phần mềm
Giáo viên biên soạn: Nguyễn Trần Phương
124
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Hình 5.6 Mô tả biểu đồ tổ chức chi tiết kể cả những chức năng hỗ trợ chủ yếu. Cơ
cấu tổ chức này thích ứng với những dự án lớn (với nhân sự trên 20). Những dự án
nhỏ có thể không đòi hỏi phó quản lý dự án hay các nhóm kiểm tra cấu hình và bảo
hiểm chất lượng riêng biệt. Những dự án rất lớn (nhân sự từ 40 người trở lên)
thường có thể được quản lý dễ dàng hơn khi phân dự án thành những dự án phụ.
Trưởng quản
lý dự án
Phó quản lý
dự án
Thư ký
Kỹ sư hệ
thống
Nhóm thử
nghiệm độc
Bảo hiểm
chất lượng
Khống chế cấu
hình
Đội phát triển 2
Đội phát triển 1
Đội phát triển n
Đội
Đội
Đội
Đội
Đội
Đội
Đội
Đội
Đội
Hình 5.6: Biểu đồ tổ chức dự án phần mềm/phần cứng lớn
Bên cạnh việc phát triển một dự án phần mềm còn có quá trình qui hoạch, tổ
chức, tuyển nhân sự, giám sát, kiểm tra và lãnh đạo dự án phần mềm. Hiếm khi
mọi nhiệm vụ đều được quản lý một cách chặt chẽ. Trên thực tế nhiều hoạt động
kiểm tra và giám sát đều có thể được ủy thác cho các nhóm hỗ trợ dự án. Những
nhóm hỗ trợ này không chỉ giám định cho quản lý dự án và kỹ sư phát triển bằng
những nhiệm vụ hỗ trợ. Họ cũng thực hiện những nhiệm vụ đó tốt hơn bằng cách
tập trung mọi cố gắng của họ vào những chức năng hỗ trợ đặc trưng. Có nhiều loại
chức năng hỗ trợ dự án.
Dịch vụ thư ký, hỗ trợ hành chính xuất bản và cung cấp tài liệu là những thí
dụ về chức năng hỗ trợ không kỹ thuật;
Thử nghiệm, kiểm tra cấu hình, công nghệ hệ thống quản lý hội nhập và bảo
hiểm chất lượng là những thí dụ về chức năng hỗ trợ kỹ thuật.
Dự án càng lớn và càng phức tạp lại sẽ đòi hỏi chức năng hỗ trợ nhiều hơn. Chẳng
hạn, một dự án lớn thường có tổ chức kiểm tra chất lượng của nó trong khi một dự
án nhỏ có thể chia xẻ chức năng đó với các dự án khác. Tương tự, nhiều tổ chức
duy trì nhóm thử nghiệm độc lập mà vai trò là thử nghiệm một sản phẩm phần
Giáo viên biên soạn: Nguyễn Trần Phương
125
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
mềm trước khi đưa ra ở những dự án lớn, nhóm thử nghiệm độc lập là một bộ phận
của đội dự án và tham gia trong thử nghiệm và qui hoạch thử nghiệm xuyên suốt
chu trình phát triển.
5.1.3 Lập kế hoạch tiếp cận vấn đề
Nhiều đối tượng phức tạp có thể được xem là một bộ vô vàn đối tượng đơn giản
hơn hợp thành. Một thí dụ thích hợp là một hoá chất hình thành từ nhiều phân tử
khác nhau mỗi phân tử được tạo thành khi phối hợp nhiều nguyên tử khác nhau.
Các nguyên tử mặc dầu bản thân phân chia được có thể được coi là phần tử nhỏ
nhất của một hoá chất. Theo cách đó, tương tự cho các dự án phức tạp có thể được
phân thành những thành phần đơn giản hơn. Trong khi toàn bộ dự án có thể khó
quản lý thì mỗi thành phần sẽ dễ xử lý hơn những dự án phần mềm có thể được
phân thành những thành phần nhỏ hơn nhằm dự tính tốt hơn về khối lượng công
việc hoặc nhằm điều khiển các hoạt động của các đội phát triển khác nhau.
Việc phân giải dự án phần mềm là một trong những nhiệm vụ đầu tiên của
người quản lý dự án phần mềm. Các phương pháp phân giải có thể khác nhau, tuỳ
theo mục tiêu thực sự của người quản lý dự án. Việc phân tích dự án theo chức
năng có thể không như là phân tích thiết kế. Phân tích chức năng chia dự án thành
những thành phần cơ bản của nó theo cách nhìn của người dùng trong khi phân
tích thiết kế chia dự án thành thành phần hay mô đun lập trình cơ bản. Nói tóm lại
Phương pháp chính là “Chia để trị”.
Tinh chế từng bước một:
Theo trực giác có vẻ không hợp lý khi tìm cách minh định mọi thành phần
dự án trong một bước duy nhất. Rõ ràng một qui trình lặp có thể dần dần cung cấp
nhiều chi tiết hơn, hẳn là dể sử dụng hơn. Những phương pháp lặp thuộc loại này
được gọi là tinh chế từng bước một vì sự phân giải được tiếp tục tinh chế ở mỗi
bước kế tục
Giáo viên biên soạn: Nguyễn Trần Phương
126
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Hệ thống {Dự án}
Hợp phần 1
Hợp phần 2
Hợp phần n
1.1
1.2
2.
2.1
2.2
2.
n.1
n.2
n.
Hình 5.7: Phân giải phần mềm bằng tinh lọc từng bước
Hình 5.7 trình bày minh họa tổng quát về tinh chế từng bước một. Hệ thống
ban đầu được phân thành ba thành phần cấp cao và rồi mỗi thành phần cấp cao lại
được phân tiếp thành các thành phần cấp thấp hơn, và cứ thế cho đến khi đạt được
cấp thành phần thấp nhất.
Trong phân giải dự án từng bước, mỗi thành phần phân giải thành những
thành phần ở trực tiếp dưới nó sao cho mỗi bước phân giải đều mô tả toàn bộ hệ
thống nhưng ở mức chi tiết khác trong hình 5.5 các hợp phần 1,2 và 3 tạo nên hệ
thống hoàn chỉnh. Để được chi tiết hơn, chúng ta lấy bước phân giải tiếp và thấy
các thành phần 1.1,1.2,2.1,2.2,2.3,3.1 và 3.1 biểu thị toàn bộ hệ thống.
Sơ đồ tinh chế từng bước một tương tự như biểu đồ một hệ thống tôn ti trật
tự. Dù sao điều quan trọng là phải hiểu rằng tinh chế từng bước là cơ bản khác
nhau vì các khối cấu thành của biểu đồ khác nhau. Sơ đồ hệ thống tôn ti mô tả mối
quan hệ tôn ti giữa các thành phần khiến cho mỗi thành phần trong sơ đồ tương
ứng thực sự với một thành phần thực trong hệ thống. Dù sao sơ đồ tinh lọc từng
bước, thành phần cấp cao hơn chỉ là tên đặt theo qui ước cho một nhóm các thành
phần thực xuất hiện ở ngay dưới nó.
Phân giải chức năng:
Việc phân giải theo chức năng một dự án phần mềm là sự phân chia hệ
thống thành những thành phần theo hoạt động của nó như người dùng nhận định.
Việc phân giải theo chức năng là một bộ phận của pha yêu cầu của dự án. Mục tiêu
của pha này là xác định mọi đặc điểm của hệ thống theo cách nhìn của người dùng.
Ở các quyết định thực hiện có thể từng lúc được đưa ra trong giai đoạn yêu cầu và
được coi là yêu cầu thực hiện. Điều này có thể bao gồm đặc điểm như là loại máy
tính đối tượng, ngôn ngữ lập trình được sử dụng hay phương pháp truyền thông
Giáo viên biên soạn: Nguyễn Trần Phương
127
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
được dùng tốt hơn hết là nên hoãn, các quyết định thực hiện càng chậm càng hay
cho đến pha thiết kế.
Phân giải thiết kế:
Phân giải thiết kế của một hệ thống phần mềm là phân chia hệ thống thành
những thành phần cấp thấp khớp với thành phần phần mềm thực sự của hệ thống.
Trong phân giải thiết kế hoàn toàn của một hệ thống phần mềm, các thành phần
thấp nhất tương ứng với các mô đun lập trình (thông thường là các thủ tục, chương
trình con hay chức năng chương trình).
Đúng như pha yêu cầu đi trước giai đoạn thiết kế việc phân giải chức năng
của một hệ thống phần mềm thông thường đi trước việc phân giải thiết kế. Phân
giải chức năng thường cung cấp nhiều thông tin cần thiết cho việc phân chia tiếp
hệ thống đó thành những thành phần thực hiện.
Trên thực tế, phân giải chức năng thường là nơi tốt để khởi sự thiết kế một
hệ thống phần mềm vì thành phần chức năng chủ yếu của một hệ thống thường
tương ứng với phân chia ban đầu hệ thống đó thành những hệ thống con hay thành
phần mức cao. Về cơ bản phân giải thiết kế tạo ra hai loại thành phần hệ thống
thành phần cấp cao và mô đun cấp thấp hơn. Các tiêu chuẩn phát triển phần mềm
khác nhau sử dụng thuật ngữ khác nhau để nhận biết các cấp phân giải khác nhau.
Một hệ thống phân giải hoàn toàn với mọi thành phần cấp thấp của nó,
không phải bao giờ cũng dễ nắm bắt, điều này đặc biệt đúng trong sự trình bày hệ
thống lúc duyệt dự án khi hệ thống cần được những người không dính líu vào việc
thiết kế nó nhanh chóng hiểu được. Trong những trường hợp như thế, kỹ thuật tinh
lọc từng bước là phương pháp thuận lợi để trình bày tuần tự chi tiết tăng dần bằng
cách lúc đầu chọn thấy cấp phân giải đầu tiên và rồi chầm chậm phát hiện những
cấp tiếp theo.
5.1.4 Xây dựng các mối quan hệ
Việc phát triển phần mềm có thể khống chế được. Có những phương pháp,
những kỹ thuật, những tiêu chuẩn và các công cụ khi được vận dụng đúng thì
chúng thúc đẩy việc phát triển thắng lợi dự án phần mềm với ba mục tiêu không
thể quên để phát triển phần mềm.
Theo đúng lịch trình.
Trong phạm vi ngân sách.
Theo yêu cầu.
Như đã trình bày trong chương 2 thì ngay lúc đầu tiếp cận nhà phát triển
chưa thể có ngay bản hợp đồng kinh tế được ký kết trong tay. Phía nhà phát triển
dự án phải tự bỏ chi phí để khảo sát tạm thời nhằm kiểm tra hiện trạng, ít nhất là về
mặt tổ chức, trang thiết bị và trình độ, cũng như khả năng sẵn sàng cho việc tin học
hóa và cuối cùng là khả năng tài chính của đơn vụ có nhu cầu tin học hóa. Rõ ràng
để làm đúng Theo yêu cầu mà chỉ Trong phạm vi ngân sách thì cần phải thương
thảo khá nhiều, điều đó cũng tức là cần xây dựng các mối quan hệ bao gồm:
Giáo viên biên soạn: Nguyễn Trần Phương
128
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Xây dựng các nguyên tắc làm việc bao gồm: Nguyên tắc giữa các đối tác;
Nguyên tắc giữa cá nhân thuộc nhà phát triển với tổ chức hoặc đơn vị có nhu cầu
và ngược lại; Nguyên tắc làm việc của các cá nhân của các phía.
Xây dựng kế hoạch làm việc giữa các bên: Thống nhất các cuộc hẹn làm
việc trong tương lai gần; Phác thảo sơ bộ kế hoạch phát triển dự án và các cuộc hội
thảo chia sẻ thông tin nếu cần.
Thắng lợi hay thất bại của dự án không chỉ liên quan đến ba mục tiêu phát
triển cơ bản trên nhưng cũng liên quan cả đến kỳ vọng của khách hàng: Một khách
hàng có thể hài lòng với đầu ra của một dự án trong khi khách hàng khác lại có thể
không. Do đấy, thành công của dự án được xác định tối hậu ở sự hài lòng của
khách hàng.
Một trong những trở ngại mà các nhà quản lý dự án thường phải khắc phục
là thiếu những phương pháp phát triển hiện đại. Mọi lập luận chống lại các phương
pháp luận phát triển mới chí có thể bác bỏ sau khi có sự chuẩn bị đầy đủ. Bên cạnh
đó cũng phải trù liệu một số vấn đề tranh cãi là đặc biệt cho phát triển phần mềm.
Quan tâm đúng mức đến các rủi ro, bởi vì phát triển phần mềm mang đến nhiều rủi
ro hơn bất cứ các lĩnh vực khác của công nghệ.
Phí cộng thêm và giá cố định là hai trong số mối quan hệ theo hợp đồng cổ
truyền giữa người phát triển và khách hàng. Có nhiều biến thức của hai mối quan
hệ cơ bản đó kể cả các ghép nối phù hợp với các dự án đặc trưng.
Một số trong những quan hệ đó liên kết với vai trò của khách hàng và người
phát triển nhằm tạo nhiều yếu tố kích thích hơn cho người phát triển hỗ trợ mục
tiêu của khách hàng ngoài những tránh nhiệm theo hợp đồng.
Những loại khác của quan hệ khách hàng - người phát triển bao gồm:
Phối hợp giá cố định và phí cộng thêm
Liên doanh
Thỏa thuận bản quyền
Cam kết lâu dài
Liên doanh là những trường hợp mà ranh giới giữa khách hàng và người
phát triển có thể trở nên mờ ảo và phiền thay những thuận lợi và bất lợi thảo luận
trước đây có thể không vận dụng được. Có nhiều trường hợp mà một số hình thức
liên doanh có thể là mong muốn cho hai bên như khi người phát triển muốn duy trì
quyền về sản phẩm, hay khi người phát triển chung sức với khách hàng tài trợ một
phần của cố gắng phát triển.
Có một cách mà khách hàng có thể chào người phát triển tham gia vừa phải
vào mặt kinh doanh của dự án là bằng cách thay thế bản quyền coi như thanh toán
một phần. Điều này tạo nên qui mô bổ sung cho lợi ích của người phát triển trong
thành công của dự án. Bản quyền thông thường là ở chỗ thất bại của dự án có thể
tạo nên ít lợi nhuận cho người phát triển hơn là một hợp đồng giá cố định thẳng
thừng và thắng lợi của dự án sẽ làm tăng lợi nhuận của người phát triển.
Mối quan hệ lâu dài thường là quan trọng cho người phát triển. Trong nhiều
trường hợp, những cam kết dài hạn cũng nằm trong lợi ích của khách hàng. Điều
Giáo viên biên soạn: Nguyễn Trần Phương
129
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
này xảy ra khi người phát triển do gắn bó ở hợp đồng ban đầu, giành được lợi thế
chủ yếu, qua kiến thức thu lợm, đối với những người khác cho công việc phát triển
tiếp sau. Rõ ràng khi người phát triển hoàn thành thắng lợi một dự án lớn và phức
tạp, anh ta có được một lợi thế đáng kể so với các công ty khác về các tăng cường
trong tương lai của dự án đó. Cam kết lâu dài theo đó có thể có lợi ích tương hỗ
cho cả hai bên trong đó khách hàng đảm bảo các dịch vụ sau này của người phát
triển và người sản xuất đảm bảo cam kết thu nhập lâu dài.
5.1.5 Ký kết các thỏa thuận tài chính, kỹ thuật
Hợp đồng phí cộng thêm:
Phí cộng thêm là mối quan hệ theo hợp đồng theo đó người phát triển được
trả cho chi phí dịch vụ đã làm và thêm vào đấy được phép hưởng mức lời thỏa
thuận. Điều này thực ra giống như cho thuê ô tô: khách hàng trả cho số thời gian xe
được sử dụng (theo giờ, ngày, tuần v.v...) và cho mọi chi phí khác như bảo hiểm và
xăng. Theo thế trong một hợp đồng phí cộng thêm, tổng phí của một dự án chỉ
được biết sau khi dự án đã hoàn thành.
Hợp đồng phí cộng thêm phải bao gồm các điều khoản sau:
Danh sách những người được giao làm dự án.
Xác định công việc.
Tỷ lệ phần trăm giao việc cho mỗi người.
Mức công việc hàng giờ hay hàng ngày cho mỗi người.
Tổng phí hành chính.
Chi phí được phép để được bồi hoàn.
Thủ tục làm hóa đơn.
Thủ tục thanh toán.
Thủ tục kết thúc.
Hợp đồng giá cố định:
Hợp đồng giá cố định là một cam kết của người phát triển sẽ cung cấp sản
phẩm hay dịch dụ thỏa thuận với phí thỏa thuận trong phạm vi lịch trình thỏa
thuận. Điều này tương tự với mua tíc kê xe buýt theo đó công đi xe buýt thỏa thuận
đưa khách hàng đến nơi nhất định trong phạm vi thời gian biểu đã công bố với phí
thỏa thuận. Tất nhiên, du khách có thể chọn thuê xe chứ không mua tic kê xe buýt
và rồi tự mình lái đến nơi của mình. Dù sao, điều này có thể trở nên tốn kém hơn
và đòi hỏi ở người du khách đôi chút kỹ năng và kiến thức trước như kỹ năng lái
xe và kiến thức về hành trình đến nơi. Nếu du khách (hay khách hàng) phải quyết
định giữa việc tự mình tạo ra dịch vụ và việc hợp đồng với ai đó để cung cấp dịch
vụ.
Hợp đồng giá cố định chỉ có thể được vận dụng cho một dự án xác định rõ.
Cả khách hàng và người sản xuất phải có khả năng xác định sản phẩm hay dịch vụ
cuối cùng mong muốn. Một khi điều này để thực hiện được, một trong những yếu
kém chính của hợp đồng cố định sẽ được khắc phục.
Lợi ích của hợp đồng giá cố định cho người phát triển là:
Khống chế đầy đủ quá trình phát triển.
Giáo viên biên soạn: Nguyễn Trần Phương
130
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Lợi ích kinh doanh có thể cao hơn.
Cam kết cho dự án trọn vẹn.
Cam kết cho dự án trọn vẹn là ưu việt đáng kể so với hợp đồng phí cộng
thêm ở đó nó có thể kết thúc bất cứ lúc nào tùy sự xét đoán của khách hàng.
Tất nhiên, hợp đồng giá cố định cũng có một số bất lợi cho người phát triển, bao
gồm:
Đảm nhận rủi ro kinh doanh và phát triển.
Bất đồng tiềm ẩn với khách hàng do:
. Thay đổi yêu cầu liên tiếp.
. Tiêu chuẩn hoàn thành dự án.
. Giải thích yêu cầu.
Một tổ chức phần mềm thắng lợi sẽ thường chuộng hợp đồng giá cố định. Đó
thường là những dự án tạo dựng danh tiếng chuyên môn của công ty và phát sinh
lợi tức đảm bảo tăng trưởng. Bất hạnh là những dự án này cũng gây ra lỗ và
thường tác hại nghiêm trọng cho công ty cạnh tranh gay gắt để có hợp đồng quan
trọng đôi khi làm cho công ty nhận thầu giá thấp cuối cùng gây ra lỗ cho người
phát triển.
Hầu như không thể tránh khỏi trong bất kỳ dự án nào người phát triển được
đòi hỏi thay đổi yêu cầu trong quá trình phát triển. Những thay đổi như thế thường
đi liền với chi phí bổ sung đòi khánh hàng và bao giờ cũng là nguyên nhân bất
đồng giữa người sản xuất và khách hàng. Điều này thường là do yêu cầu không rõ
hay mơ hồ và nó lại dẫn đến bất đồng về chỉ tiêu trong việc hoàn thành dự án. Về
cơ bản, điều này làm cho hợp đồng trở lại trạng thái không được xác định đầy đủ.
Theo quan điểm của khách hàng, ưu việt của hợp đồng giá cố định bao gồm:
Ngân sách cố định cho dự án.
Hầu hết các rủi ro phát triển được chuyển sang người phát triển.
. Tham gia tối thiểu trong quá trình phát triển.
Bất lợi cho khách hàng là:
Rủi ro chậm giao sản phẩm.
Giảm sự khống chế quá trình phát triển
Bất đồng tiềm ẩn với người sản xuất do:
. Chi phí cao về thay đổi yêu cầu.
. Chỉ tiêu hoàn thành dự án không rõ ràng.
Giải thích yêu cầu.
Ngay dù quyền lợi của người sản xuất và khách hàng có thể khác nhau, với hợp
đồng giá cố định vẫn thường được cả hai bên ưa chuộng. Nếu dự án là chi tiết đủ
mức và rõ ràng và nếu quan hệ giữa hai bên được xác định rõ thì các hợp đồng giá
cố định có thể có lợi cho cả người phát triển lẫn khách hàng.
5.1.6 Xây dựng dự toán cho các giai đoạn
Dự toán và các vấn đề liên quan:
Giáo viên biên soạn: Nguyễn Trần Phương
131
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Dự toán tốt là quan trọng vì chúng tạo thành nền móng của kế hoạch phát
triển dự án tốt. Kế hoạch đó, do nhà quản lý dự án chuẩn bị được lập thành trong
các giai đoạn ban đầu của dự án và bao gồm dự toán liên quan đến.
Ngân sách phát triển dự án.
Lịch trình phát triển dự án.
Tài nguyên phát triển cần đến (đội ngũ phát triển thiết bị phát triển v.v...).
Những dự toán kỹ thuật cũng được hình thành trong pha thiết kế và bao gồm:
Các đặc tính của phần mềm (dự toán về cỡ bộ nhớ, cơ sở dữ liệu v.v...).
Các đặc tính của phần cứng về cỡ mục tiêu cần đến (dự toán tốc độ CPU,
khả năng đầu vào, đầu ra; khả năng điều khiển đĩa v.v...).
Dự toán là cơ sở cho nhiều quyết định kỹ thuật và quản lý dự toán tồi dẫn
đến quyết định dở. Dự toán tồi có thể hiểu là quá cao hoặc là quá thấp và quyết
định theo đó hoặc là tạo ra lãng phí hoặc thiếu tài nguyên phát triển. Điều này hình
thành sai lầm trong qui hoạch, như:
Lịch trình quá ngắn hoặc cao thái quá.
Ngân sách quá thấp hay quá tăng giả tạo.
Quá thiếu hay quá thừa người làm và những sai lầm trong thiết kế kỹ thuật,
như: Những máy tính trong mục tiêu quá nhiều (và đắt hơn) hơn cần thiết
hoặc không thể hỗ trợ ứng dụng được phát triển.
Những vấn đề nảy sinh từ dự toán thấp thường gay cấn hơn là những vấn đề
nảy sinh từ dự toán cao. Hiểu rõ điều này, các nhà dự toán thường thêm vào một số
yếu tố bất trắc (cho rằng đến 30%) trong dự toán của mình, giả định rằng quá cao
còn hơn quá thấp.
Dù sao dự toán cao có thể không gây ra thất bại của dự án nhưng có thể ngăn
cản dự án chẳng bao giờ được khởi công. Đã có nhiều phương pháp được phát
triển nhằm tạo ra các loại dự toán khác nhau ở các giai đoạn khác nhau của dự án.
Những dự toán chuẩn bị tốt có thể dẫn đến những vấn đề nếu chúng không
được cập nhật trên một cơ sở định kỳ và đều đặn. Rõ ràng là thông tin tốt hơn và
đầy đủ hơn tạo nền dự toán tốt hơn. Do đó khi dự án tiến triển và có nhiều thông
tin hơn, dự toán cần được xem xét lại và hiệu chỉnh. Điều này dẫn đến việc giám
định lại các quyết định phát triển, tạo cho các vấn đề tiềm ẩn được đề cập sớm
trước khi chúng trở thành vấn đề rủi ro.
Dự toán của dự án:
Với người quản lý dự án phần mềm, có nhiều định lượng chưa biết phải dự
toán. Những định lượng này liên quan đến các lĩnh vực như:
Chi phí phát triển dự án.
Lịch trình phát triển dự án
Qui mô đội phát triển dự án
Khối lượng phần mềm phải phát triển.
Nguồn phần cứng yêu cầu.
Giáo viên biên soạn: Nguyễn Trần Phương
132
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Dự toán những định lượng đó như thế nào không chỉ là vấn đề cần được đề
cập: Các đơn vị sử dụng để đo những định lượng đó cũng phải cần được xem xét.
Chi phí phát triển dự án được đo lường tốt nhất bằng đơn vị tiền tệ, như đồng đola
Mỹ hay bảng (Anh). Dù sao với dự toán ban đầu chấp nhận được việc chuẩn bị
bằng một đo lường trung gian sau đó được chuyển đổi sang đơn vị tiền tệ. Đơn vị
trung gian phổ thông cho chi phí phát triển dự án là tháng công (hay tháng nhân
công hay tháng kỹ sư v.v.).
Lịch trình phát triển dự án rõ ràng được dự toán bằng đơn vị thời gian như
ngày, tuần, tháng hay năm. Lịch trình giống như phần lớn các kế hoạch, phải có
khởi đầu và kết thúc. Thường khi một dự án được quy hoạch, khởi đầu chính thức
không rõ, và do đó kết thúc cũng không rõ nốt. Trong những trường hợp đó, tên tắt
ARO (sau khi nhận đơn đặt) thông thường được dùng và lịch trình được xây dựng
sử dụng những chỉ định như: Kết thúc thiết kế mức cao - 4 tháng ARO.
Dự toán nhân sự phát triển có yêu cầu cho dự án rõ ràng theo đơn vị người.
Dù sao, nhân sự phát triển phải được nhóm theo một số phân loại phổ thông như
kỹ sư phần mềm, người lập trình, nhân lực hỗ trợ v.v. và mỗi nhóm phải được dự
toán riêng rẽ. Thời gian về dự án của mỗi người cũng phải được dự toán bằng cách
nhận ra việc họ tham gia vào dự án và rút ra khỏi dự án.
Khối lượng phần mềm được phát triển thường được dự toán bằng cả hai
cách đo: Bằng dòng mã hay kilô Bai (Kbyte) của bộ nhớ. Cả hai phương pháp có
điểm lợi và bất lợi. Số dòng mã là mức đo tiêu biểu nhiều hơn về mức độ cố gắng
phát triển nhưng cũng là ngôn ngữ tuỳ thuộc ở chỗ hàng trăm dòng mã ngôn ngữ
mức cao không đòi hỏi cũng mức độ cố gắng như hàng trăm dòng mã hình thành
ngôn ngữ mức thấp.
Dự toán từng bước:
Phương cách “Phân chia và Khuất phục” thường được áp dụng trong nhiều
lĩnh vực công nghệ phần mềm. Phương pháp này (phân chia vấn đề lớn thành vô
vàn vấn đề nhỏ hơn) cũng được sử dụng trong hầu hết kỹ thuật dự toán. Tiếp cận
cơ bản là phân giải dự án thành những hợp phần được xác định rõ ràng và rồi lặp
lại từng bước đến khi chỉ còn những đơn vị nhỏ sau đó có thể được dự toán dễ
dàng hơn.
Bước đầu tiên trong phân giải dự án là phân chia dự án thành bốn loại sau - Hình
5.8.
Hợp phần đã có sẵn sàng.
Hợp phần đầy kinh nghiệm.
Hợp phần kinh nghiệm 1 phần.
Phát triển mới.
Mỗi loại biểu thị một lớp hoạt động phát triển có thể được dự toán riêng rẽ
sử dụng các phương pháp dự toán khác nhau. Như chúng ta sẽ thấy, mỗi loại cũng
gắn với mức rủi ro liên quan trong phát triển phần mềm.
Giáo viên biên soạn: Nguyễn Trần Phương
133
Dự án phát
Trường Trung học Kinh tế Kỹ thuật Hòa Bình g tin - Môn Phân tích & Thiết kế hệ thống
triển phần
mềm
Phát triển mới
Có một phần
kinh nghiệm
Có đầy đủ
kinh nghiệm
Đã sẵn sàng
hoàn toàn
hoàn toàn
Rủi ro cao
Rủi ro vừa phải Còn chút rủi ro
Rủi ro tối thiểu
Hình 5.8: Phân loại phát triển dự án theo mức độ rủi ro
5.2 QUẢN LÝ GIAI ĐOẠN PHÂN TÍCH
5.2.1 Tiếp cận hiện trạng
Tiến hành tìm hiểu sơ bộ về hệ thống hiện hành và đưa ra cho được các điểm yếu
của hệ thống đó. Trên cơ sở đó, nêu lên các phương pháp cải tiến cho hệ thống bao
gồm:
Đánh giá hiện trạng.
Các phạm vi, khả năng, mục tiêu của dự án.
5.2.1.1 Tìm hiểu, đánh giá hiện trạng của hệ thống hiện hành:
Điều tra, thu thập thông tin về hệ thống hiện hành.
Biên tập, biểu diễn, phê phán, đề xuất ý kiến.
5.2.1.2 Phương pháp khảo sát:
Khảo sát hệ thống ở cả bốn mức:
Mức thao tác thừa hành: tiếp cận các người thừa hành trực tiếp để xem họ làm
việc.
Mức điều phối quản lý.
Mức quyết định lãnh đạo.
Mức chuyên gia cố vấn.
Hình thức tiến hành:
Quan sát và theo dõi:
Một cách chính thức: cùng làm việc với họ.
Một cách không chính thức: tìm hiểu cách làm việc qua các hồ sơ, sổ
sách, v.v...
Cố vấn: Bằng nhiều cách:
Đặt câu hỏi trực tiếp: Yes / No
Đặt câu hỏi chọn lựa: a, b, c, d …, đánh để thống kê.
Đặt câu hỏi gián tiếp có tính gợi mở cho câu trả lời
Bảng câu hỏi, phiếu điều tra.
Giáo viên biên soạn: Nguyễn Trần Phương
134
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
5.2.1.3 Phát hiện các yếu kém của hiện trạng và yêu cầu cho tương lai:
a. Yếu kém:
Thiếu sót:
Thiếu người xử lý thông tin.
Bỏ sót công việc xử lý thông tin.
Kém hiệu lực, quá tải:
Phương pháp xử lý không chặt chẽ.
Cơ cấu tổ chức không hợp lý.
Con đường lưu chuyển các thông tin không hợp lý. Ví dụ: Giấy tờ, tài
liệu trình bày kém, cấu trúc không hợp lý, v.v…
Tổn phí cao, gây lãng phí.
b. Yêu cầu mới:
Trong tương lai:
Thỏa đáng các thông tin chưa được đáp ứng.
Đáp ứng các nguyện vọng của nhân viên.
Dự kiến kế hoạch phát triển.
5.2.1.4. Lập dự trù và kế hoạch triển khai dự án:
5.2.1.4.1 Lập hồ sơ khảo sát:
a. Lập dự trù về thiết bị:
* Tìm hiểu và dự kiến các vấn đề sau:
Khối lượng dữ liệu lưu trữ.
Các dạng làm việc với máy tính (máy đơn, máy mạng), xử lý trực tuyến
(Online), v.v…
Số lượng người dùng tối thiểu và tối đa của hệ thống.
Khối lượng thông tin cần thu thập.
Khối lượng thông tin cần kết xuất, cần in ra giấy, v.v…
Thiết bị ngoại vi đặc biệt như: Scanner, máy vẽ, máy cắt, v.v…
* Điều kiện mua và lắp đặt:
Nên chọn nhà cung cấp nào, chi phí vận chuyển.
Mua nguyên bộ, mua rời, v.v…
Sơ đồ lắp đặt mức sơ bộ.
b. Công tác huấn luyện sử dụng chƣơng trình:
Thời gian huấn luyện bao lâu.
Chia làm bao nhiêu nhóm huấn luyện.
c. Công việc bảo trì:
Đội ngũ bảo trì.
Chi phí bảo trì.
Thời gian bảo trì.
5.2.1.4.2 Lập kế hoạch triển khai dự án:
Giáo viên biên soạn: Nguyễn Trần Phương
135
Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Công nghệ Thông tin - Môn Phân tích & Thiết kế hệ thống
Về mặt nhân sự: Có mặt tất cả các chuyên viên, người sử dụng, lãnh đạo cơ
quan, phân tích viên hệ thống (có thể có cả các lập trình viên).
Lập tiến độ triển khai dự án.
Phân tích tài chính dự án.
Lập mối quan hệ với các dự án khác.
5.2.2 Thu thập các tài liệu có liên quan đến hệ thống sẽ tin học hóa
Đây là một nhiệm vụ tưởng chừng như đơn giản đến mức nhóm phát triển
thấy điều đó là hiển nhiên không đánh giá đúng mức tuy nhiên trên thực tế lại
không phải vậy vì “tài liệu có liên quan” không hẳn chỉ là những gì có liên quan
trực tiếp đến hệ thống mà thôi. Tóm lại nên thu thập tất cả các tài liệu có thể có
được và chỉ loại khi mà dự án kết thúc giai đoạn thử nghiệm bao gồm:
Thông tin về hiện tại hay tương lai.
Thông tin về trạng thái tĩnh, động hay biến đổi.
Tĩnh: Thông tin về tổ chức hồ sơ và sổ sách.
Động: Thông tin về sự tăng hay giảm lưu chuyển của các chứng từ, giấy
tờ, v.v…
Biến đổi: Thông tin được biến đổi ra sao, sử dụng những công thức tính
toán nào?
Thông tin thuộc nội bộ hay môi trường của hệ thống, thông thường thì người
ta tổ chức sắp xếp, tổ hợp những vấn đề thông tin trên lại như sau:
Giáo viên biên soạn: Nguyễn Trần Phương
136
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phân tích & Thiết kế hệ thống - Chương 5: Quản lý các giai đoạn xây dựng hệ thống thông tin - Nguyễn Trần Phương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_phan_tich_thiet_ke_he_thong_chuong_5_quan_ly_cac_g.pdf

