Chuyên đề học tập Tin học 12

Giải Vận dụng trang 17 Chuyên đề Tin học 12

Bài 2. Thực hành thiết lập sự phụ thuộc giữa các nhiệm vụ trong dự án   Đã kiểm chéo

Đề bài

Thực hiện các việc sau đối với dự án *Thiết kế website của lớp*:

1. Thiết lập tiến độ dự kiến cho các nhiệm vụ của dự án.

2. Xác định sự phụ thuộc của các nhiệm vụ trong dự án này và thiết lập mối quan hệ đó bằng phần mềm GanttProject.

Lời giải

## Chuẩn bị

Dự án *Thiết kế website của lớp* được chia thành các nhiệm vụ như đã lập ở Bài 1. Để thực hành, ta thống nhất một danh sách nhiệm vụ tiêu biểu (em có thể giữ nguyên danh sách nhóm mình đã xây dựng):

| Mã | Nhiệm vụ |
|----|----------|
| 1 | Lập kế hoạch dự án (phân công, thống nhất mục tiêu) |
| 2 | Thu thập yêu cầu và nội dung (bài viết, ảnh, logo lớp) |
| 3 | Thiết kế giao diện (bố cục trang, màu sắc, menu) |
| 4 | Xây dựng (tạo trang, mã HTML/CSS, chèn nội dung) |
| 5 | Kiểm thử (chạy thử, sửa lỗi liên kết, chính tả) |
| 6 | Công bố và báo cáo tổng kết |

### a) Thiết lập tiến độ dự kiến cho các nhiệm vụ

Tiến độ dự kiến gồm thời điểm bắt đầu, thời lượng (số ngày làm) và thời điểm kết thúc của mỗi nhiệm vụ. Giả sử dự án khởi động thứ Hai 12/10/2026, tuần làm 5 ngày (bỏ Thứ Bảy, Chủ nhật), ta ước lượng:

| Nhiệm vụ | Bắt đầu | Thời lượng | Kết thúc (dự kiến) |
|----------|---------|-----------|--------------------|
| 1. Lập kế hoạch | 12/10 | 2 ngày | 13/10 |
| 2. Thu thập nội dung | 14/10 | 4 ngày | 19/10 |
| 3. Thiết kế giao diện | 14/10 | 3 ngày | 16/10 |
| 4. Xây dựng website | 20/10 | 5 ngày | 26/10 |
| 5. Kiểm thử | 27/10 | 2 ngày | 28/10 |
| 6. Công bố, báo cáo | 29/10 | 1 ngày | 29/10 |

Tổng thời gian dự kiến của dự án khoảng 2 tuần rưỡi (12/10 → 29/10).

Thao tác trong GanttProject: với mỗi nhiệm vụ, nháy đúp để mở hộp thoại *Properties* (hoặc chọn nhiệm vụ rồi điền trực tiếp trên bảng bên trái):
- Ô Begin date: nhập ngày bắt đầu.
- Ô Duration: nhập số ngày làm việc; GanttProject tự tính End date theo lịch (tự loại ngày nghỉ cuối tuần đã khai báo trong *Project → Properties → Calendar*).

Mỗi nhiệm vụ sẽ hiện thành một thanh ngang trên biểu đồ Gantt, độ dài bằng thời lượng, vị trí ứng với khoảng thời gian thực hiện.

###

b) Xác định sự phụ thuộc và thiết lập bằng GanttProject

Bước 1 — Xác định quan hệ phụ thuộc (nhiệm vụ nào phải xong/bắt đầu trước nhiệm vụ nào):

| Quan hệ | Loại | Giải thích |
|---------|------|-----------|
| 1 → 2 | Kết thúc–Bắt đầu (FS) | Có kế hoạch rồi mới thu thập nội dung |
| 1 → 3 | Kết thúc–Bắt đầu (FS) | Có kế hoạch rồi mới thiết kế giao diện |
| 2 → 4 | Kết thúc–Bắt đầu (FS) | Phải có nội dung mới xây dựng được trang |
| 3 → 4 | Kết thúc–Bắt đầu (FS) | Phải có bản thiết kế mới xây dựng được trang |
| 4 → 5 | Kết thúc–Bắt đầu (FS) | Xây xong mới kiểm thử |
| 5 → 6 | Kết thúc–Bắt đầu (FS) | Kiểm thử đạt mới công bố |

Nhiệm vụ 2 và 3 song song (cùng bắt đầu sau nhiệm vụ 1); nhiệm vụ 4 phụ thuộc cả hai (2 và 3) nên chỉ bắt đầu khi cả hai đã xong. Phần lớn quan hệ là Kết thúc–Bắt đầu (Finish–Start) — kiểu phụ thuộc phổ biến nhất.

Bước 2 — Thiết lập mối quan hệ trong GanttProject (một trong hai cách):

*Cách kéo thả:* đưa trỏ chuột vào đầu phải (hoặc giữa) thanh của nhiệm vụ đi trước cho tới khi xuất hiện biểu tượng, rồi kéo một đường nối tới nhiệm vụ đi sau và thả. GanttProject vẽ mũi tên nối hai thanh, biểu thị quan hệ phụ thuộc.

*Cách dùng hộp thoại Properties:* nháy đúp nhiệm vụ đi sau → thẻ Predecessors → Add → chọn nhiệm vụ đi trước, cột Type chọn Finish–Start (và nhập Lag nếu muốn có độ trễ, mặc định 0). Nhấn OK.

Bước 3 — Quan sát kết quả: sau khi thiết lập đủ các quan hệ trên, biểu đồ hiện các mũi tên 1→2, 1→3, 2→4, 3→4, 4→5, 5→6. Nếu ngày bắt đầu nhập tay còn mâu thuẫn với quan hệ (ví dụ nhiệm vụ 4 lỡ đặt trước khi 2,3 kết thúc), vào Project → Properties → Scheduling bật *Reschedule project automatically* (hoặc chọn nhiệm vụ rồi nhấn F9) để GanttProject tự dời lịch cho khớp ràng buộc. Đường nối dài nhất (1→2→4→5→6) chính là đường găng quyết định tổng thời gian dự án.

Kiểm tra lại: đếm được 6 nhiệm vụ, 6 quan hệ phụ thuộc, tất cả đều kiểu Finish–Start; tổng tiến độ 12/10 → 29/10 ≈ 2,5 tuần — nhất quán với bảng tiến độ ở ý a).

Đáp số

Lập bảng tiến độ 6 nhiệm vụ (Begin date + Duration → GanttProject tự tính End date); dự án kéo dài ≈ 12/10 → 29/10 (khoảng 2,5 tuần)Xác định 6 quan hệ phụ thuộc kiểu Kết thúc–Bắt đầu: 1→2, 1→3, 2→4, 3→4, 4→5, 5→6; thiết lập bằng cách kéo nối hai thanh hoặc dùng thẻ Predecessors trong Properties

Lời giải do Thư viện nhà trường biên soạn, giải và kiểm chéo độc lập theo SGK 2026-2027.