Bài giảng OOAD - Bài 0: Mở đầu

pdf 40 trang huongle 3050
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng OOAD - Bài 0: Mở đầu", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_ooad_bai_0_mo_dau.pdf

Nội dung text: Bài giảng OOAD - Bài 0: Mở đầu

  1. BÀI GIẢNG OOAD NĂM 2014 BÀI 0: MỞ ĐẦU
  2. Cognitive/Knowledge Original Bloom’s Taxonomy Revised Bloom’s Taxonomy Evaluation Creating Synthesis Evaluating Analysis Analysing Application Applying Comprehension Understanding Knowledge Remembering 06/08/2014 GV:HVĐ 2
  3. Psychmotor/Skill • Simpson (1972) Origination Adaptation Complex Overt Response Mechanism Guided Response Set Perception 06/08/2014 GV:HVĐ 3
  4. Attitude • Krathwohl et al., (1973) Internalising Values Organisation Valuing Responding to Phenomena Phenomena 06/08/2014 GV:HVĐ 4
  5. Expected Learning Outcomes ELO Level Assessment 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 Design C3 Thi Implement P3 Đồ án Attitude A3 Có mặt, thảo luận 06/08/2014 GV:HVĐ 5
  6. MỤC TIÊU BUỔI HỌC • Kiến thức – Ôn PTTK và OOP – Giới thiệu UML • Kỹ năng – Đọ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 06/08/2014 GV:HVĐ 6
  7. TÀ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 06/08/2014 GV:HVĐ 7
  8. NỘ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 06/08/2014 GV:HVĐ 8
  9. KIỂ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 06/08/2014 GV:HVĐ 9
  10. LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG • Cộng tác – Đối tượng – Thông điệp • Đóng gói – Lớp – Phương thức – Thao tác – Che giấu thông tin • Kế thừa, đa hình 06/08/2014 GV:HVĐ 10
  11. TÌ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 06/08/2014 GV:HVĐ 11
  12. TÌNH HUỐNG 1 06/08/2014 GV:HVĐ 12
  13. TÌNH HUỐNG 2 • Để được đậu đúng chỗ, một xe mới vào sẽ phải cộng tác với chỗ đậu xe và các xe đang đậu: – Kịch bản là gì ? – Lập biểu đồ class 06/08/2014 GV:HVĐ 13
  14. TÌNH HUỐNG 2 1. Put(park : Parking) 1.3. Compare(car : Car) curr : exam : Car Car 1.1. isFull( ) 1.2. First( ) 1.4. Put(car : Car) park : Parking 06/08/2014 GV:HVĐ 14
  15. TÌNH HUỐNG 2 curr : Car park : exam : Car Parking 1. Put(park : Parking) 1.1. isFull( ) 1.2. First( ) 1.3. Compare(car : Car) 1.4. Put(car : Car) 06/08/2014 GV:HVĐ 15
  16. TÌNH HUỐNG 2 06/08/2014 GV:HVĐ 16
  17. P.T.T.KẾ H.T.T.TIN • Phương pháp luận • Quy trình • Mô hình • Biểu đồ 06/08/2014 GV:HVĐ 17
  18. TÌ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”. 06/08/2014 GV:HVĐ 18
  19. GIỚI THIỆU UML • Kiểm tra điều kiện tiên quyết • Giới thiệu UML – UML và chức năng hệ thống – UML và phân tích thiết kế – UML và công cụ • Giới thiệu môn học 06/08/2014 GV:HVĐ 19
  20. CHỨ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”. 06/08/2014 GV:HVĐ 20
  21. UML: CHỨC NĂNG HỆ THỐNG 06/08/2014 GV:HVĐ 21
  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 đủ” 06/08/2014 GV:HVĐ 22
  23. ĐẶC TẢ CHỨC NĂNG 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ơ. • Hoạt động của actor – Lấy được hồ sơ – Nhập thông tin đầy đủ – Lưu • Đối tượng (chương trình) – Hồ sơ 06/08/2014 GV:HVĐ 23
  24. UML: ĐẶC TẢ CHỨC NĂNG 06/08/2014 GV:HVĐ 24
  25. UML: PHÂN TÍCH – THIẾT KẾ Lap Ho So Day Du NV Tiep Tan Lap Ho So Day Du (from Use Case View) (from Use Case View) Lich Kham LapHSDD-Frm LapHSDD-Ctrl Ho So Benh Nhan 06/08/2014 GV:HVĐ 25
  26. UML: PHÂN TÍCH – THIẾT KẾ 3.1. Luu : LapHSDD-Frm : LapHSDD-Ctrl 1.1. Tim BN( ) 1. Tim HS 3. Xac nhan : Lich Kham 2. Cap nhat( ) 1.1.1. Tim HS( ) : NV Tiep Tan : Ho So Benh Nhan 06/08/2014 GV:HVĐ 26
  27. UML: PHÂN TÍCH – THIẾT KẾ : NV Tiep Tan : LapHSDD-Frm : LapHSDD-Ctrl : Lich Kham : Ho So Benh Nhan 1. Tim HS 1.1. Tim BN( ) 1.1.1. Tim HS( ) 2. Cap nhat( ) 3. Xac nhan 3.1. Luu 06/08/2014 GV:HVĐ 27
  28. UML: PHÂN TÍCH – THIẾT KẾ 06/08/2014 GV:HVĐ 28
  29. GIỚ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 – Triển khai 06/08/2014 GV:HVĐ 29
  30. MỤC TIÊU KIẾN THỨC • Phương pháp luận, quy trình OOAD • Các bước – Hoạt động – Vai trò – Tài liệu • 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 06/08/2014 GV:HVĐ 30
  31. MỤC TIÊU KỸ NĂNG • Biết – Đọc hiểu biểu đồ – Lập biểu đồ – Sử dụng công cụ hỗ trợ thiết kế – 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 – Phân tích – Thiết kế 06/08/2014 GV:HVĐ 31
  32. NỘI DUNG MÔN HỌC • Phương pháp luận • Làm tài liệu – Xác định yêu cầu – Phân tích – Thiết kế – Cài đặt • Xây dựng chương trình 06/08/2014 GV:HVĐ 32
  33. TÀ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 • – Đề cương – Sách – Giáo trình (bản phác thảo) – Bài giảng – Bài tập – Bài thực tập – Đồ án mẫu – Bài đọc thêm – Công cụ 06/08/2014 GV:HVĐ 33
  34. UML: CÔNG CỤ • Công cụ hỗ trợ phân tích thiết kế – Rational Rose 2003 – Power Designer 12 • Công cụ phát triển ứng dụng – Visual studio – Access – SQLServer 06/08/2014 GV:HVĐ 34
  35. VAI 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 trước khi đến lớp – Trao đổi, phản biện 06/08/2014 GV:HVĐ 35
  36. ĐÁNH GIÁ • Quá trình (cập nhật thường xuyên) – Điều chỉnh (0%) – Dự lớp, thảo luận (10%) – Bài thu hoạch, bài tập, bài thực hành (10%) – Thuyết trình, phản biện (15%) – Điểm đồ án (15%) • Thi – Tự luận (50%) HVĐ – THQL 36
  37. BÀ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? • Mô tả một ngữ cảnh chương trình có thể có? 06/08/2014 GV:HVĐ 37
  38. BÀI TẬP 1 : Doi : VDV : TranDau : Ban 1. DoiGoiNhat( ) 1.1. TongDiem( ) 1.1.1. Diem(doi : Doi) 1.1.1.1. TongDiem(doi : Integer) 2. TenDoi( ) 3. VDVGioiNhat( ) 3.1. TongDiem( ) 3.1.1. Diem(vdv : VDV) 3.1.1.1. Diem(vdv : VDV) 4. TenVDV( ) 06/08/2014 GV:HVĐ 38
  39. BÀI TẬP 1 06/08/2014 GV:HVĐ 39
  40. BÀ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];) 06/08/2014 GV:HVĐ 40