Bài giảng Công nghệ phần mềm - Chương 1: Giới thiệu về công nghệ phần mềm

ppt 15 trang huongle 2530
Bạn đang xem tài liệu "Bài giảng Công nghệ phần mềm - Chương 1: Giới thiệu về công nghệ phần mềm", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_cong_nghe_phan_mem_chuong_1_gioi_thieu_ve_cong_ngh.ppt

Nội dung text: Bài giảng Công nghệ phần mềm - Chương 1: Giới thiệu về công nghệ phần mềm

  1. Chương 1: Giới thiệu về công nghệ phần mềm
  2. Nội dung chính ⚫ Phần mềm là gì? ⚫ Công nghệ phần mềm là gì? ⚫ Sự khác biệt giữa công nghệ phần mềm và khoa học máy tính. ⚫ Sự khác biệt giữa công nghệ phần mềm và công nghệ hệ thống ⚫ Quy trình phần mềm là gì? ⚫ Mô hình quy trình phát triển phần mềm là gì? ⚫ Chi phí của công nghệ phần mềm bao gồm những gì? ⚫ Các phương pháp công nghệ phần mềm là gì? ⚫ Thế nào là một phần mềm tốt? ⚫ Những thách thức chính của công nghệ phần mềm
  3. 1. Phần mềm là gì? ⚫Phần mềm là các chương trình máy tính và những tài liệu liên quan đến nó như: các yêu cầu, mô hình thiết kế, tài liệu hướng dẫn sử dụng ⚫Phần mềm có đặc điểm là trừu tượng và vô hình.
  4. Phần mềm là gì ? ⚫ Các sản phẩm phần mềm được chia thành 2 loại: Sản phẩm đại trà (Generic Product): được phát triển để bán ra ngoài thị trường. Sản phầm theo đơn đặt hàng (Customised Product): được phát triển cho một khách hàng riêng lẻ theo yêu cầu. ⚫ Một phần mềm mới có thể được tạo ra bằng cách: Phát triển các chương trình mới Thay đổi và điều chỉnh các hệ thống phần mềm đại trà Tái sử dụng các phần mềm đã tồn tại
  5. 2. Công nghệ phần mềm là gì? ⚫Công nghệ phần mềm là những quy tắc công nghệ có liên quan đến tất cả các khía cạnh của quá trình sản xuất phần mềm. ⚫Để xây dựng một phần mềm tốt, nên: Tuân theo một phương pháp luận có hệ thống và có tổ chức. Sử dụng các công cụ và kỹ thuật thích hợp với vấn đề cần giải quyết, các ràng buộc và tài nguyên sẵn có.
  6. 3. Sự khác biệt giữa công nghệ phần mềm và khoa học máy tính ⚫Khoa học máy tính đề cấp tới lý thuyết và những vấn đề cơ bản. ⚫Công nghệ phần mềm đề cập tới các hoạt động xây dựng và đưa ra một phần mềm hữu ích.
  7. 4. Sự khác biệt giữa công nghệ phần mềm và công nghệ hệ thống ⚫Công nghệ hệ thống liên quan tới tất cả các khía cạnh của quá trình phát triển hệ thống dựa máy tính, bao gồm: phần cứng, phần mềm, và công nghệ xử lý. ⚫Công nghệ phần mềm chỉ là một phần của quy trình này, nó có liên quan tới việc phát triển hạ tầng phần mềm, điều khiển, các ứng dụng và cơ sở dữ liệu trong hệ thống.
  8. 5. Quy trình phần mềm là gì? ⚫ Quy trình phần mềm là một tập hợp các hành động mà mục đích của nó là xây dựng và phát triển phần mềm. ⚫ Các hoạt động chính trong quy trình phần mềm bao gồm: Đặc tả: đặc tả những gì hệ thống phải làm và các ràng buộc trong quá trình xây dựng hệ thống. Phát triển: xây dựng hệ thống phần mềm. Kiểm thử: kiểm tra xem liệu phần mềm đã thoả mãn yêu cầu của khách hàng. Mở rộng: điều chỉnh và thay đổi phần mềm tương ứng với sự thay đổi yêu cầu. ⚫ Những loại hệ thống khác nhau cần những quy trình phát triển khác nhau. ⚫ Nếu không sử dụng một quy trình phát triển hệ thống thích hợp thì có thể làm giảm chất lượng của hệ thống và tăng chi phí xây dựng.
  9. 6. Mô hình quy trình phát triển phần mềm là gì? ⚫ Mô hình quy trình phát triển phần mềm là một thể hiện đơn giản của một quy trình phần mềm, và nó được biểu diễn từ một góc độ cụ thể. ⚫ Một số ví dụ về mô hình quy trình phát triển phần mềm: Mô hình luồng công việc (workflow): mô tả một chuỗi các hành động cần phải thực hiện. Mô hình luồng dữ liệu (data-flow): mô tả luồng thông tin. Mô hình Vai trò/Hành động (Role/action): chỉ ra vai trò của những người liên quan trong quy trình phần mềm và nhiệm vụ của từng người. ⚫ Một số mô hình quy trình chung: Mô hình thác nước Mô hình phát triển lặp lại Mô hình công nghệ phần mềm dựa thành phần
  10. 7. Chi phí của công nghệ phần mềm bao gồm những gì? ⚫ Chi phí phần mềm thường chiếm phần lớn chi phí của cả hệ thống máy tính. ⚫ Chi phí phần mềm trên máy PC thường lớn hơn chi phí phần cứng. ⚫ Chi phí phần mềm dành cho việc bảo trì phần mềm thường lớn hơn chi phí xây dựng phần mềm. ⚫ Chi phí biến đổi tuỳ thuộc vào từng loại hệ thống được xây dựng và các yêu cầu về đặc điểm của hệ thống.
  11. Chi phí của công nghệ phần mềm ⚫ Việc phân bổ chi phí cũng phụ thuộc vào mô hình phát triển hệ thống được sử dụng. ⚫ Chi phí phục vụ cho việc thay đổi, cải tiến phần mềm sau khi nó đã được đưa vào sử dụng.
  12. 8. Các phương pháp công nghệ phần mềm là gì? ⚫ Phương pháp công nghệ phần mềm bao gồm các mô hình hệ thống, các ký pháp, quy tắc, hướng dẫn thiết kế và quy trình để xây dựng phần mềm một cách dễ dàng, đảm bảo chất lượng cao và chi phí hiệu quả. ⚫ Một số phương pháp công nghệ phần mềm: Phân tích hướng cấu trúc - tập trung vào việc xác định các chức năng cơ bản của hệ thống. Phương pháp hướng đối tượng - tập trung vào việc định nghĩa các đối tượng và sự cộng tác giữa chúng.
  13. 9. CASE (Computer-Aided Software Engineering) là gì? ⚫CASE Tool thường được sử dụng để hỗ trợ các hoạt động trong quy trình xây dựng phần mềm. ⚫Có 2 loại CASE: Upper-CASE: công cụ để hỗ trợ các hoạt động đầu tiên như đặc tả yêu cầu và thiết kế. Lower-CASE: công cụ để hỗ trợ các hoạt động sau như lập trình, gỡ lỗi và kiểm thử.
  14. 10. Thế nào là một phần mềm tốt? ⚫Phần mềm phải đáp ứng: Các chức năng theo yêu cầu Có hiệu năng tốt Có khả năng bảo trì Đáng tin cậy Được người sử dụng chấp nhận.
  15. 11. Những thách thức chính của công nghệ phần mềm ⚫ Không đồng nhất ⚫ Chuyển giao phần mềm tới người sử dụng ⚫ Độ tin cậy