Bài giảng Phân tích-Thiết kế-Cài đặt hệ thống thông tin - Chương 6: Thiết kế phần mềm - Đặng Minh Ất

CHƯƠNG 6: THIẾT KẾ PHẦN MỀM

Phân tích - Thiết kế - Hệ thống thông tin

 Bài 1: Tổng quan về thiết kế HTTT.

 Bài 2: Các bước cơ bản thiết kế phần mềm.

 Bài 3: Các ngôn ngữ thiết kế phần mềm.

 Bài 4: Đảm bảo chất lượng phần mềm.

 Bài 5: Phương pháp thiết kế Top-Down

 Bài 6: Phương pháp thiết kế Bottom-Up

 Bài 8: Thiết kế các cơ sở dữ liệu.

 Bài 7: Thiết kế cấu trúc lưu trữ vật lý.

pdf34 trang | Chia sẻ: phuongt97 | Lượt xem: 406 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Phân tích-Thiết kế-Cài đặt hệ thống thông tin - Chương 6: Thiết kế phần mềm - Đặng Minh Ất, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TRÌNH BÀY: PGS.TS. ĐẶNG MINH ẤT BỘ MÔN: CÔNG NGHỆ THÔNG TIN TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN Phân tích - Thiết kế - Cài đặt Hệ thống thông tin CHƯƠNG 6: THIẾT KẾ PHẦN MỀM 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 2  Bài 1: Tổng quan về thiết kế HTTT.  Bài 2: Các bước cơ bản thiết kế phần mềm.  Bài 3: Các ngôn ngữ thiết kế phần mềm.  Bài 4: Đảm bảo chất lượng phần mềm.  Bài 5: Phương pháp thiết kế Top-Down  Bài 6: Phương pháp thiết kế Bottom-Up  Bài 8: Thiết kế các cơ sở dữ liệu.  Bài 7: Thiết kế cấu trúc lưu trữ vật lý. Bài 1: Tổng quan về thiết kế HTTT 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 3  Tổng quan  Giai đoạn thiết kế chúng ta phải trả lời được câu hỏi “ Hệ thống làm việc, hoạt động như thế nào?”  Một trong các mục tiêu của giai đoạn thiết kế là đưa ra được bản thiết kế đáp ứng đặc tả yêu cầu chức năng trong phạm vi các ràng buộc kỹ thuật của dự án, cũng như lập tài liệu thiết kế hệ thống 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. Bài 1: Tổng quan về thiết kế HTTT 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 4  Tổng quan  Giai đoạn thiết kế sẽ chuyển các đặc tả logic của hệ thống thành các đặc tả vật lý của hệ thống.  Thiết kế là giai đoạn chi tiết hóa các kết quả phân tích, một lần nữa thể hiện cách tiếp cận trên xuống.  Công việc thiết kế thường chiếm nhiều thời gian và công sức hơn phân tích.  Công việc thiết kế thường phụ thuộc vào môi trường phát triển cụ thể.  Người thiết kế sẽ mô tả lại hệ thống sẽ làm việc như thế nào theo cách mà người lập trình có thể viết mã trình được.  Đòi hỏi với thiết kế viên phải là người nắm được nghiệp vụ sâu sắc và có cả một số kinh nghiêm lập trình Bài 1: Tổng quan về thiết kế HTTT 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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á trình phân tích) bao gồm:  Các đặc tả chi tiết yêu cầu  Mô hình chức năng tổng thể  Mô hình quan hệ thực thể  Mô hình luồng dữ liệu  Các đặc tả sơ bộ chức năng và thực thể  Đầu ra của quá trình thiết kế HTTT  Kiến trúc tổng thể hệ thống  Lược đồ cấu trúc phần mềm  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  Chi tiết các thủ tục, hàm sử dụng Bài 1: Tổng quan về thiết kế HTTT 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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 trường bên ngoài. Bài 2: Các bước cơ bản thiết kế phần mềm 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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, thuật toán xử lý và sử dụng dữ liệu. Bài 3: Các ngôn ngữ thiết kế phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 8  Việc lựa chọn ngôn ngữ lập trình có ý nghĩa rất lớn. Khi đánh giá về các ngôn ngữ lập trình, người ta thường căn cứ vào các tiêu chuẩn sau:  Lĩnh vực ứng dụng tổng quát.  Độ 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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 9  Nội dung bài học  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ì Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 10  Các nhân tố chất lượng phần mêm  Chất lượng phần mềm có thể được đánh giá qua ba yếu tố cơn bản sau đây:  Đã đá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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 11  Nhân tố đo chất lượng phần mềm Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 12  Nhân tố đo chất lượng phần mềm Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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ì Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Bài 4: Đảm bảo chất lượng phần mềm. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Bài 5: Phương pháp thiết kế Top-Down 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 20  Nội dung phương pháp  Đâ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). Bài 6: Phương pháp thiết kế Bottom-Up 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 21  Nội dung phương pháp  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. Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 22  Nội dung bài học  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 Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 23  Kiến trúc của một hệ cơ sở dữ liệu Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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 ràng buộc riêng. Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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 Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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 Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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:  Các tệp tuần tự.  Các tệp tuần tự có chỉ dẫn.  Các tệp trực truy.  Các tệp đảo ngược.  Các bảng băm.  Các mảng sử dụng con trỏ.  Các cây.  Các quan hệ. Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 28  Nội dung của thiết kế CSDL  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. Bài 7: Thiết kế các cơ sở dữ liệu. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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.  Xét những cách thức tạo ra các quan hệ (thí dụ: con trỏ, kỹ thuật ghép tệp,). Bài 8: Thiết kế cấu trúc lưu trữ vật lý. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 30  Nội dung bài học  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ữ Bài 8: Thiết kế cấu trúc lưu trữ vật lý. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 31  Lựa chọn cấu hình máy tính  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 Bài 8: Thiết kế cấu trúc lưu trữ vật lý. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 32  Hoàn chỉnh thiết kế vật lý  Đây là giai đoạn chuyển từ mô hình logic thành các đặ tả kỹ thuật cho lưu trữ dữ liệu để có thể cài đặt trong hệ quản trị CSDL hoặc tạo các tệp lưu trữ dữ liệu  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ữ  Lựa chọn các phương tiện, cấu trúc sao cho truy cập hiệu quả hơn như. Bài 8: Thiết kế cấu trúc lưu trữ vật lý. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 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. Đồ thị. Bài 8: Thiết kế cấu trúc lưu trữ vật lý. 25 October 2011Phân tích - Thiết kế - Hệ thống thông tin 34  Tổng kết chương:  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ế.  3 - Thiết kế lưu trữ vật lý của CSDL.

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_phan_tich_thiet_ke_cai_dat_he_thong_thong_tin_chuo.pdf