Bài giảng OOAD năm 2014: Bài 0 - Mở đầu đi sâu nghiên cứu các nội dung chính về kiểm tra điều kiện tiên quyết gồm phân tích thiết kế hệ thống thông tin, lập trình hướng đối tượng; giới thiệu UML và giới thiệu về môn học. Hy vọng tài liệu là nguồn thông tin hữu ích cho quá trình học tập và nghiên cứu của các bạn.
Trang 1BÀI GIẢNG OOAD
NĂM 2014
BÀI 0:
MỞ ĐẦU
Trang 3Mechanism Guided Response
Trang 4Attitude
• Krathwohl et al., (1973)
Internalising Values
Organisation
Valuing
Responding to Phenomena
Phenomena
Trang 5Expected Learning Outcomes
Process C5 Thuyết trình
Methodology C5 Thuyết trình
Object Oriented C5 Thuyết trình
UML C5 Thu hoạch
Tool P3 Thu hoạch
Requirement C3 Thi
Analysis C3 Thi
Trang 6– Đọc hiểu tài liệu PTTK
– Cài đặt từ biểu đồ thiết kế
• Khác
– Giới thiệu môn học
– Triển khai môn học
Trang 7TÀI LIỆU
• Đề cương
• Sách [2]
– Chương 1 : Case study
– Chương 4 : Giới thiệu biểu đồ lớp
• Các tình huống trao đổi, thảo luận
Trang 8NỘI DUNG
• Kiểm tra điều kiện tiên quyết
• Giới thiệu UML
• Giới thiệu môn học
Trang 9KIỂM TRA Đ.K.TIÊN QUYẾT
• Kiểm tra điều kiện tiên quyết
– Phân tích thiết kế HTTT
– Lập trình hướng đối tượng
• Giới thiệu UML
• Giới thiệu môn học
Trang 10LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Trang 11TÌNH HUỐNG 1
• Một container có nhiệm vụ cất (put) và trả (get) các đối tượng khác nhau
• Với 3 loại container: ngăn xếp (Stack), hàng
đợi (Queue), hàng đợi ưu tiên (PrioQueue)
• Câu hỏi:
– Có bao nhiêu cách put và get khác nhau ?
– Lập biểu đồ class
Trang 12TÌNH HUỐNG 1
Trang 14TÌNH HUỐNG 2
curr : Car
park : Parking
exam : Car
1 Put(park : Parking)
1.1 isFull( ) 1.2 First( ) 1.4 Put(car : Car) 1.3 Compare(car : Car)
Trang 15TÌNH HUỐNG 2
curr : Car park :
Parking
park : Parking
Trang 16TÌNH HUỐNG 2
Trang 18TÌNH HUỐNG 3 (để thảo luận)
Phòng khám chỉ tiếp những bệnh nhân có hẹn trước Khi đến lần đầu, bệnh nhân phải điền đầy đủ họ tên, địa chỉ, số điện thoại và tiền sử bệnh tật vào một phiếu thông tin Các thông tin này được lưu vào hồ sơ Khi bệnh nhân gọi điện đến hẹn khám hoặc đổi lịch khám, nhân viên tiếp tân kiểm tra lịch khám để tìm và thỏa thuận thời điểm thích hợp rồi lưu vào lịch khám Nếu đây là bệnh nhân mới thì một hồ sơ mới với thông tin không đầy đủ được tạo ra Các cuộc hẹn khám đều được sắp xếp trước Trừ các cuộc hẹn khám trong ngày, nhân viên tiếp tân phải có trách nhiệm gọi điện nhắc người bệnh đến khám trước ngày khám một ngày Cần xây dựng chương trình cho nhân viên tiếp tân sử dụng Nhân viên tiếp tân
dùng chương trình để thực hiện công việc “lập hồ sơ mới”, “lập
hồ sơ đầy đủ”, “xem và cập nhật lịch khám”
Trang 19GIỚI THIỆU UML
• Kiểm tra điều kiện tiên quyết
• Giới thiệu UML
Trang 20CHỨC NĂNG HỆ THỐNG
Phòng khám chỉ tiếp những bệnh nhân có hẹn trước Khi đến lần đầu, bệnh nhân phải điền đầy đủ họ tên, địa chỉ, số điện thoại và tiền sử bệnh tật vào một phiếu thông tin Các thông tin này được lưu vào hồ sơ Khi bệnh nhân gọi điện đến hẹn khám hoặc đổi lịch khám, nhân viên tiếp tân kiểm tra lịch khám để tìm và thỏa thuận thời điểm thích hợp rồi lưu vào lịch khám Nếu đây là bệnh nhân mới thì một hồ sơ mới với thông tin không đầy đủ được tạo ra Các cuộc hẹn khám đều được sắp xếp trước Trừ các cuộc hẹn khám trong ngày, nhân viên tiếp tân phải có trách nhiệm gọi điện nhắc người bệnh đến khám trước ngày khám một ngày Cần xây dựng chương trình cho nhân viên tiếp tân sử dụng Nhân viên tiếp tân
dùng chương trình để thực hiện công việc “lập hồ sơ mới”, “lập
hồ sơ đầy đủ”, “xem và cập nhật lịch khám”
Trang 21UML: CHỨC NĂNG HỆ THỐNG
Trang 22ĐẶC TẢ CHỨC NĂNG
Phòng khám chỉ tiếp những bệnh nhân có hẹn trước Khi đến lần đầu, bệnh nhân phải điền đầy đủ họ tên, địa chỉ, số điện thoại và tiền sử bệnh tật vào một phiếu thông tin Các thông tin này được lưu vào hồ sơ Khi bệnh nhân gọi điện đến hẹn khám hoặc đổi lịch khám, nhân viên tiếp tân kiểm tra lịch khám để tìm và thỏa thuận thời điểm thích hợp rồi lưu vào lịch khám Nếu đây là bệnh nhân mới thì một hồ sơ mới với thông tin không đầy đủ được tạo ra Các cuộc hẹn khám đều được sắp xếp trước Trừ các cuộc hẹn khám trong ngày, nhân viên tiếp tân phải có trách nhiệm gọi điện nhắc người bệnh đến khám trước ngày khám một ngày
Đặc tả use case “lập hồ sơ đầy đủ”
Trang 23ĐẶC TẢ CHỨC NĂNG
• Hoạt động của actor
– Lấy được hồ sơ
– Nhập thông tin đầy đủ
– Lưu
bệnh nhân phải điền đầy đủ họ tên, địa chỉ, số điện thoại
và tiền sử bệnh tật vào một phiếu thông tin Các thông tin này được lưu vào hồ sơ
Trang 24UML: ĐẶC TẢ CHỨC NĂNG
Trang 25UML: PHÂN TÍCH – THIẾT KẾ
Trang 26UML: PHÂN TÍCH – THIẾT KẾ
Trang 27UML: PHÂN TÍCH – THIẾT KẾ
Trang 28UML: PHÂN TÍCH – THIẾT KẾ
Trang 29GIỚI THIỆU MÔN HỌC
• Kiểm tra điều kiện tiên quyết
• Giới thiệu UML
• Giới thiệu môn học
– Mục tiêu
– Nội dung
– Yêu cầu
– Tài liệu
Trang 30• Ngôn ngữ mô hình hóa UML
– Các biểu đồ (ngôn ngữ mô hình)
– Quan hệ với các hoạt động trong mỗi bước của quy trình OOAD
Trang 31– Cài đặt chương trình từ biểu đồ
• Biết làm tài liệu
– Xác định yêu cầu
Trang 32NỘI DUNG MÔN HỌC
Trang 33TÀI LIỆU
• Huỳnh Văn Đức, Đoàn Thiện Ngân, Giáo trình nhập môn
UML, NXB LĐXH, 09/2003
• A.Dennis, B.H.Wixom, D.Tegarden Systems Analysis and
Design an OO Approach with UML WILEY, 2002
Trang 35VAI TRÒ HỌC – HƯỚNG DẪN
• Vai trò giảng viên
– Phát biểu bài toán rõ ràng
– Cung cấp đầy đủ tài liệu đầu vào
– Nêu khái niệm, cách tiếp cận, cung cấp tài liệu lý thuyết – Kiểm soát
– Kết luận & Đánh giá
• Vai trò sinh viên
– Làm bài (bài tập, bài thuyết trình, …) và chuẩn bị bài
Trang 37BÀI TẬP 1
• Tại một giải bóng bàn có:
– Bốn đội tham gia, mỗi đội có 3 vận động viên
– Bốn đội phải thi đấu vòng tròn, có 6 trận cả thảy – Mỗi trận các vận động viên của mỗi đội sẽ được sắp thứ tự từ 1 đến 3, các vận động viên cùng số sẽ đấu với nhau, ta có mỗi trận có ba ván đấu
• Cho biết số đối tượng và số lớp?
Trang 381.1.1.1 TongDiem(doi : Integer)
4 TenVDV( )
3.1.1.1 Diem(vdv : VDV)
Trang 39BÀI TẬP 1
Trang 40BÀI TẬP 2
• Một trung tâm đào tạo ngắn hạn tổ chức giảng
4 chuyên đề (môn) Trung tâm có 1 quản lý, 1 thư ký, 2 GV cơ hữu và 1 GV mời
• Giả sử tháng này có 3 lớp, hãy vẽ biểu đồ cộng tác mô tả công việc phân công giảng viên (biểu
đồ làm việc với các đối tượng được chọn trong
số các đối tượng sau: GVCHuu a, b; GVMoi
c; Lop l[3]; Mon m[4];)