Đang tải... (xem toàn văn)
• Người dùng chọn lớp chưa có thông tin, hệ thống báo lỗi và yêu cầu người dùng chọn lớp khác. • Người dùng chọn giảng viên chưa có thông[r]
(1)(2)ĐẶC TẢ YÊU CẦU
(3)Đặc tả yêu cầu
• Đặc tả yêu cầu trình bổ sung thông tin vào tài liệu xác định yêu cầu phát triển mơ hình phân tích
(4)Đặc tả u cầu
• Có thể sử dụng mơ hình/lược đồ sau để mô tả yêu cầu khách hàng
– Use-case diagram (OOM) – Activity diagram (OOM)
– Business Process Model (BPM) – Requirement Model (RM)
(5)Mơ hình hố u cầu
• Vấn đề: Các mô tả yêu cầu giai đoạn xác định yêu cầu:
– Chỉ mô tả thông tin liên quan đến việc thực nghiệp vụ giới thực. – Chưa thể rõ nét việc thực
nghiệp vụ máy tính.
(6)Mơ hình hố u cầu
• Mục tiêu:
– Mơ hình hóa giới thực với u cầu xác định, giải vấn đề trên.
• Kết quả:
– Sơ đồ luồng liệu công việc – Sơ đồ phối hợp cơng việc
• Sơ đồ luồng liệu:
(7)Mơ hình hóa u cầu
• Có hai mức mơ hình hóa:
– Mức quan niệm (giai đoạn phân tích): Mơ tả phát
thảo các thành phần phần mềm.
– Mức logic (giai đoạn thiết kế): Mô tả chi tiết các thành phần phần mềm
• Các loại mơ hình:
(8)Nội dung
• Mơ hình hóa u cầu:
– Lược đồ Use-case
– Khái niệm Actor Usecase – Ví dụ
• Mơ hình hóa dịng liệu Use-case
– Giới thiệu Mơ hình DFD
(9)Mở đầu
• Đặt vấn đề:
– Các mô tả yêu cầu giai đoạn xác định u cầu:
• Chỉ mơ tả chủ yếu thông tin liên quan đến việc thực các nghiệp vụ giới thực, chưa thể rõ nét việc thực hiện các nghiệp vụ trên máy tính
• Mơ tả thơng q văn bản dễ gây nhầm lẫn
(10)Use Case Diagram
• Tập trung vào người sử dụng hệ thống • Đưa vai trị người sử dụng
tương tác với hệ thống
• Đưa dịch vụ (Use Case)
(11)Use Case Diagram
• Ghi nhận chức hệ thống góc nhìn
người sử dụng
• Được xây dựng giai đoạn đầu quy trình CNPM
• Mục tiêu:
– Đặc tả ngữ cảnh 01 hệ thống – Nắm bắt yêu cầu hệ thống
– Xác nhận tính hợp lệ kiến trúc hệ thống
(12)Tên Actor
Khái niệm Actor
Tác nhân BÊN NGOÀI hệ thống
Có tương tác với hệ thống
Có thể trao đổi thơng tin một cách chủ động với hệ thống hoặc nhận thông tin bị động từ hệ thống
Phần mềm
Con người
Phần cứng
(13)Tên Actor
Actor Nhóm người sử dụng
Phần mềm
Con người
Phần mềm khác
Tác nhân BÊN NGOÀI hệ thống
(14)Ví dụ
STT Yêu cầu
1 Tiếp nhận học sinh Lập danh sách lớp Tra cứu học sinh
4 Nhận bảng điểm môn Xem báo cáo tổng kết Thay đổi quy định
Nhóm người dùng
Giáo vụ? Giáo vụ?
Mọi người? Phụ huynh? Học sinh? Giáo viên? Giáo vụ?
Ban giám hiệu?
Ban giám hiệu? Quản trị hệ thống?
Xét phần mềm Quản lý học sinh cấp III
Một nhóm người dùng tương ứng với một Actor
Mỗi Nhóm người dùng (Actor) được quyền sử dụng một hay nhiều
chức hệ thống
Một chức năng có thể cho phép nhiều Nhóm người dùng sử dụng
Nhiều nhóm người dùng có các quyền hạn giống nhau
Nên xét Actor hay nhiều Actor?
(15)Ví dụ
STT Yêu cầu
1 Lập thẻ độc giả Nhận sách Tra cứu sách Lập phiếu mượn Nhận trả sách
6 Thay đổi quy định
Nhóm người dùng
Thủ thư Thủ thư
Thủ thư? Độc giả? Khách bất kỳ? Thủ thư
Thủ thư
Thủ thư? Quản trị hệ thống?
(16)Tên Actor
Actor Phần cứng ngoại vi
Tác nhân BÊN NGOÀI hệ thống
Có tương tác với hệ thống
Phần mềm
Con người
Phần cứng
(17)Ví dụ
• Ví dụ:
– Phần mềm quản lý Siêu thị:
• Đọc thông tin từ thiết bị đọc mã vạch
– Phần mềm quản lý cửa tự động:
• Đọc thơng tin từ camera • Phát lệnh điều khiển mở cửa
– Phần mềm quản lý vào phịng cơng sở
• Đọc tín hiệu từ đầu đọc thẻ từ • Phát lệnh điều khiển mở cửa
– Phần mềm chống trộm
• Đọc tín hiệu từ camera, sensor
Các thiết bị ngoại vi mà phần mềm
cần tương tác
Có cần liệt kê
(18)Tên Actor
Actor Phần mềm khác
Tác nhân BÊN NGỒI hệ thống
Có tương tác với hệ thống
Phần mềm
Con người
Phần cứng
(19)Ví dụ
• Kết xuất/nạp liệu từ Excel
• Kết xuất liệu báo cáo phần mềm gửi email (Microsoft Outlook, Outlook Express…)
• Phần mềm trung gian kết nối để chuyển đổi email từ dạng Web-based sang POP3 (ví dụ Yahoo!Pop)
(20)Nhận diện Actor
Trả lời số câu hỏi như:
• Ai người sử dụng chức hệ thống? • Ai cần hỗ trợ từ hệ thống để thực công việc
thường nhật họ?
• Ai phải thực cơng việc bảo dưỡng, quản trị giữ cho hệ thống hoạt động?
• Hệ thống kiểm sốt thiết bị phần cứng nào?
• Hệ thống xây dựng cần tương tác với hệ thống khác hay không ?
(21)Use-Case
Khái niệm Use-Case
• Một Use-Case là một chuỗi hành động mà hệ thống thực hiện mang lại một kết quan sát đối với actor.
• Có thể hiểu Use-Case một chức năng của hệ thống, mang một ý nghĩa định đối với người dung
(22)Use-Case
Khái niệm Use-Case
• Mỗi use case có thuộc tính sau:
• Action Steps
• Extension Points • Exceptions
(23)Use-Case
Khái niệm Use-Case
•Action Steps:
(24)Khái niệm Use-Case
•Action Steps:
• Chọn chức xem thời khóa biểu
• Hiển thị hình cho phép người dùng chọn thơng tin cần xem gì
• Chọn niên khóa từ danh sách có hệ thống
• Chọn học kỳ từ danh sách có hệ thống • Chọn lớp tên giảng viên cần xem danh
sách lớp giảng viên có hệ thống
(25)Use-Case
Khái niệm Use-Case
•Extension Points:
(26)Khái niệm Use-Case
•Extension Points:
• Nếu người dùng hủy bỏ chức xem thời khóa biểu thì hệ thống quay trở lại hình trước khi
người dùng chọn chức xem thời khóa biểu
• Nếu người dùng chọn xem thời khóa biểu tất cả các lớp thì hiển thị TKB tất lớp lớp
• Người dùng chọn xem thời khóa biểu tất cả giảng viên
• Người dùng in thời khóa biểu lớp • Người dùng in thời khóa biểu giảng
(27)Use-Case
Khái niệm Use-Case
•Exceptions
(28)Khái niệm Use-Case
•Exceptions
• Người dùng chọn lớp chưa có thơng tin, hệ thống báo lỗi yêu cầu người dùng chọn lớp khác
• Người dùng chọn giảng viên chưa có thơng
tin, hệ thống báo lỗi u cầu người dùng
chọn giảng viên khác
• Trình duyệt khơng hiển thị lỗi
javascript, hệ thống báo lỗi yêu cầu
(29)Khái niệm Use-Case
•Exceptions
• Trình duyệt không hiển thị lỗi đường truyền mạng (Request timeout) hệ thống yêu cầu người dùng refresh lại chức năng này
• Trình duyệt khơng hiển thị lỗi kết nối CSDL (Connection) hệ thống yêu cầu người dùng refresh lại chức này
(30)Use-Case
Khái niệm Use-Case
•Pre-Conditions
(31)Use-Case
Khái niệm Use-Case
•Post-Conditions
(32)Ví dụ
STT Yêu cầu
1 Tiếp nhận học sinh Lập danh sách lớp Tra cứu học sinh
4 Nhận bảng điểm môn Xem báo cáo tổng kết Thay đổi quy định
Xét phần mềm Quản lý học sinh cấp III
Có Use-case ví dụ này?
(33)Ví dụ
STT Yêu cầu
1 Tiếp nhận học sinh Lập danh sách lớp Tra cứu học sinh
4 Nhận bảng điểm môn Xem báo cáo tổng kết Thay đổi quy định
Xét phần mềm Quản lý học sinh cấp III
Có Use-case ví dụ này?
(34)Ví dụ
STT Yêu cầu
1 Lập thẻ độc giả Nhận sách Tra cứu học sinh Lập phiếu mượn Nhận trả sách
6 Thay đổi quy định
Xét phần mềm Quản lý thư viện
(35)Ví dụ
STT Yêu cầu
1 Sắp đặt mạch điện Cung cấp nguồn điện Thay đổi thơng số Lưu thí nghiệm Lấy lại thí nghiệm Thay đổi quy định
Phần mềm thí nghiệm mạch điện
(36)Tìm kiếm Use Case
Trả lời số câu hỏi như:
• Actor yêu cầu chức hệ thống?
• Actor cần phải đọc, tạo, xoá, sửa đổi lưu trữ thơng tin hệ thống khơng?
• Actor cần thiết phải cảnh báo kiện hệ thống, hay actor cần phải báo hiệu cho hệ thống vấn đề khơng?
(37)Tìm kiếm Use Case (tt)
Một số câu hỏi khác cần ý:
• Hệ thống cần liệu input/ouput nào? Dữ liệu đến từ đâu?
(38)Sơ đồ Use-case
Rút tiền
Khách hàng Kiểm tra tài khoản Sự tương tác giữa Actor và Use-case
(39)Các loại mối quan hệ
• Phụ thuộc
(40)Tổng quát hóa Actor
Người sử dụng
(41)Quan hệ Use Case
• Use case – Use case
– Dependency: Phụ thuộc
<<use>> Nhap TKB
(42)Quan hệ Use Case
• Use case – Use case
– Generalization: Kế thừa
Xem TKB
Xem TKB Giang vien Xem TKB Sinh vien
(43)Ví dụ minh họa
• Use case diagrams mơ tả hệ thống quản lý thời khóa biểu:
– Actor:
• Giáo vụ khoa • Giảng viên • Sinh viên
– Use case:
(44)Ví dụ minh họa
(45)Tạo Use case diagram Power Designer
• Tạo Use Case Diagram ? • Tạo actor
• Tạo Use case
• Mơ tả thuộc tính cho Use case • Tạo mối quan hệ Use
(46)Ví dụ: Hệ thống ATM
Một khách hàng muốn gửi tiền vào, rút tiền ra hoặc đơn giản kiểm tra lại số tiền tài khoản anh ta qua máy tự động rút tiền (ATM) Khi đưa tiền vào hoặc rút tiền ra, cần phải ghi giấy kết chuyển dịch đã thực trao tờ giấy cho khách hàng.
Quan sát chức thành phần tham gia, ta thấy có hai tác nhân dễ nhận là khách hàng và ATM Qua đó, nhận dạng Use Case sau: • Gửi tiền vào.
• Rút tiền ra.
• Kiểm tra mức tiền tài khoản
(47)(48)Mô tả hoạt động rút tiền từ ATM
1 Use-Case bắt đầu khách hàng đưa thẻ tín dụng vào Hệ thống đọc và kiểm tra thông tin của thẻ.
2 Hệ thống nhắc nhập số PIN Hệ thống kiểm tra số PIN.
3 Hệ thống hỏi tác vụ nào khách hàng muốn thực hiện Khách hàng chọn “Rút tiền”.
4 Hệ thống hỏi số lượng Khách hàng nhập số lượng. 5 Hệ thống yêu cầu nhập kiểu tài khoản Khách hàng
chọn “Tài khoản thẻ”.
6 Hệ thống liên lạc với ATM network .
(49)Ví dụ đặc tả phần mềm
Mơ tả qui trình xử lý nhập học trong ứng dụng quản lý sinh viên ?
• Đối tượng, phận, phòng ban tham gia vào quy trình ?
– Sinh viên
– Phịng đào tạo – Văn phịng khoa
– Phịng tài (nếu cần)
• Thực cơng việc ?
(50)Ví dụ đặc tả phần mềm
• Dùng
BPM
(51)Ví dụ đặc tả phần mềm
• Dùng BPM
để mơ tả
(52)Ví dụ đặc tả phần mềm
(53)Các thành phần sơ đồ BPM
• Organization Unit • Process
• Resource • Decision
• Flow/Resource Flow
CSDL QLSV :
Tiep nhan TKB
Kiem tra hop le
TKB lop Xep TKB
CSDL TKB
(54)Sơ đồ luồng liệu (DFD)
• Các ký hiệu
Tác nhân/thiết bị (Người sử dụng,
thiết bị phát sinh hay tiếp nhận liệu) Khối xử lý
Luồng liệu (thông tin)
(55)Các cấp sơ đồ
• Các cấp sơ đồ
– Cấp 0: Toàn phần mềm khối xử lý – Cấp 1: Sơ đồ cấp phân rã thành
nhiều sơ đồ cấp 1, sơ đồ cấp phải đảm bảo thể đầy đủ ý nghĩa sơ đồ cấp (tác nhân, thiết bị, luồng liệu, xử lý,
nhớ phụ)
(56)Ví dụ: sơ đồ cấp 0
Bang Bao Cao Hop Dong
Ket Qua Yeu Cau Yeu Cau Lap Dat
Yeu Cau Vat Tu Cap Yeu Cau Vat Tu Tong Dai
Thong Tin Thi Truong
Quan Ly Lap Dat Thue Bao
+
Khach Hang
Bo Phan Nghien Cuu
Thi Truong
(57)Tinh Trang Yeu Cau Khach Hang
[Yeu Cau Lap Dat] [Ket Qua Yeu Cau]
[Thong Tin Thi Truong]
[Hop Dong]
[Bang Bao Cao]
[Yeu Cau Vat Tu Tong Dai] [Yeu Cau Vat Tu Cap] Cac Yeu Cau Co The Dap Ung
Bang Tai Nguyen
Bang Ke Hoac h Yeu Cau Mo Rong
Thong tin Yeu Cau chua duoc dap ung
Bang Tai Nguyen
Thong Tin Tong Dai va Tuyen Cap Thong Tin Thue Bao Thong Tin Cap _ Thue Bao Du Lieu Yeu Cau
Du Lieu Yeu Cau
Bo Phan Nghien Cuu Thi Truong Khach Hang 1.1 Xu Ly Yeu
Cau + 1.3 Lap Dat Thue Bao + 1.4 Lap Ke Hoach + 1.5 Lap Dat He
Thong va Quan Ly
Mang
+
1.2 Xu Ly Yeu
Cau Mo Rong CSDL Yeu Cau Khach Hang
(58)Sơ đồ tổng quát
Người dùng
Thiết bị nhập Xử lý … Thiết bị xuất
D1 D2
D3 D4
D5
D6
Ý nghĩa dòng liệu D1:………. D2:………. D3:………. D4:………. D5:………. D6:……….
Thuật toán xử lý:
-Bước 1:………
-Bước 2:………
-Bước 3:………
-………
Dữ liệu nhập
Dữ liệu xuất
(59)Sơ đồ tổng quát cho Yêu cầu lưu trữ
• D1: Thơng tin cần lưu trữ (dựa vào biểu mẫu liên quan)
• D5: Thơng tin cần lưu trữ (chỉ có số yêu cầu đặc biệt)
• D3:
– Các danh mục để chọn lựa
– Dữ liệu cần thiết cho việc kiểm tra tính hợp lệ (dựa vào quy định)
• D2:
– Các danh mục để chọn lựa – Kết thành cơng/thất bại
• D4: Dữ liệu lưu trữ (dựa vào biểu mẫu)
– Ghi chú: Thông thường
Người dùng
Thiết bị nhập Xử lý LT Thiết bị xuất
D1 D2
D3 D4
D5
(60)Sơ đồ tổng quát cho Yêu cầu lưu trữ
• Xử lý lưu trữ
– Đọc D3 để lấy tham số, quy định danh mục
– Hiển thị D2 (các danh mục)
– Nhận thông tin D1, D5 (nếu cần)
– Kiểm tra thơng tin D1, D5 có thỏa quy định liên quan hay không (dựa vào D3 cần thiết)
– Nếu thỏa quy định, ghi D4,
thông báo kết D2 (nếu cần) xuất D6 (nếu cần thiết)
Người dùng
Thiết bị nhập Xử lý LT Thiết bị xuất
D1 D2
D3 D4
D5
(61)Sơ đồ tổng quát cho Yêu cầu lưu trữ
• Ghi chú:
– D1 khơng thiết chứa tồn thơng tin biểu mẫu liên quan
– Tùy theo quy định có hay khơng có D5
– D4 hoặc D6 không thiết phải trùng với D1 hoặc D5
– D2 không thiết phải trùng với D3
Người dùng
Thiết bị nhập Xử lý LT Thiết bị xuất
D1 D2
D3 D4
D5
(62)Sơ đồ tổng quát cho Yêu cầu tra cứu
• D1: Thơng tin đối tượng muốn tìm kiếm (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm)
• D5: Thơng tin đối tượng muốn tìm kiếm (chỉ có số u cầu đặc biệt)
• D3:
– Các danh mục để chọn lựa
– Dữ liệu đối tượng tìm thấy (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm)
• D2:
– Các danh mục để chọn lựa
– Dữ liệu đối tượng tìm thấy (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm)
• D6: Dữ liệu kết xuất (thông thường cần thiết)
• D4: Dữ liệu cần lưu trữ lại
– Thông thường không cần thiết – Cần thiết nào???
Người dùng
Thiết bị nhập Xử lý TC Thiết bị xuất
D1 D2
D3 D4
D5
(63)Sơ đồ tổng quát cho Yêu cầu tra cứu
• Xử lý tra cứu
– Đọc để lấy danh mục (D3)
– Hiển thị D2 (các danh mục)
– Nhận thơng tin tiêu chí tìm kiếm D1, D5 (nếu cần)
– Tìm kiếm theo tiêu chí D1, D5, nhận được danh sách các đối tượng tìm (D3)
– Hiển thị thông tin kết (D2) và kết xuất D6 (nếu cần)
Người dùng
Thiết bị nhập Xử lý TC Thiết bị xuất
D1 D2
D3 D4
D5
(64)Sơ đồ tổng quát cho Yêu cầu tra cứu
• Ghi chú:
– Có nhiều mức độ khác từ rất đơn giản đến phức tạp để xác định D1
– D1 chức nhiều thơng tin việc tìm kiếm dễ dàng cho người dùng và ngược lại khó khăn cho phần thiết kế cài đặt chức này
– D3 thông thường danh sách các đối tượng tìm thấy với thơng tin liên quan.
– D3 cũng có nhiều mức độ khác nhau để xác định thơng tin của đối tượng tìm thấy
– D2 và D6 thường trùng với D3
(nhưng không thiết)
Người dùng
Thiết bị nhập Xử lý TC Thiết bị xuất
D1 D2
D3 D4
D5
(65)Sơ đồ tổng qt cho u cầu tính tốn
• D1: Thông tin đối tượng cần thực việc xử lý tính tốn (dựa vào biểu mẫu liên quan)
• D5: Thơng tin đối tượng cần thực việc xử lý tính tốn (chỉ có số yêu cầu đặc biệt)
• D3:
– Dữ liệu cần thiết cho việc xử lý tính toán (dựa vào biểu mẫu quy định liên quan)
– Các tham số tính tốn
• D4: Kết xử lý tính tốn
• D2: Kết xử lý tính tốn (thường gồm D3 D4)
• D6: Dữ liệu kết xuất (thường gồm
Người dùng
Thiết bị nhập Xử lý TT Thiết bị xuất
D1 D2
D3 D4
D5
(66)Sơ đồ tổng qt cho u cầu tính tốn
• Xử lý tính tốn
– Nhận thơng tin D1, D5 (nếu cần)
– Đọc D3 để lấy liệu cần thiết cho việc tính tốn (kể cả các tham số)
– Sử dụng D1, D3, D5 và quy định liên quan để tính kết quả
D4
– Ghi kết D4
– Hiển thị thông tin kết quả D2
và kết xuất D6
Người dùng
Thiết bị nhập Xử lý TT Thiết bị xuất
D1 D2
D3 D4
D5
(67)Sơ đồ tổng quát cho u cầu tính tốn
• Ghi chú:
– D1 thường có chứa yếu tố thời gian thực xử lý tính tốn – Có nhiều mức độ khác nhau
xác định D1 trong xử lý tính tốn (để tăng tính tiện dụng)
– D1 có thể rỗng (tính tốn cho mọi đối tượng tất cột mốc thời gian liên quan)
– D4 có thể có hay khơng có => Khi cần D4?
– Thông thường D2 và D6 bao gồm D3 và D4
Người dùng
Thiết bị nhập Xử lý TT Thiết bị xuất
D1 D2
D3 D4
D5
(68)Sơ đồ tổng qt cho u cầu báo biểu
• D1: Thơng tin báo biểu muốn thực (dựa vào biểu mẫu liên quan)
• D5: Thơng tin báo biểu muốn thực (chỉ có số yêu cầu đặc biệt)
• D3: Dữ liệu cần thiết cho việc tưực báo biểu (dựa vào biểu mẫu quy định liên quan)
• D4: Thơng tin có báo biểu liên quan (cần thiết phải lưu lại) chưa xử lý ghi nhận lại (u cầu xử lý tính tốn)
• D2: Thơng tin báo biểu lập (biểu mẫu liên quan)
• D6: Dữ liệu kết xuất (thường giống D2)
Người dùng
Thiết bị nhập Xử lý BB Thiết bị xuất
D1 D2
D3 D4
D5
(69)Sơ đồ tổng quát cho Yêu cầu báo biểu
• Xử lý báo biểu
– Nhận thông tin D1, D5 (nếu cần)
– Đọc D3 để lấy liệu cần thiết cho việc lập báo biểu
– Nếu có D4 thì tính tốn theo quy định và Ghi kết D4
– Hiển thị thông tin báo biểu D2
và kết xuất D6
Người dùng
Thiết bị nhập Xử lý BB Thiết bị xuất
D1 D2
D3 D4
D5
(70)Sơ đồ tổng quát cho Yêu cầu báo biểu
• Ghi chú:
– D1 thường có chứa yếu tố thời gian báo biểu
– Có nhiều mức độ khác nhau xác định D1 trong xử lý tính tốn (để tăng tính tiện dụng)
– D4 có thể có hay khơng có => Khi cần D4?
– Thông thường D2 và D6 bao gồm D3 và D4
Người dùng
Thiết bị nhập Xử lý BB Thiết bị xuất
D1 D2
D3 D4
D5
(71)Ví dụ 1
• Xét chức tính đạo hàm đơn thức
1 Phân tích
Sơ đồ luồng liệu
Người dùng
Xử lý tính đạo hàm
D1 D2
D1: Đơn thức cần tính đạo hàm P
D2: Đơn thức kết Q
Thuật toán xử lý
(72)Ví dụ 1
2 Thiết kế
Mô tả chi tiết cách thức giao diện
Khởi động giá trị ban đầu
Kiểm tra P hợp lệ nhập giá trị cho P
Tính Q Xuất Q
(0)
(73)Ví dụ 1
2 Thiết kế
Mô tả chi tiết kiểu liệu: Sử dụng kiểu cấu
trúc DON_THUC với hai thành phần:
– Hệ số có kiểu số thực
– Số mũ có kiểu số ngun (khơng âm)
Mơ tả chi tiết hàm xử lý
– Hàm xử lý biến cố 1
– Hàm kiểm tra hệ số, Hàm kiểm tra số mũ – Hàm nhập đơn thức
(74)Ví dụ 1
3 Lập trình
‘Khai báo kiểu cấu trúc (VB6)
Private Type DON_THUC Heso as Single
Somu as Integer End type
‘Khai báo biến
Dim P as DON_THUC
Dim Q as DON_THUC
‘Khai báo kiểu cấu trúc (VB.NET)
Structure DON_THUC
(75)Ví dụ 1 3 Lập trình
‘Hàm xử lý biến cố tính đạo hàm hình
Private sub cmdDaoham_Click()
if Kiem_Tra_He_So() and Kiem_Tra_So_Mu() then
Nhap()
DaoHam() Xuat()
(76)Ví dụ 2
• Xét chức giải bất phương trình bậc nhất có dạng
ax + b ≥ 0, với a ≠ 0
(77)Ví dụ 2
• Sơ đồ luồng liệu
D1: Các hệ a, b bất phương trình
D2: Nghiệm bất phương trình thuộc hai dạng sau:
Dạng 1: (-∞, x0], Dạng 2: [x0, +∞)
Người dùng
Giải bất phương trình
D1 D2
Xử lý:
Nhập kiểm tra D1 (a ≠ 0) Tính D2 theo qui tắc:
a>0: nghiệm thuộc dạng 2
(78)Ví dụ 3
• Xét chức giải phương trình bậc hai: ax² + bx + c = 0, với a ≠ 0
(79)Ví dụ 3 • Sơ đồ luồng liệu
D1: Các hệ a, b, c tam thức bậc 2
P(x) = ax² + bx + c
D2: Nghiệm phương trình P(x) = 0 thuộc ba loại sau:
Vô nghiệm
Nghiệm kép x1 = x2
Hai nghiệm phân biệt x1 x2
Người dùng
Giải phương Trình bậc 2
(80)Ví dụ 3
2a
b
Xử lý:
Nhập kiểm tra D1 (a ≠ 0) Tính D2 theo các bước:
Δ = b² - 4ac
Nếu Δ < : nghiệm loại
Nếu Δ = : nghiệm loại 2, với x1=x2=-b/2a Nếu Δ > : nghiệm loại 3, với x1 =
x2 =
Xuất D2
2a b a b Người dùng Giải phương Trình bậc 2
(81)Ví dụ 4
(82)Ví dụ 4
Người dùng, Thủ thư
Thiết bị nhập Lập thẻđộc giả Máy in
D1 D6
D3 D4
(83)Ví dụ 4
• Giải thích:
– D1: Thơng tin thẻ độc giả: Họ tên, Loại độc giả, Ngày sinh, Địa chỉ, E-Mail, Ngày Lập Thẻ.
– D2: Không có
– D3: Danh sách loại độc giả, Tuổi tối thiểu, Tuổi tối đa, Thời hạn sử dụng.
(84)Ví dụ 4
• Thuật toán:
– Bước 01: Kết nối liệu
– Bước 02: Đọc D3 từ nhớ phụ – Bước 03: Nhận D1 từ người dùng
– Bước 04: Kiểm tra “Loại độc giả” có thuộc “danh sách các loại độc giả” hay không?
– Bước 05: Tính tuổi độc giả.
(85)Ví dụ 4
• Thuật tốn:
– Bước 08: Nếu khơng thỏa tất qui định trên tới bước 12
– Bước 09: Tính ngày hết hạn thẻ. – Bước 10: Lưu D4 xuống nhớ phụ – Bước 11: Xuất D5 máy in
(86)Sơ đồ tổng quát cho Yêu cầu lưu trữ
• D1: Thơng tin cần lưu trữ (dựa vào biểu mẫu liên quan)
• D5: Thơng tin cần lưu trữ (chỉ có một số yêu cầu đặc biệt)
• D3:
– Các danh mục để chọn lựa
– Dữ liệu cần thiết cho việc kiểm tra tính hợp lệ (dựa vào quy định)
• D2:
– Các danh mục để chọn lựa – Kết thành cơng/thất bại
• D4: Dữ liệu lưu trữ (dựa vào biểu mẫu) – Ghi chú: Thông thường
D4 = D1 (+ D5) (+ ID tự phát sinh)
• D6: Dữ liệu kết xuất (chỉ có số yêu cầu đặc biệt)
Người dùng
Thiết bị nhập Xử lý LT Thiết bị xuất
D1 D2
D3 D4
D5
(87)Sơ đồ tổng quát cho Yêu cầu lưu trữ
• Xử lý lưu trữ
– Đọc D3 để lấy tham số, quy định danh mục
– Hiển thị D2 (các danh mục)
– Nhận thông tin D1, D5 (nếu cần) – Kiểm tra thông tin D1, D5 có
thỏa quy định liên quan hay khơng (dựa vào D3 cần thiết)
– Nếu thỏa quy định, ghi D4, thông
Người dùng
Thiết bị nhập Xử lý LT Thiết bị xuất
D1 D2
D3 D4
D5
(88)Sơ đồ tổng quát cho Yêu cầu lưu trữ
• Ghi chú:
– D1 khơng thiết chứa tồn bộ thơng tin biểu mẫu liên quan
– Tùy theo quy định có hay khơng có D5
– D4 hoặc D6 khơng thiết phải trùng với D1 hoặc D5
– D2 không thiết phải trùng với D3
Người dùng
Thiết bị nhập Xử lý LT Thiết bị xuất
D1 D2
D3 D4
D5
(89)Sơ đồ tổng quát cho Yêu cầu tra cứu
• D1: Thơng tin đối tượng muốn tìm kiếm (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm)
• D5: Thơng tin đối tượng muốn tìm kiếm (chỉ có số u cầu đặc biệt)
• D3:
– Các danh mục để chọn lựa
– Dữ liệu đối tượng tìm thấy (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm)
• D2:
– Các danh mục để chọn lựa
– Dữ liệu đối tượng tìm thấy (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm)
• D6: Dữ liệu kết xuất (thơng thường cần thiết)
Người dùng
Thiết bị nhập Xử lý TC Thiết bị xuất
D1 D2
D3 D4
D5
(90)Sơ đồ tổng quát cho Yêu cầu tra cứu
• Xử lý tra cứu
– Đọc để lấy danh mục
(D3)
– Hiển thị D2 (các danh mục) – Nhận thơng tin tiêu chí
tìm kiếm D1, D5 (nếu cần)
– Tìm kiếm theo tiêu chí
D1, D5, nhận được danh
sách đối tượng tìm được (D3)
– Hiển thị thơng tin kết quả (D2) và kết xuất D6 (nếu cần)
Người dùng
Thiết bị nhập Xử lý TC Thiết bị xuất
D1 D2
D3 D4
D5
(91)Sơ đồ tổng quát cho Yêu cầu tra cứu
• Ghi chú:
– Có nhiều mức độ khác từ đơn giản đến phức tạp để xác định D1
– D1 chứa nhiều thơng tin việc tìm kiếm dễ dàng cho người dùng ngược lại khó khăn cho phần thiết kế cài đặt chức
– D3 thông thường danh sách đối tượng tìm thấy với thơng tin liên quan
– D3 có nhiều mức độ khác để xác định thông tin đối tượng tìm thấy
Người dùng
Thiết bị nhập Xử lý TC Thiết bị xuất
D1 D2
D3 D4
D5
(92)Sơ đồ tổng qt cho u cầu tính tốn
• D1: Thông tin đối tượng cần thực việc xử lý tính tốn (dựa vào các biểu mẫu liên quan)
• D5: Thơng tin đối tượng cần thực việc xử lý tính tốn (chỉ có số yêu cầu đặc biệt)
• D3:
– Dữ liệu cần thiết cho việc xử lý tính tốn (dựa vào biểu mẫu quy định liên quan)
– Các tham số tính tốn
• D4: Kết xử lý tính tốn
• D2: Kết xử lý tính tốn (thường gồm
D3 D4)
• D6: Dữ liệu kết xuất (thường gồm D3 D4)
Người dùng
Thiết bị nhập Xử lý TT Thiết bị xuất
D1 D2
D3 D4
D5
(93)Sơ đồ tổng qt cho u cầu tính tốn
• Xử lý tính tốn
– Nhận thơng tin D1, D5 (nếu cần)
– Đọc D3 để lấy liệu cần thiết cho việc tính tốn (kể cả các tham số)
– Sử dụng D1, D3, D5 và quy định liên quan để tính kết quả
D4
– Ghi kết D4
Người dùng
Thiết bị nhập Xử lý TT Thiết bị xuất
D1 D2
D3 D4
D5
(94)Sơ đồ tổng quát cho Yêu cầu tính tốn
• Ghi chú:
– D1 thường có chứa yếu tố thời gian thực xử lý tính tốn
– Có nhiều mức độ khác xác định D1 trong xử lý tính tốn (để tăng tính tiện dụng)
– D1 có thể rỗng (tính tốn cho mọi đối tượng tất cột mốc thời gian liên quan)
– D4 có thể có hay khơng có => Khi cần D4?
– Thông thường D2 và D6 bao gồm
D3 và D4
Người dùng
Thiết bị nhập Xử lý TT Thiết bị xuất
D1 D2
D3 D4
D5
(95)Sơ đồ tổng qt cho u cầu báo biểu
• D1: Thơng tin báo biểu muốn thực hiện (dựa vào biểu mẫu liên quan)
• D5: Thơng tin báo biểu muốn thực hiện (chỉ có số yêu cầu đặc biệt)
• D3: Dữ liệu cần thiết cho việc thực báo biểu (dựa vào biểu mẫu quy định liên quan)
• D4: Thơng tin có báo biểu liên quan (cần thiết phải lưu lại) chưa xử lý ghi nhận lại (u cầu xử lý tính tốn)
• D2: Thơng tin báo biểu lập (biểu mẫu liên quan)
Người dùng
Thiết bị nhập Xử lý BB Thiết bị xuất
D1 D2
D3 D4
D5
(96)Sơ đồ tổng quát cho Yêu cầu báo biểu
• Xử lý báo biểu
– Nhận thông tin D1, D5 (nếu cần)
– Đọc D3 để lấy liệu cần thiết cho việc lập báo biểu
– Nếu có D4 thì tính tốn theo quy định và Ghi kết D4
– Hiển thị thông tin báo biểu D2
và kết xuất D6
Người dùng
Thiết bị nhập Xử lý BB Thiết bị xuất
D1 D2
D3 D4
D5
(97)Sơ đồ tổng quát cho Yêu cầu báo biểu
• Ghi chú:
– D1 thường có chứa yếu tố thời gian báo biểu
– Có nhiều mức độ khác nhau xác định D1 trong xử lý tính tốn (để tăng tính tiện dụng)
– D4 có thể có hay khơng có => Khi cần D4?
– Thông thường D2 và D6 bao gồm D3 và D4
Người dùng
Thiết bị nhập Xử lý BB Thiết bị xuất
D1 D2
D3 D4
D5
(98)Bài tập
1 Xét phần mềm quản lý học sinh với nghiệp vụ tiếp nhận hồ sơ học sinh
(99)Bài tập
(100)Bài tập
(101)Bài tập
(102)Bài tập
• Đặc tả yêu cầu xây dựng Use case diagram cho ứng dụng sau:
– Quản lý giải bóng đá vơ địch quốc gia
– Quản lý bình chọn hát hay Làn sóng xanh – Quản lý giáo vụ trường đại học
– Quản lý giáo vụ trường phổ thông – Quản lý bán hàng
– Quản lý học viên trung tâm tin học, ngoại ngữ – Quản lý nhân -tiền lương
– Quản lý bán hàng trực tuyến – Quản lý nhà trẻ
(103)References
Bài giảng tham khảo:
• Slide giảng “Nhập môn Công nghệ Phần mềm”, Trần Ngọc Bảo, ĐH Sư phạm TpHCM.
• Slide giảng “Xây dựng phần mềm hướng đối
tượng”, Trần Minh Triết, ĐH KHTN TpHCM.
• Giáo trình “Nhập mơn Cơng nghệ Phần mềm”,
(104)(105)