Tổng quan về công nghệ phần mềm
 Một số khái niệm cơ bản
 Công nghệ phần mềm
 Quy trình công nghệ phần mềm:
 Quy trình thác nước
 Quy trình thác nước cải tiến
 Quy trình Prototype
 Quy trình xoắn ốc
 Ví dụ: xét một số phần mềm sau:
 Phần mềm quản lý học sinh cấp 3.
 Phần mềm quản lý thư viện.
 Phần mềm quản lý nhà sách.
 Phần mềm quản lý khách sạn.
 Phần mềm quản lý phòng mạch tư.
 Phần mềm quản lý sổ tiết kiệm.
 Phần mềm quản lý bán vé chuyến bay.
TỔNG QUAN VỀ CÔNG NGHỆ PHẦN MỀM – TRƯỜNG CD CÔNG NGHỆ THÔNG TIN Khoa: công nghệ phần mềm Năm hoc:2010-2011  Một số khái niệm cơ bản  Công nghệ phần mềm  Quy trình công nghệ phần mềm:  Quy trình thác nước  Quy trình thác nước cải tiến  Quy trình Prototype  Quy trình xoắn ốc  Ví dụ: xét một số phần mềm sau:  Phần mềm quản lý học sinh cấp 3.  Phần mềm quản lý thư viện.  Phần mềm quản lý nhà sách.  Phần mềm quản lý khách sạn.  Phần mềm quản lý phòng mạch tư.  Phần mềm quản lý sổ tiết kiệm.  Phần mềm quản lý bán vé chuyến bay.  Phần mềm xếp thời khóa biểu  …  Được xem xét ở hai góc độ:  Góc nhìn người dùng  Góc nhìn chuyên viên tin học  Phần mềm dưới góc nhìn của người sử dụng:  Chương trình thực thi được trên máy tính hoặc các thiết bị chuyên dụng khác  Nhằm hỗ trợ cho các nhà chuyên môn trong từng lĩnh vực chuyên ngành thực hiện tốt hơn các thao tác nghiệp vụ của mình  Môi trường triển khai phần mềm:  Máy tính: Desktop, Laptop, Tablet PC…  Thiết bị chuyên dụng:  Thiết bị di động: PDA, Pocket PC, ĐTDĐ  Các thiết bị chuyên dụng khác: set-top box, router,...  Hỗ trợ làm tốt hơn các thao tác nghiệp vụ:  Tin học hóa nghiệp vụ hiện đang làm thủ công  Cải tiến chức năng nghiệp vụ hiện đang được thực hiện trên máy tính  Đề ra, xây dựng và triển khai chức năng nghiệp vụ mới  Phần mềm dưới góc nhìn của chuyên viên Tin học:  Đây là một hệ thống bao gồm 3 thành phần cơ bản:  Thành phần giao tiếp  Thành phần xử lý  Thành phần lưu trữ  Cần được xây dựng để thực hiện theo yêu cầu của người sử dụng  Thành phần giao tiếp (Giao diện):  Cho phép tiếp nhận các yêu cầu về việc sử dụng phần mềm từ người sử dụng, từ các thiết bị thu thập dữ liệu, hoặc từ các phần mềm khác.  Cho phép trình bày các kết quả của việc thực hiện các yêu cầu cho người dùng (kết quả của công việc khi thực hiện trên máy tính) hoặc điều khiển hoạt động các thiết bị điều khiển (đóng/mở cửa, dừng hay cho chuyển động…)  Thành phần giao tiếp (Giao diện):  Một cách tổng quát, thành phần giao tiếp cho phép nhập/xuất thông tin cùng với hình thức trình bày/giao tiếp tương ứng.  Mục tiêu chính của thành phần này là đưa thông tin từ thế giới thực bên ngoài phần mềm (người sử dụng, các thiết bị, phần mềm khác…) vào bên trong, hoặc ngược lại.  Thành phần xử lý:  Kiểm tra tính hợp lệ của thông tin nguồn được cung cấp từ người dùng theo các quy định ràng buộc trong thế giới thực  Ví dụ: chỉ cho mượn tối đa 3 quyển sách, mỗi lớp học không quá 50 học sinh…  Tiến hành xử lý cho ra kết quả mong đợi theo quy định tính toán có sẵn trong thế giới thực  Hoặc tiến hành xử lý theo thuật giải tự đề xuất  Thành phần xử lý (tt):  Việc xử lý dựa trên thông tin nguồn từ người sử dụng cung cấp  Ví dụ: tính nghiệm phương trình bậc 2 dựa trên các hệ số nhập vào hoặc dữ liệu lưu trữ có sẵn  Ví dụ: tính tiền phạt dựa trên ngày trả sách được nhập vào và thông tin về loại sách đã được lưu trữ  Việc xử lý cho ra kết quả có thể dùng để xuất cho người dùng xem qua thành phần giao diện, hay lưu trữ lại qua thành phần lưu trữ, hoặc cả hai  Một cách tổng quát, thành phần xử lý là hệ thống chuyên xử lý tính toán, biến đổi dữ liệu.  Dùng thông tin nguồn từ thành phần giao diện (chức năng nhập) hay thành phần dữ liệu (chức năng đọc);  Kiểm tra tính hợp lệ (chức năng kiểm tra) và sau đó tiến hành xử lý (chức năng xử lý) – nếu cần thiết  Để cho ra kết quả sẽ được trình bày thông qua thành phần giao diện (chức năng xuất) hoặc lưu trữ lại trong thành phần dữ liệu (chức năng ghi)  Thành phần lưu trữ (thành phần dữ liệu)  Cho phép lưu trữ lại (chức năng ghi) các kết quả đã xử lý  Ví dụ: Việc mượn sách đã được kiểm tra hợp lệ, bảng lương tháng đã được tính trên bộ nhớ phụ với tổ chức lưu trữ được xác định trước  Ví dụ: tập tin có cấu trúc, tập tin nhị phân, cơ sở dữ liệu  Thành phần lưu trữ (thành phần dữ liệu)  Cho phép truy xuất lại (chức năng đọc) các dữ liệu đã lưu trữ phục vụ cho các hàm xử lý tương ứng  Một cách tổng quát thành phần dữ liệu là hệ thống chuyên đọc ghi dữ liệu cùng với mô hình tổ chức lưu trữ dữ liệu tương ứng.  Mục tiêu chính của thành phần này là chuyển đổi dữ liệu giữa bộ nhớ chính và bộ nhớ phụ  Phân lớp theo mục đích sử dụng:  Lớp phần mềm quản lý học sinh  Lớp phần mềm đánh cờ  Lớp phần mềm giải bài tập  ...  Phân lớp theo mục tiêu tạo lập  Lớp phần mềm theo hợp đồng  Lớp phần mềm khung  Lớp phần mềm đóng gói  Lớp phần mềm:  Lớp phần mềm là hệ thống các phần mềm trên cùng một lĩnh vực hoạt động nào đó  Do cùng lĩnh vực hoạt động nên các phần mềm cùng lớp thường có cấu trúc và chức năng tương tự nhau  Mục tiêu của ngành Công nghệ Phần mềm  Xây dựng được phần mềm có chất lượng  Dễ dàng xây dựng phần mềm mới từ các phần mềm có sẵn cùng lớp 2/Chất lượng phần mềm Tính tiến hóa Tính đúng đắn Tính tiện dụng Tính hiệu quả Tính tương thích Phần mềm Phần cứng 3/Phát triển của Công nghệ phần mềm  Giai đoạn 1 (1950 – giữa 1960)  Xử lý theo lô, xử lý tập trung, ít xử lý phân tán, ít sửa đổi phần mềm  Giai đoạn 2 (từ giữa 1960 đến giữa 1970)  Hệ thống đa chương trình và đa nguời dùng  Bắt đầu cuộc “khủng hoảng” phần mềm Con người Phần mềm khác  Giai đoạn 3 (từ giữa 1970 đến giữa 1980)  Sự phát triển và sử dụng rộng rãi máy tính cá nhân  Sự phát triển của các công ty phần mềm  Giai đoạn 4 (từ giữa 1980 đến nay)  Phần cứng ngày càng phát triển  Hệ thống phần mềm ngày càng đa dạng, phong phú, xử lý ngày càng phức tạp, công nghệ ngày càng phát triển… 4/Cuộc khủng hoảng phần mềm  Số lượng các phần mềm tăng vọt (do sự phát triển của phần cứng: tăng khả năng, giá thành hạ)  Có quá nhiều khuyết điểm trong các phần mềm được dùng trong xã hội:  Thực hiện không đúng yêu cầu (tính toán sai, không ổn định…)  Thời gian bảo trì nâng cấp quá lâu, chi phí cao, hiệu quả thấp  Khó sử dụng, Thực hiện chậm  Không chuyển đổi dữ liệu giữa các phần mềm  Một số kết luận:  Việc tăng vọt số lượng phần mềm là điều hợp lý và sẽ còn tiếp diễn  Các khuyết điểm của phần mềm có nguồn gốc chính từ phương pháp, cách thức và quy trình tiến hành xây dựng phần mềm:  Cảm tính: mỗi người theo một phương pháp riêng  Thô sơ, đơn giản: chỉ tập trung vào việc lập trình mà ít quan tâm đến các công việc cần làm khác (khảo sát hiện trạng, phân tích yêu cầu, thiết kế…)  Thủ công: còn thiếu các công cụ hỗ trợ quy trình phát triển
File đính kèm:
 Tổng quan về công nghệ phần mềm.pdf Tổng quan về công nghệ phần mềm.pdf



