Đang tải... (xem toàn văn)
Công nghệ phần mềm
Trường Đại Học Bách Khoa Tp. Hồ Chí MinhKhoa Công Nghệ Thông TinMôn họcCÔNG NGHỆ PHẦN MỀM-Trang 1-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm GIỚI THIỆU MÔN HỌC Đặc điểmMã số: 501095 Số tín chỉ: 2 Phân phối giờ: 2(2.1.4)Môn học trước: Toán Tin Học (501302) Tóm tắt nội dungCác khái niệm cơ bản của Công Nghệ Phần Mềm: các mô hình phát triển phần mềm, phân tích yêu cầu, thiết kế, kiểm tra…2 trường phái chính: có cấu trúc (cổ điển) & hướng đối tượngChuẩn UML và việc áp dụng nó trong phương pháp hướng đối tượngThực hành tại phòng Lab: làm quen với công cụ Rational Rose-Trang 2-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm GIỚI THIỆU MÔN HỌC (t.t) Tài liệu tham khảo[1] Software Engineering - A practitioner’s approach, R.S. Pressman, McGraw-Hill, 1997 [2] OMG Unified Modeling Language Specification, version 1.3, Object Management Group (www.omg.org), 1999[3]UML Toolkit, Hans-Erik Eriksson & Magnus Penker, 1998[4] Object-Oriented Software Engineering, A Use-Case Driven Approach, I. Jacobson, ACM Press/Addison-Wesley, 1992[5] Object-Oriented Analysis and Design with Applications, G. Booch, The Benjamin Cummings Publishing Company, 1994-Trang 3-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm GIỚI THIỆU MÔN HỌC (t.t)Hình thức đánh giá Thi giữa kỳ: trắc nghiệm không sử dụng tài liệu, chiếm 20 % kết quả cuối cùng Thi cuối kỳ: trắc nghiệm không sử dụng tài liệu, chiếm 80 % kết quả cuối cùng-Trang 4-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm ĐỀ CƯƠNGChương 1: Giới thiệu về Công Nghệ Phần MềmChương 2: Phân tích yêu cầu theo phương pháp cổ điểnChương 3: Các khái niệm cơ bản của mô hình hướng đối tượng Chương 4: Mô hình nghiệp vụ và thu thập yêu cầuChương 5: Phân tích yêu cầu hướng đối tượngChương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điểnChương 7: Thiết kế hướng đối tượngChương 8: Hiện thực và triển khai hệ thốngChương 9: Kỹ thuật kiểm tra phần mềmChương 10: Chiến thuật kiểm tra phần mềm-Trang 5-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Trường Đại Học Bách Khoa Tp. Hồ Chí MinhKhoa Công Nghệ Thông TinChương 1GIỚI THIỆU VỀCÔNG NGHỆ PHẦN MỀM✦✦✦✦ Một số khái niệm✦✦✦✦ Các mô hình phát triển phần mềm-Trang 6-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM NỘI DUNG1.1. Một số khái niệm1.1.1. Khủng hoảng phần mềm1.1.2. Đònh nghóa1.1.3. Chu trình (process), phương pháp (method), công cụ (tool)1.1.4. Một cách nhìn tổng quan về công nghệ phần mềm1.1.5. Mô hình CMM1.2. Các mô hình phát triển phần mềm1.2.1. Mô hình tuần tự tuyến tính1.2.2. Mô hình prototype1.2.3. Mô hình xoắn ốc1.2.4. Mô hình tăng dần1.2.3. Mô hình RAD-Trang 7-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM KHỦNG HOẢNG PHẦN MỀM Phần mềm được viết ngay từ khi xuất hiện các hệ máy tính và ngôn ngữ lậïp trình đầu tiên Trên thực tế sản xuất phần mềm không đáp ứng kòp yêu cầu của người sử dụng-Trang 8-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM KHỦNG HOẢNG PHẦN MỀM (t.t)Các dữ liệu quan sát đượcCứ 6 đề án triển khai thì có 2 bò huỷ bỏTrung bình thời gian thực hiện thực tế bò kéo dài 50 % (cá biệt 200-300%)Các đề án lớn dễ thất bại3/4 các hệ thống lớn có lỗi khi thực thiQuá trình phân tích yêu cầu (5 % công sức): để lại 55 % lỗi, có 18 %phát hiện đượcQuá trình thiết kế (25 % công sức): để lại 30 % lỗi, có 10 % phát hiện đượcQuá trình mã hoá, kiểm tra và bảo trì: để lại 15 % lỗi, có 72 % phát hiện được-Trang 9-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM KHỦNG HOẢNG PHẦN MỀM (t.t)Nguyên nhânPhát triển phần mềm giống như một nghệ thuật, chưa được xem như một ngành khoa họcQuá trình phát triển phần mềm chưa được thống nhấtPhải viết lại s/w mỗi khi có sự thay đổi về ngôn ngữ, h/w hoặc o/sChưa đạt được 1 chuẩn cho việc đo lường hiệu suất và sản phẩmĐộ phức tạp của phần mềm quá cao đối với 1 “kiến trúc sư”Kỹ thuật đặc tả để lại sự nhập nhằng trong các yêu cầu phần mềmLàm việc nhóm không đúng kỷ luật gây ra các lỗi-Trang 10-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM [...]... 22- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu veà CNPM Trường Đại Học Bách Khoa Tp. Hồ Chí Minh Khoa Công Nghệ Thông Tin Môn học CÔNG NGHỆ PHẦN MỀM -Trang 1- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Trường Đại Học Bách Khoa Tp. Hồ Chí Minh Khoa Công Nghệ Thông Tin Chương 1 GIỚI THIỆU VỀ CÔNG NGHỆ PHẦN MỀM ✦ ✦✦ ✦ Một số khái niệm ✦ ✦✦ ✦ Các mô hình phát triển phần mềm -Trang... trình R R R -Trang 23- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu veà CNPM ĐỊNH NGHĨA Định nghóa cổ điển (của Fritz Bauer) Công Nghệ Phần Mềm là sự thiết lập và sử dụng các nguyên tắc khoa học nhằm mục đích tạo ra các phần mềm một cách kinh tế mà các phần mềm đó hoạt động hiệu quả và tin cậy trên các máy tính. -Trang 12- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1:... thiết lập để triển khai công nghệ phần mềm. -Trang 14- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM CÔNG CỤ Công cụ (tool) cung cấp các hỗ trợ tự động hay bán tự động đối với chu trình và phương pháp Các công cụ được tích hợp tạo thành CASE (Computer Aided Software Engineering) -Trang 16- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu... mức cao nhất -Trang 36- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 2: Phân tích yêu cầu theo pp cổ điển KHỦNG HOẢNG PHẦN MỀM Phần mềm được viết ngay từ khi xuất hiện các hệ máy tính và ngôn ngữ lậïp trình đầu tiên Trên thực tế sản xuất phần mềm không đáp ứng kịp yêu cầu của người sử dụng -Trang 8- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về... Khủng hoảng phần mềm 1.1.2. Định nghóa 1.1.3. Chu trình (process), phương pháp (method), công cụ (tool) 1.1.4. Một cách nhìn tổng quan về công nghệ phần mềm 1.1.5. Mô hình CMM 1.2. Các mô hình phát triển phần mềm 1.2.1. Mô hình tuần tự tuyến tính 1.2.2. Mô hình prototype 1.2.3. Mô hình xoắn ốc 1.2.4. Mô hình tăng dần 1.2.3. Mô hình RAD -Trang 7- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương... nghóa khác: Công Nghệ Phần Mềm Là các quy trình đúng kỷ luật và có định lượng được áp dụng cho sự phát triển, thực thi và bảo trì các hệ thống thiên về phần mềm Tập trung vào quy trình, sự đo lường, sản phẩm, tính đúng thời gian và chất lượng -Trang 13- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM Trường Đại Học Bách Khoa Tp. Hồ Chí Minh Khoa Công Nghệ Thông... cứu các phần tử dữ liệu -Trang 43- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 2: Phân tích yêu cầu theo pp cổ điển GIỚI THIỆU MÔN HỌC (t.t) Hình thức đánh giá Thi giữa kỳ: trắc nghiệm không sử dụng tài liệu, chiếm 20 % kết quả cuối cùng Thi cuối kỳ: trắc nghiệm không sử dụng tài liệu, chiếm 80 % kết quả cuối cùng -Trang 4- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm ĐỊNH... hình RAD: thời gian phát triển ngắn -Trang 19- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM PHƯƠNG PHÁP Phương pháp (method) chỉ ra cách thực hiện những công việc cụ thể (“how to”): phân tích yêu cầu thiết kế xây dựng chương trình kiểm tra sửa lỗi -Trang 15- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM CHU TRÌNH Chu... lại 15 % lỗi, có 72 % phát hiện được -Trang 9- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM GIỚI THIỆU MÔN HỌC Đặc điểm Mã số: 501095 Số tín chỉ: 2 Phân phối giờ: 2(2.1.4) Môn học trước: Toán Tin Học (501302) Tóm tắt nội dung Các khái niệm cơ bản của Công Nghệ Phần Mềm: các mô hình phát triển phần mềm, phân tích yêu cầu, thiết kế, kiểm tra… 2 trường... rất ngắn Sử dụng các thành phần có sẵn càng nhiều càng tốt Sử dụng công cụ lập trình ở dạng tự động sinh mã chứ không phải các ngôn ngữ truyền thống Business modeling Data modeling Process modeling Application generation Testing & Turnover -Trang 26- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM CÁC MÔ HÌNH PHÁT TRIỂN PHẦN MỀM Mô hình tuần tự tuyến tính: . Bách Khoa Tp. Hồ Chí MinhKhoa Công Nghệ Thông TinMôn họcCÔNG NGHỆ PHẦN MỀM-Trang 1-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm GIỚI THIỆU MÔN HỌC Đặc. 1GIỚI THIỆU VỀCÔNG NGHỆ PHẦN MỀM✦✦✦✦ Một số khái niệm✦✦✦✦ Các mô hình phát triển phần mềm- Trang 6-Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương