BÀI GIẢNG OOAD NĂM 2013

BÀI 0: MỞ ĐẦU

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

09/04/2013 GV:HVĐ 2

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

09/04/2013 GV:HVĐ 3

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

09/04/2013 GV:HVĐ 4

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

09/04/2013 GV:HVĐ 5

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

09/04/2013 GV:HVĐ 6

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

09/04/2013 GV:HVĐ 7

TÌNH HUỐNG 1

09/04/2013 GV:HVĐ 8

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

09/04/2013 GV:HVĐ 9

TÌNH HUỐNG 2

09/04/2013 GV:HVĐ 10

TÌNH HUỐNG 2

09/04/2013 GV:HVĐ 11

TÌNH HUỐNG 2

09/04/2013 GV:HVĐ 12

P.T.T.KẾ H.T.T.TIN

• Phương pháp luận • Quy trình • Mô hình • Biểu đồ

09/04/2013 GV:HVĐ 13

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”.

09/04/2013 GV:HVĐ 14

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

09/04/2013 GV:HVĐ 15

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”.

09/04/2013 GV:HVĐ 16

UML: CHỨC NĂNG HỆ THỐNG

09/04/2013 GV:HVĐ 17

ĐẶ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 đủ”

09/04/2013 GV:HVĐ 18

ĐẶ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ơ

09/04/2013 GV:HVĐ 19

UML: ĐẶC TẢ CHỨC NĂNG

09/04/2013 GV:HVĐ 20

UML: PHÂN TÍCH – THIẾT KẾ

09/04/2013 GV:HVĐ 21

UML: PHÂN TÍCH – THIẾT KẾ

09/04/2013 GV:HVĐ 22

UML: PHÂN TÍCH – THIẾT KẾ

09/04/2013 GV:HVĐ 23

UML: PHÂN TÍCH – THIẾT KẾ

09/04/2013 GV:HVĐ 24

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

09/04/2013 GV:HVĐ 25

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

09/04/2013 GV:HVĐ 26

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ế

09/04/2013 GV:HVĐ 27

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

09/04/2013 GV:HVĐ 28

YÊU CẦU

• Hiểu • Giải thích được • Áp dụng được

09/04/2013 GV:HVĐ 29

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

• http://www.mis.ueh.edu.vn/blog/

– Đề 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ụ

09/04/2013 GV:HVĐ 30

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

09/04/2013 GV:HVĐ 31

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

09/04/2013 GV:HVĐ 32

ĐÁNH GIÁ

• Quá trình (cập nhật thường xuyên)

– Dự lớp (10%) – Bài thu hoạch, bài tập, bài thực hành (0%) – Thuyết trình, thảo luận, phản biện (20%) – Điểm đồ án (20%)

• Thi

– Tự luận (50%)

HVĐ – THQL 33

LỊCH

• 9/4: bài 0 • 16/4: (6:00) bài 1, (7:30) phòng máy, 1/2 lớp • 23/4: (6:00) bài 1, (7:30) phòng máy, 1/2 lớp • 7/5: bài 2 • 14/5: thuyết trình nhóm • 21/5: (6:00) bài 3, (7:30) phòng máy, 1/2 lớp • 28/5: (6:00) bài 3, (7:30) phòng máy, 1/2 lớp • 4/6: bài 4 (hạn chót nộp đồ án) • 18/6: báo cáo đồ án 3 nhóm (6:00, 6:45, 7:30)

09/04/2013 GV:HVĐ 34

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ó?

09/04/2013 GV:HVĐ 35

BÀI TẬP 1

09/04/2013 GV:HVĐ 36

BÀI TẬP 1

09/04/2013 GV:HVĐ 37

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];)

09/04/2013 GV:HVĐ 38