Lập kế hoạch triển khai dự án
Lập kế hoạch triển khai dự án
Các bước lập kế hoạch triển khai dự án:
1. Lập hợp đồng triển khai dự án
Dự án xây dựng hệ thống mới đã được khẳng định. Cần có một hợp đồng giữa bên sử dụng hệ thống và bên xây dựng hệ thống để chốt những nội dung chủ yếu của hệ thống đó. Hợp đồng đó có thể thành văn (nếu bên sử dụng và bên xây dựng thuộc hai cơ quan khác nhau) hoặc là không thành văn (nếu bên xây dựng lại là bộ phận của cơ quan chủ dự án) nhưng đều phải chứa đựng các nội dung chủ yếu sau:
- Vấn đề đặt ra và các nhu cầu thông tin.
- Phạm vi hạn chế.
- Mục tiêu và ưu tiên;
- Giải pháp và tính khả thi;
- Dự trù thiết bị và kinh phí;
- Phân công trách nhiệm và nhân sự;
- Phương pháp và tiến trình triển khai.
2. Dự trù thiết bị và kinh phí
- Dự trù thiết bị: Cần nhớ rằng ta đang ở giai đoạn khởi đầu dự án, chưa có đầy đủ các căn cứ để tính toán một cách chính xác cấu hình của thiết bị cần cho hệ thống tương lai. Tuy nhiên việc dự trù thiết bị lại cần làm sớm, vì việc đặt mua và lắp đặt thiết bị là cần có thời gian. Vả lại một số căn cứ như sau đã có thể ước lượng được:
- Khối lượng dữ liệu cần lưu trữ lâu dài;
- Các dạng làm việc (xử lý theo lô, từ xa, tương tác, trực tuyến, vv…);
- Số lượng người dùng tối đa;
- 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ác tài liệu cần in ra.
Trên các căn cứ này, ta đã có thể xác định được cấu hình của thiết bị, bao gồm:
- Mạng hay máy lẻ;
- Các thiết bị ngoại vi, đặc biệt là các thiết bị ngoại vi đặc dụng;
- Các đường truyền, các PLC (programmable logic controller);
- Các phần mềm cơ bản (hệ điều hành, hệ qản trị cơ sở dữ liệu, các ngôn ngữ lập trình, vv…)
- Dự trù kinh phí: Ngoài kinh phí cho thiết bị và xây dựng địa điểm, còn phải có kinh phí cho quá trình triển khai dự án. Kinh phí này cần được thoả thuận của đôi bên tham gia dự án, căn cứ trên các mặt:
- Khối lượng công việc và số người tham gia thực hiện qua các giai đoạn.
- Mức độ của các đòi hỏi về chất lượng sản phẩm, về thời hạn hoàn thành và về bảo hành sản phẩm.
Kinh phí cho dự án thường được phân bổ cho các giai đoạn triển khai dự án.
3. Tổ chức nhóm làm việc
Có hai cách tổ chức:
Cách tổ chức cổ điển có thể nói là ít nhiều còn mang sắc thái hành chính quan liêu. Một trưởng dự án được chỉ định. Người này phụ trách mọi thành viên trong nhóm. Các thành viên này được phân loại thành người phân tích, người thiết kế, người lập trình vv…với mức lương thấp dần. Công việc của mỗi loại thành viên này được đóng kín. Đặc biệt, người phân tích thì từ chối lập trình vì cho như thế là dưới khả năng. Còn người lập trình thì không được đụng tới phân tích vì cho như thế là muốn vượt khung hay muốn lên lương. Đương nhiên sự thiếu hợp tác giữa các loại thành viên như thế chẳng mang lại lợi ích gì cho dự án.
Chính vì để chống lại quan điểm tổ chức cổ điển như trên, mà người ta đề nghị một cách tổ chức khác gọi là “Nhóm lập trình”, một tên gọi không chính xác lắm, chỉ định một nhóm làm việc bình đẳng, trong đó có một trưởng nhóm, là một người có khả năng hơn mọi người và được mọi người tin tưởng. Cách tổ chức này do IBM đề xuất trong dự án “New-York Times” và được mô tả như sau: Nhóm lập trình được thành lập xung quanh một hạt nhân gồm 3 người: Một trưởng nhóm, một phó trưởng nhóm, và một thư ký nhóm. Tư tưởng chủ đạo là lập một cấu trúc mềm dẻo, trong đó người trưởng và người phó có thể thay thế lẫn nhau và hai nhà chuyên môn này có thể trút mọi công việc hành chính cho người thư ký. Sự phân biệt có tính quan liêu giữa người thiết kế, người phân tích, người lập trình và những người khác trở nên mờ nhạt hoàn toàn: mọi người đều là lập trình viên và chẳng ai ngăn cấm mỗi người có thể có những kiến thức riêng biệt trên các lĩnh vực khác.
Lưu ý rằng tổ chức theo kiểu “Nhóm lập trình” hoàn toàn không có nghĩa là xem nhẹ các khâu phân tích và thiết kế, mà chỉ là để cho các phần việc phân tích, thiết kế và lập trình dễ hoà quyện với nhau hơn. Ở nước ta – may thay - phần lớn các nhóm triển khai dự án đều được tổ chức theo kiểu “Nhóm lập trình”, ít thấy có sự phân công quá rạch ròi giữa phân tích, thiết kế và lập trình. Nhưng tiếc thay, nguồn cội của hình thức tổ chức này ở nước ta lại chính là sự xem nhẹ các việc phân tích và thiết kế. Không ít nơi người ta có thói quen “lập trình chay”, nghĩa là lập trình mà không phân tích và thiết kế. “Lập trình chay” tạm thời có thể thực hiện trôi chảy ở các dự án nhỏ, nhưng không thể thực hiện mà không gây ra cảnh rối loạn ở các dự án lớn, với sự tham gia xây dựng của nhiều người.
4. Điều hành dự án
Ban điều hành gồm một số lượng hạn chế các thành viên, trong đó có cả nhà tin học, có cả người dùng, được tổ chức bên trên nhóm làm việc của dự án và chịu trách nhiệm về việc đưa ra các quyết định có tính định hướng cho dự án, như là:
- Quyết định các mục tiêu và chỉ ra cách đạt đến mục tiêu đó;
- Xác định các mức độ an toàn và các kiểm tra tương ứng;
- Phân phối các nguồn lực xét thấy cần thiết về nhân lực, vật lực hay ngân quỹ.
- Kiểm tra sự phát triển đúng đắn của dự án, đánh giá thường kỳ các kết quả đạt được so với các chỉ tiêu dự kiến;
- Quyết định việc chọn lựa giải pháp khi nhóm làm việc phải đối mặt với nhiều phương án giải quyết có tác động sâu sắc tới sự hoạt động của doanh nghiệp.
5. Tiến trình của dự án
Cần phải dự kiến tiến trình phát triển của dự án. Chẳng hạn sau đây là một tiến trình trong đó dự trù thời hạn và nhân lực cho 3 giai đoạn lớn phân tích, thiết kế và thực hiện:
|
|
Người |
Người /Tháng |
Bắt đầu |
Kết thúc |
|
|
CB tin học |
Người dùng |
||||
|
Phân tích Thiết kế Thực hiện |
1 3 3 |
1 1 1 |
4 12 7,5 |
1/11/2005 15/1/2006 16/4/2006 |
31/12/2005 15/4/2006 30/6/2006 |
|
Tổng cộng số người/ tháng |
23,5 |
|
|
||
Tuy nhiên thường thì các giai đoạn lớn nói trên được phân chia thành các giai đoạn nhỏ hơn. Có nhiều cách phân chia.
Theo SIS (Swedish Standard Institution) thì có 9 giai đoạn
- Nghiên cứu tính khả thi;
- Xác định các mục tiêu;
- Nghiên cứu các thông tin;
- Nghiên cứu các xử lý;
- Nghiên cứu các hệ thống;
- Nghiên cứu chi tiết các hệ thống;
- Thiết kế các thành phần của các hệ thống;
- Cài đặt các hệ thống;
- Nghiên cứu sau cài đặt.
Phương pháp SDM (System Developent Methodology) lại đưa ra 7 bước:
- Định nghĩa vấn đề;
- Thiết kế sơ bộ;
- Thiết kế chi tiết;
- Phát triển các chương trình và các nhiệm vụ thủ công;
- Thử nghiệm;
- Chuyển đổi các thông tin và cài đặt hệ thống;
- Khai thác và bảo trì.
AFNOR (Assocication Franscaise de Normalisation) thì cho rằng sự phân chia giai đoạn là tuỳ thuộc vào từng loại xí nghiệp, lấy ví dụ có thể là:
- Mở đầu;
- Nghiên cứu tính hợp thời;
- Thiết kế chi tiết;
- Thực hiện về phương diện tin học;
- Nghiên cứu về tổ chức;
- Cài đặt hệ thống;
- Đánh giá;
- Bảo trì.
Ở giai đoạn xác lập dự án này, vấn đề chỉ là chọn một phương pháp và một tiến trình triển khai cho thích hợp với hệ thống cần xây dựng, cũng như thích hợp với kinh nghiệm, thói quen và cả với công cụ sẵn có của nhóm thực hiện dự án. Trên cơ sở đó mà xác định một lịch biểu cho dự án.