Bài giảng Nhập môn tin học - Chương 10: Phần mềm máy tính

10.1. Khái niệm phần mềm 10.2. Mối quan hệ giữa phần cứng và phần mềm 10.3. Các loại phần mềm 10.4. Kiến trúc Logic của hệ thống 10.5. Cách sở hữu phần mềm 10.6. Các bước phát triển phần mềm 10.7. Công nghệ phần mềm 10.8. Firmware

pdf28 trang | Chia sẻ: thuongdt324 | Lượt xem: 477 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Nhập môn tin học - Chương 10: Phần mềm máy tính, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1 PHẦN MỀM MÁY TÍNH COMPUTER SOFTWARE CHƯƠNG 10 2 10.1. Khái niệm phần mềm 10.2. Mối quan hệ giữa phần cứng và phần mềm 10.3. Các loại phần mềm 10.4. Kiến trúc Logic của hệ thống 10.5. Cách sở hữu phần mềm 10.6. Các bước phát triển phần mềm 10.7. Công nghệ phần mềm 10.8. Firmware NỘI DUNG 3 • Phần mềm là tập hợp những chương trình máy tính, các thủ tục và tài liệu kết hợp (sơ đồ luồng, sổ tay, ...) với nhau để xử lý dữ liệu và đưa ra thông tin thỏa mãn yêu cầu người sử dụng. • Phần mềm là một tập hợp chương trình làm tăng khả năng của phần cứng. Khái niệm phần mềm 4 1. Cả phần cứng và phần mềm đều cần thiết cho 1 máy tính để làm công việc có ích. 2. Các phần cứng giống nhau được nạp với các phần mềm khác nhau để làm cho một hệ thống máy tính thực thi những loại công việc khác nhau. 3. Ngoại trừ việc nâng cấp (giống như việc gia tăng bộ nhớ lưu trữ và không gian chứa đựng đĩa cứng, hoặc thêm loa nghe, thiết bị kết nối,....), phần cứng thường chi phí một lần trong khi phần mềm thì chi phí liên tục. MỐI QUAN HỆ GIỮA PHẦN CỨNG VÀ PHẦN MỀM 5 MỐI QUAN HỆ GIỮA PHẦN CỨNG VÀ PHẦN MỀM 6 Có 2 loại: 1. Phần mềm hệ thống 2. Phần mềm ứng dựng CÁC LOẠI PHẦN MỀM 7  Phần mềm hệ thống là một tập hợp của một hay nhiều chương trình được thiết kế để điều khiển các thao tác và mở rộng khả năng xử lý của một hệ thống máy tính. PHẦN MỀM HỆ THỐNG 8 Các chức năng của phần mềm hệ thống: 1. Hỗ trợ việc phát triển của các phần mềm ứng dụng khác. 2. Hỗ trợ sự thực thi của các phần mềm ứng dựng. 3. Giám sát một cách hiệu quả cách sử dụng nguồn tài nguyên khác nhau của phần cứng như CPU, bộ nhớ, ngoại vi, 4. Giao tiếp và điểu khiển sự hoạt động của thiết bị ngoại vi như máy in, đĩa cứng, băng ghi âm,.. PHẦN MỀM HỆ THỐNG 9  Các phần mềm hệ thống phổ biến:  Hệ điều hành,  Bộ dịch ngôn ngữ chương trình,  Chương trình tiện ích,  Phần mềm giám sát,  Phần mềm giao tiếp. PHẦN MỀM HỆ THỐNG 10 Hệ điều hành:  Tạo cho việc sử dụng tất cả thành phần của phần cứng và phần mềm trong một hệ thống máy tính thực thi một cách hiệu quả và năng suất cao. PHẦN MỀM HỆ THỐNG 11 Bộ dịch ngôn ngữ lập trình  Là phần mềm hệ thống thực thi theo sự chỉ dẫn được đưa ra bởi những lập trình viên, sử dụng ngôn ngữ lập trình được nạp vào theo một dạng mà có thể giải thích và thực thi bởi một hệ thống máy tính. PHẦN MỀM HỆ THỐNG 12 Chương trình tiện ích  Là một tập hợp những chương trình giúp người sử dụng điều hành bảo dưỡng hệ thống và thực thi các công việc hằng ngày. Một vài chương trình tiện ích sau:  Định dạng đĩa cứng hay đĩa mềm  Tổ chức lại tập tin trên đĩa cứng để duy trì không gian lưu trữ.  Lấy bản sao của dữ liệu được lưu trữ trên đĩa cứng, băng từ hoặc đĩa mềm.  Tìm kiếm dữ liệu.  Kiểm tra dung lượng bộ nhớ còn trống.  Kiểm tra dung lượng không gian lưu trữ trên ổ cứng còn trống.  Làm nhỏ kích thước dữ liệu khi truyền dữ liệu.  Sắp xếp các bản ghi được lưu trữ trong một tệp dữ liệu.  Quét hệ thống để tìm ra viruses máy tính. PHẦN MỀM HỆ THỐNG 13 Phần mềm thực hiện giám sát hiệu năng  Được gọi là Profiler giúp người dùng trong việc phân tích việc thực thi các thành phần của các phần cứng khác nhau cũng như việc thực thi một hệ thống máy tính.  Nó phân chia nhiều thông tin thành tỷ lệ phần trăm qua việc sử dụng bộ nhớ và dung lượng không gian đĩa còn trống trong suốt thời gian được yêu cầu trước đây.  Giúp người sử dụng lên kế hoạch nâng cấp các tài nguyên phần cứng của hệ thống máy tính như tăng sức mạnh của CPU hoặc bộ nhớ hoặc dung lượng đĩa cứng. PHẦN MỀM HỆ THỐNG 14 Phần mềm truyền thông  Trong môi trường mạng, phần mềm giao tiếp có thể chuyển dữ liệu và chương trình từ một hệ thống máy tính đến máy tính khác. Những chức năng tiêu biểu gồm:  Đảm bảo cho việc thiết lập kết nối một cách chính xác giữa hệ thống máy tính nguồn và đích muốn trao đổi thông tin.  Mã hóa dữ liệu.  Vận chuyển dữ liệu từ máy tính nguồn tới máy tính đích.  Giãi mã dữ liệu nhận ở máy tính đích. PHẦN MỀM HỆ THỐNG 15  Là một tập hợp một hay nhiều chương trình được thiết kế để giải thích một vấn đề cụ thể hay thực hiện một nhiệm vụ nào đó.  Ví dụ, một phần mềm ứng dụng cho việc xử lý chi trả tiền lương cho nhân viên, phần mềm ứng dụng cho việc xử lý kết quả kỳ thi và kết quả xuất ra qua các văn bản báo cáo tĩnh khác.  Các phần mềm ứng dụng như:  Phần mềm xử lý từ  Phần mềm bảng tính  Phần mềm cơ sở dữ liệu  Phần mềm đồ họa  Phần mềm giúp đỡ cá nhân  Phần mềm giáo dục  Phần Mềm Giải Trí PHẦN MỀM ỨNG DỤNG Thảo luận 16 PHẦN MỀM HỆ THỐNG 17 PHẦN MỀM HỆ THỐNG 18 PHẦN MỀM HỆ THỐNG 19 PHẦN MỀM HỆ THỐNG 20 KIẾN TRÚC LOGIC CỦA HỆ THỐNG Mối quan hệ giữa phần cứng, phần mềm hệ thống, phần mềm ứng dụng và người dùng hệ thống máy tính 21 Các cách để sở hữu phần mềm tốt  Mua những phần mềm viết sẵn.  Đặt hàng phần mềm  Phát triển phần mềm  Tải về các phần mềm cộng đồng (Public-Domain) CÁCH SỞ HỮU PHẦN MỀM Thảo luận 22 1. Phân tích vấn đề và lập kế hoạch cho chương trình 2. Viết mã lệnh cho chương trình 3. Kiểm thử, gỡ lỗi và tạo tài liệu cho chương trình. 4. Cài đặt chương trình. 5. Đánh giá và bảo trì chương trình. CÁC BƯỚC PHÁT TRIỂN PHẦN MỀM 23 Công nghệ phần mềm là gì?  “Phần mềm” là một tập các chương trình, các thủ tục và các tài liệu liên quan miêu tả chương trình và cho biết chương trình được sử dụng như thế nào.  “Công nghệ” là ứng dụng mang tính hệ thống của tri thức khoa học trong việc tạo ra và xây dựng các giải pháp có chi phí hiệu quả với những vấn đề thực tiễn.  “Công nghệ phần mềm” là một nhánh của công nghệ nói chung làm việc với ứng dụng mang tính hệ thống qua các nguyên tắc của khoa học máy tính và toán học trong việc tạo ra và xây dựng các giải pháp phần mềm có chi phí hiệu quả. CÔNG NGHỆ PHẦN MỀM 24 Mục tiêu của Công nghệ phần mềm  Độ chính xác của phần mềm phải cao.  Tính khả dụng mức độ cao. Tính khả dụng là sự dễ dàng khi sử dụng phần mềm và các tài liệu liên quan.  Phải có chi phí hợp lý.  Dễ bảo trì và nâng cấp. CÔNG NGHỆ PHẦN MỀM 25 Những nguyên lý của Công nghệ phần mềm  Định nghĩa yêu cầu chính xác: để đảm bảo rằng sản phẩm làm ra phải thỏa mãn nhu cầu thực sự của người dùng.  Cấu trúc module: Hệ thống phần mềm nên được cấu trúc theo dạng module để dễ dàng lập trình, cài đặt, kiểm thử, sửa lỗi, tái sử dụng và bảo trì.  Sự trừu tượng: hệ thống phần mềm nên sử dụng sự trừu tượng hóa và che dấu thông tin. Sự trừu tượng hóa giúp ích trong việc tái sử dụng dễ dàng những module đang tồn tại.  Tính thống nhất: Hệ thống phần mềm nên duy trì tính thống nhất trong thiết kế, tạo mã, và tạo các tài liệu hướng dẫn. Tính thống nhất đảm bảo sự bền vững, yếu tố làm cho phần mềm trở nên dễ dàng để phát triển và bảo trì cùng với việc học và sử dụng nó. CÔNG NGHỆ PHẦN MỀM 26 Công cụ CASE  Công cụ đặc tả thiết kế: cho phép lập trình viên có thể thiết kế trực quan màn hình, thanh menu, các bảng dữ liệu, báo cáo, các hộp thoại, và nhiều phần khác của chương trình.  Công cụ sinh mã: sinh ra mã nguồn chương trình từ những đặc tả thiết kế của một hệ thống.  Công cụ kiểm thử và gỡ lỗi: giúp lập trình viên trong việc kiểm thử và gỡ lỗi chương trình của họ.  Công cụ phân tích mã nguồn: giúp đỡ trong việc tối ưu hóa chương trình bằng cách loại ra khỏi mã nguồn chương trình những đoạn mã không cần thiết và những hàm mà không bao giờ được gọi.  Công cụ sưu liệu: hỗ trợ trong việc tự động tạo ra tài liệu kĩ thuật cho hệ thống phần mềm. CÔNG NGHỆ PHẦN MỀM 27 FIRMWARE(Phần dẻo, phần sụn)  Những chương trình (phần mềm) được làm ra và có sẵn trên phần cứng được biết đến là firmware.  Firmware thường được xem như là một chuỗi những chỉ dẫn được thay thế cho phần cứng.  Firmware là phần mềm thay thế cho phần cứng và được lưu trữ trong bộ nhớ chỉ đọc.  Firmware thường là một sự thay thế hợp lý cho các vi mạch điện tử và lợi ích của nó trong việc thiết kế máy tính cũng được tăng dần. CÔNG NGHỆ PHẦN MỀM 28 Giáo trình trang 321 CÂU HỎI VÀ BÀI TẬP