Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 41 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
41
Dung lượng
1,28 MB
Nội dung
Bộ môn Hệ thống thông tin Trường Đại Học Công Nghiệp TP.HCM Khoa Công Nghệ Thông Tin CASE STUDY 1: HỆ THỐNG MÁY RÚT TIỀN TỰ ĐỘNG 1.1 Mục tiêu case study Từ mô tả hệ thống, yêu cầu chức năng, sinh viên phải xác định Các Actor hệ thống ATM Các use case hệ thống Vẽ sơ đồ use case Đặc tả use case Mơ hình hóa đặc tả use case sơ đồ activity Tổ chức use cases 1.2 Mô tả hệ thống yêu cầu chức Hệ thống máy rút tiền tự động (ATM) có đầu đọc thẻ từ cho đọc thẻ ATM, giao diện điều khiển (bàn phím hình) để tương tác với khách hàng, máy in để in hóa đơn khách hàng Hệ thống ủy quyền Visa (VISA AS) cho phép giao dịch rút tiền thực cách sử dụng thẻ thông minh Visa Hệ thống thông tin ngân hàng (Bank IS) cho phép tất giao dịch thực khách hàng sử dụng thẻ thơng minh ngân hàng hay, truy cập vào số dư tài khoản Máy ATM phục vụ khách hàng có thẻ ATM thời điểm Một khách hàng yêu cầu để chèn thẻ ATM nhập mã số cá nhân (PIN), thẻ ATM Mã PIN gửi đến ngân hàng để xác nhận Sau đó, khách hàng thực nhiều giao dịch Các thẻ giữ lại máy khách hàng khơng giao dịch nữa, máy ATM trả lại thẻ cho khách hàng Khách hàng sử dụng thẻ ATM VISA Máy ATM phải có khả cung cấp dịch vụ sau cho khách hàng: Một khách hàng phải thực rút số tiền mặt nhỏ số tiền từ tài khoản liên quan đến thẻ, bội số 50000 Một khách hàng phải có khả thực khoản tiền gửi tài khoản liên quan đến thẻ, khách hàng nhập số tiền gửi vào máy ATM, thông tin số tiền gửi xác nhận từ ngân hàng Một khách hàng phải có khả thực chuyển tiền hai tài khoản liên kết đến thẻ Một khách hàng phải có khả kiểm tra số dư tài khoản liên quan đến thẻ Khách hàng hủy bỏ giao dịch cách nhấn phím Cancel Nếu ngân hàng xác định mã PIN khách hàng không hợp lệ, khách hàng yêu cầu nhập lại mã PIN Nếu khách hàng nhập sai mã PIN ba lần, thẻ giữ lại máy, khách hàng phải liên hệ với ngân hàng để nhận lại thẻ Máy ATM phải cung cấp cho khách hàng hóa đơn giao dịch thành công, gồm thông tin ngày tháng, thời gian, vị trí máy, loại giao dịch, số tài khoản, số tiền giao dịch số dư Thông tin khách hàng chủ thẻ lưu trữ hệ thống gồm Mã khách hàng, họ tên, địa chỉ, khách hàng có nhiều tài khoản, tài khoản thuộc khách hàng Một số PIN kết hợp với thẻ để xác minh tính xác thực người sử dụng 1.3 Yêu cầu sinh viên Xác định actors actor phụ hệ thống ATM Ví dụ: Khách hàng ngân hàng, chủ thẻ VISA Xác định use case Ví dụ: rút tiền, kiểm tra tài khoản Vẽ sơ đồ use case Từ use case actor xác định câu 2, vẽ sơ đồ use case cách: Xác định mối quan hệ use case Xác định mối quan hệ use case actor Xác định mối quan hệ actor actor Ví dụ: Đặc tả use case vẽ Activity biểu diễn đặc tả use case Ứng với use case, sinh viên mô tả văn bước thực use case Có thể đặc tả theo cấu trúc sau: Mơ tả tóm tắt: bao gồm tên use case, tóm tắt hoạt động use case, ngày tạo ngày cập nhật, phiên bản, Actor thực use case Luồng kiện: Mô tả kịch thành công Mơ tả luồng thay lỗi Điều kiện tiên hậu điều kiện Yêu cầu giao diện người dùng (tùy chọn) Yêu cầu phi chức (tùy chọn) Các yếu tố: tính sẵn có, độ xác, tính tồn vẹn, bảo mật, hiệu suất, đồng thời, vv Ví dụ: Đặc tả use case Rút tiền thẻ VISA I Mơ tả tóm tắt Tên use case: Rút tiền thẻ Visa Tóm tắt hoạt động use case: use case cho phép chủ thẻ Visa (Visa card holder), khách hàng ngân hàng (Bank customer), rút tiền hạn mức cho phép Actors: Chủ thẻ VISA (Visa CardHolder- actor chính), Hệ thống chứng thực (Visa AS – actor phụ) II Dòng kiện Điều kiện tiên quyết: Hộp tiền mặt ATM đầy Khơng có thẻ đầu đọc Actor System Chủ thẻ Visa chèn thẻ VISA Hệ thống ATM kiển tra thẻ Visa vào máy ATM Hệ thống ATM yêu cầu chủ thẻ Visa nhập số PIN Chủ thẻ Visa nhập số PIN Hệ thống ATM kiểm tra số PIN Hệ thống ATM yêu cầu xác nhận từ hệ thống chứng thực VISA Hệ thống chứng thực VISA Hệ thống ATM yêu cầu chủ thẻ Visa nhập số xác nhận hiển thị số dư tiền cần rút Chủ thẻ Visa số tiền cần rút 10 Hệ thống ATM kiểm tra số tiền cần rút có nằm giới hạn số tiền rút hàng ngày không? 11 Hệ thống ATM yêu cầu chủ thẻ Visa xác nhận có cần in biên nhận khơng? 12 Chủ thẻ Visa yêu cầu biên nhận 13 Hệ thống ATM xuất tiển trả thẻ Visa cho chủ thẻ 14 Chủ thẻ Visa nhận tiền thẻ 15 Hệ thống ATM in biên nhận 16 Chủ thẻ nhận biên nhận Luồng kiện thay A1: Số PIN không đúng, luồng A1 bắt đầu bước luồng kiện Hệ thống ATM thơng báo cho chủ thẻ số PIN sai cho lần thứ hai Hệ thống ATM ghi lại thất bại thẻ thông minh Quay lại bước A2: Số tiền yêu cầu lớn giới hạn, luồng A2 bắt đầu bước 10 luồng kiện 11 Hệ thống ATM thơng báo cho chủ thẻ số tiền yêu cầu lớn mức giới hạn số tiền phép rút hàng ngày Quay lại bước A3: Chủ thẻ khơng nhận hóa đơn, luồng A3 bắt đầu bước 11 luồng kiện 12 Chủ thẻ Visa từ chối biên nhận 13 Hệ thống ATM trả thẻ 14 Chủ thẻ Visa nhận lại thẻ 15 Hệ thống ATM xuất tiền 16 Các chủ thẻ Visa nhận tiền mặt Hậu điều kiện (postconditions) Tủ tiền máy ATM giảm số tiền với số tiền chủ thể rút III Yêu cầu phi chức Thời gian đáp ứng: Hệ thống phải trả lời thời hạn tối đa giây Một giao dịch phải phút Tính đồng thời: không áp dụng (chỉ giao dịch thời điểm) Tính sẵn sàng: hệ thống ATM truy cập 24 / Khi hết giấy in biên lai, chủ thẻ rút tiền Tính tồn vẹn: Giao diện máy ATM phải chắn để tránh phá hoại Bảo mật: tỉ lệ thất bại kiểm tra mã PIN thẻ ATM tối đa 10-6 Activity biểu diễn use case Rút tiền thẻ VISA Sinh viên đặc tả use case vẽ activity lại Mơ hình hóa đặc tả use case sơ đồ mức hệ thống (System sequence diagram) 5.1 Vẽ sơ đồ mức hệ thống để biểu diễn đặc tả use case 5.2 Mở rộng sơ đồ mức hệ thống bổ sung mô tả kịch VD minh họa cho yêu cầu 5.1: sơ đồ mức hệ thống biểu diễn đặc tả use case rút tiền thẻ VISA Sinh viên thực biểu diễn cho đặc tả use case lại hệ thống VD minh họa cho yêu cầu 5.2 Mở rộng hệ thống sơ đồ mô tả kịch use case Rút tiền thẻ visa Ứng Với use case, viết đặc tả use case, vẽ activity, sequence diagram mức phân tích, xác định lớp liên quan đến hành vi use case, vẽ sơ đồ lớp mức thiết kế Hướng dẫn: Viết đặc tả chi tiết mơ tả usecase Duy Trì Danh Mục Khóa Học (maintain catalogue) Title: Maintain catalogue Type: detailed essential Summary: người quản lý đào tạo có trách nhiệm liên tục cập nhật danh mục khóa học đào tạo Phần lớn thay đổi từ quan đào tạo Actors: người phụ trách đào tạo Tiền điều kiện o Người quản lý đào tạo phải login vào hệ thống Luồng kiện Use case bắt đầu phận đào tạo thông báo cho người quản lý đào tạo thay đổi liên quan đến danh mục khóa học Người quản lý đào tạo nhập khóa học vào danh mục, hiệu chỉnh khóa học có hủy khóa học Khi tạo sửa đổi khóa học đào tạo, quản lý đào tạo thay đổi học ký dự kiến khóa học Hệ thống cảnh báo người dùng kết nối với Internet báo cho người dùng biết danh mục khóa học cũ Khi loại bỏ khóa học đào tạo từ danh mục, hệ thống quản lý đào tạo hiển thị danh sách người ghi danh khóa học bị hủy, học viên khóa học hủy bỏ Nếu cần thiết, người quản lý tạo nhóm khóa học theo chủ đề Người quản lý đào tạo xác nhận hiệu chỉnh Hệ thống thông báo cho người học thông qua mạng nội biết phiên danh mục khóa học Luồng kiện thay o A1 Thông tin chưa đầy đủ, luồng A1 bắt đầu mục kịch thành cơng Khi thơng tin liên quan đến khóa đào tạo khơng đầy đủ (ví dụ, thiếu ngày khai giảng khóa học), khóa đào tạo nhập vào danh mục khơng thể ghi danh vào Các mơ tả phải sửa đổi hồn thành giai đoạn sau Các kịch tiếp tục điểm Yêu cầu phi chức (Constraints) Tính đồng thời: Tính sẵn sàng: danh mục truy cập thơng qua mạng nội bộ, từ thứ Hai đến Thứ Sáu Dựa vào hướng dẫn trên, sinh viên viết đặc tả cho use case lại Hướng dẫn : Xây dựng sơ đồ activity training process Nhắc lại phát biểu toán Quá trình đào tạo khởi tạo người quản lý đào tạo nhận yêu cầu đào tạo đại diện học viên Yêu cầu chấp nhận từ chối người quản lý đào tạo Trong trường hợp đồng ý, người quản lý đào tạo tìm danh mục khóa học mở khóa đào tạo phú hợp với yêu cầu thơng báo cho học viên nội dung khóa học danh sách học kỳ Khi học viên gửi lại lựa chọn mình, người quản lý đào tạo ghi tên học viên phiên giao dịch với quan đào tạo có liên quan Nếu có yêu cầu hủy khóa học, học viên phải thông báo cho người quản lý đào tạo thời gian sớm để hủy khóa học Dùng sơ đồ mức hệ thống biểu diễn hoạt động Điều khiển luồng thông điệp Luồng điều khiển đồng nghĩa đối tượng chuyển phải chờ đợi phản hồi từ người nhận thông điệp Luồng điều khiển không đồng bộ, đối tượng phát không chờ phản ứng đối tượng nhận tiếp tục cơng việc mà không liên quan đến việc nhận thông điệp từ hai sơ đồ trình tự, xây dựng phiên hoàn chỉnh sơ đồ trạng thái biểu diễn training process Sinh viên thực sơ đồ lại Xây dựng sơ đồ ngữ cảnh tĩnh (class diagram) hệ thống để quản lý yêu cầu đào tạo Trong phần xác định đối tượng tham gia vào trình đào tạo Giai đoạn giải toán theo quan điểm tĩnh (static view) tìm thực thể (business entities) Bằng cách phân tích từ vựng văn mơ tả tốn, phát đối tượng ứng viên ví dụ chuyện viên biết lĩnh vực kinh doanh (business domain) Mơ hình hóa yêu cầu chức thứ Phân tích ngữ nghĩa chi tiết câu case study Quá trình đào tạo khởi tạo người quản lý đào tạo nhận yêu cầu đào tạo học viên đại diện Phân tích danh từ cụm danh từ ta đối tượng sau: Quá trình đào tạo, Quản lý đào tạo, Yêu cầu đào tạo, Nhân viên Xét ứng cử viên: Quá trình đào tạo xác định q trình kinh doanh: không xuất sơ đồ lớp Quản lý đào tạo nhân viên xác định nhân viên kinh doanh Yêu cầu đào tạo: người quản lý đào tạo tiếp nhận đơn yêu cầu đào tạo Vẽ sơ đổ lớp cho mô tả trên: Mơ hình hóa u cầu chức thứ Người phụ trách xem xét yêu cầu đào tạo, chấp nhận yêu cầu chuyển sang phận đào tạo, ngược lại, không chấp nhận người quản lý gửi thơng báo đến người có liên quan Từ phân tích danh từ cụm danh từ, ta có đối tượng sau: yêu cầu, người phụ trách, chấp nhận, từ chối, người có liên quan Người phụ trách: đề cập đến nhân viên đưa yêu cầu đào tạo Từ sở hữu: "anh / cô ấy" Có thể chuyển theo hai cách: kết hợp (association) thuộc tính (attribute) o Association: Chọn kết hợp hai người chiếm hữu sở hữu khái niệm o Attribute: Chọn thuộc tính sở hữu thuộc tính đơn giản người sở hữu Chấp nhận từ chối chuyên biệt hóa thực thể yêu cầu đào tạo Yêu cầu người phụ trách, chấp nhận từ chối Giả sử học viên đưa nhiều yêu cầu thời điểm Xét mối quan hệ yêu cầu đào tạo đáp ứng: Một đáp ứng liên kết với có yêu cầu; Một yêu cầu tồn mà khơng có đáp ứng (nghĩa khơng chấp nhận) Vẽ sơ đổ lớp cho mô tả trên: Mơ hình hóa u cầu thứ Trong trường hợp yêu cầu đào tạo chấp nhận, người phụ trách tìm danh mục khóa học đăng khóa đào tạo phù hợp với yêu cầu Phân tích danh từ cụm danh từ phần đặc tả bao gồm: chấp nhận, người phụ trách, danh mục, khóa đào tạo, yêu cầu Danh mục container tạo từ khóa đào tạo; hai thành phần làm phát sinh: thuộc tính hành vi Danh mục khóa đào tạo (catalogue of training courses) thường thực thể đơn, có mối quan hệ kết hợp multiplicity “0 *” Động từ: cẩn thận, động từ thường tương ứng với hành động thực thực thể cung cấp thơng tin động, sử dụng sơ đồ tương tác Tính từ: đại diện cho hai thuộc tính thực thể xác định, khả mối quan hệ tổng quát hóa, khóa đào tạo đăng ký đào tạo Phân từ tại: mối liên hệ hai thực thể Ví dụ, "một khóa học đào tạo tương ứng với yêu cầu" thể việc tạo mối liên hệ trình đào tạo yêu cầu đào tạo Từ đồng nghĩa thường sử dụng để tránh lặp lại, khóa học khóa đào tạo (course and training course) ví dụ tốt điều Các chuyên viên phải loại từ đồng nghĩa "giảm" chúng cách chọn tên thực thể Và chọn khóa học Vẽ sơ đổ lớp cho mô tả Mơ hình hóa u cầu thứ Người quản lý thơng báo cho người học nội dung khóa học danh sách học kỳ Phân tích danh từ cụm danh từ ta xác định thực thể: học viên (employee), Khóa học (course), nội dung (content), danh sách (list), học kỳ (session.) Vẽ sơ đổ lớp cho mô tả trên: Mơ hình hóa u cầu thứ Khi học viên gửi lại lựa chọn mình, người quản lý đào tạo ghi danh người học phiên giao dịch với phận đào tạo Từ phân tích ngữ nghĩa danh từ cụm danh từ ta khái niệm: học viên, lựa chọn, quản lý đào tạo, ghi danh, phận đào tạo Các khái niệm học viên, phận đào tạo phân tích u cầu trước Khơng có mơ hình hành vi sơ đồ lớp, u cầu mơ hình hóa sơ đồ tuẩn tự Dùng sơ đồ biểu diễn yêu cầu thứ Mơ hình hóa u cầu thứ Người quản lý đào tạo sau kiểm tra hóa đơn mà phận đào tạo gửi trước chuyển tiếp cho nhân viên kế tốn Từ phân tích ngơn ngữ ta có thực thể ứng cử viên: quản lý đào tạo, sau đó, hóa đơn, quan đào tạo, nhân viên kế toán Quản lý đào tạo phận đào tạo xác định trước Nhân viên kế toán nhân viên kinh doanh Khoảng thời gian: sử dụng cho mơ hình động Trong yêu cầu 6, "sau kiểm tra " đánh dấu dấu hiệu chuỗi thời gian thơng báo u cầu Mặc định hóa đơn có liên quan đến ghi danh Vẽ sơ đổ lớp cho mô tả trên: Tổng hợp sơ đồ lớp thành phần Từ sơ đồ thành phần mơ hình hóa yêu cầu chức năng, vẽ sơ đồ tổng hợp từ sơ đồ thành phần Từ mơ hình tổng hợp, tổ chức lớp vào packages với package đại diện cho phận đào tạo Gợi ý: đảm bảo giảm phụ thuộc package, tăng kết dính lớp package Danh mục khóa học độc lập tạo thành pagkage để tái sử dụng Hóa đơn, nhân viên kế tốn, tạo thành package dịch vụ, phụ thuộc vào package yêu cầu đào tạo Vẽ sơ đồ lớp chi tiết package B THIẾT KẾ HỆ THỐNG Tinh chỉnh mơ hình chuẩn bị cho giai đoạn thiết kế: Phân tích use case; xác định kiến trúc hệ thống (với layers partitions); xác định hoạt động hệ thống; sử dụng sơ đồ tương tác để mô tả tương tác đối tượng phần mềm làm để phân phối hoạt động; sử dụng sterotype , classes;; Giao trách nhiệm cho đối tượng vào sơ đồ lớp thiết kế ; Các yếu tố liên quan đến Layered architecture, package System sequence diagram Boundary, control, and entity objects Object, link, visibility Class diagrams Component diagram (mở rộng) Deployment diagram (mở rộng) Bước Tinh chỉnh Sơ đồ use cases hệ thống Với packages business classes Đề xuất thành phần dự án Bước - Xác định cấu trúc hệ thống Sử dụng Kiến trúc ba lớp Mơ hình hóa hệ thống theo kiến trúc lớp, sinh viên chọn kiến trúc khác Từ sơ đồ xây dựng trên, xác định hành vi mà đối tượng hệ thống phải thực hiện, bổ sung hành vi cho lớp tương ứng, tinh chỉnh mối quan hệ lớp (loại mối quan hệ lượng số tham gia) Ví dụ Sừ dụng ký hiệu sterotype , sơ đồ tương tác, hoàn chỉnh sơ sơ đồ mức thiết kế Nhắc lại mẫu sơ đồ Ví dụ: