1. GIỚI THIỆU MÔN HỌC
Môn học: Phân tích thiết kế hệ thống
Lý thuyết: 45 tiết
Đánh giá môn học:
Kiểm tra thƣờng kỳ + tiểu luận + Giữa kỳ + cuối kỳ
Tài liệu:
Slide bài giảng Phân tích thiết kế hệ thống
1
2. MỤC TIÊU CỦA MÔN HỌC
Nắm được các bước tiến hành phân tích hệ thống:
phân tích dữ liệu thiết kế mô hình quan hệ
kiểm tra yêu cầu chức năng
kiểm tra dạng chuẩn
thiết kế bảng
thiết kế xử lý.
Có kỹ năng trong từng bước phân tích, thiết kế.
Có khả năng đọc được bảng phân tích, thiết kế hướng
đối tượng để xây dựng chương trình.
2
3. TÀI LIỆU HỌC TẬP
Giáo trình phân tích thiết kế hệ thống
Phần mềm hỗ trợ thiết kế: Microsoft Visio
3
4. TÀI LIỆU THAM KHẢO
Giáo trình phân tích thiết kế hệ thống thông tin-
Nguyễn Văn Vỵ
Practical data modelling for database design –
Renzo D’orazio & Gunter Happel
System Analysis and Design in a changing world
– John W.Satzinger, Robert B.Jakson, Stephen
D.Burd – Thomson Learning.
System Analysis and Design – Kenneth E.
Kendall, Julie E. Kendall – Prentice Hall.
4
5. NHIỆM VỤ CỦA SINH VIÊN
1. Tham dự đầy đủ các buổi học lý thuyết với tinh
thần học hỏi.
2. Tự nghiên cứu tài liệu, đọc bài giảng và làm bài
tập ở nhà theo yêu cầu giảng viên
3. Trong giờ học, giải bài tập, thuyết trình tiểu luận
theo yêu cầu của giảng viên.
5
6. Chƣơng 1
PHƢƠNG PHÁP LUẬN
PHÁT TRIỂN HTTT
I. TỔNG QUAN:
Khái niệm về PT & TKHT
Tầm quan trọng của PT & TKHT
Những yêu cầu của nhà PT & TKHT
6
7. I.1. Khái niệm về phân tích và thiết kế hệ thống:
Phân tích và thiết kế hệ thống là một ngành:
Sản phẩm:
Các bản thiết kế phần mềm
Các chức năng nghề nghiệp:
Có phƣơng pháp, các công cụ và kỹ năng yêu cầu
riêng:
7
8. I.2. Tầm quan trọng của PT & TK
PT & TK ta có thể đƣa các ý đồ vào sản phẩm.
Có thể phát hiện và khắc phục những sai sót, tránh
các rủi ro khi xây dựng.
Đặc biệt phần mềm có phân tích và thiết kế tốt làm
giảm chi phí và đảm bảo sự phát triển của phần mềm
8
9. Những sai sót trong làm phần mềm:
- Trong phân tích và thiết kế chiếm: 46%
- Các khâu khác chiếm: 54%
Sửa chữa các sai sót có chi phí rất lớn:
PTTK Lập trình cài đặt Vậnhành
chi phí (lần) 1 40 90
Chi phí bảo hành chiếm gần 50% tổng chi phí phát
triển phần mềm
9
10. I.3. Yêu cầu của nhà PTTK:
Phải có tối thiểu 4 kỹ năng:
Kỹ năng phân tích
Kỹ năng công nghệ thông tin
Kỹ năng về nghiệp vụ và quản lý
Khả năng giao tiếp
10
11. II. HỆ THỐNG VÀ HỆ THỐNG THÔNG TIN
Hệ thống TT là gì?
Phát triển một HTTT
Bản chất của việc phát triển HTTT trong tổ chức
Các cách tiếp cận phát triển HTTT
Vòng đời phát triển của HTTT
Các mô hình phát triển HTTT
Các phƣơng pháp phát triển HTTT
Xây dựng thành công một HTTT
11
12. II.1. HỆ THỐNG LÀ GÌ?
Hệ thống là một tập hợp các thành phần liên
kết với nhau, thể hiện qua một phạm vi
(boundary) xác định, họat động kết hợp với
nhau nhằm đạt đến những mục đích xác
định.
Ví dụ :
- Trong tự nhiên : Hệ mặt trời
- Trong sinh học, cơ thể con ngƣời : Hệ
thống tuần hoàn máu,…
- Trong vật lý : máy móc
- Trong trao đổi thông tin: Hệ thống thông tin
12
13. HỆ THỐNG THÔNG TIN LÀ GÌ?
Hệ thống thông tin (HTTT- Information
System) là một hệ thống các thiết bị phần
cứng và phần mềm, khi hoạt động đáp ứng
đƣợc những nhu cầu nhất định của tổ chức.
13
14. II.2. PHÁT TRIỂN MỘT HTTT
Phát triển một HTTT là Tất cả các hoạt động để tạo ra
một HTTT hoạt động trên thực tế gọi là phát triển HTTT
(Information Developtment). Quá trình đó bắt đầu từ khi
nêu vấn đề cho đến khi đưa hệ thống vào vận hành
trong tổ chức
Dữ liệu (data) là những mô tả về sự vật, con người và
sự kiện trong thế giới mà chúng ta gặp bằng nhiều cách
thể hiện khác nhau.
Thông tin (information) là dữ liệu được đặt vào một ngữ
cảnh với một hình thức thích hợp có lợi cho người sử
dụng cuối cùng.
14
15. HỆ THỐNG THÔNG TIN QUẢN LÝ
Hệ thống thông tin quản lý là sự phát triển và sử
dụng HTTT có hiệu quả trong một tổ chức.
Năm yếu tố cấu thành HTTT quản lý
Thiết bị tin học
Các chương trình
Dữ liệu
Thủ tục – qui trình
Con người
15
16. Phân loại HTTT
Hệ thống tự động văn phòng
Hệ thống truyền thông
Hệ thống xử lý giao dịch
Hệ cung cấp thông tin thực hiện
Hệ thống thông tin quản lý
Hệ trợ giúp quyết định
Hệ chuyên gia
Hệ trợ giúp điều hành
Hệ trợ giúp làm việc theo nhóm
Hệ thống thông tin tích hợp
16
17. II.3. BẢN CHẤT CỦA VIỆC PHÁT TRIỂN
HTTT TRONG TỔ CHỨC
Tại sao tổ chức lại xây dựng HTTT?
Xây dựng HTTT là giải pháp giải quyết các
vấn đề mà tổ chức gặp phải
Xây dựng HTTT tạo đƣợc tiềm lực mới, năng
lực mới cho tổ chức và là giải pháp giải
quyết những khó khăn mà tổ chức gặp phải
trong tƣơng lai
Do áp lực từ bên ngoài cần xây dựng HTTT
17
18. Những nội dung cơ bản của việc phát
triển HTTT:
Các hoạt động phát triển một HTTT
và trình tự thực hiện chúng
Các phƣơng pháp, công nghệ và
công cụ đƣợc sử dụng
Tổ chức và quản lý quá trình phát
triển một HTTT
18
19. II.4. TIẾN HÓA CỦA CÁCH TIẾP CẬN
PHÂN TÍCH VÀ THIẾT KẾ HTTT
Phân tích thiết kế hệ thống trải qua 4 cách:
Cách 1: Tiếp cận hƣớng tiến trình (process driven
approach):
Thực hiện theo trình tự công việc. Cần dữ
liệu nào thì sử dụng dữ liệu đó
Nhƣợc điểm:
-Dữ liệu phụ thuộc vào tiến trình -> dƣ thừa
do sử dụng lặp lại
-Thay đổi tiến trình -> thay đổi tổ chức dữ
liệu
19
20. Mối quan hệ giữa dữ liệu và ứng dụngtheo cách
tiếp cận định huớng tiến trình
Hệ thống trả lƣơng Hệ thống quản lý dự án
Dữ liệu Dữ liệu Dữ liệu Dữ liệu
thuế Nhân sự Nhân sự dự án
20
21. Cách 2: Tiếp cận hƣớng dữ liệu: (data driven approach)
-Tách dữ liệu ra khỏi quá trình xử lí
- Tạo khả năng dùng chung dữ liệu
ứng dụng 1 ứng dụng 2 ứng dụng n
Cơ sở dữ liệu
Cấu trúc hệ thống định hƣớng dữ liệu
21
22. Cách 3: Tiếp cận hƣớng cấu trúc (structure approach) :
-Tách dữ liệu ra khỏi quá trình xử lí
-Môđun hóa cấu trúc chƣơng trình
Ứng dụng 1 Ứng dụng 2 Ứng dụng 3
Tầng ứng dụng
Tầng dữ liệu
Cơ sở dữ liệu
Cấu trúc hệ thống định hƣớng cấu trúc
22
23. Cách 4: Tiếp cận hướng đối tượng (Object-Oriented approach):
Tách dữ liệu ra khỏi quá trình xử lý
Đối tượng hóa cấu trúc chương trình. Chương trình
được chia thành các đối tượng bao gồm cả dữ liệu và xử
lý -> cả hệ thống là sự ghép nối các đối tượng bằng
truyền thông
DT1 DT2
DL+XL DL+XL
liệu
Dữ
DT3 DT4
DL+XL DL+XL
23
24. II.5. VÕNG ĐỜI PHÁT TRIỂN HTTT
Hoạch định và chọn lựa
hệ thống
Triển khai và vận hành Thiết kế hệ thống Phân tích hệ thống
hệ thống
Systems Development Life Cycle
15/5/2012 24
24/90
25. Phase 1: Systems Planing and Selection
- Phân tích ban đầu về hệ thống hiện tại của tổ chức
nhiệm vụ của tổ chức là gi?
Chức năng của tổ chức là gi?
Cơ cấu của tổ chức để thực hiện chức năng
Mục tiêu của hệ thống cần phấn đấu
- Dự kiến HTTT
Các hệ con
Phạm vi (liên quan đến bộ phận nào)
Các thực thể (liên quan đến hoạt động)
Các thành phần bên ngoài hệ thống
Kết cấu phần cứng
25
26. Phân tích tính khả thi của dự án
khả thi về kinh tế
• Nguồn vốn lấy ở đâu và bao nhiêu?
• Khi vận hành hệ thống phải chấp nhận được
• Phải có thời gian thu hồi vốn ( chấp nhận
được)
khả thi về kỹ thuật
• Thiết bi: đã có trên thị trường (có thể mua)
• Công nghệ sử dụng:
- khả năng nắm vững
- Đã được triển khai
26
27. khả thi về hoạt động
khả thi về pháp lý
Các tổ chức quản lý Đã được Tổ
Các bước công việc chức thông qua
Việc truyền thông
Việc đánh giá và quản lý
27
28. Phase 2: Systems Analysis
- Thu thập thông tin
- Phân tích nhu cầu thông tin của tổ chức
hệ thống cần thực hiện chức năng gì?
dữ liệu đầu vào là gì?
Thông tin cần tạo ra là gì?
Các hạn chế gì đặt ra?
Khối lượng, quy trình, đối tượng, định dạng của
các thông tin, dữ liệu
28
29. Phase 3: Systems Design
Chuyển các yêu cầu về thông tin của tổ chức ở giai đoạn phân
tích thành các bản đặc tả là các giải pháp công nghệ thông tin
sao cho các nhà lập trình và các nhà làm cơ sơ dữ liệu có thể
chuyển thành chương trình và cấu trúc cơ sở dữ liệu trên máy
Qúa trình thiết kế được chia làm 2 bước;
Thiết kế logic
Mô tả hệ thống có những gì và quan hệ với nhau thế nào?
Kết quả của thiết kế logic ta có:
• Thiết kế CSDL logic(mô hình dl quan hệ)
• Thiết kế xử lý (sơ đồ luồng dữ liệu logic)
• Các mô tả logic của mỗi tiến trình
Thiết kế vật lý:Là quá trình chuyển mô hình logic thành các
bản thiết kế vật lý hay các đặc tả kỹ thuật.lựa chọn ngôn ngữ
lập trình nào sẽ sử dụng, những hệ cơ sở dữ liệu… 29
30. Phase 4: Systems Implemention and Operation
Triển khai hệ thống:
Tạo lập chương trình:
- Chuyển các thiết kế thành chương trình và cấu
trúc dữ liệu (mã hoá- coding)
- Kiểm thử:
+ Kiểm thử chức năng
+ Kiểm thử hệ thống
+ Kiểm thử chấp nhận
Cài đặt và chuyển đổi hệ thống
Lắp các thiết bị
Cài đặt chương trình
Chuyển đổi hệ củ thành hệ mới
30
31. Chuyển đổi hệ cũ thành hệ mới
• Chuyển đổi dữ liệu
• Chuyển đổi tổ chức
• Chuyển đổi quản lý
Đào tạo cán bộ
• Cán bộ điều hành (quản trị)
• Cán bộ kỹ thuật
• Người sử dụng
• Lập các tài liệu hướng dẫn
31
32. Vận hành và bảo trì:
• Sửa chữa các lỗi đã bỏ qua, khi vận hành phát
hiện
• Làm thích hợp chương trình với điều kiện của tổ
chức
Thích hợp với môi trường kỹ thuật
Thích hợp với môi trường người dùng
• Bổ sung và hoàn thiện các chức năng mới
32
33. II.6. CÁC MÔ HÌNH PHÁT TRIỂN HTTT
1. Mô hình thác nước (Waterfall Model)
2. Mô hình tăng trưởng (Incremental Model)
3. Mẫu thử (Prototyping)
4. Mô hình xoắn ốc (Spiral Model)
5. Phát triển dựa trên các thành phần có sẵn
(Component-Based Development)
33
34. Mô hình thác nƣớc
• Mỗi giai đoạn chỉ có thể
bắt đầu khi đã kết thúc giai
đoạn trước đó.
• Chu trình này còn được
gọi là chu trình tuyến tính
Nhƣợc điểm:
Không có sự quay lui.
15/5/2012 34
34/90
35. Mô hình tăng trƣởng
(D.R. Graham 1988)
15/5/2012 35
35/90
36. Mẫu thử (bản mẫu)
Giao tiếp Lập kế hoạch nhanh
Mô hình hoá
thiết kế nhanh
Triển khai, Chuyển
giao và Phản hồi Xây dựng mẫu thử
36
15/5/2012 36
36/90
37. Khảo sát, thu thập TT sơ bộ
XD mẫu ban đầu
Làm mịn mẫu
Khảo sát, lấy ý kiến NSD
Hạn chế
Quyết
Loại bỏ Tồi
định
Mẫu hoàn chỉnh
Chƣa HT đã hoàn Đã
SDPP khác Hoàn chỉnh dự án
chỉnh
15/5/2012 37
37/90
38. Mô hình xoắn ốc
Xác định mục
tiêu, các Đánh giá các
phương án và phương án
các ràng buộc
Chu trình 1
Thiết kế và tạo lập
1 nguyên mẫu
Thử nghiệm
nguyên mẫu
38
15/5/2012 38
38/90
39. Phát triển dựa trên các thành phần
Các thành phần COTS (Commercial-Off-The-Shelf)
Định nghĩa
mục tiêu
Lựa chọn thành
phần phù hợp
Đối sánh
Thương lượng
Phân loại các
thành phần
39
15/5/2012 39
39/90
40. II.7. CÁC PHƢƠNG PHÁP PHÁT TRIỂN HTTT
1. Ba thành phần cơ bản của phương pháp
2. Các phương pháp phát triễn hệ thống
3. Những thách thức đối với các phương pháp
40
41. Ba thành phần cơ bản của một PP
Tập hợp các khái niệm và mô hình
Tùy thuộc từng phương pháp
Chuẩn cụ thể
Tiến độ triễn khai
Các bước đi lần lượt; Các hoạt động cụ thể
Kết quả qua từng bước
Công cụ trợ giúp
Sản sinh và điều chỉnh mô hình, biểu đồ
Kiểm tra cú pháp; Kiểm thử
Mô phỏng
15/5/2012 41
41/90
42. Các phƣơng pháp
Có 2 trào lưu là: Mô hình hóa theo hướng chức năng (lấy
chức năng làm trục mô hình hóa) và mô hình hóa theo
hướng đối tượng (lấy đối tượng làm đơn vị mô hình hóa).
PP hệ thống: MERISE
PP chức năng: SADT (Strutured Analysis and Design)
Phương pháp MCX (Methode de xavier castellani)
PP hướng đối tượng
15/5/2012 42
42/90
43. Phƣơng pháp MERISE
Có nguồn gốc từ Pháp
Ra đời cuối thập niên 70
Được dùng nhiều ở Pháp & các nước Châu Âu
15/5/2012 43
43/90
44. Ý tƣởng của MERISE
Sau giai đoạn tiếp cận, điều tra và tổng hợp sẽ chia
hệ thống thành 2 thành phần
Dữ liệu (data)
Xử lý (Process)
Chia quá trình phát triển hệ thống thành 3 mức tiếp
cận: * Với mỗi thành phần
Quan niệm và mỗi mức tiếp cận có
Logic một mô hình tương ứng
Vật lý * Mỗi mức tiếp cận
thường do một hoặc
một số thành phần hệ
thống đảm nhận
15/5/2012 44
44/90
45. Ƣu – Nhƣợc
Ưu điểm:
Có cơ sở khoa học vững chắc
Nhược điểm:
Cồng kềnh, không thích hợp cho các hệ thống nhỏ
15/5/2012 45
45/90
46. Phƣơng pháp SADT (Strutured
Analysis and Design)
Xuất phát từ Mỹ. Douglas T. Ross 1977
Ý tưởng cơ bản: phân rã một hệ thống thành các
phân hệ nhỏ và đơn giản.
Dựa trên nguyên lý:
Xuất phát từ một mô hình
Phân tích đi xuống: từ tổng thể đến chi tiết
Dùng một mô hình chức năng và một mô hình quan
niệm
Thể hiện tính đối ngẫu của hệ thống
15/5/2012 46
46/90
47. SADT dựa trên nguyên lý:
Xuất phát từ một mô hình
Phân tích đi xuống: từ tổng thể đến chi tiết
Dùng một mô hình chức năng và một mô hình quan
niệm
Thể hiện tính đối ngẫu của hệ thống
Sử dụng các biểu diễn dưới dạng đồ họa.
Phối hợp hoạt động của nhóm
Ưu tiên tuyệt đối cho hồ sơ viết
15/5/2012 47
47/90
48. SADT sử dụng các kỹ thuật:
Lưu đồ dòng dữ liệu
Từ điển dữ liệu
Ngôn ngữ giả (Anh ngữ có cấu trúc)
Bảng quyết định
Cây quyết định
15/5/2012 48
48/90
49. Ƣu – Nhƣợc
Ưu điểm
Gần thực tế
Dễ sử dụng
Nhược điểm
Không bao gồm toàn bộ tiến trình phân tích
Nếu không thận trọng trùng lắp thông tin
15/5/2012 49
49/90
50. Phƣơng pháp MCX (Methode de xavier
castellani)
Có nguồn gốc từ Pháp (do các giáo sư của học viện
xí nghiệp tạo ra)
Cho phép xây dựng một mô hình tổng quát cũng
như phân hệ của hệ thống thông tin
Phân tích các thành phần dữ liệu và lượng hóa các
xử lý cũng như truyền thông hệ thống thông tin
15/5/2012 50
50/90
51. Ý tƣởng
Phương pháp MCX phân hoạch quá trình phân tích
thành các giai đoạn
Phân tích vĩ mô
Phân tích sơ bộ
Phân tích quan niệm
Phân tích chức năng
Phân tích cấu trúc
15/5/2012 51
51/90
52. Ƣu – Nhƣợc
Ưu điểm:
Hữu hiệu
Thích hợp với việc thực hành
Nhược điểm:
Hơi rườm rà
15/5/2012 52
52/90
53. Phƣơng pháp phân tích hƣớng đối tƣợng
(Object Oriented Analysis)
Hình thành giữa thập niên 80, đến nay phát triển rất
mạnh
Dựa trên một số khái niệm cơ bản
Đối tượng(Object): gồm dữ liệu và thủ tục tác động lên dữ
liệu này.
Đóng gói(Encapsulation): không cho phép tác động trực
tiếp lên dữ liệu của đối tượng mà phải thông qua các
phương thức trung gian
Lớp (Class): tập hợp các đối tượng có chung một cấu trúc
dữ liệu và cùng một phương pháp.
Thừa kế (Heritage)
15/5/2012 53
53/90
54. 4.4. Những thách thức đối với các phương
pháp
Sự phức tạp của bài toán
Các nghiệp vụ phức tạp, xa lạ với người phát triển hệ
thống
Yêu cầu trao đổi giữa người với máy
Người dùng mong muốn sự trao đổi này thì người
phát triển hệ thống lại hiểu khác đi
Đối đầu với sự thay đổi liên tục
Các nhu cầu luôn thay đổi nên hệ thống cũng phải
thay đổi theo
15/5/2012 54
54/90
55. II.8. XÂY DỰNG THÀNH CÔNG HTTT
Khái niệm HTTT xây dựng thành công:
Một số tiêu chí đánh giá:
• Đạt đƣợc mục tiêu thiết kế đề ra của tổ
chức
• Chi phí vận hành là chấp nhận đƣợc
• Đáp ứng các chuẩn mực của một hệ
thống thông tin hiện hành
• Sản phẩm có giá trị xác đáng
• Dễ học, dễ nhớ, dễ sử dụng
• Mềm dẻo dễ bảo trì: có thể kiểm tra, mở
rộng ứng dụng và phát triển tiếp đƣợc
55
56. Bài kỳ sau
Chƣơng 2
XÁC ĐỊNH YÊU CẦU HỆ THỐNG
15/5/2012 56
56/90