Thông tin môn học – Mục tiêu • Kiến thức về quy trình và phương pháp xây dựng phần mềm • Kỹ năng phân tích, thiết kế phần mềm theo quy trình và phương pháp cụ thể • Kiến thức qui trình và các kỹ thuật kiểm thử phần mềm
10/27/22 Prof.Dr.Vu Thanh Nguyen 3
Thông tin môn học • Số tín chỉ: 4 • Lý thuyết: 60; • Môn tiên quyết – Cấu trúc dữ liệu và giải thuật – Kiến thức cơ bản về Cơ sở dữ liệu – C#
10/27/22 Prof.Dr.Vu Thanh Nguyen 4
Tài liệu tham khảo • Tài liệu nhập môn Công nghệ phần mềm • Giáo trình nhập môn Công nghệ phần mềm, Nguyễn Tiến Huy, Trường Đại học Khoa học Tự nhiên Tp.HCM. • Roger S. Pressman, Software Engineering A Practitioner's approach, fifth edition. McGraw Hill, 860p., 2001. Bản dịch tiếng Việt của lần xuất bản thứ 4, NXBGD • Ian Sommerville, Software Engineering, 7th Edition, Addison Wesley, 2004 • Các sách với tiêu đề “Software Engineering” • www.google.com • http://msdn.microsoft.com •10/27/22 http://www.codeguru.com Prof.Dr.Vu Thanh Nguyen 5 Nội dung môn học • Chương 1: Tổng quan về Công nghệ Phần mềm • Chương 2: Xác định và phân tích yêu cầu • Chương 3: Thiết kế hệ thống phần mềm • Chương 4: Cài đặt phần mềm • Chương 5: Kiểm thử phần mềm (Software Testing) • Chương 6: Đóng gói phần mềm • Chương 7: Vận hành và bảo trì phần mềm
10/27/22 Prof.Dr.Vu Thanh Nguyen 7
Chương 1: Tổng quan về Công nghệ Phần mềm
• Một số khái niệm cơ bản
• Phần mềm • Chất lượng phần mềm • Công nghệ phần mềm • Các phương pháp xây dựng phần mềm • Công cụ và môi trường phát triển phần mềm
10/27/22 Prof.Dr.Vu Thanh Nguyen 8
Chương 1: Tổng quan về Công nghệ Phần mềm
• Quy trình 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 • Quy trình phát triển lặp •…
10/27/22 Prof.Dr.Vu Thanh Nguyen 9
Chương 2: Xác định và phân tích yêu cầu
• Khảo sát hiện trạng
– Hiện trạng tổ chức – Hiện trạng nghiệp vụ – Hiện trạng Tin học (phần cứng, phần mềm, con người) • Xác định yêu cầu • Phân tích và mô hình hóa yêu cầu
10/27/22 Prof.Dr.Vu Thanh Nguyen 10
Chương 3: Thiết kế hệ thống phần mềm
• Tổng quan về thiết kế phần mềm
• Kiến trúc phần mềm • Thiết kế dữ liệu • Thiết kế xử lý • Thiết kế giao diện
10/27/22 Prof.Dr.Vu Thanh Nguyen 11
Chương 4: Cài đặt phần mềm • Phương pháp lập trình hướng chức năng • Phương pháp lập trình hướng cấu trúc • Phương pháp lập trình hướng đối tượng • Kiến trúc mô hình 1 lớp, 2 lớp, 3 lớp • Một số công cụ, môi trường phát triển phần mềm.
10/27/22 Prof.Dr.Vu Thanh Nguyen 12
Chương 5: Kiểm thử phần mềm
• Kiểm thử phần mềm là gì?
• Tại sao kiểm thử phần mềm lại cần thiết? • Quy trình kiểm thử phần mềm • Các phương pháp kiểm thử phần mềm • Công cụ hỗ trợ test • Công cụ theo dõi quá trình test • Công cụ hỗ trợ test tự động – Sưu liệu Testing: Test Plan, Test case, Test log, Test report,…
10/27/22 Prof.Dr.Vu Thanh Nguyen 13
Chương 6: Đóng gói phần mềm • Quy trình đóng gói phần mềm • Sưu liệu mô tả đóng gói phần mềm • Một số công cụ đóng gói thông dụng (setup.exe): • Installshield • Wise Install • ...
10/27/22 Prof.Dr.Vu Thanh Nguyen 14
Chương 7: Vận hành và bảo trì phần mềm
• Bảo trì phần mềm là gì.
• Tại sao cần phải bảo trì. • Phân loại các kiểu bảo trì. • Khó khăn • Các nhân tố ảnh hưởng đến chi phí bảo trì • Bảo trì phần mềm hướng đối tượng