TUẦN 2
Nội dung
Các phương pháp khác nhau phát
triển HTTT
Môi trường, công cụ phát triển HTTT
Quản lý dự án phát triển HTTT
Các bước tổng quát phân tích thiết kế HTTT
Các phương pháp phát triển
HTTT
Vòng đời phát triển hệ thống truyền thống
Phương pháp làm bản mẫu
Mô hình xoắn ốc
Phương pháp phát triển hệ thống dựa trên việc
sử dụng lại
Phát triển hệ thống do người sử dụng thực
hiện
Phương pháp thuê bao
Vòng đời phát triển hệ thống
truyền thống (1)
TỔ CHỨC
Lập kế
hoạch
Nghiên
cứu hệ
thống
Thiết
kế
Lập trình
& kiểm thử
Cài đặt
Áp dụng
Mô tả phát triển HTTT theo vòng
đời truyền thống
Ý tưởng: HTTT có
một vòng đời như
một thực thể bất kỳ
Gồm sáu giai đoạn,
được thực hiện tuần
tự
Vòng đời phát triển hệ thống
truyền thống (2)
Thích hợp:
Các hệ thống có cấu trúc và xác định chặt chẽ
Các hệ thống kỹ thuật phức tạp.
Định hướng tài liệu
Chi phí cao, thời gian thực hiện dài, không
mềm dẻo
Không thích hợp với hệ thống vừa và nhỏ
Phương pháp làm bản mẫu (1)
Ý tưởng:
Tạo ra mô hình làm việc thực nghiệm để
người sử dụng xem xét, đánh giá
Bản mẫu hoàn thiện được sử dụng cho các
bước tiếp theo
Phương pháp làm bản mẫu (2)
Khảo sát, thu thập thông tin sơ bộ
Xây dựng nhanh mẫu ban đầu
Làm mịn (phát triển) mẫu
Khảo sát, lấy ý kiến NSD
Mẫu hoàn chỉnh
Đánh giá, quyết
định
HT hoàn chỉnh ?
Loại bỏ mẫu
Sử dụng thêm
phương pháp
khác
Hoàn chỉnh dự
án từ các mẫu
thu được
tồi hạn chế
chưa
đã
Phương pháp làm bản mẫu (3)
Các mức độ làm bản mẫu:
Làm mẫu cho một đặc tả yêu cầu, dùng xong bỏ
mẫu
Bản mẫu là một đặc tả yêu cầu đã được hình thức
hoá, có thể dùng để tạo ra chương trình
Sử dụng công cụ chuyên dụng để lắp ghép các
thành phần có sẵn được sử dụng lại
Phương pháp làm bản mẫu (4)
Nhận xét và đánh giá
Sử dụng khi nhu cầu thông tin hay giải pháp chưa được
xác định
Thích hợp với những hệ thống nhỏ hoặc hệ thống lớn
có thể chia nhỏ để làm mẫu từng phần và có nhiều
tương tác với người dùng
Được sử dụng để tạo cơ sở cho viêc ký hợp đồng, tăng
lòng tin khách hàng, huấn luyện người dùng
Cấu trúc không chặt chẽ, việc bảo trì có thể khó khăn,
sai sót nhỏ chậm sửa đổi, làm tài liệu có thể không kịp
thời
Mô hình xoắn ốc (1)
Ý tưởng:
Quá trình phát triển được chia thành nhiều bước
lặp
Mỗi bước tạo ra một phiên bản vận hành được
bằng các hoạt động: lập kế hoạch, phân tích rủi
ro, tạo nguyên mẫu, hoàn thiện và phát triển hệ
thống
Mô hình xoắn ốc (2)
Lập kế hoạch Phân tích rủi ro
Lấy ý kiến
đánh giá
Kỹ nghệ
Đánh giá của
khách hàng
Tập hợp yêu cầu
ban đầu và kế
hoạch dự án
Kế hoạch dựa trên ý
kiến của khách hàng
Phân tích rủi ro dựa
trên yêu cầu ban đầu
Phân tích rủi ro dựa
trên phản ứng của KH
Quyết định tiếp tục?
(cao điểm của việc
phân tích rủi ro)
Hướng tới hệ thống
hoàn chỉnh
Bản mẫu ban đầu
Bản mẫu tiếp theo
Mô hình xoắn ốc (3)
Đánh giá và nhận xét
Thích hợp với các hệ thống phần mềm qui mô
lớn
Quá trình lặp và đánh giá rủi ro ở mỗi bước đảm
bảo sự thành công của việc xây dựng HTTT
Chi phí cao cho chuyên gia đánh giá rủi ro
Những thay đổi linh hoạt trong phát triển khó
được chấp nhận khi hợp đồng đã được ký kết
Sử dụng lại (1)
Ý tưởng: sử dụng lại các gói phần mềm ứng
dụng đã có
Phần mềm
đóng gói
Mở rộng
bổ
sung
phía
trước
bổ
sung
phía
sau
Chuyển đổi
định dạng
dữ liệu vào
Chuyển đổi
định dạng
dữ liệu ra
Mô hình chung nhất sử dụng phần mềm đóng gói
Sử dụng lại (2)
Các yếu tố cần xem xét khi chọn gói phần mềm:
Chức năng
Tính mềm dẻo
Tính thân thiện
Yêu cầu về kỹ thuật
Cài đặt và bảo trì
Tài liệu
Chất lượng người bán
Giá thành
Sử dụng lại (3)
Đánh giá và nhận xét
Rút ngắn thời gian và chi phí, việc bảo trì tốt, tài liệu
phần mềm đầy đủ, phần mềm hoạt động tốt
Gói phần mềm ứng dụng không đạt được chất lượng
kỹ thuật và chức năng cho các ứng dụng đa mục tiêu
và có nhiều đặc thù.
Ngoài phần mềm đóng gói, có thể sử dụng lại các
mẫu thiết kế (patterns), khung làm việc (frameworks)
và mô hình miền ứng dụng (domain model)
Phát triển hệ thống do NSD thực
hiện
Ý tưởng: NSD phát triển một phần đáng kể
HTTT với sự trợ giúp chút ít hay không
chính thức của các chuyên gia tin học.
Cần có một trung tâm thông tin trợ giúp:
Đánh giá
Tư vấn
Đào tạo
Giúp gỡ rối
Hỗ trợ làm các ứng dụng, báo
cáo, truy vấn phức tạp
Giúp liên hệ với các nhóm cùng
nghiệp vụ để trao đổi, trợ giúp
Phát triển hệ thống do NSD thực
hiện
Nhận xét:
HTTT được xây dựng nhanh
HTTT thường thiếu công nghệ tiên tiến và thử
nghiệm hình thức hoá
Tài liệu không được xây dựng kịp thời
Khó kiểm soát dữ liệu
Phương pháp thuê bao
Ý tưởng: một tổ chức thuê một công ty chuyên
nghiệp xây dựng và vận hành hệ thống để cung
cấp dịch vụ cho họ
Nhận xét:
Nhận được dịch vụ nhanh chóng, chỉ phải bỏ ra chi
phí sử dụng (không cần bỏ ra chi phí đầu tư)
Rắc rối xảy ra khi tổ chức cho thuê không còn trách
nhiệm với HTTT
Nội dung
Các phương pháp khác nhau phát triển
HTTT
Môi trường, công cụ phát triển
HTTT
Quản lý dự án phát triển HTTT
Các bước tổng quát phân tích thiết kế HTTT
CASE (1)
CASE (Computer-Aid-Software Engineering):
Kỹ nghệ phần mềm được hỗ trợ bằng máy tính
Phân loại CASE
CASE bậc cao: công cụ tạo biểu đồ, bộ tạo sinh
biểu mẫu và báo cáo, công cụ phân tích
CASE bậc thấp: bộ tạo sinh mã, công cụ quản lý
vòng đời và phối hợp hoạt động dự án, kho chứa
và bộ tạo sinh tài liệu
CASE (2)
Công nghệ CASE
Đa công cụ Môi trường phát triểnCông cụ đơn
Bộ soạn
thảo
Chương
trình dịch
Bộ so
sánh tệp
Môi trường
tích hợp
Môi trường
theo tiến trình
Phân tích và
thiết kế
Lập trình Kiểm thử
Công cụ đa
phương pháp
Bàn thợ đơn
phương pháp
Bàn thợ cho
mục đích chung
Bàn thợ cho
ngôn ngữ cụ thể
Các công cụ phát triển hướng đối
tượng và trực quan
Ngôn ngữ lập trình
hướng đối tượng: C++,
Java …
Công cụ phát triển trực
quan:
Visual Basic,
PowerBuider, Delphi
Ngôn ngữ UML và công
cụ Modeler, Jbuider,
Rational Rose
Sử dụng lại
Xây dựng giao diện,
báo cáo, chức năng
nhanh chóng
•
Trợ giúp PTTK
hướng đối tượng
•
Trợ giúp dịch xuôi,
dịch ngược
Sự tiến hoá và tương lai của các
công cụ phát triển
?
•
Nhúng trí tuệ
nhân tạo vào
các môi trường
phát triển
•
???
Nội dung
Các phương pháp khác nhau phát triển
HTTT
Môi trường, công cụ phát triển HTTT
Quản lý dự án phát triển HTTT
Các bước tổng quát phân tích thiết kế HTTT
Quản lý dự án phát triển HTTT
Mục tiêu: đảm bảo cho các dự án phát triển HTTT
đáp ứng được sự mong đợi của khách hàng và
được thực hiện trong phạm vi những giới hạn cho
phép
Bao gồm bốn pha:
Khởi tạo dự án
Lập kế hoạch dự án
Thực hiện dự án
Kết thúc dự án