Mô hình vòng đời phát triển HTTT
Vòngđời phát triểnhệthống truyềnthống
Phương pháp làm bảnmẫu
Mô hình xoắnốc
Phương pháp phát triểnhệthống dựatrên việcsửdụng lại
Phát triểnhệthống do người dùng thựchiện
Phương pháp thuê bao
Các phương pháp phát triển HTTT
Có những mô hình phát triển HTTT nào?
Ý tưởng, nội dung, ưu và nhược điểm của nó?
Mô hình nào có ưu thếhơn cả? Tại sao?
32 trang |
Chia sẻ: maiphuongtl | Lượt xem: 2355 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Bài giảng Phân tích thiết kế hệ thống thông tin - Bài 2: Tiến trình phát triển, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BÀI GIẢNG
PHÂN TÍCH THIẾT KẾ HỆ
THỐNG THÔNG TIN
Nguyễn Văn Vỵ - Nguyễn Thị Nhật Thanh
Khoa Công nghệ thông tin, Đại học Công nghệ
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 2
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Bài 2 – Tiến trình phát triển
Các phương pháp 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
Nội dung
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 3
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Tài liệu tham khảo
1. Nguyễn Văn Vy. Giáo trình phân tích thiết kế HTTT. Đại học Công
nghệ, 2007.
2. Nguyên Văn Vỵ. Phân tích thiế kế HTTT. Hướng cấu trúc và hướng đối
tượng. NXB Thống kê, 2002.
3. Nguyễn Văn Vy. Phân tích và thiết kế HTTT quản lý. NXB Khoa học
Tự nhiên và Công nghệ, Hà nội, 2007.
4. Nguyễn văn Vy, Nguyễn Việt Hà. Giáo trình Kỹ nghệ phần mềm. Đại
học Công nghệ, 2006.
5. Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified Modeling
language User Guid. Addison-Wesley, 1998.
6. Jeffrey A.Hoffer, Joey F.Gorge, Joseph S.Valacich. Modern Systems
Analysis and Design. 2th Edition, Addison Wesley Longman, Inc. 1999.
7. Sommerville. Software Engineering. 6th Edition, Addison- Wasley,
2001.
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 4
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Mô hình vòng đời 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 dùng thực hiện
Phương pháp thuê bao
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 5
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Các phương pháp phát triển HTTT
Có những mô hình phát triển
HTTT nào?
Ý tưởng, nội dung, ưu và
nhược điểm của nó?
Mô hình nào có ưu thế hơn
cả? Tại sao?
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 6
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Vòng đời phát triển hệ thống
truyền thống (waterfall model)
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ự
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 7
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Vòng đời phát triển hệ thống
truyền thống
Thích hợp:
Các hệ thống có cấu trúc và được xác định chặt
chẽ (TPS, MIS)
Các hệ thống kỹ thuật phức tạp.
Không thích hợp với hệ thống vừa và nhỏ
Đị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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 8
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Phương pháp làm bản mẫu
Ý tưởng của làm bản mẫu (prototyping)
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 được hoàn thiện & sử dụng cho
các bước tiếp theo
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 9
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Phương pháp làm bản mẫu
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 đã
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 10
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Phương pháp làm bản mẫu
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ỏ đi
Bản mẫu là một đặc tả đượ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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 11
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Phương pháp làm bản mẫu
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 hệ thống nhỏ, hệ thống lớn có
thể chia nhỏ và nhiều tương tác người dùng
Tạo cơ sở cho ký hợp đồng, tăng lòng tin
khách hàng, huấn luyện người dùng
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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 12
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Mô hình xoắn ốc (spiral model)
Ý tưởng:
Quá trình phát triển được chia thành nhiều
bước lặp, phát triển từ trung tâm
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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 13
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Mô hình xoắn ốc
Bản mẫu ban đầu
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 tiếp
theo
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 14
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Mô hình xoắn ốc
Đánh giá và nhận xét
Thích hợp với các hệ thống qui mô lớn, chịu
được chi phí chuyên gia
Làm bản mẫu sử dụng như một cơ chế
giảm rủi ro
Cần thoả thuận lại với khách hàng khi cần Æ
có sự thay đổi linh hoạt trong phát triển
(không dễ thực hiện)
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 15
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Sử dụng lại
Ý tưởng: sử dụng lại các phần mềm
(gói) ứng dụng đã có
Mô hình chung nhất sử dụng phần mềm đóng gói
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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 16
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Sử dụng lại
Các yếu tố cần xét khi chọn gói phần mềm:
Đáp ứng 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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 17
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Sử dụng lại
Đánh giá và nhận xét
Rút ngắn thời gian, chi phí, dễ bảo trì, tài liệu
đầy đủ, làm việc ổn định
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, có nhiều
đặc thù.
Ngoài phần mềm sẵn có (component), có thể
sử dụng lại các mẫu thiết kế (patterns), khung
làm việc (frameworks)
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 18
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Phát triển hệ thống do
người sử dụng thực hiện
NSD phát triển 1phần đáng kể HTTT với sự
trợ giúp 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…)
Nhận xét:
z HTTT được xây dựng nhanh
z HTTT thường thiếu công nghệ tiên tiến,
tính hình thức hoá không cao, tài liệu
không được xây dựng kịp thời, khó kiểm
soát dữ liệu dư
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 19
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Phương pháp thuê bao
(outsourcing)
Ý tưởng: thuê 1 công ty chuyên
nghiệp xây dựng & vận hành hệ
thống
Nhận xét:
Nhận dịch vụ nhanh chóng, chỉ phải trả
chi phí sử dụng (không cần đầu tư)
Rắc rối xảy khi tổ chức cho thuê không
còn trách nhiệm với HTTT, dễ mất bí
mật kinh doanh, không tạo được tiềm
lực lâu dài
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 20
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
CASE
CASE (Computer-Aid-Software
Engineering): Kỹ nghệ phần mềm trợ
giúp bằng máy tính
Phân loại CASE
CASE bậc cao: công cụ tạo biểu đồ, bộ
sinh biểu mẫu báo cáo, công cụ phân tích
CASE bậc thấp: bộ sinh mã, công cụ
quản lý vòng đời & phối hợp hoạt động dự
án, kho chứa & bộ tạo sinh tài liệu
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 21
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
CASE (2)
Công nghệ CASE
Bàn thợ 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ử
Bàn thợ đ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ể
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 22
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
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, 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
•PTTK hướng đối tượng
•Dịch xuôi, dịch ngược
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 23
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
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
• Agent ???
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 24
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Quản lý dự án phát triển HTTT
Mục tiêu: đảm bảo dự án đáp ứng được
sự mong đợi của khách hàng và 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
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 25
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Khởi tạo dự án
1. Thiết lập đội dự án ban đầu
2. Thết lập các mối quan hệ với
khách hàng
3. Thiết lập dự án sơ bộ
4. Thiết lập các thủ tục quản lý
5. Thiết lập môi trường quản lý dự
án và nhật ký công việc dự án
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 26
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Lập kế hoạch dự án
Mô tả phạm vi dự án, các phương án có thể
và đánh giá khả thi
Phác hoạ một kế hoạch truyền thông
Xác định các chuẩn và các thủ tục quản lý
Phân chia dự án thành các nhiệm vụ có thể
quản lý được
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 27
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Lập kế hoạch sơ bộ
Phát triển một lịch trình sơ bộ
Xác định và đánh giá các rủi ro
Lập kế hoạch ngân sách ban đầu
Thiết lập mô tả công việc
Lập kế hoạch dự án cơ sở
0
1 13
7
9 11
10
8
5
6
4
3
2
12
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 28
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Thực hiện dự án
Triển khai kế hoạch dự án, đưa dự án
vào hoạt động
Lập lịch, thúc đẩy & giám sát tiến trình
thực hiện dự án theo lịch và kế hoạch
Quản lý sự thay đổi thực tế so với kế
hoạch
Bổ sung nhật ký công việc
Tiến hành thông báo hiện trạng
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 29
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Kết thúc dự án
Đóng dự án, giải phóng nguồn lực
Kết thúc mọi hợp đồng
Tổng kết, đánh giá sau dự án
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 30
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Tiến trình phân tích thiết kế HT
Tiến trình gồm những
giai đoạn chính nào?
Sản phẩm mô hình mỗi
giai đoạn là gì?
Phân biệt mô hình lôgic
mô hình vật lý?
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 31
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Sơ đồ tổng quát
Phân tích –Thiết kế HTTT
…Khởi thảo,
lập KH
Phân tích
Hệ thống
Thiết kế
Hệ thống
Dữ liệu hệ thực
Dự án khả thi
Kế hoạch triển khai
DL chi tiết hệ thực
Mô hình nghiệp vụ
Mô hình phân tích
• MH dữ liệu KN
• MH xử lý KN
Thiết kế logic
• MH dữ liệu logic
• MH xử lý logic
• Đặc tả Thủ.tục
Thiết kế vật lý
• CS dữ liệu
• Kiến trúc HT
• Giao.diện
• Thủ tục
Khảo sát
hệ thực
Oct-2007 Khoa Công nghệ thông tin - Đại học Công nghệ 32
Nguyễn Văn Vỵ – Nguyễn thị Nhật Thanh
Sơ đồ tổng quát PHÂN TÍCH&TK HTTT
e. Thiết kế
vật lý
(m.h. vật lý)
d. Thiết kế
logic
(m.h.logic)
c. Phân tích
yêu cầu
(m.h. khái
niệm)
b. Xác định yêu cầu
(mô hình nghiệp vụ)
a. Khảo
sát
Hồ sơ,
tài liệu
khảo sát,
tổng hợp
Biểu đồ
ngữ
cảnh hệ
thống
Biểu đồ
phân rã
chức
năng
Danh
sách
các hồ
sơ dữ
liệu
Mô tả chi tiết
chức năng
Biểu đồ ngữ
cảnh miền
nghiên cứu
Biểu đồ phân
rã chức năng
rút gọn, chi tiết
Danh sách
hồ sơ dữ
liệu sử dụng
Ma
trận
phân
tích
Tđ. dữ liệu
Mô tả chi
tiết tiến
trình
Biểu đổ
luồng dữ
liệu vật lý
các mức
Mô hình
thực thể -
mối quan hệ
(ERM)
Tđ. dữ liệu Tđ. dữ liệu
Đặc tả
logic mỗi
tiến trình
Biểu đồ
luồng dữ
liệu logic
các mức
Thiết kế
biểu mẫu,
báo cáo
Mô hình
dữ liệu
quan hệ
Đặc tả mô
đun chương
trình
Xác định luồng
hệ thống, đặc
tả cấu trúc HT
Đặc tả
tương tác,
giao diện
Đặc tả
CSDL vật lý
Thiết kế an
toàn & bảo
mật HT
Xác định
giao diện
nhập liệu