Đang tải... (xem toàn văn)
Secondary Actor(s) Actor phụ tương tác với hệ thống tại thời điểm use case thực thi Trigger Các hành động kích hoạt use case. Main Scenario Step Action[r]
(1)Chương 2
(2)Yêu cầu hệ thống
Những chức mà hệ thống phải thực hiện.
Những đặc tính mong muốn của người dùng hệ
thống.
Những phát biểu đề xuất hệ thống mà tất
(3)Tiến trình phân tích u cầu tốn
Tìm hiểu, khám phá phân tích yêu cầu của người
dùng hệ thống.
Xây dựng tài liệu yêu cầu
Kiểm tra tính hợp lệ yêu cầu Quản lý yêu cầu
(4)Mục tiêu phân tích u cầu
u cầu thường khơng nêu cách rõ ràng, don
người phát triển hệ thống cần phải làm việc với khách hàng
và bên liên quan để khai thác:
• Các dịch vụ mà hệ thống cần cung cấp
(5)Mục tiêu phân tích yêu cầu
Mục tiêu:
• Đảm bảo yêu cầu sản phẩm phần mềm định nghĩa hiểu cách rõ ràng
• Thiết lập trì thỏa thuận yêu cầu với bên liên quan • Đảm bảo tất yêu cầu đáp ứng
• Tài liệu phân tích u cầu dùng để kiểm soát sở cho việc phát triển phần mềm sử dụng quản lý dự án
• Phát giải mâu thuẫn yêu cầu
(6)Các loại tài liệu phân tích yêu cầu
Xác định yêu cầu người dùng (URD – User requirement
definition)
• Xác định người dùng cần cho công việc họ
(7)Các loại tài liệu phân tích yêu cầu
Đặc tả yêu cầu phần mềm (SRS – Software requirement
specification)
• Một tập hợp yêu cầu phần mềm: đầy đủ, quán xác từ quan điểm nhà phát triển
(8)Các loại yêu cầu
Chức - Functional Giao diện - Interface
Dữ liệu - Data
Nguồn nhân lực - Human engineering Chất lượng - Qualification
Nghiệp vụ - Operational
(9)Yêu cầu chức - Functional requirements
Mô tả tương tác hệ thống mơi trường nó
Mô tả cách ứng xử hệ thống với hành vi kích hoạt
người dùng
• Có thể sử dụng mơ hình - kết hợp ký hiệu đồ họa cấu trúc ngôn ngữ tự nhiên
(10)Yêu cầu phi chức - NonFunctional requirements
Mô tả hạn chế hệ thống làm hạn chế lựa chọn
và từ đưa giải pháp cho vấn đề xác định
Các yêu cầu phi chức không mô hình hóa =>
(11)Tính hợp lệ yêu cầu
Đánh giá u cầu - Requirements Review
• Phân tích thủ cơng có hệ thống u cầu
• Tham gia nhà phát triển, khách hang, bên tham gia
Prototyping
• Sử dụng mơ hình thực thi hệ thống để kiểm tra yêu cầu
Model Validation
(12)Quản lý yêu cầu thay đổi
Yêu cầu thay đổi (CR – Change request)
• Các yêu cầu từ quan điểm khác thay đổi trình phát triển • Khách hàng xác định yêu cầu từ góc độ kinh doanh mâu
thuẫn với yêu cầu người dùng cuối
• Môi trường kinh doanh kỹ thuật hệ thống thay đổi trình phát triển hệ thống
(13)Thuật ngữ - Glossary
Khái niệm:
• Một tập hợp thuật ngữ định nghĩa làm sở cho giao tiếp • Một từ điển để thực mơ hình hóa
Mục đích:
• Làm rõ ý nghĩa từ ngữ có hiểu biết chung điều khoản thành viên nhóm
(14)Thuật ngữ - Glossary
(15)Nội dung tài liệu xác định yêu cầu hệ thống
1 Mục đích 2 Phạm vi
3 Tổng quan hệ thống 4 Tài liệu tham khảo
5 Xác định điều khoản, thuật ngữ chuyên môn 6 Yêu cầu chức năng
(16)Bài tập
Viết đặc tả yêu cầu cho hệ thống bán hàng siêu
(17)(18)Use case diagram
Mô tả trực quan chức cung cấp hệ thống Một Use Case thể hành động tương tác riêng biệt
giữa người dùng (human or machine) hệ thống.
Use case diagram chứa thành phần:
• Use cases
• Actors
(19)Use case diagram
Use case
• Một use case đại diện cho chức hoàn chỉnh, bao gồm chuỗi hoạt động khác mà hệ thống thực cách tương tác với actor bên ngồi hệ thống
• Các yếu tố use case
(20)Use case diagram
Use Cases
• Mô tả nắm bắt yêu cầu chức hệ thống
• Một use case đại diện cho chuỗi hành vi tương tác hệ thống actor bên
Ký hiệu use case trong UML
• Có dạng hình oval • Tên use case
• Sử dụng động từ
• Biểu diễn hành vi tương tác Actor hệ thống
(21)Use case diagram
Actor:
• Là thực thể tương tác với hệ thống, actor người dùng, ứng dụng bên trong, hệ thống bên hệ thống xây dựng
Loại Actor:
• Primary Actor: Actor trực tiếp kích hoạt giao tiếp actor hệ thống Thông thường người sử dụng
(22)Use case diagram
Ký hiệu Actor UML
• Tên actor danh từ • Primary Actor
• Secondary actor
<<Actor>>
Ví dụ
Ví dụ
(23)Các mối quan hệ use case diagram
Quan hệ Actors use cases: Association
• Actor tham gia tương tác với hệ thống mô tả use case • Nếu quan hệ association có hướng:
• Xác định hướng tương tác actor • Xác định luồng điều khiển (not data flow)
(24)Các mối quan hệ use case diagram
Quan hệ Actor Actor:
• Được sử dụng để xác định vai trò trùng lắp Actor
• Ví dụ:
• Người Administrator Client thực tất thao tác User
(25)Các mối quan hệ use case diagram
Quan hệ Use case với use case • Include
• Extend
(26)Các mối quan hệ use case diagram
Include: hành vi included use case là thành phần
base use case
• Hành vi base use case khơng hồn thành khơng có included
use case.
(27)Các mối quan hệ use case diagram
Ví dụ: để thực hành vi Xem điểm thì bắt buộc phải thực
hiện hành vi Đăng nhập
(28)Các mối quan hệ use case diagram
Extend: extending use case phụ thuộc vào base use case.
(29)Các mối quan hệ use case diagram
Ví dụ: sau Đăng ký học phần thì sinh viên Xem lịch
học (hành vi Xem lịch học là tùy chọn)
(30)Các mối quan hệ use case diagram
Generalization: được sử dụng có hai nhiều use case
có hành vi, cấu trúc mục đích
Specialized use cases có hành vi, yêu cầu, ràng buộc • Những thành phần chung mô tả lần general use
case
• Những thành phần khác mơ tả specialized use case
(31)Các mối quan hệ use case diagram
Ví dụ: hành vi Thanh toán, khách hàng thực
hiện theo nhiều cách khác nhau
Khachhang
Thanh toán
Thanh toán
bằng thẻ Thanh toán dịch
Thanh toán thẻ
(32)Cách xác định actor
Để xác định đầy đủ actor hệ thống Có thể dựa vào
câu hỏi sau:
• Ai sử dụng hệ thống? • Ai cài đặt hệ thống?
• Ai khởi động hệ thống? • Ai trì hệ thống?
• Ai tắt hệ thống?
(33)Cách xác định use case
Dựa kịch hoạt động bên ngồi nhìn
thấy, đo lường kết giá trị mà actor mong muốn
Từ mô tả yêu cầu chức hệ thống.
Tìm động từ mô tả hành vi tương tác hệ thống
(34)Cách xác định use case
Có thể dùng câu hỏi sau
• Những chức mà actor mong muốn từ hệ thống?
• Hệ thống lưu trữ thơng tin gì? Các actor thực thao tác thơng tin này?
(35)Câu hỏi
Xác định Primary actors Secondary actors hệ thống ATM
• Khách hàng • Chủ thẻ VISA
• Nhân viên ngân hàng
• Hệ thống thơng tin ngân hàng (Bank IS) • Hệ thống chứng thực thẻ VISA (VISA AS)
Xác định use case hệ thống ATM Vẽ sơ đồ use case hệ thống ATM
(36)Đặc tả Use-Case
Một use case đại diện cho hành vi tương tác hồn chỉnh,
nó bao gồm chuỗi hoạt động giao tiếp actor hệ thống
Đặc tả use case nhằm mô tả chi tiết chuỗi hoạt động để
(37)Đặc tả Use-Case
Mỗi use case gắn liền với kịch bao gồm chuỗi
tuần tự kiện:
• Basic flow: luồng kiện thành cơng
• Alternative flows: Có nhiều luồng kiện
(38)Mẫu nội dung đặc tả Use-Case
UCID Mã UC (Duy hệ thống, ví dụ: UC1) Name Tên use case (cụm danh động từ ngắn gọn) Summary Mô tả vắn tắt hoạt động use case
Preconditions Điều kiện tiên để thực use case
Postconditions Điều sau use case thực thi thành cơng Primary Actor(s) Actor thực use case
Secondary Actor(s) Actor phụ tương tác với hệ thống thời điểm use case thực thi Trigger Các hành động kích hoạt use case
Main Scenario Step Action
Step # Đây "kịch thành công chính"
… Mơ tả bước use case thực thành công
(39)Bài tập
Hãy viết đăc tả use case hệ thống ATM
(40)(41)Sơ đồ activity
Một sơ đồ hoạt động (activity) dùng để mơ hình hóa cách
trực quan bước thực use case
Các hoạt động mơ hình thực
hoặc đồng thời
Một sơ đồ hoạt động ln có điểm khởi đầu điểm
(42)Các ký hiệu sơ đồ Activity
Điểm bắt đầu (Initial State):
• Biểu diễn điểm khởi đầu cho sơ đồ hoạt động Đối với sơ đồ hoạt động sử dụng swimlanes, phải đảm bảo điểm bắt đầu đặt góc bên trái cột
(43)Các ký hiệu sơ đồ Activity
Hoạt động (Activity)
• Hoạt động hành vi đại diện điều phối dòng chảy hành động • Hoạt động (activity) chứa nút là:
• Hoạt động (action) • Đối tượng (object) • Điều khiển (Control)
• Hành động nút là:
• Chức số học • Lời gọi hành vi
Activity
(44)Các ký hiệu sơ đồ Activity
Luồng hoạt động
• Minh họa trình chuyển đổi từ trạng thái hoạt động sang trạng thái hoạt động khác
• Ký hiệu UML
(45)Các ký hiệu sơ đồ Activity
Nút định
• Khi hoạt động địi hỏi phải có định trước chuyển sang hoạt động
• Một nút định có đầu vào nhiều đầu ra, Các nhánh phải dán nhãn với biểu thức điều kiện
• Ký hiệu UML
(46)Các ký hiệu sơ đồ Activity
Nút Merge
• Sự kết hợp luồng kiện Các đầu vào khơng đồng • Nhiều đầu vào có đầu
(47)Các ký hiệu sơ đồ Activity
Đồng hóa (Synchronization)
• Nút fork được sử dụng để chia luồng đến đơn thành nhiều luồng đồng thời
• Ký hiệu UML
(48)Các ký hiệu sơ đồ Activity
• Fork và Join được sử dụng gọi đồng hóa
Activity
Activity Activity
Fork
(49)Các ký hiệu sơ đồ Activity
Nút kết thúc (Final State End Point)
• Nút kết thúc hoạt động cho thấy hoạt động hồn tất • Một sơ đồ hoạt động có nhiều nút kết thúc
(50)Các dạng Activity
Activity Partition (swimlane)
• Đại diện cho số thuộc tính vị trí mà hành vi thực
(51)Các dạng Activity
(52)Bài tập
Sử dụng sơ đồ Activity mơ hình hóa hoạt động use
case rút tiền hệ thống ATM.
Sử dụng sơ đồ Activity mơ hình hóa hoạt động use case
(53)(54)Sơ đồ - Sequence diagram
Sơ đồ sử dụng giai đoạn phân tích
thiết kế
Trong giai đoạn phân tích yêu cầu toán, sơ đồ
được sử dụng để mô tả luồng kiện theo thời gian cấu trúc các hoạt động thực use case.
Sơ đồ biểu diễn chi tiết quan hệ giao tiếp đối
(55)Sơ đồ - Sequence diagram
Sơ đồ hoạt động
trong phân tích u cầu tốn
• Sơ đồ hoạt động mơ tả chuỗi hoạt động theo cấu trúc điều kiện, vòng lặp đồng thời để thực thi use case
(56)Các thành phần sơ đồ tuần tự
Lifeline yếu tố đặt tên đại diện cho cá nhân
(57)Các thành phần sơ đồ tuần tự
Đối tượng tham gia (Participant): đối tượng thực hành
động sơ đồ trình tự.
• Ký hiệu UML
(58)Các thành phần sơ đồ tuần tự
Lifeline: biểu diễn thời gian sống đối tượng sơ đồ
tuần tự,
• Kích hoạt (Activation): biểu diễn thời gian đối tượng trạng thái hoạt động
• Kết thúc đối tượng (Destroying): đối tượng kết thúc sau hoàn tất hoạt động
• Ký hiệu UML Oject:Class :Class
Activation
(59)Các thành phần sơ đồ tuần tự
Thông điệp (Messages): biểu diễn giao tiếp đối
tượng
• Thơng điệp khơng đồng bộ: gửi từ đối tượng không chờ thông điệp trả từ đối tượng nhận trước tiếp tục
(60)Các thành phần sơ đồ tuần tự
• Thơng điệp đồng bộ: đối tượng gửi thông điệp chờ đến thông điệp xử lý trước tiếp tục
(61)Các thành phần sơ đồ tuần tự
Return Message
• Thơng điệp trả kết cho đối tượng gửi • Ký hiệu UML
(62)Các thành phần sơ đồ tuần tự
Self Message
• Một gọi đệ quy hoạt động, phương thức gọi phương thức khác đối tượng
(63)Các thành phần sơ đồ tuần tự
Thời gian sống đối tượng
• Một đối tượng bắt đầu lệnh create kết thúc Delete • Creation: biểu diễn mũi tên với nhãn 'new‘
• Một đối tượng tạo sau bắt đầu kịch xuất thấp đối tượng khác
(64)Hoạt động tương tác sơ đồ tuần tự
Frame: hộp biểu diễn phần
sơ đồ để thể lựa chọn hoặc lặp
hộp xung quanh phần biểu đồ
trình tự để biết lựa chọn loop • if -> (opt) [condition]
• if/else -> (alt) [condition], separated by horizon Dashed line
(65)Hoạt động tương tác sơ đồ tuần tự
Alt
(66)Hoạt động tương tác sơ đồ tuần tự
Option
• Đại diện cho lựa chọn hành vi mà hai (duy nhất) toán hạng xảy khơng có xảy
(67)Hoạt động tương tác sơ đồ tuần tự
Loop
(68)Hoạt động tương tác sơ đồ tuần tự