1
GIAI ĐOẠN THỰC HIỆN
ThS. Nguyễn Khắc Quốc
IT Department – Tra Vinh University
2
Tổng quan
Mục đích
- Thiết kế chi tiết và cài đặt,
- Ráp nối các thành phần, các môđun trong hệ thống
bao gồm cả phần cứng và phần mềm.
Các công việc chính
- Thiết kế chi tiết các môđun và lập trình
- Chế tạo các phần trong hệ thống
- Dự toán và tổ chức mua thiết bị phần cứng/phần mềm
- Chỉnh sản phẩm cho phù hợp với yêu cầu thực tế
- Kiểm thử từng phần các môđun, phân hệ
- Biên soạn tài liệu
3
Các tài liệu cần hoàn thành
- Tài liệu thiết kế chi tiết các thành phần trong hệ thống
(Thông qua về chuyên môn kỹ thuật)
- Tài liệu dự toán/ kế hoạch mua trang thiết bị phần
cứng/ phần mềm (Thông qua về chuyên môn kỹ thuật)
- Kế hoạch kiểm thử hệ thống (Thông qua về chuyên
môn kỹ thuật)
- Biên bản kiểm thử các thành phần (Thông qua về
chuyên môn kỹ thuật)
- Kế hoạch sửa đổi thích nghi các sản phẩm đã có/ mua
để phù hợp với yêu cầu (Thông qua về chuyên môn kỹ
thuật và người sử dụng)
- Tài liệu người sử dụng (Người sử dụng thông qua về
họ chẳng thấy làm gì cả" và thường họ hay phiền lòng, lo
lắng khi các lập trình viên ngồi suy nghĩ trước máy.
Đây là quan niệm sai, bởi lẽ các cân nhắc kỹ lưỡng
trước khi lập trình sẽ làm cho năng suất lập trình cao lên,
vả lại chi phí bảo trì phần mềm sẽ giảm xuống đáng kể.
8
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
5.2.2 Các công việc chuẩn bị trước khi tiến hành lập trình, cài đặt
Trước khi vào giai đoạn lập trình, nhà quản lý dự án phải trả lời câu
hỏi sau:
- Kết quả rà soát lại thiết kế có yêu cầu phải làm lại một phần nào
đó trong hệ thống không?
- Nếu có, phải sắp xếp thời gian một cách phù hợp và không nên bắt
đầu lập trình khi chưa giải quyết ổn thoả mọi việc.
- Các nguồn nhân lực, vật lực và thông tin, các lập trình viên lúc nào
cũng sẵn sàng và dự án sẽ kết thúc đúng theo kỳ hạn.
- Khi có thay đổi nhân sự vì bất cứ lý do gì, cần phải lượng trình năng
suất công việc của người mới đến thay thế để có thể trù liệu trước
mọi chuyện đáp ứng được hạn định đã đặt ra.
(Một chuyên gia lập trình giỏi có thể làm việc với năng suất
gấp 8 lần người có trình độ trung bình).
9
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Mọi người đã được đào tạo chưa?
- Khi bắt tay vào công việc, các lập trình viên phải biết rõ
về hệ điều hành, ngôn ngữ lập trình và các công cụ lập
trình sẽ được sử dụng.
- Phải làm quen với ứng dụng mà người sử dụng đặt
- Các nhà quản lý dự án phải đặt kế hoạch một cách rõ
ràng, đưa ra thứ tự ghép nối các môđun sẽ được lập trình
theo thứ tự tích hợp vào hệ thống.
- Kế hoạch này được gọi là kế hoạch kiểm thử hệ thống.
12
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Bước 2. Thiết kế các môđun
- Các lập trình viên nhận bản đặc tả thiết kế được bàn
giao lại từ giai đoạn thiết kế (do kết quả của việc thiết kế
mức tổng thể và mức trung gian).
- Tiếp tục chia nhỏ thành các mức thấp hơn cho đến khi
đạt tới các công việc “sơ cấp” theo nghĩa có thể lập trình
được ngay bằng một ngôn ngữ lập trình nào đó.
- Quá trình này được gọi là quá trình thiết kế các môđun
hay thiết kế mức dưới.
13
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Ví dụ: Lập trình viên nhận được từ giai đoạn thiết kế sơ đồ ở mức trung
gian như sau:
Sơ đồ thiết kế mức 3
14
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Lập trình viên còn nhận được từ giai đoạn thiết kế mô tả về môđun
như sau:
Tên môđun: AMST0000
Gọi bởi: AM000000
Các chương trình con được gọi đến: <danh sách chương trình con>
17
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Thiết kế môđun được tiến hành từ trên xuống dưới, bắt đầu từ ô trên cùng
AMST0000 và chia nhỏ nó thành các phần con thích hợp
Chia nhỏ môđun ở mức 5
18
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Tiếp tục chia nhỏ
Chia nhỏ môđun ở mức 6
19
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Quá trình cứ tiếp tục vậy cho đến một mức đủ chi tiết để các
thành phần có thể lập trình được.
Câu hỏi đặt ra. Quá trình thiết kế hệ thống sẽ dừng lại ở mức
chi tiết như thế nào và khi nào bắt tay vào thiết kế chi tiết từng
môđun?
Câu trả lời. Quá trình thiết kế hệ thống nhằm chia nhỏ các
môđun tới mức người lập trình có thể bắt đầu công việc; nghĩa
là:
- Các đặc tả về dữ liệu và thao tác đủ rõ ràng và tường minh
để có thể mã hoá thông qua một ngôn ngữ lập trình nào đó.
- Mức độ chi tiết hoá tuỳ thuộc vào từng dự án một hay từng
phần trong hệ thống, thậm chí cả quan niệm của người lập
trình đảm nhận phần việc được giao.
20
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
+ Đảm bảo đưa ra được một thiết kế tốt nhất
+ Mọi chức năng đã được đề cập đến
+ Tất cả mọi trục trặc đã được lường trước.
23
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Bước 4: Đặt kế hoạch kiểm thử môđun
- Lập trình viên phải lập kế hoạch kiểm thử môđun và dữ
liệu trước khi bắt tay vào lập trình.
- Kế hoạch kiểm thử sau khi lập trình phải được xem xét.
- Cần tập trung vào những "kiểm thử" đối với các phần
khó nhất trong hệ thống.
- Người phụ trách dự án có thể tham gia rà soát kế hoạch
kiểm thử cùng với rà soát thiết kế môđun.
Nên kết hợp 2 khâu này cùng một lúc.
24
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Bước 5: Lập trình các môđun
- Các tiêu chuẩn, các đòi hỏi đối với quá trình lập trình đã
được trình bày rõ trong giai đoạn thiết kế hệ thống.
- Các cách tiếp cận khác nhau trong triển khai lập trình:
- Cách tiếp cận cấu trúc
- Cách tiếp cận hướng đối tượng
25
5.2 Tổ chức lập trình các môđun cơ bản;
ghép nối hệ thống (tt)
Các tư tưởng lớn trong lập trình có cấu trúc là:
- Phân chia các công việc thành các môđun nhỏ.
- Mỗi môđun đảm nhận 1 chức năng riêng biệt nào đó,