Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 129 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
129
Dung lượng
2,97 MB
Nội dung
TRƢỜNG ĐẠI HỌC AN GIANG KHOA KỸ THUẬT - CÔNG NGHỆ - MÔI TRƢỜNG NHẬP MÔN CÔNG NGHỆ PHẦN MỀM ThS NGUYỄN THỊ MỸ TRUYỀN AN GIANG, 4-2017 Tài liệu giảng dạy “Nhập môn công nghệ phần mềm”, tác giả ThS Nguyễn Thị Mỹ Truyền, công tác Khoa Kỹ thuật – Công nghệ - Môi trường thực Tác giả báo cáo nội dung Hội đồng Khoa học đào tạo Khoa thông qua ngày 30 tháng năm 2017 Tác giả biên soạn ThS NGUYỄN THỊ MỸ TRUYỀN P Trƣởng đơn vị P Trƣởng mơn TS ĐỒN THANH NGHỊ ThS PHẠM HỮU DŨNG Hiệu trƣởng AN GIANG, 4-2017 LỜI NÓI ĐẦU Ngày nay, ngành công nghiệp phần mềm giới phát triển Nhiều người thống công nghiệp phần mềm trở thành mũi nhọn để người tiến nhanh vào kinh tế tri thức Tuy nhiên, việc tạo sản phẩm phần mềm công việc đơn giản dễ dàng Để làm sản phẩm phức tạp hữu hình đòi hỏi người tham gia phát triển phải có phần kiến thức chun mơn sâu - đủ để tạo sản phẩm phần mềm chất lượng, đáp ứng yêu cầu người dùng mang lại hiệu kinh tế cao Vì kiến thức công nghệ phần mềm phần cần thiết người bắt đầu tiếp cận với lĩnh vực cơng nghệ thơng tin nói chung đặc biệt sinh viên ngành Công nghệ thơng tin Kỹ thuật phần mềm nói tiêng Đại học An Giang Tài liệu nhập môn công nghệ phần mềm biên soạn nhằm mục tiêu trang bị kiến thức tảng giúp sinh viên tiếp cận với chuyên môn tốt Nội dung tài liệu giới thiệu tổng quan kiến thức giai đoạn qui trình phát triển phần mềm lập kế hoạch, quản lý, phân tích, thiết kế, viết mã, kiểm thử,… dựa phương pháp, kỹ thuật thực lĩnh vực phát triển phần mềm Đồng thời, kiến thức môn học dùng làm sở để sinh viên học tiếp môn chuyên ngành học kì Nội dung tài liệu bao gồm chương: Chương trình bày q trình phát triển cơng nghệ phần mềm giới thiệu mơ hình phát triển phần mềm áp dụng Chương giới thiệu kiến thức quản lý dự án phần mềm hoạt động thực việc quản lý dự án phần mềm Chương giới thiệu hoạt động phân tích yêu cầu giới thiệu số mơ hình thực q trình phân tích phần mềm Chương giới thiệu hoạt động thiết kế mã hóa (code) Chương giới thiệu khái niệm, phương pháp kỹ thuật kiểm thử phần mềm, giới thiệu số ví dụ kiểm thử theo phương pháp white box dùng kỹ thuật đồ thị dòng chảy để thiết kế ca kiểm thử Do lần biên soạn tài liệu nên khơng thể tránh khỏi hạn chế thiếu sót Rất mong nhận góp ý chân thành từ bạn sinh viên, đồng nghiệp chuyên gia chun mơn để tài liệu hồn thiện tốt An Giang, tháng năm 2017 Ngƣời biên soạn ThS Nguyễn Thị Mỹ Truyền i ii LỜI CAM ĐOAN Tôi xin cam đoan tài liệu giảng dạy riêng Nội dung tài liệu giảng dạy có xuất xứ rõ ràng Long Xuyên, ngày 25 tháng năm 2017 Ngƣời biên soạn ThS Nguyễn Thị Mỹ Truyền iii iv CHƢƠNG KIỂM THỬ VÀ BẢO TRÌ PHẦN MỀM Kiểm thử bảo trì phần mềm giai đoạn sau qui trình phát triển phần mềm nhằm đảm bảo sản phẩm phần mềm dùng được, vận hành tốt với chất lượng đáp ứng yêu cầu mong đợi Nội dung chương giới thiệu số khái niệm giai đoạn kiểm thử Phần giới thiệu phương pháp, chiến lược, kỹ thuật hoạt động kiểm thử phần mềm Trong tơi chọn phương pháp kiểm thử hợp trắng với kỹ thuật đồ thị dòng chảy để minh họa cho số ví dụ kiểm thử có sử dụng testcase Phần cuối chương giới thiệu khái quát hoạt động bảo trì phần mềm 5.1 KIỂM THỬ PHẦN MỀM 5.1.1 Giới thiệu Nói đến cơng nghiệp phần mềm người ta nghĩ đến đội ngũ lập trình viên, người viết mã (code) chương trình Tuy nhiên, thực tế phần mềm sản phẩm phức tạp phải thực qua nhiều cơng đoạn đặc tả, phân tích, thiết kế, viết mã (code), kiểm thử, bảo trì,… Người ta thống kê qui trình làm phần mềm, có khoảng 40 - 45% cơng sức dành cho kiểm thử (Trần Cao Đệ & Đỗ Thanh Nghị, 2012) Công việc đội ngũ kiểm thử viên kiểm thử (test) cách có hệ thống để tìm lỗi (defect) chương trình, tức lỗi mã lệnh viết lập trình viên Nhiều thống kê cho thấy giới tỷ lệ lập trình viên kiểm thử viên 3:1, tức lập trình viên có kiểm thử viên Hoạt động kiểm thử thực để chương trình thực yêu cầu đặt ban đầu tìm khuyết điểm chương trình trước đưa vào sử dụng Khi kiểm thử phần mềm, liệu kiểm tra phải tạo dùng làm liệu đầu vào chương trình, để thực thi chương trình, kiểm tra kết thực thi, kiểm tra lỗi, phát bất thường có thêm thơng tin thuộc tính phi chức chương trình Theo IEEE 829, mục đích kiểm thử nhằm phát lỗi phần mềm, để chứng tỏ phần mềm thực chức mong đợi nhằm xác lập độ tin cậy mà chương trình muốn thực Một kiểm thử tốt phải kiểm tra hành vi bất thường chương trình Kiểm thử chương trình có lỗi khơng thể chứng tỏ chương trình khơng có lỗi Tuy nhiên, qua kiểm thử người ta thu thơng tin tình trạng lỗi phần mềm, tức thu hình ảnh chất lượng sản phẩm kiểm thử Có thể nói lỗi phần mềm phần hiển nhiên trình phát triển, dù cố gắng đến mức lập trình viên xuất sắc khơng thể đảm 93 bảo lúc viết đoạn mã khơng có lỗi Trung bình, lập trình viên loại tốt có từ đến lỗi 100 dòng lệnh Ngày nay, phần mềm ngày trở nên phức tạp đồ sộ Nó chứa đến hàng triệu dòng mã lệnh hàng trăm hàng ngàn chí hàng chục ngàn nhân viên, kỹ sư phát triển Một sản phẩm tích hợp từ nhiều mô đun, sản phẩm khác, thư viện lập trình nhiều tổ chức, cơng ty phát triển phần mềm khác Vì việc kiểm thử tính đắn phần mềm ngày trở nên quan trọng phức tạp Kiểm thử phần mềm công cụ đảm bảo chất lượng phần mềm áp dụng để kiểm soát chất lượng sản phẩm phần mềm trước giao cài đặt sản phẩm cho khách hàng (Trần Cao Đệ & Nguyễn Công Danh, 2014) Trước đây, kiểm thử thực giai đoạn cuối cùng, tức sau toàn gói phần mềm hồn thành Nhưng sau đó, tầm quan trọng việc phát sớm lỗi phần mềm xâm nhập vào khái niệm đảm bảo chất lượng, chuyên gia đảm bảo chất lượng phần mềm (SQA) khuyến khích để mở rộng kiểm thử cho sản phẩm vừa cài đặt xong, điều dẫn đến hình thành kiểm thử đơn vị kiểm thử tích hợp Vì phải kiểm thử phần mềm? Qui trình phát triển phần mềm có nhiều giai đoạn thực tự động hố cơng cụ CASE Có giai đoạn thực người Lỗi xảy tất giai đoạn: phân tích yêu cầu, thiết kế, mã hố,… Do đó, phải kiểm thử chương trình trước thức sử dụng Việc kiểm thử phải thực cách có kế hoạch có phương pháp để tìm lỗi với chi phí thấp mang lại hiệu suất tìm lỗi cao Ví dụ lỗi chương trình qui đổi điểm số 10 thành điểm chữ có đặc tả sau: Mỗi mơn học có hai điểm số thành phần điểm kỳ cuối kỳ Mỗi điểm số thành phần có hệ số (%) định, điểm cuối kỳ phải có hệ số từ 50% trở lên Điểm trung bình trung bình theo trọng số điểm số thành phần, làm tròn đến chữ số theo qui tắc làm tròn Điểm trung bình qui đổi sang điểm chữ theo qui tắc: Điểm số từ đến cận 4: điểm F Điểm số từ đến cận 5.5: điểm D Điểm số từ 7.0 đến cận 8.5: điểm B Điểm số từ 8.5 đến cận 10: điểm A Người lập trình viết chương trình sau: Char doi(float diemtb){//diemtb tính tốn làm tròn 94 if(diemtb >=0.0 && diemtb=4.0 && diemtb=0.0 && diemtb