Bài giảng Chương 3: Xác định yêu cầu - Vũ Chí Cường thông tin đến người học về xác định yêu cầu nghiệp vụ, xác định yêu cầu hệ thống. Mời các bạn cùng tham khảo bài giảng để nắm chi tiết hơn nội dung kiến thức.
Trang 1Vũ Chí Cường – 2017
Trang 2 Giới thiệu
Xác định yêu cầu nghiệp vụ
Xác định yêu cầu hệ thống
Trang 3 Mục đích của pha xác định yêu cầu:
Giải thích tình huống nghiệp vụ cho sự cần thiết phải phát triển dự án
trong tổ chức hay doanh nghiệp
Mô tả chính xác các yêu cầu của hệ thống dự
định phát triển
triển, các công nghệ cần thiết
Trang 4 Các khái niệm
Yêu cầu (requirement) là những phát biểu
về những gì mà hệ thống phải làm hay đặc trưng mà hệ thống phải có
▪ Yêu cầu nghiệp vụ (business requirement) hay yêu cầu người sử dụng (user requirement) là các mô tả theo quan điểm người dùng
▪ Yêu cầu hệ thống (system requirement) mô tả theo quan điểm người phát triển
Trang 5 Các khái niệm
▪ Yêu cầu chức năng (functional requirement) liên quan trực tiếp đến tiến trình mà hệ thống cần
phải xử lý hay thông tin mà hệ thống cần lưu trữ
▪ Yêu cầu phi chức năng (nonfunctional
requirement) liên quan đến các tính chất của
Trang 6 Sản phẩm
Là một báo cáo bằng văn bản cùng với một số biểu
đồ trong UML để mô tả các yêu cầu chức năng và phi chức năng
Đối tượng tham gia
Chuyên gia phân tích
Đại diện của tổ chức người sử dụng
Các kỹ thuật sử dụng
Tự động hóa tiến trình nghiệp vụ
Cải tiến tiến trình nghiệp vụ
Kỹ nghệ lặp tiến trình nghiệp vụ
Phỏng vấn, lập phiếu điều tra, quan sát, phân tích tài liệu,
Trang 7 Xác định yêu cầu nghiệp vụ
1 Xác định và mô tả các tác nhân
2 Xây dựng bảng thuật ngữ
3 Xác định và mô tả các ca sử dụng
4 Xây dựng kịch bản
5 Xây dựng biểu đồ hoạt động (Tùy chọn)
6 Xây dựng biểu đồ giao tiếp (Tùy chọn)
Trang 81 Xác định và mô tả các tác nhân
2 Xây dựng bảng thuật ngữ
3 Xác định và mô tả các ca sử dụng
4 Xây dựng kịch bản
5 Xây dựng biểu đồ hoạt động (Tùy chọn)
6 Xây dựng biểu đồ giao tiếp (Tùy chọn)
Trang 9 Một tác nhân (actor) là một người hay một đối
tượng giữ vai trò nào đó trong nghiệp vụ
Một tác nhân có thể đóng các vai trò khác nhau trong những thời điểm khác nhau
Ví dụ:
Một nhân viên thư viện có thể là bạn đọc
Một nhân viên của Công ty cho thuê xe có thể là
khách hàng
Các câu hỏi thường dùng:
Ai là người sẽ dùng hệ thống này để nhập thông tin?
Ai là người sẽ dùng hệ thống này để nhận thông tin?
Các hệ thống nào tương tác với hệ thống này?
Trang 10 ATM – Automated Teller Machine
Hệ thống phần mềm được thiết kế
để phục vụ một khách hàng tại
một thời điểm
Khách hàng đút một thẻ ATM và nhập số định dang cá nhân (PIN – Personal Identification Number)
Cả 2 thông tin được gửi đến ngân hàng để xác minh tính hợp lệ
Khách hàng có thể thực hiện một hoặc nhiều giao dịch
Thẻ được giữ lại trong máy cho đến khi khách hàng không muốn giao dịch nữa Khi đó thẻ ATM sẽ được trả ra
Trang 11 Máy ATM có thể thực hiện các giao dịch
Khách hàng có khả năng rút tiền mặt từ tài khoản phù hợp được kết nối với thẻ ATM Mỗi lần tối đa 20USD Sự chấp
thuận phải được lấy từ ngân hàng trước khi trả tiền
Khách hàng có khả năng thực hiện gửi một khoản tiền vào tài khoản
Khách hàng có khả năng chuyển tiền giữa 2 tài khoản có liên quan đến thẻ
Khách hàng có khả năng thực hiện việc kiểm tra số dư
Khách hàng có khả năng hủy bỏ giao dịch đang tiến hành bằng cách nhấn
phím Hủy thay vì trả lời theo yêu cầu của máy
Trang 12 Máy ATM phải gửi thông tin từng
giao dịch đến ngân hàng với nhận
được sự xác minh cho phép của ngân hàng
nhắn thứ 2 gửi cho ngân hàng báo khách hàng đã gửi tiền
khách hàng không hợp lệ, khách
hàng phải nhập lại PIN Nếu sau 3 lần không thành công, thẻ ATM sẽ bị giữ lại
máy ATM sẽ giải thích sự cố và hỏi xem khách hàng có muốn thực hiện giao dịch khác hay không
Trang 13 Máy ATM cung cấp một giấy biên nhận sau mỗi giao dịch thành công, trong đó có
thông tin ngày, giờ, vị trí
máy, số tiền, tài khoản,…
Trang 14 Máy ATM có bộ phận điều khiển cho phép cán bộ vận hành có thể khởi động hoặc tạm ngừng phục vụ
Khi chuyển sang vị trí “ON”, cán
bộ vận hành phải xác minh và nhập số tiền có trong máy
Máy chỉ có thể tắt khi không
phục vụ khách hàng
Khi chuyển sang vị trí “OFF”,
máy sẽ tắt và cán bộ vận hành
có thể lấy phong bì tiền gửi,
nạp thêm tiền mặt, biên lai
Trang 15 Máy ATM sẽ duy trì nhật ký nội bộ các giao dịch
Giao dịch đăng nhập không lưu trữ mã PIN
Các tin nhắn đều được gửi đến ngân hàng
Trang 16 Bảng thuật ngữ (Glossary) đóng vai trò quan trọng cho việc xác định chính
xác các yêu cầu khách hàng
Bảng thuật ngữ làm sáng tỏ các thuật ngữ
sử dụng cho một miền nào đó để mọi
người hiểu được các sản phẩm trong quá trình phát triển phần m ềm
Mỗi dòng trong Bảng thuật ngữ định nghĩa một thuật ngữ và nó có thể ngắn hoặc dài tùy theo các trường hợp
Trang 17 Các mối quan hệ cần quan tâm
Tác nhân nghiệp vụ (business actor)
Đối tượng nghiệp vụ (business object)
Tác nhân hệ thống (syste actor)
Đối tượng hệ thống (system object)
Đối tượng phân tích (analysis object)
Sản phẩn triển khai (deployment artifact)
Đối tượng thiết kế (design object)
Đỉnh thiết kế (design node)
Cụm thiết kế (design layer)
Gói thiết kế (design package)
Trang 18TT Tiếng Anh Tiếng Việt Giải thích
Trang 19 Mỗi ca sử dụng là một phần nhỏ của nghiệp vụ
thành các ca sử dụng Phải dựa vào kinh nghiệm, tư duy logic và cảm nhận chung về nghiệp vụ
khách hàng hay người sử dụng
gì?
Trang 21 Mô tả chi tiết ca sử dụng để hiểu được hoạt động
nghiệp vụ hiện thời mà người sử dụng đang tiến
hành
Ví dụ: use case Đăng ký khóa học
▪ Nếu đúng, SV đề nghị Danh sách các môn học muốn đăng ký
▪ Nếu các yêu cầu đối với các khóa học được thỏa mãn, SV được ghi danh vào các lớp học
▪ Nếu không, Hệ thống thông báo SV chưa đủ điều kiện học môn học
▪ Nếu sai, Hệ thống yêu cầu SV nhập lại tài khoản và mật khẩu truy cập
Trang 22 Giao dịch rút tiền (Withdrawal transaction)
để rút từ một danh mục các tài khoản có thể và nhập số tiền cần rút
yêu cầu trước khi gửi giao dịch đến ngân hàng (Nếu
không, khách hàng sẽ được thông báo và yêu cầu nhập một số tiền khác.)
được máy rút ra trước khi xuất hóa đơn
phím CANCEL bất kỳ lúc nào trước khi nhập số tiền
Trang 23 Biểu đồ giao tiếp thể hiện chi tiết của một use case bằng một loạt các tương tác theo thứ tự xảy ra giữa các tác nhân và hệ thống và các đối tượng bên
trong hệ thống
Chú ý:
với chuỗi các bước trong mô tả chi tiết use case (mỗi
tương tác biểu diễn một cách khái quát về một hoặc nhiều bước)
biểu diễn bằng một mũi tên nhỏ, vẽ dọc theo đường kết nối giữa hai đối tượng nhằm chỉ rõ bên gửi biết bên nhận để
có thể gửi thông điệp
Trang 25 Biểu đồ hoạt động để chỉ ra sự phụ thuộc giữa các hoạt động khi chuyển từ điểm bắt đầu tới một điểm kết thúc của một
tiến trình
ứng với từng bước trong mô tả chi tiết của use case
khác nhau
(đỉnh) là các hoạt động và các cung là các dịch chuyển
Hoạt động (activity)
Chuyển dịch (Transition)
Nút khởi đầu (start)
Nút kết thúc (end)
Các điều kiện chuyển dịch hoạt động (transition condition)
Thanh đồng bộ hóa (synchronization bars)
Trang 28 Các tác nhân ở đây bao gồm con người
hay các hệ thống bên ngoài có tương tác trực tiếp với hệ thống sẽ xây dựng chứ
không bao gồm cả các tác nhân gián tiếp như trong giai đoạn xác định yêu cầu
nghiệp vụ
Các tác nhân trong hệ thống thường có một mối quan hệ nào quan hệ này sẽ giúp cung cấp cách nhìn tổng quát về hệ thống
Trang 29 Khách hàng (Customer)
Cán bộ điều hành (Operator)
Ngân hàng (Bank)
Trang 31 Biểu đồ use case dùng để chỉ ra những
quan hệ của tác nhân với các tình huống
sử dụng cụ thể và quan hệ (relationship) giữa các tình huống (use case) với nhau
Quan hệ giữa các tình huống sử dụng
Đặc biệt hóa (Specialize)
Bao hàm (Include)
Mở rộng (Extend)
Có một sự khác biệt cơ bản giữa bao hàm
và mở rộng
Trang 33 Chi tiết hóa tình huống sử dụng trong mô hình hệ thống được gọi là kịch bản (scenario) gồm nhiều thông tin liên quan đến quá trình hiện thực hóa hệ thống sau này
phần:
khi thực hiện use case
hiện xong use case
Trang 34 Sắp xếp thứ tự các ca sử dụng có nghĩa là gắn cho mỗi ca sử dụng một điểm số và được dùng trong việc lập kế hoạch phát triển và tăng dần
trong tương lai
Một kỹ thuật sắp xếp ưu tiên thông dụng là dùng các màu đèn giao thông
mức độ ưu tiên màu xanh phải được cài đặt trong giai đoạn hiện tại
mức độ ưu tiên màu vàng không bắt buộc phải được cài đặt trong giai đoạn hiện tại và chỉ được cài đặt khi các ca sử dụng màu xanh đã hoàn thành
mức độ ưu tiên màu đỏ không được cài đặt trong giai đoạn hiện tại
Trang 35 Giao diện người dùng của hệ thống có thể giúp ta hiểu rõ ràng hơn các ca sử dụng
Giúp xác định và phân rã các chức năng
từ đó có thể cài đặt theo sở thích cá nhân