bài giảng công nghệ phần mềm chương 1 phần mềm và công nghệ phần mềm - ths. nguyễn khắc quốc - Pdf 23

Ths. Nguyễn Khắc Quốc
Email:
BÀI GIẢNG MÔN
CÔNG NGHỆ PHẦN MỀM
Chương 1:
PHẦN MỀM VÀ CÔNG NGHỆ PHẦN MỀM
1.1 Tầm quan trọng và sự tiến hóa của PM
-Phần mềm tạo ra sự khác biệt giữa các máy tính và cũng
quyết định năng lực của máy tính.
- Khả năng của phần cứng biểu thị cho tiềm năng của hệ
thống còn phần mềm là một cơ chế giúp chúng ta khai
thác tiềm năng này.
1.1.1 Phát triển của phần mềm
a. Những năm đầu (từ 1950 đến 1960)
-Giai đoạn này phần cứng thay đổi liên tục,
- Phương thức chính là xử lý theo lô (batch),
- Thời kỳ này lập trình máy tính được coi là nghệ thuật
“theo bản năng”,
- Môi trường lập trình có tính chất cá nhân;
- Thiết kế, tiến trình phần mềm không tường minh,
- Người lập trình thường là người sử dụng và kiêm cả
việc bảo trì và sửa lỗi
b. Thời kỳ những năm 1960 đến giữa những năm 1970
- Các hệ thống đa nhiệm, đa người sử dụng: Multics,
Unix,
- Tiến bộ lưu trữ trực tuyến làm xuất hiện thế hệ đầu tiên
của hệ quản trị CSDL.
- Số lượng các hệ thống dựa trên máy tính phát triển,
- Nhu cầu phân phối mở rộng, thư viện PM phát triển,
- Quy mô phần mềm ngày càng lớn
- Công việc bảo trì phần mềm dần dần tiêu tốn nhiều công

cho các chương trình khác.
- Xử lý các cấu trúc thông tin phức tạp nhưng xác định
(trình biên dịch, trình soạn thảo, tiện ích quản lý tệp)
- Đặc trưng bởi tương tác chủ yếu với phần cứng máy
tính
- Phục vụ nhiều người dùng
- Cấu trúc dữ liệu phức tạp và nhiều giao diện ngoài
1.1.2 Ứng dụng của phần mềm
b. Phần mềm thời gian thực
Phần mềm điều phối, phân tích hoặc kiểm soát các sự kiện
thế giới thực ngay khi chúng xuất hiện được gọi là phần
mềm thời gian thực.
- Thu thập dữ liệu để thu và định dạng thông tin từ môi
trường ngoài
- Phân tích để biến đổi thông tin theo yêu cầu của ứng dụng
- Kiểm soát hoặc đưa ra đáp ứng môi trường ngoài
- Điều phối để điều hòa các thành phần khác sao cho có thể
duy trì việc đáp ứng thời gian thực
- Phải đáp ứng những ràng buộc thời gian chặt chẽ.
1.1.2 Ứng dụng của phần mềm (tt)
c. Phần mềm nghiệp vụ
Là các phần mềm phục vụ các hoạt động kinh doanh
hay các nghiệp vụ của tổ chức, doanh nghiệp…
d. Phần mềm khoa học và công nghệ
- Được đặc trưng bởi các thuật toán (tính toán trên ma
trận số, mô phỏng ).
- Thường đòi hỏi phần cứng có năng lực tính toán cao.
1.1.2 Ứng dụng của phần mềm (tt)
e. Phần mềm nhúng
- Nằm trong bộ nhớ chỉ đọc và được dùng để điều khiển

1.2 Khó khăn, thách thức
Phần mềm thông thường được định nghĩa bao gồm:
- Các lệnh máy tính nhằm thực hiện các chức năng xác
định
- Các cấu trúc dữ liệu cho phép chương trình thao tác
với dữ liệu
- Các tài liệu giúp cho người dùng có thể vận hành được
phần mềm
1.2.1 Phần mềm và phần mềm tốt
Các thuộc tính mà một hệ phần mềm:
1.2.1 Phần mềm và phần mềm tốt (tt)
- Tính đối xứng và đầy đủ chức
năng
- Tính tiêu chuẩn và tính chuẩn
- Tính độc lập
- Tính dễ phát triển, hoàn thiện
- phổ dụng, đơn giản, liên tác, súc
tính, thứ lỗi, modul hóa, đầy đủ
hồ sơ, theo dõi được, vận hành
dễ,…
- Tính đúng đắn
- Tính khoa học
- Tính tin cậy
- Tính kiểm thử được
- Tính hữu hiệu
- Tính sáng tạo
- Tính an toàn
- Tính toàn vẹn
1.2.1 Phần mềm và phần mềm tốt (tt)
Bốn thuộc tính chủ chốt mà một hệ phần mềm tốt

lớn đến giá thành và chất lượng phần mềm.
- Còn tồn tại rất nhiều chương trình được thiết kế và lập
tài liệu sơ sài khiến cho việc bảo trì rất khó khăn và kém
tài nguyên.
- Phát triển các phần mềm mới dễ bảo trì để thay thế
các hệ thống cũ trở thành nhu cầu cấp bách.
1.2.3 Nhu cầu và độ phức tạp
- Cùng với sự phát triển của phần cứng, quy mô và độ
phức tạp của các phần mềm mới ngày càng tăng.
- Một số phần mềm hiện đại có kích thước được tính
bằng đơn vị triệu dòng lệnh (HĐH Unix, Windows ).
- Độ phức tạp tăng vọt, các kinh nghiệm sản xuất sản
phẩm nhỏ không ứng dụng được cho môi trường làm
việc theo nhóm và phát triển sản phẩm lớn.
- Sự tinh vi và năng lực của phần cứng đã vượt xa khả
năng xây dựng phần mềm để có thể sử dụng được các
tiềm năng của nó.
1.2.3 Nhu cầu và độ phức tạp (tt)
CNPM là lĩnh vực nghiên cứu của tin học nhằm đề xuất
các nguyên lý, phương pháp, công cụ, cách tiếp cận
phục vụ cho việc thiết kế, cài đặt các sản phấm phần
mềm đạt được đầy đủ các yêu cầu về chất lượng phần
mềm.
Do quá trình tiến hóa của ngành CNPM nên các khái
niệm về nó cũng thay đổi theo thời gian.
Hơn nữa nó là một lĩnh vực mới nên phụ thuộc rất nhiều
vào quan điểm chủ quan của từng người khác nhau:
1.3 Công nghệ phần mềm
1.3.1 Định nghĩa
-Bauer (1969) Việc thiết lập và sử dụng các nguyên lý

chứa đựng 3 yếu tố chủ chốt:
• Phương pháp
• Công cụ
• Quy trình (Thủ tục )
1.3.1 Định nghĩa (tt)
Tiêu chuẩn của một sản phẩm phần mềm
- Tính đúng
- Tính khoa học
- Tính tin cậy
- Tính kiểm thử được
- Tính hữu hiệu
- Tính sáng tạo
- Tính an toàn
- Tính toàn vẹn
1.3.1 Định nghĩa (tt)

Trích đoạn Mô hình vòng đời cổ điển (thác nước) (tt)
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status