Slide 1 * Chương 1 Tổng quan Giảng viên PGS TS Vũ Thanh Nguyên Trường Đại học Công Nghệ Thông Tin, ĐHQG HCM Khoa Công Nghệ Phần Mềm * * Đặc tả hình thức và quy trình CNPM Waterfall Các hoạt động trong[.]
Trường Đại học Công Nghệ Thông Tin, ĐHQG-HCM Khoa Công Nghệ Phần Mềm Chương Tổng quan Giảng viên: PGS.TS Vũ Thanh Nguyên Đặc tả hình thức quy trình CNPM Các hoạt động giới thực Khảo sát Hiện trạng Xác định Yêu cầu Các yêu cầu Phân tích Mơ hình Thế giới thực Mơ hình phần mềm Thiết kế Cài đặt Phần mềm Kiểm chứng Phần mềm “chất lượng” Triển khai Waterfall Mở đầu Quan tâm đến kết thực & chuyển giao giai đoạn Ngơn ngữ tự nhiên Độ xác khơng cao, gây hiểu nhầm, Dài dịng mơ tả đầy đủ Thích hợp cho việc mơ tả chi tiết Sơ đồ Độ xác tăng lên Trình bày ngắn gọn, trực quan Phù hợp cho việc mô tả cách tổng quát Mở đầu Phương pháp hình thức chấp nhận lãnh vực nghiên cứu công nghiệp đường giúp đỡ cải tiến chất lượng hệ thống phần cứng, phần mềm Đặc tả hình thức miêu tả đơn giản hệ thống sử dụng ký hiệu toán học Ưu điểm việc sử dụng toán học xác, khơng giống ngơn ngữ tự nhiên cịn mơ hồ mà thường sử dụng cho đặc tả Nhược điểm bao vây ký hiệu nhiều người hiểu ngơn ngữ tự nhiên tốn học Ngôn ngữ đặc tả cần phải nghiên cứu sử dụng cơng cụ thiết kế ký hiệu đủ rõ, hay, xem cơng cụ tài liệu hố Mở đầu Các trình thiết kế hệ thống thực tế cam kết việc sử dụng ký hiệu hình thức để truyền đạt ý tưởng thành viên đội ngũ thiết kế Khi thiết kế hồn chỉnh, sau sở cho việc mô tả hướng dẫn hệ thống Mở đầu Tại Sao Sử Dụng Đặc Tả Hình Thức Đặc tả hình thức rõ ràng xác Đặc tả hình thức chưa đúng, dễ dàng phát lỗi sai chỉnh sửa Đặc tả phi hình thức, khó tìm lỗi chỉnh sửa Sử dụng ký hiệu hình thức tăng cường hiểu biết vận hành hệ thống, đặc biệt giai đoạn ban đầu thiết kế Tổ chức ý tưởng người thiết kế, tạo rõ ràng, thiết kế đơn giản Khả thi để suy luận cách hình thức hệ thống phát biểu chứng minh định lý Cung cấp việc kiểm tra hệ thống hoạt động mong đợi nhà thiết kế Mở đầu Mở đầu Mở đầu Thăm dò lựa chọn thiết kế Sử dụng phương pháp phi hình thức, dễ dàng che đậy chi tiết giai đoạn thực Một lợi ích khác sử dụng đặc tả hình thức khác giá thành sản phẩm giảm Nhược điểm việc sử dụng phương pháp hình thức ký hiệu tốn học, chứa đựng ký tự xa lạ yêu cầu nhà thiết kế tham dự khoá huấn luyện Tổng quan, ký hiệu toán học dễ nghiên cứu kiểu ngơn ngữ lập trình Ví dụ: Phát biểu RBTV CSDL Ví dụ (R1) Ngôn ngữ tự nhiên Mức lương người nhân viên khơng vượt q trưởng phịng Ngơn ngữ hình thức t tNHANVIEN NHANVIEN(( u uPHONGBAN PHONGBAN((v vNHANVIEN NHANVIEN(( u.TRPHG u.TRPHGv.MANV v.MANV u.MAPHG u.MAPHGt.PHG t.PHG t.LUONG t.LUONGv.LUONG v.LUONG))) ))) 10 Ví dụ: Phát biểu RBTV CSDL Ví dụ (R2) Ngơn ngữ tự nhiên Người quản lý trực tiếp phải nhân viên cơng ty Ngơn ngữ hình thức t tNHANVIEN NHANVIEN((t.MA_NQL t.MA_NQLnull null s sNHANVIEN NHANVIEN(t.MA_NQL (t.MA_NQLs.MANV s.MANV)))) 11 Ngôn ngữ và đặc tả Ngôn ngữ Ý nghĩa sử dụng: Cho phép trao đổi thông tin, chuyển đạt yêu cầu giữa các đối tượng biết ngôn ngữ Cấu trúc bên trong: Tập hợp kí hiệu sở (từ vựng) Tập hợp qui tắc kết hợp từ vựng (cú pháp) Tập hợp ngữ nghĩa và ánh xạ liên quan Ví dụ: Ngôn ngữ tự nhiên: tiếng Việt, tiếng Anh, tiếng Pháp, Ngôn ngữ lập trình: Pascal, C, C++, Visual Basic, Java, Hợp ngữ, Ngôn ngữ máy, Ngôn ngữ loài vật: chim, cá, chó, mèo, Ngôn ngữ mô tả dữ liệu: SQL, XML, HTML (mô tả thể hiện), UML (mô tả lớp), 12 Ngôn ngữ và đặc tả Ngôn ngữ hình thức: Khái niệm: Ngôn ngữ với bộ từ vựng, cú pháp, ngữ nghĩa được định nghĩa chặt chẽ dựa sở của toán học 13 Ngôn ngữ và đặc tả Mô tả: Trình bày, diễn đạt thông tin, yêu cầu thông qua một ngôn ngữ nào đó Đặc tả: Mô tả ngắn gọn, chính xác Đặc tả hình thức: Đặc tả với một ngôn ngữ hình thức Được diễn đạt theo từ vựng, cú pháp của một ngôn ngữ và “được hiểu” theo ngữ nghĩa tương ứng của ngôn ngữ 14 Một số ngôn ngữ đặc tả hình thức Một ngơn ngữ đặc tả hình thức ngơn ngữ hình thức dùng để đặc tả mơ hình hệ thống tính tốn VDM-SL CCS Z CSP RSL Real-Time Logic Act One Deontic Logics Clear 15 Đặc tả công nghệ phần mềm Các giai đoạn qui trình cơng nghệ: Xác định yêu cầu Phân tích Thiết kế Thực Kiểm chứng 16 Đặc tả công nghệ phần mềm Ví dụ 1: Ngữ cảnh: Xét đề án phần mềm tập toán lớp với: A: Nhân viên phụ trách thiết kế B: Nhân viên lập trình C: Nhân viên phụ trách kiểm tra A yêu cầu B “viết hàm xử lí nhập (có kiểm tra tính hợp lệ) phân số dạng chuỗi” C “kiểm tra cho đánh giá hàm xử lí nhập B chuỗi phân số” Giả sử không xét đến thơng tin hàm xử lí mà quan tâm thông tin “phân số dạng chuỗi” / “chuỗi phân số” 17 Đặc tả công nghệ phần mềm Ví dụ 2: Tương tự ví dụ với: Phần mềm tập toán cao cấp Yêu cầu liên quan đến hàm xử lí số phức (chỉ quan tâm đến nhập liệu dạng chuẩn) Đóng vai trị A đặc tả cấu trúc thơng tin số phức (giả sử B, C chưa có khái niệm số phức) 18 Ví dụ Minh họa cho đặc tả kiểu cấu trúc bản: Khai báo cấu trúc HOCSINH gồm họ tên học sinh (kiểu chuỗi), Năm sinh (kiểu số tự nhiên) điểm trung bình (kiểu số thực) K HOCSINH HoTen : S NamSinh : N DTB : ℝ 19 Ví dụ Khai báo cấu trúc LOPHOC gồm tên lớp (kiểu chuỗi), sỉ số lớp (kiểu số tự nhiên) Danh sách học sinh tối đa 50 học sinh (kiểu mảng) K LOPHOC TenLop : S Siso: N DanhSach: M HOCSINH[50] 20 ... ngữ và đặc ta? ? Mô ta? ?: Trình bày, diễn đạt thông tin, yêu cầu thông qua một ngôn ngữ nào đó Đặc ta? ?: Mô ta? ? ngắn gọn, chính xác Đặc ta? ? hình thức: Đặc ta? ? với một... loài vật: chim, cá, chó, mèo, Ngôn ngữ mô ta? ? dữ liệu: SQL, XML, HTML (mô ta? ? thể hiện), UML (mô ta? ? lớp), 12 Ngôn ngữ và đặc ta? ? Ngôn ngữ hình thức: Khái niệm: Ngôn ngữ... ngữ đặc tả hình thức ngơn ngữ hình thức dùng để đặc tả mơ hình hệ thống tính tốn VDM-SL CCS Z CSP RSL Real-Time Logic Act One Deontic Logics Clear 15 Đặc tả công nghệ phần mềm Các giai đoạn