tổng quan về công nghệ phần mềm

67 1.4K 0
tổng quan về công nghệ phần mềm

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 CHƯƠNG 1. TỔNG QUAN VỀ CÔNG NGHỆ PHẦN MỀM Bộ môn Công nghệ thông tin Trường ĐạihọcThương mại 2 Nội dung 1.1. Phần mềm 1.1.1. Khái niệm 1.1.2. Tiến hóa của phần mềm 1.1.3. Đặc trưng và phân loại phần mềm 1.1.4. Chất lượng phần mềm 1.1.5. Khủng hoảng phần mềm 1.1.6. Khó khăn trong phát triển phần mềm 1.2. Công nghệ phần mềm 1.2.1. Khái niệm 1.2.2. Đặc điểm công nghệ phần mềm 1.2.3. Một số nguyên tắc CNPM 1.2.4. Các hoạt động chính trong CNPM 3 1.1.1. Khái niệm phần mềm ¾ Khái niệm phần mềm – Một phần mềm gồm 3 thành phần: z Chương trình máy tính: mã nguồn, mã máy z Cấu trúc dữ liệu: cấu trúc làm việc (bộ nhớ trong) và cấu trúc lưu trữ (bộ nhớ ngoài) z Các tài liệu liên quan: tài liệu hướng dẫn sử dụng (dành cho người dùng), tài liệu phát triển (dành cho người phát triển hệ thống), tài liệu tham khảo kỹ thuật (dành cho người bảo trì) – Phần mềm được coi là tất cả các kỹ thuật ứng dụng để thực hiện những dịch vụ chức năng cho mục đích nào đóbằng phần cứng, làm cho sử dụng phần cứng máy tính đạt hiệu quả cao. 4 1.1.1. Khái niệm phần mềm 5 Nhóm kỹ thuật, phương pháp luận ¾ Các khái niệm và trình tự cụ thể hóa một hệ thống ¾ Các phương pháp tiếp cận giải quyết vấn đề ¾ Các trình tự thiết kế và phát triển được chuẩn hóa ¾ Các phương pháp đặc tả yêu cầu, thiết kế hệ thống, thiết kế chương trình, kiểm thử, toàn bộ quy trình quản lý phát triển phần mềm 6 Nhóm chương trình ¾ Là phần giao diện với phần cứng, tạo thành từ các nhóm lệnh chỉ thị cho máy tính biết trình tự thao tác xử lý dữ liệu ¾ Phần mềm cơ bản: với chức năng cung cấp môi trường thao tác dễ dàng cho người sử dụng nhằm tăng hiệu năng xử lý của phần cứng (ví dụ như OS là chương trình hệ thống) ¾ Phần mềm ứng dụ ng: dùng để xử lý nghiệp vụ thích hợp nào đó(quản lý, kế toán, . . .), phần mềm đóng gói, phần mềm của người dùng, . . . 7 Nhóm các tư liệu ¾ Những tư liệu hữu ích, có giá trị cao và rất cần thiết để phát triển, vận hành và bảo trì phần mềm ¾ Để xây dựng phần mềm với độ tin cậy cao cần tạo ra các tư liệu chất lượng cao: đặc tả yêu cầu, mô tả thiết kế từng loại, điều kiện kiểm thử, thủ tục vận hành, hướng dẫn thao tác, … 8 1.1.2. Tiến hoá của phần mềm ¾ Bản thân phần mềm vốn phức tạp. ¾ Yêu cầu sử dụng phần mềm không ngừng thay đổi ¾ Sự tiến bộ nhanh của hạ tầng – phần cứng => Sự tiến hóa phần mềm là tất yếu 9 1.1.2. Tiến hoá của phần mềm (2) Giai đoạnthứ nhất: (~1960) ¾ Phần cứng thay đổi liên tục, theo tính chuyên dụng ¾ Xử lý theo lô ¾ Môi trường lập trình có tính cá nhân ¾ Sản xuất đơn chiếc Ngôn ngữ: mã máy, đặcthùchotừng máy Lập trình: là mộtnghệ thuậttheobảnnăng, chưacóphương pháp 10 1.1.2. Tiến hoá của phần mềm(3) Giai đoạn 2: (~giữathậpkỷ 70) ¾ Phần mềm đa nhiệm, đa người sử dụng ¾ Hệ thống thời gian thực ¾ Xuất hiện lưu trữ trực tuyến z Nhiềudự án thấtbại z Phầnmềmtrở nên phứctạp z Nhu cầutăng cao z Chi phí tăng Ngôn ngữ: có cấu trúc: PL1, Algo60, Fortran, COBOL Lập trình: có phương pháp lậptrình Phát triểnHT: chưacóphương pháp, kinh nghiệmlàchính [...]... hoá của phần mềm( 6) Chi phí cho phần mềm cao Phần mềm trở thành ngành công nghiệp khổng lồ: – – – Chi phí phát triển OS360 (63~66): 200M$ Chi phí phần mềm năm 1985: 70B$ Chi phí phần mềm năm 2000: 770B$ (mức tăng 12%/năm) Năng suất lập trình vẫn thấp – Phát triển phần mềm mang nặng tính thủ công 13 1.1.3 Đặc điểm phần mềm “Phát triển phần mềm khác chế tạo phần cứng” Sản xuất mang tính thủ công Khó... chứa lỗi càng cao Lỗi phần mềm dễ được phát hiện bởi người ngoài (những người không trực tiếp tham gia xây dựng phần mềm) 18 1.1.3 Đặc điểm phần mềm( 6) Chức năng của phần mềm thường biến hóa, thay đổi theo thời gian (theo nơi sử dụng) Phần mềm luôn chứa những ý tưởng, sáng tạo của tác giả / nhóm tác giả làm ra nó Có thể sao chép phần mềm rất đơn giản 19 1.1.3 Phân loại phần mềm Phần mềm hệ thống – – –... trước về hiệu năng – – Áp dụng các phương pháp tiên tiến Công cụ tự đông 14 1.1.3 Đặc điểm phần mềm( 2) Phần mềm thoái hóa theo thời gian – – Môi trường sử dụng, nhu cầu thay đổi Lỗi sinh ra do nâng cấp Phần mềm không được lắp ráp theo mẫu – – Không có danh mục phụ tùng Được đặt hàng hoàn chỉnh theo từng yêu cầu riêng “Bảo trì phần mềm phức tạp hơn hẳn so với bảo trì phần cứng” 15 1.1.3 Đặc điểm phần mềm( 3)... với phần cứng Phục vụ nhiều người dùng Phần mềm thời gian thực – – Thu thập xử lý các dữ kiện thế giới thực Đáp ứng yêu cầu chặt chẽ về thời gian Thu thập dữ liệu Phân tích dữ liệu Kiểm soát, điều khiển Điều phối – Ví dụ: Phần mềm đa phương tiện 20 1.1.3 Phân loại phần mềm( 2) Phần mềm nghiệp vụ – – – Xử lý các thông tin nghiệp vụ, thường gắn với CSDL Xử lý các giao tác Lĩnh vực ứng dụng rất lớn Phần mềm. .. lượng phần mềm( 6) Tính bảo trì được Phần mềm luôn luôn cần được sửa đổi” Để sửa đổi được phần mềm Thiết kế dễ hiểu, dễ sửa đổi (thiết kế tốt) Cài đặt bằng ngôn ngữ bậc cao Có đầy đủ tài liệu – – Có tuổi thọ cao Đem lại hiệu quả kinh tế 28 1.1.4 Chất lượng phần mềm( 7) Tính tin cậy Phần mềm không có khiếm khuyết lỗi lập trình lỗi phân tích, thiết kế: sai, thiếu chức năng, hoạt động không hiệu quả Phần mềm. .. trò chơi, Phần mềm công cụ cho kỹ nghệ phần mềm – Ví dụ: các công cụ CASE, 22 1.1.4 Chất lượng phần mềm Những yếu tố chất lượng bên trong như dễ đọc, dễ hiểu mà chỉ những người làm tin học chuyên nghiệp mới biết được Những yếu tố chất lượng bên ngoài người dùng có thể nhận biết được như: tốc độ nhanh, chạy ổn định, dễ sử dụng, dễ thích nghi với những thay đổi => Thông thường chất lượng phần mềm tốt...1.1.2 Tiến hoá của phần mềm( 4) Giai đoạn 3: (~đến nay) Hệ thống phân tán Mạng cục bộ, toàn cầu Bộ vi xử lý phát triển mạnh Phần mềm ngày càng phức tạp Sử dụng nhiều máy tính cá nhân, phần mềm nhúng Số người dùng tăng nhanh Ngôn ngữ: Ngôn ngữ bậc cao, hướng đối tượng Phát triển HT: có phương pháp, công cụ tự động 11 1.1.2 Tiến hoá của phần mềm( 5) Phần mềm ngày càng phức tạp UNIX: 4M dòng... án với tổng vốn đầu tư hàng trăm triệu $ thì phần mềm: – – – – Không giao sản phẩm: 29% Không được sử dụng: 47% Được sử dụng sau khi đã chỉnh sửa: 3% Tốt: 2% 35 1.1.6 Khó khăn trong phát triển PM “Khó sản xuất được phần mềm có chất lượng theo đúng lịch trình và kinh phí cho trước” Phần mềm là phần tử logic: không kiểm soát được theo phương pháp thông thường trong sản xuất (rủi ro, tính thủ công) trong... 1.1.4 Chất lượng phần mềm( 3) Tính tái sử dụng (reusability): dễ tái sử dụng trong những phần mềm mới Tính khả chuyển (portability):dễ sử dụng trong các môi trường mới Tính dễ hiểu (understandability): dễ hiểu đối với người sử dụng cũng như đối với người phát triển Tính hợp tác (interoperability): dễ hợp tác với các phần mềm khác Sản xuất hiệu quả (productivity): tiến trình sản xuất phần mềm phải hiệu... phỏng) Đòi hỏi năng lực tính toán cao Phần mềm nhúng (embedded software) – – – Chỉ đọc khi thiết bị khởi động Thực hiện chức năng hạn chế (điều khiển sản phẩm) Là sự kết hợp giữa hệ thống và thời gian thực 21 1.1.3 Phân loại phần mềm( 3) Phần mềm máy tính cá nhân – – – Các bài toán nghiệp vụ nhỏ (ứng dụng văn phòng) Giao diện đồ họa phát triển Có nhu cầu rất cao Phần mềm trí tuệ nhân tạo – – Dùng các thuật . loại phần mềm 1.1.4. Chất lượng phần mềm 1.1.5. Khủng hoảng phần mềm 1.1.6. Khó khăn trong phát triển phần mềm 1.2. Công nghệ phần mềm 1.2.1. Khái niệm 1.2.2. Đặc điểm công nghệ phần mềm 1.2.3 1. TỔNG QUAN VỀ CÔNG NGHỆ PHẦN MỀM Bộ môn Công nghệ thông tin Trường ĐạihọcThương mại 2 Nội dung 1.1. Phần mềm 1.1.1. Khái niệm 1.1.2. Tiến hóa của phần mềm 1.1.3. Đặc trưng và phân loại phần. hoá của phần mềm( 6) Chi phí cho phầnmềmcao ¾ Phần mềm trở thành ngành công nghiệp khổng lồ: – Chi phí phát triển OS360 (63~66): 200M$ – Chi phí phần mềm năm 1985: 70B$ – Chi phí phần mềm năm

Ngày đăng: 29/01/2015, 20:07

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1. TỔNG QUAN VỀ CÔNG NGHỆ PHẦN MỀM

  • Nội dung

  • 1.1.1. Khái niệm phần mềm

  • 1.1.1. Khái niệm phần mềm

  • Nhóm kỹ thuật, phương pháp luận

  • Nhóm chương trình

  • Nhóm các tư liệu

  • 1.1.2. Tiến hoá của phần mềm

  • 1.1.2. Tiến hoá của phần mềm (2)

  • 1.1.2. Tiến hoá của phần mềm(3)

  • 1.1.2. Tiến hoá của phần mềm(4)

  • 1.1.2. Tiến hoá của phần mềm(5)

  • 1.1.2. Tiến hoá của phần mềm(6)

  • 1.1.3. Đặc điểm phần mềm

  • 1.1.3. Đặc điểm phần mềm(2)

  • 1.1.3. Đặc điểm phần mềm(3)

  • 1.1.3. Đặc điểm phần mềm(4)

  • 1.1.3. Đặc điểm phần mềm(5)

  • 1.1.3. Đặc điểm phần mềm(6)

  • 1.1.3. Phân loại phần mềm

Tài liệu cùng người dùng

Tài liệu liên quan