Bài 1: Tổng quan về thiết kế HTTT6 Đánh giá chất lượng phần mềm Đánh giá chất lượng thiết kế dựa vào các tiêu chí sau với mục đích của giai đoạn thiết kế là dễ đọc, dễ hiểu, dễ viết
Trang 1HỆ THỐNG THÔNG TIN QUẢN LÝ
CHƯƠNG 6 THIẾT KẾ PHẦN MỀM
Trang 2CHƯƠNG 6: THIẾT KẾ PHẦN MỀM
2
Trang 3Bài 1: Tổng quan về thiết kế HTTT
phục vụ cho việc quản lý, theo dõi việc phát triển hệ thống ứng
dụng và hỗ trợ cho việc bảo hành, bảo trì hệ thống trong tương lai
Giai đoạn thiết kế sẽ bao gồm việc xem xét các khả năng sử dụng máy tính để thực hiện các yêu cầu nghiệp vụ.
Hệ thống sẽ máy tính hóa các chức năng nào, giao diện tương tác với người dùng ra sao, dữ liệu được cập nhật và lưu trữ như thế
nào?
Hệ thống sẽ sử dụng các giải pháp kỹ thuật để đảm bảo hiệu năng, tốc độ theo yêu cầu đã đặt ra
Trang 4Bài 1: Tổng quan về thiết kế HTTT
Trang 5Bài 1: Tổng quan về thiết kế HTTT
5
Đầu vào và đầu ra của quá trình thiết kế
Đầu vào của quá trình thiết kế HTTT (Sử dụng kết quả của quá
Thiết kế dữ liệu chi tiết
Thiết kế chi tiết module chương trình: đặc tả giao diện cập nhật dữ liệu, đặc tả báo cáo, mô tả sử dụng dữ liệu
Trang 6Bài 1: Tổng quan về thiết kế HTTT
6
Đánh giá chất lượng phần mềm
Đánh giá chất lượng thiết kế dựa vào các tiêu chí sau với mục đích của giai
đoạn thiết kế là dễ đọc, dễ hiểu, dễ viết code và dễ bảo trì, vì vậy có thể đưa ra một số hướng sau đây:
Thiết kế nên đưa ra cách tổ chức phân cấp để kiểm soát các thành phần phần mềm
Thiết kế nên chia theo các module tức là phần mềm nên được phân hoạch một cách logic thành các phần con nhỏ hơn, thực hiện những chức năng xác định Điều này giúp dễ dàng cho việc quản lý, xây dựng và bảo trì.
Mỗi module nên kiểm soát để chỉ có một số hợp lý các module thành phần tại mức tiếp theo.
Các module nên độc lập quan hệ để cho các trao đổi giữa các module là tối thiểu nhất.
Để có thể dễ dàng mở rộng, mỗi module chỉ nên sử dụng cho một chức năng
nghiệp vụ nào đó.
Thiết kế nên mô tả biểu diễn tách biệt giữa dữ liệu và thủ tục
Thiết kế nên hướng tới các chương trình con hay thủ tục
Thiết kế nên mô tả giao diện cho phép dễ dàng tương tác giữa thủ tục với môi
Trang 7Bài 2: Các bước cơ bản thiết kế phần mềm
7
Các bước thiết kế
Theo quan điểm quản lý dự án,
thiết kế phần mềm được tiến hành
theo hai bước: thiết kế sơ bộ
và thiết kế chi tiết.
Thiết kế sơ bộ quan tâm tới
kiến trúc tổng thể,
kiến trúc dữ liệu,
các mô tả tổng quát
chức năng phần mềm và giao diện.
Thiết kế chi tiết sẽ tập trung làm mịn
các cấu trúc dữ liệu,
mô tả chi tiết các giao diện,
Trang 8Bài 3: Các ngôn ngữ thiết kế phần mềm.
Độ phức tạp thuật toán của ngôn ngữ
Môi trường hoạt động của phần mềm
Hiệu năng của phần mềm
Độ phức tạp của cấu trúc chương trình
Tri thức của cán bộ phát triển phần mềm
Có chương trình dịch tốt
Trang 9Bài 4: Đảm bảo chất lượng phần mềm.
9
Các nhân tố chất lượng phần mêm
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển
hệ thông thông tin
Giai đoạn nghiên cứu khả thi
Giai đoạn phân tích
Giai đoạn thiết kế
Giai đoạn xây dựng
Giai đoạn kiểm tra chấp nhận
Giai đoạn triển khai
Giai đoạn bảo trì
Trang 10 Đã đáp ứng các yêu cầu được xác định tường minh.
Được phát triển tuân thủ các tiêu chuẩn tường minh sản xuất phần mềm theo công nghệ.
Phần mềm có thể tuân thủ cả một số yêu cầu không tường minh
khác.
Chất lượng phần mềm còn bao gồm một số nhân tố có thể có độ đo xác định, rõ ràng hơn.
Nói chung, các nhân tố chất lượng phần mềm tập trung đánh giá
cho ba khía cạnh phần mềm là các đặc trưng: vận hành, khả năng trải qua các thay đổi - sửa chữa của các sản phẩm, tính thích nghi - chuyển đổi của sản phẩm với môi trường mới.
Trang 11Bài 4: Đảm bảo chất lƣợng phần mềm.
11
Nhân tố đo chất lƣợng phần mềm
Trang 12Bài 4: Đảm bảo chất lƣợng phần mềm.
12
Nhân tố đo chất lƣợng phần mềm
Trang 13Bài 4: Đảm bảo chất lượng phần mềm.
13
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Giai đoạn nghiên cứu khả thi
Giai đoạn phân tích
Giai đoạn thiết kế
Giai đoạn xây dựng
Giai đoạn kiểm tra chấp nhận
Giai đoạn triển khai
Giai đoạn bảo trì
Trang 14Bài 4: Đảm bảo chất lượng phần mềm.
14
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Trang 15Bài 4: Đảm bảo chất lượng phần mềm.
15
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Trang 16Bài 4: Đảm bảo chất lượng phần mềm.
16
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Trang 17Bài 4: Đảm bảo chất lượng phần mềm.
17
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Trang 18Bài 4: Đảm bảo chất lượng phần mềm.
18
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Trang 19Bài 4: Đảm bảo chất lượng phần mềm.
19
Vai trò của người sử dụng trong các giai đoạn xây dựng và phát triển hệ thông thông tin.
Trang 20Bài 5: Phương pháp thiết kế Top-Down
20
Đây là một phương pháp thiết kế giải thuật dựa trên tư tưởng mô đun hoá
Nội dung của phương pháp thiết kế này như sau:
Trước hết người ta xác định các vấn đề chủ yếu nhất mà việc giải quyết bài toán yêu cầu, bao quát được toàn bộ bài toán
Sau đó phân chia nhiệm vụ cần giải quyết thành các nhiệm vụ cụ thể hơn tức là chuyển dần từ mô đun chính đến cấc mô đun con từ trên xuống dưới
Do vậy phương pháp có tên thiết kế “từ đỉnh xuống” (Top – Down
Design).
Trang 21Bài 6: Phương pháp thiết kế Bottom-Up
21
Tư tưởng của phương pháp thiết kế này ngược lại với phương pháp Top – down design và bao gồm các ý chính sau đây:
Trước hết, người ta tiến hành giải quyết các vấn đề cụ thể
Sau đó trên cơ sở đánh giá mức độ tương tự về chức năng của các vấn đề này trong việc giải quyết bài toán người ta gộp chúng lại thành từng
nhóm cùng chức năng từ dưới lên trên cho đến mô đun chính
Sau đó, sẽ thiết kế thêm một số chương trình làm phong phú hơn, đầy đủ hơn chức năng của các phân hệ và cuối cùng là thiết kế một chương trình làm nhiệm vụ tập hợp các mô đun thành một hệ chương trình thống nhất, hoàn chỉnh.
Trang 22Bài 7: Thiết kế các cơ sở dữ liệu.
22
Kiến trúc của một hệ cơ sở dữ liệu
Mục đích của thiết kế CSDL
Nội dung của thiết kế CSDL
Qúa trình thiết kế CSDL
Trang 23Bài 7: Thiết kế các cơ sở dữ liệu.
23
Kiến trúc của một hệ cơ sở dữ liệu
Trang 24Bài 7: Thiết kế các cơ sở dữ liệu.
24
Kiến trúc của một hệ cơ sở dữ liệu
Lược đồ khái niệm là mô tả các lĩnh vực ứng dụng của CSDL Lược
đồ khái niệm bao gồm một danh sách các kiểu thực thể được lựa chọn và một tập hợp các ràng buộc áp dụng cho các mối quan hệ.
Lược đồ cơ sở dữ liệu (Database Schema) Là một mô tả của dữ liệu được
lưu trữ trong CSDL và xác định những thành phần dữ liệu nào được lưu trữ
có những đường truy nhập nào giữa những thành phần này
Một phần của Lược đồ CSDL được quan tâm bởi một hoặc một nhóm người
sử dụng được gọi là Lược đồ CSDL con
Lược đồ CSDL con có các tác dụng sau đây:
Nó có thể được những người lập trình ứng dụng sử dụng để tìm những đường truy nhập
, nó cũng có thể được những người sử dụng tham khảo khi sử dụng bộ sinh chương trình làm báo cáo hoặc truy vấn dữ liệu
Nó còn có thể được dùng để chia CSDL thành các đơn vị để mô tả các
Trang 25Bài 7: Thiết kế các cơ sở dữ liệu.
25
Kiến trúc của một hệ cơ sở dữ liệu
Lược đồ vật lý (Physical schema):Lược đồ vật lý mô tả cấu trúc vật
lý của CSDL
Xây dựng Lược đồ vật lý là phần chính trong giai đoạn thiết kế.
Tuy nhiên, nó còn có thể được sử dụng như một bộ phận tích hợp của hệ CSDL hoạt động
Cấu trúc lưu trữ vật lý: Cấu trúc được dùng để lưu trữ một CSDL
thực sự được gọi là cấu trúc lưu trữ vật lý Nó gồm có các tệp trên
đĩa, băng từ, chỉ dẫn lưu trữ chính và các chương trình để xử lý các thành phần này
Hệ sao lục (BACK – UP) và khôi phục (RESTORE): Hệ sao lục và
khôi phục là các đơn thể cho phép xây dựng lại CSDL sau những sự
cố do phần cứng hoặc phần mềm gây ra
Trang 26Bài 7: Thiết kế các cơ sở dữ liệu.
26
Kiến trúc của một hệ cơ sở dữ liệu
Giao diện với người sử dụng đầu cuối: Là một phần mềm của giao diện với
người sử dụng đầu cuối chủ yếu bao gồm các chương trình ứng dụng, các
bộ sinh chương trình báo cáo và ngôn ngữ hỏi đáp
Đơn thể quy chiếu từ logic sang vật lý: các chương trình ứng dụng, các
chương trình sinh báo cáo và các ngôn ngữ hỏi đáp yêu cầu các khối dữ liệu
sử dụng một vài ngôn ngữ logic dựa trên các cấu trúc như đã đặc tả trong Lược đồ CSDL
Hệ con riêng (Privacy Sub - System):Hệ con riêng bảo vệ CSDL khỏi những
truy nhập trái phép Tốt nhất là các ràng buộc riêng được biểu thị bằng một ngôn ngữ logic chung với các chương trình ứng dụng và do đó nó được gắn liền vào Lược đồ CSDL
Hệ con toàn cục (Intergrity Sub - System):Hệ con này bảo vệ CSDL tránh
việc đưa vào một số kiểu dữ liệu sai Các ràng buộc chung
Trang 27Bài 7: Thiết kế các cơ sở dữ liệu.
27
Mục đích của thiết kế CSDL
CSDL là nơi lưu giữ lâu dài các dữ liệu của hệ thống ở bộ nhớ ngoài Các
dữ liệu này phải được tổ chức tốt theo hai tiêu chí:
Hợp lý, nghĩa là phải đủ dùng và không dư thừa.
Truy nhập thuận lợi, nghĩa là tìm kiếm, cập nhật, bổ sung và loại bỏ các
thông tin sao cho nhanh chóng và thuận lợi
Ở giai đoạn thiết kế này, ta phải biến đổi lược đồ khái niệm nói trên thành
lược đồ vật lý, tức là một cấu trúc lưu trữ thực sự của dữ liệu trong bộ nhớ
ngoài, cấu trúc này thường được chọn trong các dạng sau:
Trang 28Bài 7: Thiết kế các cơ sở dữ liệu.
28
Phần này đề cập tới một số khái niệm và kỹ thuật trong thiết
kế CSDL nhằm cung cấp các thông tin cho các chuyên gia đểphối hợp thiết kế hoặc hỗ trợ đánh giá thiết kế dữ liệu
Giai đoạn thiết kế phải biến đổi lược đồ dữ liệu khái niệm
thành lược đồ vật lý- tức là cấu trúc lưu trữ thực sự của dữ
liệu trên bộ nhớ ngoài của máy tính- bằng cách sử dụng lược
đồ logic trung gian là các định nghĩa bảng (hoặc tệp) dữ liệu, bảng (hoặc tệp) chỉ mục,…
Dữ liệu phải được tổ chức tốt theo hai tiêu chuẩn sau:
Hợp lý- đủ và không dư thừa
Truy nhập thuận lợi: hỗ trợ tìm kiếm, cập nhật, bổ sung và loại
bỏ các thông tin nhanh chóng và tiện lợi.
Trang 29Bài 7: Thiết kế các cơ sở dữ liệu.
29
Qúa trình thiết kế CSDL
Mỗi hệ QTCSDL hoặc hệ quản lý tệp có các quy tắc cắt thứ nhất riêng của mình
Các quy tắc cắt thứ nhất cho hệ QTCSDL phân cấp.
Bỏ qua các quan hệ thừa (Nghĩa là các quan hệ không tham gia vào một đường biến đổi nào).
Xác định sự phân cấp bằng cách sử dụng các quan hệ 1 – N, lấy kiểu thực thể “1” làm cha và kiểu thực thể “N” làm con.
Mỗi kiểu thực thể “Con” có nhiều cha phải đựơc cấp cho một trong số các cha của nó Thực thể cha nên chọn cơ số trung bình nhỏ nhất bản ghi “N” (Ví dụ thực thể đơn hàng bán ra có số dòng đơn hàng tương ứng ít hơn thực thể kho, mà
ở đó có rất nhiều, đến hàng ngàn các mối quan hệ các dòng đơn hàng).
Bất cứ kiểu thực thể nào mà nó có một truy nhập từ ngoài vào (nơi xuất phát
đường chuyển giáp), phải ở đỉnh của sự phân cấp.
Mỗi một sự phân cấp trở thành một tệp riêng.
Trang 30Bài 8: Thiết kế cấu trúc lưu trữ vật lý.
30
Lựa chọn cấu hình máy tính
Hoàn chỉnh thiết kế vật lý
Các kiểu cấu trúc dữ liệu lưu trữ
Trang 31Bài 8: Thiết kế cấu trúc lưu trữ vật lý.
31
Người thiết kế đang cần phải quyết định xem dữ liệu nên được lưu trữ vật lý như thế nào
Các đặc tính của phần cứng máy tính hiện có, hệ điều hành và ngôn ngữ lập trình cũng phải được tính đến như các yếu tố liên quan đến kinh nghiệm của cán bộ và thói quen quản lý, v.v
Sự lựa chọn phần cứng thường phải tuân theo một cơ chế cũng như điều kiện tài chính
Trang 32Bài 8: Thiết kế cấu trúc lưu trữ vật lý.
Mục đích chính của giai đoạn thiết kế vật lý là:
Các quan hệ từ mô hình dữ liệu logic thành thiết kế kỹ thuật
Lựa chọn các công nghệ lưu trữ để quản lý dữ liệu.
Việc thiết kế chi tiết CSDL gồm các tiến trình cơ bản sau:
Lựa chọn các khuôn dạng lưu trữ cho từng thuộc tính từ mô hình dữ liệu
logic.
Nhóm các thuộc tính từ mô hình dữ liệu thành các bản ghi vật lý.
Sắp đặt các bản ghi liên quan trên bộ nhớ ngoài đảm bảo các bản ghi được lưu trữ
Trang 33Bài 8: Thiết kế cấu trúc lưu trữ vật lý.
33
Các kiểu cấu trúc dữ liệu lưu trữ
Sau khi có được cấu hình đã được lựa chọn, bước tiếp theo là đặc
tả dữ liệu sẽ được lưu trữ và truy nhập như thế nào trong cấu hình đó
Đặc tả này được gọi là lược đồ vật lý hay lược đồ bên trong và gồm
có mô tả một hay nhiều cấu trúc dữ liệu dựa trên các tổ hợp của các cấu trúc trong một tập hợp bao gồm:
Mảng
Danh sách
Danh sách liên kết
Cây
Trang 34Bài 8: Thiết kế cấu trúc lưu trữ vật lý.
34
Thiết kế CSDL có vai trò rất quan trọng trong toàn bộ qui trình
thiết kế HTTT quản lý Các bước thiết kế CSDL bao gồm:
1 – Xây dựng lược đồ khái niệm của CSDL
2 – Xây dựng lược đồ chức năng của CSDL
3 - Chuyển từ mô hình logic sang mô hình vật lý
Thủ tục thiết kế CSDL:
1 - Thiết kế dạng cắt thứ nhất của CSDL
2 - Tối ưu hoá thiết kế