Bài giảng Công nghệ phần mềm - Chương 5: Cài đặt phần mềm

NỘI DUNG CHÍNH:

5.1. PHONG CÁCH CÀI ĐẶT CHƯƠNG TRÌNH

5.2. NỀN TẢNG CỦA NGÔN NGỮ LẬP TRÌNH

5.3. CÁC ĐẶC TRƯNG CỦA NGÔN NGỮ CÀI ĐẶT

5.4. PHÂN LỚP VÀ ĐÁNH GIÁ VỀ NGÔN NGỮ CÀI ĐẶT

5.5. HIỆU QUẢ CỦA CHƯƠNG TRÌNH VÀ TẦM QUAN TRỌNG

5.6. MỘT SỐ VẤN ĐỀ TRONG CẢI TIẾN HIỆU SUẤT

5.7. CÔNG CỤ TRỢ GIÚP VÀ PHÂN LOẠI

 

 

 

ppt26 trang | Chuyên mục: Công Nghệ Phần Mềm | Chia sẻ: dkS00TYs | Lượt xem: 1872 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Công nghệ phần mềm - Chương 5: Cài đặt phần mềm, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 5.6. MỘT SỐ VẤN ĐỀ TRONG CẢI TIẾN HIỆU SUẤT 5.7. CÔNG CỤ TRỢ GIÚP VÀ PHÂN LOẠI * * Công nghệ phần mềm - Chương 5 5.1. PHONG CÁCH CÀI ĐẶT CHƯƠNG TRÌNH Phong cách lập trình bao hàm một triết lý về lập trình nhấn mạnh tới tính đơn giản và rõ ràng. Viết một chương trình máy tính là viết một dãy các câu lệnh trong ngôn ngữ hiện có. Cách thức mỗi mệnh đề này diễn tả trong chừng mực nào đó sẽ xác định ra tính dễ hiểu của toàn bộ chương trình... * * Công nghệ phần mềm - Chương 5 5.1. PHONG CÁCH CÀI ĐẶT CHƯƠNG TRÌNH Nội dung chính: 5.1.1. Tài liệu chương trình 5.1.2. Khai báo dữ liệu 5.1.3. Xây dựng câu lệnh 5.1.4. Vào và ra * * Công nghệ phần mềm - Chương 5 5.1.1. Tài liệu chương trình Tài liệu chương trình được hiểu là tài liệu bên trong của chương trình gốc Theo ngôn từ của mô hình cú pháp/ngữ nghĩa, tên có ý nghĩa làm "đơn giản hoá việc chuyển đổi từ cú pháp chương trình sang cấu trúc ngữ nghĩa bên trong". Khả năng diễn tả những lời chú thích theo ngôn ngữ tự nhiên như một phần của bản in chương trình gốc đều được mọi ngôn ngữ lập trình cung cấp. * * Công nghệ phần mềm - Chương 5 5.1.1. Tài liệu chương trình (tiếp) Một số vấn đề nảy sinh: Bao nhiêu chú thích là "đủ"? Nên đặt chú thích vào đâu? Chú thích có che mờ luồng logic không? Chú thích có làm lạc hướng độc giả không? Liệu có chú thích "không bảo trì" không, và do đó không tin cậy được? * * Công nghệ phần mềm - Chương 5 5.1.1. Tài liệu chương trình (tiếp) Định dạng cho lời chú thích như thế là: Một phát biểu về mục đích chỉ rõ chức năng module. Mô tả giao diện bao gồm: Mẫu lời gọi, Mô tả về mọi đối số, Danh sách tất cả các module thuộc cấp. * * Công nghệ phần mềm - Chương 5 5.1.1. Tài liệu chương trình (tiếp) Định dạng cho lời chú thích như thế là (tiếp): Thảo luận về dữ liệu thích hợp như các biến quan trọng và những hạn chế và giới hạn về cách dùng chúng, và các thông tin quan trọng khác. Lịch sử phát triển bao gồm: Tên người thiết kế module (tác giả), Tên người xét duyệt (kiểm toán) và ngày tháng, Ngày tháng sửa đổi và mô tả sửa đổi, * * Công nghệ phần mềm - Chương 5 5.1.1. Tài liệu chương trình (tiếp) Bên cạnh đó, lời chú thích mô tả nên: Mô tả các khối chương trình, thay vì chú thích cho từng dòng. Dùng dòng trống hay thụt cấp để cho lời chú thích có thể được phân biệt với chương trình Phải đúng đắn; một lời chú thích không đúng hay gây ra hiểu sai thì còn tồi tệ hơn là không có chú thích nào cả. * * Công nghệ phần mềm - Chương 5 5.1.2. Khai báo dữ liệu Độ phức tạp và việc tổ chức cấu trúc dữ liệu được xác định trong bước thiết kế nhưng phong cách khai báo dữ liệu thì được thiết lập khi chương trình được sinh ra. Khai báo dữ liệu nên được chuẩn hoá cho dù ngôn ngữ lập trình không có yêu cầu bắt buộc. Điều này tạo điều kiện thuận lợi cho việc kiểm thử, gỡ rối và bảo trì. Khi có nhiều định danh được khai báo trong câu lệnh thì việc sắp xếp theo trật tự chữ cái cho các tên gọi đó cũng có giá trị. Nếu thiết kế có mô tả trước cấu trúc dữ liệu phức tạp thì nên dùng chú thích để giải thích các điểm đặc thù trong cài đặt ở ngôn ngữ lập trình. * * Công nghệ phần mềm - Chương 5 5.1.3. Xây dựng câu lệnh Việc xây dựng câu lệnh nằm ở bước lập trình. Thực tế đã chứng minh, việc xây dựng các câu lệnh của chương trình nên tuân theo phong cách lập trình cấu trúc. Các câu lệnh nên đơn giản và trực tiếp, không bị xoắn vào nhau để đảm bảo hiệu quả. * * Công nghệ phần mềm - Chương 5 5.1.3. Xây dựng câu lệnh (tiếp) Cách xây dựng câu lệnh đơn và việc thụt cấp chương trình minh hoạ cho đặc trưng logic và chức năng của giai đoạn này, nên tuân theo các chỉ dẫn: Tránh dùng các phép kiểm tra điều kiện phức tạp, Khử bỏ các phép kiểm tra điều kiện phủ định, Tránh lồng nhau giữa các điều kiện hay chu trình, Dùng các dấu ngoặc để làm sáng tỏ các biểu thức, Dùng các dấu cách và các ký hiệu dễ đọc để làm sáng tỏ nội dung câu lệnh,... * * Công nghệ phần mềm - Chương 5 5.1.4. Vào / ra Phong cách vào/ra được thiết lập khi phân tích và thiết kế phần mềm nhưng cách thức cài đặt vào/ra lại ảnh hưởng lớn đến người sử dụng hệ thống. Phong cách vào/ra sẽ thay đổi theo mức độ tương tác con người. Khi cài đặt vào/ra, cần thoả mãn các tiêu chí cơ bản sau: Làm hợp lệ mọi cái vào, Kiểm tra sự tin cậy của các tổ hợp dữ liệu vào quan trọng, Giữ cho định dạng dữ liệu vào đơn giản, Dùng các chỉ báo cuối dữ liệu thay vì yêu cầu người sử dụng xác định số các khoản mục vào, Đặt nhãn cho các dữ liệu vào, Giữ các định dạng dữ liệu vào thống nhất,... * * Công nghệ phần mềm - Chương 5 5.2. NỀN TẢNG CỦA NGÔN NGỮ LẬP TRÌNH 5.2.1. Kiểu dữ liệu, định nghĩa kiểu dữ liệu và kiểm tra kiểu dữ liệu 5.2.2. Chương trình con 5.2.3. Cấu trúc điều khiển 5.2.4. Vào và ra dữ liệu 5.2.5. Quản lý bộ nhớ 5.2.6. Quản lý lỗi * * Công nghệ phần mềm - Chương 5 5.2.1. Kiểu dữ liệu, định nghĩa kiểu dữ liệu và kiểm tra kiểu dữ liệu Kiểu dữ liệu là loại dữ liệu được định nghĩa từ trước của ngôn ngữ và mỗi ngôn ngữ hỗ trợ một số kiểu dữ liệu. Tất cả các ngôn ngữ đều hỗ trợ biến, hằng số dùng trong dữ liệu số và dữ liệu ký tự. Kiểu dữ liệu được hỗ trợ chung là: số nguyên, số thực và xâu ký tự. Một số ít ngôn ngữ hỗ trợ các kiểu dữ liệu khác như: Logical, Boolean, Pointer, Object, Bit, Date,... hoặc kiểu dữ liệu tự định nghĩa. Kiểm tra kiểu chặt chẽ sẽ làm giảm khả năng chương trình gặp lỗi. * * Công nghệ phần mềm - Chương 5 5.2.2. Chương trình con Sự tinh tế của ngôn ngữ thể hiện ở mức độ hỗ trợ module hoá và quản lý bộ nhớ. Module hoá là cách thức tạo ra chương trình con và hàm. Các ngôn ngữ khác nhau ở cách hỗ trợ chương trình con và dữ liệu của nó. Phân biệt hàm và thủ tục ??? Phân biệt tham biến và tham trị ??? * * Công nghệ phần mềm - Chương 5 5.2.2. Cấu trúc điều khiển Về bản chất, một chương trình máy tính là một bản mã hoá thuật toán. Ở đây, các đối tượng chịu thao tác được mô tả và kiến trúc thông qua cấu trúc dữ liệu còn các thao tác được mô tả thông qua các cấu trúc điều khiển. Cấu trúc điều khiển của ngôn ngữ là yếu tố quyết định thao tác gì và thao tác như thế nào trên dữ liệu đã mô tả. Chúng cung cấp các khả năng xử lý: tuần tự, lặp, rẽ nhánh, lựa chọn và cách thức lựa chọn các cấu trúc dữ liệu. * * Công nghệ phần mềm - Chương 5 5.2.4. Vào ra dữ liệu Có bốn dạng thông tin vào/ra (I/O) là: lệnh vào/ra cụ thể, hướng bản ghi, hướng tập hợp, và hướng mảng. * * Công nghệ phần mềm - Chương 5 5.2.5. Quản lý dữ liệu Sự tinh tế của ngôn ngữ còn thể hiện ở mức độ lập trình viên kiểm soát điều khiển việc quản lý bộ nhớ. Quản lý bộ nhớ là khả năng chương trình phân bổ bộ nhớ máy tính khi cần. Các ngôn ngữ có độ tinh tế thấp sử dụng bộ nhớ tĩnh: chương trình nhận lượng bộ nhớ lớn nhất tại thời điểm khởi tạo. Nếu chương trình cần nhiều bộ nhớ hơn lượng được cấp phát thì chương trình sẽ bị treo, Các ngôn ngữ tinh tế hơn sử dụng khả năng cấp phát bộ nhớ động, tức là chỉ cấp phát bộ nhớ khi nào cần thiết. * * Công nghệ phần mềm - Chương 5 5.2.5. Quản lý lỗi Quản lý lỗi là mức chương trình được cài đặt để phát hiện và quản lý lỗi mà không phải dừng chương trình. Khả năng này sẽ làm tăng độ phức tạp và mở rộng phạm vi hữu ích của ngôn ngữ. Ví dụ Cobol cho phép ta chặn đứng lỗi dữ liệu như tràn, chia cho 0, nhưng lại không chặn được lỗi như định nghĩa dữ liệu không hợp lệ, đọc quá cuối file,.... Ngược lại Smalltalk cho phép chặn được bất kỳ lỗi nào. Ngôn ngữ lập trình khác nhau ở mức độ chúng hỗ trợ các cách khác nhau cho điều khiển dữ liệu, xử lý vào/ra, thao tác toán học, chương trình con, và quản lý bộ nhớ. Ngôn ngữ hỗ trợ ít là ngôn ngữ đơn giản. Cấu trúc ngôn ngữ càng phức tạp thì phạm vi bao quát của nó càng lớn. * * Công nghệ phần mềm - Chương 5 5.3. CÁC ĐẶC TRƯNG CỦA NGÔN NGỮ CÀI ĐẶT Các đặc trưng được đánh giá ở đây gồm: đồng nhất (uniformity), sáng sủa (ambiguity), cô đọng (compactness), địa phương – cục bộ (locality), tuyến tính (linearity), dễ lập trình, dịch hiệu quả, khả chuyển. Tính sẵn có của công cụ trợ giúp, các bộ sinh mã và tính sẵn dùng của công cụ trợ giúp kiểm tra cũng được thêm vào nhằm làm tăng tính hấp dẫn của ngôn ngữ. * * Công nghệ phần mềm - Chương 5 5.3. CÁC ĐẶC TRƯNG CỦA NGÔN NGỮ CÀI ĐẶT (tiếp) Trong lựa chọn ngôn ngữ độ khó khi biên dịch cũng đóng một vai trò quan trọng Lý tưởng nhất, chương trình sẽ thực hiện được ở bất cứ nơi nào, trên bất cứ phần cứng hay hệ điều hành nào. Nền tảng không đóng vai trò chính để phân biệt ngôn ngữ thì những tính đặc trưng của ngôn ngữ sẽ trở nên quan trọng trong việc lựa chọn ngôn ngữ. * * Công nghệ phần mềm - Chương 5 5.4. PHÂN LỚP VÀ ĐÁNH GIÁ VỀ NGÔN NGỮ CÀI ĐẶT Các lớp ngôn ngữ Các ngôn ngữ thế hệ thứ nhất: Mã máy, hợp ngữ Các ngôn ngữ thế hệ thứ hai: FORTRAN, COBOL, ALGOL, BASIC,.. Các ngôn ngữ thế hệ thứ ba: PASCAL, C, ADA, MODULA-2, C++, C-OBJECTIVE,... Các ngôn ngữ thế hệ thứ tư So sánh, đánh giá về một số ngôn ngữ cài đặt chúng ta đánh giá một số ngôn ngữ phổ biến được dùng trong các tổ chức kinh doanh Chọn ngôn ngữ cho ứng dụng chọn sai ngôn ngữ thì chúng ta phải liên tục sửa đổi yêu cầu để phù hợp với những giới hạn của ngôn ngữ * * Công nghệ phần mềm - Chương 5 5.6. MỘT SỐ VẤN ĐỀ TRONG CẢI TIẾN HIỆU SUẤT Thứ nhất, tính hiệu quả nó là một yêu cầu hoàn thiện và nó được thiết lập trong phân tích yêu cầu phần mềm. Thứ hai là nó được thiết kế tốt, sau đó mới đến tính hiệu quả của chương trình đi đôi với tính đơn giản của chương trình * * Công nghệ phần mềm - Chương 5 5.6. MỘT SỐ VẤN ĐỀ TRONG CẢI TIẾN HIỆU SUẤT Tốc độ xử lý Không gian bộ nhớ Lựa chọn hệ thống và phần cứng * * Công nghệ phần mềm - Chương 5 ??? * * Công nghệ phần mềm - Chương 5 CÂU HỎI KẾT THÚC CHƯƠNG Câu hỏi 1. Thế nào là một phong cách cài đặt chương trình tốt. 2. Tài liệu trong của chương trình đem lại những lợi ích gì? 3. Các nền tảng của một ngôn ngữ có thể lập trình được? Hãy chỉ rõ sự tương đương giữa bản thiết kế và cài đặt để đảm bảo được sự đúng đắn của chương trình. 4. Với hồ sơ thiết kế hệ thống trong chương 4, bạn chọn công cụ cài đặc thế nào, vì sao? 5. Trong cài đặc ứng dụng, để nâng cao hiệu suất của hệ thống, bạn đã làm gì? Hãy nêu và phân tích sự cải tiến đó. * * Công nghệ phần mềm - Chương 5 

File đính kèm:

  • pptBài giảng Công nghệ phần mềm - Chương 5 Cài đặt phần mềm.ppt