Đang tải... (xem toàn văn)
bằng cách chọn học phần muốn xem, hệ thống hiển thị thông tin chi tiết của học học phần được chọn, bao gồm: học phần tiên quyết, số tín chỉ, danh sách các lớp học phần, ứng với mỗi lớp, [r]
(1)Khoa Công Nghệ Thông Tin
-BỘ MÔN HỆ THỐNG THÔNG TIN Bài tập thực hành
(2)Module (3t) Xác định u cầu chức hệ thống - mơ hình hóa yêu cầu
chức sơ đồ use case
Module (6t) Viết đặc tả use case – mơ hình hóa Activity 10
Module (6t) Phân tích cấu trúc hệ thống - Mơ hình hóa Domain 14
Module (6t) Thiết kế hệ thống - Sử dụng sơ đồ Sequence – Hiệu chỉnh sơ đồ Domain thành sơ đồ Class 19
Module (3t) Thiết kế thành phần hệ thống 25
Module (3t) Thiết kế hệ thống theo kiến trúc 29
(3)Module (3t) Xác định yêu cầu chức hệ thống - mơ hình hóa u cầu chức sơ đồ use case
A) Mục tiêu:
Từ đặc tả yêu cầu khách hàng, sinh viên xác định yêu cầu chức hệ thống
Sử dụng sơ đồ use case để mơ hình hóa u cầu chức xác định
B) Tóm tắt Kiến thức
Các thành phần sơ đồ use case
− Actor: tác nhân tương tác với hệ thống, actor người hệ thống khác tương tác với hệ thống phát triển
+ Actor chính: tác nhân kích hoạt tương tác với hệ thống
+ Actor phụ: tác nhân tương tác với hệ thống, hỗ trợ actor đạt được mục tiêu
− Use case: danh sách hành động bước kiện xác định tương tác actor hệ thống để đạt mục tiêu xác định
− Mối quan hệ:
+ Quan hệ Actor use case: quan hệ kết hợp (association), xác định chức mà actor thực hệ thống
* Một Actor phải liên kết với use case.hoặc nhiều use case.
* Nhiều Actor liên kết với use case
+ Quan hệ use case use case:
* <<include>>: hành vi use case included phần hành vi use case base, quan hệ <<include>> là bắt buộc
(4)quan hệ định cách thức thời điểm hành vi xác định
extention use case chèn vào hành vi xác định
base use case
* <<generalization>>: use case (child) kế thừa cấu trúc, hành vi mối quan hệ use case khác (parent)
+ Quan hệ actor actor:
* <<generalization>>: quan hệ tổng quát hóa actor, actor kế thừa vai trị actor khác
C) BÀI TẬP
Case study Xây dựng hệ thống đăng ký học phần trực tuyến
Việc đăng ký học phần trường đại học ABC thực tay Sinh viên đến trường điền vào biểu mẫu gồm thơng tin cá nhân chọn khóa học họ sau nộp lại biểu mẫu cho nhà đăng ký Thư ký sau nhập lựa chọn vào sở liệu quy trình thực để tạo lịch học cho sinh viên Quá trình đăng ký từ đến hai tuần để hoàn thành Trường đại học định xây dựng hệ thống Đăng ký học phần trực tuyến Hệ thống giúp giảng viên xem lớp học mà họ dạy, sinh viên chọn học phần để đăng ký trực tuyến hồn tất q trình đăng ký khoảng thời gian ngắn
Hệ thống đăng ký học phần trực tuyến đặc tả sau:
(5)bằng cách chọn học phần muốn xem, hệ thống hiển thị thông tin chi tiết học học phần chọn, bao gồm: học phần tiên quyết, số tín chỉ, danh sách lớp học phần, ứng với lớp, hệ thống hiển thị thông tin ngày, học, Giảng viên phụ trách, để giúp sinh viên đưa định chọn học phần để đăng ký
− Ngoài ra, sinh viên phải chọn hai học phần thay trường hợp học phần bị hủy
− Một lớp học phần tối thiểu 10 sinh viên, tối đa 20 sinh viên, hết thời gian đăng ký mà lớp học phần 10 sinh viên lớp học phần bị hủy, sinh viên lớp bị hủy phải chuyển sang học phần thay − Hệ thống hiển thị lớp chưa đủ sỉ số
− Sau sinh viên hồn tất q trình đăng ký học phần Hệ thống đăng ký học phần gửi thơng tin đến Hệ thống tốn, sinh viên thực tốn nhận hóa đơn tốn học phí sau sinh viên xem lịch học kọc phần vừa đăng ký
− Các giảng viên truy cập vào hệ thống để xem danh sách lớp mà họ giảng dạy, xem danh sách sinh viên lớp họ phụ trách Cuối học kỳ, giảng viên đăng nhập vào hệ thống để nhập điểm cho lớp mà họ phụ trách Thông tin giảng viên bao gồm: Mã giảng viên, học tên, ngày sinh, địa
− Sinh viên đăng nhập vào hệ thống để xem điểm vào cuối học kỳ Hệ thống lưu trữ thông tin sinh viên bao gồm: Mã sinh viên, họ tên, ngày sinh, địa
− Đối với học kỳ, có khoảng thời gian cho phép sinh viên thay đổi lịch học Sinh viên truy cập hệ thống trực tuyến thời gian để thêm hủy học phần đăng ký
−Hệ thống tốn thiết lập trạng thái ghi có cho sinh viên có học phần bị hủy khoảng thời gian
Yêu cầu:
1 Xác định u cầu chức
2 Mơ hình hóa yêu cầu chức năng, sử dụng sơ đồ use case. 3 Yêu cầu phi chức
(6)Hướng dẫn
1. Xác định yêu cầu chức hệ thống: Dựa vào đặc tả, hệ thống gồm chức sau:
− Sinh viên xem thông tin chi tiết học phần trước đăng ký
− Sinh viên đăng ký học phần
− Sinh viên chọn học phần thay
− Sinh viên tốn học phí
− Sinh viên xem lịch học, xem điểm
− Giảng viên chọn học phần giảng dạy
− Giảng viên xem danh sách lớp giảng dạy
− Giảng viên Nhập điểm lớp giảng dạy
− Nhân viên tạo danh mục học phần
− Nhân viên quản lý chương trình giảng dạy
− Nhân viên Quản lý thông tin Giảng viên
− Nhân viên Quản lý thông tin sinh viên.
− Hệ thống tốn thực in hóa đơn sinh viên đóng học phí cho học phần đăng ký
2. Mơ hình hóa u cầu chức năng, sử dụng sơ đồ use case. Xác định actor
− Sinh viên: người đăng ký tham gia khóa học trường Đại học
− Giảng viên: người tham gia giảng dạy trường Đại học
− Nhân viên: người chịu trách nhiệm trì hệ thống đăng ký học phần
− Hệ thống toán: hệ thống bên tương tác với hệ thống Đăng ký học phần, thực in hóa đơn cho sinh viên sinh viên tốn học phí cho học phần đăng ký
Xác định use case: mỗi use case đại diện cho chức hệ thống Để tìm use case phần đặc tả hệ thống ta tìm động từ
mà đại diện cho chuỗi hành động tương tác actor hệ thống để đạt mục tiêu actor Dựa vào đặc tả Hệ thống đăng ký học phần, ta xác định use case theo actor,
Sinh viên
+ Xem thông tin chi tiết học phần + Đăng ký học phần
(7)+ Thanh tốn học phí + Xem lịch học
+ Xem điểm
+ Đăng nhập: sinh viên phải đăng nhập thành công vào hệ thống để thực chức
Giảng viên
+ Chọn học phần để giảng dạy + Xem danh sách lớp giảng dạy + Nhập điểm lớp giảng dạy
Giảng viên phải đăng nhập thành công để thực chức
Nhân viên
+ Tạo danh mục học phần
+ Duy trì chương trình giảng dạy + Quản lý thơng tin Giảng viên + Quản lý thông tin sinh viên
Sơ đồ use case biểu diễn chức hệ thống
3 Yêu cầu phi chức
(8)− Có tính đắn − Độ tin cậy cao 4 Quy tắc nghiệp vụ
− Sinh viên đăng ký học phần phải đảm bảo hồn tất mơn học tiên quyết học phần đăng ký.
− Mỗi lớp học phần có sỉ số từ 10 đến 20 sinh viên, hết thời gian đăng ký mà sỉ số lớp <10, hệ thống tự động hủy lớp, sinh viên thuộc lóp bị hủy chuyển sang lớp học phần thay chọn.
− Sinh viên hủy thay đổi học phần đăng ký thời gian cho phép.
5 Quy trình nghiệp vụ
Quy trình nghiệp vụ chức đăng ký học phần
− Đầu học kỳ, hệ thống hiển thị học phần mở học kỳ đó, ứng với học phần, hệ thống hiển thị danh sách lớp dự kiến mở
− Sinh viên cần phải đăng nhập thành cơng vào hệ thống, sau chọn học phần chọn lớp phù hợp, hệ thống kiểm tra mơn tiên quyết, thỏa điều kiện cho phép sinh viên đăng ký
− Nếu lớp đăng ký đủ sỉ số, hệ thống thơng báo lớp đầy, sinh viên phải chọn lớp khác, lớp cịn chỗ cho phép đăng ký thơng báo đăng ký thành công Nếu không thỏa điều kiện sinh viên khơng thể đăng ký học phần học kỳ phải chờ đến học kỳ
Case study Xây dựng website đặt tour du lịch trực tuyến
(9)Website Lucky Tours hiển thị địa điểm du lịch theo vùng miền, thông tin chi tiết đặc điểm, điểm tham quan, địa danh tiếng để khách hàng tham khảo
Website thường xuyên đưa lên gói tour du lịch đa dạng thời gian, địa điểm, giá cả, dịch vụ thông tin khuyến để khách hàng dễ dàng lựa chọn Với tour, website hiển thị thông tin chi tiết bao gồm: lịch trình, thời gian, địa điểm thời gian khởi hành, giá tour Khi khách hàng chọn tour cụ thể website hiển thị thơng tin chi tiết lịch trình ngày tour Ngồi website giúp khách hàng tìm kiếm tour theo từ khóa, theo tiêu chí thời gian, địa điểm, loại tour, …bằng cách nhập trực tiếp vào
tìm kiếm
Khi tìm tour phù hợp, khách hàng đặt tour trực tuyến, cách điền thông tin đầy đủ vào form đặt tour, gồm thông tin họ tên người đặt tour, số người lớn số trẻ em tham gia tour, chọn hình thức tốn, hệ thống kiểm tra cú pháp kiểu liệu thông tin nhập, sai hệ thống yêu cầu nhập lại, hệ thống phải hiển thị thơng báo đặt tour thành công, đơn đặt tour lưu vào hệ thống Một khách hàng đặt nhiều tour nhiều thời điểm khác nhau, tour từ 10 đến 40 khách
Sau đặt tour thành cơng, khách hàng toán toán sau 24g, sau 24g khơng tốn đơn đặt tour bị hủy
(10)Hệ thống giúp người quản lý quản lý nhân viên, phân cơng hướng dẫn viên cho tour Một tour từ đế hướng dẫn viên, hướng dẫn viên có thề hướng dẫn nhiều tour
Người quản trị hệ thống có nhiệm vụ phân quyền người dung, cập nhật chức hệ thống
Ngoài ra, người quản lý công ty du lịch mong muốn website phải có giao diện đẹp, dễ sử dụng, bảo mật, chạy ổn định
Yêu cầu:
1 Xác định u cầu chức
2 Mơ hình hóa yêu cầu chức năng, sử dụng sơ đồ use case. 3 Yêu cầu phi chức
4 Quy tắc nghiệp vụ 5 Quy trình nghiệp vụ
Case study Xây dựng hệ thống quản lý thư viện trường đại học
Hệ thống quản lý thư viện phần mềm giám sát kiểm soát hoạt động thư viện, hệ thống cung cấp cho người dùng thông tin đầy đủ thư viện chức thực Thư viện Hệ thống hoạt động mạng cục trường
Sách thư viện chia làm hai loại, sách in sách điện tử Đối với sách in:
(11)tên loại, Mã giá sách Mỗi loại sách gồm nhiều đầu sách, đầu sách lưu trữ thông tin Mã đầu sách, tên đầu sách, tác giả, đơn giá, năm xuất bản, nhà xuất bản, số lượng in thông tin tóm tắt nội dung
Sách điện tử:
− Hệ thống lưu dạng tập tin, tên tập tin Mã sách
Hệ thống giúp độc giả tìm sách theo nhiều tiêu chí khác tên loại sách, tên sách, tên tác giả, theo từ khóa, …
Độc giả giảng viên sinh viên trường, để mượn sách đọc sách, độc giả phải đăng ký tài khoản hệ thống thư viện, Mã tài khoản Mã giảng viên Mã sinh viên Khi cần mượn sách in độc giả phải đăng nhập vào hệ thống thực chức đăng ký mượn sách, bao gồm thông tin: Mã sách, tên sách, tác giả, ngày mượn, ngày trả, đăng ký thành cơng độc giả đến gặp thủ thư để nhận sách
Đối với sách điện tử, độc giả phải đăng nhập vào hệ thống để tìm đọc online mạng cục trường
Hệ thống quản lý thư viện cung cấp chức giúp thủ thư thêm sách mới, quản lý việc mượn trả sách, thống kê sách cho mượn, số sách kho Đối với sách điện tử, hệ thống thống kê số lần truy cập, đánh giá sách yêu thích
Để trì hoạt động thư viện, độc giả phải tuân thủ quy định việc mượn trả, trễ hạn bị phạt, quy định phạt sau: số ngày trễ hạn <7 ngày phạt 5% đơn giá sách Nếu từ ngày đến 15 ngày phạt 10% giá sách, 15 ngày phạt 20% giá sách
Ngồi ra, người quản lý thư viện yêu cầu hệ thống phải có giao diện thân thiện dễ sử dụng, chương trình chạy ổn định
Yêu cầu:
1 Xác định yêu cầu chức
2 Mô hình hóa u cầu chức năng, sử dụng sơ đồ use case. 3 Yêu cầu phi chức
(12)(13)Module (6t) Viết đặc tả use case – mơ hình hóa Activity
A) Mục tiêu:
− Giúp sinh viên hiểu vai trò đặc tả use case − Biết cách viết đặc tả use case
− Vận dụng sơ đồ activity để mơ hình hóa đặc tả use case
B) Tóm tắt kiến thức
1 Nội dung đặc tả use case:
− Tên use case: tên use case sơ đồ use case
− Mô tả sơ lược: Mộ tả sơ lược chức use case
− Actor chính: actor kết hợp với use case sơ đồ use case
− Actor phụ: actor hỗ trợ để thực use case
− Tiền điều kiện (Pre-condition): điều kiện tiên use case, trạng thái hệ thống phải đáp ứng để bắt đầu thực use case Điều kiện tiên không kiểm tra use case đặc tả
− Hậu điều kiện (Post-condition): liệt kê trạng thái hệ thống xảy sau use case thực thi hoàn tất Hậu điều kiện phân loại gồm: Đảm bảo tối thiểu Bảo đảm thành công
− Luồng kiện (main flow): các bước thực use case, tương tác actor hệ thống, từ lúc bắt đầu đến kết thúc
o Mỗi bước đánh số thứ tự o Actor thực bước bắt đầu o Hệ thống đáp trả
o Actor thực bước …
− Luồng kiện thay (alternate flow): tại bước luồng kiện chính, buộc actor phải chọn nhánh khác để thực bước cuối quay lại bước luồng kiện
o Luồng kiện thay đánh số thứ tự theo bước mà có luồng rẻ nhánh
(14)2 Các ký hiệu sơ đồ activity
C) Bài tập
1. Dựa vào case study 1: xây dựng hệ thống đăng ký học phần trực tuyến,
viết đặc tả cho use case hệ thống: đăng nhập, tạo tài khoản, xem điểm, thay đổi lớp học phần, ứng với đặc tả, mơ hình hóa sơ đồ activity.
Hướng dẫn:
Đặc tả use case “Đăng ký học phần”
− Tên use case: Đăng ký học phần
− Mô tả sơ lược: chức Đăng ký học phần giúp sinh viên đăng ký học phần trực tuyến
− Actor chính: Sinh viên
− Actor phụ: khơng
(15)− Hậu điều kiện (Post-condition): đăng ký thành cơng sỉ số lớp cập nhật sinh viê có lịch học
− Luồng kiện (main flow):
Actor System
1 Sinh viên chọn chức Đăng ký học phần
2 Hệ thống hiển thị trang đăng ký học phần
3 Sinh viên chọn học kỳ Hệ thống hiễn thị danh sách học phần học kỳ
5 Sinh viên chọn học phần muốn
đăng ký Hệ thống kiểm tra học phần tiênquyết Hệ thống hiển thị danh sách lớp
học phần
8 Sinh viên chọn lớp học phần Hệ thống kiểm tra sỉ số lớp
10.Hệ thống thông báo đăng ký thành công
− Luồng kiện thay (alternate flow):
6.1.Hệ thống hiển thị thông báo môn tiên không thỏa
6.2.Sinh viên xác nhận 6.3.Hệ thống quay lại bước
9.1 Hệ thống hiển thị thông báo lớp đầy
9.2 Sinh viên xác nhận 9.3 Hệ thống quay lại bước
− Luồng kiện ngoại lệ (exception flow):
9.1.1 Hệ thống kiểm tra sinh viên năm cuối
9.1.2 Hệ thống hiển thị thông báo đăng ký thành công
9.1.3 Sinh viên xác nhận kết thúc
(16)2 Dựa vào case study 2: “Xây dựng website đặt tour du lịch trực tuyến”,
sinh viên viết đặc tả use case:
a “Đặt tour trực tuyến” vẽ sơ đồ activity biểu diễn đặc tả b “Tìm kiếm tour”, vẽ sơ đồ activity biểu diễn đặc tả
3. Dựa vào case study 3: “Xây dựng hệ thống quản lý thư viện một trường đại học” sinh viên viết đặc tả use case:
a “Đăng ký mượn sách” vẽ sơ đồ activity biểu diễn đặc tả
(17)Module (6t) Phân tích cấu trúc hệ thống - Mơ hình hóa bằng Domain
A) Mục tiêu:
− Xác định lớp khái niệm dựa vào mô tả hệ thống
− Xác định thuộc tính lớp xác định dựa vào mô tả hệ thống
− Xác định mối quan hệ, lượng số, vai trò mối quan hệ lớp − Vẽ sơ đồ domain
B) Tóm tắt kiến thức
1 Lớp khái niệm ý tưởng, vật đối tượng phạm vi hệ thống Lớp khái niệm các đối tượng doanh nghiệp (Business objects), các đối tượng giới thực (Real world objects) các sự kiện (Events that transpire)
2 Cách tìm lớp khái niệm: a Dựa vào từ điển liệu
Xác định danh từ cụm danh từ:
− Nếu cụm danh từ lưu thơng tin trạng thái có nhiều hành vi, lớp
− Nếu số chuỗi, thuộc tính
Tuy nhiên, số trường hợp, ngữ cảnh khái niệm Lớp ngữ cảnh khác thuộc tính
b Sử dụng danh mục lớp khái niệm 3 Tìm mối quan hệ lớp khái niệm
(18)a Association: Một mối quan hệ thiết lập hai lớp có liên quan với theo cách nào, đối tượng khơng phụ thuộc lẫn
Ví dụ: Lớp Sách quan hệ với lớp độc giả, thể hành vi Độc giả đọc
Sách
b Aggregation: Lớp chứa (Whole) tạo kết hợp lớp thành phần khác (part), thời gian sống lớp thành phần khơng phụ thuộc nhiều vào vịng đời lớp chứa
Ví dụ: loại sách tạo từ nhiều sách Nếu loại sách bị hủy sách tồn
c. Composition: Mối quan hệ composition tương tự với mối quan hệ aggregation với khác biệt nhấn mạnh sự phụ thuộc của lớp thành phần vào vòng đời lớp chứa
Ví dụ: quan hệ lớp Sách Chương mục, sách bị hủy chương mục bị hủy
d Reflexive: Khi lớp có nhiều chức trách nhiệm với lớp
4 Xác định vai trò (Roles) mối quan hệ
(19) Tên của quan hệ: ý nghĩa mối quan hệ
Điều hướng (navigability): để lớp thấy lớp
C) Bài tâp
1 Dựa vào case study 1: “Xây dựng hệ thống đăng ký học phần trực tuyến”, thực yêu cầu sau:
a Xác định lớp khái niệm, tìm thuộc tính cho lớp
b Xác định loại mối quan hệ lớp, ứng với quan hệ, xác định lượng số, role lớp, giải thích
c Vẽ sơ đồ Domain
2. Tương tự với yêu cầu câu 1, thực case study 2: “Xây dựng website đặt tour du lịch trực tuyến” và case study 3: Xây dựng hệ thống quản lý thư viện trường đại học”.
Hướng dẫn case study1:
1 Xác định lớp khái niệm, tìm thuộc tính cho lớp.
Lớp khái niệm Thuộc tính
Học kỳ Mã học kỳ
Năm học
Học phần
Mã học phần Tên học phần Học phần tiên Số tín
Lớp học phần
Mã lớp Tên lớp Ngày học Giờ học
Sinh viên
Mã sinh viên Họ tên Ngày sinh Địa
Giảng viên Mã giảng viên Họ tên
(20) Địa
2 Xác định loại mối quan hệ lớp, ứng với quan hệ, xác định lượng số
Quan hệ Loại quan hệ Giải thích Học kỳ - Học phần Association
Một học kỳ bao gồm nhiều học phần, học phần thuộc học kỳ
Học phần - lớp học phần Association Một học phần gồm nhiều lớphọc phần, lớp học phần thuộc học phần
Lớp học phần – Giảng viên Association
Một lớp học phần giảng viên phụ trách, Giảng viên phụ trách nhiều lớp học phần
Sinh viên – lớp học phần Aggregation
Một sinh viên đăng ký nhiều lớp học phần, lớp học phần có tối thiểu 10 sinh viên tối đa 30 sinh viên Mỗi Sinh viên thành phần lớp
Lớp kết hợp Sinh viên – Lớp HP
Lớp kết hợp lớp Sinh viên – lớp học phần có quan hệ * *
(21)Module (6t) Thiết kế hệ thống - Sử dụng sơ đồ Sequence – Hiệu chỉnh sơ đồ Domain thành sơ đồ Class
A) Mục tiêu
- Xác định đối tượng, tương tác đối tượng hệ thống để thực chức use case
- Vẽ sơ Sequence mức thiết kế sơ (chưa theo kiến trúc phần mềm cụ thể) - Phân bổ phương thức vào lớp liên quan đến chức use case
tương ứng
- Hiệu chỉnh (bổ sung lớp mới, thay đổi mối quan hệ) lại sơ đồ Domain để chuyển sơ đồ Domain thành sơ đồ Class
B) Tóm tắt Kiến thức
Sơ đồ sequence: biểu diện chi tiết trình tương tác người dùng hệ thống để thực chức biểu diễn use case
(22) Thông điệp (Message): Mũi tên từ đối tượng gửi đến đối tượng nhận biểu diễn thông điệp tương tác đối tượng, nội dung thông điệp đặt mũi tên
(23)(24)C) Bài tâp
1. Dựa vào case study 1: Xây dựng hệ thống đăng ký học phần trực tuyến
a Phân tích Use case “Đăng ký học phần”: Luồng kiện bản
Use case bắt đầu sinh viên đăng nhập vào hệ thống thành công Sinh viên chọn học kỳ, sau chọn học phần, hệ thống kiểm tra học phần tiên quyết, hiển thị danh sách lớp học phần Sinh viên chọn lớp học phần, hệ thống kiểm tra sỉ số, thỏa điều kiện, sinh viên xác nhận hoạt động hoàn tất Hệ thống thông báo đăng ký thành công in lịch học sinh viên Hệ thống gửi thông tin toán cho sinh viên đến hệ thống toán để xử lý
Luồng kiện thay thế
− Nếu học phần tiên không thỏa hệ thống hiển thị thơng báo kết thúc trình đăng ký
− Nếu lớp học phần đả đủ, hệ thống yêu cầu chọn lớp khác
(25)c Bổ sung Class (nếu có) vào sơ đồ Domain liên quan đến chức đăng ký học phần
d Phân bổ phương thức vào Class tương ứng sơ đồ Domain Để thực chức “Đăng ký học phần” lớp sơ đồ Domain cần phải có phương thức sau:
(26)o getDSHocPhan(HocKy): trả danh sách học phần theo học kỳ, với tham số học kỳ chọn
− Lớp Ketqua có phương thức:
o getKetquaHPtienquyet(MaSV): trả kết môn học tiên sinh viên đăng ký học phần, tham số MaSV, MaHP − lớp Lop_Hocphan gồm phương thức sau:
o getDS_LopHP(MaHP): trả danh sách lớp học phần học phần chọn
o getSiSo(MalopHP): trả sỉ số lớp học phần chọn o AddNewSV(MaSV): thêm sinh viên vào lớp học phần o CapnhatSiSo(Malop): Cập nhật sỉ số lớp
e Hoàn thiện sơ đồ lớp tương ứng với chức “Đăng ký học phần”
Ngoài lớp entity, để thực chức “Đăng ký học phần” cịn có lớp boundary control
− Lớp GD_DangkyHP (lớp Boundary): gồm phương thức
o showDSHP(): Hiển thị danh sách học phần học kỳ chọn
o showDSLopHP(): Hiển thị danh sách lớp học phần học phần chọn
(27)o Message_DKthanhcong(): hiển thị thông báo đăng ký thành công − Lớp Ctrl_DKHP (lớp Cotrol) gồm phương thức:
o TimDSHP(Hocky): tìm danh sách lớp học phần theo học kỳ chọn
o checkHPtienquyet(MaSV, MaHP): Kiểm tra sinh viên có đáp ứng học phần tiên học phần chọn
o checkSiSo(MalopHP): kiểm tra sỉ số lớp cho phép đăng ký hay đầy
2. Dựa vào case study 1, Sinh viên thực phân tích chức “xem điểm”
của actor sinh viên, bao gồm bước tương tự câu
3. Dựa vào case study 2, sinh viên phân tích chức “Đặt tour du lịch”
(28)Module (3t) Thiết kế thành phần hệ thống
A) Mục tiêu:
- Hiểu khái niệm Subsystem Package
- Cách xác định Subsystem Package hệ thống - Vẽ sơ đồ Component
B) Tóm tắt Kiến thức
Package: nhóm lớp phần tử mơ hình có quan hệ logic với Package xác định khơng gian tên cho nội dung
Package diagram: biểu diễn cấu trúc tổ chức hệ thống trong dự án quy mơ trung bình lớn, package diagram sử dụng trường hợp:
Tạo tổng quan tập hợp lớn phần tử mơ hình Nhóm lớp phần tử mơ hình có quan hệ logic Tách không gian tên thành phần hệ thống
Quan hệ package quan hệ Dependency, gồm loại: <<import>>: nội dung public target
package thêm vào không gian tên của source package
<<access>>: nội dung public target package có sẵn khơng gian tên source package
Tiêu chí để phân rã hệ thống thành package
Dựa vào Chủ sở hữu: Actor thực chức sơ đồ Dựa vào chức năng: vấn đề có phân vùng rõ ràng Các lớp có mối liên kết mạnh nhóm vào package Dựa vào mẫu kiến trúc: ví dụ kiến trúc MVC
Giảm phụ thuộc phần tử package khác
(29)Ví dụ:
Subsystem GUI chịu trách nhiệm cung cấp giao diện người dùng giúp người dùng tương tác với hệ thống
Subsystem Business processing: xử lý nghiệp vụ chịu trách nhiệm thực chức nghiệp vụ
Subsystem Data: thực chức lưu trữ liệu
Các khía cạnh bên bên ngồi Subsystem
Một subsystem thể khía cạnh:
o Bên ngoài: hiển thị dịch vụ mà subsystem cung cấp o Bên trong: thể việc thực hóa subsystem o Một ánh xạ hai khía cạnh
C) Bài tâp
1 Dựa vào case study 1: xây dựng hệ thống đăng ký học phần trực tuyến a Tổ chức Class hệ thống thành Package, giải thích
Phân rã hệ thống theo tiêu chí nhóm lớp có tính kết dính cao vào thành package, Hệ thống đăng ký học phần tổ chức thành package sau:
Package Người dùng: chứa lớp liên quan đến người dùng hệ thống o Sinh viên
o Giảng viên o Nhân viên
Package Học vụ: chứa lớp liên quan đến học phần học kỳ o Học kỳ
o Học phần o Lớp học phần o Lịch học
Package Giao diện người dùng: gồm tất giao diện hệ thống o Form giao diện
(30)o Form quản lý thông tin giảng viên o Form quản lý thông tin sinh viên
b Vẽ sơ đồ Package hệ thống
Phân rã hệ thống theo kiến trúc Hệ thống đăng ký học phần tổ chức thành package sau:
Package Giao diện người dùng: gồm tất giao diện hệ thống Package Xử lý nghiệp vụ: chứa lớp thực chức xử lý
nghiệp vụ
Package Data: chứa lớp thực việc lưu trữ liệu
c Phân chia hệ thống xây dựng thành Subsystem, giải thích
Mỗi Subsystem cung cấp dịch vụ cho Subsystem khác Hệ thống đăng ký học phần tổ chức thành Subsystem sau
(31) Subsystem Xử lý nghiệp vụ cung cấp interface sử dụng Package Giao diện người dùng
Subsystem Data: Cung cấp interface sử dụng subsystem Xử lý nghiệp vụ
2 Dựa vào Case study 2: “Xây dựng website đặt tour du lịch”, tử sơ đồ lớp xây dựng module3, xây dựng Package vẽ sơ đồ Package cho hệ thống
(32)Module (3t) Thiết kế hệ thống theo kiến trúc
A) Mục tiêu:
- Hiểu kiến trúc phần mềm chọn để áp dụng cho hệ thống (3 tầng) - Xác định thành phần hệ thống ứng với kiến trúc chọn
- Vẽ lại sơ đồ Sequence mức thiết kế cho Use case - Thực tinh chỉnh sơ đồ Class hệ thống
B) Tóm tắt Kiến thức
Kiến trúc tầng chia ứng dụng thành độc lập: Presentation layer,
Application (or process) layer,
Data layer (which manages data access)
C) Bài tâp
Dựa vào case study 1: xây dựng hệ thống đăng ký học phần trực tuyến
(33)Module Sinh viên tiếp tục thực tương tự câu cho Use case - Xem điểm
- …
(34)-Module (3t)Thiết kế sở liệu
A) Mục tiêu:
- Chuyển sơ đồ Class sang sơ đồ sở liệu quan hệ
B) Tóm tắt Kiến thức
1 Ánh xạ lớp thực thể - lược đồ quan hệ
a Một lớp thực thể ánh xạ thành quan hệ tên
b Một dòng bảng biểu diễn đối tượng lớp thực thể c Một thuộc tính thực thể tương ứng với thuộc tính quan hệ d Đưa thêm thuộc tính ID kiểu int làm khóa cho quan hệ
2 Ánh xạ liên kết 1-1
Thêm khóa ngoại vào quan hệ Quan hệ chứa khóa ngoại tham chiếu đến khố quan hệ khác Hoặc gộp bảng thành bảng
3 Ánh xạ kết 1-n: thêm khóa ngoại vào bảng “nhiều”
(35)C) Bài tâp
1 Case study 1: Dựa vào sơ đồ Class thiết kế module chuyển sang sơ đồ sở liệu quan hệ
Sơ đồ domain
Chuyển lớp thành quan hệ:
− Các lớp: Học phần, Lớp học phần, Giảng viên, Sinh viên, Học kỳ chuyển thành quan hệ tương ứng tên, thuộc tính lớp trở thành thuộc tính quan hệ, chọn thuộc tính có giá trị làm khóa
− Lớp kết hợp Kết quả trở thành quan hệ Kết quả, thuộc tính khóa quan hệ tham gia Mã sinh viên, Mã học phần trở thành khóa ngoại quan hệ Kết quả, thuộc tính đồng thời trở thành khóa quan hệ Kết
− Lớp DSSV_LopHP trở thành quan hệ DSSV_LopHP, với thuộc tính khóa ngoại Mã sinh viên Mã lớp học phần, thuộc tính trở thành khóa quan hệ DSSV_LopHP
Chuyển mối quan hệ:
(36)− Học phần - Lớp học phần: Lớp học phần chứa khóa ngoại Mã học phần
− Lớp học phần – Giảng viên: Lớp học phần chứa khóa ngoại Mã Giảng viên
Từ phân tích ta có sơ đồ sở liệu quan hệ hệ thống Đăng ký học phần sau:
2 Case study 2: Dựa vào sơ đồ Class thiết kế module chuyển sang sơ đồ sở liệu quan hệ