Đại Học Quốc Gia Hà Nội luôn là top đầu cảu các trường đại học tại Việt Nam, vậy nên chuyên Nghành công nghệ thông tin của ĐHQG Hà Nội cũng luôn là top đầu của các trường đại học tại Việt Nam. và đây chính là tài liệu cho ĐHQG HÀ Nội xuất bản. với uy tín của mình, chắc chắn cuốn sách sẽ làm hài lòng tất cả các bạn đọc đã ghé xem.
Phần mềm & Kỹ nghệ phần mềm V.D.Hương, T.T.M.Châu Phần mềm (Software) • • • • • Định nghĩa Vai trò Những đặc trưng Phân loại Tiêu chí phần mềm tốt Phần mềm – Định nghĩa • Phần mềm gồm chương trình máy tính tất tài liệu liệu liên quan – Các chương trình – Các tệp cấu hình – Các tài liệu hệ thống – Tài liệu người dùng – Websites cập nhật thông tin sản phẩm • Phần mềm gắn với hệ thống cụ thể Phần mềm – Phân loại • Phần mềm dùng chung • Phần mềm đặt hàng Phần mềm – Vai trò • Làm thay đổi phong cách làm việc tổ chức • Tăng hiệu suất làm việc đơn vị • Ảnh hưởng đến kinh tế quốc gia – Nền kinh tế tất nước phát triển phụ thuộc vào phần mềm – Tiền chi cho phần mềm chiếm tỷ lệ quan trọng GNP tất nước phát triển Phần mềm – Các đặc trưng • Phần mềm phức tạp • Yêu cầu phần mềm không ngừng thay đổi – Nhu cầu người – Quy trình quản lý – Hạ tầng phần cứng • Nhu cầu sử dụng phần mềm ngày tăng lên Phần mềm – Tiêu chí phần mềm tốt • Tính bảo trì – Phần mềm phải tiến hóa để đáp ứng nhu cầu liên tục thay đổi • Tính tin cậy • Tính hiệu – Phần mềm không nên sử dụng tài nguyên hệ thống cách lãng phí • Tính chấp nhận – Phần mềm phải người dùng chấp nhận: người dùng hiểu được, dùng nó, tương thích với hệ thống khác Phần mềm – Tổng kết • Phần mềm có vai trò quan trọng • Phát triển phần mềm công việc phức tạp, rủi ro Cần áp dụng phương pháp tiên tiến Kỹ nghệ phần mềm (Software Engineering) • • • • Khái niệm Các yếu tố Phân biệt với lĩnh vực liên quan Các hoạt động chung trình phát triển phần mềm Kỹ nghệ phần mềm – Khái niệm • Các lý thuyết, phương pháp công cụ hỗ trợ cho phát triển phần mềm • Áp dụng lý thuyết, phương pháp, công cụ phù hợp trình sản xuất phần mềm ràng buộc tổ chức tài • Phát triển lý thuyết, phương pháp, công cụ hỗ trợ trình sản xuất phần mềm Cách tiếp cận có tổ chức có hệ thống 10 SE - Các yếu tố • Phương pháp (method) – Cách làm cụ thể để xây dựng phần mềm – Mỗi công đoạn làm phần mềm có phương pháp riêng • Công cụ (tool) – Thực tự động/bán tự động công đoạn làm phần mềm – Computer Aided Software Engineering (CASE-Tools) • Quy trình (process) – Các bước thực thứ tự bước – Đầu vào, đầu bước 11 SE - Các hoạt động • Các hoạt động tổng quát quy trình phần mềm – Đặc tả (specification) – hệ thống cần làm ràng buộc – Phát triển (development) – tạo hệ thống phần mềm – Thẩm định (validation) – kiểm tra xem phần mềm có khách hàng muốn hay không – Cải tiến (evolution) – sửa đổi phần mềm để đáp ứng nhu cầu thay đổi 12 Software engineering vs Computer science? • Khoa học máy tính liên quan đến vấn đề lý thuyết tảng máy tính • Kỹ nghệ phần mềm liên quan đến thực tiễn việc phát triển phần mềm CS SE 13 Software engineering vs system engineering • Kỹ nghệ hệ thống liên quan tới tất mặt phát triển hệ thống dựa máy tính: phần cứng, phần mềm, tổ chức, quản lý • Kỹ nghệ phần mềm phần kỹ nghệ hệ thống Kỹ nghệ hệ thống Kỹ nghệ phần mềm 14 SE – Tổng kết • Kỹ nghệ phần mềm bao gồm việc phát triển lý thuyết, phương pháp công cụ hỗ trợ trình sản xuất phần mềm việc áp dụng chúng vào trình sản xuất phần mềm thức tế • Tiến trình phần mềm bao gồm hoạt động cần thực để phát triển phần mềm • Phương pháp mô tả cách thức thực hoạt động phát triển phần mềm • Công cụ trợ giúp thực hoạt động phát triển phần mềm 15 Câu hỏi Sự khác phần mềm dùng chung phần mềm đặt hàng Nêu tiêu chí mà phần mềm nên đạt gợi ý thêm tiêu chí khác Động dẫn đến đời phát triển kỹ nghệ phần mềm Kể số phương pháp, công cụ hỗ trợ phát triển phần mềm Nêu bước chung trình phát triển phần mềm 16