• 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: (-∞, x
0],
Dạng 2: [x
0,
+∞)
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)